GESTimelineElement

GESTimelineElement

Functions

gboolean ges_timeline_element_set_parent ()
GESTimelineElement * ges_timeline_element_get_parent ()
gboolean ges_timeline_element_set_timeline ()
GESTimeline * ges_timeline_element_get_timeline ()
void ges_timeline_element_set_start ()
void ges_timeline_element_set_inpoint ()
void ges_timeline_element_set_duration ()
void ges_timeline_element_set_max_duration ()
void ges_timeline_element_set_priority ()
GstClockTime ges_timeline_element_get_start ()
GstClockTime ges_timeline_element_get_inpoint ()
GstClockTime ges_timeline_element_get_duration ()
GstClockTime ges_timeline_element_get_max_duration ()
guint32 ges_timeline_element_get_priority ()
gboolean ges_timeline_element_ripple ()
gboolean ges_timeline_element_ripple_end ()
gboolean ges_timeline_element_roll_start ()
gboolean ges_timeline_element_roll_end ()
gboolean ges_timeline_element_trim ()
GESTimelineElement * ges_timeline_element_get_toplevel_parent ()
GESTimelineElement * ges_timeline_element_copy ()
GESTimelineElement * ges_timeline_element_paste ()
gchar * ges_timeline_element_get_name ()
gboolean ges_timeline_element_set_name ()
GParamSpec ** ges_timeline_element_list_children_properties ()
gboolean ges_timeline_element_lookup_child ()
void ges_timeline_element_get_child_property_by_pspec ()
void ges_timeline_element_get_child_property_valist ()
void ges_timeline_element_get_child_properties ()
void ges_timeline_element_set_child_property_valist ()
void ges_timeline_element_set_child_property_by_pspec ()
void ges_timeline_element_set_child_properties ()
gboolean ges_timeline_element_set_child_property ()
gboolean ges_timeline_element_get_child_property ()
gboolean ges_timeline_element_add_child_property ()
gboolean ges_timeline_element_remove_child_property ()
GESTrackType ges_timeline_element_get_track_types ()
#define GES_TIMELINE_ELEMENT_PARENT()
#define GES_TIMELINE_ELEMENT_TIMELINE()
#define GES_TIMELINE_ELEMENT_START()
#define GES_TIMELINE_ELEMENT_END()
#define GES_TIMELINE_ELEMENT_INPOINT()
#define GES_TIMELINE_ELEMENT_DURATION()
#define GES_TIMELINE_ELEMENT_MAX_DURATION()
#define GES_TIMELINE_ELEMENT_PRIORITY()
#define GES_TIMELINE_ELEMENT_NAME()

Types and Values

Object Hierarchy

    GObject
    ╰── GInitiallyUnowned
        ╰── GESTimelineElement
            ├── GESContainer
            ╰── GESTrackElement

Implemented Interfaces

GESTimelineElement implements GESExtractable and GESMetaContainer.

Includes

#include <ges/ges.h>

Description

Functions

ges_timeline_element_set_parent ()

gboolean
ges_timeline_element_set_parent (GESTimelineElement *self,
                                 GESTimelineElement *parent);

ges_timeline_element_get_parent ()

GESTimelineElement *
ges_timeline_element_get_parent (GESTimelineElement *self);

ges_timeline_element_set_timeline ()

gboolean
ges_timeline_element_set_timeline (GESTimelineElement *self,
                                   GESTimeline *timeline);

ges_timeline_element_get_timeline ()

GESTimeline *
ges_timeline_element_get_timeline (GESTimelineElement *self);

ges_timeline_element_set_start ()

void
ges_timeline_element_set_start (GESTimelineElement *self,
                                GstClockTime start);

ges_timeline_element_set_inpoint ()

void
ges_timeline_element_set_inpoint (GESTimelineElement *self,
                                  GstClockTime inpoint);

ges_timeline_element_set_duration ()

void
ges_timeline_element_set_duration (GESTimelineElement *self,
                                   GstClockTime duration);

ges_timeline_element_set_max_duration ()

void
ges_timeline_element_set_max_duration (GESTimelineElement *self,
                                       GstClockTime maxduration);

