X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Fmodules%2Finigo%2Fproducer_inigo.c;h=e27e4dac33be8bd2a730d2de3c138f7b16e8de3f;hb=f0f6bf7bc31723936e8308f471219ab9939777f4;hp=1970f9c212b7bc4249d3f46e94e0998468089eaf;hpb=d33f444d4ef4c7bc4074d07a49eca0ab7d108394;p=melted diff --git a/src/modules/inigo/producer_inigo.c b/src/modules/inigo/producer_inigo.c index 1970f9c..e27e4da 100644 --- a/src/modules/inigo/producer_inigo.c +++ b/src/modules/inigo/producer_inigo.c @@ -24,9 +24,9 @@ #include -mlt_producer producer_inigo_init( mlt_profile profile, char **argv ); +mlt_producer producer_inigo_init( mlt_profile profile, mlt_service_type type, const char *id, char **argv ); -mlt_producer producer_inigo_file_init( mlt_profile profile, char *file ) +mlt_producer producer_inigo_file_init( mlt_profile profile, mlt_service_type type, const char *id, char *file ) { FILE *input = fopen( file, "r" ); char **args = calloc( sizeof( char * ), 1000 ); @@ -43,7 +43,7 @@ mlt_producer producer_inigo_file_init( mlt_profile profile, char *file ) } } - mlt_producer result = producer_inigo_init( profile, args ); + mlt_producer result = producer_inigo_init( profile, type, id, args ); if ( result != NULL ) { @@ -120,7 +120,7 @@ static mlt_transition create_transition( mlt_profile profile, mlt_field field, c return transition; } -mlt_producer producer_inigo_init( mlt_profile profile, char **argv ) +mlt_producer producer_inigo_init( mlt_profile profile, mlt_service_type type, const char *id, char **argv ) { int i; int track = 0; @@ -405,17 +405,22 @@ mlt_producer producer_inigo_init( mlt_profile profile, char **argv ) } else { - if ( !strcmp( argv[ i ], "-serialise" ) ) - i += 2; - else if ( !strcmp( argv[ i ], "-consumer" ) ) - i += 2; - else if ( !strcmp( argv[ i ], "-profile" ) ) + int backtrack = 0; + if ( !strcmp( argv[ i ], "-serialise" ) || + !strcmp( argv[ i ], "-consumer" ) || + !strcmp( argv[ i ], "-profile" ) ) + { i += 2; + backtrack = 1; + } while ( argv[ i ] != NULL && strchr( argv[ i ], '=' ) ) + { i ++; - - i --; + backtrack = 1; + } + if ( backtrack ) + i --; } }