pub trait DeviceImpl: DeviceImplExt + GstObjectImpl + Send + Sync {
    // Provided methods
    fn create_element(
        name: Option<&str>,
    ) -> Result<Element, LoggableError> { ... }
    fn reconfigure_element(
        element: &Element,
    ) -> Result<(), LoggableError> { ... }

Provided Methods§


fn create_element(&self, name: Option<&str>) -> Result<Element, LoggableError>

Creates the element with all of the required parameters set to use this device.


name of new element, or None to automatically create a unique name.


a new Element configured to use this device


fn reconfigure_element(&self, element: &Element) -> Result<(), LoggableError>

Tries to reconfigure an existing element to use the device. If this function fails, then one must destroy the element and create a new one using DeviceExt::create_element().

Note: This should only be implemented for elements can change their device in the PLAYING state.


a Element


true if the element could be reconfigured to use this device, false otherwise.

Object Safety§

This trait is not object safe.