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

Reply via email to