[mythtv] MythTV won't run with VIA CX700M2 chipset

Daniel Kristjansson danielk at cuymedia.net
Wed Jan 23 13:51:27 UTC 2008


On Wed, 2008-01-23 at 12:13 +0000, Oliver Maunder wrote:
> I'm using the official VIA drivers because the Openchrome doesn't yet 
> I've tracked this down to DRM VSync calls. Commenting out the line
> TESTVIDEOSYNC(DRMVideoSync) in VideoSync::BestMethod (in
> libs/libmythtv/vsync.cpp) cures the problem.
>
> This leads to a second issue where video works but the colours are
> messed up because MythTV is using I420 encoding which the driver
> doesn't seem to like. This can be fixed by uncommenting the line 
>      #define USE_ATI_PROPRIETARY_DRIVER_XVIDEO_HACK
>   in videoout_xv.cpp in 0.2.20. This #define isn't the SVN version,
> but a similar one-line fix will work.
The SVN version defaults to using the reversed I420 encoding that
the AIT hack enabled. Unfortunately it seems many video card driver
writers don't test I420 before shipping the drivers.

> submit a patch, but I don't know what the policy is about hacking
> around driver issues. The code would need to test for the VIA driver
> and use the workarounds if it's founds. Is this sort of thing done
> elsewhere in the code? 
Hacking around driver issues is something we do but don't like doing.
When we do it we vastly prefer using a method that tests for the broken
driver at run time and only applies the patch if needed. 

The GrabSuitibleXvPort() function in libs/libmythtv/videoout_xv.cpp
queries the adaptor name, something like that could be used to test
for the presence of the VIA drivers.

-- Daniel



More information about the mythtv-dev mailing list