mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-23 10:11:08 +00:00
GStreamer multimedia framework
1bb45a61a6
If a GESTimelineFileSource is added to a layer and: * It doesn't have specified supported formats * OR it doesn't have a specified maximum duration * OR it doesn't have a specifed duration Then we asynchronously send it to the GstDiscoverer. If this happens, the state change of the timeline from READY to PAUSED will happen asynchronously and be completed when everything has been properly discovered. Part 2 of GstDiscoverer integration |
||
---|---|---|
common@101aaa77ed | ||
docs | ||
ges | ||
m4 | ||
tests | ||
.gitignore | ||
.gitmodules | ||
AUTHORS | ||
autogen.sh | ||
ChangeLog | ||
configure.ac | ||
COPYING | ||
COPYING.LIB | ||
gst-editing-services.doap | ||
gst-editing-services.spec.in | ||
INSTALL | ||
Makefile.am | ||
NEWS | ||
README | ||
RELEASE |
GStreamer Editing Services -------------------------- This is a high-level library for facilitating the creation of audio/video non-linear editors. License: -------- This package and its contents are licensend under the GNU Lesser General Public License (LGPL). Dependencies: ------------- * GStreamer core * gst-plugins-base * gnonlin Classes: -------- <Public> TimelinePipeline : GstPipeline for Timeline playback/rendering => Add methods to save/load to/from files ?? Do we need undo/redo support ? Timeline : Top-level container (is also a GstBin) SimpleAVTimeline : Convenience A+V Timeline TimelineObject : Base-class for objects you can put in a TimelineLayer TimelineSource : Source objects to use in a TimelineLayer => _from_uri(const gchar *uri): automatically creates a TimelineSource TimelineTransition : Transitions (TimelineEffect) TimelineLayer : Layer of TimelineObject SimpleTimelineLayer : Simpler API (contiguous objects, list API) <PRIVATE> Track : High-level single-media Composition (is a GstBin). Represents a 'stream'. TrackObject : Base-class for objects you can put in a Track TrackSource TrackOperation Usage: ------ Create a TimelinePipeline... pipeline = ges_timeline_pipeline_new(); ... with one layer layer1 = ges_simple_timeline_layer_new(); ges_timeline_pipeline_add_layer (layer1); Add a video source to the end src1 = ges_timeline_source_from_uri("/my/cool/file.avi"); ges_simple_timeline_layer_add(src1, -1); Set video output XID and play back the timeline ges_timeline_pipeline_set_xid(1234567); ges_timeline_pipeline_play(); Save Timeline to a file ges_timeline_save ("/my/project.ges"); Stop output and render to a file ges_timeline_pipeline_stop(); ges_timeline_pipeline_render_to_file("/my/output.mov", OUTPUT_SETTINGS);