Struct gstreamer_audio::AudioBaseSink
source · [−]#[repr(transparent)]pub struct AudioBaseSink { /* private fields */ }
Expand description
This is the base class for audio sinks. Subclasses need to implement the ::create_ringbuffer vmethod. This base class will then take care of writing samples to the ringbuffer, synchronisation, clipping and flushing.
Implements
AudioBaseSinkExt
, gst_base::prelude::BaseSinkExt
, gst::prelude::ElementExt
, gst::prelude::GstObjectExt
, glib::ObjectExt
Implementations
Trait Implementations
This method returns an ordering between self
and other
values if one exists. Read more
This method tests less than (for self
and other
) and is used by the <
operator. Read more
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
Returns the type identifier of Self
.
Auto Trait Implementations
Blanket Implementations
Get the number of bytes that the sink will pull when it is operating in pull mode. Read more
v1_12
only.Checks if self
is currently configured to drop buffers which are outside
the current segment Read more
Get the last sample that arrived in the sink and was used for preroll or for rendering. This property can be used to generate thumbnails. Read more
Get the maximum amount of bits per second that the sink will render. Read more
Gets the max lateness value. See set_max_lateness()
for
more details. Read more
v1_16
only.Get the processing deadline of self
. see
set_processing_deadline()
for more information about
the processing deadline. Read more
Get the render delay of self
. see set_render_delay()
for more
information about the render delay. Read more
v1_18
only.Return various BaseSink
statistics. This function returns a gst::Structure
with name application/x-gst-base-sink-stats
with the following fields: Read more
Checks if self
is currently configured to synchronize against the
clock. Read more
Get the time that will be inserted between frames to control the maximum buffers per second. Read more
Set the number of bytes that the sink will pull when it is operating in pull mode. Read more
v1_12
only.Configure self
to drop buffers which are outside the current segment Read more
Set the maximum amount of bits per second that the sink will render. Read more
Sets the new max lateness value to max_lateness
. This value is
used to decide if a buffer should be dropped or not based on the
buffer timestamp and the current clock time. A value of -1 means
an unlimited time. Read more
v1_16
only.Maximum amount of time (in nanoseconds) that the pipeline can take for processing the buffer. This is added to the latency of live pipelines. Read more
Set the render delay in self
to delay
. The render delay is the time
between actual rendering of a buffer and its synchronisation time. Some
devices might delay media rendering which can be compensated for with this
function. Read more
Set the time that will be inserted between rendered buffers. This can be used to control the maximum buffers per second that the sink will render. Read more
Adjust the synchronisation of self
with offset
. A negative value will
render buffers earlier than their timestamp. A positive value will delay
rendering. This function can be used to fix playback of badly timestamped
buffers. Read more
This function will wait for preroll to complete and will then block until time
is reached. It is usually called by subclasses that use their own internal
synchronisation but want to let some synchronization (like EOS) be handled
by the base class. Read more
pub fn connect_async_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Fn(&O) + Send + Sync,
pub fn connect_blocksize_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Fn(&O) + Send + Sync,
pub fn connect_enable_last_sample_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Fn(&O) + Send + Sync,
pub fn connect_last_sample_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Fn(&O) + Send + Sync,
pub fn connect_max_bitrate_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Fn(&O) + Send + Sync,
pub fn connect_max_lateness_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Fn(&O) + Send + Sync,
pub fn connect_processing_deadline_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Fn(&O) + Send + Sync,
pub fn connect_processing_deadline_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Fn(&O) + Send + Sync,
v1_16
only.pub fn connect_qos_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Fn(&O) + Send + Sync,
pub fn connect_render_delay_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Fn(&O) + Send + Sync,
pub fn connect_stats_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Fn(&O) + Send + Sync,
pub fn connect_stats_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Fn(&O) + Send + Sync,
v1_18
only.pub fn connect_sync_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Fn(&O) + Send + Sync,
pub fn connect_throttle_time_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Fn(&O) + Send + Sync,
pub fn connect_ts_offset_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Fn(&O) + Send + Sync,
Mutably borrows from an owned value. Read more
Upcasts an object to a superclass or interface T
. Read more
Upcasts an object to a reference of its superclass or interface T
. Read more
Tries to downcast to a subclass or interface implementor T
. Read more
Tries to downcast to a reference of its subclass or interface implementor T
. Read more
Tries to cast to an object of type T
. This handles upcasting, downcasting
and casting between interface and interface implementors. All checks are performed at
runtime, while downcast
and upcast
will do many checks at compile-time already. Read more
Tries to cast to reference to an object of type T
. This handles upcasting, downcasting
and casting between interface and interface implementors. All checks are performed at
runtime, while downcast
and upcast
will do many checks at compile-time already. Read more
Casts to T
unconditionally. Read more
Casts to &T
unconditionally. Read more
Abort the state change of the element. This function is used by elements that do asynchronous state changes and find out something is wrong. Read more
Adds a pad (link point) to self
. pad
’s parent will be set to self
;
see GstObjectExt::set_parent()
for refcounting information. Read more
pub fn change_state(
&self,
transition: StateChange
) -> Result<StateChangeSuccess, StateChangeError>
pub fn change_state(
&self,
transition: StateChange
) -> Result<StateChangeSuccess, StateChangeError>
Perform transition
on self
. Read more
pub fn continue_state(
&self,
ret: impl Into<StateChangeReturn>
) -> Result<StateChangeSuccess, StateChangeError>
pub fn continue_state(
&self,
ret: impl Into<StateChangeReturn>
) -> Result<StateChangeSuccess, StateChangeError>
Commit the state change of the element and proceed to the next
pending state if any. This function is used
by elements that do asynchronous state changes.
The core will normally call this method automatically when an
element returned StateChangeReturn::Success
from the state change function. Read more
v1_14
only.v1_14
only.v1_14
only.pub fn state(
&self,
timeout: impl Into<Option<ClockTime>>
) -> (Result<StateChangeSuccess, StateChangeError>, State, State)
pub fn link_pads(
&self,
srcpadname: Option<&str>,
dest: &impl IsA<Element>,
destpadname: Option<&str>
) -> Result<(), BoolError>
pub fn link_pads_filtered(
&self,
srcpadname: Option<&str>,
dest: &impl IsA<Element>,
destpadname: Option<&str>,
filter: &Caps
) -> Result<(), BoolError>
pub fn link_pads_full(
&self,
srcpadname: Option<&str>,
dest: &impl IsA<Element>,
destpadname: Option<&str>,
flags: PadLinkCheck
) -> Result<(), BoolError>
pub fn request_pad(
&self,
templ: &PadTemplate,
name: Option<&str>,
caps: Option<&Caps>
) -> Option<Pad>
pub fn connect_no_more_pads<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Fn(&O) + Send + Sync,
pub fn connect_pad_added<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Fn(&O, &Pad) + Send + Sync,
pub fn connect_pad_removed<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Fn(&O, &Pad) + Send + Sync,
Performs a query on the given element. Read more
Sends an event to an element. If the element doesn’t implement an event handler, the event will be pushed on a random linked sink pad for downstream events or a random linked source pad for upstream events. Read more
pub fn pad_template_list(&self) -> Vec<PadTemplate, Global>ⓘ
pub fn message_full<T>(
&self,
type_: ElementMessageType,
code: T,
message: Option<&str>,
debug: Option<&str>,
file: &str,
function: &str,
line: u32
) where
T: MessageErrorDomain,
pub fn message_full_with_details<T>(
&self,
type_: ElementMessageType,
code: T,
message: Option<&str>,
debug: Option<&str>,
file: &str,
function: &str,
line: u32,
structure: Structure
) where
T: MessageErrorDomain,
pub fn message_full_with_details<T>(
&self,
type_: ElementMessageType,
code: T,
message: Option<&str>,
debug: Option<&str>,
file: &str,
function: &str,
line: u32,
structure: Structure
) where
T: MessageErrorDomain,
v1_10
only.pub fn add_property_deep_notify_watch(
&self,
property_name: Option<&str>,
include_value: bool
) -> NotifyWatchId
pub fn add_property_deep_notify_watch(
&self,
property_name: Option<&str>,
include_value: bool
) -> NotifyWatchId
v1_10
only.pub fn add_property_notify_watch(
&self,
property_name: Option<&str>,
include_value: bool
) -> NotifyWatchId
pub fn add_property_notify_watch(
&self,
property_name: Option<&str>,
include_value: bool
) -> NotifyWatchId
v1_10
only.v1_10
only.pub fn query_convert<V, U>(&self, src_val: V) -> Option<U> where
V: Into<GenericFormattedValue>,
U: SpecificFormattedValue,
pub fn query_convert_generic<V>(
&self,
src_val: V,
dest_format: Format
) -> Option<GenericFormattedValue> where
V: Into<GenericFormattedValue>,
pub fn seek<V>(
&self,
rate: f64,
flags: SeekFlags,
start_type: SeekType,
start: V,
stop_type: SeekType,
stop: V
) -> Result<(), BoolError> where
V: Into<GenericFormattedValue>,
pub fn seek_simple<V>(
&self,
seek_flags: SeekFlags,
seek_pos: V
) -> Result<(), BoolError> where
V: Into<GenericFormattedValue>,
v1_10
only.v1_10
only.pub fn add_control_binding(
&self,
binding: &impl IsA<ControlBinding>
) -> Result<(), BoolError>
pub fn add_control_binding(
&self,
binding: &impl IsA<ControlBinding>
) -> Result<(), BoolError>
Attach the ControlBinding
to the object. If there already was a
ControlBinding
for this property it will be replaced. Read more
A default error function that uses g_printerr()
to display the error message
and the optional debug string.. Read more
Gets the corresponding ControlBinding
for the property. This should be
unreferenced again after use. Read more
Obtain the control-rate for this self
. Audio processing Element
objects will use this rate to sub-divide their processing loop and call
sync_values()
in between. The length of the processing segment
should be up to control
-rate nanoseconds. Read more
Returns the parent of self
. This function increases the refcount
of the parent object so you should gst_object_unref()
it after usage. Read more
Generates a string describing the path of self
in
the object hierarchy. Only useful (or used) for debugging. Read more
Gets the value for the given controlled property at the requested time. Read more
pub fn connect_parent_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Fn(&O) + Send + Sync,
pub fn connect_deep_notify<F>(
&self,
name: Option<&str>,
f: F
) -> SignalHandlerId where
F: 'static + Fn(&O, &Object, &ParamSpec) + Send + Sync,
pub fn parent_class_init<T>(class: &mut Class<U>) where
T: ObjectSubclass,
<U as ParentClassIs>::Parent: IsSubclassable<T>,
pub fn parent_instance_init<T>(instance: &mut InitializingObject<T>) where
T: ObjectSubclass,
<U as ParentClassIs>::Parent: IsSubclassable<T>,
Returns true
if the object is an instance of (can be cast to) T
.
Returns the ObjectClass
of the object. Read more
Returns the class of the object in the given type T
. Read more
Returns the interface T
of the object. Read more
Similar to Self::set_property
but fails instead of panicking.
Sets the property property_name
of the object to value value
. Read more
Similar to Self::set_property
but fails instead of panicking.
Sets the property property_name
of the object to value value
. Read more
Similar to Self::set_properties
but fails instead of panicking.
Sets multiple properties of the object at once. Read more
Similar to Self::set_properties_from_value
but fails instead of panicking.
Sets multiple properties of the object at once. Read more
Similar to Self::property
but fails instead of panicking.
Gets the property property_name
of the object and cast it to the type V. Read more
Similar to Self::property_value
but fails instead of panicking.
Gets the property property_name
of the object. Read more
Check if the object has a property property_name
of the given type_
. Read more
Get the type of the property property_name
of this object. Read more
Get the ParamSpec
of the property property_name
of this object.
Return all ParamSpec
of the properties of this object.
Freeze all property notifications until the return guard object is dropped. Read more
Set arbitrary data on this object with the given key
. Read more
Return previously set arbitrary data of this object with the given key
. Read more
Retrieve previously set arbitrary data of this object with the given key
. Read more
Set arbitrary data on this object with the given key
. Read more
Return previously set arbitrary data of this object with the given key
. Read more
Retrieve previously set arbitrary data of this object with the given key
. Read more
Block a given signal handler. Read more
Unblock a given signal handler.
Stop emission of the currently emitted signal.
Stop emission of the currently emitted signal by the (possibly detailed) signal name.
Similar to Self::connect
but fails instead of panicking.
Connect to the signal signal_name
on this object. Read more
Similar to Self::connect_id
but fails instead of panicking.
Connect to the signal signal_id
on this object. Read more
Similar to Self::connect_local
but fails instead of panicking.
Connect to the signal signal_name
on this object. Read more
Similar to Self::connect_local_id
but fails instead of panicking.
Connect to the signal signal_id
on this object. Read more
Similar to Self::connect_unsafe
but fails instead of panicking.
Connect to the signal signal_name
on this object. Read more
Similar to Self::connect_unsafe_id
but fails instead of panicking.
pub fn try_connect_closure(
&self,
signal_name: &str,
after: bool,
closure: RustClosure
) -> Result<SignalHandlerId, BoolError>
pub fn try_connect_closure(
&self,
signal_name: &str,
after: bool,
closure: RustClosure
) -> Result<SignalHandlerId, BoolError>
Similar to Self::connect_closure
but fails instead of panicking.
pub fn connect_closure(
&self,
signal_name: &str,
after: bool,
closure: RustClosure
) -> SignalHandlerId
pub fn connect_closure(
&self,
signal_name: &str,
after: bool,
closure: RustClosure
) -> SignalHandlerId
Connect a closure to the signal signal_name
on this object. Read more
pub fn try_connect_closure_id(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
closure: RustClosure
) -> Result<SignalHandlerId, BoolError>
pub fn try_connect_closure_id(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
closure: RustClosure
) -> Result<SignalHandlerId, BoolError>
Similar to Self::connect_closure_id
but fails instead of panicking.
pub fn connect_closure_id(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
closure: RustClosure
) -> SignalHandlerId
pub fn connect_closure_id(
&self,
signal_id: SignalId,
details: Option<Quark>,
after: bool,
closure: RustClosure
) -> SignalHandlerId
Connect a closure to the signal signal_id
on this object. Read more
Limits the lifetime of closure
to the lifetime of the object. When
the object’s reference count drops to zero, the closure will be
invalidated. An invalidated closure will ignore any calls to
Closure::invoke
. Read more
Connect to the signal signal_id
on this object. Read more
Similar to Self::emit
but fails instead of panicking.
Emit signal by signal id. Read more
Similar to Self::emit_with_values
but fails instead of panicking.
Same as Self::emit
but takes Value
for the arguments.
pub fn try_emit_by_name<R>(
&self,
signal_name: &str,
args: &[&dyn ToValue]
) -> Result<R, BoolError> where
R: TryFromClosureReturnValue,
pub fn try_emit_by_name<R>(
&self,
signal_name: &str,
args: &[&dyn ToValue]
) -> Result<R, BoolError> where
R: TryFromClosureReturnValue,
Similar to Self::emit_by_name
but fails instead of panicking.
pub fn emit_by_name<R>(&self, signal_name: &str, args: &[&dyn ToValue]) -> R where
R: TryFromClosureReturnValue,
pub fn emit_by_name<R>(&self, signal_name: &str, args: &[&dyn ToValue]) -> R where
R: TryFromClosureReturnValue,
Emit signal by its name. Read more
Similar to Self::emit_by_name_with_values
but fails instead of panicking.
Emit signal by its name. Read more
pub fn try_emit_by_name_with_details<R>(
&self,
signal_name: &str,
details: Quark,
args: &[&dyn ToValue]
) -> Result<R, BoolError> where
R: TryFromClosureReturnValue,
pub fn try_emit_by_name_with_details<R>(
&self,
signal_name: &str,
details: Quark,
args: &[&dyn ToValue]
) -> Result<R, BoolError> where
R: TryFromClosureReturnValue,
Similar to Self::emit_by_name_with_details
but fails instead of panicking.
pub fn emit_by_name_with_details<R>(
&self,
signal_name: &str,
details: Quark,
args: &[&dyn ToValue]
) -> R where
R: TryFromClosureReturnValue,
pub fn emit_by_name_with_details<R>(
&self,
signal_name: &str,
details: Quark,
args: &[&dyn ToValue]
) -> R where
R: TryFromClosureReturnValue,
Emit signal by its name with details. Read more
Similar to Self::emit_by_name_with_details_and_values
but fails instead of panicking.
Emit signal by its name with details. Read more
pub fn try_emit_with_details<R>(
&self,
signal_id: SignalId,
details: Quark,
args: &[&dyn ToValue]
) -> Result<R, BoolError> where
R: TryFromClosureReturnValue,
pub fn try_emit_with_details<R>(
&self,
signal_id: SignalId,
details: Quark,
args: &[&dyn ToValue]
) -> Result<R, BoolError> where
R: TryFromClosureReturnValue,
Similar to Self::emit_with_details
but fails instead of panicking.
pub fn emit_with_details<R>(
&self,
signal_id: SignalId,
details: Quark,
args: &[&dyn ToValue]
) -> R where
R: TryFromClosureReturnValue,
pub fn emit_with_details<R>(
&self,
signal_id: SignalId,
details: Quark,
args: &[&dyn ToValue]
) -> R where
R: TryFromClosureReturnValue,
Emit signal by signal id with details. Read more
Similar to Self::emit_with_details_and_values
but fails instead of panicking.
Emit signal by signal id with details. Read more
Disconnect a previously connected signal handler.
pub fn connect_notify<F>(&self, name: Option<&str>, f: F) -> SignalHandlerId where
F: 'static + Fn(&T, &ParamSpec) + Send + Sync,
pub fn connect_notify<F>(&self, name: Option<&str>, f: F) -> SignalHandlerId where
F: 'static + Fn(&T, &ParamSpec) + Send + Sync,
Connect to the notify
signal of the object. Read more
pub fn connect_notify_local<F>(
&self,
name: Option<&str>,
f: F
) -> SignalHandlerId where
F: 'static + Fn(&T, &ParamSpec),
pub fn connect_notify_local<F>(
&self,
name: Option<&str>,
f: F
) -> SignalHandlerId where
F: 'static + Fn(&T, &ParamSpec),
Connect to the notify
signal of the object. Read more
pub unsafe fn connect_notify_unsafe<F>(
&self,
name: Option<&str>,
f: F
) -> SignalHandlerId where
F: Fn(&T, &ParamSpec),
pub unsafe fn connect_notify_unsafe<F>(
&self,
name: Option<&str>,
f: F
) -> SignalHandlerId where
F: Fn(&T, &ParamSpec),
Connect to the notify
signal of the object. Read more
Notify that the given property has changed its value. Read more
Notify that the given property has changed its value. Read more
pub fn bind_property<O>(
&'a self,
source_property: &'a str,
target: &'a O,
target_property: &'a str
) -> BindingBuilder<'a> where
O: ObjectType,
pub fn bind_property<O>(
&'a self,
source_property: &'a str,
target: &'a O,
target_property: &'a str
) -> BindingBuilder<'a> where
O: ObjectType,
Bind property source_property
on this object to the target_property
on the target
object. Read more
Ensures that the type has been registered with the type system.
Returns a SendValue
clone of self
.