Bug 13872 - TV-Out show bright white colors as black/white noise
Summary: TV-Out show bright white colors as black/white noise
Status: RESOLVED FIXED
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/Radeon (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: xf86-video-ati maintainers
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-12-30 15:20 UTC by Matthias Bläsing
Modified: 2009-08-25 02:53 UTC (History)
9 users (show)

See Also:
i915 platform:
i915 features:


Attachments
photography of the noise (817.57 KB, image/jpeg)
2007-12-30 15:21 UTC, Matthias Bläsing
no flags Details

Description Matthias Bläsing 2007-12-30 15:20:09 UTC
Hello,

when using the tv-out of my "VGA compatible controller: ATI Technologies Inc RV350 [Mobility Radeon 9600 M10]" it works quite good (much better, than the previously used VGA<->Composite adapter). This is true apart from a strange distortion.

Some white very bright areas show garbage - it looks like static you get, when no station is tuned in. I tried to take a picture, that I attached to this report - it's not too good, but I put strokes around the relevant areas. The noise I describe is visible at the top of the buttons.

Greetings

Matthias
Comment 1 Matthias Bläsing 2007-12-30 15:21:12 UTC
Created attachment 13427 [details]
photography of the noise
Comment 2 Matthias Bläsing 2007-12-30 15:23:31 UTC
xrandr properties:
mblaesing@prometheus:~/tmp$ xrandr --prop
Screen 0: minimum 320 x 200, current 2480 x 1050, maximum 3080 x 1050
VGA-0 disconnected (normal left inverted right x axis y axis)
	load_detection: 1 (0x00000001) range:  (0,1)
LVDS connected 1680x1050+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
		scaler: full
	backlight: 255 (0x000000ff) range:  (0,255)
   1680x1050      61.1*+
   1280x800       60.0  
   1280x768       60.0  
   1024x768       60.0  
   800x600        60.3  
   640x480        59.9  
S-video disconnected 800x600+1680+0 (normal left inverted right x axis y axis) 0mm x 0mm
		tv_standard: pal
	tv_vertical_position: 0 (0x00000000) range:  (-5,5)
	tv_horizontal_position: -5 (0xfffffffb) range:  (-5,5)
	tv_horizontal_size: 3 (0x00000003) range:  (-5,5)
	load_detection: 1 (0x00000001) range:  (0,1)
  800x600 (0x67)   38.2MHz
        h: width   800 start  832 end  912 total 1024 skew    0 clock   37.4KHz
        v: height  600 start  603 end  607 total  624           clock   59.9Hz
mblaesing@prometheus:~/tmp$ 

Version-Info: git checkout from four days ago (after the load_detection patch)
Comment 3 Matthias Bläsing 2008-01-03 07:09:44 UTC
I played a bit with the gimp color selector and while playing with the RGB controls, I could get the black/white noise display, while adjusting the controllers to:

Red: 255
Green: 255
Blue: 242-248

Only in that range I get this noise. Playing with the HSV Value, I can set the V to 100 and varry S and then I can see in the H colorbar diffently sized noise-areas (S is varried between 1-4).
Comment 4 Adrian Mettler 2008-01-20 17:38:33 UTC
For what it's worth, I have the same video card (RV350, Mobility 9600) and am experiencing this same problem on the S-video with NTSC output.  When this happens, the shimmering pixels appear to alternate between the correct color and black.  It is possible to tell that pale yellows are still yellow, instead of just black and white.  (This fact is most visible with the color 255,255,242 #fffff2.)

For what it's worth, a workaround for people experiencing this problem in the context of video playback is to decrease the brightness and contrast each to -3 or so in mplayer; this eliminates the shimmery lightest colors while minimizing loss to the available range of colors.

Keep up the work on this driver -- with the xrandr support, it's way better than fglrx!
Comment 5 Robert Nelson 2008-01-21 17:44:56 UTC
Seeing this also on my mythbox's RV350, within the menu buttons of gnome, xvid movies, and dvd's. 

Using test images from here: http://www.lagom.nl/lcd-test/  (even thou they are lcd specfic, they do show up on my ntsc tv.)
It'll fail the White Saturation Test 254
Inversion test 6a & 6b
and the bottom two right in the response-time test.

Found a little note here on NTSC signals and the results with highly saturated colors.. https://computing.llnl.gov/vis/guidelines.shtml

Which I believe we are all seeing...

And a note about making images NTSC complaint, they recommend color values within 16 to 235 : http://people.csail.mit.edu/tbuehler/video/titles.html

Can't really test at the moment, mythbox is busy recording and the spare test rig is down, but there looks to be gain controls for Y and UV in radeon_tv.c located here:

 717     save->tv_gain_limit_settings = (0x17f << RADEON_UV_GAIN_LIMIT_SHIFT) | 

 718                                    (0x5ff << RADEON_Y_GAIN_LIMIT_SHIFT);

 724     save->tv_linear_gain_settings = (0x100 << RADEON_UV_GAIN_SHIFT) |

 725                                     (0x100 << RADEON_Y_GAIN_SHIFT);


Regards,

Robert
Comment 6 Christian Häne 2008-01-23 00:18:50 UTC
Hello

I have the same problem with an ati mobility x300. When using the fglrx driver i don't have this noise.
Comment 7 Robert Nelson 2008-01-23 05:51:24 UTC
I agree, when i was using fglrx's on this setup there were no problems displaying whites correctly, I'm betting we are just not setting one of the correct bits...  Looking thru the RV630 docs (for reference only since the hardware registers most likely changed alot.) there is a DACA_WHITE_LEVEL setting for the different video standards (page 296) along with a fine control adjustment for the white level in the same register.. I'm betting there's something similar. Looking thru the code there is a tv_dac_cntl register.  It would probably be worthwhile to use 'revenge' and compare this one, along with all known tv_dac settings registers...

 854     if (radeon_output->tvStd == TV_STD_NTSC ||

 855         radeon_output->tvStd == TV_STD_NTSC_J)

 856         save->tv_dac_cntl |= RADEON_TV_DAC_STD_NTSC;

 857     else

 858         save->tv_dac_cntl |= RADEON_TV_DAC_STD_PAL;
Comment 8 Alon Bar-Lev 2008-10-10 11:23:37 UTC
Hello,
Any news regarding this?
Does someone have a patch?
Thanks!
Comment 9 Tomasz Czapiewski 2008-12-06 08:04:47 UTC
I'm sorry for some off-topic but could you give me any advice how to use TV-Out with Radeon 9600 in Xorg xserver 1.5 (Kubuntu 8.10)? I've used TV-Out in Kubuntu 6.06 without problems and later I used fglrx but now I'd like to use only xorg-driver-ati as it's far better than fglrx. I've switched load_detection to 1 on S-video output with xrandr and it seems that my TV is recognized (checked that by pluging and unplug S-video cable) but the only one mode which I can use is 800x600 59.9Hz:
$ xrandr --prop
Screen 0: minimum 320 x 200, current 1280 x 1024, maximum 1680 x 1200
VGA-0 disconnected (normal left inverted right x axis y axis)
        load_detection: 1 (0x00000001) range:  (0,1)
DVI-0 connected 1280x1024+0+0 (normal left inverted right x axis y axis) 330mm x 270mm
        EDID_DATA:
                00ffffffffffff002131035016f53101
                330f010380211b78eaaea5a6544c9926
                14505421080031404540614081800101
                010101010101302a009851002a403070
                13004a0e1100001ea00f200031581c20
                288014004a0e1100001e000000fd003b
                3d1f43ff000a202020202020000000fc
                004c373244204456490a202020200007
                dvi_monitor_type: auto
                scaler: off
                tmds_pll: bios
        coherent_mode: 0 (0x00000000) range:  (0,1)
        load_detection: 0 (0x00000000) range:  (0,1)
   1280x1024      60.0*+   60.0     60.0*
   1680x1050      60.0
   1600x1024      60.2
   1400x1050      60.0
   1440x900       59.9
   1280x960       60.0
   1360x768       59.8
   1152x864       60.0
   1024x768       60.0     60.0
   800x600        60.3     60.0
   640x480        60.0     59.9     60.0
S-video connected (normal left inverted right x axis y axis)
                tv_standard: pal
        tv_vertical_position: 0 (0x00000000) range:  (-5,5)
        tv_horizontal_position: 0 (0x00000000) range:  (-5,5)
        tv_horizontal_size: 0 (0x00000000) range:  (-5,5)
        load_detection: 1 (0x00000001) range:  (0,1)
   800x600        59.9 +
$

I could use 1024x768 (I don't remember the refresh rate) some time ago (with Kubuntu 6.06 xorg-driver-ati and later with fglrx). I've tried all tv-standards supported by my card and driver (pal, ntsc, pal-60, pal-m,...) but I get nothing on my (old CRT) TV but some little noise on black screen. I've tried to switch it in Clone mode or Dualhead but without any luck. I think it might be because of resolution/refresh rate used by card.
I've tried some 'googling' but without any luck, too. Could you please give some modelines to use with xrandr to switch on TV? (and how to use them)
Comment 10 Alex Deucher 2008-12-08 07:54:28 UTC
(In reply to comment #9)
> I'm sorry for some off-topic but could you give me any advice how to use TV-Out
> with Radeon 9600 in Xorg xserver 1.5 (Kubuntu 8.10)?

Please don't ask configuration questions on unrelated bugs.  In the future, send an email to <xorg-driver-ati@lists.x.org> with your question.
Comment 11 Jim Eicholz 2009-02-27 08:00:22 UTC
Any update on this bug? I have this same issue with an ATI Mobility 9600.
Comment 12 James Wigginton 2009-03-24 20:08:14 UTC
Is there any further information that can be provided to help in fixing this bug? It would be great to get it sorted as it's the only thing stopping me using the open source driver. I have RV380 and RV200 based cards.
Comment 13 Alex Deucher 2009-03-30 08:31:23 UTC
fixed in 8f2a03bfc86422669a46c2853050979f099a17a8
Comment 14 Marc-Philip 2009-08-25 02:14:13 UTC
Could you please post a hint as to where to find a fixed version of the radeon driver and it's version?

T&R
Marc-Philip
Comment 15 Pauli 2009-08-25 02:53:30 UTC
(In reply to comment #14)
> Could you please post a hint as to where to find a fixed version of the radeon
> driver and it's version?
> 
> T&R
> Marc-Philip
> 

http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/

http://xorg.freedesktop.org/wiki/radeon for build instructions. You need only ddx package if you have recent enough distro packages. (1.6&friends would be prefered)


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.