Available transforms

AllocationTransform

Transforms from reference space to the range specified by the vars:

Keys:

  • allocation

  • vars

  • direction

BuiltInTransform

Builds one of a known set of transforms, on demand

Keys:

  • style

  • direction

CDLTransform

Applies an ASC CDL compliant grade

Keys:

  • slope

  • offset

  • power

  • sat

  • style

  • name

  • direction

ColorSpaceTransform

Transforms from src colorspace to dst colorspace.

Keys:

  • src

  • dst

  • data_bypass

  • direction

DisplayViewTransform

Applies a View from one of the displays.

Keys:

  • src

  • display

  • view

  • looks_bypass

  • data_bypass

  • direction

ExponentTransform

Raises pixel values to a given power (often referred to as “gamma”)

!<ExponentTransform> {value: [1.8, 1.8, 1.8, 1]}

Keys:

  • value

  • style

  • name

  • direction

ExponentWithLinearTransform

Applies a power but with a linear section near black. May be used to implement sRGB, CIE L*, and the Rec.709 camera OETF (not the display!).

Keys:

  • gamma

  • offset

  • style

  • name

  • direction

ExposureContrastTransform

Applies an exposure, contrast, or gamma adjustment. Uses dynamic properties for optimal live adjustments (e.g., in viewports).

!<ExposureContrastTransform> {style: linear, exposure: {value: -1.5, dynamic: true},
  contrast: 0.5, gamma: 1.1, pivot: 0.18}

Keys:

  • exposure

  • contrast

  • pivot

  • gamma

  • style

  • name

  • direction

Dynamic Property Keys:

  • value

  • dynamic

FileTransform

Applies a lookup table (LUT)

Keys:

  • src

  • cccid

  • cdl_style

  • interpolation

  • direction

FixedFunctionTransform

Applies one of a set of fixed, special purpose, mathematical operators.

Keys:

  • style

  • params

  • name

  • direction

GroupTransform

Combines multiple transforms into one.

colorspaces:

  - !<ColorSpace>
    name: adx10

    [...]

    to_reference: !<GroupTransform>
      children:
        - !<FileTransform> {src: adx_adx10_to_cdd.spimtx}
        - !<FileTransform> {src: adx_cdd_to_cid.spimtx}

A group transform is accepted anywhere a “regular” transform is.

Keys:

  • children

  • name

  • direction

LogAffineTransform

Applies a logarithm as well as a scale and offset on both the linear and log sides. May be used to implement Cineon or Pivoted (Josh Pines) style lin-to-log transforms.

Keys:

  • base

  • lin_side_offset

  • lin_side_slope

  • log_side_offset

  • log_side_slope

  • name

  • direction

LogCameraTransform

Similar to LogAffineTransform but also allows a linear section near black. May be used to implement the ACEScct non-linearity as well as many camera vendor lin-to-log transforms.

Keys:

  • base

  • lin_side_offset

  • lin_side_slope

  • log_side_offset

  • log_side_slope

  • lin_side_break

  • linear_slope

  • name

  • direction

LogTransform

Applies a mathematical logarithm with a given base to the pixel values.

Keys:

  • base

  • name

  • direction

LookTransform

Applies a named look

Keys:

  • src

  • dst

  • looks

  • direction

MatrixTransform

Applies a matrix transform to the pixel values

Keys:

  • matrix

  • offset

  • name

  • direction

RangeTransform

Applies an affine transform (scale & offset) and clamps values to min/max bounds.

Keys:

  • min_in_value

  • max_in_value

  • min_out_value

  • max_out_value

  • style

  • name

  • direction

Note

If a min_in_value is present, then min_out_value must also be present and the result is clamped at the low end. Similarly, if max_in_value is present, then max_out_value must also be present and the result is clamped at the high end.