# Rec. 709

ITU-R Recommendation 709, usually abbreviated Rec. 709, BT.709, or ITU-R 709, is a standard developed by the Radiocommunication Sector of the International Telecommunication Union (ITU-R) for image encoding and signal characteristics of high-definition television (HDTV). The standard specifies a scheme for digital encoding of colors as triplets of small integers, a widescreen format with 1080 active lines per picture and 1920 square pixels per line (a 16:9 aspect ratio), as well as several details of signal capture, transmission, and display. While directed to HDTV, some of its specifications (such as the color encoding) have also been adopted for other uses.

## Technical details

The standard is freely available at the ITU website, and that document should be used as the authoritative reference. The essentials are summarized below.

### Image format and definition

Recommendation ITU-R BT.709-6 defines a common image format (CIF) where picture characteristics are independent of the frame rate. The image is 1920x1080 pixels, for a total pixel count of 2,073,600 and a 16:9 aspect ratio.

### Frame rates

BT.709-6 specifies the following possible frame rates and pixel scanning order. The options for the latter are progressively scanned frame (P), progressive segmented frames (PsF), and interlaced (I)

#### 24/P, 24/PsF, 23.976/P, 23.976/PsF

    These combinations match the frame rate used for theatrical motion pictures. The fractional rates are included for compatibility with the "pull-down" rates used with NTSC.

#### 50/P, 25/P, 25/PsF, 50/I (25 fps)

    These combinations are provided for compatibility with earlier "50 Hz" TV standards, such as PAL or SECAM. There are no fractional rates as PAL and SECAM did not have the pull-down issue of NTSC.

#### 60/P, 59.94/P, 30/P, 30/PsF, 29.97/P, 29.97/PsF, 60/I (30 fps), 59.94/I (29.97 fps)

    These combinations offer compatibility with earlier "60 Hz" TV standards, as NTSC. Here again, the fractional rates are for compatibility with legacy NTSC pull-down rates.
Cameras and monitors may use any of these modes. Video captured in progressive mode can be recorded, broadcast, or streamed in progressive or progressive segmented frame modes. Video captured using an interlaced mode must be distributed as interlace unless a de-interlace process is applied in post production.
In cases where a progressive captured image is distributed in segmented frame mode, segment/field frequency must be twice the frame rate. Thus 30/PsF has the same field rate as 60/I.

### The RGB color space

Colors in the BT.709 standard are basically described according to the RGB color model, namely as mixtures of three primaries, "red" (R), "green" (G) and "blue" (B). For BT.709, their coordinates in the CIE 1931 chromaticity diagram are
ITU-R BT.709 color primaries$^{:p.18}$ :
| White point | White point | Primaries | Primaries | Primaries | Primaries | Primaries | Primaries |
| x$_W$ | y$_W$ | x$_R$ | y$_R$ | x$_G$ | y$_G$ | x$_B$ | y$_B$ |
| 0.3127 | 0.3290 | 0.64 | 0.33 | 0.30 | 0.60 | 0.15 | 0.06 |
In the BT.709 standard, a color value is conceptually represented by three numbers $(E_{R},E_{G},E_{B})$ between 0 and 1, where 0 means the absence of the corresponding primary color and 1 means the maximum intensity that the color space can represent. If these numbers are interpreted as Cartesian coordinates in a three-dimensional space, the representable colors correspond to points in an axis-aligned cube of side 1, with corner $(0,0,0)$ representing the color black and $(1,1,1)$ representing the maximum-brightness white. More generally, points along the cube's diagonal represent shades of grey. The white point coordinates above define this white color as being CIE illuminant D$_{65}$ for 2° standard observer.

### Non-linear encoding

The coordinates $(E_{R},E_{G},E_{B})$ are supposed to be proportional to the physical intensity of each primary, namely emitted or received light power per unit of area. For efficiency reasons, the standard specifies a non-linear transformation of each component signal, resulting in $(E'_{R},E'_{G},E'_{B})$. This optical electrical transfer transfer function,$^{:p1}$ is defined as$^{:p3}$
    $V={\begin{cases}4.500\,L&{\mbox{if }}L<0.018\\[2mm]1.099\,L^{0.45}-0.099&{\mbox{if }}L\geq 0.018\end{cases}}$
where $L$ is the linear coordinate ($E_{R}$, $E_{G}$, or $E_{B}$), and $V$ is the corresponding non-linear value ($E'_{R}$, $E'_{G}$, or $E'_{B}$), both in the range $\left[0,1\right]$.

### Non-linear decoding

In order to display the colors on a device, such as a HDTV monitor, the encoded values $(E'_{R},E'_{G},E'_{B})$ should be converted back to physical intensities of the primaries. Mathematically, the inverse of the non-linear encoding above would be
    $L={\begin{cases}V/4.5&{\mbox{if }}V<0.081\\[2mm]\left({\dfrac {V+0.099}{1.099}}\right)^{1/0.45}&{\mbox{if }}V\geq 0.081\end{cases}}$
The Rec.709 transfer characteristics is defined in terms of a reference opto-electronic transfer characteristic function. However, the BT.709 standard does not specify a corresponding reference electro-optical transfer characteristic function (sometimes referred as "display gamma"). In practice, display gamma depends on various factors such as the capabilities of the monitor, the viewing conditions, and desired visual effects (such as contrast or saturation stretching). A suggested corresponding reference electro-optical transfer characteristic function for flat panel displays used in HDTV studio production has been specified in ITU-R BT.1886 and EBU Tech 3320.

### The Y'C'$_B$C'$_R$ color space

The BT.709 standard also defines an alternative representation of colors by three coordinates $(E'_{Y},E'_{CB},E'_{CR})$ which are linear combinations of the (non-linear) RGB coordinates $(E'_{R},E'_{G},E'_{B})$.$^{:p4}$ Namely,
    $E'_{Y}=0.2126\,E'_{R}+0.7152\,E'_{G}+0.0722\,E'_{B}$
    $E'_{CB}={\frac {E'_{B}-E'_{Y}}{1.8556}}={\frac {1}{1.8556}}(-0.2126\,E'_{R}-0.7152\,E'_{G}+0.9278\,E'_{B})$
    $E'_{CR}={\frac {E'_{R}-E'_{Y}}{1.5748}}={\frac {1}{1.5748}}(+0.7874\,E'_{R}-0.7152\,E'_{G}-0.0722\,E'_{B})$
The value $E'_{Y}$ is called "luminance" in the standard, and is roughly an approximation of the CIE Y coordinate (which is presumed to measure the perceptual brightness of the color) modified by the non-linear function above. However, since $E'_{Y}$ is computed from the non-linear RGB components, this equivalence is correct only for shades of gray. The other two coordinates indicate the "blueness" and "redness" of the color's hue.
According to these formulas, as $E'_{R}$, $E'_{G}$, and $E'_{B}$ vary between 0 and 1, the luminance $E'_{Y}$ will vary between 0 and 1, while $E'_{CB}$ and $E'_{CR}$ will vary between $-0.5$ and $+0.5$.

### Quantization

For digital storage, transmission, and processing, the BT.709 standard specifies that the non-linear color coordinates $E'_{R}$, $E'_{G}$, $E'_{B}$, $E'_{Y}$, $E'_{CB}$, and $E'_{CR}$ shall be converted into integers $D'_{R}$, $D'_{G}$, $D'_{B}$, $D'_{Y}$, $D'_{CB}$, and $D'_{CR}$ with a fixed number $n$ of bits, either 8 or 10. This quantization shall be performed by simple scaling and rounding, so as to yield integers that span a proper subset of the $n$-bit integers. Specifically,$^{:p4}$
    $D'_{R}={\mbox{round}}((219\,E'_{R}+16)\,2^{n-8})$
and similarly for $D'_{G}$, $D'_{B}$, $D'_{Y}$; whereas
    $D'_{CB}={\mbox{round}}((224\,E'_{CB}+128)\,2^{n-8})$
