GESTrackElement

A GESTrackElement is a GESTimelineElement that specifically belongs to a single GESTrack of its timeline. Its start and duration specify its temporal extent in the track. Specifically, a track element wraps some nleobject, such as an NleSource or nleoperation, which can be retrieved with ges_track_element_get_nleobject, and its start, duration, in-point, priority and active properties expose the corresponding nleobject properties. When a track element is added to a track, its nleobject is added to the corresponding nlecomposition that the track wraps.

Most users will not have to work directly with track elements since a GESClip will automatically create track elements for its timeline's tracks and take responsibility for updating them. The only track elements that are not automatically created by clips, but a user is likely to want to create, are GESEffect-s.

GESTrackElement

GObject
    ╰──GInitiallyUnowned
        ╰──GESTimelineElement
            ╰──GESTrackElement
                ╰──GESOperation
                ╰──GESSource

The GESTrackElement base class.

Members

parent (GESTimelineElement) –
No description available

Class structure

GESTrackElementClass

Fields
nleobject_factorytype (const gchar *) –

The name of the GstElementFactory to use to create the underlying nleobject of a track element

ABI._ges_reserved (gpointer *) –
No description available
ABI.abi.default_has_internal_source (gboolean) –

What the default has-internal-source value should be for new elements from this class.

ABI.abi.default_track_type (GESTrackType) –

What the default track-type value should be for new elements from this class.


GES.TrackElementClass

Attributes
nleobject_factorytype (utf8) –

The name of the Gst.ElementFactory to use to create the underlying nleobject of a track element


GES.TrackElementClass

Attributes
nleobject_factorytype (utf8) –

The name of the Gst.ElementFactory to use to create the underlying nleobject of a track element


GESTrackElement

GObject
    ╰──GInitiallyUnowned
        ╰──GESTimelineElement
            ╰──GESTrackElement
                ╰──GESOperation
                ╰──GESSource

The GESTrackElement base class.

Members

parent (GESTimelineElement) –
No description available

GESTrackElement

GObject
    ╰──GInitiallyUnowned
        ╰──GESTimelineElement
            ╰──GESTrackElement
                ╰──GESOperation
                ╰──GESSource

The GESTrackElement base class.

Members

parent (GESTimelineElement) –
No description available

Methods

ges_track_element_add_children_props

ges_track_element_add_children_props (GESTrackElement * self,
                                      GstElement * element,
                                      const gchar ** wanted_categories,
                                      const gchar ** blacklist,
                                      const gchar ** whitelist)

Adds all the properties of a GstElement that match the criteria as children properties of the track element. If the name of element's GstElementFactory is not in blacklist, and the factory's GST_ELEMENT_METADATA_KLASS contains at least one member of wanted_categories (e.g. GST_ELEMENT_FACTORY_KLASS_DECODER), then all the properties of element that are also in whitelist are added as child properties of self using ges_timeline_element_add_child_property.

This is intended to be used by subclasses when constructing.

Parameters:

self

A GESTrackElement

element

The child object to retrieve properties from

wanted_categories

(array zero-terminated=1) (transfer none) (allow-none): An array of element factory "klass" categories to whitelist, or NULL to accept all categories

blacklist ( [array zero-terminated=1] [transfer: none] [allow-none] ) –

A blacklist of element factory names, or NULL to not blacklist any element factory

whitelist ( [array zero-terminated=1] [transfer: none] [allow-none] ) –

A whitelist of element property names, or NULL to whitelist all writeable properties


GES.TrackElement.prototype.add_children_props

function GES.TrackElement.prototype.add_children_props(element: Gst.Element, wanted_categories: [ utf8], blacklist: [ utf8], whitelist: [ utf8]): {
    // javascript wrapper for 'ges_track_element_add_children_props'
}

Adds all the properties of a Gst.Element that match the criteria as children properties of the track element. If the name of element's Gst.ElementFactory is not in blacklist, and the factory's Gst.ELEMENT_METADATA_KLASS contains at least one member of wanted_categories (e.g. Gst.ELEMENT_FACTORY_KLASS_DECODER), then all the properties of element that are also in whitelist are added as child properties of self using GES.TimelineElement.prototype.add_child_property.

This is intended to be used by subclasses when constructing.

Parameters:

element ( Gst.Element ) –

The child object to retrieve properties from

wanted_categories ( [ utf8] ) –

(array zero-terminated=1) (transfer none) (allow-none): An array of element factory "klass" categories to whitelist, or NULL (not introspectable) to accept all categories

blacklist ( [ utf8] ) –

A blacklist of element factory names, or NULL (not introspectable) to not blacklist any element factory

whitelist ( [ utf8] ) –

A whitelist of element property names, or NULL (not introspectable) to whitelist all writeable properties


GES.TrackElement.add_children_props

def GES.TrackElement.add_children_props (self, element, wanted_categories, blacklist, whitelist):
    #python wrapper for 'ges_track_element_add_children_props'

Adds all the properties of a Gst.Element that match the criteria as children properties of the track element. If the name of element's Gst.ElementFactory is not in blacklist, and the factory's Gst.ELEMENT_METADATA_KLASS contains at least one member of wanted_categories (e.g. Gst.ELEMENT_FACTORY_KLASS_DECODER), then all the properties of element that are also in whitelist are added as child properties of self using GES.TimelineElement.add_child_property.

This is intended to be used by subclasses when constructing.

Parameters:

element ( Gst.Element ) –

The child object to retrieve properties from

wanted_categories ( [ utf8] ) –

(array zero-terminated=1) (transfer none) (allow-none): An array of element factory "klass" categories to whitelist, or NULL (not introspectable) to accept all categories

blacklist ( [ utf8] ) –

A blacklist of element factory names, or NULL (not introspectable) to not blacklist any element factory

whitelist ( [ utf8] ) –

A whitelist of element property names, or NULL (not introspectable) to whitelist all writeable properties


ges_track_element_edit

gboolean
ges_track_element_edit (GESTrackElement * object,
                        GList * layers,
                        GESEditMode mode,
                        GESEdge edge,
                        guint64 position)

Edits the element within its track.

Parameters:

object

The GESTrackElement to edit

layers ( [element-type GESLayer] [nullable] ) –

