[MPlayer-dev-eng] Re: [PATCH] VFCTRL_PERIODIC_UPDATE

Uoti Urpala uoti.urpala at pp1.inet.fi
Wed Jan 24 13:58:57 CET 2007


On Wed, 2007-01-24 at 12:31 +0100, Michael Niedermayer wrote:
> my "solution" simple is to ignore the VO state and prevent frames which
> are in the far furture from passing trough the overlay filter too early
> one simple way to do this is to block them before the filter chain another

Fails when you consider filters that add frames or adjust pts. Even
ignoring that I wouldn't want to implement such timing.

More generally schemes like this depend on assumptions about (lack of)
further buffering, and I don't want to add any such assumptions to the
filter chain.

> is to duplicate the last frame in the overlay filter if the filter system
> can handle that currently (it did work once at least from a user point of
> view)
> 
> with that the time between the 2 frames in the VO is guranteed to be small

You could generate extra frames in the overlay filter to maintain a high
framerate, but that would cause significant extra load and within the
filter there would be no easy way to ensure the load would not interfere
with the main video playback (and in any case it would interfere with
other use of the machine).

Overall I think it's best to have a general filter that draws the
overlay once per frame and with no guarantees about latency (but which
currently shouldn't be bad with high-fps video) and leave
frame-independent updates with guaranteed low latency as vo-specific
features.




More information about the MPlayer-dev-eng mailing list