mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer-rs.git
synced 2024-09-26 22:10:21 +00:00
2447 lines
90 KiB
Rust
2447 lines
90 KiB
Rust
// This file was generated by gir (https://github.com/gtk-rs/gir)
|
|
// from gir-files (https://github.com/gtk-rs/gir-files)
|
|
// from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git)
|
|
// DO NOT EDIT
|
|
|
|
use glib::translate::*;
|
|
use glib::value::FromValue;
|
|
use glib::value::FromValueOptional;
|
|
use glib::value::SetValue;
|
|
use glib::StaticType;
|
|
use glib::Type;
|
|
use std::ffi::CStr;
|
|
use std::fmt;
|
|
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
|
|
#[non_exhaustive]
|
|
#[doc(alias = "GstVideoAFDSpec")]
|
|
pub enum VideoAFDSpec {
|
|
#[doc(alias = "GST_VIDEO_AFD_SPEC_DVB_ETSI")]
|
|
DvbEtsi,
|
|
#[doc(alias = "GST_VIDEO_AFD_SPEC_ATSC_A53")]
|
|
AtscA53,
|
|
#[doc(alias = "GST_VIDEO_AFD_SPEC_SMPTE_ST2016_1")]
|
|
SmpteSt20161,
|
|
#[doc(hidden)]
|
|
__Unknown(i32),
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(hidden)]
|
|
impl ToGlib for VideoAFDSpec {
|
|
type GlibType = ffi::GstVideoAFDSpec;
|
|
|
|
fn to_glib(&self) -> ffi::GstVideoAFDSpec {
|
|
match *self {
|
|
VideoAFDSpec::DvbEtsi => ffi::GST_VIDEO_AFD_SPEC_DVB_ETSI,
|
|
VideoAFDSpec::AtscA53 => ffi::GST_VIDEO_AFD_SPEC_ATSC_A53,
|
|
VideoAFDSpec::SmpteSt20161 => ffi::GST_VIDEO_AFD_SPEC_SMPTE_ST2016_1,
|
|
VideoAFDSpec::__Unknown(value) => value,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(hidden)]
|
|
impl FromGlib<ffi::GstVideoAFDSpec> for VideoAFDSpec {
|
|
unsafe fn from_glib(value: ffi::GstVideoAFDSpec) -> Self {
|
|
skip_assert_initialized!();
|
|
match value {
|
|
0 => VideoAFDSpec::DvbEtsi,
|
|
1 => VideoAFDSpec::AtscA53,
|
|
2 => VideoAFDSpec::SmpteSt20161,
|
|
value => VideoAFDSpec::__Unknown(value),
|
|
}
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
impl StaticType for VideoAFDSpec {
|
|
fn static_type() -> Type {
|
|
unsafe { from_glib(ffi::gst_video_afd_spec_get_type()) }
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
impl<'a> FromValueOptional<'a> for VideoAFDSpec {
|
|
unsafe fn from_value_optional(value: &glib::Value) -> Option<Self> {
|
|
Some(FromValue::from_value(value))
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
impl<'a> FromValue<'a> for VideoAFDSpec {
|
|
unsafe fn from_value(value: &glib::Value) -> Self {
|
|
from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
impl SetValue for VideoAFDSpec {
|
|
unsafe fn set_value(value: &mut glib::Value, this: &Self) {
|
|
glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, this.to_glib())
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
|
|
#[non_exhaustive]
|
|
#[doc(alias = "GstVideoAFDValue")]
|
|
pub enum VideoAFDValue {
|
|
#[doc(alias = "GST_VIDEO_AFD_UNAVAILABLE")]
|
|
Unavailable,
|
|
#[doc(alias = "GST_VIDEO_AFD_16_9_TOP_ALIGNED")]
|
|
_169TopAligned,
|
|
#[doc(alias = "GST_VIDEO_AFD_14_9_TOP_ALIGNED")]
|
|
_149TopAligned,
|
|
#[doc(alias = "GST_VIDEO_AFD_GREATER_THAN_16_9")]
|
|
GreaterThan169,
|
|
#[doc(alias = "GST_VIDEO_AFD_4_3_FULL_16_9_FULL")]
|
|
_43Full169Full,
|
|
#[doc(alias = "GST_VIDEO_AFD_4_3_FULL_4_3_PILLAR")]
|
|
_43Full43Pillar,
|
|
#[doc(alias = "GST_VIDEO_AFD_16_9_LETTER_16_9_FULL")]
|
|
_169Letter169Full,
|
|
#[doc(alias = "GST_VIDEO_AFD_14_9_LETTER_14_9_PILLAR")]
|
|
_149Letter149Pillar,
|
|
#[doc(alias = "GST_VIDEO_AFD_4_3_FULL_14_9_CENTER")]
|
|
_43Full149Center,
|
|
#[doc(alias = "GST_VIDEO_AFD_16_9_LETTER_14_9_CENTER")]
|
|
_169Letter149Center,
|
|
#[doc(alias = "GST_VIDEO_AFD_16_9_LETTER_4_3_CENTER")]
|
|
_169Letter43Center,
|
|
#[doc(hidden)]
|
|
__Unknown(i32),
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(hidden)]
|
|
impl ToGlib for VideoAFDValue {
|
|
type GlibType = ffi::GstVideoAFDValue;
|
|
|
|
fn to_glib(&self) -> ffi::GstVideoAFDValue {
|
|
match *self {
|
|
VideoAFDValue::Unavailable => ffi::GST_VIDEO_AFD_UNAVAILABLE,
|
|
VideoAFDValue::_169TopAligned => ffi::GST_VIDEO_AFD_16_9_TOP_ALIGNED,
|
|
VideoAFDValue::_149TopAligned => ffi::GST_VIDEO_AFD_14_9_TOP_ALIGNED,
|
|
VideoAFDValue::GreaterThan169 => ffi::GST_VIDEO_AFD_GREATER_THAN_16_9,
|
|
VideoAFDValue::_43Full169Full => ffi::GST_VIDEO_AFD_4_3_FULL_16_9_FULL,
|
|
VideoAFDValue::_43Full43Pillar => ffi::GST_VIDEO_AFD_4_3_FULL_4_3_PILLAR,
|
|
VideoAFDValue::_169Letter169Full => ffi::GST_VIDEO_AFD_16_9_LETTER_16_9_FULL,
|
|
VideoAFDValue::_149Letter149Pillar => ffi::GST_VIDEO_AFD_14_9_LETTER_14_9_PILLAR,
|
|
VideoAFDValue::_43Full149Center => ffi::GST_VIDEO_AFD_4_3_FULL_14_9_CENTER,
|
|
VideoAFDValue::_169Letter149Center => ffi::GST_VIDEO_AFD_16_9_LETTER_14_9_CENTER,
|
|
VideoAFDValue::_169Letter43Center => ffi::GST_VIDEO_AFD_16_9_LETTER_4_3_CENTER,
|
|
VideoAFDValue::__Unknown(value) => value,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(hidden)]
|
|
impl FromGlib<ffi::GstVideoAFDValue> for VideoAFDValue {
|
|
unsafe fn from_glib(value: ffi::GstVideoAFDValue) -> Self {
|
|
skip_assert_initialized!();
|
|
match value {
|
|
0 => VideoAFDValue::Unavailable,
|
|
2 => VideoAFDValue::_169TopAligned,
|
|
3 => VideoAFDValue::_149TopAligned,
|
|
4 => VideoAFDValue::GreaterThan169,
|
|
8 => VideoAFDValue::_43Full169Full,
|
|
9 => VideoAFDValue::_43Full43Pillar,
|
|
10 => VideoAFDValue::_169Letter169Full,
|
|
11 => VideoAFDValue::_149Letter149Pillar,
|
|
13 => VideoAFDValue::_43Full149Center,
|
|
14 => VideoAFDValue::_169Letter149Center,
|
|
15 => VideoAFDValue::_169Letter43Center,
|
|
value => VideoAFDValue::__Unknown(value),
|
|
}
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
impl StaticType for VideoAFDValue {
|
|
fn static_type() -> Type {
|
|
unsafe { from_glib(ffi::gst_video_afd_value_get_type()) }
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
impl<'a> FromValueOptional<'a> for VideoAFDValue {
|
|
unsafe fn from_value_optional(value: &glib::Value) -> Option<Self> {
|
|
Some(FromValue::from_value(value))
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
impl<'a> FromValue<'a> for VideoAFDValue {
|
|
unsafe fn from_value(value: &glib::Value) -> Self {
|
|
from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
impl SetValue for VideoAFDValue {
|
|
unsafe fn set_value(value: &mut glib::Value, this: &Self) {
|
|
glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, this.to_glib())
|
|
}
|
|
}
|
|
|
|
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
|
|
#[non_exhaustive]
|
|
#[doc(alias = "GstVideoAlphaMode")]
|
|
pub enum VideoAlphaMode {
|
|
#[doc(alias = "GST_VIDEO_ALPHA_MODE_COPY")]
|
|
Copy,
|
|
#[doc(alias = "GST_VIDEO_ALPHA_MODE_SET")]
|
|
Set,
|
|
#[doc(alias = "GST_VIDEO_ALPHA_MODE_MULT")]
|
|
Mult,
|
|
#[doc(hidden)]
|
|
__Unknown(i32),
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl ToGlib for VideoAlphaMode {
|
|
type GlibType = ffi::GstVideoAlphaMode;
|
|
|
|
fn to_glib(&self) -> ffi::GstVideoAlphaMode {
|
|
match *self {
|
|
VideoAlphaMode::Copy => ffi::GST_VIDEO_ALPHA_MODE_COPY,
|
|
VideoAlphaMode::Set => ffi::GST_VIDEO_ALPHA_MODE_SET,
|
|
VideoAlphaMode::Mult => ffi::GST_VIDEO_ALPHA_MODE_MULT,
|
|
VideoAlphaMode::__Unknown(value) => value,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl FromGlib<ffi::GstVideoAlphaMode> for VideoAlphaMode {
|
|
unsafe fn from_glib(value: ffi::GstVideoAlphaMode) -> Self {
|
|
skip_assert_initialized!();
|
|
match value {
|
|
0 => VideoAlphaMode::Copy,
|
|
1 => VideoAlphaMode::Set,
|
|
2 => VideoAlphaMode::Mult,
|
|
value => VideoAlphaMode::__Unknown(value),
|
|
}
|
|
}
|
|
}
|
|
|
|
impl StaticType for VideoAlphaMode {
|
|
fn static_type() -> Type {
|
|
unsafe { from_glib(ffi::gst_video_alpha_mode_get_type()) }
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValueOptional<'a> for VideoAlphaMode {
|
|
unsafe fn from_value_optional(value: &glib::Value) -> Option<Self> {
|
|
Some(FromValue::from_value(value))
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValue<'a> for VideoAlphaMode {
|
|
unsafe fn from_value(value: &glib::Value) -> Self {
|
|
from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
|
|
}
|
|
}
|
|
|
|
impl SetValue for VideoAlphaMode {
|
|
unsafe fn set_value(value: &mut glib::Value, this: &Self) {
|
|
glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, this.to_glib())
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
|
|
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
|
|
#[non_exhaustive]
|
|
#[doc(alias = "GstVideoCaptionType")]
|
|
pub enum VideoCaptionType {
|
|
#[doc(alias = "GST_VIDEO_CAPTION_TYPE_UNKNOWN")]
|
|
Unknown,
|
|
#[doc(alias = "GST_VIDEO_CAPTION_TYPE_CEA608_RAW")]
|
|
Cea608Raw,
|
|
#[doc(alias = "GST_VIDEO_CAPTION_TYPE_CEA608_S334_1A")]
|
|
Cea608S3341a,
|
|
#[doc(alias = "GST_VIDEO_CAPTION_TYPE_CEA708_RAW")]
|
|
Cea708Raw,
|
|
#[doc(alias = "GST_VIDEO_CAPTION_TYPE_CEA708_CDP")]
|
|
Cea708Cdp,
|
|
#[doc(hidden)]
|
|
__Unknown(i32),
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
|
|
impl VideoCaptionType {
|
|
#[doc(alias = "gst_video_caption_type_from_caps")]
|
|
pub fn from_caps(caps: &gst::Caps) -> VideoCaptionType {
|
|
assert_initialized_main_thread!();
|
|
unsafe { from_glib(ffi::gst_video_caption_type_from_caps(caps.to_glib_none().0)) }
|
|
}
|
|
|
|
#[doc(alias = "gst_video_caption_type_to_caps")]
|
|
pub fn to_caps(self) -> Option<gst::Caps> {
|
|
assert_initialized_main_thread!();
|
|
unsafe { from_glib_full(ffi::gst_video_caption_type_to_caps(self.to_glib())) }
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
|
|
#[doc(hidden)]
|
|
impl ToGlib for VideoCaptionType {
|
|
type GlibType = ffi::GstVideoCaptionType;
|
|
|
|
fn to_glib(&self) -> ffi::GstVideoCaptionType {
|
|
match *self {
|
|
VideoCaptionType::Unknown => ffi::GST_VIDEO_CAPTION_TYPE_UNKNOWN,
|
|
VideoCaptionType::Cea608Raw => ffi::GST_VIDEO_CAPTION_TYPE_CEA608_RAW,
|
|
VideoCaptionType::Cea608S3341a => ffi::GST_VIDEO_CAPTION_TYPE_CEA608_S334_1A,
|
|
VideoCaptionType::Cea708Raw => ffi::GST_VIDEO_CAPTION_TYPE_CEA708_RAW,
|
|
VideoCaptionType::Cea708Cdp => ffi::GST_VIDEO_CAPTION_TYPE_CEA708_CDP,
|
|
VideoCaptionType::__Unknown(value) => value,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
|
|
#[doc(hidden)]
|
|
impl FromGlib<ffi::GstVideoCaptionType> for VideoCaptionType {
|
|
unsafe fn from_glib(value: ffi::GstVideoCaptionType) -> Self {
|
|
skip_assert_initialized!();
|
|
match value {
|
|
0 => VideoCaptionType::Unknown,
|
|
1 => VideoCaptionType::Cea608Raw,
|
|
2 => VideoCaptionType::Cea608S3341a,
|
|
3 => VideoCaptionType::Cea708Raw,
|
|
4 => VideoCaptionType::Cea708Cdp,
|
|
value => VideoCaptionType::__Unknown(value),
|
|
}
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
|
|
impl StaticType for VideoCaptionType {
|
|
fn static_type() -> Type {
|
|
unsafe { from_glib(ffi::gst_video_caption_type_get_type()) }
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
|
|
impl<'a> FromValueOptional<'a> for VideoCaptionType {
|
|
unsafe fn from_value_optional(value: &glib::Value) -> Option<Self> {
|
|
Some(FromValue::from_value(value))
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
|
|
impl<'a> FromValue<'a> for VideoCaptionType {
|
|
unsafe fn from_value(value: &glib::Value) -> Self {
|
|
from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
|
|
impl SetValue for VideoCaptionType {
|
|
unsafe fn set_value(value: &mut glib::Value, this: &Self) {
|
|
glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, this.to_glib())
|
|
}
|
|
}
|
|
|
|
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
|
|
#[non_exhaustive]
|
|
#[doc(alias = "GstVideoChromaMode")]
|
|
pub enum VideoChromaMode {
|
|
#[doc(alias = "GST_VIDEO_CHROMA_MODE_FULL")]
|
|
Full,
|
|
#[doc(alias = "GST_VIDEO_CHROMA_MODE_UPSAMPLE_ONLY")]
|
|
UpsampleOnly,
|
|
#[doc(alias = "GST_VIDEO_CHROMA_MODE_DOWNSAMPLE_ONLY")]
|
|
DownsampleOnly,
|
|
#[doc(alias = "GST_VIDEO_CHROMA_MODE_NONE")]
|
|
None,
|
|
#[doc(hidden)]
|
|
__Unknown(i32),
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl ToGlib for VideoChromaMode {
|
|
type GlibType = ffi::GstVideoChromaMode;
|
|
|
|
fn to_glib(&self) -> ffi::GstVideoChromaMode {
|
|
match *self {
|
|
VideoChromaMode::Full => ffi::GST_VIDEO_CHROMA_MODE_FULL,
|
|
VideoChromaMode::UpsampleOnly => ffi::GST_VIDEO_CHROMA_MODE_UPSAMPLE_ONLY,
|
|
VideoChromaMode::DownsampleOnly => ffi::GST_VIDEO_CHROMA_MODE_DOWNSAMPLE_ONLY,
|
|
VideoChromaMode::None => ffi::GST_VIDEO_CHROMA_MODE_NONE,
|
|
VideoChromaMode::__Unknown(value) => value,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl FromGlib<ffi::GstVideoChromaMode> for VideoChromaMode {
|
|
unsafe fn from_glib(value: ffi::GstVideoChromaMode) -> Self {
|
|
skip_assert_initialized!();
|
|
match value {
|
|
0 => VideoChromaMode::Full,
|
|
1 => VideoChromaMode::UpsampleOnly,
|
|
2 => VideoChromaMode::DownsampleOnly,
|
|
3 => VideoChromaMode::None,
|
|
value => VideoChromaMode::__Unknown(value),
|
|
}
|
|
}
|
|
}
|
|
|
|
impl StaticType for VideoChromaMode {
|
|
fn static_type() -> Type {
|
|
unsafe { from_glib(ffi::gst_video_chroma_mode_get_type()) }
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValueOptional<'a> for VideoChromaMode {
|
|
unsafe fn from_value_optional(value: &glib::Value) -> Option<Self> {
|
|
Some(FromValue::from_value(value))
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValue<'a> for VideoChromaMode {
|
|
unsafe fn from_value(value: &glib::Value) -> Self {
|
|
from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
|
|
}
|
|
}
|
|
|
|
impl SetValue for VideoChromaMode {
|
|
unsafe fn set_value(value: &mut glib::Value, this: &Self) {
|
|
glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, this.to_glib())
|
|
}
|
|
}
|
|
|
|
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
|
|
#[non_exhaustive]
|
|
#[doc(alias = "GstVideoColorMatrix")]
|
|
pub enum VideoColorMatrix {
|
|
#[doc(alias = "GST_VIDEO_COLOR_MATRIX_UNKNOWN")]
|
|
Unknown,
|
|
#[doc(alias = "GST_VIDEO_COLOR_MATRIX_RGB")]
|
|
Rgb,
|
|
#[doc(alias = "GST_VIDEO_COLOR_MATRIX_FCC")]
|
|
Fcc,
|
|
#[doc(alias = "GST_VIDEO_COLOR_MATRIX_BT709")]
|
|
Bt709,
|
|
#[doc(alias = "GST_VIDEO_COLOR_MATRIX_BT601")]
|
|
Bt601,
|
|
#[doc(alias = "GST_VIDEO_COLOR_MATRIX_SMPTE240M")]
|
|
Smpte240m,
|
|
#[doc(alias = "GST_VIDEO_COLOR_MATRIX_BT2020")]
|
|
Bt2020,
|
|
#[doc(hidden)]
|
|
__Unknown(i32),
|
|
}
|
|
|
|
impl VideoColorMatrix {
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "gst_video_color_matrix_from_iso")]
|
|
pub fn from_iso(value: u32) -> VideoColorMatrix {
|
|
assert_initialized_main_thread!();
|
|
unsafe { from_glib(ffi::gst_video_color_matrix_from_iso(value)) }
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "gst_video_color_matrix_to_iso")]
|
|
pub fn to_iso(self) -> u32 {
|
|
assert_initialized_main_thread!();
|
|
unsafe { ffi::gst_video_color_matrix_to_iso(self.to_glib()) }
|
|
}
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl ToGlib for VideoColorMatrix {
|
|
type GlibType = ffi::GstVideoColorMatrix;
|
|
|
|
fn to_glib(&self) -> ffi::GstVideoColorMatrix {
|
|
match *self {
|
|
VideoColorMatrix::Unknown => ffi::GST_VIDEO_COLOR_MATRIX_UNKNOWN,
|
|
VideoColorMatrix::Rgb => ffi::GST_VIDEO_COLOR_MATRIX_RGB,
|
|
VideoColorMatrix::Fcc => ffi::GST_VIDEO_COLOR_MATRIX_FCC,
|
|
VideoColorMatrix::Bt709 => ffi::GST_VIDEO_COLOR_MATRIX_BT709,
|
|
VideoColorMatrix::Bt601 => ffi::GST_VIDEO_COLOR_MATRIX_BT601,
|
|
VideoColorMatrix::Smpte240m => ffi::GST_VIDEO_COLOR_MATRIX_SMPTE240M,
|
|
VideoColorMatrix::Bt2020 => ffi::GST_VIDEO_COLOR_MATRIX_BT2020,
|
|
VideoColorMatrix::__Unknown(value) => value,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl FromGlib<ffi::GstVideoColorMatrix> for VideoColorMatrix {
|
|
unsafe fn from_glib(value: ffi::GstVideoColorMatrix) -> Self {
|
|
skip_assert_initialized!();
|
|
match value {
|
|
0 => VideoColorMatrix::Unknown,
|
|
1 => VideoColorMatrix::Rgb,
|
|
2 => VideoColorMatrix::Fcc,
|
|
3 => VideoColorMatrix::Bt709,
|
|
4 => VideoColorMatrix::Bt601,
|
|
5 => VideoColorMatrix::Smpte240m,
|
|
6 => VideoColorMatrix::Bt2020,
|
|
value => VideoColorMatrix::__Unknown(value),
|
|
}
|
|
}
|
|
}
|
|
|
|
impl StaticType for VideoColorMatrix {
|
|
fn static_type() -> Type {
|
|
unsafe { from_glib(ffi::gst_video_color_matrix_get_type()) }
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValueOptional<'a> for VideoColorMatrix {
|
|
unsafe fn from_value_optional(value: &glib::Value) -> Option<Self> {
|
|
Some(FromValue::from_value(value))
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValue<'a> for VideoColorMatrix {
|
|
unsafe fn from_value(value: &glib::Value) -> Self {
|
|
from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
|
|
}
|
|
}
|
|
|
|
impl SetValue for VideoColorMatrix {
|
|
unsafe fn set_value(value: &mut glib::Value, this: &Self) {
|
|
glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, this.to_glib())
|
|
}
|
|
}
|
|
|
|
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
|
|
#[non_exhaustive]
|
|
#[doc(alias = "GstVideoColorPrimaries")]
|
|
pub enum VideoColorPrimaries {
|
|
#[doc(alias = "GST_VIDEO_COLOR_PRIMARIES_UNKNOWN")]
|
|
Unknown,
|
|
#[doc(alias = "GST_VIDEO_COLOR_PRIMARIES_BT709")]
|
|
Bt709,
|
|
#[doc(alias = "GST_VIDEO_COLOR_PRIMARIES_BT470M")]
|
|
Bt470m,
|
|
#[doc(alias = "GST_VIDEO_COLOR_PRIMARIES_BT470BG")]
|
|
Bt470bg,
|
|
#[doc(alias = "GST_VIDEO_COLOR_PRIMARIES_SMPTE170M")]
|
|
Smpte170m,
|
|
#[doc(alias = "GST_VIDEO_COLOR_PRIMARIES_SMPTE240M")]
|
|
Smpte240m,
|
|
#[doc(alias = "GST_VIDEO_COLOR_PRIMARIES_FILM")]
|
|
Film,
|
|
#[doc(alias = "GST_VIDEO_COLOR_PRIMARIES_BT2020")]
|
|
Bt2020,
|
|
#[doc(alias = "GST_VIDEO_COLOR_PRIMARIES_ADOBERGB")]
|
|
Adobergb,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
|
|
#[doc(alias = "GST_VIDEO_COLOR_PRIMARIES_SMPTEST428")]
|
|
Smptest428,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
|
|
#[doc(alias = "GST_VIDEO_COLOR_PRIMARIES_SMPTERP431")]
|
|
Smpterp431,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
|
|
#[doc(alias = "GST_VIDEO_COLOR_PRIMARIES_SMPTEEG432")]
|
|
Smpteeg432,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
|
|
#[doc(alias = "GST_VIDEO_COLOR_PRIMARIES_EBU3213")]
|
|
Ebu3213,
|
|
#[doc(hidden)]
|
|
__Unknown(i32),
|
|
}
|
|
|
|
impl VideoColorPrimaries {
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "gst_video_color_primaries_from_iso")]
|
|
pub fn from_iso(value: u32) -> VideoColorPrimaries {
|
|
assert_initialized_main_thread!();
|
|
unsafe { from_glib(ffi::gst_video_color_primaries_from_iso(value)) }
|
|
}
|
|
|
|
//#[doc(alias = "gst_video_color_primaries_get_info")]
|
|
//pub fn info(self) -> /*Ignored*/Option<VideoColorPrimariesInfo> {
|
|
// unsafe { TODO: call ffi:gst_video_color_primaries_get_info() }
|
|
//}
|
|
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "gst_video_color_primaries_to_iso")]
|
|
pub fn to_iso(self) -> u32 {
|
|
assert_initialized_main_thread!();
|
|
unsafe { ffi::gst_video_color_primaries_to_iso(self.to_glib()) }
|
|
}
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl ToGlib for VideoColorPrimaries {
|
|
type GlibType = ffi::GstVideoColorPrimaries;
|
|
|
|
fn to_glib(&self) -> ffi::GstVideoColorPrimaries {
|
|
match *self {
|
|
VideoColorPrimaries::Unknown => ffi::GST_VIDEO_COLOR_PRIMARIES_UNKNOWN,
|
|
VideoColorPrimaries::Bt709 => ffi::GST_VIDEO_COLOR_PRIMARIES_BT709,
|
|
VideoColorPrimaries::Bt470m => ffi::GST_VIDEO_COLOR_PRIMARIES_BT470M,
|
|
VideoColorPrimaries::Bt470bg => ffi::GST_VIDEO_COLOR_PRIMARIES_BT470BG,
|
|
VideoColorPrimaries::Smpte170m => ffi::GST_VIDEO_COLOR_PRIMARIES_SMPTE170M,
|
|
VideoColorPrimaries::Smpte240m => ffi::GST_VIDEO_COLOR_PRIMARIES_SMPTE240M,
|
|
VideoColorPrimaries::Film => ffi::GST_VIDEO_COLOR_PRIMARIES_FILM,
|
|
VideoColorPrimaries::Bt2020 => ffi::GST_VIDEO_COLOR_PRIMARIES_BT2020,
|
|
VideoColorPrimaries::Adobergb => ffi::GST_VIDEO_COLOR_PRIMARIES_ADOBERGB,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
VideoColorPrimaries::Smptest428 => ffi::GST_VIDEO_COLOR_PRIMARIES_SMPTEST428,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
VideoColorPrimaries::Smpterp431 => ffi::GST_VIDEO_COLOR_PRIMARIES_SMPTERP431,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
VideoColorPrimaries::Smpteeg432 => ffi::GST_VIDEO_COLOR_PRIMARIES_SMPTEEG432,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
VideoColorPrimaries::Ebu3213 => ffi::GST_VIDEO_COLOR_PRIMARIES_EBU3213,
|
|
VideoColorPrimaries::__Unknown(value) => value,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl FromGlib<ffi::GstVideoColorPrimaries> for VideoColorPrimaries {
|
|
unsafe fn from_glib(value: ffi::GstVideoColorPrimaries) -> Self {
|
|
skip_assert_initialized!();
|
|
match value {
|
|
0 => VideoColorPrimaries::Unknown,
|
|
1 => VideoColorPrimaries::Bt709,
|
|
2 => VideoColorPrimaries::Bt470m,
|
|
3 => VideoColorPrimaries::Bt470bg,
|
|
4 => VideoColorPrimaries::Smpte170m,
|
|
5 => VideoColorPrimaries::Smpte240m,
|
|
6 => VideoColorPrimaries::Film,
|
|
7 => VideoColorPrimaries::Bt2020,
|
|
8 => VideoColorPrimaries::Adobergb,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
9 => VideoColorPrimaries::Smptest428,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
10 => VideoColorPrimaries::Smpterp431,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
11 => VideoColorPrimaries::Smpteeg432,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
12 => VideoColorPrimaries::Ebu3213,
|
|
value => VideoColorPrimaries::__Unknown(value),
|
|
}
|
|
}
|
|
}
|
|
|
|
impl StaticType for VideoColorPrimaries {
|
|
fn static_type() -> Type {
|
|
unsafe { from_glib(ffi::gst_video_color_primaries_get_type()) }
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValueOptional<'a> for VideoColorPrimaries {
|
|
unsafe fn from_value_optional(value: &glib::Value) -> Option<Self> {
|
|
Some(FromValue::from_value(value))
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValue<'a> for VideoColorPrimaries {
|
|
unsafe fn from_value(value: &glib::Value) -> Self {
|
|
from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
|
|
}
|
|
}
|
|
|
|
impl SetValue for VideoColorPrimaries {
|
|
unsafe fn set_value(value: &mut glib::Value, this: &Self) {
|
|
glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, this.to_glib())
|
|
}
|
|
}
|
|
|
|
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
|
|
#[non_exhaustive]
|
|
#[doc(alias = "GstVideoDitherMethod")]
|
|
pub enum VideoDitherMethod {
|
|
#[doc(alias = "GST_VIDEO_DITHER_NONE")]
|
|
None,
|
|
#[doc(alias = "GST_VIDEO_DITHER_VERTERR")]
|
|
Verterr,
|
|
#[doc(alias = "GST_VIDEO_DITHER_FLOYD_STEINBERG")]
|
|
FloydSteinberg,
|
|
#[doc(alias = "GST_VIDEO_DITHER_SIERRA_LITE")]
|
|
SierraLite,
|
|
#[doc(alias = "GST_VIDEO_DITHER_BAYER")]
|
|
Bayer,
|
|
#[doc(hidden)]
|
|
__Unknown(i32),
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl ToGlib for VideoDitherMethod {
|
|
type GlibType = ffi::GstVideoDitherMethod;
|
|
|
|
fn to_glib(&self) -> ffi::GstVideoDitherMethod {
|
|
match *self {
|
|
VideoDitherMethod::None => ffi::GST_VIDEO_DITHER_NONE,
|
|
VideoDitherMethod::Verterr => ffi::GST_VIDEO_DITHER_VERTERR,
|
|
VideoDitherMethod::FloydSteinberg => ffi::GST_VIDEO_DITHER_FLOYD_STEINBERG,
|
|
VideoDitherMethod::SierraLite => ffi::GST_VIDEO_DITHER_SIERRA_LITE,
|
|
VideoDitherMethod::Bayer => ffi::GST_VIDEO_DITHER_BAYER,
|
|
VideoDitherMethod::__Unknown(value) => value,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl FromGlib<ffi::GstVideoDitherMethod> for VideoDitherMethod {
|
|
unsafe fn from_glib(value: ffi::GstVideoDitherMethod) -> Self {
|
|
skip_assert_initialized!();
|
|
match value {
|
|
0 => VideoDitherMethod::None,
|
|
1 => VideoDitherMethod::Verterr,
|
|
2 => VideoDitherMethod::FloydSteinberg,
|
|
3 => VideoDitherMethod::SierraLite,
|
|
4 => VideoDitherMethod::Bayer,
|
|
value => VideoDitherMethod::__Unknown(value),
|
|
}
|
|
}
|
|
}
|
|
|
|
impl StaticType for VideoDitherMethod {
|
|
fn static_type() -> Type {
|
|
unsafe { from_glib(ffi::gst_video_dither_method_get_type()) }
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValueOptional<'a> for VideoDitherMethod {
|
|
unsafe fn from_value_optional(value: &glib::Value) -> Option<Self> {
|
|
Some(FromValue::from_value(value))
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValue<'a> for VideoDitherMethod {
|
|
unsafe fn from_value(value: &glib::Value) -> Self {
|
|
from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
|
|
}
|
|
}
|
|
|
|
impl SetValue for VideoDitherMethod {
|
|
unsafe fn set_value(value: &mut glib::Value, this: &Self) {
|
|
glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, this.to_glib())
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
|
|
#[non_exhaustive]
|
|
#[doc(alias = "GstVideoFieldOrder")]
|
|
pub enum VideoFieldOrder {
|
|
#[doc(alias = "GST_VIDEO_FIELD_ORDER_UNKNOWN")]
|
|
Unknown,
|
|
#[doc(alias = "GST_VIDEO_FIELD_ORDER_TOP_FIELD_FIRST")]
|
|
TopFieldFirst,
|
|
#[doc(alias = "GST_VIDEO_FIELD_ORDER_BOTTOM_FIELD_FIRST")]
|
|
BottomFieldFirst,
|
|
#[doc(hidden)]
|
|
__Unknown(i32),
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
impl VideoFieldOrder {
|
|
#[doc(alias = "gst_video_field_order_from_string")]
|
|
pub fn from_string(order: &str) -> VideoFieldOrder {
|
|
assert_initialized_main_thread!();
|
|
unsafe {
|
|
from_glib(ffi::gst_video_field_order_from_string(
|
|
order.to_glib_none().0,
|
|
))
|
|
}
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
impl fmt::Display for VideoFieldOrder {
|
|
#[inline]
|
|
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
|
|
f.write_str(&self.to_str())
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
#[doc(hidden)]
|
|
impl ToGlib for VideoFieldOrder {
|
|
type GlibType = ffi::GstVideoFieldOrder;
|
|
|
|
fn to_glib(&self) -> ffi::GstVideoFieldOrder {
|
|
match *self {
|
|
VideoFieldOrder::Unknown => ffi::GST_VIDEO_FIELD_ORDER_UNKNOWN,
|
|
VideoFieldOrder::TopFieldFirst => ffi::GST_VIDEO_FIELD_ORDER_TOP_FIELD_FIRST,
|
|
VideoFieldOrder::BottomFieldFirst => ffi::GST_VIDEO_FIELD_ORDER_BOTTOM_FIELD_FIRST,
|
|
VideoFieldOrder::__Unknown(value) => value,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
#[doc(hidden)]
|
|
impl FromGlib<ffi::GstVideoFieldOrder> for VideoFieldOrder {
|
|
unsafe fn from_glib(value: ffi::GstVideoFieldOrder) -> Self {
|
|
skip_assert_initialized!();
|
|
match value {
|
|
0 => VideoFieldOrder::Unknown,
|
|
1 => VideoFieldOrder::TopFieldFirst,
|
|
2 => VideoFieldOrder::BottomFieldFirst,
|
|
value => VideoFieldOrder::__Unknown(value),
|
|
}
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
impl StaticType for VideoFieldOrder {
|
|
fn static_type() -> Type {
|
|
unsafe { from_glib(ffi::gst_video_field_order_get_type()) }
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
impl<'a> FromValueOptional<'a> for VideoFieldOrder {
|
|
unsafe fn from_value_optional(value: &glib::Value) -> Option<Self> {
|
|
Some(FromValue::from_value(value))
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
impl<'a> FromValue<'a> for VideoFieldOrder {
|
|
unsafe fn from_value(value: &glib::Value) -> Self {
|
|
from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
impl SetValue for VideoFieldOrder {
|
|
unsafe fn set_value(value: &mut glib::Value, this: &Self) {
|
|
glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, this.to_glib())
|
|
}
|
|
}
|
|
|
|
#[derive(Debug, Eq, PartialEq, Hash, Clone, Copy)]
|
|
#[non_exhaustive]
|
|
#[doc(alias = "GstVideoFormat")]
|
|
pub enum VideoFormat {
|
|
#[doc(alias = "GST_VIDEO_FORMAT_UNKNOWN")]
|
|
Unknown,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_ENCODED")]
|
|
Encoded,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_I420")]
|
|
I420,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_YV12")]
|
|
Yv12,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_YUY2")]
|
|
Yuy2,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_UYVY")]
|
|
Uyvy,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_AYUV")]
|
|
Ayuv,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_RGBx")]
|
|
Rgbx,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_BGRx")]
|
|
Bgrx,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_xRGB")]
|
|
Xrgb,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_xBGR")]
|
|
Xbgr,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_RGBA")]
|
|
Rgba,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_BGRA")]
|
|
Bgra,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_ARGB")]
|
|
Argb,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_ABGR")]
|
|
Abgr,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_RGB")]
|
|
Rgb,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_BGR")]
|
|
Bgr,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_Y41B")]
|
|
Y41b,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_Y42B")]
|
|
Y42b,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_YVYU")]
|
|
Yvyu,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_Y444")]
|
|
Y444,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_v210")]
|
|
V210,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_v216")]
|
|
V216,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_NV12")]
|
|
Nv12,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_NV21")]
|
|
Nv21,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_GRAY8")]
|
|
Gray8,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_GRAY16_BE")]
|
|
Gray16Be,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_GRAY16_LE")]
|
|
Gray16Le,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_v308")]
|
|
V308,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_RGB16")]
|
|
Rgb16,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_BGR16")]
|
|
Bgr16,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_RGB15")]
|
|
Rgb15,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_BGR15")]
|
|
Bgr15,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_UYVP")]
|
|
Uyvp,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_A420")]
|
|
A420,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_RGB8P")]
|
|
Rgb8p,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_YUV9")]
|
|
Yuv9,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_YVU9")]
|
|
Yvu9,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_IYU1")]
|
|
Iyu1,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_ARGB64")]
|
|
Argb64,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_AYUV64")]
|
|
Ayuv64,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_r210")]
|
|
R210,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_I420_10BE")]
|
|
I42010be,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_I420_10LE")]
|
|
I42010le,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_I422_10BE")]
|
|
I42210be,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_I422_10LE")]
|
|
I42210le,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_Y444_10BE")]
|
|
Y44410be,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_Y444_10LE")]
|
|
Y44410le,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_GBR")]
|
|
Gbr,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_GBR_10BE")]
|
|
Gbr10be,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_GBR_10LE")]
|
|
Gbr10le,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_NV16")]
|
|
Nv16,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_NV24")]
|
|
Nv24,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_NV12_64Z32")]
|
|
Nv1264z32,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_A420_10BE")]
|
|
A42010be,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_A420_10LE")]
|
|
A42010le,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_A422_10BE")]
|
|
A42210be,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_A422_10LE")]
|
|
A42210le,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_A444_10BE")]
|
|
A44410be,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_A444_10LE")]
|
|
A44410le,
|
|
#[doc(alias = "GST_VIDEO_FORMAT_NV61")]
|
|
Nv61,
|
|
#[cfg(any(feature = "v1_10", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_P010_10BE")]
|
|
P01010be,
|
|
#[cfg(any(feature = "v1_10", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_P010_10LE")]
|
|
P01010le,
|
|
#[cfg(any(feature = "v1_10", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_IYU2")]
|
|
Iyu2,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_VYUY")]
|
|
Vyuy,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_GBRA")]
|
|
Gbra,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_GBRA_10BE")]
|
|
Gbra10be,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_GBRA_10LE")]
|
|
Gbra10le,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_GBR_12BE")]
|
|
Gbr12be,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_GBR_12LE")]
|
|
Gbr12le,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_GBRA_12BE")]
|
|
Gbra12be,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_GBRA_12LE")]
|
|
Gbra12le,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_I420_12BE")]
|
|
I42012be,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_I420_12LE")]
|
|
I42012le,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_I422_12BE")]
|
|
I42212be,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_I422_12LE")]
|
|
I42212le,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_Y444_12BE")]
|
|
Y44412be,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_Y444_12LE")]
|
|
Y44412le,
|
|
#[cfg(any(feature = "v1_14", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_GRAY10_LE32")]
|
|
Gray10Le32,
|
|
#[cfg(any(feature = "v1_14", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_NV12_10LE32")]
|
|
Nv1210le32,
|
|
#[cfg(any(feature = "v1_14", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_14")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_NV16_10LE32")]
|
|
Nv1610le32,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_NV12_10LE40")]
|
|
Nv1210le40,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_Y210")]
|
|
Y210,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_Y410")]
|
|
Y410,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_VUYA")]
|
|
Vuya,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_BGR10A2_LE")]
|
|
Bgr10a2Le,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_RGB10A2_LE")]
|
|
Rgb10a2Le,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_Y444_16BE")]
|
|
Y44416be,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_Y444_16LE")]
|
|
Y44416le,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_P016_BE")]
|
|
P016Be,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_P016_LE")]
|
|
P016Le,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_P012_BE")]
|
|
P012Be,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_P012_LE")]
|
|
P012Le,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_Y212_BE")]
|
|
Y212Be,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_Y212_LE")]
|
|
Y212Le,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_Y412_BE")]
|
|
Y412Be,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_Y412_LE")]
|
|
Y412Le,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_NV12_4L4")]
|
|
Nv124l4,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "GST_VIDEO_FORMAT_NV12_32L32")]
|
|
Nv1232l32,
|
|
#[doc(hidden)]
|
|
__Unknown(i32),
|
|
}
|
|
|
|
impl VideoFormat {
|
|
#[doc(alias = "gst_video_format_from_fourcc")]
|
|
pub fn from_fourcc(fourcc: u32) -> VideoFormat {
|
|
assert_initialized_main_thread!();
|
|
unsafe { from_glib(ffi::gst_video_format_from_fourcc(fourcc)) }
|
|
}
|
|
|
|
#[doc(alias = "gst_video_format_from_string")]
|
|
pub fn from_string(format: &str) -> VideoFormat {
|
|
assert_initialized_main_thread!();
|
|
unsafe { from_glib(ffi::gst_video_format_from_string(format.to_glib_none().0)) }
|
|
}
|
|
|
|
//#[doc(alias = "gst_video_format_get_palette")]
|
|
//pub fn palette(self) -> (/*Unimplemented*/Option<Fundamental: Pointer>, usize) {
|
|
// unsafe { TODO: call ffi:gst_video_format_get_palette() }
|
|
//}
|
|
|
|
#[doc(alias = "gst_video_format_to_fourcc")]
|
|
pub fn to_fourcc(self) -> u32 {
|
|
assert_initialized_main_thread!();
|
|
unsafe { ffi::gst_video_format_to_fourcc(self.to_glib()) }
|
|
}
|
|
}
|
|
|
|
impl fmt::Display for VideoFormat {
|
|
#[inline]
|
|
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
|
|
f.write_str(&self.to_str())
|
|
}
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl ToGlib for VideoFormat {
|
|
type GlibType = ffi::GstVideoFormat;
|
|
|
|
fn to_glib(&self) -> ffi::GstVideoFormat {
|
|
match *self {
|
|
VideoFormat::Unknown => ffi::GST_VIDEO_FORMAT_UNKNOWN,
|
|
VideoFormat::Encoded => ffi::GST_VIDEO_FORMAT_ENCODED,
|
|
VideoFormat::I420 => ffi::GST_VIDEO_FORMAT_I420,
|
|
VideoFormat::Yv12 => ffi::GST_VIDEO_FORMAT_YV12,
|
|
VideoFormat::Yuy2 => ffi::GST_VIDEO_FORMAT_YUY2,
|
|
VideoFormat::Uyvy => ffi::GST_VIDEO_FORMAT_UYVY,
|
|
VideoFormat::Ayuv => ffi::GST_VIDEO_FORMAT_AYUV,
|
|
VideoFormat::Rgbx => ffi::GST_VIDEO_FORMAT_RGBx,
|
|
VideoFormat::Bgrx => ffi::GST_VIDEO_FORMAT_BGRx,
|
|
VideoFormat::Xrgb => ffi::GST_VIDEO_FORMAT_xRGB,
|
|
VideoFormat::Xbgr => ffi::GST_VIDEO_FORMAT_xBGR,
|
|
VideoFormat::Rgba => ffi::GST_VIDEO_FORMAT_RGBA,
|
|
VideoFormat::Bgra => ffi::GST_VIDEO_FORMAT_BGRA,
|
|
VideoFormat::Argb => ffi::GST_VIDEO_FORMAT_ARGB,
|
|
VideoFormat::Abgr => ffi::GST_VIDEO_FORMAT_ABGR,
|
|
VideoFormat::Rgb => ffi::GST_VIDEO_FORMAT_RGB,
|
|
VideoFormat::Bgr => ffi::GST_VIDEO_FORMAT_BGR,
|
|
VideoFormat::Y41b => ffi::GST_VIDEO_FORMAT_Y41B,
|
|
VideoFormat::Y42b => ffi::GST_VIDEO_FORMAT_Y42B,
|
|
VideoFormat::Yvyu => ffi::GST_VIDEO_FORMAT_YVYU,
|
|
VideoFormat::Y444 => ffi::GST_VIDEO_FORMAT_Y444,
|
|
VideoFormat::V210 => ffi::GST_VIDEO_FORMAT_v210,
|
|
VideoFormat::V216 => ffi::GST_VIDEO_FORMAT_v216,
|
|
VideoFormat::Nv12 => ffi::GST_VIDEO_FORMAT_NV12,
|
|
VideoFormat::Nv21 => ffi::GST_VIDEO_FORMAT_NV21,
|
|
VideoFormat::Gray8 => ffi::GST_VIDEO_FORMAT_GRAY8,
|
|
VideoFormat::Gray16Be => ffi::GST_VIDEO_FORMAT_GRAY16_BE,
|
|
VideoFormat::Gray16Le => ffi::GST_VIDEO_FORMAT_GRAY16_LE,
|
|
VideoFormat::V308 => ffi::GST_VIDEO_FORMAT_v308,
|
|
VideoFormat::Rgb16 => ffi::GST_VIDEO_FORMAT_RGB16,
|
|
VideoFormat::Bgr16 => ffi::GST_VIDEO_FORMAT_BGR16,
|
|
VideoFormat::Rgb15 => ffi::GST_VIDEO_FORMAT_RGB15,
|
|
VideoFormat::Bgr15 => ffi::GST_VIDEO_FORMAT_BGR15,
|
|
VideoFormat::Uyvp => ffi::GST_VIDEO_FORMAT_UYVP,
|
|
VideoFormat::A420 => ffi::GST_VIDEO_FORMAT_A420,
|
|
VideoFormat::Rgb8p => ffi::GST_VIDEO_FORMAT_RGB8P,
|
|
VideoFormat::Yuv9 => ffi::GST_VIDEO_FORMAT_YUV9,
|
|
VideoFormat::Yvu9 => ffi::GST_VIDEO_FORMAT_YVU9,
|
|
VideoFormat::Iyu1 => ffi::GST_VIDEO_FORMAT_IYU1,
|
|
VideoFormat::Argb64 => ffi::GST_VIDEO_FORMAT_ARGB64,
|
|
VideoFormat::Ayuv64 => ffi::GST_VIDEO_FORMAT_AYUV64,
|
|
VideoFormat::R210 => ffi::GST_VIDEO_FORMAT_r210,
|
|
VideoFormat::I42010be => ffi::GST_VIDEO_FORMAT_I420_10BE,
|
|
VideoFormat::I42010le => ffi::GST_VIDEO_FORMAT_I420_10LE,
|
|
VideoFormat::I42210be => ffi::GST_VIDEO_FORMAT_I422_10BE,
|
|
VideoFormat::I42210le => ffi::GST_VIDEO_FORMAT_I422_10LE,
|
|
VideoFormat::Y44410be => ffi::GST_VIDEO_FORMAT_Y444_10BE,
|
|
VideoFormat::Y44410le => ffi::GST_VIDEO_FORMAT_Y444_10LE,
|
|
VideoFormat::Gbr => ffi::GST_VIDEO_FORMAT_GBR,
|
|
VideoFormat::Gbr10be => ffi::GST_VIDEO_FORMAT_GBR_10BE,
|
|
VideoFormat::Gbr10le => ffi::GST_VIDEO_FORMAT_GBR_10LE,
|
|
VideoFormat::Nv16 => ffi::GST_VIDEO_FORMAT_NV16,
|
|
VideoFormat::Nv24 => ffi::GST_VIDEO_FORMAT_NV24,
|
|
VideoFormat::Nv1264z32 => ffi::GST_VIDEO_FORMAT_NV12_64Z32,
|
|
VideoFormat::A42010be => ffi::GST_VIDEO_FORMAT_A420_10BE,
|
|
VideoFormat::A42010le => ffi::GST_VIDEO_FORMAT_A420_10LE,
|
|
VideoFormat::A42210be => ffi::GST_VIDEO_FORMAT_A422_10BE,
|
|
VideoFormat::A42210le => ffi::GST_VIDEO_FORMAT_A422_10LE,
|
|
VideoFormat::A44410be => ffi::GST_VIDEO_FORMAT_A444_10BE,
|
|
VideoFormat::A44410le => ffi::GST_VIDEO_FORMAT_A444_10LE,
|
|
VideoFormat::Nv61 => ffi::GST_VIDEO_FORMAT_NV61,
|
|
#[cfg(any(feature = "v1_10", feature = "dox"))]
|
|
VideoFormat::P01010be => ffi::GST_VIDEO_FORMAT_P010_10BE,
|
|
#[cfg(any(feature = "v1_10", feature = "dox"))]
|
|
VideoFormat::P01010le => ffi::GST_VIDEO_FORMAT_P010_10LE,
|
|
#[cfg(any(feature = "v1_10", feature = "dox"))]
|
|
VideoFormat::Iyu2 => ffi::GST_VIDEO_FORMAT_IYU2,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
VideoFormat::Vyuy => ffi::GST_VIDEO_FORMAT_VYUY,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
VideoFormat::Gbra => ffi::GST_VIDEO_FORMAT_GBRA,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
VideoFormat::Gbra10be => ffi::GST_VIDEO_FORMAT_GBRA_10BE,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
VideoFormat::Gbra10le => ffi::GST_VIDEO_FORMAT_GBRA_10LE,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
VideoFormat::Gbr12be => ffi::GST_VIDEO_FORMAT_GBR_12BE,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
VideoFormat::Gbr12le => ffi::GST_VIDEO_FORMAT_GBR_12LE,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
VideoFormat::Gbra12be => ffi::GST_VIDEO_FORMAT_GBRA_12BE,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
VideoFormat::Gbra12le => ffi::GST_VIDEO_FORMAT_GBRA_12LE,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
VideoFormat::I42012be => ffi::GST_VIDEO_FORMAT_I420_12BE,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
VideoFormat::I42012le => ffi::GST_VIDEO_FORMAT_I420_12LE,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
VideoFormat::I42212be => ffi::GST_VIDEO_FORMAT_I422_12BE,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
VideoFormat::I42212le => ffi::GST_VIDEO_FORMAT_I422_12LE,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
VideoFormat::Y44412be => ffi::GST_VIDEO_FORMAT_Y444_12BE,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
VideoFormat::Y44412le => ffi::GST_VIDEO_FORMAT_Y444_12LE,
|
|
#[cfg(any(feature = "v1_14", feature = "dox"))]
|
|
VideoFormat::Gray10Le32 => ffi::GST_VIDEO_FORMAT_GRAY10_LE32,
|
|
#[cfg(any(feature = "v1_14", feature = "dox"))]
|
|
VideoFormat::Nv1210le32 => ffi::GST_VIDEO_FORMAT_NV12_10LE32,
|
|
#[cfg(any(feature = "v1_14", feature = "dox"))]
|
|
VideoFormat::Nv1610le32 => ffi::GST_VIDEO_FORMAT_NV16_10LE32,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
VideoFormat::Nv1210le40 => ffi::GST_VIDEO_FORMAT_NV12_10LE40,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
VideoFormat::Y210 => ffi::GST_VIDEO_FORMAT_Y210,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
VideoFormat::Y410 => ffi::GST_VIDEO_FORMAT_Y410,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
VideoFormat::Vuya => ffi::GST_VIDEO_FORMAT_VUYA,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
VideoFormat::Bgr10a2Le => ffi::GST_VIDEO_FORMAT_BGR10A2_LE,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
VideoFormat::Rgb10a2Le => ffi::GST_VIDEO_FORMAT_RGB10A2_LE,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
VideoFormat::Y44416be => ffi::GST_VIDEO_FORMAT_Y444_16BE,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
VideoFormat::Y44416le => ffi::GST_VIDEO_FORMAT_Y444_16LE,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
VideoFormat::P016Be => ffi::GST_VIDEO_FORMAT_P016_BE,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
VideoFormat::P016Le => ffi::GST_VIDEO_FORMAT_P016_LE,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
VideoFormat::P012Be => ffi::GST_VIDEO_FORMAT_P012_BE,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
VideoFormat::P012Le => ffi::GST_VIDEO_FORMAT_P012_LE,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
VideoFormat::Y212Be => ffi::GST_VIDEO_FORMAT_Y212_BE,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
VideoFormat::Y212Le => ffi::GST_VIDEO_FORMAT_Y212_LE,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
VideoFormat::Y412Be => ffi::GST_VIDEO_FORMAT_Y412_BE,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
VideoFormat::Y412Le => ffi::GST_VIDEO_FORMAT_Y412_LE,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
VideoFormat::Nv124l4 => ffi::GST_VIDEO_FORMAT_NV12_4L4,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
VideoFormat::Nv1232l32 => ffi::GST_VIDEO_FORMAT_NV12_32L32,
|
|
VideoFormat::__Unknown(value) => value,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl FromGlib<ffi::GstVideoFormat> for VideoFormat {
|
|
unsafe fn from_glib(value: ffi::GstVideoFormat) -> Self {
|
|
skip_assert_initialized!();
|
|
match value {
|
|
0 => VideoFormat::Unknown,
|
|
1 => VideoFormat::Encoded,
|
|
2 => VideoFormat::I420,
|
|
3 => VideoFormat::Yv12,
|
|
4 => VideoFormat::Yuy2,
|
|
5 => VideoFormat::Uyvy,
|
|
6 => VideoFormat::Ayuv,
|
|
7 => VideoFormat::Rgbx,
|
|
8 => VideoFormat::Bgrx,
|
|
9 => VideoFormat::Xrgb,
|
|
10 => VideoFormat::Xbgr,
|
|
11 => VideoFormat::Rgba,
|
|
12 => VideoFormat::Bgra,
|
|
13 => VideoFormat::Argb,
|
|
14 => VideoFormat::Abgr,
|
|
15 => VideoFormat::Rgb,
|
|
16 => VideoFormat::Bgr,
|
|
17 => VideoFormat::Y41b,
|
|
18 => VideoFormat::Y42b,
|
|
19 => VideoFormat::Yvyu,
|
|
20 => VideoFormat::Y444,
|
|
21 => VideoFormat::V210,
|
|
22 => VideoFormat::V216,
|
|
23 => VideoFormat::Nv12,
|
|
24 => VideoFormat::Nv21,
|
|
25 => VideoFormat::Gray8,
|
|
26 => VideoFormat::Gray16Be,
|
|
27 => VideoFormat::Gray16Le,
|
|
28 => VideoFormat::V308,
|
|
29 => VideoFormat::Rgb16,
|
|
30 => VideoFormat::Bgr16,
|
|
31 => VideoFormat::Rgb15,
|
|
32 => VideoFormat::Bgr15,
|
|
33 => VideoFormat::Uyvp,
|
|
34 => VideoFormat::A420,
|
|
35 => VideoFormat::Rgb8p,
|
|
36 => VideoFormat::Yuv9,
|
|
37 => VideoFormat::Yvu9,
|
|
38 => VideoFormat::Iyu1,
|
|
39 => VideoFormat::Argb64,
|
|
40 => VideoFormat::Ayuv64,
|
|
41 => VideoFormat::R210,
|
|
42 => VideoFormat::I42010be,
|
|
43 => VideoFormat::I42010le,
|
|
44 => VideoFormat::I42210be,
|
|
45 => VideoFormat::I42210le,
|
|
46 => VideoFormat::Y44410be,
|
|
47 => VideoFormat::Y44410le,
|
|
48 => VideoFormat::Gbr,
|
|
49 => VideoFormat::Gbr10be,
|
|
50 => VideoFormat::Gbr10le,
|
|
51 => VideoFormat::Nv16,
|
|
52 => VideoFormat::Nv24,
|
|
53 => VideoFormat::Nv1264z32,
|
|
54 => VideoFormat::A42010be,
|
|
55 => VideoFormat::A42010le,
|
|
56 => VideoFormat::A42210be,
|
|
57 => VideoFormat::A42210le,
|
|
58 => VideoFormat::A44410be,
|
|
59 => VideoFormat::A44410le,
|
|
60 => VideoFormat::Nv61,
|
|
#[cfg(any(feature = "v1_10", feature = "dox"))]
|
|
61 => VideoFormat::P01010be,
|
|
#[cfg(any(feature = "v1_10", feature = "dox"))]
|
|
62 => VideoFormat::P01010le,
|
|
#[cfg(any(feature = "v1_10", feature = "dox"))]
|
|
63 => VideoFormat::Iyu2,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
64 => VideoFormat::Vyuy,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
65 => VideoFormat::Gbra,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
66 => VideoFormat::Gbra10be,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
67 => VideoFormat::Gbra10le,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
68 => VideoFormat::Gbr12be,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
69 => VideoFormat::Gbr12le,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
70 => VideoFormat::Gbra12be,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
71 => VideoFormat::Gbra12le,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
72 => VideoFormat::I42012be,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
73 => VideoFormat::I42012le,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
74 => VideoFormat::I42212be,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
75 => VideoFormat::I42212le,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
76 => VideoFormat::Y44412be,
|
|
#[cfg(any(feature = "v1_12", feature = "dox"))]
|
|
77 => VideoFormat::Y44412le,
|
|
#[cfg(any(feature = "v1_14", feature = "dox"))]
|
|
78 => VideoFormat::Gray10Le32,
|
|
#[cfg(any(feature = "v1_14", feature = "dox"))]
|
|
79 => VideoFormat::Nv1210le32,
|
|
#[cfg(any(feature = "v1_14", feature = "dox"))]
|
|
80 => VideoFormat::Nv1610le32,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
81 => VideoFormat::Nv1210le40,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
82 => VideoFormat::Y210,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
83 => VideoFormat::Y410,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
84 => VideoFormat::Vuya,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
85 => VideoFormat::Bgr10a2Le,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
86 => VideoFormat::Rgb10a2Le,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
87 => VideoFormat::Y44416be,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
88 => VideoFormat::Y44416le,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
89 => VideoFormat::P016Be,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
90 => VideoFormat::P016Le,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
91 => VideoFormat::P012Be,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
92 => VideoFormat::P012Le,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
93 => VideoFormat::Y212Be,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
94 => VideoFormat::Y212Le,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
95 => VideoFormat::Y412Be,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
96 => VideoFormat::Y412Le,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
97 => VideoFormat::Nv124l4,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
98 => VideoFormat::Nv1232l32,
|
|
value => VideoFormat::__Unknown(value),
|
|
}
|
|
}
|
|
}
|
|
|
|
impl StaticType for VideoFormat {
|
|
fn static_type() -> Type {
|
|
unsafe { from_glib(ffi::gst_video_format_get_type()) }
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValueOptional<'a> for VideoFormat {
|
|
unsafe fn from_value_optional(value: &glib::Value) -> Option<Self> {
|
|
Some(FromValue::from_value(value))
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValue<'a> for VideoFormat {
|
|
unsafe fn from_value(value: &glib::Value) -> Self {
|
|
from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
|
|
}
|
|
}
|
|
|
|
impl SetValue for VideoFormat {
|
|
unsafe fn set_value(value: &mut glib::Value, this: &Self) {
|
|
glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, this.to_glib())
|
|
}
|
|
}
|
|
|
|
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
|
|
#[non_exhaustive]
|
|
#[doc(alias = "GstVideoGammaMode")]
|
|
pub enum VideoGammaMode {
|
|
#[doc(alias = "GST_VIDEO_GAMMA_MODE_NONE")]
|
|
None,
|
|
#[doc(alias = "GST_VIDEO_GAMMA_MODE_REMAP")]
|
|
Remap,
|
|
#[doc(hidden)]
|
|
__Unknown(i32),
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl ToGlib for VideoGammaMode {
|
|
type GlibType = ffi::GstVideoGammaMode;
|
|
|
|
fn to_glib(&self) -> ffi::GstVideoGammaMode {
|
|
match *self {
|
|
VideoGammaMode::None => ffi::GST_VIDEO_GAMMA_MODE_NONE,
|
|
VideoGammaMode::Remap => ffi::GST_VIDEO_GAMMA_MODE_REMAP,
|
|
VideoGammaMode::__Unknown(value) => value,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl FromGlib<ffi::GstVideoGammaMode> for VideoGammaMode {
|
|
unsafe fn from_glib(value: ffi::GstVideoGammaMode) -> Self {
|
|
skip_assert_initialized!();
|
|
match value {
|
|
0 => VideoGammaMode::None,
|
|
1 => VideoGammaMode::Remap,
|
|
value => VideoGammaMode::__Unknown(value),
|
|
}
|
|
}
|
|
}
|
|
|
|
impl StaticType for VideoGammaMode {
|
|
fn static_type() -> Type {
|
|
unsafe { from_glib(ffi::gst_video_gamma_mode_get_type()) }
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValueOptional<'a> for VideoGammaMode {
|
|
unsafe fn from_value_optional(value: &glib::Value) -> Option<Self> {
|
|
Some(FromValue::from_value(value))
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValue<'a> for VideoGammaMode {
|
|
unsafe fn from_value(value: &glib::Value) -> Self {
|
|
from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
|
|
}
|
|
}
|
|
|
|
impl SetValue for VideoGammaMode {
|
|
unsafe fn set_value(value: &mut glib::Value, this: &Self) {
|
|
glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, this.to_glib())
|
|
}
|
|
}
|
|
|
|
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
|
|
#[non_exhaustive]
|
|
#[doc(alias = "GstVideoInterlaceMode")]
|
|
pub enum VideoInterlaceMode {
|
|
#[doc(alias = "GST_VIDEO_INTERLACE_MODE_PROGRESSIVE")]
|
|
Progressive,
|
|
#[doc(alias = "GST_VIDEO_INTERLACE_MODE_INTERLEAVED")]
|
|
Interleaved,
|
|
#[doc(alias = "GST_VIDEO_INTERLACE_MODE_MIXED")]
|
|
Mixed,
|
|
#[doc(alias = "GST_VIDEO_INTERLACE_MODE_FIELDS")]
|
|
Fields,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_16")))]
|
|
#[doc(alias = "GST_VIDEO_INTERLACE_MODE_ALTERNATE")]
|
|
Alternate,
|
|
#[doc(hidden)]
|
|
__Unknown(i32),
|
|
}
|
|
|
|
impl VideoInterlaceMode {
|
|
#[doc(alias = "gst_video_interlace_mode_from_string")]
|
|
pub fn from_string(mode: &str) -> VideoInterlaceMode {
|
|
assert_initialized_main_thread!();
|
|
unsafe {
|
|
from_glib(ffi::gst_video_interlace_mode_from_string(
|
|
mode.to_glib_none().0,
|
|
))
|
|
}
|
|
}
|
|
|
|
pub fn to_str<'a>(self) -> &'a str {
|
|
unsafe {
|
|
CStr::from_ptr(
|
|
ffi::gst_video_interlace_mode_to_string(self.to_glib())
|
|
.as_ref()
|
|
.expect("gst_video_interlace_mode_to_string returned NULL"),
|
|
)
|
|
.to_str()
|
|
.expect("gst_video_interlace_mode_to_string returned an invalid string")
|
|
}
|
|
}
|
|
}
|
|
|
|
impl fmt::Display for VideoInterlaceMode {
|
|
#[inline]
|
|
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
|
|
f.write_str(&self.to_str())
|
|
}
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl ToGlib for VideoInterlaceMode {
|
|
type GlibType = ffi::GstVideoInterlaceMode;
|
|
|
|
fn to_glib(&self) -> ffi::GstVideoInterlaceMode {
|
|
match *self {
|
|
VideoInterlaceMode::Progressive => ffi::GST_VIDEO_INTERLACE_MODE_PROGRESSIVE,
|
|
VideoInterlaceMode::Interleaved => ffi::GST_VIDEO_INTERLACE_MODE_INTERLEAVED,
|
|
VideoInterlaceMode::Mixed => ffi::GST_VIDEO_INTERLACE_MODE_MIXED,
|
|
VideoInterlaceMode::Fields => ffi::GST_VIDEO_INTERLACE_MODE_FIELDS,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
VideoInterlaceMode::Alternate => ffi::GST_VIDEO_INTERLACE_MODE_ALTERNATE,
|
|
VideoInterlaceMode::__Unknown(value) => value,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl FromGlib<ffi::GstVideoInterlaceMode> for VideoInterlaceMode {
|
|
unsafe fn from_glib(value: ffi::GstVideoInterlaceMode) -> Self {
|
|
skip_assert_initialized!();
|
|
match value {
|
|
0 => VideoInterlaceMode::Progressive,
|
|
1 => VideoInterlaceMode::Interleaved,
|
|
2 => VideoInterlaceMode::Mixed,
|
|
3 => VideoInterlaceMode::Fields,
|
|
#[cfg(any(feature = "v1_16", feature = "dox"))]
|
|
4 => VideoInterlaceMode::Alternate,
|
|
value => VideoInterlaceMode::__Unknown(value),
|
|
}
|
|
}
|
|
}
|
|
|
|
impl StaticType for VideoInterlaceMode {
|
|
fn static_type() -> Type {
|
|
unsafe { from_glib(ffi::gst_video_interlace_mode_get_type()) }
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValueOptional<'a> for VideoInterlaceMode {
|
|
unsafe fn from_value_optional(value: &glib::Value) -> Option<Self> {
|
|
Some(FromValue::from_value(value))
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValue<'a> for VideoInterlaceMode {
|
|
unsafe fn from_value(value: &glib::Value) -> Self {
|
|
from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
|
|
}
|
|
}
|
|
|
|
impl SetValue for VideoInterlaceMode {
|
|
unsafe fn set_value(value: &mut glib::Value, this: &Self) {
|
|
glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, this.to_glib())
|
|
}
|
|
}
|
|
|
|
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
|
|
#[non_exhaustive]
|
|
#[doc(alias = "GstVideoMatrixMode")]
|
|
pub enum VideoMatrixMode {
|
|
#[doc(alias = "GST_VIDEO_MATRIX_MODE_FULL")]
|
|
Full,
|
|
#[doc(alias = "GST_VIDEO_MATRIX_MODE_INPUT_ONLY")]
|
|
InputOnly,
|
|
#[doc(alias = "GST_VIDEO_MATRIX_MODE_OUTPUT_ONLY")]
|
|
OutputOnly,
|
|
#[doc(alias = "GST_VIDEO_MATRIX_MODE_NONE")]
|
|
None,
|
|
#[doc(hidden)]
|
|
__Unknown(i32),
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl ToGlib for VideoMatrixMode {
|
|
type GlibType = ffi::GstVideoMatrixMode;
|
|
|
|
fn to_glib(&self) -> ffi::GstVideoMatrixMode {
|
|
match *self {
|
|
VideoMatrixMode::Full => ffi::GST_VIDEO_MATRIX_MODE_FULL,
|
|
VideoMatrixMode::InputOnly => ffi::GST_VIDEO_MATRIX_MODE_INPUT_ONLY,
|
|
VideoMatrixMode::OutputOnly => ffi::GST_VIDEO_MATRIX_MODE_OUTPUT_ONLY,
|
|
VideoMatrixMode::None => ffi::GST_VIDEO_MATRIX_MODE_NONE,
|
|
VideoMatrixMode::__Unknown(value) => value,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl FromGlib<ffi::GstVideoMatrixMode> for VideoMatrixMode {
|
|
unsafe fn from_glib(value: ffi::GstVideoMatrixMode) -> Self {
|
|
skip_assert_initialized!();
|
|
match value {
|
|
0 => VideoMatrixMode::Full,
|
|
1 => VideoMatrixMode::InputOnly,
|
|
2 => VideoMatrixMode::OutputOnly,
|
|
3 => VideoMatrixMode::None,
|
|
value => VideoMatrixMode::__Unknown(value),
|
|
}
|
|
}
|
|
}
|
|
|
|
impl StaticType for VideoMatrixMode {
|
|
fn static_type() -> Type {
|
|
unsafe { from_glib(ffi::gst_video_matrix_mode_get_type()) }
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValueOptional<'a> for VideoMatrixMode {
|
|
unsafe fn from_value_optional(value: &glib::Value) -> Option<Self> {
|
|
Some(FromValue::from_value(value))
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValue<'a> for VideoMatrixMode {
|
|
unsafe fn from_value(value: &glib::Value) -> Self {
|
|
from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
|
|
}
|
|
}
|
|
|
|
impl SetValue for VideoMatrixMode {
|
|
unsafe fn set_value(value: &mut glib::Value, this: &Self) {
|
|
glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, this.to_glib())
|
|
}
|
|
}
|
|
|
|
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
|
|
#[non_exhaustive]
|
|
#[doc(alias = "GstVideoMultiviewFramePacking")]
|
|
pub enum VideoMultiviewFramePacking {
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_FRAME_PACKING_NONE")]
|
|
None,
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_FRAME_PACKING_MONO")]
|
|
Mono,
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_FRAME_PACKING_LEFT")]
|
|
Left,
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_FRAME_PACKING_RIGHT")]
|
|
Right,
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_FRAME_PACKING_SIDE_BY_SIDE")]
|
|
SideBySide,
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_FRAME_PACKING_SIDE_BY_SIDE_QUINCUNX")]
|
|
SideBySideQuincunx,
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_FRAME_PACKING_COLUMN_INTERLEAVED")]
|
|
ColumnInterleaved,
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_FRAME_PACKING_ROW_INTERLEAVED")]
|
|
RowInterleaved,
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_FRAME_PACKING_TOP_BOTTOM")]
|
|
TopBottom,
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_FRAME_PACKING_CHECKERBOARD")]
|
|
Checkerboard,
|
|
#[doc(hidden)]
|
|
__Unknown(i32),
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl ToGlib for VideoMultiviewFramePacking {
|
|
type GlibType = ffi::GstVideoMultiviewFramePacking;
|
|
|
|
fn to_glib(&self) -> ffi::GstVideoMultiviewFramePacking {
|
|
match *self {
|
|
VideoMultiviewFramePacking::None => ffi::GST_VIDEO_MULTIVIEW_FRAME_PACKING_NONE,
|
|
VideoMultiviewFramePacking::Mono => ffi::GST_VIDEO_MULTIVIEW_FRAME_PACKING_MONO,
|
|
VideoMultiviewFramePacking::Left => ffi::GST_VIDEO_MULTIVIEW_FRAME_PACKING_LEFT,
|
|
VideoMultiviewFramePacking::Right => ffi::GST_VIDEO_MULTIVIEW_FRAME_PACKING_RIGHT,
|
|
VideoMultiviewFramePacking::SideBySide => {
|
|
ffi::GST_VIDEO_MULTIVIEW_FRAME_PACKING_SIDE_BY_SIDE
|
|
}
|
|
VideoMultiviewFramePacking::SideBySideQuincunx => {
|
|
ffi::GST_VIDEO_MULTIVIEW_FRAME_PACKING_SIDE_BY_SIDE_QUINCUNX
|
|
}
|
|
VideoMultiviewFramePacking::ColumnInterleaved => {
|
|
ffi::GST_VIDEO_MULTIVIEW_FRAME_PACKING_COLUMN_INTERLEAVED
|
|
}
|
|
VideoMultiviewFramePacking::RowInterleaved => {
|
|
ffi::GST_VIDEO_MULTIVIEW_FRAME_PACKING_ROW_INTERLEAVED
|
|
}
|
|
VideoMultiviewFramePacking::TopBottom => {
|
|
ffi::GST_VIDEO_MULTIVIEW_FRAME_PACKING_TOP_BOTTOM
|
|
}
|
|
VideoMultiviewFramePacking::Checkerboard => {
|
|
ffi::GST_VIDEO_MULTIVIEW_FRAME_PACKING_CHECKERBOARD
|
|
}
|
|
VideoMultiviewFramePacking::__Unknown(value) => value,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl FromGlib<ffi::GstVideoMultiviewFramePacking> for VideoMultiviewFramePacking {
|
|
unsafe fn from_glib(value: ffi::GstVideoMultiviewFramePacking) -> Self {
|
|
skip_assert_initialized!();
|
|
match value {
|
|
-1 => VideoMultiviewFramePacking::None,
|
|
0 => VideoMultiviewFramePacking::Mono,
|
|
1 => VideoMultiviewFramePacking::Left,
|
|
2 => VideoMultiviewFramePacking::Right,
|
|
3 => VideoMultiviewFramePacking::SideBySide,
|
|
4 => VideoMultiviewFramePacking::SideBySideQuincunx,
|
|
5 => VideoMultiviewFramePacking::ColumnInterleaved,
|
|
6 => VideoMultiviewFramePacking::RowInterleaved,
|
|
7 => VideoMultiviewFramePacking::TopBottom,
|
|
8 => VideoMultiviewFramePacking::Checkerboard,
|
|
value => VideoMultiviewFramePacking::__Unknown(value),
|
|
}
|
|
}
|
|
}
|
|
|
|
impl StaticType for VideoMultiviewFramePacking {
|
|
fn static_type() -> Type {
|
|
unsafe { from_glib(ffi::gst_video_multiview_frame_packing_get_type()) }
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValueOptional<'a> for VideoMultiviewFramePacking {
|
|
unsafe fn from_value_optional(value: &glib::Value) -> Option<Self> {
|
|
Some(FromValue::from_value(value))
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValue<'a> for VideoMultiviewFramePacking {
|
|
unsafe fn from_value(value: &glib::Value) -> Self {
|
|
from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
|
|
}
|
|
}
|
|
|
|
impl SetValue for VideoMultiviewFramePacking {
|
|
unsafe fn set_value(value: &mut glib::Value, this: &Self) {
|
|
glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, this.to_glib())
|
|
}
|
|
}
|
|
|
|
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
|
|
#[non_exhaustive]
|
|
#[doc(alias = "GstVideoMultiviewMode")]
|
|
pub enum VideoMultiviewMode {
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_MODE_NONE")]
|
|
None,
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_MODE_MONO")]
|
|
Mono,
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_MODE_LEFT")]
|
|
Left,
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_MODE_RIGHT")]
|
|
Right,
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_MODE_SIDE_BY_SIDE")]
|
|
SideBySide,
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_MODE_SIDE_BY_SIDE_QUINCUNX")]
|
|
SideBySideQuincunx,
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_MODE_COLUMN_INTERLEAVED")]
|
|
ColumnInterleaved,
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_MODE_ROW_INTERLEAVED")]
|
|
RowInterleaved,
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_MODE_TOP_BOTTOM")]
|
|
TopBottom,
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_MODE_CHECKERBOARD")]
|
|
Checkerboard,
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_MODE_FRAME_BY_FRAME")]
|
|
FrameByFrame,
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_MODE_MULTIVIEW_FRAME_BY_FRAME")]
|
|
MultiviewFrameByFrame,
|
|
#[doc(alias = "GST_VIDEO_MULTIVIEW_MODE_SEPARATED")]
|
|
Separated,
|
|
#[doc(hidden)]
|
|
__Unknown(i32),
|
|
}
|
|
|
|
impl VideoMultiviewMode {
|
|
#[doc(alias = "gst_video_multiview_mode_from_caps_string")]
|
|
pub fn from_caps_string(caps_mview_mode: &str) -> VideoMultiviewMode {
|
|
assert_initialized_main_thread!();
|
|
unsafe {
|
|
from_glib(ffi::gst_video_multiview_mode_from_caps_string(
|
|
caps_mview_mode.to_glib_none().0,
|
|
))
|
|
}
|
|
}
|
|
|
|
#[doc(alias = "gst_video_multiview_mode_to_caps_string")]
|
|
pub fn to_caps_string(self) -> Option<glib::GString> {
|
|
assert_initialized_main_thread!();
|
|
unsafe { from_glib_none(ffi::gst_video_multiview_mode_to_caps_string(self.to_glib())) }
|
|
}
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl ToGlib for VideoMultiviewMode {
|
|
type GlibType = ffi::GstVideoMultiviewMode;
|
|
|
|
fn to_glib(&self) -> ffi::GstVideoMultiviewMode {
|
|
match *self {
|
|
VideoMultiviewMode::None => ffi::GST_VIDEO_MULTIVIEW_MODE_NONE,
|
|
VideoMultiviewMode::Mono => ffi::GST_VIDEO_MULTIVIEW_MODE_MONO,
|
|
VideoMultiviewMode::Left => ffi::GST_VIDEO_MULTIVIEW_MODE_LEFT,
|
|
VideoMultiviewMode::Right => ffi::GST_VIDEO_MULTIVIEW_MODE_RIGHT,
|
|
VideoMultiviewMode::SideBySide => ffi::GST_VIDEO_MULTIVIEW_MODE_SIDE_BY_SIDE,
|
|
VideoMultiviewMode::SideBySideQuincunx => {
|
|
ffi::GST_VIDEO_MULTIVIEW_MODE_SIDE_BY_SIDE_QUINCUNX
|
|
}
|
|
VideoMultiviewMode::ColumnInterleaved => {
|
|
ffi::GST_VIDEO_MULTIVIEW_MODE_COLUMN_INTERLEAVED
|
|
}
|
|
VideoMultiviewMode::RowInterleaved => ffi::GST_VIDEO_MULTIVIEW_MODE_ROW_INTERLEAVED,
|
|
VideoMultiviewMode::TopBottom => ffi::GST_VIDEO_MULTIVIEW_MODE_TOP_BOTTOM,
|
|
VideoMultiviewMode::Checkerboard => ffi::GST_VIDEO_MULTIVIEW_MODE_CHECKERBOARD,
|
|
VideoMultiviewMode::FrameByFrame => ffi::GST_VIDEO_MULTIVIEW_MODE_FRAME_BY_FRAME,
|
|
VideoMultiviewMode::MultiviewFrameByFrame => {
|
|
ffi::GST_VIDEO_MULTIVIEW_MODE_MULTIVIEW_FRAME_BY_FRAME
|
|
}
|
|
VideoMultiviewMode::Separated => ffi::GST_VIDEO_MULTIVIEW_MODE_SEPARATED,
|
|
VideoMultiviewMode::__Unknown(value) => value,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl FromGlib<ffi::GstVideoMultiviewMode> for VideoMultiviewMode {
|
|
unsafe fn from_glib(value: ffi::GstVideoMultiviewMode) -> Self {
|
|
skip_assert_initialized!();
|
|
match value {
|
|
-1 => VideoMultiviewMode::None,
|
|
0 => VideoMultiviewMode::Mono,
|
|
1 => VideoMultiviewMode::Left,
|
|
2 => VideoMultiviewMode::Right,
|
|
3 => VideoMultiviewMode::SideBySide,
|
|
4 => VideoMultiviewMode::SideBySideQuincunx,
|
|
5 => VideoMultiviewMode::ColumnInterleaved,
|
|
6 => VideoMultiviewMode::RowInterleaved,
|
|
7 => VideoMultiviewMode::TopBottom,
|
|
8 => VideoMultiviewMode::Checkerboard,
|
|
32 => VideoMultiviewMode::FrameByFrame,
|
|
33 => VideoMultiviewMode::MultiviewFrameByFrame,
|
|
34 => VideoMultiviewMode::Separated,
|
|
value => VideoMultiviewMode::__Unknown(value),
|
|
}
|
|
}
|
|
}
|
|
|
|
impl StaticType for VideoMultiviewMode {
|
|
fn static_type() -> Type {
|
|
unsafe { from_glib(ffi::gst_video_multiview_mode_get_type()) }
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValueOptional<'a> for VideoMultiviewMode {
|
|
unsafe fn from_value_optional(value: &glib::Value) -> Option<Self> {
|
|
Some(FromValue::from_value(value))
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValue<'a> for VideoMultiviewMode {
|
|
unsafe fn from_value(value: &glib::Value) -> Self {
|
|
from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
|
|
}
|
|
}
|
|
|
|
impl SetValue for VideoMultiviewMode {
|
|
unsafe fn set_value(value: &mut glib::Value, this: &Self) {
|
|
glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, this.to_glib())
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_10", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))]
|
|
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
|
|
#[non_exhaustive]
|
|
#[doc(alias = "GstVideoOrientationMethod")]
|
|
pub enum VideoOrientationMethod {
|
|
#[doc(alias = "GST_VIDEO_ORIENTATION_IDENTITY")]
|
|
Identity,
|
|
#[doc(alias = "GST_VIDEO_ORIENTATION_90R")]
|
|
_90r,
|
|
#[doc(alias = "GST_VIDEO_ORIENTATION_180")]
|
|
_180,
|
|
#[doc(alias = "GST_VIDEO_ORIENTATION_90L")]
|
|
_90l,
|
|
#[doc(alias = "GST_VIDEO_ORIENTATION_HORIZ")]
|
|
Horiz,
|
|
#[doc(alias = "GST_VIDEO_ORIENTATION_VERT")]
|
|
Vert,
|
|
#[doc(alias = "GST_VIDEO_ORIENTATION_UL_LR")]
|
|
UlLr,
|
|
#[doc(alias = "GST_VIDEO_ORIENTATION_UR_LL")]
|
|
UrLl,
|
|
#[doc(alias = "GST_VIDEO_ORIENTATION_AUTO")]
|
|
Auto,
|
|
#[doc(alias = "GST_VIDEO_ORIENTATION_CUSTOM")]
|
|
Custom,
|
|
#[doc(hidden)]
|
|
__Unknown(i32),
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_10", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))]
|
|
#[doc(hidden)]
|
|
impl ToGlib for VideoOrientationMethod {
|
|
type GlibType = ffi::GstVideoOrientationMethod;
|
|
|
|
fn to_glib(&self) -> ffi::GstVideoOrientationMethod {
|
|
match *self {
|
|
VideoOrientationMethod::Identity => ffi::GST_VIDEO_ORIENTATION_IDENTITY,
|
|
VideoOrientationMethod::_90r => ffi::GST_VIDEO_ORIENTATION_90R,
|
|
VideoOrientationMethod::_180 => ffi::GST_VIDEO_ORIENTATION_180,
|
|
VideoOrientationMethod::_90l => ffi::GST_VIDEO_ORIENTATION_90L,
|
|
VideoOrientationMethod::Horiz => ffi::GST_VIDEO_ORIENTATION_HORIZ,
|
|
VideoOrientationMethod::Vert => ffi::GST_VIDEO_ORIENTATION_VERT,
|
|
VideoOrientationMethod::UlLr => ffi::GST_VIDEO_ORIENTATION_UL_LR,
|
|
VideoOrientationMethod::UrLl => ffi::GST_VIDEO_ORIENTATION_UR_LL,
|
|
VideoOrientationMethod::Auto => ffi::GST_VIDEO_ORIENTATION_AUTO,
|
|
VideoOrientationMethod::Custom => ffi::GST_VIDEO_ORIENTATION_CUSTOM,
|
|
VideoOrientationMethod::__Unknown(value) => value,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_10", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))]
|
|
#[doc(hidden)]
|
|
impl FromGlib<ffi::GstVideoOrientationMethod> for VideoOrientationMethod {
|
|
unsafe fn from_glib(value: ffi::GstVideoOrientationMethod) -> Self {
|
|
skip_assert_initialized!();
|
|
match value {
|
|
0 => VideoOrientationMethod::Identity,
|
|
1 => VideoOrientationMethod::_90r,
|
|
2 => VideoOrientationMethod::_180,
|
|
3 => VideoOrientationMethod::_90l,
|
|
4 => VideoOrientationMethod::Horiz,
|
|
5 => VideoOrientationMethod::Vert,
|
|
6 => VideoOrientationMethod::UlLr,
|
|
7 => VideoOrientationMethod::UrLl,
|
|
8 => VideoOrientationMethod::Auto,
|
|
9 => VideoOrientationMethod::Custom,
|
|
value => VideoOrientationMethod::__Unknown(value),
|
|
}
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_10", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))]
|
|
impl StaticType for VideoOrientationMethod {
|
|
fn static_type() -> Type {
|
|
unsafe { from_glib(ffi::gst_video_orientation_method_get_type()) }
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_10", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))]
|
|
impl<'a> FromValueOptional<'a> for VideoOrientationMethod {
|
|
unsafe fn from_value_optional(value: &glib::Value) -> Option<Self> {
|
|
Some(FromValue::from_value(value))
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_10", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))]
|
|
impl<'a> FromValue<'a> for VideoOrientationMethod {
|
|
unsafe fn from_value(value: &glib::Value) -> Self {
|
|
from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_10", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_10")))]
|
|
impl SetValue for VideoOrientationMethod {
|
|
unsafe fn set_value(value: &mut glib::Value, this: &Self) {
|
|
glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, this.to_glib())
|
|
}
|
|
}
|
|
|
|
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
|
|
#[non_exhaustive]
|
|
#[doc(alias = "GstVideoPrimariesMode")]
|
|
pub enum VideoPrimariesMode {
|
|
#[doc(alias = "GST_VIDEO_PRIMARIES_MODE_NONE")]
|
|
None,
|
|
#[doc(alias = "GST_VIDEO_PRIMARIES_MODE_MERGE_ONLY")]
|
|
MergeOnly,
|
|
#[doc(alias = "GST_VIDEO_PRIMARIES_MODE_FAST")]
|
|
Fast,
|
|
#[doc(hidden)]
|
|
__Unknown(i32),
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl ToGlib for VideoPrimariesMode {
|
|
type GlibType = ffi::GstVideoPrimariesMode;
|
|
|
|
fn to_glib(&self) -> ffi::GstVideoPrimariesMode {
|
|
match *self {
|
|
VideoPrimariesMode::None => ffi::GST_VIDEO_PRIMARIES_MODE_NONE,
|
|
VideoPrimariesMode::MergeOnly => ffi::GST_VIDEO_PRIMARIES_MODE_MERGE_ONLY,
|
|
VideoPrimariesMode::Fast => ffi::GST_VIDEO_PRIMARIES_MODE_FAST,
|
|
VideoPrimariesMode::__Unknown(value) => value,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl FromGlib<ffi::GstVideoPrimariesMode> for VideoPrimariesMode {
|
|
unsafe fn from_glib(value: ffi::GstVideoPrimariesMode) -> Self {
|
|
skip_assert_initialized!();
|
|
match value {
|
|
0 => VideoPrimariesMode::None,
|
|
1 => VideoPrimariesMode::MergeOnly,
|
|
2 => VideoPrimariesMode::Fast,
|
|
value => VideoPrimariesMode::__Unknown(value),
|
|
}
|
|
}
|
|
}
|
|
|
|
impl StaticType for VideoPrimariesMode {
|
|
fn static_type() -> Type {
|
|
unsafe { from_glib(ffi::gst_video_primaries_mode_get_type()) }
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValueOptional<'a> for VideoPrimariesMode {
|
|
unsafe fn from_value_optional(value: &glib::Value) -> Option<Self> {
|
|
Some(FromValue::from_value(value))
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValue<'a> for VideoPrimariesMode {
|
|
unsafe fn from_value(value: &glib::Value) -> Self {
|
|
from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
|
|
}
|
|
}
|
|
|
|
impl SetValue for VideoPrimariesMode {
|
|
unsafe fn set_value(value: &mut glib::Value, this: &Self) {
|
|
glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, this.to_glib())
|
|
}
|
|
}
|
|
|
|
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
|
|
#[non_exhaustive]
|
|
#[doc(alias = "GstVideoResamplerMethod")]
|
|
pub enum VideoResamplerMethod {
|
|
#[doc(alias = "GST_VIDEO_RESAMPLER_METHOD_NEAREST")]
|
|
Nearest,
|
|
#[doc(alias = "GST_VIDEO_RESAMPLER_METHOD_LINEAR")]
|
|
Linear,
|
|
#[doc(alias = "GST_VIDEO_RESAMPLER_METHOD_CUBIC")]
|
|
Cubic,
|
|
#[doc(alias = "GST_VIDEO_RESAMPLER_METHOD_SINC")]
|
|
Sinc,
|
|
#[doc(alias = "GST_VIDEO_RESAMPLER_METHOD_LANCZOS")]
|
|
Lanczos,
|
|
#[doc(hidden)]
|
|
__Unknown(i32),
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl ToGlib for VideoResamplerMethod {
|
|
type GlibType = ffi::GstVideoResamplerMethod;
|
|
|
|
fn to_glib(&self) -> ffi::GstVideoResamplerMethod {
|
|
match *self {
|
|
VideoResamplerMethod::Nearest => ffi::GST_VIDEO_RESAMPLER_METHOD_NEAREST,
|
|
VideoResamplerMethod::Linear => ffi::GST_VIDEO_RESAMPLER_METHOD_LINEAR,
|
|
VideoResamplerMethod::Cubic => ffi::GST_VIDEO_RESAMPLER_METHOD_CUBIC,
|
|
VideoResamplerMethod::Sinc => ffi::GST_VIDEO_RESAMPLER_METHOD_SINC,
|
|
VideoResamplerMethod::Lanczos => ffi::GST_VIDEO_RESAMPLER_METHOD_LANCZOS,
|
|
VideoResamplerMethod::__Unknown(value) => value,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl FromGlib<ffi::GstVideoResamplerMethod> for VideoResamplerMethod {
|
|
unsafe fn from_glib(value: ffi::GstVideoResamplerMethod) -> Self {
|
|
skip_assert_initialized!();
|
|
match value {
|
|
0 => VideoResamplerMethod::Nearest,
|
|
1 => VideoResamplerMethod::Linear,
|
|
2 => VideoResamplerMethod::Cubic,
|
|
3 => VideoResamplerMethod::Sinc,
|
|
4 => VideoResamplerMethod::Lanczos,
|
|
value => VideoResamplerMethod::__Unknown(value),
|
|
}
|
|
}
|
|
}
|
|
|
|
impl StaticType for VideoResamplerMethod {
|
|
fn static_type() -> Type {
|
|
unsafe { from_glib(ffi::gst_video_resampler_method_get_type()) }
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValueOptional<'a> for VideoResamplerMethod {
|
|
unsafe fn from_value_optional(value: &glib::Value) -> Option<Self> {
|
|
Some(FromValue::from_value(value))
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValue<'a> for VideoResamplerMethod {
|
|
unsafe fn from_value(value: &glib::Value) -> Self {
|
|
from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
|
|
}
|
|
}
|
|
|
|
impl SetValue for VideoResamplerMethod {
|
|
unsafe fn set_value(value: &mut glib::Value, this: &Self) {
|
|
glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, this.to_glib())
|
|
}
|
|
}
|
|
|
|
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
|
|
#[non_exhaustive]
|
|
#[doc(alias = "GstVideoTileMode")]
|
|
pub enum VideoTileMode {
|
|
#[doc(alias = "GST_VIDEO_TILE_MODE_UNKNOWN")]
|
|
Unknown,
|
|
#[doc(alias = "GST_VIDEO_TILE_MODE_ZFLIPZ_2X2")]
|
|
Zflipz2x2,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "GST_VIDEO_TILE_MODE_LINEAR")]
|
|
Linear,
|
|
#[doc(hidden)]
|
|
__Unknown(i32),
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl ToGlib for VideoTileMode {
|
|
type GlibType = ffi::GstVideoTileMode;
|
|
|
|
fn to_glib(&self) -> ffi::GstVideoTileMode {
|
|
match *self {
|
|
VideoTileMode::Unknown => ffi::GST_VIDEO_TILE_MODE_UNKNOWN,
|
|
VideoTileMode::Zflipz2x2 => ffi::GST_VIDEO_TILE_MODE_ZFLIPZ_2X2,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
VideoTileMode::Linear => ffi::GST_VIDEO_TILE_MODE_LINEAR,
|
|
VideoTileMode::__Unknown(value) => value,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl FromGlib<ffi::GstVideoTileMode> for VideoTileMode {
|
|
unsafe fn from_glib(value: ffi::GstVideoTileMode) -> Self {
|
|
skip_assert_initialized!();
|
|
match value {
|
|
0 => VideoTileMode::Unknown,
|
|
65536 => VideoTileMode::Zflipz2x2,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
131072 => VideoTileMode::Linear,
|
|
value => VideoTileMode::__Unknown(value),
|
|
}
|
|
}
|
|
}
|
|
|
|
impl StaticType for VideoTileMode {
|
|
fn static_type() -> Type {
|
|
unsafe { from_glib(ffi::gst_video_tile_mode_get_type()) }
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValueOptional<'a> for VideoTileMode {
|
|
unsafe fn from_value_optional(value: &glib::Value) -> Option<Self> {
|
|
Some(FromValue::from_value(value))
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValue<'a> for VideoTileMode {
|
|
unsafe fn from_value(value: &glib::Value) -> Self {
|
|
from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
|
|
}
|
|
}
|
|
|
|
impl SetValue for VideoTileMode {
|
|
unsafe fn set_value(value: &mut glib::Value, this: &Self) {
|
|
glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, this.to_glib())
|
|
}
|
|
}
|
|
|
|
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Clone, Copy)]
|
|
#[non_exhaustive]
|
|
#[doc(alias = "GstVideoTransferFunction")]
|
|
pub enum VideoTransferFunction {
|
|
#[doc(alias = "GST_VIDEO_TRANSFER_UNKNOWN")]
|
|
Unknown,
|
|
#[doc(alias = "GST_VIDEO_TRANSFER_GAMMA10")]
|
|
Gamma10,
|
|
#[doc(alias = "GST_VIDEO_TRANSFER_GAMMA18")]
|
|
Gamma18,
|
|
#[doc(alias = "GST_VIDEO_TRANSFER_GAMMA20")]
|
|
Gamma20,
|
|
#[doc(alias = "GST_VIDEO_TRANSFER_GAMMA22")]
|
|
Gamma22,
|
|
#[doc(alias = "GST_VIDEO_TRANSFER_BT709")]
|
|
Bt709,
|
|
#[doc(alias = "GST_VIDEO_TRANSFER_SMPTE240M")]
|
|
Smpte240m,
|
|
#[doc(alias = "GST_VIDEO_TRANSFER_SRGB")]
|
|
Srgb,
|
|
#[doc(alias = "GST_VIDEO_TRANSFER_GAMMA28")]
|
|
Gamma28,
|
|
#[doc(alias = "GST_VIDEO_TRANSFER_LOG100")]
|
|
Log100,
|
|
#[doc(alias = "GST_VIDEO_TRANSFER_LOG316")]
|
|
Log316,
|
|
#[doc(alias = "GST_VIDEO_TRANSFER_BT2020_12")]
|
|
Bt202012,
|
|
#[doc(alias = "GST_VIDEO_TRANSFER_ADOBERGB")]
|
|
Adobergb,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "GST_VIDEO_TRANSFER_BT2020_10")]
|
|
Bt202010,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "GST_VIDEO_TRANSFER_SMPTE2084")]
|
|
Smpte2084,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "GST_VIDEO_TRANSFER_ARIB_STD_B67")]
|
|
AribStdB67,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "GST_VIDEO_TRANSFER_BT601")]
|
|
Bt601,
|
|
#[doc(hidden)]
|
|
__Unknown(i32),
|
|
}
|
|
|
|
impl VideoTransferFunction {
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "gst_video_transfer_function_from_iso")]
|
|
pub fn from_iso(value: u32) -> VideoTransferFunction {
|
|
assert_initialized_main_thread!();
|
|
unsafe { from_glib(ffi::gst_video_transfer_function_from_iso(value)) }
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "gst_video_transfer_function_is_equivalent")]
|
|
pub fn is_equivalent(self, from_bpp: u32, to_func: VideoTransferFunction, to_bpp: u32) -> bool {
|
|
assert_initialized_main_thread!();
|
|
unsafe {
|
|
from_glib(ffi::gst_video_transfer_function_is_equivalent(
|
|
self.to_glib(),
|
|
from_bpp,
|
|
to_func.to_glib(),
|
|
to_bpp,
|
|
))
|
|
}
|
|
}
|
|
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
#[cfg_attr(feature = "dox", doc(cfg(feature = "v1_18")))]
|
|
#[doc(alias = "gst_video_transfer_function_to_iso")]
|
|
pub fn to_iso(self) -> u32 {
|
|
assert_initialized_main_thread!();
|
|
unsafe { ffi::gst_video_transfer_function_to_iso(self.to_glib()) }
|
|
}
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl ToGlib for VideoTransferFunction {
|
|
type GlibType = ffi::GstVideoTransferFunction;
|
|
|
|
fn to_glib(&self) -> ffi::GstVideoTransferFunction {
|
|
match *self {
|
|
VideoTransferFunction::Unknown => ffi::GST_VIDEO_TRANSFER_UNKNOWN,
|
|
VideoTransferFunction::Gamma10 => ffi::GST_VIDEO_TRANSFER_GAMMA10,
|
|
VideoTransferFunction::Gamma18 => ffi::GST_VIDEO_TRANSFER_GAMMA18,
|
|
VideoTransferFunction::Gamma20 => ffi::GST_VIDEO_TRANSFER_GAMMA20,
|
|
VideoTransferFunction::Gamma22 => ffi::GST_VIDEO_TRANSFER_GAMMA22,
|
|
VideoTransferFunction::Bt709 => ffi::GST_VIDEO_TRANSFER_BT709,
|
|
VideoTransferFunction::Smpte240m => ffi::GST_VIDEO_TRANSFER_SMPTE240M,
|
|
VideoTransferFunction::Srgb => ffi::GST_VIDEO_TRANSFER_SRGB,
|
|
VideoTransferFunction::Gamma28 => ffi::GST_VIDEO_TRANSFER_GAMMA28,
|
|
VideoTransferFunction::Log100 => ffi::GST_VIDEO_TRANSFER_LOG100,
|
|
VideoTransferFunction::Log316 => ffi::GST_VIDEO_TRANSFER_LOG316,
|
|
VideoTransferFunction::Bt202012 => ffi::GST_VIDEO_TRANSFER_BT2020_12,
|
|
VideoTransferFunction::Adobergb => ffi::GST_VIDEO_TRANSFER_ADOBERGB,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
VideoTransferFunction::Bt202010 => ffi::GST_VIDEO_TRANSFER_BT2020_10,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
VideoTransferFunction::Smpte2084 => ffi::GST_VIDEO_TRANSFER_SMPTE2084,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
VideoTransferFunction::AribStdB67 => ffi::GST_VIDEO_TRANSFER_ARIB_STD_B67,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
VideoTransferFunction::Bt601 => ffi::GST_VIDEO_TRANSFER_BT601,
|
|
VideoTransferFunction::__Unknown(value) => value,
|
|
}
|
|
}
|
|
}
|
|
|
|
#[doc(hidden)]
|
|
impl FromGlib<ffi::GstVideoTransferFunction> for VideoTransferFunction {
|
|
unsafe fn from_glib(value: ffi::GstVideoTransferFunction) -> Self {
|
|
skip_assert_initialized!();
|
|
match value {
|
|
0 => VideoTransferFunction::Unknown,
|
|
1 => VideoTransferFunction::Gamma10,
|
|
2 => VideoTransferFunction::Gamma18,
|
|
3 => VideoTransferFunction::Gamma20,
|
|
4 => VideoTransferFunction::Gamma22,
|
|
5 => VideoTransferFunction::Bt709,
|
|
6 => VideoTransferFunction::Smpte240m,
|
|
7 => VideoTransferFunction::Srgb,
|
|
8 => VideoTransferFunction::Gamma28,
|
|
9 => VideoTransferFunction::Log100,
|
|
10 => VideoTransferFunction::Log316,
|
|
11 => VideoTransferFunction::Bt202012,
|
|
12 => VideoTransferFunction::Adobergb,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
13 => VideoTransferFunction::Bt202010,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
14 => VideoTransferFunction::Smpte2084,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
15 => VideoTransferFunction::AribStdB67,
|
|
#[cfg(any(feature = "v1_18", feature = "dox"))]
|
|
16 => VideoTransferFunction::Bt601,
|
|
value => VideoTransferFunction::__Unknown(value),
|
|
}
|
|
}
|
|
}
|
|
|
|
impl StaticType for VideoTransferFunction {
|
|
fn static_type() -> Type {
|
|
unsafe { from_glib(ffi::gst_video_transfer_function_get_type()) }
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValueOptional<'a> for VideoTransferFunction {
|
|
unsafe fn from_value_optional(value: &glib::Value) -> Option<Self> {
|
|
Some(FromValue::from_value(value))
|
|
}
|
|
}
|
|
|
|
impl<'a> FromValue<'a> for VideoTransferFunction {
|
|
unsafe fn from_value(value: &glib::Value) -> Self {
|
|
from_glib(glib::gobject_ffi::g_value_get_enum(value.to_glib_none().0))
|
|
}
|
|
}
|
|
|
|
impl SetValue for VideoTransferFunction {
|
|
unsafe fn set_value(value: &mut glib::Value, this: &Self) {
|
|
glib::gobject_ffi::g_value_set_enum(value.to_glib_none_mut().0, this.to_glib())
|
|
}
|
|
}
|