[MPlayer-dev-eng] [PATCH] Fix vo_macosx osd flicker bug by support double buffer

Ulion ulion2002 at gmail.com
Fri Nov 23 16:48:23 CET 2007


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.

-- 
Ulion
-------------- next part --------------
A non-text attachment was scrubbed...
Name: vo_macosx_osd_flick_fix_dbuf.diff
Type: text/x-diff
Size: 3444 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/attachments/20071123/29e6fa0d/attachment.diff>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mplayerosx_osd_flick_fix_dbuf.diff
Type: text/x-diff
Size: 2039 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/attachments/20071123/29e6fa0d/attachment-0001.diff>


More information about the MPlayer-dev-eng mailing list