]> git.sesse.net Git - mlt/blobdiff - mlt/src/tests/dan.c
Factory implementation
[mlt] / mlt / src / tests / dan.c
index ee76bb01d21fc0d1696eb8c979e5a501360afcb9..e8d61263b7c29905404ff647d04fee2c09ba8abb 100644 (file)
@@ -1,16 +1,5 @@
-#include "mlt_producer.h"
-#include "mlt_consumer.h"
-#include "mlt_filter.h"
-#include "mlt_tractor.h"
-#include "mlt_transition.h"
-#include "mlt_multitrack.h"
 
-#include "producer_libdv.h"
-#include "filter_deinterlace.h"
-#include "consumer_sdl.h"
-#include "producer_ppm.h"
-#include "producer_pixbuf.h"
-#include "transition_composite.h"
+#include <framework/mlt.h>
 
 #include <stdio.h>
 
@@ -20,19 +9,21 @@ int main( int argc, char **argv )
        char *file1 = NULL;
        char *file2 = NULL;
 
+       mlt_factory_init( "../modules" );
+
        if ( argc >= 2 )
                file1 = argv[ 1 ];
        if ( argc >= 3 )
                file2 = argv[ 2 ];
 
        // Start the consumer...
-       mlt_consumer sdl_out = consumer_sdl_init( NULL );
+       mlt_consumer sdl_out = mlt_factory_consumer( "sdl", NULL );
 
        // Create the producer(s)
-       mlt_producer dv1 = producer_libdv_init( file1 );
+       mlt_producer dv1 = mlt_factory_producer( "libdv", file1 );
        //mlt_producer dv1 = producer_pixbuf_init( file1 );
        //mlt_producer dv2 = producer_libdv_init( file2 );
-       mlt_producer dv2 = producer_pixbuf_init( file2 );
+       mlt_producer dv2 = mlt_factory_producer( "pixbuf", file2 );
 
        // Register producers(s) with a multitrack object
        mlt_multitrack multitrack = mlt_multitrack_init( );
@@ -40,12 +31,12 @@ int main( int argc, char **argv )
        mlt_multitrack_connect( multitrack, dv2, 1 );
 
        // Create a filter and associate it to track 0
-       mlt_filter filter = filter_deinterlace_init( NULL );
+       mlt_filter filter = mlt_factory_filter( "deinterlace", NULL );
        mlt_filter_connect( filter, mlt_multitrack_service( multitrack ), 0 );
        mlt_filter_set_in_and_out( filter, 0, 1000 );
 
        // Define a transition
-       mlt_transition transition = transition_composite_init( NULL );
+       mlt_transition transition = mlt_factory_transition( "composite", NULL );
        mlt_transition_connect( transition, mlt_filter_service( filter ), 0, 1 );
        mlt_transition_set_in_and_out( transition, 0, 1000 );
 
@@ -61,12 +52,12 @@ int main( int argc, char **argv )
        fgets( temp, 132, stdin );
 
        // Close everything...
-       mlt_consumer_close( sdl_out );
-       mlt_tractor_close( tractor );
-       mlt_filter_close( filter );
-       mlt_multitrack_close( multitrack );
-       mlt_producer_close( dv1 );
-       mlt_producer_close( dv2 );
+       //mlt_consumer_close( sdl_out );
+       //mlt_tractor_close( tractor );
+       //mlt_filter_close( filter );
+       //mlt_multitrack_close( multitrack );
+       //mlt_producer_close( dv1 );
+       //mlt_producer_close( dv2 );
 
        return 0;
 }