[theora-dev] YUV question

Mike Melanson melanson
Fri Jun 4 07:55:54 PDT 2004


On Fri, 4 Jun 2004, Makc wrote:

> Here's what you can find in the net on YUV scheme:

Hmm? What prompted this?

> The statement I care to make here, is simply that there ain't neither
> such thing as "luminance", which details "the eye is more sensitive to",

"ain't neither"? Double negative, so I take your statement to mean
that there *is* such a thing as luminance...:)

> nor "chromaticity", which details the eye is less sensitive to. What we
> have here is simply packing 8-bit R, G and B values together in 8-bit Y,
> which actually downsamples them to 7..5 bits, as it takes only 77,
> 151 and 30 unique values for R, G and B, respectively; than two additional
> 8-bit values are calculated for values that have suffered downsampling
> the most (namely, B and R) - it is obvious that they are necessary to
> recover individual R, G and B values from Y. Remarkably, those are these
> values, U and V, which hold color "details" (least significant bits of B
> and R, respectively, mixed with same data that we already have in Y) -
> and that is exactly the reason why they can be safely "sacrificed" in
> YUV 4:x:x "color spaces". As for why it is like that, things have been
> said: "YUV color is used in... TV broadcasts... Only the Y component of a
> color TV signal is shown on black-and-white TVs". Besides TV standards,
> nothing holds you fron using something like Y = R/4 + G/2 + B/4, which
> would considerably speed up codec, or sticking with good old 12-bit RGB.

True, very true. Which is why the creators of Cinepak did just
that with their codec over a decade ago...

http://www.csse.monash.edu.au/~timf/videocodec/cinepak.txt

--
-Mike Melanson


More information about the Theora-dev mailing list