A whitelist of layers where the edit can be performed, NULL allows all layers in the timeline

mode

The edit mode

edge

The edge of object where the edit should occur

position

The edit position: a new location for the edge of object (in nanoseconds)

Returns

TRUE if the edit of object completed, FALSE on failure.

deprecated : 1.18: use #ges_timeline_element_edit instead.


GES.TrackElement.prototype.edit

function GES.TrackElement.prototype.edit(layers: [ GES.Layer ], mode: GES.EditMode, edge: GES.Edge, position: guint64): {
    // javascript wrapper for 'ges_track_element_edit'
}

Edits the element within its track.

Parameters:

object ( GES.TrackElement ) –

The GES.TrackElement to edit

layers ( [ GES.Layer ] ) –

A whitelist of layers where the edit can be performed, NULL (not introspectable) allows all layers in the timeline

mode ( GES.EditMode ) –

The edit mode

edge ( GES.Edge ) –

The edge of object where the edit should occur

position ( guint64 ) –

The edit position: a new location for the edge of object (in nanoseconds)

Returns ( gboolean ) –

TRUE (not introspectable) if the edit of object completed, FALSE (not introspectable) on failure.

deprecated : 1.18: use #ges_timeline_element_edit instead.


GES.TrackElement.edit

def GES.TrackElement.edit (self, layers, mode, edge, position):
    #python wrapper for 'ges_track_element_edit'

Edits the element within its track.

Parameters:

object ( GES.TrackElement ) –

The GES.TrackElement to edit

layers ( [ GES.Layer ] ) –

A whitelist of layers where the edit can be performed, NULL (not introspectable) allows all layers in the timeline

mode ( GES.EditMode ) –

The edit mode

edge ( GES.Edge ) –

The edge of object where the edit should occur

position ( guint64 ) –

The edit position: a new location for the edge of object (in nanoseconds)

Returns ( gboolean ) –

TRUE (not introspectable) if the edit of object completed, FALSE (not introspectable) on failure.

deprecated : 1.18: use #ges_timeline_element_edit instead.


ges_track_element_get_all_control_bindings

GHashTable *
ges_track_element_get_all_control_bindings (GESTrackElement * trackelement)

Get all the control bindings that have been created for the children properties of the track element using ges_track_element_set_control_source. The keys used in the returned hash table are the child property names that were passed to ges_track_element_set_control_source, and their values are the corresponding created GstControlBinding.

Parameters:

trackelement

A GESTrackElement

Returns ( [element-type gchar*] [transfer: none] ) –

A hash table containing all child-property-name/control-binding pairs for trackelement.


GES.TrackElement.prototype.get_all_control_bindings

function GES.TrackElement.prototype.get_all_control_bindings(): {
    // javascript wrapper for 'ges_track_element_get_all_control_bindings'
}

Get all the control bindings that have been created for the children properties of the track element using GES.TrackElement.prototype.set_control_source. The keys used in the returned hash table are the child property names that were passed to GES.TrackElement.prototype.set_control_source, and their values are the corresponding created Gst.ControlBinding.

Parameters:

trackelement ( GES.TrackElement ) –

A GES.TrackElement

Returns ( GLib.HashTable ) –

A hash table containing all child-property-name/control-binding pairs for trackelement.


GES.TrackElement.get_all_control_bindings

def GES.TrackElement.get_all_control_bindings (self):
    #python wrapper for 'ges_track_element_get_all_control_bindings'

Get all the control bindings that have been created for the children properties of the track element using GES.TrackElement.set_control_source. The keys used in the returned hash table are the child property names that were passed to GES.TrackElement.set_control_source, and their values are the corresponding created Gst.ControlBinding.

Parameters:

trackelement ( GES.TrackElement ) –

A GES.TrackElement

Returns ( GLib.HashTable ) –

A hash table containing all child-property-name/control-binding pairs for trackelement.


ges_track_element_get_child_properties

ges_track_element_get_child_properties (GESTrackElement * object,
                                        const gchar * first_property_name,
                                        ... ...)

Gets properties of a child of object.

Parameters:

object

The origin GESTrackElement

first_property_name

The name of the first property to get

...

return location for the first property, followed optionally by more name/return location pairs, followed by NULL

deprecated : Use #ges_timeline_element_get_child_properties


ges_track_element_get_child_property

gboolean
ges_track_element_get_child_property (GESTrackElement * object,
                                      const gchar * property_name,
                                      GValue * value)

In general, a copy is made of the property contents and the caller is responsible for freeing the memory by calling g_value_unset.

Gets a property of a GstElement contained in object.

Note that ges_track_element_get_child_property is really intended for language bindings, ges_track_element_get_child_properties is much more convenient for C programming.

Parameters:

object

The origin GESTrackElement

property_name

The name of the property

value ( [out] ) –

return location for the property value, it will be initialized if it is initialized with 0

Returns

TRUE if the property was found, FALSE otherwize.

deprecated : Use #ges_timeline_element_get_child_property


ges_track_element_get_child_property_by_pspec

ges_track_element_get_child_property_by_pspec (GESTrackElement * object,
                                               GParamSpec * pspec,
                                               GValue * value)

Gets a property of a child of object.

Parameters:

object

A GESTrackElement

pspec

The GParamSpec that specifies the property you want to get

value ( [out] ) –

return location for the value

deprecated : Use #ges_timeline_element_get_child_property_by_pspec


ges_track_element_get_child_property_valist

ges_track_element_get_child_property_valist (GESTrackElement * object,
                                             const gchar * first_property_name,
                                             va_list var_args)

Gets a property of a child of object. If there are various child elements that have the same property name, you can distinguish them using the following syntax: 'ClasseName::property_name' as property name. If you don't, the corresponding property of the first element found will be set.

Parameters:

object

The GESTrackElement parent object

first_property_name

The name of the first property to get

var_args

Value for the first property, followed optionally by more name/return location pairs, followed by NULL

deprecated : Use #ges_timeline_element_get_child_property_valist


ges_track_element_get_control_binding

GstControlBinding *
ges_track_element_get_control_binding (GESTrackElement * object,
                                       const gchar * property_name)

