[MPlayer-dev-eng] [PATCH] VFCTRL_PAUSE_UPDATE

Reimar Döffinger Reimar.Doeffinger at stud.uni-karlsruhe.de
Thu Sep 15 21:15:57 CEST 2005


Hi,
On Thu, Sep 15, 2005 at 01:49:35PM -0400, Jason Tackaberry wrote:
> There is a problem with double buffering, though.  If you flip_page()
> while mplayer is in the sleep code and double buffering is used, there
> will be a most unpleasant flicker.  I don't know enough about mplayer's
> architecture to see how to fix this bug.

Please try with which vos this happens... Also check how it flickers, is
it due to the flipping itself, or is it really displaying a black frame
sometimes? You might find out by calling the periodic update function
somewhere in a loop but with a long sleep inbetween.
Btw. I think you are handling the control in a broken way.
You should check if the _current_ filter needs to update (and not care
about the other vf_overlays).
If yes, do the processing and do not pass the control on, since all filters
thereafter will have gotten the chance to draw in their put_image functions.
If no, pass the control on.
This also means every filter must have its own last_mpi. If that causes
things to be overlayed multiple times you are doing something wrong with
the mp_image handling, but I didn't find anything obvious (except the
following).
When you request the EXPORT type buffer you should set the PRESERVE
flag, since you might the original data again later. I am not sure if
this will work out 100%, since the vos do not respect this flag I
think...
If you don't get it to work, send the updated patch and I might actually
try it out *g*

Greetings,
Reimar Döffinger




More information about the MPlayer-dev-eng mailing list