pub struct ColorPipeline {
pub hdr: HdrSources,
pub hdr_peak_nits: u32,
}Expand description
How sources’ colors come into the working space.
The working space is display-referred linear light with BT.709 primaries,
where 1.0 is SDR white (100 nits), and every export is SDR BT.709. SDR
sources decode through the sRGB EOTF; wide-gamut ones are converted into
BT.709 primaries. An HDR (PQ or HLG) source is either refused or brought
in: linearized to display light, converted into BT.709 primaries, and
tone-mapped from Self::hdr_peak_nits to SDR white by the ITU-R BT.2390
EETF on each pixel’s largest component, which keeps its hue.
Fields§
§hdr: HdrSourcesWhat an HDR source does.
hdr_peak_nits: u32The luminance, in nits, HDR sources are taken to peak at: PQ above it
is clipped to it, HLG is displayed at it, and the tone map brings it
to SDR white. Within HDR_PEAK_NITS_RANGE.
Trait Implementations§
Source§impl Clone for ColorPipeline
impl Clone for ColorPipeline
impl Copy for ColorPipeline
Source§impl Debug for ColorPipeline
impl Debug for ColorPipeline
Source§impl Default for ColorPipeline
impl Default for ColorPipeline
Source§impl<'de> Deserialize<'de> for ColorPipeline
impl<'de> Deserialize<'de> for ColorPipeline
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for ColorPipeline
Source§impl PartialEq for ColorPipeline
impl PartialEq for ColorPipeline
Source§impl Serialize for ColorPipeline
impl Serialize for ColorPipeline
impl StructuralPartialEq for ColorPipeline
Auto Trait Implementations§
impl Freeze for ColorPipeline
impl RefUnwindSafe for ColorPipeline
impl Send for ColorPipeline
impl Sync for ColorPipeline
impl Unpin for ColorPipeline
impl UnsafeUnpin for ColorPipeline
impl UnwindSafe for ColorPipeline
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more