Hi Daniel,
XvMC VLD in a Via M10K box is now working better, but still not right.
The main problem now is that sometimes channel changes work and
sometimes they don't.
I have tracked this down to an issue with the OSD.
When the channel change fails the code is stuck in
VideoOutputXv::GetAvailableOSD() in the loop:
while (!xvmc_osd_available.size())
{
xvmc_osd_lock.unlock();
usleep(50);
xvmc_osd_lock.lock();
}
The error messages from mythfront end are:
"Timed out waiting for free video buffers."I suspect there is a race hazard between the OSD for the channel change and the re-initialisation of the XvMC system in: VideoOutputXv::InputChanged().
I suspect that VideoOutputXv::InputChanged() should close down the OSD before doing anything and then re-initialise after deleting and re-instating the Video buffers. Actually, is it actually necessary to delete and re-create the Video buffers (could be done only if frame size has changed) ?? I actualy removed the deletion and re-creation of the video buffers and the channel channes appeared to work Ok then.
I can look into this a bit more but you might be able to see the cause and solution from the information above.
Terry
_______________________________________________ mythtv-dev mailing list [email protected] http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev
