Skip to main content

Module transforms

Module transforms 

Source
Expand description

Transforms: the user-facing descriptions of color operations (port of OpenColorTransforms.h).

Every transform is a plain struct with public fields plus convenience accessors. The Transform enum wraps all of them. Transforms are turned into ops by build::build_ops.

Re-exports§

pub use build::BuildOps;
pub use build::Validate;

Modules§

build
Conversion of transforms into ops.
grading
Grading value types used by the grading transforms (GradingPrimary, GradingTone, GradingRgbCurve, GradingHueCurve, B-spline curves).

Structs§

AllocationTransform
Allocation (uniform / lg2) transform, used by legacy GPU paths and allocation in colorspaces.
BuiltinTransform
A transform from the builtin registry, identified by its style name (for instance "ACEScct_to_ACES2065-1").
CdlTransform
ASC CDL (slope / offset / power / saturation).
ColorSpaceTransform
Conversion between two color spaces of the config.
DisplayViewTransform
Conversion from a color space to a (display, view) pair.
ExponentTransform
Power function out = in ^ value per channel (RGBA).
ExponentWithLinearTransform
Power function with a linear segment near zero (sRGB / Rec.709 style “moncurve”).
ExposureContrastTransform
Exposure / contrast / gamma adjustment.
FileTransform
Transform loaded from an external file (LUT, CDL, CLF, …).
FixedFunctionTransform
Hard-coded color math (ACES red modifier, glow, HSV, PQ, ACES 2 …).
GradingHueCurveTransform
Hue curve grading.
GradingPrimaryTransform
Primary grading (lift/gamma/gain, contrast, offset, exposure, saturation).
GradingRgbCurveTransform
RGB curve grading.
GradingToneTransform
Tonal grading (blacks, shadows, midtones, highlights, whites).
GroupTransform
Ordered list of transforms.
LogAffineTransform
out = logSlope * log(linSlope * in + linOffset, base) + logOffset.
LogCameraTransform
Camera log curve: log affine with a linear segment below lin_side_break.
LogTransform
out = log(in, base).
LookTransform
Apply looks (and color space conversions) from src to dst.
Lut1DTransform
1D LUT. values holds length * 3 interleaved RGB values.
Lut3DTransform
3D LUT. values holds grid_size^3 * 3 RGB values with the blue index changing fastest: index = ((r * n + g) * n + b) * 3.
MatrixTransform
4x4 matrix (row major) plus offset: out = M * in + offset.
RangeTransform
Affine remap of [min_in, max_in] to [min_out, max_out] with optional clamping. Each bound is optional.

Enums§

Transform
Any transform.

Constants§

DEFAULT_LUMA_COEFS
Default luma coefficients (Rec.709) used by CDL saturation.
IDENTITY_MATRIX44
The 4x4 identity matrix.
METADATA_INPUT_DESCRIPTION
Element name of the input description child.
METADATA_SAT_DESCRIPTION
Element name of the SAT description child.
METADATA_SOP_DESCRIPTION
Element name of the SOP description child.
METADATA_VIEWING_DESCRIPTION
Element name of the viewing description child.