Color Spaces, Color Primaries, and Transfer Functions

Last updated 26 September 2026

Overview

What Is a Color Space?

A color space is a standardized way of describing color. It defines a mapping between numeric color values (for example, the red, green, and blue components in a digital image) and the color they represent in the real world. Common color spaces include:

  • sRGB – A standard for computer screens and the internet.

  • Rec.709 – Widely used in HDTV.

  • DCI-P3 – Common in digital cinema.

  • Rec.2020 – Defined for Ultra High Definition (UHD) and HDR workflows.

By specifying a color space, you ensure that the same numeric values (R, G, and B) refer to the same real-world color appearance, regardless of the display device—provided the device is correctly calibrated and respects that color space.

Color Primaries

Within a given color space, color primaries define the exact chromaticity (or coordinates) for the red, green, and blue channels. These primaries are typically standardized, so when someone refers to “Rec.709 primaries,” they mean the specific red, green, and blue coordinates defined by Rec.709. The shape of the triangle (or gamut) formed by these three primary points on a color diagram (usually the CIE 1931 or CIE 1976 chromaticity diagram) represents the range of colors that can be displayed or encoded under that standard.

Transfer Functions (Gamma, Log, HDR Curves, etc.)

A transfer function describes how numeric code values in a digital file (e.g., an image or video frame) are transformed into actual brightness/light levels. You can think of it as the mapping between the digital data and the perceived brightness on the display. In many workflows, these transfer functions are referred to as:

  • Gamma curves (e.g., gamma 2.2, 2.4) used in sRGB, Rec.709, etc.

  • Log curves (e.g., Log-C, S-Log) used in professional camera workflows to capture a wider dynamic range.

  • PQ (Perceptual Quantization) or HLG (Hybrid Log-Gamma) used in HDR (High Dynamic Range) applications.

By precisely defining the transfer function, you ensure that your displayed or rendered image has the correct brightness and contrast relationships.

Setting Color Parameters in Backstage

Color Parameters per Asset

In Backstage, each asset comes with its own inherent color space, primaries, and transfer function. For instance:

Manually override automatically detected settings as needed. The values each of these can take are listed on Visual Assets Default Properties for assets and GPU Output for outputs.

  • Color Model: RGB, YCbCr

  • Color Range: Full, Limited

  • Color Primaries: BT_709, BT_2020, DCI-P3, Adobe RGB, BT.601-625, BT.601-525 or Manual

  • Color Transfer: Gamma, sRGB, SMPTE ST 2084, HLG, Log, Linear

  • Peak Luminance: Appears when Color Transfer is set to an HDR curve (SMPTE ST 2084 or HLG). Sets the mastering peak brightness, in nits, that the HDR tone curve maps to white. The Auto checkbox reads the peak from the file’s metadata and falls back to 1000 nits when none is present. DPX files carry no peak metadata — for DPX, the manual value is the only way to set it. Range: 50–10000 nits.

For blended projections with Camera based Black Level Correction, the Gamma transfer function is required for assets.

Color Parameters per Output

Each output in Backstage can also be set to a specific color space and transfer function.

Color Space

The options in the Color Space drop down are provided through the EDID by the sink of the output signal. “Default” refers to the default Colorspace in the settings (see below) - the default and always available option.

Understanding the "Color Space" setting of the output is crucial: it doesn't alter output values, but rather informs the output device (e.g., projector) about the color space of the signal. If you can manually adjust color space settings on your output device, you can select any value (or leave it at the default).

The conversion between Asset Color Space and Output Color Space is determined solely by their respective Color Primaries and Transfer functions, not the Color Space setting itself.

For blended projections, the Gamma transfer function is required for outputs.

Default Color Space

There are asset types that do not include any color space information, f.e. SBSM (our uncompressed format) or certain DPX files (with DPX, color space information is optional). For these assets, there can be setup a Default Color Space in the settings:

The default Color Primaries and Color Transfer will be used for Outputs, which Color Space is set to “Default” and for assets, that do not have any color space information embedded and which Color Space options are set to “Auto”.

Transformations Between Color Spaces

When an asset’s colour primaries or transfer function differ from the output’s, Backstage converts automatically. When they match, no conversion runs.

The conversion pipeline

The conversion follows these stages, in order:

  1. Linearize — The source transfer function is removed, producing linear light values in the source colour gamut.

  2. Tone-map (HDR content) — When an HDR asset (SMPTE ST 2084 or HLG) plays on an SDR output, the wider dynamic range is compressed to fit. The tone curve uses the asset’s Peak Luminance as its white reference and preserves hue. In the other direction, SDR content played on an HDR output is scaled to appear at standard brightness within the HDR range. When both asset and output are HDR, luminance passes through unchanged.

  3. Convert primaries — A matrix derived from the CIE chromaticity coordinates of both the source and destination primaries converts the colour from one gamut to the other. Colours that fall inside the destination gamut convert exactly.

  4. Clip out-of-gamut values — Colours outside the destination gamut are clipped at the gamut boundary, per channel.

  5. Encode — The destination transfer function is applied.

What happens when an output cannot show all of an asset’s colours

Every colour the output can reproduce is reproduced correctly. The conversion is exact for in-gamut colours.

There is no perceptual gamut compression — Backstage does not squeeze a wider gamut into a narrower one. Colours the output cannot reproduce are clipped per channel. In practice, deeply saturated colours come out flattened in saturation. Because clipping is per channel, hue can shift slightly right at the gamut boundary. This is expected, not a fault.

Setting the output’s Color Primaries and Color Transfer to match the asset skips the conversion entirely. This is a useful diagnostic step and the right choice when the display genuinely covers the wider gamut.

Ask the documentation