]> git.sesse.net Git - mlt/commitdiff
finally - multitrack inigo serialisation
authorlilo_booter <lilo_booter@d19143bc-622f-0410-bfdd-b5b2a6649095>
Thu, 15 Jan 2004 16:10:25 +0000 (16:10 +0000)
committerlilo_booter <lilo_booter@d19143bc-622f-0410-bfdd-b5b2a6649095>
Thu, 15 Jan 2004 16:10:25 +0000 (16:10 +0000)
git-svn-id: https://mlt.svn.sourceforge.net/svnroot/mlt/trunk/mlt@81 d19143bc-622f-0410-bfdd-b5b2a6649095

mlt/src/framework/mlt_frame.c
mlt/src/framework/mlt_tractor.c
mlt/src/modules/inigo/producer_inigo.c
src/framework/mlt_frame.c
src/framework/mlt_tractor.c
src/modules/inigo/producer_inigo.c

index f8f07870035051b0f7a03b056cdfefc0e6d504d6..19b7c81c758c88be6f883116ccd90b2d2641f821 100644 (file)
@@ -263,16 +263,7 @@ int mlt_frame_get_audio( mlt_frame this, int16_t **buffer, mlt_audio_format *for
 
 void mlt_frame_close( mlt_frame this )
 {
-       mlt_frame frame = mlt_frame_pop_frame( this );
-       
-       while ( frame != NULL )
-       {
-               mlt_frame_close( frame);
-               frame = mlt_frame_pop_frame( this );
-       }
-       
        mlt_properties_close( &this->parent );
-
        free( this );
 }
 
index 147c45d43b7ab5bfbff4ca0d60fe449265ba4fe2..d818fb5ea7b1bc42f0914c051ba39e9e23425127 100644 (file)
@@ -135,7 +135,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 +175,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 );
                }
 
index 5c60e29d8aa9b22b4e889a5f5e8d42f60b3c0f8e..3150ae6dc670940d404513c38097f5574a7c0820 100644 (file)
@@ -48,9 +48,7 @@ static mlt_producer parse_inigo( char *file )
        if ( result != NULL )
        {
                mlt_properties properties = mlt_producer_properties( result );
-               mlt_field field = mlt_properties_get_data( properties, "field", NULL );
                mlt_properties_set( properties, "resource", file );
-               mlt_properties_set( mlt_field_properties( field ), "resource", file );
        }
 
        while( count -- )
index f8f07870035051b0f7a03b056cdfefc0e6d504d6..19b7c81c758c88be6f883116ccd90b2d2641f821 100644 (file)
@@ -263,16 +263,7 @@ int mlt_frame_get_audio( mlt_frame this, int16_t **buffer, mlt_audio_format *for
 
 void mlt_frame_close( mlt_frame this )
 {
-       mlt_frame frame = mlt_frame_pop_frame( this );
-       
-       while ( frame != NULL )
-       {
-               mlt_frame_close( frame);
-               frame = mlt_frame_pop_frame( this );
-       }
-       
        mlt_properties_close( &this->parent );
-
        free( this );
 }
 
index 147c45d43b7ab5bfbff4ca0d60fe449265ba4fe2..d818fb5ea7b1bc42f0914c051ba39e9e23425127 100644 (file)
@@ -135,7 +135,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 +175,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 );
                }
 
index 5c60e29d8aa9b22b4e889a5f5e8d42f60b3c0f8e..3150ae6dc670940d404513c38097f5574a7c0820 100644 (file)
@@ -48,9 +48,7 @@ static mlt_producer parse_inigo( char *file )
        if ( result != NULL )
        {
                mlt_properties properties = mlt_producer_properties( result );
-               mlt_field field = mlt_properties_get_data( properties, "field", NULL );
                mlt_properties_set( properties, "resource", file );
-               mlt_properties_set( mlt_field_properties( field ), "resource", file );
        }
 
        while( count -- )