and similarly for $D'_{CR}$. The ${\mbox{round}}$ function should round the argument to the nearest integer, with ties rounded up (that is, ${\mbox{round}}(3.4999)=3$ and ${\mbox{round}}(3.5000)=4$.
These quantization formulas are the same as those defined in ITU-R BT.601. As implied by these formulas, the signals $E'_{R}$, $E'_{G}$, $E'_{B}$, and $E'_{Y}$ are mapped from the range $[0,1]$ to 8-bit integers in [16 .. 235]; while $E'_{CB}$ and $E'_{CR}$ are mapped from the range $[-0.5,+0.5]$ to integers in [16..240], with 0 mapped to 128. For $n=10$ bits, the quantized values range in [64..940] and [64..960], respectively.
It follows that in limited range 8-bit R'G'B' the color black is represented as (16,16,16) while white is (235, 235, 235). In 8-bit Y'C'$_B$C'$_R$, black is (16, 128, 128) and white is (235, 128, 128).
Quantized color coordinates outside the nominal ranges above are allowed, but typically they would be clamped for broadcast or for display (except for Superwhite and xvYCC). However, in the limited range the 8-bit values 0 and 255 and the 10 bit values 0..3 and 1020..1023 are reserved for timing marks (SAV and EAV) and cannot appear in color data.$^{:p4}$

## History

The creation of a worldwide HDTV standard was approved in 1989 by the Comité consultatif international pour la radio (CCIR) as "Recommendation XA/11 MOD F". The first official version of the standard was approved in 1990 by the CCIR, under the name "Recommendation 709". The CCIR became the ITU-R in 1992, and released a new version of the standard (BT.709-1) in November 1993. These early versions still left many unanswered questions, and the lack of consensus toward a worldwide HDTV standard was evident. So much so, some early HDTV systems such as 1035i30 and 1152i25 were still a part of the standard as late as 2002 in BT.709-5.
The most recent version is BT.709-6 released in 2015.
The standard strictly determined the picture size but offered several options for the pixel scanning order and frame rate. This flexibility allows BT.709 to become the worldwide standard for HDTV. This allows manufacturers to create a single television set or display for all markets world-wide.

### Justification for the non-linear encoding

