X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=mlt%2B%2B%2Fsrc%2FMltPlaylist.h;h=ece8bede775bc01f0dd3ede86cdef9952fa3daa0;hb=c76ddcb7811f95802802d65d56adeaeab5af9a39;hp=e70e9336c9d49f2ab61a1ddc898f48573df8cf30;hpb=89819752a90cc7f75137c6d951081dcf31b50c0c;p=melted diff --git a/mlt++/src/MltPlaylist.h b/mlt++/src/MltPlaylist.h index e70e933..ece8bed 100644 --- a/mlt++/src/MltPlaylist.h +++ b/mlt++/src/MltPlaylist.h @@ -27,6 +27,11 @@ namespace Mlt { + class Producer; + class Service; + class Playlist; + class Transition; + class ClipInfo { public: @@ -35,45 +40,42 @@ namespace Mlt int clip; Producer *producer; Service *service; - mlt_position start; + 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; }; class Playlist : public Producer { + private: + mlt_playlist instance; public: - virtual mlt_playlist get_playlist( ) = 0; + Playlist( ); + Playlist( Service &playlist ); + Playlist( Playlist &playlist ); + Playlist( mlt_playlist playlist ); + virtual ~Playlist( ); + virtual mlt_playlist get_playlist( ); 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 ); - }; - - class PlaylistInstance : public Playlist - { - private: - bool destroy; - mlt_playlist instance; - public: - mlt_playlist get_playlist( ); - PlaylistInstance( ); - PlaylistInstance( Playlist &playlist ); - PlaylistInstance( mlt_playlist playlist ); - virtual ~PlaylistInstance( ); + 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 ); }; }