mlt 0.7.6

mlt_multitrack.h

Go to the documentation of this file.
00001 
00024 #ifndef _MLT_MULITRACK_H_
00025 #define _MLT_MULITRACK_H_
00026 
00027 #include "mlt_producer.h"
00028 
00032 struct mlt_track_s
00033 {
00034     mlt_producer producer;
00035     mlt_event event;
00036 };
00037 
00038 typedef struct mlt_track_s *mlt_track;
00039 
00048 struct mlt_multitrack_s
00049 {
00051     struct mlt_producer_s parent;
00052     mlt_track *list;
00053     int size;
00054     int count;
00055 };
00056 
00057 #define MLT_MULTITRACK_PRODUCER( multitrack )   ( &( multitrack )->parent )
00058 #define MLT_MULTITRACK_SERVICE( multitrack )    MLT_PRODUCER_SERVICE( MLT_MULTITRACK_PRODUCER( multitrack ) )
00059 #define MLT_MULTITRACK_PROPERTIES( multitrack ) MLT_SERVICE_PROPERTIES( MLT_MULTITRACK_SERVICE( multitrack ) )
00060 
00061 extern mlt_multitrack mlt_multitrack_init( );
00062 extern mlt_producer mlt_multitrack_producer( mlt_multitrack self );
00063 extern mlt_service mlt_multitrack_service( mlt_multitrack self );
00064 extern mlt_properties mlt_multitrack_properties( mlt_multitrack self );
00065 extern int mlt_multitrack_connect( mlt_multitrack self, mlt_producer producer, int track );
00066 extern mlt_position mlt_multitrack_clip( mlt_multitrack self, mlt_whence whence, int index );
00067 extern void mlt_multitrack_close( mlt_multitrack self );
00068 extern int mlt_multitrack_count( mlt_multitrack self );
00069 extern void mlt_multitrack_refresh( mlt_multitrack self );
00070 extern mlt_producer mlt_multitrack_track( mlt_multitrack self, int track );
00071 
00072 #endif
00073 
TWiki Appliance - Powered by TurnKey Linux