[MPlayer-dev-eng] [PATCH] Fix vo_macosx osd flicker bug by support double buffer
Ulion
ulion2002 at gmail.com
Wed Nov 28 01:43:08 CET 2007
2007/11/23, Ulion <ulion2002 at gmail.com>:
> Hello,
>
> I already apply a osd flicker patch for vo_macosx today, but it only
> fix most common situations.
> When on an Intel Core 2 Duo mac os 10.4.11 doing digital audio output
> by ao_macosx, the osd flicker very obviously, so I have to find the
> reason and fix it.
>
> The main reason cause the osd flicker probably be the texture may
> direct use the image_data, even out of the flip_page call, specially
> for multi-cpu and multi-thread situation. So the partly rendered frame
> is showed (osd flicker). To fix this, we have to split the current
> working image_data and the texture used pixer image. Doublebuffering
> is a good idea to do this, so I implement double-buffering for
> vo_macosx. This time double-buffering is different with the one months
> ago posted, that one is openGL internal double buffering, and won't
> help to get rid of the osd flicker since the flicker is introduce
> because the output method and the input method shared same image_data
> (although not mean to share it, but did shared on some platform).
> (Don't forget update to newest svn first to apply this patch.)
>
> The second patch is for MPlayer OS X to get rid of osd flicker by copy
> the image_data batch to a local buffer, and all render call only work
> on the local buffer, this can fix the flicker and still keep use the
> same shared memory between mplayer.
I will apply the one for vo_macosx in 2 days, the mplayerosx one will
depend Nicolas' opinion.
--
Ulion
More information about the MPlayer-dev-eng
mailing list