[MPlayer-dev-eng] [PATCH] fix screen flicker in svgalib

Ivan Kalvachev ikalvachev at gmail.com
Wed Jul 18 15:03:43 CEST 2007


2007/7/5, Mikulas Patocka <mikulas at artax.karlin.mff.cuni.cz>:
> Hi
>
> Using mplayer on svgalib with double buffering and without waitretrace
> causes OSD flicker with some combinations of CPU speed & movie frame
> rates.
>
> The problem is that many videocards can't do immediate frame switch, they
> instead switch to a new frame on next screen retrace. If the CPU is fast
> enough to start rendering new frame before the retrace happens, flicker is
> seen.
>
> Double-buffering is not enough, at least 3 pages are needed for
> flicker-free playback:
> Page 1: page that is currently being displayed
> Page 2: page that will be displayed on next retrace
> Page 3: page where new frame is rendered
>
> This patch changes vo_svga to use all available pages in a cycle, so if
> you have videoram for at least 3 pages, you get flicker-free playback and
> you don't have to waste CPU cycles on waitretrace.

Sorry for the delay. I haven't forgotten your patch.
The idea seems good, but I don't like the implementation.

I'll try to do something, when I have some more free time and I manage
to compile libsvga_helper for my current kernel.



More information about the MPlayer-dev-eng mailing list