[][src]Trait gstreamer_editing_services::TrackElementExt

pub trait TrackElementExt: 'static {
    fn add_children_props<P: IsA<Element>>(
        &self,
        element: &P,
        wanted_categories: &[&str],
        blacklist: &[&str],
        whitelist: &[&str]
    );
fn edit(
        &self,
        layers: &[Layer],
        mode: EditMode,
        edge: Edge,
        position: u64
    ) -> Result<(), BoolError>;
fn get_element(&self) -> Option<Element>;
fn get_gnlobject(&self) -> Option<Element>;
fn get_nleobject(&self) -> Option<Element>;
fn get_track(&self) -> Option<Track>;
fn get_track_type(&self) -> TrackType;
fn is_active(&self) -> bool;
fn remove_control_binding(
        &self,
        property_name: &str
    ) -> Result<(), BoolError>;
fn set_active(&self, active: bool) -> bool;
fn set_track_type(&self, type_: TrackType);
fn get_property_active(&self) -> bool;
fn connect_property_active_notify<F: Fn(&Self) + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_property_track_notify<F: Fn(&Self) + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId;
fn connect_property_track_type_notify<F: Fn(&Self) + 'static>(
        &self,
        f: F
    ) -> SignalHandlerId; }

Trait containing all TrackElement methods.

Implementors

TrackElement

Required methods

fn add_children_props<P: IsA<Element>>(
    &self,
    element: &P,
    wanted_categories: &[&str],
    blacklist: &[&str],
    whitelist: &[&str]
)

Looks for the properties defines with the various parametters and add them to the hashtable of children properties.

To be used by subclasses only

element

The GstElement to retrieve properties from

wanted_categories

An array of categories of GstElement to take into account (as defined in the factory meta "klass" field)

blacklist

A blacklist of elements factory names to not take into account

whitelist

A list of propery names to add as children properties

fn edit(
    &self,
    layers: &[Layer],
    mode: EditMode,
    edge: Edge,
    position: u64
) -> Result<(), BoolError>

Edit self in the different exisiting EditMode modes. In the case of slide, and roll, you need to specify a Edge

layers

The layers you want the edit to happen in, None means that the edition is done in all the GESLayers contained in the current timeline. FIXME: This is not implemented yet.

mode

The EditMode in which the edition will happen.

edge

The Edge the edit should happen on.

position

The position at which to edit self (in nanosecond)

Returns

true if the object as been edited properly, false if an error occured

fn get_element(&self) -> Option<Element>

Get the gst::Element this track element is controlling within GNonLin.

Returns

the gst::Element this track element is controlling within GNonLin.

fn get_gnlobject(&self) -> Option<Element>

Get the NleObject object this object is controlling.

Deprecated

use TrackElementExt::get_nleobject instead.

Returns

the NleObject object this object is controlling.

fn get_nleobject(&self) -> Option<Element>

Get the GNonLin object this object is controlling.

Returns

the GNonLin object this object is controlling.

fn get_track(&self) -> Option<Track>

Get the Track to which this object belongs.

Returns

The Track to which this object belongs. Can be None if it is not in any track

fn get_track_type(&self) -> TrackType

fn is_active(&self) -> bool

Lets you know if self will be used for playback and rendering, or not.

Returns

true if self is active, false otherwize

fn remove_control_binding(&self, property_name: &str) -> Result<(), BoolError>

Removes a gst::ControlBinding from self.

property_name

The name of the property to control.

Returns

true if the binding could be removed, false if an error occured

fn set_active(&self, active: bool) -> bool

Sets the usage of the self. If active is true, the object will be used for playback and rendering, else it will be ignored.

active

visibility

Returns

true if the property was toggled, else false

fn set_track_type(&self, type_: TrackType)

fn get_property_active(&self) -> bool

Whether the object should be taken into account in the Track output. If false, then its contents will not be used in the resulting track.

fn connect_property_active_notify<F: Fn(&Self) + 'static>(
    &self,
    f: F
) -> SignalHandlerId

fn connect_property_track_notify<F: Fn(&Self) + 'static>(
    &self,
    f: F
) -> SignalHandlerId

fn connect_property_track_type_notify<F: Fn(&Self) + 'static>(
    &self,
    f: F
) -> SignalHandlerId

Loading content...

Implementors

impl<O: IsA<TrackElement>> TrackElementExt for O[src]

Loading content...