[mythtv-users] Failed to get A/V sync when using VDPAU

Richard peper03 at yahoo.com
Mon Sep 17 18:39:22 UTC 2012

On 09/09/12 20:22, Richard wrote:
> I *do* seem to have found a cure if not the reason directly.  The paint
> engine under Setup->Appearance was set to 'Auto'.  I tried changing this
> to 'Qt' a day or two ago and since then have not had the error message
> any more (for the record and for anyone in future who searches, the
> error message was 'Failed to initialize A/V sync').
> I'm aware that my video card is not the beefiest around but it seems odd
> that it sometimes works and sometimes not (although it seems to have
> become less reliable in the last week or two, which makes no sense
> because I've not consciously updated anything that could/should affect
> it).  Playing back using OpenGL worked but put a much bigger load on the
> CPU and I found I couldn't play HD recordings back above about 1.1x
> speed, whereas 1.3x or more is no problem with VDPAU.

Ok, I've had another light poke around as the latest version of the 
Mythbuntu theme doesn't look at all good with QT.

Parsing the output from nvidia-sli to get the memory usage of the 
graphics card, the problem *seems* to be caused by insufficient free memory.

When using OpenGL for the menus and VDPAU for video, and everything 
works, approx. 220MB are in use.  Before I start playback, graphics 
memory usage is usually around 150MB.  Moving round the the menus (e.g. 
from Watch Recordings to looking at Recording Rules and back to Watch 
Recordings), the baseline memory usage is higher (say around 180MB). 
This seems to be when playback fails.  As the card only has 256MB, these 
last 30MB or so become critical.

How are textures created and released?  This problem doesn't always 
occur and sometimes playback still works in spite of higher memory usage 
(of course you only need to have 1 byte too little for it to fail). 
Exiting playback seems to help bring the memory usage back down again, 
but not always (or not enough).

Is there some sort of delayed garbage collection for graphical widgets, 
which would mean that resources are not necessarily freed immediately?

I'm guessing that the QT engine simply needs slightly less memory, or 
frees the memory more punctually and that's why that works.

I'm happy to poke around in the code but I've no idea of the 
architecture, so I don't really know what I should be looking for.

Any ideas/hints etc. are gratefully received!


More information about the mythtv-users mailing list