YUV / YCbCr color componet data ranges
Currently Breeze supports 3 variants of 8-bit data ranges for YUV / YCbCr color components:
- 0 - 255, 0 - 255
- 16 - 255, 16 - 255
- 16 - 235, 16 - 240
These data ranges are applied to all supported YCbCr image formats with 3 major YUV sub sampling ratios: 4:4:4, 4:2:2, 4:2:0.
Color space | Sub sampling ratio | Data range | Clipping | Data range name | ||||
---|---|---|---|---|---|---|---|---|
Luma Y | Chroma Cb | Chroma Cr | Luma | Chroma Cb | Chroma Cr | |||
YCbCr | 4:4:4 4:2:2 4:2:0 |
0 - 255 | 0 - 255 | 0 - 255 | 0, 255 | 0, 255 | 0, 255 | 0 - 255 |
16 - 255 | 16 - 255 | 16 - 255 | 16, 255 | 16, 255 | 16, 255 | 16-255 | ||
16 - 235 | 16 - 240 | 16 - 240 | 16, 235 | 16, 240 | 16, 240 | 16-235-240 |
Out of 3 supported data ranges only the data range 16-236-24 follows strictly to the standard recommendations ITU-T 601 [1], and ITU-T 709 [2]. This data range provides full compatability with classic TV standards.
Narrowing the data range of 8-bit data from available 0 - 255 to 16 - 235 and 16 - 240 leads unavoidably to the additional data loss during RGB - YUV conversion. Therefore many applications, using RGB-YCbCr data conversions defined by ITU-T 601 [1], and ITU-T 709 [2], do not follow the strict rulles of ITU-T recommendations, and utilize full data range to 0 - 255, or sometimes to 16 - 255. That class applications are called "application based on the ITU-T 601, ITU-T 709 standards".
For example, popular JPEG / JFIF image compression standard uses data range 0 - 255 for luma and chromas.
References:
- RECOMMENDATION ITU-R BT.601-5, 1982-1995.
- RECOMMENDATION ITU-R BT.709-5, 1990-2002.
The following below topics give more detailed technical information about YUV formats implemented in the Breeze media software. Click highlighted links to learn more: