HTPC Blu-Ray essentials
Page 4: color spaces
RGB vs. YCbCr
Virtually all digitally compressed video sources are stored in YCbCr. However, graphics cards usually work in RGB, which is a different color model. So that means that when movies are played on a PC, someone somewhen has to convert YCbCr to RGB. There are a few things to consider.
BT.601 vs. BT.709
The color format for SD is defined by BT.601. So SD content needs to follow the BT.601 specification. The color format for HD is defined by BT.709. So HD content needs to follow the BT.709 specification. It's important that the graphics card carefully follows these specifications because otherwise the colors will be all screwed up. Things get interesting if the graphics card upscales SD content to HD resolutions. But that is a topic outside the scope of this article.
Theoretically a graphics card could support output of YCbCr. Actually the best output would be a format which is as near to the native format of the Blu-Ray disc as possible to avoid any unnecessary (and lossy) conversions. The Blu-Ray disc uses YCbCr 4:2:0. HDMI and DVI do not support YCbCr 4:2:0, but YCbCr 4:2:2 and YCbCr 4:4:4 are both supported. So outputting YCbCr is possible and would be welcome. Most TVs accept both RGB and YCbCr, so there would also be no compatability problem.
However, YCbCr output makes sense only if it's a "pure" output, without a multitude of conversions in between. If the graphics card first converts the YCbCr source to RGB, then converts it back to YCbCr for output this is actually a negative thing. Ideally the graphics card should just take the YCbCr source and output it as it is. To my best knowledge no graphics card on the market can do this today.
From a quick check it seems that ATI generally uses the correct color format, but there are reports that when levels are not expanded for whatever reason (see page 3) the colors are screwed up by ATI (visible on 75% color patterns). This happens mainly in XP. But since it only happens in some cases I'll at least give ATI 50% of the points.
There's a lack of documentation about when ATI uses which color format. It would be nice if ATI could state in which situation exactly it's using which.
NVidia's color handling seems to be correct. But the same thing already said
about ATI is valid here, too: It would be nice if NVidia could let us users
know in which circumstances exactly which color format is being used.
Of course the 80 points for BT.709 conformance are only given if the colors are correct and not screwed up in any way.