Color space

4 posts / 0 new
Last post
Offline
Joined: 11 Mar 2010
Color space

I've never messed with color space much, but I am curious on instances when you would want a full range vs the limited range for an HTPC. I have an HTPC, use 7MC and TMT/PowerDVD exclusively. I connect via HDMI through an AVR passed through to my plasma tv (1366x768). I have an nvidia 9300.

I can change the range of my TV through the service menu to from 235 to 255. I can change color space and settings (RGB or YCbCr). So for playback through 7MC and color calibration, what is the best practice regarding these settings? 

Thanks!

NitDawg

 

Aaron Ledger's picture
Offline
Joined: 6 Aug 2010

This is a good question and the answer gets somewhat involved and murky due to variations in source content and equipment used.

The first thing to understand is that all video on Blu-ray, TV, etc. is encoded as YCbCr. Because of this, all typical video devices (BD player, cable STB, etc.) all deal in YCbCr by default. For better or worse, PCs came along and have always been RGB. Video games being developed in PC-land are also RGB which leads to devices such as PS3, Xbox, etc. to also support RGB. Thanks to HDMI, we have an interface that supports both RGB and YCbCr and has given us this wonderful choice Tongue

Getting back to video, the ideal case is to leave it as YCbCr and never convert it to RGB because each time a conversion is made between color spaces, there is some error. This can compound itself with each conversion. When dealing with video in the Windows PC realm, it is converted to RGB whether it is wanted or not and various other processes may happen to the video depending on the application used. If converting back to YCbCr, that is potentially another conversion error, yet there are still times where it may be best. A sampling of cases where this may be true are the following:

1. You have a display calibrated to YCbCr video source and when feeding an RGB source, the decoding doesn't match the YCbCr decoding. In other words, the display has some error inherent to the processing of the RGB space or treats RGB differently in some negative ways compared to YCbCr.

2. The display converts to YCbCr anyway for internal processing so it may be better to do this at the source. This is most likely impossible to know unless there is some inside knowledge to what is going on in the display.

3. Some AVRs may only play nice with YCbCr (or limited-range RGB) and truncate full-range RGB.

The major disadvantage to using YCbCr would be that full-range RGB source content (e.g. video games and bitmap photos) will be re-quantized to a smaller dynamic range (0-255 to 16-235). The same can be said for limited-range RGB. The other disadvantage would be when dealing with video in a case where a display will not convert RGB to YCbCr.

In the end, the major focus should be making sure that black/white levels are correct through some basic calibration. Try full-range RGB and YCbCr, calibrating for each and see what looks best to your eyes and works best with your other home theater equipment and source content. Look for things such as banding (non-smooth color and grayscale ramps). You obviously don't want to see crushed blacks or washed out blacks which the simple calibration patterns can reveal. I know I haven't given you a single answer to what is the best practice and that's because I don't believe there is a single answer to the question as "it depends."

Senior Editor | @swoon_

Offline
Joined: 11 Mar 2010

Wow, that's a whole lot of info to digest, thanks for the input. So does this mean that if you calibrate using a static bitmap reference pattern vs a reference pattern in a video playback that the color space could be different? I will play around with all the options and see how it all looks, thanks!

Aaron Ledger's picture
Offline
Joined: 6 Aug 2010

When looking at a test bitmap image, you'll want to see all levels from 0 - 255. When looking at video, you will only want to see levels 16 - 235.

Senior Editor | @swoon_

Login or register to post comments
Website design by Yammm Software
Powered by Drupal