[−][src]Struct gstreamer::BufferFlags
A set of buffer flags used to describe properties of a Buffer
.
Implementations
impl BufferFlags
[src][−]
pub const LIVE: BufferFlags
[src][−][−]
the buffer is live data and should be discarded in the PAUSED state.
pub const DECODE_ONLY: BufferFlags
[src][−][−]
the buffer contains data that should be dropped because it will be clipped against the segment boundaries or because it does not contain data that should be shown to the user.
pub const DISCONT: BufferFlags
[src][−][−]
the buffer marks a data discontinuity in the stream. This typically occurs after a seek or a dropped buffer from a live or network source.
pub const RESYNC: BufferFlags
[src][−][−]
the buffer timestamps might have a discontinuity and this buffer is a good point to resynchronize.
pub const CORRUPTED: BufferFlags
[src][−][−]
the buffer data is corrupted.
pub const MARKER: BufferFlags
[src][−][−]
the buffer contains a media specific marker. for video this is the end of a frame boundary, for audio this is the start of a talkspurt.
pub const HEADER: BufferFlags
[src][−][−]
the buffer contains header information that is needed to decode the following data.
pub const GAP: BufferFlags
[src][−][−]
the buffer has been created to fill a gap in the stream and contains media neutral data (elements can switch to optimized code path that ignores the buffer content).
pub const DROPPABLE: BufferFlags
[src][−][−]
the buffer can be dropped without breaking the stream, for example to reduce bandwidth.
pub const DELTA_UNIT: BufferFlags
[src][−][−]
this unit cannot be decoded independently.
pub const TAG_MEMORY: BufferFlags
[src][−][−]
this flag is set when memory of the buffer is added/removed
pub const SYNC_AFTER: BufferFlags
[src][−][−]
Elements which write to disk or permanent storage should ensure the data is synced after writing the contents of this buffer. (Since: 1.6)
pub const NON_DROPPABLE: BufferFlags
[src][−][−]
This buffer is important and should not be dropped. This can be used to mark important buffers, e.g. to flag RTP packets carrying keyframes or codec setup data for RTP Forward Error Correction purposes, or to prevent still video frames from being dropped by elements due to QoS. (Since: 1.14)
pub const fn empty() -> BufferFlags
[src][−]
Returns an empty set of flags
pub const fn all() -> BufferFlags
[src][−]
Returns the set containing all flags.
pub const fn bits(&self) -> u32
[src][−]
Returns the raw value of the flags currently stored.
pub fn from_bits(bits: u32) -> Option<BufferFlags>
[src][−]
Convert from underlying bit representation, unless that representation contains bits that do not correspond to a flag.
pub const fn from_bits_truncate(bits: u32) -> BufferFlags
[src][−]
Convert from underlying bit representation, dropping any bits that do not correspond to flags.
pub const unsafe fn from_bits_unchecked(bits: u32) -> BufferFlags
[src][−]
Convert from underlying bit representation, preserving all bits (even those not corresponding to a defined flag).
pub const fn is_empty(&self) -> bool
[src][−]
Returns true
if no flags are currently stored.
pub const fn is_all(&self) -> bool
[src][−]
Returns true
if all flags are currently set.
pub const fn intersects(&self, other: BufferFlags) -> bool
[src][−]
Returns true
if there are flags common to both self
and other
.
pub const fn contains(&self, other: BufferFlags) -> bool
[src][−]
Returns true
all of the flags in other
are contained within self
.
pub fn insert(&mut self, other: BufferFlags)
[src][−]
Inserts the specified flags in-place.
pub fn remove(&mut self, other: BufferFlags)
[src][−]
Removes the specified flags in-place.
pub fn toggle(&mut self, other: BufferFlags)
[src][−]
Toggles the specified flags in-place.
pub fn set(&mut self, other: BufferFlags, value: bool)
[src][−]
Inserts or removes the specified flags depending on the passed value.
Trait Implementations
impl Binary for BufferFlags
[src][+]
impl BitAnd<BufferFlags> for BufferFlags
[src][+]
impl BitAndAssign<BufferFlags> for BufferFlags
[src][+]
impl BitOr<BufferFlags> for BufferFlags
[src][+]
impl BitOrAssign<BufferFlags> for BufferFlags
[src][+]
impl BitXor<BufferFlags> for BufferFlags
[src][+]
impl BitXorAssign<BufferFlags> for BufferFlags
[src][+]
impl Clone for BufferFlags
[src][+]
impl Copy for BufferFlags
[src]
impl Debug for BufferFlags
[src][+]
impl<'de> Deserialize<'de> for BufferFlags
[src][+]
impl Eq for BufferFlags
[src]
impl Extend<BufferFlags> for BufferFlags
[src][+]
impl FromIterator<BufferFlags> for BufferFlags
[src][+]
impl<'a> FromValue<'a> for BufferFlags
[src][+]
impl<'a> FromValueOptional<'a> for BufferFlags
[src][+]
impl Hash for BufferFlags
[src][+]
impl LowerHex for BufferFlags
[src][+]
impl Not for BufferFlags
[src][+]
impl Octal for BufferFlags
[src][+]
impl Ord for BufferFlags
[src][+]
impl PartialEq<BufferFlags> for BufferFlags
[src][+]
impl PartialOrd<BufferFlags> for BufferFlags
[src][+]
impl Serialize for BufferFlags
[src][+]
impl SetValue for BufferFlags
[src][+]
impl StaticType for BufferFlags
[src][+]
impl StructuralEq for BufferFlags
[src]
impl StructuralPartialEq for BufferFlags
[src]
impl Sub<BufferFlags> for BufferFlags
[src][+]
impl SubAssign<BufferFlags> for BufferFlags
[src][+]
impl UpperHex for BufferFlags
[src][+]
Auto Trait Implementations
impl RefUnwindSafe for BufferFlags
impl Send for BufferFlags
impl Sync for BufferFlags
impl Unpin for BufferFlags
impl UnwindSafe for BufferFlags
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src][+]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<T> From<T> for T
[src][+]
impl<T, U> Into<U> for T where
U: From<T>,
[src][+]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src][+]
T: Clone,
impl<T> ToSendValue for T where
T: ToValue + SetValue + Send + ?Sized,
[src][+]
T: ToValue + SetValue + Send + ?Sized,
impl<T> ToValue for T where
T: SetValue + ?Sized,
[src][+]
T: SetValue + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src][+]
U: Into<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,