GESTrack: GStreamer Editing Services 1.9.1 Reference Manual

## GESTrack GESTrack |

## Functions

GstElement * | (*GESCreateElementForGapFunc) ()
GESTrack * | ges_track_new ()
gboolean | ges_track_add_element ()
void | ges_track_set_restriction_caps ()
void | ges_track_update_restriction_caps ()
gboolean | ges_track_remove_element ()
const GstCaps * | ges_track_get_caps ()
GList * | ges_track_get_elements ()
gboolean | ges_track_commit ()
gboolean | ges_track_get_mixing ()
void | ges_track_set_mixing ()

## Properties

GstCaps * | caps | Read / Write / Construct Only
guint64 | duration | Read
gboolean | mixing | Read / Write / Construct
GstCaps * | restriction-caps | Read / Write
GESTrackType | track-type | Read / Write / Construct Only

## Signals

void | commited | Run Last
void | track-element-added | Run First
void | track-element-removed | Run First

## Types and Values

| GESTrack

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── GstObject
                ╰── GstElement
                    ╰── GstBin
                        ╰── GESTrack

## Implemented Interfaces

GESTrack implements GstChildProxy and GESMetaContainer.

## Includes

    #include <ges/ges.h>

## Description

## Functions

### GESCreateElementForGapFunc ()

    GstElement *
    (*GESCreateElementForGapFunc) (GESTrack *track);

### ges_track_new ()

    GESTrack *
    ges_track_new (GESTrackType type,
                   GstCaps *caps);

### ges_track_add_element ()

    gboolean
    ges_track_add_element (GESTrack *track,
                           GESTrackElement *object);

### ges_track_set_restriction_caps ()

    void
    ges_track_set_restriction_caps (GESTrack *track,
                                    const GstCaps *caps);

### ges_track_update_restriction_caps ()

    void
    ges_track_update_restriction_caps (GESTrack *track,
                                       const GstCaps *caps);

### ges_track_remove_element ()

    gboolean
    ges_track_remove_element (GESTrack *track,
                              GESTrackElement *object);

### ges_track_get_caps ()

    const GstCaps *
    ges_track_get_caps (GESTrack *track);

### ges_track_get_elements ()

    GList *
    ges_track_get_elements (GESTrack *track);

### ges_track_commit ()

    gboolean
    ges_track_commit (GESTrack *track);

### ges_track_get_mixing ()

    gboolean
    ges_track_get_mixing (GESTrack *track);

### ges_track_set_mixing ()

    void
    ges_track_set_mixing (GESTrack *track,
                          gboolean mixing);

## Types and Values

### GESTrack

    typedef struct {
      /* READ-ONLY */
      GESTrackType     type;
    } GESTrack;

## Property Details

### The `“caps”` property

      “caps”                     GstCaps *

Caps used to filter/choose the output stream.

Flags: Read / Write / Construct Only

### The `“duration”` property

      “duration”                 guint64

The current duration of the track.

Flags: Read

Default value: 1000000000

### The `“mixing”` property

      “mixing”                   gboolean

Whether layer mixing is activated on the track or not.

Flags: Read / Write / Construct

Default value: TRUE

### The `“restriction-caps”` property

      “restriction-caps”         GstCaps *

Caps used to filter/choose the output stream.

Flags: Read / Write

### The `“track-type”` property

      “track-type”               GESTrackType

Type of stream the track outputs.

Flags: Read / Write / Construct Only

Default value: GES_TRACK_TYPE_CUSTOM

## Signal Details

### The `“commited”` signal

    void
    user_function (GESTrack *gestrack,
                   gpointer  user_data)

Flags: Run Last

### The `“track-element-added”` signal

    void
    user_function (GESTrack        *gestrack,
                   GESTrackElement *arg1,
                   gpointer         user_data)

Flags: Run First

### The `“track-element-removed”` signal

    void
    user_function (GESTrack        *gestrack,
                   GESTrackElement *arg1,
                   gpointer         user_data)

Flags: Run First