Initial code drop
[platform/upstream/gstreamer.git] / README
1 GStreamer Editing Services
2 --------------------------
3
4  This is a high-level library for facilitating the creation of audio/video
5 non-linear editors.
6
7
8 Dependencies:
9 -------------
10
11  * GStreamer core
12  * gst-plugins-base
13  * gnonlin
14
15 Classes:
16 --------
17
18 <Public>
19  TimelinePipeline : GstPipeline for Timeline playback/rendering
20    => Add methods to save/load to/from files
21    ?? Do we need undo/redo support ?
22  Timeline : Top-level container (is also a GstBin)
23    SimpleAVTimeline : Convenience A+V Timeline
24  TimelineObject : Base-class for objects you can put in a TimelineLayer
25    TimelineSource : Source objects to use in a TimelineLayer
26      => _from_uri(const gchar *uri): automatically creates a TimelineSource
27    TimelineTransition : Transitions
28    (TimelineEffect)
29  TimelineLayer : Layer of TimelineObject
30    SimpleTimelineLayer : Simpler API (contiguous objects, list API)
31
32 <PRIVATE>
33  Track : High-level single-media Composition (is a GstBin). Represents a 'stream'.
34  TrackObject : Base-class for objects you can put in a Track
35   TrackSource
36   TrackOperation
37
38 Usage:
39 ------
40
41  Create a TimelinePipeline...
42
43    pipeline = ges_timeline_pipeline_new();
44
45  ... with one layer
46
47    layer1 = ges_simple_timeline_layer_new();
48    ges_timeline_pipeline_add_layer (layer1);
49
50  Add a video source to the end
51
52    src1 = ges_timeline_source_from_uri("/my/cool/file.avi");
53    ges_simple_timeline_layer_add(src1, -1);
54
55  Set video output XID and play back the timeline
56
57    ges_timeline_pipeline_set_xid(1234567);
58    ges_timeline_pipeline_play();
59
60  Save Timeline to a file
61
62    ges_timeline_save ("/my/project.ges");
63
64  Stop output and render to a file
65
66    ges_timeline_pipeline_stop();
67    ges_timeline_pipeline_render_to_file("/my/output.mov", OUTPUT_SETTINGS);