The BT.709 standard calls the non-linear encoding of $(E_{R},E_{G},E_{B})$ to $(E'_{R},E'_{G},E'_{B})$ the optical electrical transfer function$^{:p.1}$ because it was meant to resemble the conversion of light intensity into analog electrical signals implemented by older non-digital cameras. It had long been known that a non-linear encoding of colors was more efficient than a linear one because human vision is more sensitive to brightness changes at low light levels. That conversion was commonly as a power law $V=L^{\gamma }$ with exponent $\gamma$ near 0.5 (hence the common names "gamma correction" or "camera gamma" for the encoding function). The BT.709 encoding function OETF is close to a power law with exponent near 1/2.0.
The BT.709 encoding function is not a simple power law because the latter has infinite slope at the origin, which emphasizes camera noise and is problematic for analog-to-digital converters. Thus the standard opted for a piecewise function that combines a simple linear function $V=a\,L$ for low light levels and a shifted power law $((L+c)/(1+c))^{\gamma }$ for larger values. Having chosen 0.45 as the exponent $\gamma$ and 4.5 as the slope of the linear part, the conditions for the function to be continuous (without sudden jumps) and smooth (without sudden changes of slope) at the break point $L=L_{0}$ are
    ${\begin{cases}4.5\,L_{0}=(1+c)\,L_{0}^{0.45}-c\\4.5=0.45(1+c)\,L_{0}^{-0.55}\end{cases}}$
The solution of these equations is $c\approx 1.099296826809442...$ and $L_{0}\approx 0.018053968510807...$ These values were rounded to 0.099 and 0.018, respectively.

## Standards conversion

Conversion between different standards of video frame rates and color encoding has always been a challenge for content producers distributing through regions with different standards and requirements. While BT.709 has eased the compatibility issue in terms of the consumer and television set manufacturer, broadcast facilities still use a particular frame rate based on region, such as 29.97 in North America, or 25 in Europe meaning that broadcast content still requires at least frame rate conversion.

### Color gamut

The BT.709 red and blue primaries are the same as the EBU Tech 3213 (PAL) primaries. The y$_G$ coordinate too is the same, while x$_G$ is halfway between EBU Tech 3213's x$_G$ and SMPTE C's x$_G$.
The resulting BT.709 color space is almost identical to that of the BT.601-6 used by PAL and SMPTE C, and covers 35.9% of the CIE 1931 color space. It also covers 33.24% of the CIE 1976 u’v’ space and 33.5% of the CIE 1931 xy diagram.

### Converting standard definition

The vast legacy library of standard-definition programs and content presents further challenges. NTSC, PAL, and SECAM are all interlaced formats in a 4:3 aspect ratio, and at a relatively low resolution. Scaling them up to HD resolution with a 16:9 aspect ratio presents a number of challenges.
First is the potential for distracting motion artifacts due to interlaced video content. The solution is to either up-convert only to an interlaced BT.709 format at the same field rate, and scale the fields independently, or use motion processing to remove the inter-field motion and deinterlace, creating progressive frames. In the latter case, motion processing can introduce artifacts and can be slow to process.
Second is the issue of accommodating the SD 4:3 aspect ratio into the HD 16:9 frame. Cropping the top and/or bottom of the standard-definition frame may or may not work, depending on if the composition allows it and if there are graphics or titles that would be cut off. Alternately, pillar-boxing can show the entire 4:3 image by leaving black borders on the left and right. Sometimes this black is filled with a stretched and blurred form of the image.
In addition, the SMPTE C RGB primaries used in North American standard definition are different than those of BT.709 (SMPTE C is commonly referred to as NTSC, however it is a different set of primaries and a different white point than the 1953 NTSC). The red and blue primaries for PAL and SECAM are the same as BT.709, with a change in the green primary. Converting the image precisely requires a LUT (lookup table) or a color managed workflow to convert the colors to the new colorspace. However, in practice this is often ignored, except in mpv, because even if the player is color managed (most of them are not, including VLC), it can see BT.709 or BT.2020 primaries only.

### Luma coefficients

When encoding Y’C$_B$C$_R$ video, BT.709 creates gamma-encoded luma (Y’) using matrix coefficients 0.2126, 0.7152, and 0.0722 (together they add to 1). BT.709-1 used slightly different 0.2125, 0.7154, 0.0721 (changed to standard ones in BT.709-2). Although worldwide agreement on a single R’G’B’ system was achieved with Rec. 709, adoption of different luma coefficients (as those are derived from primaries and white point) for Y’C$_B$C$_R$ requires the use of different luma-chroma decoding for standard definition and high definition.

### Conversion software and hardware

These problems can be handled with video processing software which can be slow, or hardware solutions which allow for realtime conversion, and often with quality improvements.

### Film retransfer

A more ideal solution is to go back to original film elements for projects that originated on film. Due to the legacy issues of international distribution, many television programs that shot on film used a traditional negative cutting process, and then had a single film master that could be telecined for different formats. These projects can re-telecine their cut negative masters to a BT.709 master at a reasonable cost, and gain the benefit of the full resolution of film.
On the other hand, for projects that originated on film, but completed their online master using video online methods would need to re-telecine the individual needed film takes and then re-assemble, a significantly greater amount of labor and machine time is required in this case, versus a telecine for a conformed negative. In this case, to enjoy the benefits of the film original would entail much higher costs to conform the film originals to a new HD master.

### Comparison to sRGB

sRGB was created after the early development of Rec.709. The creators of sRGB chose to use the same primaries and white point as Rec.709, but changed the tone response curve (sometimes referred to as gamma) to better suit the intended use in offices and brighter conditions than television viewing in a dark living room.
Rec. 709 and sRGB share the same primary chromaticities and white point chromaticity; however, sRGB is explicitly output (display) referred with an equivalent gamma of 2.2 (the actual function is also piecewise to avoid near black issues). Display P3 uses sRGB EOTF with its linear segment, a change of that segment from 709 is needed by either using parametric curve encoding of ICC v4 or by using slope limit.