Mythtv playing way to fast using DRM VBlank ioctl

Greg Stark gsstark at mit.edu
Thu Mar 30 21:21:07 PST 2006


Jaymz Julian <jaymz at artificial-stupidity.net> writes:

> There is actually an option when you build mythtv labelled something like
> "Use OpenGL for vsync" - I believe that in some versions it is also an 
> option in the playback setup menu, but i'm not in front of my TV right now.

Unfortunately it prefers the DRM vblank method if it's available regardless of
the setting of this parameter.

> Did you try turning this off and seeing what the output was like?  (mythtv,
> btw, has three different sync methods available - vblank using DRM/GL, 
> sync audio to video via the clock, and sync video to audio - the last one
> being the usual default).

The three methods are DRM, GL, and usleep+busywait. In all three cases it's
aiming to sync to the audio using these delay mechanisms (unless you enable
the option to do the reverse). But it assumes they sleep the time they're
supposed to based on the refresh rate it believes the monitor has. That's why
the bogus GetModeLine dotclock exacerbates things.

> We had exactly the same problem with radeon TV out here - although using 
> other applications, and we ended up having to completly disable vsync to
> get usable tv output performance.  bleh. 

That's exactly what I've ended up with here. If I remove the DRM module
entirely then it avoids the DRM vblanking b0rkage and the problem where X
sprays pixels all over the screen.

Of course eventually I do want to get OpenGL DRI working so I'll need the DRM.
It seems the dual head mode doesn't support OpenGL at all, which kind of
sucks. Hopefully that's in the not too distant future.

I know I was getting frustrated earlier, but I really do appreciate all the
help. Thanks.


-- 
greg




More information about the xorg mailing list