Originally Posted by Doug Blackburn
The following quote from PC World disagrees with your analysis, and I have read similar statements about xvYCC elsewhere, this one just came up first.
Well, like I said, there is a lot of confusion out there. I wouldn't believe everything you read (especially in marketing). I'm going from the actual standards documents: ISO/IEC 61966-2-4, CEA-861D, HDMI 1.3.
If you don't have an xvYCC-capable HDTV yet, it doesn't hurt to record in [xvYCC] for future use. The extra color information will simply be discarded on its way to your TV.
Yes, it will be discarded by the camcorder, or whatever plays the AVCHD output, because they know about xvYCC
. The HDMI specification says that the source can't feed xvYCC to the TV, unless the TV declares that it knows about xvYCC.
"Compatible with currently used video signals.
Same definition as for inside sRGB color space.
(No change is necessary for conventional contents.)"
Different sense of "compatible". Yes, any conventional RGB content is encoded the same way in xvYCC. And that makes it easy to reduce xvYCC to 601/709. But that's not saying anything about how non-xvYCC-aware devices will respond when fed extra-gamut colours.
"The xvYCC standard (IEC 61966-2-4), adopted in January 2006, expands the color gamut by introducing negative color signal values for these video signals. This standard encompasses xvYCC709, which is upwardly compatible with the B7.709 standard, and xvYCC601, which is upwardly compatible with BT.601."
That statement's a bit too strong, if by "upwardly compatible" they're trying to suggest that they can fling xvYCC data to non-xvYCC devices. But then, it is a marketing-type document. Even if you could argue that devices wouldn't respond too badly (and that is
probably the case for most), and maybe you might do that with xvYCC in some other applications, the HDMI 1.3 spec has explicitly ruled out that behaviour. No passing of xvYCC data to non-xvYCC displays.
A non-xvYCC display makes perfect sense of the xvYCC data because the negative values used to display extended gamut colors are not used or processed by displays that are either not in xvYCC mode or are not xvYCC compatible.
This isn't an issue, because an HDMI source is not permitted to send xvYCC data to a non-xvYCC display. The source is required to reduce it to standard 601/709.
That's because there's no way for a display to not "use or process" the negative values. They would receive pixels with those values, they would process them and as there's been no prior agreement on what they mean, you don't know how they would process them. A display can't just "skip" pixels with negative RGB values - they'll do something.
And beyond that, it would make absolutely NO sense to introduce xvYCC as not compatible with previous generations of products because it would be that much more difficult to ever begin using it more widely in the future.
Well, that problem does exist. If xvYCC was as compatible as you thought, then:
- you wouldn't have needed support for it in HDMI 1.3 - they'd have just flung it across, without any changes to the spec. But no, they changed the spec, required xvYCC to be properly flagged, and prevented sources from sending it without prior agreement;
- we'd see Blu-rays with it already - there'd be no reason not to just put xvYCC data on the disc. But they're not. If for no other reason than doing so would cause existing players to violate the HDMI spec (see point 1).
Now, certainly we can violate the specifications, produce Blu-rays and DVDs with unflagged xvYCC data, and fire them at non-xvYCC displays using non-xvYCC players to see what they do. I was intending to do that, as the results would be interesting. I suspect most will cope reasonably well.
But what I really want to do is produce some properly-flagged data for xvYCC-aware devices.
So, back to the original point of the post - I wasn't looking for people who were confused about xvYCC, I was looking for people with some actual concrete technical information - mainly info on AVCHD, and how to properly flag xvYCC content for it so we get valid HDMI output.