Enum gstreamer_video::VideoFormat [−][src]
#[non_exhaustive] pub enum VideoFormat {}Show variants
Unknown, Encoded, I420, Yv12, Yuy2, Uyvy, Ayuv, Rgbx, Bgrx, Xrgb, Xbgr, Rgba, Bgra, Argb, Abgr, Rgb, Bgr, Y41b, Y42b, Yvyu, Y444, V210, V216, Nv12, Nv21, Gray8, Gray16Be, Gray16Le, V308, Rgb16, Bgr16, Rgb15, Bgr15, Uyvp, A420, Rgb8p, Yuv9, Yvu9, Iyu1, Argb64, Ayuv64, R210, I42010be, I42010le, I42210be, I42210le, Y44410be, Y44410le, Gbr, Gbr10be, Gbr10le, Nv16, Nv24, Nv1264z32, A42010be, A42010le, A42210be, A42210le, A44410be, A44410le, Nv61, P01010be, P01010le, Iyu2, Vyuy, Gbra, Gbra10be, Gbra10le, Gbr12be, Gbr12le, Gbra12be, Gbra12le, I42012be, I42012le, I42212be, I42212le, Y44412be, Y44412le, Gray10Le32, Nv1210le32, Nv1610le32, Nv1210le40, Y210, Y410, Vuya, Bgr10a2Le, Rgb10a2Le, Y44416be, Y44416le, P016Be, P016Le, P012Be, P012Le, Y212Be, Y212Le, Y412Be, Y412Le, Nv124l4, Nv1232l32, Rgbp, Bgrp, Av12, // some variants omitted
Expand description
Enum value describing the most common video formats.
See the GStreamer raw video format design document for details about the layout and packing of these formats in memory.
Variants (Non-exhaustive)
This enum is marked as non-exhaustive
Unknown or unset video format id
Encoded video format. Only ever use that in caps for special video formats in combination with non-system memory GstCapsFeatures where it does not make sense to specify a real video format.
planar 4:2:0 YUV
planar 4:2:0 YVU (like I420 but UV planes swapped)
packed 4:2:2 YUV (Y0-U0-Y1-V0 Y2-U2-Y3-V2 Y4 …)
packed 4:2:2 YUV (U0-Y0-V0-Y1 U2-Y2-V2-Y3 U4 …)
packed 4:4:4 YUV with alpha channel (A0-Y0-U0-V0 …)
sparse rgb packed into 32 bit, space last
sparse reverse rgb packed into 32 bit, space last
sparse rgb packed into 32 bit, space first
sparse reverse rgb packed into 32 bit, space first
rgb with alpha channel last
reverse rgb with alpha channel last
rgb with alpha channel first
reverse rgb with alpha channel first
RGB packed into 24 bits without padding (R-G-B-R-G-B
)
reverse RGB packed into 24 bits without padding (B-G-R-B-G-R
)
planar 4:1:1 YUV
planar 4:2:2 YUV
packed 4:2:2 YUV (Y0-V0-Y1-U0 Y2-V2-Y3-U2 Y4 …)
planar 4:4:4 YUV
packed 4:2:2 10-bit YUV, complex format
packed 4:2:2 16-bit YUV, Y0-U0-Y1-V1 order
planar 4:2:0 YUV with interleaved UV plane
planar 4:2:0 YUV with interleaved VU plane
8-bit grayscale
16-bit grayscale, most significant byte first
16-bit grayscale, least significant byte first
packed 4:4:4 YUV (Y-U-V …)
rgb 5-6-5 bits per component
reverse rgb 5-6-5 bits per component
rgb 5-5-5 bits per component
reverse rgb 5-5-5 bits per component
packed 10-bit 4:2:2 YUV (U0-Y0-V0-Y1 U2-Y2-V2-Y3 U4 …)
planar 4:4:2:0 AYUV
8-bit paletted RGB
planar 4:1:0 YUV
planar 4:1:0 YUV (like YUV9 but UV planes swapped)
packed 4:1:1 YUV (Cb-Y0-Y1-Cr-Y2-Y3 …)
rgb with alpha channel first, 16 bits per channel
packed 4:4:4 YUV with alpha channel, 16 bits per channel (A0-Y0-U0-V0 …)
packed 4:4:4 RGB, 10 bits per channel
planar 4:2:0 YUV, 10 bits per channel
planar 4:2:0 YUV, 10 bits per channel
planar 4:2:2 YUV, 10 bits per channel
planar 4:2:2 YUV, 10 bits per channel
planar 4:4:4 YUV, 10 bits per channel (Since: 1.2)
planar 4:4:4 YUV, 10 bits per channel (Since: 1.2)
planar 4:4:4 RGB, 8 bits per channel (Since: 1.2)
planar 4:4:4 RGB, 10 bits per channel (Since: 1.2)
planar 4:4:4 RGB, 10 bits per channel (Since: 1.2)
planar 4:2:2 YUV with interleaved UV plane (Since: 1.2)
planar 4:4:4 YUV with interleaved UV plane (Since: 1.2)
NV12 with 64x32 tiling in zigzag pattern (Since: 1.4)
planar 4:4:2:0 YUV, 10 bits per channel (Since: 1.6)
planar 4:4:2:0 YUV, 10 bits per channel (Since: 1.6)
planar 4:4:2:2 YUV, 10 bits per channel (Since: 1.6)
planar 4:4:2:2 YUV, 10 bits per channel (Since: 1.6)
planar 4:4:4:4 YUV, 10 bits per channel (Since: 1.6)
planar 4:4:4:4 YUV, 10 bits per channel (Since: 1.6)
planar 4:2:2 YUV with interleaved VU plane (Since: 1.6)
v1_10
only.planar 4:2:0 YUV with interleaved UV plane, 10 bits per channel (Since: 1.10)
v1_10
only.planar 4:2:0 YUV with interleaved UV plane, 10 bits per channel (Since: 1.10)
v1_10
only.packed 4:4:4 YUV (U-Y-V …) (Since: 1.10)
v1_12
only.packed 4:2:2 YUV (V0-Y0-U0-Y1 V2-Y2-U2-Y3 V4 …)
v1_12
only.planar 4:4:4:4 ARGB, 8 bits per channel (Since: 1.12)
v1_12
only.planar 4:4:4:4 ARGB, 10 bits per channel (Since: 1.12)
v1_12
only.planar 4:4:4:4 ARGB, 10 bits per channel (Since: 1.12)
v1_12
only.planar 4:4:4 RGB, 12 bits per channel (Since: 1.12)
v1_12
only.planar 4:4:4 RGB, 12 bits per channel (Since: 1.12)
v1_12
only.planar 4:4:4:4 ARGB, 12 bits per channel (Since: 1.12)
v1_12
only.planar 4:4:4:4 ARGB, 12 bits per channel (Since: 1.12)
v1_12
only.planar 4:2:0 YUV, 12 bits per channel (Since: 1.12)
v1_12
only.planar 4:2:0 YUV, 12 bits per channel (Since: 1.12)
v1_12
only.planar 4:2:2 YUV, 12 bits per channel (Since: 1.12)
v1_12
only.planar 4:2:2 YUV, 12 bits per channel (Since: 1.12)
v1_12
only.planar 4:4:4 YUV, 12 bits per channel (Since: 1.12)
v1_12
only.planar 4:4:4 YUV, 12 bits per channel (Since: 1.12)
v1_14
only.10-bit grayscale, packed into 32bit words (2 bits padding) (Since: 1.14)
v1_14
only.10-bit variant of Nv12
, packed into 32bit words (MSB 2 bits padding) (Since: 1.14)
v1_14
only.10-bit variant of Nv16
, packed into 32bit words (MSB 2 bits padding) (Since: 1.14)
v1_16
only.Fully packed variant of NV12_10LE32 (Since: 1.16)
v1_16
only.packed 4:2:2 YUV, 10 bits per channel (Since: 1.16)
v1_16
only.packed 4:4:4 YUV, 10 bits per channel(A-V-Y-U…) (Since: 1.16)
v1_16
only.packed 4:4:4 YUV with alpha channel (V0-U0-Y0-A0…) (Since: 1.16)
v1_16
only.packed 4:4:4 RGB with alpha channel(B-G-R-A), 10 bits for R/G/B channel and MSB 2 bits for alpha channel (Since: 1.16)
v1_18
only.packed 4:4:4 RGB with alpha channel(R-G-B-A), 10 bits for R/G/B channel and MSB 2 bits for alpha channel (Since: 1.18)
v1_18
only.planar 4:4:4 YUV, 16 bits per channel (Since: 1.18)
v1_18
only.planar 4:4:4 YUV, 16 bits per channel (Since: 1.18)
v1_18
only.planar 4:2:0 YUV with interleaved UV plane, 16 bits per channel (Since: 1.18)
v1_18
only.planar 4:2:0 YUV with interleaved UV plane, 16 bits per channel (Since: 1.18)
v1_18
only.planar 4:2:0 YUV with interleaved UV plane, 12 bits per channel (Since: 1.18)
v1_18
only.planar 4:2:0 YUV with interleaved UV plane, 12 bits per channel (Since: 1.18)
v1_18
only.packed 4:2:2 YUV, 12 bits per channel (Y-U-Y-V) (Since: 1.18)
v1_18
only.packed 4:2:2 YUV, 12 bits per channel (Y-U-Y-V) (Since: 1.18)
v1_18
only.packed 4:4:4:4 YUV, 12 bits per channel(U-Y-V-A…) (Since: 1.18)
v1_18
only.packed 4:4:4:4 YUV, 12 bits per channel(U-Y-V-A…) (Since: 1.18)
v1_18
only.NV12 with 4x4 tiles in linear order.
v1_18
only.NV12 with 32x32 tiles in linear order.
v1_20
only.Planar 4:4:4 RGB, R-G-B order
v1_20
only.Planar 4:4:4 RGB, B-G-R order
v1_20
only.Planar 4:2:0 YUV with interleaved UV plane with alpha as 3rd plane.
Implementations
pub fn from_masks(
depth: u32,
bpp: u32,
endianness: VideoEndianness,
red_mask: u32,
blue_mask: u32,
green_mask: u32,
alpha_mask: u32
) -> Self
[src]pub fn iter_raw() -> VideoFormatIteratorⓘNotable traits for VideoFormatIterator
impl Iterator for VideoFormatIterator type Item = VideoFormat;
[src]Trait Implementations
Performs the conversion.
type Checker = GenericValueTypeChecker<Self>
type Checker = GenericValueTypeChecker<Self>
Value type checker.
Get the contained value from a Value
. Read more
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
This method returns an ordering between self
and other
values if one exists. Read more
This method tests less than (for self
and other
) and is used by the <
operator. Read more
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
Returns the type identifier of Self
.
Auto Trait Implementations
impl RefUnwindSafe for VideoFormat
impl Send for VideoFormat
impl Sync for VideoFormat
impl Unpin for VideoFormat
impl UnwindSafe for VideoFormat
Blanket Implementations
Mutably borrows from an owned value. Read more
Returns a SendValue
clone of self
.