#[derive(Debug, Copy, Clone, Eq, PartialEq)]
pub enum ChromaSampling {
Cs420,
Cs422,
Cs444,
Monochrome,
}
#[repr(C)]
#[derive(Debug, Copy, Clone, Eq, PartialEq)]
pub enum Range {
Limited,
Full,
}
#[repr(C)]
#[derive(Debug, Copy, Clone, Eq, PartialEq)]
pub enum ColorPrimaries {
BT709 = 1,
BT470M = 4,
BT470BG,
BT601,
GenericFilm = 8,
BT2020,
XYZ,
SMPTE431,
SMPTE432,
EBU3213 = 22,
}
#[repr(C)]
#[derive(Debug, Copy, Clone, Eq, PartialEq)]
pub enum TransferCharacteristics {
BT709 = 1,
BT470M = 4,
BT470BG,
BT601,
SMPTE240,
Linear,
Log100,
Log100Sqrt10,
IEC61966,
BT1361,
SRGB,
BT2020_10Bit,
BT2020_12Bit,
SMPTE2084,
SMPTE428,
HLG,
}
#[repr(C)]
#[derive(Debug, Copy, Clone, Eq, PartialEq, PartialOrd, Ord)]
pub enum Depth {
Depth8 = 8,
Depth10 = 10,
Depth12 = 12,
Depth16 = 16,
}
impl Depth {
#[inline(always)]
#[must_use]
pub const fn bits(self) -> u32 {
self as u32
}
}
#[repr(C)]
#[derive(Debug, Copy, Clone, Eq, PartialEq)]
pub enum MatrixCoefficients {
Identity = 0,
BT709,
FCC = 4,
BT470BG,
BT601,
SMPTE240,
YCgCo,
BT2020NCL,
BT2020CL,
SMPTE2085,
ChromatNCL,
ChromatCL,
ICtCp,
}
#[repr(C)]
#[derive(Debug, Copy, Clone, Eq, PartialEq)]
pub enum ChromaSamplePosition {
Vertical,
Colocated,
}