{
return mlt_playlist_consolidate_blanks( get_playlist( ), keep_length );
}
+
+void Playlist::insert_blank( int clip, int length )
+{
+ mlt_playlist_insert_blank( get_playlist( ), clip, length );
+}
+
+void Playlist::pad_blanks( int position, int length, int find )
+{
+ mlt_playlist_pad_blanks( get_playlist( ), position, length, find );
+}
+
+int Playlist::insert_at( int position, Producer *producer, int mode )
+{
+ return mlt_playlist_insert_at( get_playlist( ), position, producer->get_producer( ), mode );
+}
+
+int Playlist::insert_at( int position, Producer &producer, int mode )
+{
+ return mlt_playlist_insert_at( get_playlist( ), position, producer.get_producer( ), mode );
+}
+
+int Playlist::clip_start( int clip )
+{
+ return mlt_playlist_clip_start( get_playlist( ), clip );
+}
+
+int Playlist::blanks_from( int clip, int bounded )
+{
+ return mlt_playlist_blanks_from( get_playlist( ), clip, bounded );
+}
+
+int Playlist::clip_length( int clip )
+{
+ return mlt_playlist_clip_length( get_playlist( ), clip );
+}
+
+int Playlist::remove_region( int position, int length )
+{
+ return mlt_playlist_remove_region( get_playlist( ), position, length );
+}
+
+int Playlist::move_region( int position, int length, int new_position )
+{
+ return mlt_playlist_move_region( get_playlist( ), position, length, new_position );
+}
+
bool is_blank( int clip );
void consolidate_blanks( int keep_length = 0 );
Producer *replace_with_blank( int clip );
+ void insert_blank( int clip, int length );
+ void pad_blanks( int position, int length, int find = 0 );
+ int insert_at( int position, Producer *producer, int mode = 0 );
+ int insert_at( int position, Producer &producer, int mode = 0 );
+ int clip_start( int clip );
+ int clip_length( int clip );
+ int blanks_from( int clip, int bounded = 0 );
+ int remove_region( int position, int length );
+ int move_region( int position, int length, int new_position );
};
}
inc_ref( );
}
+Producer::Producer( Producer *producer ) :
+ instance( producer != NULL ? producer->get_producer( ) : NULL )
+{
+ if ( is_valid( ) )
+ inc_ref( );
+}
+
Producer::~Producer( )
{
mlt_producer_close( instance );
+ instance = NULL;
}
mlt_producer Producer::get_producer( )
Producer( Service &producer );
Producer( mlt_producer producer );
Producer( Producer &producer );
+ Producer( Producer *producer );
virtual ~Producer( );
virtual mlt_producer get_producer( );
mlt_producer get_parent( );
void Properties::block( void *object )
{
- mlt_events_block( get_properties( ), object );
+ mlt_events_block( get_properties( ), object != NULL ? object : get_properties( ) );
}
void Properties::unblock( void *object )
{
- mlt_events_unblock( get_properties( ), object );
+ mlt_events_unblock( get_properties( ), object != NULL ? object : get_properties( ) );
}
void Properties::fire_event( const char *event )
return mlt_service_properties( get_service( ) );
}
+void Service::lock( )
+{
+ mlt_service_lock( get_service( ) );
+}
+
+void Service::unlock( )
+{
+ mlt_service_unlock( get_service( ) );
+}
+
int Service::connect_producer( Service &producer, int index )
{
return mlt_service_connect_producer( get_service( ), producer.get_service( ), index );
Service( mlt_service service );
virtual ~Service( );
virtual mlt_service get_service( );
+ void lock( );
+ void unlock( );
mlt_properties get_properties( );
int connect_producer( Service &producer, int index = 0 );
Service *consumer( );
-CXXFLAGS=-Wall `mlt-config --cflags` -I ../src
+CXXFLAGS=-Wall -g `mlt-config --cflags` -I ../src
LDFLAGS=-L../src -lmlt++
CC=c++