From: lilo_booter Date: Sun, 26 Sep 2004 19:48:18 +0000 (+0000) Subject: Playlist repeat clip functionality X-Git-Url: http://research.m1stereo.tv/gitweb?a=commitdiff_plain;h=a73dbca8c02fda57a6789d08d716a20e1ba43c59;p=melted Playlist repeat clip functionality git-svn-id: https://mlt.svn.sourceforge.net/svnroot/mlt/trunk/mlt++@451 d19143bc-622f-0410-bfdd-b5b2a6649095 --- diff --git a/mlt++/README b/mlt++/README index 40add02..24b4d85 100644 --- a/mlt++/README +++ b/mlt++/README @@ -76,7 +76,6 @@ CLASS HIERARCHY Frame Service Consumer - FilteredConsumer [*] Field Filter Multitrack @@ -85,7 +84,12 @@ CLASS HIERARCHY Tractor Transition - [*] These classes have no direct equivalent in the C API. + An additional set of classes allow apps to behave as, and communicate with, + client/server components - these components provide MLT with unique + possibilties for process to process or system to system communications. + + Miracle + Response SPECIAL CASES ------------- diff --git a/mlt++/src/MltPlaylist.cpp b/mlt++/src/MltPlaylist.cpp index d85012f..2a207fb 100644 --- a/mlt++/src/MltPlaylist.cpp +++ b/mlt++/src/MltPlaylist.cpp @@ -27,21 +27,22 @@ using namespace Mlt; ClipInfo::ClipInfo( mlt_playlist_clip_info *info ) : clip( info->clip ), producer( new Producer( info->producer ) ), - service( new Service( info->service ) ), + cut( new Producer( info->cut ) ), start( info->start ), resource( strdup( info->resource ) ), frame_in( info->frame_in ), frame_out( info->frame_out ), frame_count( info->frame_count ), length( info->length ), - fps( info->fps ) + fps( info->fps ), + repeat( info->repeat ) { } ClipInfo::~ClipInfo( ) { delete producer; - delete service; + delete cut; free( resource ); } @@ -164,3 +165,8 @@ int Playlist::mix( int clip, int length, Transition *transition ) { return mlt_playlist_mix( get_playlist( ), clip, length, transition == NULL ? NULL : transition->get_transition( ) ); } + +int Playlist::repeat( int clip, int count ) +{ + return mlt_playlist_repeat_clip( get_playlist( ), clip, count ); +} diff --git a/mlt++/src/MltPlaylist.h b/mlt++/src/MltPlaylist.h index ece8bed..f31c58c 100644 --- a/mlt++/src/MltPlaylist.h +++ b/mlt++/src/MltPlaylist.h @@ -39,7 +39,7 @@ namespace Mlt ~ClipInfo( ); int clip; Producer *producer; - Service *service; + Producer *cut; int start; char *resource; int frame_in; @@ -47,6 +47,7 @@ namespace Mlt int frame_count; int length; float fps; + int repeat; }; class Playlist : public Producer @@ -76,6 +77,7 @@ namespace Mlt 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 repeat( int clip, int count ); }; }