Gets the control binding that was created for the specified child property of the track element using ges_track_element_set_control_source. The given property_name must be the same name of the child property that was passed to ges_track_element_set_control_source.

Parameters:

object

A GESTrackElement

property_name

The name of the child property to return the control binding of

Returns ( [transfer: none] [nullable] ) –

The control binding that was created for the specified child property of object, or NULL if property_name does not correspond to any control binding.


GES.TrackElement.prototype.get_control_binding

function GES.TrackElement.prototype.get_control_binding(property_name: utf8): {
    // javascript wrapper for 'ges_track_element_get_control_binding'
}

Gets the control binding that was created for the specified child property of the track element using GES.TrackElement.prototype.set_control_source. The given property_name must be the same name of the child property that was passed to GES.TrackElement.prototype.set_control_source.

Parameters:

property_name ( utf8 ) –

The name of the child property to return the control binding of

Returns ( Gst.ControlBinding ) –

The control binding that was created for the specified child property of object, or NULL (not introspectable) if property_name does not correspond to any control binding.


GES.TrackElement.get_control_binding

def GES.TrackElement.get_control_binding (self, property_name):
    #python wrapper for 'ges_track_element_get_control_binding'

Gets the control binding that was created for the specified child property of the track element using GES.TrackElement.set_control_source. The given property_name must be the same name of the child property that was passed to GES.TrackElement.set_control_source.

Parameters:

property_name ( utf8 ) –

The name of the child property to return the control binding of

Returns ( Gst.ControlBinding ) –

The control binding that was created for the specified child property of object, or NULL (not introspectable) if property_name does not correspond to any control binding.


ges_track_element_get_element

GstElement *
ges_track_element_get_element (GESTrackElement * object)

Get the GstElement that the track element's underlying nleobject controls.

Parameters:

object

A GESTrackElement

Returns ( [transfer: none] ) –

The GstElement being controlled by the nleobject that object wraps.


GES.TrackElement.prototype.get_element

function GES.TrackElement.prototype.get_element(): {
    // javascript wrapper for 'ges_track_element_get_element'
}

Get the Gst.Element that the track element's underlying nleobject controls.

Parameters:

Returns ( Gst.Element ) –

The Gst.Element being controlled by the nleobject that object wraps.


GES.TrackElement.get_element

def GES.TrackElement.get_element (self):
    #python wrapper for 'ges_track_element_get_element'

Get the Gst.Element that the track element's underlying nleobject controls.

Parameters:

Returns ( Gst.Element ) –

The Gst.Element being controlled by the nleobject that object wraps.


ges_track_element_get_gnlobject

GstElement *
ges_track_element_get_gnlobject (GESTrackElement * object)

Get the GNonLin object this object is controlling.

Parameters:

object

A GESTrackElement

Returns ( [transfer: none] ) –

The GNonLin object this object is controlling.

deprecated : use #ges_track_element_get_nleobject instead.


GES.TrackElement.prototype.get_gnlobject

function GES.TrackElement.prototype.get_gnlobject(): {
    // javascript wrapper for 'ges_track_element_get_gnlobject'
}

Get the GNonLin object this object is controlling.

Parameters:

Returns ( Gst.Element ) –

The GNonLin object this object is controlling.

deprecated : use #ges_track_element_get_nleobject instead.


GES.TrackElement.get_gnlobject

def GES.TrackElement.get_gnlobject (self):
    #python wrapper for 'ges_track_element_get_gnlobject'

Get the GNonLin object this object is controlling.

Parameters:

Returns ( Gst.Element ) –

The GNonLin object this object is controlling.

deprecated : use #ges_track_element_get_nleobject instead.


ges_track_element_get_nleobject

GstElement *
ges_track_element_get_nleobject (GESTrackElement * object)

Get the nleobject that this element wraps.

Parameters:

object

A GESTrackElement

Returns ( [transfer: none] ) –

The nleobject that object wraps.

Since : 1.6


GES.TrackElement.prototype.get_nleobject

function GES.TrackElement.prototype.get_nleobject(): {
    // javascript wrapper for 'ges_track_element_get_nleobject'
}

Get the nleobject that this element wraps.

Parameters:

Returns ( Gst.Element ) –

The nleobject that object wraps.

Since : 1.6


GES.TrackElement.get_nleobject

def GES.TrackElement.get_nleobject (self):
    #python wrapper for 'ges_track_element_get_nleobject'

Get the nleobject that this element wraps.

Parameters:

Returns ( Gst.Element ) –

The nleobject that object wraps.

Since : 1.6


ges_track_element_get_track

GESTrack *
ges_track_element_get_track (GESTrackElement * object)

Get the track for the element.

Parameters:

object

A GESTrackElement

Returns ( [transfer: none] [nullable] ) –

The track that object belongs to, or NULL if it does not belong to a track.


GES.TrackElement.prototype.get_track

function GES.TrackElement.prototype.get_track(): {
    // javascript wrapper for 'ges_track_element_get_track'
}

Get the track for the element.

Parameters:

Returns ( GES.Track ) –

The track that object belongs to, or NULL (not introspectable) if it does not belong to a track.


GES.TrackElement.get_track

def GES.TrackElement.get_track (self):
    #python wrapper for 'ges_track_element_get_track'

Get the track for the element.

Parameters:

Returns ( GES.Track ) –

The track that object belongs to, or NULL (not introspectable) if it does not belong to a track.


ges_track_element_get_track_type

GESTrackType
ges_track_element_get_track_type (GESTrackElement * object)

Gets the track-type for the element.

Parameters:

object

A GESTrackElement

Returns

The track-type of object.


GES.TrackElement.prototype.get_track_type

function GES.TrackElement.prototype.get_track_type(): {
    // javascript wrapper for 'ges_track_element_get_track_type'
}

Gets the track-type for the element.

Parameters:

Returns ( GES.TrackType ) –

The track-type of object.


GES.TrackElement.get_track_type

def GES.TrackElement.get_track_type (self):
    #python wrapper for 'ges_track_element_get_track_type'

Gets the track_type for the element.

Parameters:

Returns ( GES.TrackType ) –

The track-type of object.


ges_track_element_has_internal_source

gboolean
ges_track_element_has_internal_source (GESTrackElement * object)

Gets has-internal-source for the element.