ges_timeline_element_set_priority ()

void
ges_timeline_element_set_priority (GESTimelineElement *self,
                                   guint32 priority);

ges_timeline_element_get_start ()

GstClockTime
ges_timeline_element_get_start (GESTimelineElement *self);

ges_timeline_element_get_inpoint ()

GstClockTime
ges_timeline_element_get_inpoint (GESTimelineElement *self);

ges_timeline_element_get_duration ()

GstClockTime
ges_timeline_element_get_duration (GESTimelineElement *self);

ges_timeline_element_get_max_duration ()

GstClockTime
ges_timeline_element_get_max_duration (GESTimelineElement *self);

ges_timeline_element_get_priority ()

guint32
ges_timeline_element_get_priority (GESTimelineElement *self);

ges_timeline_element_ripple ()

gboolean
ges_timeline_element_ripple (GESTimelineElement *self,
                             GstClockTime start);

ges_timeline_element_ripple_end ()

gboolean
ges_timeline_element_ripple_end (GESTimelineElement *self,
                                 GstClockTime end);

ges_timeline_element_roll_start ()

gboolean
ges_timeline_element_roll_start (GESTimelineElement *self,
                                 GstClockTime start);

ges_timeline_element_roll_end ()

gboolean
ges_timeline_element_roll_end (GESTimelineElement *self,
                               GstClockTime end);

ges_timeline_element_trim ()

gboolean
ges_timeline_element_trim (GESTimelineElement *self,
                           GstClockTime start);

ges_timeline_element_get_toplevel_parent ()

GESTimelineElement *
ges_timeline_element_get_toplevel_parent
                               (GESTimelineElement *self);

ges_timeline_element_copy ()

GESTimelineElement *
ges_timeline_element_copy (GESTimelineElement *self,
                           gboolean deep);

ges_timeline_element_paste ()

GESTimelineElement *
ges_timeline_element_paste (GESTimelineElement *self,
                            GstClockTime paste_position);

ges_timeline_element_get_name ()

gchar *
ges_timeline_element_get_name (GESTimelineElement *self);

ges_timeline_element_set_name ()

gboolean
ges_timeline_element_set_name (GESTimelineElement *self,
                               const gchar *name);

ges_timeline_element_list_children_properties ()

GParamSpec **
ges_timeline_element_list_children_properties
                               (GESTimelineElement *self,
                                guint *n_properties);

ges_timeline_element_lookup_child ()

gboolean
ges_timeline_element_lookup_child (GESTimelineElement *self,
                                   const gchar *prop_name,
                                   GObject **child,
                                   GParamSpec **pspec);

ges_timeline_element_get_child_property_by_pspec ()

void
ges_timeline_element_get_child_property_by_pspec
                               (GESTimelineElement *self,
                                GParamSpec *pspec,
                                GValue *value);

ges_timeline_element_get_child_property_valist ()

void
ges_timeline_element_get_child_property_valist
                               (GESTimelineElement *self,
                                const gchar *first_property_name,
                                va_list var_args);

ges_timeline_element_get_child_properties ()

void
ges_timeline_element_get_child_properties
                               (GESTimelineElement *self,
                                const gchar *first_property_name,
                                ...);

ges_timeline_element_set_child_property_valist ()

void
ges_timeline_element_set_child_property_valist
                               (GESTimelineElement *self,
                                const gchar *first_property_name,
                                va_list var_args);

ges_timeline_element_set_child_property_by_pspec ()

void
ges_timeline_element_set_child_property_by_pspec
                               (GESTimelineElement *self,
                                GParamSpec *pspec,
                                GValue *value);

ges_timeline_element_set_child_properties ()

void
ges_timeline_element_set_child_properties
                               (GESTimelineElement *self,
                                const gchar *first_property_name,
                                ...);

ges_timeline_element_set_child_property ()

gboolean
ges_timeline_element_set_child_property
                               (GESTimelineElement *self,
                                const gchar *property_name,
                                GValue *value);

ges_timeline_element_get_child_property ()

gboolean
ges_timeline_element_get_child_property
                               (GESTimelineElement *self,
                                const gchar *property_name,
                                GValue *value);

