1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
use ffi::AVChromaLocation::*; use ffi::*; #[derive(Eq, PartialEq, Clone, Copy, Debug)] pub enum Location { Unspecified, Left, Center, TopLeft, Top, BottomLeft, Bottom, } impl From<AVChromaLocation> for Location { fn from(value: AVChromaLocation) -> Self { match value { AVCHROMA_LOC_UNSPECIFIED => Location::Unspecified, AVCHROMA_LOC_LEFT => Location::Left, AVCHROMA_LOC_CENTER => Location::Center, AVCHROMA_LOC_TOPLEFT => Location::TopLeft, AVCHROMA_LOC_TOP => Location::Top, AVCHROMA_LOC_BOTTOMLEFT => Location::BottomLeft, AVCHROMA_LOC_BOTTOM => Location::Bottom, AVCHROMA_LOC_NB => Location::Unspecified, } } } impl Into<AVChromaLocation> for Location { fn into(self) -> AVChromaLocation { match self { Location::Unspecified => AVCHROMA_LOC_UNSPECIFIED, Location::Left => AVCHROMA_LOC_LEFT, Location::Center => AVCHROMA_LOC_CENTER, Location::TopLeft => AVCHROMA_LOC_TOPLEFT, Location::Top => AVCHROMA_LOC_TOP, Location::BottomLeft => AVCHROMA_LOC_BOTTOMLEFT, Location::Bottom => AVCHROMA_LOC_BOTTOM, } } }