Parameters:

object

A GESTrackElement

Returns

TRUE if object can have its 'internal time' properties set.


GES.TrackElement.prototype.has_internal_source

function GES.TrackElement.prototype.has_internal_source(): {
    // javascript wrapper for 'ges_track_element_has_internal_source'
}

Gets has-internal-source for the element.

Parameters:

Returns ( gboolean ) –

TRUE (not introspectable) if object can have its 'internal time' properties set.


GES.TrackElement.has_internal_source

def GES.TrackElement.has_internal_source (self):
    #python wrapper for 'ges_track_element_has_internal_source'

Gets has_internal_source for the element.

Parameters:

Returns ( gboolean ) –

TRUE (not introspectable) if object can have its 'internal time' properties set.


ges_track_element_is_active

gboolean
ges_track_element_is_active (GESTrackElement * object)

Gets active for the element.

Parameters:

object

A GESTrackElement

Returns

TRUE if object is active in its track.


GES.TrackElement.prototype.is_active

function GES.TrackElement.prototype.is_active(): {
    // javascript wrapper for 'ges_track_element_is_active'
}

Gets active for the element.

Parameters:

Returns ( gboolean ) –

TRUE (not introspectable) if object is active in its track.


GES.TrackElement.is_active

def GES.TrackElement.is_active (self):
    #python wrapper for 'ges_track_element_is_active'

Gets active for the element.

Parameters:

Returns ( gboolean ) –

TRUE (not introspectable) if object is active in its track.


ges_track_element_is_core

gboolean
ges_track_element_is_core (GESTrackElement * object)

Get whether the given track element is a core track element. That is, it was created by the create_track_elements GESClipClass method for some GESClip.

Note that such a track element can only be added to a clip that shares the same GESAsset as the clip that created it. For example, you are allowed to move core children between clips that resulted from ges_container_ungroup, but you could not move the core child from a GESUriClip to a GESTitleClip or another GESUriClip with a different uri.

Moreover, if a core track element is added to a clip, it will always be added as a core child. Therefore, if this returns TRUE, then element will be a core child of its parent clip.

Parameters:

object

A GESTrackElement

Returns

TRUE if element is a core track element.


GES.TrackElement.prototype.is_core

function GES.TrackElement.prototype.is_core(): {
    // javascript wrapper for 'ges_track_element_is_core'
}

Get whether the given track element is a core track element. That is, it was created by the create_track_elements GES.ClipClass method for some GES.Clip.

Note that such a track element can only be added to a clip that shares the same GES.Asset as the clip that created it. For example, you are allowed to move core children between clips that resulted from GES.Container.prototype.ungroup, but you could not move the core child from a GES.UriClip to a GES.TitleClip or another GES.UriClip with a different uri.

Moreover, if a core track element is added to a clip, it will always be added as a core child. Therefore, if this returns TRUE (not introspectable), then element will be a core child of its parent clip.

Parameters:

Returns ( gboolean ) –

TRUE (not introspectable) if element is a core track element.


GES.TrackElement.is_core

def GES.TrackElement.is_core (self):
    #python wrapper for 'ges_track_element_is_core'

Get whether the given track element is a core track element. That is, it was created by the create_track_elements GES.ClipClass method for some GES.Clip.

Note that such a track element can only be added to a clip that shares the same GES.Asset as the clip that created it. For example, you are allowed to move core children between clips that resulted from GES.Container.ungroup, but you could not move the core child from a GES.UriClip to a GES.TitleClip or another GES.UriClip with a different uri.

Moreover, if a core track element is added to a clip, it will always be added as a core child. Therefore, if this returns TRUE (not introspectable), then element will be a core child of its parent clip.

Parameters:

Returns ( gboolean ) –

TRUE (not introspectable) if element is a core track element.


ges_track_element_list_children_properties

GParamSpec **
ges_track_element_list_children_properties (GESTrackElement * object,
                                            guint * n_properties)

Gets an array of GParamSpec* for all configurable properties of the children of object.

Parameters:

object

The GESTrackElement to get the list of children properties from

n_properties ( [out] ) –

return location for the length of the returned array

Returns ( [transfer: full] [array length=n_properties] ) –

An array of GParamSpec* which should be freed after use or NULL if something went wrong.

deprecated : Use #ges_timeline_element_list_children_properties


GES.TrackElement.prototype.list_children_properties

function GES.TrackElement.prototype.list_children_properties(): {
    // javascript wrapper for 'ges_track_element_list_children_properties'
}

Gets an array of GObject.ParamSpec* for all configurable properties of the children of object.

Parameters:

object ( GES.TrackElement ) –

The GES.TrackElement to get the list of children properties from

Returns a tuple made of:

( [ GObject.ParamSpec ] ) –

An array of GObject.ParamSpec* which should be freed after use or NULL (not introspectable) if something went wrong.

n_properties ( guint ) –

An array of GObject.ParamSpec* which should be freed after use or NULL (not introspectable) if something went wrong.

deprecated : Use #ges_timeline_element_list_children_properties


GES.TrackElement.list_children_properties

def GES.TrackElement.list_children_properties (self):
    #python wrapper for 'ges_track_element_list_children_properties'

Gets an array of GObject.ParamSpec* for all configurable properties of the children of object.

Parameters:

object ( GES.TrackElement ) –

The GES.TrackElement to get the list of children properties from

Returns a tuple made of:

( [ GObject.ParamSpec ] ) –

An array of GObject.ParamSpec* which should be freed after use or NULL (not introspectable) if something went wrong.

n_properties ( guint ) –

An array of GObject.ParamSpec* which should be freed after use or NULL (not introspectable) if something went wrong.

deprecated : Use #ges_timeline_element_list_children_properties


ges_track_element_lookup_child

gboolean
ges_track_element_lookup_child (GESTrackElement * object,
                                const gchar * prop_name,
                                GstElement ** element,
                                GParamSpec ** pspec)

Looks up which element and pspec would be effected by the given name. If various contained elements have this property name you will get the first one, unless you specify the class name in name.

Parameters:

object

Object to lookup the property in

prop_name

Name of the property to look up. You can specify the name of the class as such: "ClassName::property-name", to guarantee that you get the proper GParamSpec in case various GstElement-s contain the same property name. If you don't do so, you will get the first element found, having this property and the and the corresponding GParamSpec.

