X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Fmodules%2Fsdl%2Ffactory.c;h=68301c2f39b0e209a60521f0b7ff1f5be1ef2910;hb=7e17e31f4c57e6a3560d3d5a29594f3d08edfd46;hp=1a081a25029e15746a7382991172d7431b84bd01;hpb=bf3264b9e340ba5c11cbf59835a8af3db94e0cc2;p=melted diff --git a/src/modules/sdl/factory.c b/src/modules/sdl/factory.c index 1a081a2..68301c2 100644 --- a/src/modules/sdl/factory.c +++ b/src/modules/sdl/factory.c @@ -19,40 +19,22 @@ */ #include +#include -#include "consumer_sdl.h" +extern mlt_consumer consumer_sdl_init( mlt_profile profile, mlt_service_type type, const char *id, char *arg ); +extern mlt_consumer consumer_sdl_still_init( mlt_profile profile, mlt_service_type type, const char *id, char *arg ); +extern mlt_consumer consumer_sdl_preview_init( mlt_profile profile, mlt_service_type type, const char *id, char *arg ); #ifdef WITH_SDL_IMAGE -#include "producer_sdl_image.h" +extern mlt_producer producer_sdl_image_init( mlt_profile profile, mlt_service_type type, const char *id, char *arg ); #endif -void *mlt_create_producer( char *id, void *arg ) +MLT_REPOSITORY { + MLT_REGISTER( consumer_type, "sdl", consumer_sdl_init ); + MLT_REGISTER( consumer_type, "sdl_preview", consumer_sdl_preview_init ); + MLT_REGISTER( consumer_type, "sdl_still", consumer_sdl_still_init ); #ifdef WITH_SDL_IMAGE - if ( !strcmp( id, "sdl_image" ) ) - return producer_sdl_image_init( arg ); + MLT_REGISTER( producer_type, "sdl_image", producer_sdl_image_init ); #endif - return NULL; } - -void *mlt_create_filter( char *id, void *arg ) -{ - return NULL; -} - -void *mlt_create_transition( char *id, void *arg ) -{ - return NULL; -} - -void *mlt_create_consumer( char *id, void *arg ) -{ - if ( !strcmp( id, "sdl" ) ) - return consumer_sdl_init( arg ); - if ( !strcmp( id, "sdl_still" ) ) - return consumer_sdl_still_init( arg ); - if ( !strcmp( id, "sdl_preview" ) ) - return consumer_sdl_preview_init( arg ); - return NULL; -} -