#[non_exhaustive]pub enum EventType {
Show 32 variants
Unknown,
FlushStart,
FlushStop,
StreamStart,
Caps,
Segment,
StreamCollection,
Tag,
Buffersize,
SinkMessage,
StreamGroupDone,
Eos,
Toc,
Protection,
SegmentDone,
Gap,
InstantRateChange,
Qos,
Seek,
Navigation,
Latency,
Step,
Reconfigure,
TocSelect,
SelectStreams,
InstantRateSyncTime,
CustomUpstream,
CustomDownstream,
CustomDownstreamOob,
CustomDownstreamSticky,
CustomBoth,
CustomBothOob,
}
Expand description
EventType
lists the standard event types that can be sent in a pipeline.
The custom event types can be used for private messages between elements
that can’t be expressed using normal
GStreamer buffer passing semantics. Custom events carry an arbitrary
Structure
.
Specific custom events are distinguished by the name of the structure.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Unknown
unknown event.
FlushStart
Start a flush operation. This event clears all data from the pipeline and unblock all streaming threads.
FlushStop
Stop a flush operation. This event resets the running-time of the pipeline.
StreamStart
Event to mark the start of a new stream. Sent before any other serialized event and only sent at the start of a new stream, not after flushing seeks.
Caps
Caps
event. Notify the pad of a new media type.
Segment
A new media segment follows in the dataflow. The segment events contains information for clipping buffers and converting buffer timestamps to running-time and stream-time.
StreamCollection
A new StreamCollection
is available (Since: 1.10)
Tag
A new set of metadata tags has been found in the stream.
Buffersize
Notification of buffering requirements. Currently not used yet.
SinkMessage
An event that sinks turn into a message. Used to send messages that should be emitted in sync with rendering.
StreamGroupDone
Indicates that there is no more data for the stream group ID in the message. Sent before EOS in some instances and should be handled mostly the same. (Since: 1.10)
Eos
End-Of-Stream. No more data is to be expected to follow without either a STREAM_START event, or a FLUSH_STOP and a SEGMENT event.
Toc
An event which indicates that a new table of contents (TOC) was found or updated.
Protection
An event which indicates that new or updated encryption information has been found in the stream.
SegmentDone
Marks the end of a segment playback.
Gap
Marks a gap in the datastream.
InstantRateChange
Notify downstream that a playback rate override should be applied as soon as possible. (Since: 1.18)
Qos
A quality message. Used to indicate to upstream elements that the downstream elements should adjust their processing rate.
Seek
A request for a new playback position and rate.
Navigation events are usually used for communicating user requests, such as mouse or keyboard movements, to upstream elements.
Latency
Notification of new latency adjustment. Sinks will use the latency information to adjust their synchronisation.
Step
A request for stepping through the media. Sinks will usually execute the step operation.
Reconfigure
A request for upstream renegotiating caps and reconfiguring.
TocSelect
A request for a new playback position based on TOC entry’s UID.
SelectStreams
A request to select one or more streams (Since: 1.10)
InstantRateSyncTime
Sent by the pipeline to notify elements that handle the instant-rate-change event about the running-time when the rate multiplier should be applied (or was applied). (Since: 1.18)
CustomUpstream
Upstream custom event
CustomDownstream
Downstream custom event that travels in the data flow.
CustomDownstreamOob
Custom out-of-band downstream event.
CustomDownstreamSticky
Custom sticky downstream event.
CustomBoth
Custom upstream or downstream event. In-band when travelling downstream.
CustomBothOob
Custom upstream or downstream out-of-band event.
Implementations§
source§impl EventType
impl EventType
pub fn is_upstream(self) -> bool
pub fn is_downstream(self) -> bool
pub fn is_serialized(self) -> bool
pub fn is_sticky(self) -> bool
pub fn is_sticky_multi(self) -> bool
Trait Implementations§
source§impl<'a> FromValue<'a> for EventType
impl<'a> FromValue<'a> for EventType
§type Checker = GenericValueTypeChecker<EventType>
type Checker = GenericValueTypeChecker<EventType>
source§unsafe fn from_value(value: &'a Value) -> Self
unsafe fn from_value(value: &'a Value) -> Self
Value
. Read moresource§impl HasParamSpec for EventType
impl HasParamSpec for EventType
source§impl PartialOrd for EventType
impl PartialOrd for EventType
source§impl StaticType for EventType
impl StaticType for EventType
source§fn static_type() -> Type
fn static_type() -> Type
Self
.impl Copy for EventType
impl Eq for EventType
impl StructuralPartialEq for EventType
Auto Trait Implementations§
impl Freeze for EventType
impl RefUnwindSafe for EventType
impl Send for EventType
impl Sync for EventType
impl Unpin for EventType
impl UnwindSafe for EventType
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)source§impl<T> IntoClosureReturnValue for T
impl<T> IntoClosureReturnValue for T
fn into_closure_return_value(self) -> Option<Value>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§impl<T> PropertyGet for Twhere
T: HasParamSpec,
impl<T> PropertyGet for Twhere
T: HasParamSpec,
source§impl<T> StaticTypeExt for Twhere
T: StaticType,
impl<T> StaticTypeExt for Twhere
T: StaticType,
source§fn ensure_type()
fn ensure_type()
source§impl<T> ToSendValue for T
impl<T> ToSendValue for T
source§fn to_send_value(&self) -> SendValue
fn to_send_value(&self) -> SendValue
SendValue
clone of self
.