element ( [out] [allow-none] [transfer: full] ) –

pointer to a GstElement that takes the real object to set property on

pspec ( [out] [allow-none] [transfer: full] ) –

pointer to take the specification describing the property

Returns

TRUE if element and pspec could be found. FALSE otherwise. In that case the values for pspec and element are not modified. Unref element after usage.

deprecated : Use #ges_timeline_element_lookup_child


GES.TrackElement.prototype.lookup_child

function GES.TrackElement.prototype.lookup_child(prop_name: utf8): {
    // javascript wrapper for 'ges_track_element_lookup_child'
}

Looks up which element and pspec would be effected by the given name. If various contained elements have this property name you will get the first one, unless you specify the class name in name.

Parameters:

object ( GES.TrackElement ) –

Object to lookup the property in

prop_name ( utf8 ) –

Name of the property to look up. You can specify the name of the class as such: "ClassName::property-name", to guarantee that you get the proper GParamSpec in case various GstElement-s contain the same property name. If you don't do so, you will get the first element found, having this property and the and the corresponding GParamSpec.

Returns a tuple made of:

( gboolean ) –

TRUE if element and pspec could be found. FALSE otherwise. In that case the values for pspec and element are not modified. Unref element after usage.

element ( Gst.Element ) –

TRUE if element and pspec could be found. FALSE otherwise. In that case the values for pspec and element are not modified. Unref element after usage.

pspec ( GObject.ParamSpec ) –

TRUE if element and pspec could be found. FALSE otherwise. In that case the values for pspec and element are not modified. Unref element after usage.

deprecated : Use #ges_timeline_element_lookup_child


GES.TrackElement.lookup_child

def GES.TrackElement.lookup_child (self, prop_name):
    #python wrapper for 'ges_track_element_lookup_child'

Looks up which element and pspec would be effected by the given name. If various contained elements have this property name you will get the first one, unless you specify the class name in name.

Parameters:

object ( GES.TrackElement ) –

Object to lookup the property in

prop_name ( utf8 ) –

Name of the property to look up. You can specify the name of the class as such: "ClassName::property-name", to guarantee that you get the proper GParamSpec in case various GstElement-s contain the same property name. If you don't do so, you will get the first element found, having this property and the and the corresponding GParamSpec.

Returns a tuple made of:

( gboolean ) –

TRUE if element and pspec could be found. FALSE otherwise. In that case the values for pspec and element are not modified. Unref element after usage.

element ( Gst.Element ) –

TRUE if element and pspec could be found. FALSE otherwise. In that case the values for pspec and element are not modified. Unref element after usage.

pspec ( GObject.ParamSpec ) –

TRUE if element and pspec could be found. FALSE otherwise. In that case the values for pspec and element are not modified. Unref element after usage.

deprecated : Use #ges_timeline_element_lookup_child


ges_track_element_remove_control_binding

gboolean
ges_track_element_remove_control_binding (GESTrackElement * object,
                                          const gchar * property_name)

Removes the GstControlBinding that was created for the specified child property of the track element using ges_track_element_set_control_source. The given property_name must be the same name of the child property that was passed to ges_track_element_set_control_source.

Parameters:

object

A GESTrackElement

property_name

The name of the child property to remove the control binding from

Returns

TRUE if the control binding was removed from the specified child property of object, or FALSE if an error occurred.


GES.TrackElement.prototype.remove_control_binding

function GES.TrackElement.prototype.remove_control_binding(property_name: utf8): {
    // javascript wrapper for 'ges_track_element_remove_control_binding'
}

Removes the Gst.ControlBinding that was created for the specified child property of the track element using GES.TrackElement.prototype.set_control_source. The given property_name must be the same name of the child property that was passed to GES.TrackElement.prototype.set_control_source.

Parameters:

property_name ( utf8 ) –

The name of the child property to remove the control binding from

Returns ( gboolean ) –

TRUE (not introspectable) if the control binding was removed from the specified child property of object, or FALSE (not introspectable) if an error occurred.


GES.TrackElement.remove_control_binding

def GES.TrackElement.remove_control_binding (self, property_name):
    #python wrapper for 'ges_track_element_remove_control_binding'

Removes the Gst.ControlBinding that was created for the specified child property of the track element using GES.TrackElement.set_control_source. The given property_name must be the same name of the child property that was passed to GES.TrackElement.set_control_source.

Parameters:

property_name ( utf8 ) –

The name of the child property to remove the control binding from

Returns ( gboolean ) –

TRUE (not introspectable) if the control binding was removed from the specified child property of object, or FALSE (not introspectable) if an error occurred.


ges_track_element_set_active

gboolean
ges_track_element_set_active (GESTrackElement * object,
                              gboolean active)

Sets active for the element.

Parameters:

object

A GESTrackElement

active

Whether object should be active in its track

Returns

TRUE if the property was toggled.


GES.TrackElement.prototype.set_active

function GES.TrackElement.prototype.set_active(active: gboolean): {
    // javascript wrapper for 'ges_track_element_set_active'
}

Sets active for the element.

Parameters:

active ( gboolean ) –

Whether object should be active in its track

Returns ( gboolean ) –

TRUE (not introspectable) if the property was toggled.


GES.TrackElement.set_active

def GES.TrackElement.set_active (self, active):
    #python wrapper for 'ges_track_element_set_active'

Sets active for the element.

Parameters:

active ( gboolean ) –

Whether object should be active in its track

Returns ( gboolean ) –

TRUE (not introspectable) if the property was toggled.


ges_track_element_set_child_properties

ges_track_element_set_child_properties (GESTrackElement * object,
                                        const gchar * first_property_name,
                                        ... ...)

Sets a property of a child of object. If there are various child elements that have the same property name, you can distinguish them using the following syntax: 'ClasseName::property_name' as property name. If you don't, the corresponding property of the first element found will be set.

Parameters:

object

The GESTrackElement parent object

first_property_name

The name of the first property to set

...

value for the first property, followed optionally by more name/return location pairs, followed by NULL

deprecated : Use #ges_timeline_element_set_child_properties


ges_track_element_set_child_property