ges_timeline_element_add_child_property ()

gboolean
ges_timeline_element_add_child_property
                               (GESTimelineElement *self,
                                GParamSpec *pspec,
                                GObject *child);

ges_timeline_element_remove_child_property ()

gboolean
ges_timeline_element_remove_child_property
                               (GESTimelineElement *self,
                                GParamSpec *pspec);

ges_timeline_element_get_track_types ()

GESTrackType
ges_timeline_element_get_track_types (GESTimelineElement *self);

GES_TIMELINE_ELEMENT_PARENT()

#define GES_TIMELINE_ELEMENT_PARENT(obj) (((GESTimelineElement*)obj)->parent)

GES_TIMELINE_ELEMENT_TIMELINE()

#define GES_TIMELINE_ELEMENT_TIMELINE(obj) (((GESTimelineElement*)obj)->timeline)

GES_TIMELINE_ELEMENT_START()

#define GES_TIMELINE_ELEMENT_START(obj) (((GESTimelineElement*)obj)->start)

GES_TIMELINE_ELEMENT_END()

#define GES_TIMELINE_ELEMENT_END(obj) ((((GESTimelineElement*)obj)->start) + (((GESTimelineElement*)obj)->duration))

GES_TIMELINE_ELEMENT_INPOINT()

#define GES_TIMELINE_ELEMENT_INPOINT(obj) (((GESTimelineElement*)obj)->inpoint)

GES_TIMELINE_ELEMENT_DURATION()

#define GES_TIMELINE_ELEMENT_DURATION(obj) (((GESTimelineElement*)obj)->duration)

GES_TIMELINE_ELEMENT_MAX_DURATION()

#define GES_TIMELINE_ELEMENT_MAX_DURATION(obj) (((GESTimelineElement*)obj)->maxduration)

GES_TIMELINE_ELEMENT_PRIORITY()

#define GES_TIMELINE_ELEMENT_PRIORITY(obj) (((GESTimelineElement*)obj)->priority)

GES_TIMELINE_ELEMENT_NAME()

#define GES_TIMELINE_ELEMENT_NAME(obj) (((GESTimelineElement*)obj)->name)

Types and Values

GESTimelineElement

typedef struct {
  /*< read only >*/
  GESTimelineElement *parent;
  GESAsset *asset;
  GstClockTime start;
  GstClockTime inpoint;
  GstClockTime duration;
  GstClockTime maxduration;
  guint32 priority;
  GESTimeline *timeline;
  gchar *name;
} GESTimelineElement;

GESTimelineElementClass

typedef struct {
  GInitiallyUnownedClass parent_class;

  gboolean (*set_parent)       (GESTimelineElement * self, GESTimelineElement *parent);
  gboolean (*set_start)        (GESTimelineElement * self, GstClockTime start);
  gboolean (*set_inpoint)      (GESTimelineElement * self, GstClockTime inpoint);
  gboolean (*set_duration)     (GESTimelineElement * self, GstClockTime duration);
  gboolean (*set_max_duration) (GESTimelineElement * self, GstClockTime maxduration);
  gboolean (*set_priority)     (GESTimelineElement * self, guint32 priority);

  gboolean (*ripple)           (GESTimelineElement *self, guint64  start);
  gboolean (*ripple_end)       (GESTimelineElement *self, guint64  end);
  gboolean (*roll_start)       (GESTimelineElement *self, guint64  start);
  gboolean (*roll_end)         (GESTimelineElement *self, guint64  end);
  gboolean (*trim)             (GESTimelineElement *self, guint64  start);
  void     (*deep_copy)        (GESTimelineElement *self, GESTimelineElement *copy);

  GESTimelineElement * (*paste) (GESTimelineElement *self,
                                   GESTimelineElement *ref_element,
                                   GstClockTime paste_position);

  GParamSpec** (*list_children_properties) (GESTimelineElement * self, guint *n_properties);
  gboolean (*lookup_child)                 (GESTimelineElement *self, const gchar *prop_name,
                                            GObject **child, GParamSpec **pspec);
  GESTrackType (*get_track_types)          (GESTimelineElement * self);
} GESTimelineElementClass;