On Sun, 2008-07-20 at 21:25 +0200, Dirk Meyer wrote: > > self.player.open(fname).connect(lambda dummy: self.player.play()) > > That would not handle an exception.
It was meant as a substitute for your code, which does not handle an exception either. In either case it's easy enough to handle exceptions. :) > We need a plan what we want to do with kaa.popcorn. What should be > possible to be set on the API. The properties code was a first try to > make it happen. The main problem is that you have to set some > parameter before playback and some while playing. It is very > confusing. It is a generic wrapper, so what should we allow to set? I > see the following properties: Any property you set while it's playing should also be settable before it starts. (Maybe this is too obvious to state.) We need to also keep in mind that backends should be able to expose backend-specific functionality. We can provide an abstraction to say deinterlacing, but there needs to be a way to adjust that for the specific backend too. We currently sort of accomplish this with config, for example xine.deinterlacer.method. But we have this mishmash of config and properties that we should think about unifying in some way. It should be possible to change the deinterlacer while the video is playing, for example. Another thing to note is that we should settle on kaa.utils.property for properties. This implements getter, setter, deleter, and docstring, in a way that is forward compatible with future Python. > | # settings that are set global is most cases > | 'postprocessing': config.video.postprocessing, > | 'software-scaler': config.video.software_scaler, > > To take default values from the config is fine and changing it or a > specific stream sounds like a good idea. Yes, and again it should be possible via the API to enable backend-specific functionality. We can abstract as much as possible, in practice not everything can be abstracted properly. Maybe software scaling behaves differently, and for mplayer we'd prefer to use lanczos. > | 'deinterlace': 'auto', > | 'audio-track': None, > | 'audio-filename': None, > | 'subtitle-track': None, > | 'subtitle-filename': None, > > IMHO all needed Definitely. > | # Sets the audio delay relative to the video. A positive > | # value causes audio to come later, while a negative value > | # plays the audio before. > | 'audio-delay': 0.0, > > Advanced option but maybe needed, I don't know. It's certainly needed in my experience. > | # pre-caching, use 'auto' for defaults based on filetype / schema > | 'cache' : 'auto' > > WTF is that? This made me chuckle, because you're the one who added that property. :) (r2397) ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ Freevo-devel mailing list Freevo-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freevo-devel