Top | ![]() |
![]() |
![]() |
![]() |
GESTrackElement * | (*GESCreateTrackElementFunc) () |
GList * | (*GESCreateTrackElementsFunc) () |
gboolean | (*GESFillTrackElementFunc) () |
GESLayer * | ges_clip_get_layer () |
GESTrackElement * | ges_clip_find_track_element () |
GList * | ges_clip_find_track_elements () |
GESTrackElement * | ges_clip_add_asset () |
GList * | ges_clip_get_top_effects () |
gint | ges_clip_get_top_effect_index () |
gboolean | ges_clip_move_to_layer () |
gboolean | ges_clip_set_top_effect_index () |
void | ges_clip_set_supported_formats () |
GESTrackType | ges_clip_get_supported_formats () |
GESClip * | ges_clip_split () |
GObject ╰── GInitiallyUnowned ╰── GESTimelineElement ╰── GESContainer ╰── GESClip ├── GESOperationClip ╰── GESSourceClip
A GESClip is a 'natural' object which controls one or more GESTrackElement(s) in one or more GESTrack(s).
Keeps a reference to the GESTrackElement(s) it created and sets/updates their properties.
GESTrackElement * (*GESCreateTrackElementFunc) (GESClip *clip
,GESTrackType type
);
Creates the 'primary' track element for this clip
.
Subclasses should implement this method if they only provide a single GESTrackElement per track.
If the subclass needs to create more than one GESTrackElement for a given track, then it should implement the 'create_track_elements' method instead.
The implementer of this function shall return the proper GESTrackElement
that should be controlled by clip
for the given track
.
The returned GESTrackElement will be automatically added to the list of objects controlled by the GESClip.
GList * (*GESCreateTrackElementsFunc) (GESClip *clip
,GESTrackType type
);
Create all track elements this clip handles for this type of track.
Subclasses should implement this method if they potentially need to return more than one GESTrackElement(s) for a given GESTrack.
gboolean (*GESFillTrackElementFunc) (GESClip *clip
,GESTrackElement *track_element
,GstElement *nleobj
);
A function that will be called when the GNonLin object of a corresponding track element needs to be filled.
The implementer of this function shall add the proper GstElement to nleobj
using gst_bin_add()
.
clip |
the GESClip controlling the track elements |
|
track_element |
the GESTrackElement |
|
nleobj |
the GNonLin object that needs to be filled. |
GESLayer *
ges_clip_get_layer (GESClip *clip
);
Get the GESLayer to which this clip belongs.
GESTrackElement * ges_clip_find_track_element (GESClip *clip
,GESTrack *track
,GType type
);
Finds the GESTrackElement controlled by clip
that is used in track
. You
may optionally specify a GType to further narrow search criteria.
Note: If many objects match, then the one with the highest priority will be returned.
GList * ges_clip_find_track_elements (GESClip *clip
,GESTrack *track
,GESTrackType track_type
,GType type
);
Finds all the GESTrackElement controlled by clip
that is used in track
. You
may optionally specify a GType to further narrow search criteria.
clip |
a GESClip |
|
track |
a GESTrack or NULL. |
[allow-none] |
track_type |
a GESTrackType indicating the type of tracks in which elements should be searched. |
|
type |
a GType indicating the type of track element you are looking
for or |
a GList of the
GESTrackElement contained in clip
.
The refcount of the objects will be increased. The user will have to
unref each GESTrackElement and free the GList.
[transfer full][element-type GESTrackElement]
GESTrackElement * ges_clip_add_asset (GESClip *clip
,GESAsset *asset
);
Extracts a GESTrackElement from asset
and adds it to the clip
.
Should only be called in order to add operations to a GESClip,
ni other cases TrackElement are added automatically when adding the
GESClip/GESAsset to a layer.
Takes a reference on track_element
.
GList *
ges_clip_get_top_effects (GESClip *clip
);
Get effects applied on clip
a GList of the
GESBaseEffect that are applied on clip
order by ascendant priorities.
The refcount of the objects will be increased. The user will have to
unref each GESBaseEffect and free the GList.
[transfer full][element-type GESTrackElement]
gint ges_clip_get_top_effect_index (GESClip *clip
,GESBaseEffect *effect
);
Gets the index position of an effect.
gboolean ges_clip_move_to_layer (GESClip *clip
,GESLayer *layer
);
Moves clip
to layer
. If clip
is not in any layer, it adds it to
layer
, else, it removes it from its current layer, and adds it to layer
.
gboolean ges_clip_set_top_effect_index (GESClip *clip
,GESBaseEffect *effect
,guint newindex
);
This is a convenience method that lets you set the index of a top effect.
clip |
The origin GESClip |
|
effect |
The GESBaseEffect to move |
|
newindex |
the new index at which to move the |
void ges_clip_set_supported_formats (GESClip *clip
,GESTrackType supportedformats
);
Sets the formats supported by the file.
clip |
the GESClip to set supported formats on |
|
supportedformats |
the GESTrackType defining formats supported by |
GESTrackType
ges_clip_get_supported_formats (GESClip *clip
);
Get the formats supported by clip
.
GESClip * ges_clip_split (GESClip *clip
,guint64 position
);
The function modifies clip
, and creates another GESClip so
we have two clips at the end, splitted at the time specified by position
.
The newly created clip will be added to the same layer as clip
is in.
This implies that clip
must be in a GESLayer for the operation to
be possible.
clip |
the GESClip to split |
|
position |
a GstClockTime representing the position at which to split |
typedef struct { GESCreateTrackElementFunc create_track_element; GESCreateTrackElementsFunc create_track_elements; } GESClipClass;
Subclasses can override the create_track_element
.
GESCreateTrackElementFunc |
method to create a single GESTrackElement for a given GESTrack. |
|
GESCreateTrackElementsFunc |
method to create multiple GESTrackElements for a GESTrack. |
“layer”
property“layer” GESLayer *
The GESLayer where this clip is being used. If you want to connect to its notify signal you should connect to it with g_signal_connect_after as the signal emission can be stop in the first fase.
Flags: Read
“supported-formats”
property“supported-formats” GESTrackType
The formats supported by the clip.
Flags: Read / Write / Construct
Default value: GES_TRACK_TYPE_AUDIO | GES_TRACK_TYPE_VIDEO