From: lilo_booter Date: Sun, 7 Nov 2004 14:18:46 +0000 (+0000) Subject: Simplified playlist and track access X-Git-Url: http://research.m1stereo.tv/gitweb?a=commitdiff_plain;h=6d06b0de2cb66cf093bf24d9ed02fac18756105e;p=melted Simplified playlist and track access git-svn-id: https://mlt.svn.sourceforge.net/svnroot/mlt/trunk/mlt++@512 d19143bc-622f-0410-bfdd-b5b2a6649095 --- diff --git a/mlt++/src/MltPlaylist.cpp b/mlt++/src/MltPlaylist.cpp index 942b219..4bb38b7 100644 --- a/mlt++/src/MltPlaylist.cpp +++ b/mlt++/src/MltPlaylist.cpp @@ -181,6 +181,16 @@ Producer *Playlist::get_clip( int clip ) return new Producer( mlt_playlist_get_clip( get_playlist( ), clip ) ); } +Producer *Playlist::get_clip_at( int position ) +{ + return new Producer( mlt_playlist_get_clip_at( get_playlist( ), position ) ); +} + +int Playlist::get_clip_index_at( int position ) +{ + return mlt_playlist_get_clip_index_at( get_playlist( ), position ); +} + bool Playlist::is_mix( int clip ) { return mlt_playlist_clip_is_mix( get_playlist( ), clip ) != 0; diff --git a/mlt++/src/MltPlaylist.h b/mlt++/src/MltPlaylist.h index d1c019d..8aae7fb 100644 --- a/mlt++/src/MltPlaylist.h +++ b/mlt++/src/MltPlaylist.h @@ -80,6 +80,8 @@ namespace Mlt int mix_add( int clip, Transition *transition ); int repeat( int clip, int count ); Producer *get_clip( int clip ); + Producer *get_clip_at( int position ); + int get_clip_index_at( int position ); bool is_mix( int clip ); }; } diff --git a/mlt++/src/MltTractor.cpp b/mlt++/src/MltTractor.cpp index 8187a28..19c8a24 100644 --- a/mlt++/src/MltTractor.cpp +++ b/mlt++/src/MltTractor.cpp @@ -87,5 +87,11 @@ int Tractor::set_track( Producer &producer, int index ) Producer *Tractor::track( int index ) { - return new Producer( mlt_tractor_get_track( get_tractor( ), index ) ); + mlt_producer producer = mlt_tractor_get_track( get_tractor( ), index ); + return producer != NULL ? new Producer( producer ) : NULL; +} + +int Tractor::count( ) +{ + return mlt_multitrack_count( mlt_tractor_multitrack( get_tractor( ) ) ); } diff --git a/mlt++/src/MltTractor.h b/mlt++/src/MltTractor.h index dc5d20f..014f395 100644 --- a/mlt++/src/MltTractor.h +++ b/mlt++/src/MltTractor.h @@ -48,6 +48,7 @@ namespace Mlt void refresh( ); int set_track( Producer &producer, int index ); Producer *track( int index ); + int count( ); }; }