Enum gstreamer_video::VideoAFDValue
source · #[non_exhaustive]pub enum VideoAFDValue {
Unavailable,
_169TopAligned,
_149TopAligned,
GreaterThan169,
_43Full169Full,
_43Full43Pillar,
_169Letter169Full,
_149Letter149Pillar,
_43Full149Center,
_169Letter149Center,
_169Letter43Center,
}
Expand description
Enumeration of the various values for Active Format Description (AFD)
AFD should be included in video user data whenever the rectangular picture area containing useful information does not extend to the full height or width of the coded frame. AFD data may also be included in user data when the rectangular picture area containing useful information extends to the full height and width of the coded frame.
For details, see Table 6.14 Active Format in:
ATSC Digital Television Standard: Part 4 – MPEG-2 Video System Characteristics
https://www.atsc.org/wp-content/uploads/2015/03/a_53-Part-4-2009.pdf
and Active Format Description in Complete list of AFD codes
https://en.wikipedia.org/wiki/Active_Format_DescriptionComplete_list_of_AFD_codes
and SMPTE ST2016-1
Notes:
- AFD 0 is undefined for ATSC and SMPTE ST2016-1, indicating that AFD data is not available: If Bar Data is not present, AFD ‘0000’ indicates that exact information is not available and the active image should be assumed to be the same as the coded frame. AFD ‘0000’. AFD ‘0000’ accompanied by Bar Data signals that the active image’s aspect ratio is narrower than 16:9, but is not 4:3 or 14:9. As the exact aspect ratio cannot be conveyed by AFD alone, wherever possible, AFD ‘0000’ should be accompanied by Bar Data to define the exact vertical or horizontal extent of the active image.
- AFD 0 is reserved for DVB/ETSI
- values 1, 5, 6, 7, and 12 are reserved for both ATSC and DVB/ETSI
- values 2 and 3 are not recommended for ATSC, but are valid for DVB/ETSI
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Unavailable (see note 0 below).
_169TopAligned
For 4:3 coded frame, letterbox 16:9 image, at top of the coded frame. For 16:9 coded frame, full frame 16:9 image, the same as the coded frame.
_149TopAligned
For 4:3 coded frame, letterbox 14:9 image, at top of the coded frame. For 16:9 coded frame, pillarbox 14:9 image, horizontally centered in the coded frame.
GreaterThan169
For 4:3 coded frame, letterbox image with an aspect ratio greater than 16:9, vertically centered in the coded frame. For 16:9 coded frame, letterbox image with an aspect ratio greater than 16:9.
_43Full169Full
For 4:3 coded frame, full frame 4:3 image, the same as the coded frame. For 16:9 coded frame, full frame 16:9 image, the same as the coded frame.
_43Full43Pillar
For 4:3 coded frame, full frame 4:3 image, the same as the coded frame. For 16:9 coded frame, pillarbox 4:3 image, horizontally centered in the coded frame.
_169Letter169Full
For 4:3 coded frame, letterbox 16:9 image, vertically centered in the coded frame with all image areas protected. For 16:9 coded frame, full frame 16:9 image, with all image areas protected.
_149Letter149Pillar
For 4:3 coded frame, letterbox 14:9 image, vertically centered in the coded frame. For 16:9 coded frame, pillarbox 14:9 image, horizontally centered in the coded frame.
_43Full149Center
For 4:3 coded frame, full frame 4:3 image, with alternative 14:9 center. For 16:9 coded frame, pillarbox 4:3 image, with alternative 14:9 center.
_169Letter149Center
For 4:3 coded frame, letterbox 16:9 image, with alternative 14:9 center. For 16:9 coded frame, full frame 16:9 image, with alternative 14:9 center.
_169Letter43Center
For 4:3 coded frame, letterbox 16:9 image, with alternative 4:3 center. For 16:9 coded frame, full frame 16:9 image, with alternative 4:3 center.
Trait Implementations§
source§impl Clone for VideoAFDValue
impl Clone for VideoAFDValue
source§fn clone(&self) -> VideoAFDValue
fn clone(&self) -> VideoAFDValue
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for VideoAFDValue
impl Debug for VideoAFDValue
source§impl From<VideoAFDValue> for Value
impl From<VideoAFDValue> for Value
source§fn from(v: VideoAFDValue) -> Self
fn from(v: VideoAFDValue) -> Self
source§impl<'a> FromValue<'a> for VideoAFDValue
impl<'a> FromValue<'a> for VideoAFDValue
§type Checker = GenericValueTypeChecker<VideoAFDValue>
type Checker = GenericValueTypeChecker<VideoAFDValue>
source§unsafe fn from_value(value: &'a Value) -> Self
unsafe fn from_value(value: &'a Value) -> Self
Value
. Read moresource§impl HasParamSpec for VideoAFDValue
impl HasParamSpec for VideoAFDValue
type ParamSpec = ParamSpecEnum
§type SetValue = VideoAFDValue
type SetValue = VideoAFDValue
type BuilderFn = fn(_: &str, _: VideoAFDValue) -> ParamSpecEnumBuilder<'_, VideoAFDValue>
fn param_spec_builder() -> Self::BuilderFn
source§impl Hash for VideoAFDValue
impl Hash for VideoAFDValue
source§impl Ord for VideoAFDValue
impl Ord for VideoAFDValue
source§fn cmp(&self, other: &VideoAFDValue) -> Ordering
fn cmp(&self, other: &VideoAFDValue) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
source§impl PartialEq for VideoAFDValue
impl PartialEq for VideoAFDValue
source§impl PartialOrd for VideoAFDValue
impl PartialOrd for VideoAFDValue
source§impl StaticType for VideoAFDValue
impl StaticType for VideoAFDValue
source§fn static_type() -> Type
fn static_type() -> Type
Self
.source§impl ToValue for VideoAFDValue
impl ToValue for VideoAFDValue
source§impl ValueType for VideoAFDValue
impl ValueType for VideoAFDValue
§type Type = VideoAFDValue
type Type = VideoAFDValue
Type
from. Read moreimpl Copy for VideoAFDValue
impl Eq for VideoAFDValue
impl StructuralPartialEq for VideoAFDValue
Auto Trait Implementations§
impl Freeze for VideoAFDValue
impl RefUnwindSafe for VideoAFDValue
impl Send for VideoAFDValue
impl Sync for VideoAFDValue
impl Unpin for VideoAFDValue
impl UnwindSafe for VideoAFDValue
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)source§impl<T> IntoClosureReturnValue for T
impl<T> IntoClosureReturnValue for T
fn into_closure_return_value(self) -> Option<Value>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§impl<T> PropertyGet for Twhere
T: HasParamSpec,
impl<T> PropertyGet for Twhere
T: HasParamSpec,
source§impl<T> StaticTypeExt for Twhere
T: StaticType,
impl<T> StaticTypeExt for Twhere
T: StaticType,
source§fn ensure_type()
fn ensure_type()
source§impl<T> ToSendValue for T
impl<T> ToSendValue for T
source§fn to_send_value(&self) -> SendValue
fn to_send_value(&self) -> SendValue
SendValue
clone of self
.