gboolean
ges_track_element_set_child_property (GESTrackElement * object,
                                      const gchar * property_name,
                                      GValue * value)

Sets a property of a GstElement contained in object.

Note that ges_track_element_set_child_property is really intended for language bindings, ges_track_element_set_child_properties is much more convenient for C programming.

Parameters:

object

The origin GESTrackElement

property_name

The name of the property

value

The value

Returns

TRUE if the property was set, FALSE otherwize.

deprecated : use #ges_timeline_element_set_child_property instead


ges_track_element_set_child_property_by_pspec

ges_track_element_set_child_property_by_pspec (GESTrackElement * object,
                                               GParamSpec * pspec,
                                               GValue * value)

Sets a property of a child of object.

Parameters:

object

A GESTrackElement

pspec

The GParamSpec that specifies the property you want to set

value

The value

deprecated : Use #ges_timeline_element_set_child_property_by_spec


ges_track_element_set_child_property_valist

ges_track_element_set_child_property_valist (GESTrackElement * object,
                                             const gchar * first_property_name,
                                             va_list var_args)

Sets a property of a child of object. If there are various child elements that have the same property name, you can distinguish them using the following syntax: 'ClasseName::property_name' as property name. If you don't, the corresponding property of the first element found will be set.

Parameters:

object

The GESTrackElement parent object

first_property_name

The name of the first property to set

var_args

Value for the first property, followed optionally by more name/return location pairs, followed by NULL

deprecated : Use #ges_timeline_element_set_child_property_valist


ges_track_element_set_control_source

gboolean
ges_track_element_set_control_source (GESTrackElement * object,
                                      GstControlSource * source,
                                      const gchar * property_name,
                                      const gchar * binding_type)

Creates a GstControlBinding for the specified child property of the track element using the given control source. The given property_name should refer to an existing child property of the track element, as used in ges_timeline_element_lookup_child.

If binding_type is "direct", then the control binding is created with gst_direct_control_binding_new using the given control source. If binding_type is "direct-absolute", it is created with gst_direct_control_binding_new_absolute instead.

Parameters:

object

A GESTrackElement

source

The control source to bind the child property to

property_name

The name of the child property to control

binding_type

The type of binding to create ("direct" or "direct-absolute")

Returns

TRUE if the specified child property could be bound to source, or FALSE if an error occurred.


GES.TrackElement.prototype.set_control_source

function GES.TrackElement.prototype.set_control_source(source: Gst.ControlSource, property_name: utf8, binding_type: utf8): {
    // javascript wrapper for 'ges_track_element_set_control_source'
}

Creates a Gst.ControlBinding for the specified child property of the track element using the given control source. The given property_name should refer to an existing child property of the track element, as used in GES.TimelineElement.prototype.lookup_child.

If binding_type is "direct", then the control binding is created with GstController.DirectControlBinding.prototype.new using the given control source. If binding_type is "direct-absolute", it is created with GstController.DirectControlBinding.prototype.new_absolute instead.

Parameters:

source ( Gst.ControlSource ) –

The control source to bind the child property to

property_name ( utf8 ) –

The name of the child property to control

binding_type ( utf8 ) –

The type of binding to create ("direct" or "direct-absolute")

Returns ( gboolean ) –

TRUE (not introspectable) if the specified child property could be bound to source, or FALSE (not introspectable) if an error occurred.


GES.TrackElement.set_control_source

def GES.TrackElement.set_control_source (self, source, property_name, binding_type):
    #python wrapper for 'ges_track_element_set_control_source'

Creates a Gst.ControlBinding for the specified child property of the track element using the given control source. The given property_name should refer to an existing child property of the track element, as used in GES.TimelineElement.lookup_child.

If binding_type is "direct", then the control binding is created with GstController.DirectControlBinding.new using the given control source. If binding_type is "direct-absolute", it is created with GstController.DirectControlBinding.new_absolute instead.

Parameters:

source ( Gst.ControlSource ) –

The control source to bind the child property to

property_name ( utf8 ) –

The name of the child property to control

binding_type ( utf8 ) –

The type of binding to create ("direct" or "direct-absolute")

Returns ( gboolean ) –

TRUE (not introspectable) if the specified child property could be bound to source, or FALSE (not introspectable) if an error occurred.


ges_track_element_set_has_internal_source

ges_track_element_set_has_internal_source (GESTrackElement * object,
                                           gboolean has_internal_source)

Sets has-internal-source for the element. If this is set to FALSE, this method will also set the in-point of the element to 0 and its max-duration to GST_CLOCK_TIME_NONE.

Parameters:

object

A GESTrackElement

has_internal_source

Whether the object should be allowed to have its 'internal time' properties set.


GES.TrackElement.prototype.set_has_internal_source

function GES.TrackElement.prototype.set_has_internal_source(has_internal_source: gboolean): {
    // javascript wrapper for 'ges_track_element_set_has_internal_source'
}

Sets has-internal-source for the element. If this is set to FALSE (not introspectable), this method will also set the in-point of the element to 0 and its max-duration to Gst.CLOCK_TIME_NONE.

Parameters:

has_internal_source ( gboolean ) –

Whether the object should be allowed to have its 'internal time' properties set.


GES.TrackElement.set_has_internal_source

def GES.TrackElement.set_has_internal_source (self, has_internal_source):
    #python wrapper for 'ges_track_element_set_has_internal_source'

Sets has_internal_source for the element. If this is set to FALSE (not introspectable), this method will also set the in_point of the element to 0 and its max_duration to Gst.CLOCK_TIME_NONE.

Parameters:

has_internal_source ( gboolean ) –

Whether the object should be allowed to have its 'internal time' properties set.


ges_track_element_set_track_type

ges_track_element_set_track_type (GESTrackElement * object,
                                  GESTrackType type)

Sets the track-type for the element.

Parameters:

object

A GESTrackElement

type

The new track-type for object


GES.TrackElement.prototype.set_track_type

function GES.TrackElement.prototype.set_track_type(type: GES.TrackType): {
    // javascript wrapper for 'ges_track_element_set_track_type'
}

Sets the track-type for the element.

Parameters:

type ( GES.TrackType ) –

The new track-type for object


GES.TrackElement.set_track_type

