[][src]Enum gstreamer_video::VideoMultiviewFramePacking

#[non_exhaustive]pub enum VideoMultiviewFramePacking {
    None,
    Mono,
    Left,
    Right,
    SideBySide,
    SideBySideQuincunx,
    ColumnInterleaved,
    RowInterleaved,
    TopBottom,
    Checkerboard,
    // some variants omitted
}

VideoMultiviewFramePacking represents the subset of VideoMultiviewMode values that can be applied to any video frame without needing extra metadata. It can be used by elements that provide a property to override the multiview interpretation of a video stream when the video doesn't contain any markers.

This enum is used (for example) on playbin, to re-interpret a played video stream as a stereoscopic video. The individual enum values are equivalent to and have the same value as the matching VideoMultiviewMode.

Variants (Non-exhaustive)

Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
None

A special value indicating no frame packing info.

Mono

All frames are monoscopic.

Left

All frames represent a left-eye view.

Right

All frames represent a right-eye view.

SideBySide

Left and right eye views are provided in the left and right half of the frame respectively.

SideBySideQuincunx

Left and right eye views are provided in the left and right half of the frame, but have been sampled using quincunx method, with half-pixel offset between the 2 views.

ColumnInterleaved

Alternating vertical columns of pixels represent the left and right eye view respectively.

RowInterleaved

Alternating horizontal rows of pixels represent the left and right eye view respectively.

TopBottom

The top half of the frame contains the left eye, and the bottom half the right eye.

Checkerboard

Pixels are arranged with alternating pixels representing left and right eye views in a checkerboard fashion.

Trait Implementations

impl Clone for VideoMultiviewFramePacking[src]

impl Copy for VideoMultiviewFramePacking[src]

impl Debug for VideoMultiviewFramePacking[src]

impl Eq for VideoMultiviewFramePacking[src]

impl From<VideoMultiviewFramePacking> for VideoMultiviewMode[src]

impl<'a> FromValue<'a> for VideoMultiviewFramePacking[src]

impl<'a> FromValueOptional<'a> for VideoMultiviewFramePacking[src]

impl Hash for VideoMultiviewFramePacking[src]

impl Ord for VideoMultiviewFramePacking[src]

impl PartialEq<VideoMultiviewFramePacking> for VideoMultiviewFramePacking[src]

impl PartialOrd<VideoMultiviewFramePacking> for VideoMultiviewFramePacking[src]

impl SetValue for VideoMultiviewFramePacking[src]

impl StaticType for VideoMultiviewFramePacking[src]

impl StructuralEq for VideoMultiviewFramePacking[src]

impl StructuralPartialEq for VideoMultiviewFramePacking[src]

impl TryFrom<VideoMultiviewMode> for VideoMultiviewFramePacking[src]

type Error = BoolError

The type returned in the event of a conversion error.

Auto Trait Implementations

impl RefUnwindSafe for VideoMultiviewFramePacking

impl Send for VideoMultiviewFramePacking

impl Sync for VideoMultiviewFramePacking

impl Unpin for VideoMultiviewFramePacking

impl UnwindSafe for VideoMultiviewFramePacking

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> ToSendValue for T where
    T: ToValue + SetValue + Send + ?Sized
[src]

impl<T> ToValue for T where
    T: SetValue + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.