pub trait GstObjectExt: 'static {
Show 21 methods fn add_control_binding(
        binding: &impl IsA<ControlBinding>
    ) -> Result<(), BoolError>;
fn default_error(&self, error: &Error, debug: Option<&str>);
fn control_binding(&self, property_name: &str) -> Option<ControlBinding>;
fn control_rate(&self) -> Option<ClockTime>;
fn name(&self) -> GString;
fn parent(&self) -> Option<Object>;
fn path_string(&self) -> GString;
fn value(
        property_name: &str,
        timestamp: impl Into<Option<ClockTime>>
    ) -> Option<Value>;
fn has_active_control_bindings(&self) -> bool;
fn has_ancestor(&self, ancestor: &impl IsA<Object>) -> bool;
fn has_as_ancestor(&self, ancestor: &impl IsA<Object>) -> bool;
fn has_as_parent(&self, parent: &impl IsA<Object>) -> bool;
fn remove_control_binding(&self, binding: &impl IsA<ControlBinding>) -> bool;
fn set_control_binding_disabled(&self, property_name: &str, disabled: bool);
fn set_control_bindings_disabled(&self, disabled: bool);
fn set_control_rate(&self, control_rate: impl Into<Option<ClockTime>>);
fn set_parent(&self, parent: &impl IsA<Object>) -> Result<(), BoolError>;
fn suggest_next_sync(&self) -> Option<ClockTime>;
fn sync_values(&self, timestamp: ClockTime) -> Result<(), BoolError>;
fn unparent(&self);
fn connect_parent_notify<F: Fn(&Self) + Send + Sync + 'static>(
        f: F
    ) -> SignalHandlerId;
Expand description

Required methods

Attach the ControlBinding to the object. If there already was a ControlBinding for this property it will be replaced.

The object’s reference count will be incremented, and any floating reference will be removed (see gst_object_ref_sink())


the ControlBinding that should be used


false if the given binding has not been setup for this object or has been setup for a non suitable property, true otherwise.

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.


the GError.


an additional debug information string, or None

Gets the corresponding ControlBinding for the property. This should be unreferenced again after use.


name of the property


the ControlBinding for property_name or None if the property is not controlled.

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.

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.


the control rate in nanoseconds

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


the name of self. g_free() after usage.

MT safe. This function grabs and releases self’s LOCK.

Returns the parent of self. This function increases the refcount of the parent object so you should gst_object_unref() it after usage.


parent of self, this can be None if self has no parent. unref after usage.

MT safe. Grabs and releases self’s LOCK.

Generates a string describing the path of self in the object hierarchy. Only useful (or used) for debugging.

Free-function: g_free


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.

Gets the value for the given controlled property at the requested time.


the name of the property to get


the time the control-change should be read from


the GValue of the property at the given time, or None if the property isn’t controlled.