Asset | A Asset in the GStreamer Editing Services represents a resources
that can be used. In particular, any class that implements the
Extractable interface may have some associated assets with a
corresponding property::Asset::extractable-type , from which its objects can be
extracted using AssetExt::extract() . Some examples would be
Clip , GESFormatter and TrackElement .
|
BaseEffect | A BaseEffect is some operation that applies an effect to the data
it receives.
|
BaseTransitionClip | This is an Abstract Base Class, you cannot instantiate it.
|
Clip | Clip -s are the core objects of a Layer . Each clip may exist in
a single layer but may control several TrackElement -s that span
several Track -s. A clip will ensure that all its children share the
same property::TimelineElement::start and property::TimelineElement::duration in
their tracks, which will match the property::TimelineElement::start and
property::TimelineElement::duration of the clip itself. Therefore, changing
the timing of the clip will change the timing of the children, and a
change in the timing of a child will change the timing of the clip and
subsequently all its siblings. As such, a clip can be treated as a
singular object in its layer.
|
Container | A Container is a timeline element that controls other
TimelineElement -s, which are its children. In particular, it is
responsible for maintaining the relative property::TimelineElement::start and
property::TimelineElement::duration times of its children. Therefore, if a
container is temporally adjusted or moved to a new layer, it may
accordingly adjust and move its children. Similarly, a change in one of
its children may prompt the parent to correspondingly change its
siblings.
|
Effect | Currently we only support effects with N sinkpads and one single srcpad.
Apart from gesaudiomixer and gescompositor which can be used as effects
and where sinkpads will be requested as needed based on the timeline topology
GES will always request at most one sinkpad per effect (when required).
|
Extractable | A glib::Object that implements the Extractable interface can be
extracted from a Asset using AssetExt::extract() .
|
Group | A Group controls one or more Container -s (usually Clip -s,
but it can also control other Group -s). Its children must share
the same Timeline , but can otherwise lie in separate Layer -s
and have different timings.
|
Layer | Layer -s are responsible for collecting and ordering Clip -s.
|
OperationClip | Operations are any kind of object that both outputs AND consumes data.
|
Pipeline | A Pipeline can take an audio-video Timeline and conveniently
link its Track -s to an internal playsink element, for
preview/playback, and an internal encodebin element, for rendering.
You can switch between these modes using GESPipelineExt::set_mode() .
|
PipelineFlags | The various modes a Pipeline can be configured to.
|
Project | The Project is used to control a set of Asset and is a
Asset with GES_TYPE_TIMELINE as extractable_type itself. That
means that you can extract Timeline from a project as followed:
|
Timeline | Timeline is the central object for any multimedia timeline.
|
TimelineElement | A TimelineElement will have some temporal extent in its
corresponding property::TimelineElement::timeline , controlled by its
property::TimelineElement::start and property::TimelineElement::duration . This
determines when its content will be displayed, or its effect applied,
in the timeline. Several objects may overlap within a given
Timeline , in which case their property::TimelineElement::priority is used
to determine their ordering in the timeline. Priority is mostly handled
internally by Layer -s and Clip -s.
|
Track | A Track acts an output source for a Timeline . Each one
essentially provides an additional gst::Pad for the timeline, with
property::Track::restriction-caps capabilities. Internally, a track
wraps an nlecomposition filtered by a capsfilter .
|
TrackElement | A TrackElement is a TimelineElement that specifically belongs
to a single Track of its property::TimelineElement::timeline . Its
property::TimelineElement::start and property::TimelineElement::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 TrackElementExt::nleobject() , and its
property::TimelineElement::start , property::TimelineElement::duration ,
property::TimelineElement::in-point , property::TimelineElement::priority and
property::TrackElement::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.
|
TrackType | Types of content handled by a track. If the content is not one of
AUDIO , VIDEO or TEXT ,
the user of the Track must set the type to CUSTOM .
|
TransitionClip | Creates an object that mixes together the two underlying objects, A and B.
The A object is assumed to have a higher prioirity (lower number) than the
B object. At the transition in point, only A will be visible, and by the
end only B will be visible.
|
UriClip | Represents all the output streams from a particular uri. It is assumed that
the URI points to a file of some type.
|
UriClipAsset | Implements
|
UriSourceAsset | Asset to create a stream specific GESSource for a media file.
|