def GES.TrackElement.set_track_type (self, type):
    #python wrapper for 'ges_track_element_set_track_type'

Sets the track_type for the element.

Parameters:

type ( GES.TrackType ) –

The new track-type for object


Signals

control-binding-added

control_binding_added_callback (GESTrackElement * self,
                                GstControlBinding * control_binding,
                                gpointer user_data)

This is emitted when a control binding is added to a child property of the track element.

Parameters:

self
No description available
control_binding

The control binding that has been added

user_data
No description available

Flags: Run First


control-binding-added

function control_binding_added_callback(self: GES.TrackElement, control_binding: Gst.ControlBinding, user_data: gpointer): {
    // javascript callback for the 'control-binding-added' signal
}

This is emitted when a control binding is added to a child property of the track element.

Parameters:

self ( GES.TrackElement ) –
No description available
control_binding ( Gst.ControlBinding ) –

The control binding that has been added

user_data ( gpointer ) –
No description available

Flags: Run First


control-binding-added

def control_binding_added_callback (self, control_binding, *user_data):
    #python callback for the 'control-binding-added' signal

This is emitted when a control binding is added to a child property of the track element.

Parameters:

self ( GES.TrackElement ) –
No description available
control_binding ( Gst.ControlBinding ) –

The control binding that has been added

user_data ( variadic ) –
No description available

Flags: Run First


control-binding-removed

control_binding_removed_callback (GESTrackElement * self,
                                  GstControlBinding * control_binding,
                                  gpointer user_data)

This is emitted when a control binding is removed from a child property of the track element.

Parameters:

self
No description available
control_binding

The control binding that has been removed

user_data
No description available

Flags: Run First


control-binding-removed

function control_binding_removed_callback(self: GES.TrackElement, control_binding: Gst.ControlBinding, user_data: gpointer): {
    // javascript callback for the 'control-binding-removed' signal
}

This is emitted when a control binding is removed from a child property of the track element.

Parameters:

self ( GES.TrackElement ) –
No description available
control_binding ( Gst.ControlBinding ) –

The control binding that has been removed

user_data ( gpointer ) –
No description available

Flags: Run First


control-binding-removed

def control_binding_removed_callback (self, control_binding, *user_data):
    #python callback for the 'control-binding-removed' signal

This is emitted when a control binding is removed from a child property of the track element.

Parameters:

self ( GES.TrackElement ) –
No description available
control_binding ( Gst.ControlBinding ) –

The control binding that has been removed

user_data ( variadic ) –
No description available

Flags: Run First


Properties

active

“active” gboolean

Whether the effect of the element should be applied in its track. If set to FALSE, it will not be used in the output of the track.

Flags : Read / Write


active

“active” gboolean

Whether the effect of the element should be applied in its track. If set to FALSE (not introspectable), it will not be used in the output of the track.

Flags : Read / Write


active

“self.props.active” gboolean

Whether the effect of the element should be applied in its track. If set to FALSE (not introspectable), it will not be used in the output of the track.

Flags : Read / Write


has-internal-source

“has-internal-source” gboolean

This property is used to determine whether the 'internal time' properties of the element have any meaning. In particular, unless this is set to TRUE, the in-point and max-duration can not be set to any value other than the default 0 and GST_CLOCK_TIME_NONE, respectively.

If an element has some internal timed source GstElement that it reads stream data from as part of its function in a GESTrack, then you'll likely want to set this to TRUE to allow the in-point and max-duration to be set.

The default value is determined by the GESTrackElementClass default_has_internal_source class property. For most GESSourceClass-es, this will be TRUE, with the exception of those that have a potentially static source, such as GESImageSourceClass and GESTitleSourceClass. Otherwise, this will usually be FALSE.

For most GESOperation-s you will likely want to leave this set to FALSE. The exception may be for an operation that reads some stream data from some private internal source as part of manipulating the input data from the usual linked upstream GESTrackElement.

For example, you may want to set this to TRUE for a GES_TRACK_TYPE_VIDEO operation that wraps a textoverlay that reads from a subtitle file and places its text on top of the received video data. The in-point of the element would be used to shift the initial seek time on the textoverlay away from 0, and the max-duration could be set to reflect the time at which the subtitle file runs out of data.

Note that GES can not support track elements that have both internal content and manipulate the timing of their data streams (time effects).

Flags : Read / Write


has-internal-source

“has-internal-source” gboolean

This property is used to determine whether the 'internal time' properties of the element have any meaning. In particular, unless this is set to TRUE (not introspectable), the in-point and max-duration can not be set to any value other than the default 0 and Gst.CLOCK_TIME_NONE, respectively.

If an element has some internal timed source Gst.Element that it reads stream data from as part of its function in a GES.Track, then you'll likely want to set this to TRUE (not introspectable) to allow the in-point and max-duration to be set.

The default value is determined by the GES.TrackElementClass default_has_internal_source class property. For most GES.SourceClass-es, this will be TRUE (not introspectable), with the exception of those that have a potentially static source, such as GES.ImageSourceClass and GES.TitleSourceClass. Otherwise, this will usually be FALSE (not introspectable).

For most GES.Operation-s you will likely want to leave this set to FALSE (not introspectable). The exception may be for an operation that reads some stream data from some private internal source as part of manipulating the input data from the usual linked upstream GES.TrackElement.

For example, you may want to set this to TRUE (not introspectable) for a GES.TrackType.VIDEO operation that wraps a textoverlay (not introspectable) that reads from a subtitle file and places its text on top of the received video data. The in-point of the element would be used to shift the initial seek time on the textoverlay (not introspectable) away from 0, and the max-duration could be set to reflect the time at which the subtitle file runs out of data.

Note that GES can not support track elements that have both internal content and manipulate the timing of their data streams (time effects).

Flags : Read / Write


has_internal_source

“self.props.has_internal_source” gboolean

This property is used to determine whether the 'internal time' properties of the element have any meaning. In particular, unless this is set to TRUE (not introspectable), the in_point and max_duration can not be set to any value other than the default 0 and Gst.CLOCK_TIME_NONE, respectively.

If an element has some internal timed source Gst.Element that it reads stream data from as part of its function in a GES.Track, then you'll likely want to set this to TRUE (not introspectable) to allow the in_point and max_duration to be set.

