[−][src]Trait gstreamer_app::prelude::GstObjectExt
Trait containing all Object methods.
Implementors
Allocator, BufferPool, Bus, Clock, DeviceMonitor, DeviceProvider, Device, Element, Object, PadTemplate, Pad, PluginFeature, Plugin, Registry, StreamCollection, Stream
Required methods
fn default_error(&self, error: &Error, debug: Option<&str>)
A default error function that uses g_printerr to display the error message
and the optional debug string..
The default handler will simply print the error string using g_print.
error
the GError.
debug
an additional debug information string, or None
fn get_control_rate(&self) -> ClockTime
Obtain the control-rate for this self. Audio processing Element
objects will use this rate to sub-divide their processing loop and call
GstObjectExt::sync_values in between. The length of the processing segment
should be up to control-rate nanoseconds.
If the self is not under property control, this will return
GST_CLOCK_TIME_NONE. This allows the element to avoid the sub-dividing.
The control-rate is not expected to change if the element is in
State::Paused or State::Playing.
Returns
the control rate in nanoseconds
fn get_name(&self) -> GString
Returns a copy of the name of self.
Caller should g_free the return value after usage.
For a nameless object, this returns None, which you can safely g_free
as well.
Free-function: g_free
Returns
the name of self. g_free
after usage.
MT safe. This function grabs and releases self's LOCK.
fn get_parent(&self) -> Option<Object>
Returns the parent of self. This function increases the refcount
of the parent object so you should GstObjectExt::unref it after usage.
Returns
parent of self, this can be
None if self has no parent. unref after usage.
MT safe. Grabs and releases self's LOCK.
fn get_path_string(&self) -> GString
Generates a string describing the path of self in
the object hierarchy. Only useful (or used) for debugging.
Free-function: g_free
Returns
a string describing the path of self. You must
g_free the string after usage.
MT safe. Grabs and releases the Object's LOCK for all objects
in the hierarchy.
fn has_active_control_bindings(&self) -> bool
Check if the self has active controlled properties.
Returns
true if the object has active controlled properties
fn has_ancestor<P>(&self, ancestor: &P) -> bool where
P: IsA<Object>,
P: IsA<Object>,
Check if self has an ancestor ancestor somewhere up in
the hierarchy. One can e.g. check if a Element is inside a Pipeline.
Deprecated
Use GstObjectExt::has_as_ancestor instead.
MT safe. Grabs and releases self's locks.
ancestor
a Object to check as ancestor
Returns
true if ancestor is an ancestor of self.
fn has_as_ancestor<P>(&self, ancestor: &P) -> bool where
P: IsA<Object>,
P: IsA<Object>,
Check if self has an ancestor ancestor somewhere up in
the hierarchy. One can e.g. check if a Element is inside a Pipeline.
ancestor
a Object to check as ancestor
Returns
true if ancestor is an ancestor of self.
MT safe. Grabs and releases self's locks.
fn has_as_parent<P>(&self, parent: &P) -> bool where
P: IsA<Object>,
P: IsA<Object>,
Check if parent is the parent of self.
E.g. a Element can check if it owns a given Pad.
parent
a Object to check as parent
Returns
false if either self or parent is None. true if parent is
the parent of self. Otherwise false.
MT safe. Grabs and releases self's locks.
fn set_control_binding_disabled(&self, property_name: &str, disabled: bool)
This function is used to disable the control bindings on a property for
some time, i.e. GstObjectExt::sync_values will do nothing for the
property.
property_name
property to disable
disabled
boolean that specifies whether to disable the controller or not.
fn set_control_bindings_disabled(&self, disabled: bool)
This function is used to disable all controlled properties of the self for
some time, i.e. GstObjectExt::sync_values will do nothing.
disabled
boolean that specifies whether to disable the controller or not.
fn set_control_rate(&self, control_rate: ClockTime)
Change the control-rate for this self. Audio processing Element
objects will use this rate to sub-divide their processing loop and call
GstObjectExt::sync_values in between. The length of the processing segment
should be up to control-rate nanoseconds.
The control-rate should not change if the element is in State::Paused or
State::Playing.
control_rate
the new control-rate in nanoseconds.
fn set_parent<P>(&self, parent: &P) -> Result<(), BoolError> where
P: IsA<Object>,
P: IsA<Object>,
Sets the parent of self to parent. The object's reference count will
be incremented, and any floating reference will be removed (see Object::ref_sink).
parent
new parent of object
Returns
true if parent could be set or false when self
already had a parent or self and parent are the same.
MT safe. Grabs and releases self's LOCK.
fn suggest_next_sync(&self) -> ClockTime
Returns a suggestion for timestamps where buffers should be split to get best controller results.
Returns
Returns the suggested timestamp or GST_CLOCK_TIME_NONE
if no control-rate was set.
fn sync_values(&self, timestamp: ClockTime) -> Result<(), BoolError>
Sets the properties of the object, according to the GstControlSources that
(maybe) handle them and for the given timestamp.
If this function fails, it is most likely the application developers fault. Most probably the control sources are not setup correctly.
timestamp
the time that should be processed
Returns
true if the controller values could be applied to the object
properties, false otherwise
fn unparent(&self)
Clear the parent of self, removing the associated reference.
This function decreases the refcount of self.
MT safe. Grabs and releases self's lock.
fn connect_property_parent_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Send + Sync + Fn(&Self),
F: 'static + Send + Sync + Fn(&Self),
Implementors
impl<O> GstObjectExt for O where
O: IsA<Object>, [src]
O: IsA<Object>,
fn default_error(&self, error: &Error, debug: Option<&str>)[src]
fn get_control_rate(&self) -> ClockTime[src]
fn get_name(&self) -> GString[src]
fn get_parent(&self) -> Option<Object>[src]
fn get_path_string(&self) -> GString[src]
fn has_active_control_bindings(&self) -> bool[src]
fn has_ancestor<P>(&self, ancestor: &P) -> bool where
P: IsA<Object>, [src]
P: IsA<Object>,
fn has_as_ancestor<P>(&self, ancestor: &P) -> bool where
P: IsA<Object>, [src]
P: IsA<Object>,
fn has_as_parent<P>(&self, parent: &P) -> bool where
P: IsA<Object>, [src]
P: IsA<Object>,
fn set_control_binding_disabled(&self, property_name: &str, disabled: bool)[src]
fn set_control_bindings_disabled(&self, disabled: bool)[src]
fn set_control_rate(&self, control_rate: ClockTime)[src]
fn set_parent<P>(&self, parent: &P) -> Result<(), BoolError> where
P: IsA<Object>, [src]
P: IsA<Object>,
fn suggest_next_sync(&self) -> ClockTime[src]
fn sync_values(&self, timestamp: ClockTime) -> Result<(), BoolError>[src]
fn unparent(&self)[src]
fn connect_property_parent_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Send + Sync + Fn(&O), [src]
F: 'static + Send + Sync + Fn(&O),