X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=mlt%2B%2B%2Fsrc%2FMltPlaylist.h;h=d1c019dbb091d26b0a85b8e6ee66f788a064624c;hb=b5453ebae648422ca342f9d8d7ca4d7ecc5c3ef7;hp=1a7de2a318266265c621bf1bf3914bd6afee022b;hpb=01116637238e74419971afc26311c7a65b7b43aa;p=melted diff --git a/mlt++/src/MltPlaylist.h b/mlt++/src/MltPlaylist.h index 1a7de2a..d1c019d 100644 --- a/mlt++/src/MltPlaylist.h +++ b/mlt++/src/MltPlaylist.h @@ -30,32 +30,33 @@ namespace Mlt class Producer; class Service; class Playlist; + class Transition; class ClipInfo { public: ClipInfo( mlt_playlist_clip_info *info ); - ClipInfo( Playlist &playlist, int i ); ~ClipInfo( ); int clip; Producer *producer; - Service *service; - mlt_position start; + Producer *cut; + int start; char *resource; - mlt_position frame_in; - mlt_position frame_out; - mlt_position frame_count; - mlt_position length; + int frame_in; + int frame_out; + int frame_count; + int length; float fps; + int repeat; }; class Playlist : public Producer { private: - bool destroy; mlt_playlist instance; public: Playlist( ); + Playlist( Service &playlist ); Playlist( Playlist &playlist ); Playlist( mlt_playlist playlist ); virtual ~Playlist( ); @@ -63,16 +64,23 @@ namespace Mlt mlt_producer get_producer( ); int count( ); int clear( ); - int append( Producer &producer, mlt_position in = -1, mlt_position out = -1 ); - int blank( mlt_position length ); - mlt_position clip( mlt_whence whence, int index ); + int append( Producer &producer, int in = -1, int out = -1 ); + int blank( int length ); + int clip( mlt_whence whence, int index ); int current_clip( ); Producer *current( ); ClipInfo *clip_info( int index ); - int insert( Producer &producer, int where, mlt_position in = -1, mlt_position out = -1 ); + int insert( Producer &producer, int where, int in = -1, int out = -1 ); int remove( int where ); int move( int from, int to ); - int resize_clip( int clip, mlt_position in, mlt_position out ); + int resize_clip( int clip, int in, int out ); + int split( int clip, int position ); + int join( int clip, int count = 1, int merge = 1 ); + int mix( int clip, int length, Transition *transition = NULL ); + int mix_add( int clip, Transition *transition ); + int repeat( int clip, int count ); + Producer *get_clip( int clip ); + bool is_mix( int clip ); }; }