X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=mlt%2Fsrc%2Fframework%2Fmlt_tractor.c;h=f68079a1b436ff2e0f47eed4c6e99887d6b234b2;hb=fc5ebbfed65635009b29bdd52a1c0deebadc9157;hp=147c45d43b7ab5bfbff4ca0d60fe449265ba4fe2;hpb=2ec3359e476bc73d56e09fb597e1a424f2d1708d;p=mlt diff --git a/mlt/src/framework/mlt_tractor.c b/mlt/src/framework/mlt_tractor.c index 147c45d4..f68079a1 100644 --- a/mlt/src/framework/mlt_tractor.c +++ b/mlt/src/framework/mlt_tractor.c @@ -26,6 +26,7 @@ #include #include +#include /** Private structure. */ @@ -56,6 +57,8 @@ mlt_tractor mlt_tractor_init( ) { producer->get_frame = producer_get_frame; mlt_properties_set( mlt_producer_properties( producer ), "resource", "" ); + mlt_properties_set( mlt_producer_properties( producer ), "mlt_type", "mlt_producer" ); + mlt_properties_set( mlt_producer_properties( producer ), "mlt_service", "tractor" ); } else { @@ -135,7 +138,6 @@ static int producer_get_frame( mlt_producer parent, mlt_frame_ptr frame, int tra mlt_producer target = mlt_multitrack_producer( multitrack ); mlt_producer_seek( target, mlt_producer_frame( parent ) ); mlt_producer_set_speed( target, mlt_producer_get_speed( parent ) ); - //mlt_producer_set_in_and_out( parent, mlt_producer_get_in( target ), mlt_producer_get_out( target ) ); } else { @@ -176,6 +178,8 @@ static int producer_get_frame( mlt_producer parent, mlt_frame_ptr frame, int tra mlt_properties frame_properties = mlt_frame_properties( *frame ); char label[ 30 ]; sprintf( label, "tractor_%d", count ); + while ( mlt_properties_get_data( frame_properties, label, NULL ) != NULL ) + strcat( label, "+" ); mlt_properties_set_data( frame_properties, label, store[ count ], 0, ( mlt_destructor )mlt_frame_close, NULL ); }