forked from mirrors/gstreamer-rs
Correctly generate VideoOverlayFormatFlags as flags
This commit is contained in:
parent
30b9527112
commit
9265cc8232
4 changed files with 34 additions and 42 deletions
|
@ -9411,7 +9411,7 @@ contained in the rectangles are not copied.</doc>
|
|||
</return-value>
|
||||
</function>
|
||||
</record>
|
||||
<enumeration name="VideoOverlayFormatFlags"
|
||||
<bitfield name="VideoOverlayFormatFlags"
|
||||
c:type="GstVideoOverlayFormatFlags">
|
||||
<doc xml:space="preserve">Overlay format flags.</doc>
|
||||
<member name="none"
|
||||
|
@ -9429,7 +9429,7 @@ contained in the rectangles are not copied.</doc>
|
|||
c:identifier="GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA">
|
||||
<doc xml:space="preserve">a global-alpha value != 1 is set.</doc>
|
||||
</member>
|
||||
</enumeration>
|
||||
</bitfield>
|
||||
<record name="VideoOverlayInterface"
|
||||
c:type="GstVideoOverlayInterface"
|
||||
glib:is-gtype-struct-for="VideoOverlay">
|
||||
|
@ -11582,11 +11582,15 @@ gst_buffer_add_video_meta_full() with them.</doc>
|
|||
</parameter>
|
||||
<parameter name="offset" transfer-ownership="none">
|
||||
<doc xml:space="preserve">offset of each plane</doc>
|
||||
<array zero-terminated="0" c:type="gsize*" fixed-size="4">
|
||||
<type name="gsize" c:type="gsize"/>
|
||||
</array>
|
||||
</parameter>
|
||||
<parameter name="stride" transfer-ownership="none">
|
||||
<doc xml:space="preserve">stride of each plane</doc>
|
||||
<array zero-terminated="0" c:type="gint*" fixed-size="4">
|
||||
<type name="gint" c:type="gint"/>
|
||||
</array>
|
||||
</parameter>
|
||||
</parameters>
|
||||
</function>
|
||||
|
|
|
@ -764,43 +764,6 @@ impl SetValue for VideoMultiviewMode {
|
|||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash)]
|
||||
#[derive(Clone, Copy)]
|
||||
pub enum VideoOverlayFormatFlags {
|
||||
None,
|
||||
PremultipliedAlpha,
|
||||
GlobalAlpha,
|
||||
#[doc(hidden)]
|
||||
__Unknown(i32),
|
||||
}
|
||||
|
||||
#[doc(hidden)]
|
||||
impl ToGlib for VideoOverlayFormatFlags {
|
||||
type GlibType = ffi::GstVideoOverlayFormatFlags;
|
||||
|
||||
fn to_glib(&self) -> ffi::GstVideoOverlayFormatFlags {
|
||||
match *self {
|
||||
VideoOverlayFormatFlags::None => ffi::GST_VIDEO_OVERLAY_FORMAT_FLAG_NONE,
|
||||
VideoOverlayFormatFlags::PremultipliedAlpha => ffi::GST_VIDEO_OVERLAY_FORMAT_FLAG_PREMULTIPLIED_ALPHA,
|
||||
VideoOverlayFormatFlags::GlobalAlpha => ffi::GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA,
|
||||
VideoOverlayFormatFlags::__Unknown(value) => value
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[doc(hidden)]
|
||||
impl FromGlib<ffi::GstVideoOverlayFormatFlags> for VideoOverlayFormatFlags {
|
||||
fn from_glib(value: ffi::GstVideoOverlayFormatFlags) -> Self {
|
||||
skip_assert_initialized!();
|
||||
match value {
|
||||
0 => VideoOverlayFormatFlags::None,
|
||||
1 => VideoOverlayFormatFlags::PremultipliedAlpha,
|
||||
2 => VideoOverlayFormatFlags::GlobalAlpha,
|
||||
value => VideoOverlayFormatFlags::__Unknown(value),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Eq, PartialEq, Ord, PartialOrd, Hash)]
|
||||
#[derive(Clone, Copy)]
|
||||
pub enum VideoTileMode {
|
||||
|
|
|
@ -278,3 +278,28 @@ impl SetValue for VideoMultiviewFlags {
|
|||
}
|
||||
}
|
||||
|
||||
bitflags! {
|
||||
pub struct VideoOverlayFormatFlags: u32 {
|
||||
const NONE = 0;
|
||||
const PREMULTIPLIED_ALPHA = 1;
|
||||
const GLOBAL_ALPHA = 2;
|
||||
}
|
||||
}
|
||||
|
||||
#[doc(hidden)]
|
||||
impl ToGlib for VideoOverlayFormatFlags {
|
||||
type GlibType = ffi::GstVideoOverlayFormatFlags;
|
||||
|
||||
fn to_glib(&self) -> ffi::GstVideoOverlayFormatFlags {
|
||||
self.bits()
|
||||
}
|
||||
}
|
||||
|
||||
#[doc(hidden)]
|
||||
impl FromGlib<ffi::GstVideoOverlayFormatFlags> for VideoOverlayFormatFlags {
|
||||
fn from_glib(value: ffi::GstVideoOverlayFormatFlags) -> VideoOverlayFormatFlags {
|
||||
skip_assert_initialized!();
|
||||
VideoOverlayFormatFlags::from_bits_truncate(value)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -18,7 +18,6 @@ pub use self::enums::VideoFormat;
|
|||
pub use self::enums::VideoInterlaceMode;
|
||||
pub use self::enums::VideoMultiviewFramePacking;
|
||||
pub use self::enums::VideoMultiviewMode;
|
||||
pub use self::enums::VideoOverlayFormatFlags;
|
||||
pub use self::enums::VideoTileMode;
|
||||
pub use self::enums::VideoTransferFunction;
|
||||
|
||||
|
@ -28,6 +27,7 @@ pub use self::flags::VideoFlags;
|
|||
pub use self::flags::VideoFormatFlags;
|
||||
pub use self::flags::VideoFrameFlags;
|
||||
pub use self::flags::VideoMultiviewFlags;
|
||||
pub use self::flags::VideoOverlayFormatFlags;
|
||||
|
||||
#[doc(hidden)]
|
||||
pub mod traits {
|
||||
|
|
Loading…
Reference in a new issue