The default value is determined by the GES.TrackElementClass default_has_internal_source class property. For most GES.SourceClass-es, this will be TRUE (not introspectable), with the exception of those that have a potentially static source, such as GES.ImageSourceClass and GES.TitleSourceClass. Otherwise, this will usually be FALSE (not introspectable).

For most GES.Operation-s you will likely want to leave this set to FALSE (not introspectable). The exception may be for an operation that reads some stream data from some private internal source as part of manipulating the input data from the usual linked upstream GES.TrackElement.

For example, you may want to set this to TRUE (not introspectable) for a GES.TrackType.VIDEO operation that wraps a textoverlay (not introspectable) that reads from a subtitle file and places its text on top of the received video data. The in_point of the element would be used to shift the initial seek time on the textoverlay (not introspectable) away from 0, and the max_duration could be set to reflect the time at which the subtitle file runs out of data.

Note that GES can not support track elements that have both internal content and manipulate the timing of their data streams (time effects).

Flags : Read / Write


track

“track” GESTrack *

The track that this element belongs to, or NULL if it does not belong to a track.

Flags : Read


track

“track” GES.Track

The track that this element belongs to, or NULL (not introspectable) if it does not belong to a track.

Flags : Read


track

“self.props.track” GES.Track

The track that this element belongs to, or NULL (not introspectable) if it does not belong to a track.

Flags : Read


track-type

“track-type” GESTrackType *

The track type of the element, which determines the type of track the element can be added to (see track-type). This should correspond to the type of data that the element can produce or process.

Flags : Read / Write / Construct


track-type

“track-type” GES.TrackType

The track type of the element, which determines the type of track the element can be added to (see track-type). This should correspond to the type of data that the element can produce or process.

Flags : Read / Write / Construct


track_type

“self.props.track_type” GES.TrackType

The track type of the element, which determines the type of track the element can be added to (see track_type). This should correspond to the type of data that the element can produce or process.

Flags : Read / Write / Construct


Virtual Methods

active_changed

active_changed (GESTrackElement * object,
                gboolean active)

Method to be called when the active property changes.

Parameters:

object
No description available
active
No description available

vfunc_active_changed

function vfunc_active_changed(object: GES.TrackElement, active: gboolean): {
    // javascript implementation of the 'active_changed' virtual method
}

Method to be called when the active property changes.

Parameters:

object ( GES.TrackElement ) –
No description available
active ( gboolean ) –
No description available

do_active_changed

def do_active_changed (object, active):
    #python implementation of the 'active_changed' virtual method

Method to be called when the active property changes.

Parameters:

object ( GES.TrackElement ) –
No description available
active ( gboolean ) –
No description available

changed

changed (GESTrackElement * object)

Parameters:

object
No description available

vfunc_changed

function vfunc_changed(object: GES.TrackElement): {
    // javascript implementation of the 'changed' virtual method
}

Parameters:

object ( GES.TrackElement ) –
No description available

do_changed

def do_changed (object):
    #python implementation of the 'changed' virtual method

Parameters:

object ( GES.TrackElement ) –
No description available

create_element

GstElement *
create_element (GESTrackElement * object)

Method to create the GstElement that the underlying nleobject controls.

Parameters:

object
No description available
Returns
No description available

create_gnl_object

GstElement *
create_gnl_object (GESTrackElement * object)

Method to create the underlying nleobject of the track element. The default implementation will use the factory given by nleobject_factorytype to created the nleobject and will give it the GstElement returned by create_element.

Parameters:

object
No description available
Returns
No description available

list_children_properties

GParamSpec **
list_children_properties (GESTrackElement * object,
                          guint * n_properties)

Deprecated: Listing children properties is handled by ges_timeline_element_list_children_properties instead.

Parameters:

object
No description available
n_properties
No description available
Returns
No description available

lookup_child

gboolean
lookup_child (GESTrackElement * object,
              const gchar * prop_name,
              GstElement ** element,
              GParamSpec ** pspec)

Deprecated: Use GESTimelineElement.lookup_child instead.

Parameters:

object
No description available
prop_name
No description available
element
No description available
pspec
No description available
Returns
No description available

vfunc_lookup_child

function vfunc_lookup_child(object: GES.TrackElement, prop_name: utf8): {
    // javascript implementation of the 'lookup_child' virtual method
}

Deprecated: Use GESTimelineElement.lookup_child instead.

Parameters:

object ( GES.TrackElement ) –
No description available
prop_name ( utf8 ) –
No description available

Returns a tuple made of:

( gboolean ) –
No description available
element ( Gst.Element ) –
No description available
pspec ( GObject.ParamSpec ) –
No description available

do_lookup_child

def do_lookup_child (object, prop_name):
    #python implementation of the 'lookup_child' virtual method

Deprecated: Use GESTimelineElement.lookup_child instead.

Parameters:

object ( GES.TrackElement ) –
No description available
prop_name ( utf8 ) –
No description available

Returns a tuple made of:

( gboolean ) –
No description available
element ( Gst.Element ) –
No description available
pspec ( GObject.ParamSpec ) –
No description available

Function Macros

GES_TRACK_ELEMENT_CLASS_DEFAULT_HAS_INTERNAL_SOURCE

#define GES_TRACK_ELEMENT_CLASS_DEFAULT_HAS_INTERNAL_SOURCE(klass) \
  ((GES_TRACK_ELEMENT_CLASS (klass))->ABI.abi.default_has_internal_source)

What the default has-internal-source value should be for new elements from this class.

Parameters:

klass

A GESTrackElementClass


Constants

GES_TYPE_TRACK_ELEMENT

#define GES_TYPE_TRACK_ELEMENT ges_track_element_get_type()

Subpages:

GESVideoSource – Base Class for video sources

GESAudioSource – Base Class for audio sources

GESAudioTestSource – produce a simple test waveform or silence

GESAudioUriSource – outputs a single audio stream from a given file

GESVideoUriSource – outputs a single video stream from a given file

GESVideoTestSource – produce solid colors and patterns, possibly with a time overlay.

GESTitleSource – render stand-alone text titles

GESTextOverlay – render text onto another video stream in a GESLayer

The results of the search are