[mythtv] mythfrontend: xvideo bad colors
Dewey Garrett
dgarrett at panix.com
Sun Feb 26 04:59:58 UTC 2006
Hello,
If I start X (xvideo enabled) and use
mplayer -vo xv
or
xine --video-driver=xv
I can play an mpg file or use /dev/video0 directly with no
problems and very low cpu usage.
If I start mythfrontend (with xvideo enabled) the colors are wrong
-- skin tones are bluish, lips are greenish for instance. (The
colors are normal if I start X with xvideo disabled.)
After I stop mythfrontend, then xine and mplayer show the same
wrong colors as with mythfrontend. Correct colors for xine and
mplayer are restored only by restarting X.
So it seems that when mythfrontend starts, it sets something for
xvideo that messes up color rendition. The color error persists
after mythfrontend stops with other applications.
OS: 2.6.15-gentoo-r1
Mythtv version: 0.19
Video grabber: PVR500
Motherboard: MSI RS480M-IL
CPU: Sempron 64 2800
Integrated graphics: Radeon Xpress 200G
lspci: 01:05.0 VGA compatible controller:
ATI Technologies Inc RS480 [Radeon Xpress 200G Series]
ati-drivers: 8.22.5 (fglrx)
Xorg.0.log excerpts:
(II) Loading extension XVideo
(II) Loading extension XVideo-MotionCompensation
RADEON XPRESS 200 (RS400 5A41), RADEON XPRESS 200M (RS400 5A42),
xvinfo excerpt:
X-Video Extension version 2.2
Adaptor #0: "ATI Radeon Video Overlay"
Number of image formats: 4
id: 0x32595559 (YUY2)
id: 0x59565955 (UYVY)
id: 0x32315659 (YV12)
id: 0x30323449 (I420)
grep for xv in mythfrontend log messages:
VideoOutputXv: ctor
VideoOutputXv: Pixel dimensions: Screen 1280x999, window 640x480
VideoOutputXv: Estimated display dimensions: 342x271 mm Aspect: 1.26199
VideoOutputXv: Estimated window dimensions: 171x130 mm Aspect: 1.31538
VideoOutputXv: @ j=3 Looking for flag[s]: XvInputMask XvImageMask
VideoOutputXv: Adaptor: 0 has flag[s]: XvInputMask XvImageMask
VideoOutputXv: Grabbed xv port 67
VideoOutputXv: XVideo surface found on port 67
VideoOutputXv: XVideo Format #0 is 'YUY2'
VideoOutputXv: XVideo Format #1 is 'UYVY'
VideoOutputXv: XVideo Format #2 is 'YV12'
VideoOutputXv: XVideo Format #3 is 'I420'
VideoOutputXv: Using XVideo Format 'I420'
VideoOutputXv: CreateShmImages(32): XJ: (480,480)
VideoOutputXv: ClearAfterSeek()
VideoOutputXv: dtor
VideoOutputXv: Closing XVideo port 67
For a test, I edited videoout_xv.cpp to force xv_chroma to YV12:
| bool VideoOutputXv::InitXVideo()
| ...
| foundimageformat = true;
| xv_chroma = GUID_I420_PLANAR;
| VERBOSE(VB_IMPORTANT, LOC + "dng+ forcing GUID_YV12_PLANAR");
| xv_chroma = GUID_YV12_PLANAR;
But the colors were not improved.
Any ideas?
dewey
More information about the mythtv-dev
mailing list