gstreamer/README
2009-08-04 17:13:11 +02:00

68 lines
1.7 KiB
Plaintext

GStreamer Editing Services
--------------------------
This is a high-level library for facilitating the creation of audio/video
non-linear editors.
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);