Skip to content
Jun 17 / markg85

ATI VSYNC without video trearing works!

Hi,

This used to be near impossible some time ago however a new ATI driver just got released: 10.6 and now VSYNC actually works on application level. However, this still does not make it work under mplayer. To get that working you will have to do a few tricks. If you run a desktop WITHOUT compisiting the tricks are easy, but with compositing i found myself trying a whole lot more things to get it working.

Note: I suspect the ATI catalyst 10.6 driver is needed!

The trick when you run a desktop without compositing:

mplayer -vo gl2 yourvideo.avi

The trick when you do run compositing is quite a bit more complex.

First edit xorg with the following edits in the device section:

Option   “XAANoOffscreenPixmaps” “on”
Option   “TexturedVideo” “on”
Option   “VideoOverlay” “off”
Option   “OpenGLOverlay” “off”

And add the following at the bottom of your xorg.conf file (if not there already):

Section “Extensions”
Option     “Composite” “Enable” # If enabled (and used), use OpenGL to VSync
EndSection

Now restart your X by logging out and back in. Playing a video that is tear free with compositing enabled should now be possible with the following mplayer command:

mplayer -vo gl yourvideo.avi

Note the “-vo gl” instead of “-vo gl2” …. With my ATI cards the xorg.conf edits where needed to get -gl playing nicely.

This post probably helps some people with the same problem. Leave a comment if this helped you (or not).

Regards,
Mark

Update

I noticed a big difference between windowed and fullscreen mode. On ATI video just seems to flickr when run in windowed mode (even with “-vo gl”) but the same video with the same settings runs without any flickering in fullscreen mode (press “f”).

3 Comments

leave a comment
  1. Ryan P / Jun 19 2010

    Thanks for posting this. I have an HD5850 card and suffering from tearing with/without compiz. I have made the changes you posted and still suffering from tearing.

    Do your windows tear if you move them around your screen?

    When I play videos on my primary screen, I get no tearing, but if I play it on my secondary screen, I get a single line that’s a tear.

  2. daquirm / Jun 19 2010

    Hi,

    I’m using HD3200 and this setting causes that I don’t even boot. Tried multiple times

  3. markg85 / Jun 19 2010

    @Byan P,

    I was testing this under KDE with the ATI vsync option set to “Off, unless application specifies” in Catalyst Control Center.

    @daquirm,
    I think one of the options that i told you to add to the device section is causing that. Please remove those and see if that works.

Leave a Comment