From e9506a0f7005ad5cc8821879ba78b8c42f3ec4bb Mon Sep 17 00:00:00 2001 From: lilo_booter Date: Sat, 28 Aug 2004 18:34:27 +0000 Subject: [PATCH] Tractor enhancements git-svn-id: https://mlt.svn.sourceforge.net/svnroot/mlt/trunk/mlt++@396 d19143bc-622f-0410-bfdd-b5b2a6649095 --- mlt++/README | 6 ++++++ mlt++/src/MltMultitrack.cpp | 4 ++++ mlt++/src/MltMultitrack.h | 1 + mlt++/src/MltTractor.cpp | 14 ++++++++++++++ mlt++/src/MltTractor.h | 3 +++ mlt++/swig/mltpp.i | 3 ++- 6 files changed, 30 insertions(+), 1 deletions(-) diff --git a/mlt++/README b/mlt++/README index b0c44c6..40add02 100644 --- a/mlt++/README +++ b/mlt++/README @@ -76,11 +76,17 @@ CLASS HIERARCHY Frame Service Consumer + FilteredConsumer [*] + Field Filter + Multitrack Producer Playlist + Tractor Transition + [*] These classes have no direct equivalent in the C API. + SPECIAL CASES ------------- diff --git a/mlt++/src/MltMultitrack.cpp b/mlt++/src/MltMultitrack.cpp index 1f5ec72..fbd9f24 100644 --- a/mlt++/src/MltMultitrack.cpp +++ b/mlt++/src/MltMultitrack.cpp @@ -69,3 +69,7 @@ Producer *Multitrack::track( int index ) return new Producer( mlt_multitrack_track( get_multitrack( ), index ) ); } +void Multitrack::refresh( ) +{ + return mlt_multitrack_refresh( get_multitrack( ) ); +} diff --git a/mlt++/src/MltMultitrack.h b/mlt++/src/MltMultitrack.h index c8b24e2..52588ee 100644 --- a/mlt++/src/MltMultitrack.h +++ b/mlt++/src/MltMultitrack.h @@ -43,6 +43,7 @@ namespace Mlt int clip( mlt_whence whence, int index ); int count( ); Producer *track( int index ); + void refresh( ); }; } diff --git a/mlt++/src/MltTractor.cpp b/mlt++/src/MltTractor.cpp index 2659275..bb6a449 100644 --- a/mlt++/src/MltTractor.cpp +++ b/mlt++/src/MltTractor.cpp @@ -65,3 +65,17 @@ Field *Tractor::field( ) return new Field( mlt_tractor_field( get_tractor( ) ) ); } +void Tractor::refresh( ) +{ + return mlt_tractor_refresh( get_tractor( ) ); +} + +int Tractor::set_track( Producer &producer, int index ) +{ + return mlt_tractor_set_track( get_tractor( ), producer.get_producer( ), index ); +} + +Producer *Tractor::track( int index ) +{ + return new Producer( mlt_tractor_get_track( get_tractor( ), index ) ); +} diff --git a/mlt++/src/MltTractor.h b/mlt++/src/MltTractor.h index ac3281e..6b78435 100644 --- a/mlt++/src/MltTractor.h +++ b/mlt++/src/MltTractor.h @@ -44,6 +44,9 @@ namespace Mlt mlt_producer get_producer( ); Multitrack *multitrack( ); Field *field( ); + void refresh( ); + int set_track( Producer &producer, int index ); + Producer *track( int index ); }; } diff --git a/mlt++/swig/mltpp.i b/mlt++/swig/mltpp.i index e84a9a1..c4369f0 100644 --- a/mlt++/swig/mltpp.i +++ b/mlt++/swig/mltpp.i @@ -40,9 +40,10 @@ namespace Mlt { %newobject Producer::filter( int ); %newobject Playlist::current( ); %newobject Playlist::clip_info( int ); -%newobject Multitrack::track( int index ); +%newobject Multitrack::track( int ); %newobject Tractor::multitrack( ); %newobject Tractor::field( ); +%newobject Tractor::track( int ); } /** Classes to wrap. -- 1.7.4.4