X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Fmodules%2Fmotion_est%2Ffactory.c;h=1df0929aeb5f23480ed6a0d2ccec98fdc7053d41;hb=f4963a6aa07644399b273b5d2b1f9299c9047414;hp=742367d496096c280c27f7e38541d16d280edce7;hpb=4f3d5f48dd9b4a0caddce6b65d9f8d4ad7a4f04a;p=melted diff --git a/src/modules/motion_est/factory.c b/src/modules/motion_est/factory.c index 742367d..1df0929 100644 --- a/src/modules/motion_est/factory.c +++ b/src/modules/motion_est/factory.c @@ -15,23 +15,19 @@ */ #include +#include -#include "filter_motion_est.h" +extern mlt_filter filter_motion_est_init( mlt_profile profile, mlt_service_type type, const char *id, char *arg ); +extern mlt_filter filter_vismv_init( mlt_profile profile, mlt_service_type type, const char *id, char *arg ); +extern mlt_filter filter_crop_detect_init( mlt_profile profile, mlt_service_type type, const char *id, char *arg ); +extern mlt_filter filter_autotrack_rectangle_init( mlt_profile profile, mlt_service_type type, const char *id, char *arg ); +extern mlt_producer producer_slowmotion_init( mlt_profile profile, mlt_service_type type, const char *id, char *arg ); -extern mlt_filter filter_motion_est_init(char *); -extern mlt_filter filter_vismv_init(char *); -extern mlt_filter filter_crop_detect_init(char *); -extern mlt_filter filter_autotrack_rectangle_init(char *); - -void *mlt_create_filter( char *id, void *arg ) +MLT_REPOSITORY { - if ( !strcmp( id, "motion_est" ) ) - return filter_motion_est_init( arg ); - if ( !strcmp( id, "vismv" ) ) - return filter_vismv_init( arg ); - if ( !strcmp( id, "crop_detect" ) ) - return filter_crop_detect_init( arg ); - if ( !strcmp( id, "autotrack_rectangle" ) ) - return filter_autotrack_rectangle_init( arg ); - return NULL; + MLT_REGISTER( filter_type, "motion_est", filter_motion_est_init ); + MLT_REGISTER( filter_type, "vismv", filter_vismv_init ); + MLT_REGISTER( filter_type, "crop_detect", filter_crop_detect_init ); + MLT_REGISTER( filter_type, "autotrack_rectangle", filter_autotrack_rectangle_init ); + MLT_REGISTER( producer_type, "slowmotion", producer_slowmotion_init ); }