Saturday, January 22, 2011

Fix Windows Media Center and/or VLC Video Washed Out (too bright)

Whenever I try to watch my ripped DVD’s the video is washed out (too bright).  For the record: I rip the DVD’s I’ve PURCHASED so they don’t get scratched and they’re all on a media server so I don’t have to load DVD’s.   It doesn’t matter if I use VLC or Windows Media Center, the picture is always too bright.

Windows Media Center doesn’t really have a way to adjust your picture settings (stupid), so there is no obvious way to fix the problem via the software’s controls.

VLC at least allows you to make adjustments to how your picture appears, but since the video was washed out in both programs, I assumed something else was wrong.

I downloaded the latest drivers from NVIDIA and updated my settings, but still the problem persisted.  The blacks just aren’t black (the black bars at the top and bottom of the screen are MUCH darker than the blacks in the video).

I spent a couple of hours searching for solutions, and while there seems to be a fix for ATI cards, a documented fix is lacking for NVIDIA (it’s outlined at the end of this post).

For your general knowedge, Here is the ATI reason and fix (from Stephen Neal on AVForums.com):

Bottom line... Microsoft appears to have messed up and stipulated inconsistent support for SD and HD (or SD and HD protected path?) video in Vista's EVR (and probably else where)

This results in SD DVD and TV appearing to have set-up or raised black levels and dull white levels (i.e. grey blacks and dull whites and washed out colours) OR HD Blu-ray (and AIUI HD TV) content having crushed blacks and clipped whites.

Cause is inconsistent handling (and I suspect downright ignorance) of broadcast and pre-recorded video running with black at 16 not 0, and white at 235 not 255. (This dates back to 1982 when the first major international digital video standard - ITU 601 - then CCIR 601 - was ratified, and has remained the standard - for very good engineering reasons to do with retaining image quality - for both SD and HD video ever since)

There IS a registry fix for ATI cards and IGPs - called the BT601CSC=1 registry hack which changes ATI's SD handling to match their HD handling, and works well.

There appears to be no such fix for nVidia - I've raised it with Gigabyte and nVidia but have had no constructive solutions offered yet. (Gigabyte hilariously suggested I try a new video card to solve the problem on my newly built 9400 IGP HTPC...)

AIUI the problems are as follows :
HDMI Displays expect 16-235 video as a norm (though some can switch to 0-255 inputs this is no use if you are using an HDMI input with an AV amp, and your other sources switched through your amp are 16-235 standard) Bottom line - HTPCs feeding HDMI displays should be operating in 16-235 colour space. Both ATI and nVidia cards appear to support this.

DVDs, SD and HD TV broadcasts, DVDs, HD-DVDs and Blu-rays all use 16-235 video levels as well.
PCs use 0-255 levels internally.

What seems to happen is that SD content is kept with black at 16 and white at 235 in the PC 0-255 representation, which means that when this is converted to 16-235 HDMI output PC 0 is mapped to HDMI 16, and PC 16 - input video 16 to quite a lot above this in HDMI, PC 255 is mapped to HDMI 235 and PC 235 - input video 235 - to quite a lot below this... However for HD this doesn't happen and instead the input 16 is output as 16 and the input 235 is output as 235...

With nVidia cards you need to run in 0-255 mode to get 16-235 SD content passed through cleanly, but run in 16-235 mode to get 16-235 HD Blu-ray content passed through cleanly.

So the fix I found was to use the NVIDIA control panel to control your video playback instead of the video player’s settings.

  1. Open your NVIDIA Control Panel (type NVIDIA in your start menu search field and select NVIDIA Control Panel).
  2. Go down to Video and select “Adjust video color settings.”
  3. Under #2 (How do you make color adjustments), select “With the NVIDIA settings.”
  4. Under the Advanced tab change the Dynamic Range with the drop down to “Full (0-255)” (not “Limited (16-235)”).
  5. For my display to look as it should, I had to uncheck “Dynamic contrast enhancement.”

My video now appears as it should (not washed out).

9 comments:

Luan said...

Good stuff, solved my exact problem. Thank you very much!

Rick said...

Thank you VERY MUCH -- this was driving me NUTS! You are OK by me!

Anonymous said...

Thanks a lot for this. :)

Anonymous said...

FINALLY SOLVED!!!Thank you so much for taking the time to post this. This problem has been driving me crazy for months.

Anonymous said...

Is there a fix when creating content on a MAC? I'm having the same issues, but on a MAC?

Anonymous said...

Thank You!!! Fixed my problem! I never would have figured this out on my own.

The Invisible said...

Glad I could help!

Alex Ambroziak said...

Woowwwwww THANK YOU. This had been an issue for me for more than two years.

taters on ice said...

Any help for Mac OS? your solution makes perfect sense but I cannot find a control panel for nvidia to save my damn life. HELP!