# `VideoInterop.Colorimetry`
[🔗](https://github.com/emerge-elixir/video_interop/blob/v0.1.0/lib/video_interop/colorimetry.ex#L1)

Video color interpretation associated with a video stream.

Values default to `:unspecified`; producers must not guess a matrix or range.
Importers may reject unspecified values when correct conversion requires them.

# `chroma_location`

```elixir
@type chroma_location() ::
  :unspecified | :left | :center | :top_left | :top | :bottom_left | :bottom
```

# `matrix`

```elixir
@type matrix() ::
  :unspecified
  | :rgb
  | :bt709
  | :fcc
  | :bt470_bg
  | :smpte170m
  | :smpte240m
  | :ycgco
  | :bt2020_ncl
  | :bt2020_cl
  | :smpte2085
  | :chroma_derived_ncl
  | :chroma_derived_cl
  | :ictcp
```

# `primaries`

```elixir
@type primaries() ::
  :unspecified
  | :bt709
  | :bt470_m
  | :bt470_bg
  | :smpte170m
  | :smpte240m
  | :film
  | :bt2020
  | :smpte428
  | :smpte431
  | :smpte432
  | :ebu3213
```

# `range`

```elixir
@type range() :: :unspecified | :limited | :full
```

# `t`

```elixir
@type t() :: %VideoInterop.Colorimetry{
  chroma_location: chroma_location(),
  matrix: matrix(),
  primaries: primaries(),
  range: range(),
  transfer: transfer()
}
```

# `transfer`

```elixir
@type transfer() ::
  :unspecified
  | :bt709
  | :gamma22
  | :gamma28
  | :smpte170m
  | :smpte240m
  | :linear
  | :log
  | :log_sqrt
  | :iec61966_2_4
  | :bt1361
  | :iec61966_2_1
  | :bt2020_10
  | :bt2020_12
  | :smpte2084
  | :smpte428
  | :arib_std_b67
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
