X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=modules%2Fvideo_filter%2Fcolorthres.c;h=45052830775ca9c42eb501baa5cfe1379ebc936b;hb=c5c06b64c806052086e5772d64e540a8db7e4a9b;hp=07c32799e87f055a4ecd5e2190cf1f9e16c22d7f;hpb=0c6b8c406c486d06087dfe7a470174dc8cbe83ad;p=vlc diff --git a/modules/video_filter/colorthres.c b/modules/video_filter/colorthres.c index 07c32799e8..4505283077 100644 --- a/modules/video_filter/colorthres.c +++ b/modules/video_filter/colorthres.c @@ -24,17 +24,17 @@ /***************************************************************************** * Preamble *****************************************************************************/ -#include -#include #ifdef HAVE_CONFIG_H # include "config.h" #endif -#include +#include +#include + +#include #include #include -#include #include "vlc_filter.h" #include "filter_picture.h" @@ -63,21 +63,21 @@ static const char *const ppsz_color_descriptions[] = { #define CFG_PREFIX "colorthres-" -vlc_module_begin(); - set_description( N_("Color threshold filter") ); - set_shortname( N_("Color threshold" )); - set_category( CAT_VIDEO ); - set_subcategory( SUBCAT_VIDEO_VFILTER ); - set_capability( "video filter2", 0 ); +vlc_module_begin () + set_description( N_("Color threshold filter") ) + set_shortname( N_("Color threshold" )) + set_category( CAT_VIDEO ) + set_subcategory( SUBCAT_VIDEO_VFILTER ) + set_capability( "video filter2", 0 ) add_integer( CFG_PREFIX "color", 0x00FF0000, NULL, COLOR_TEXT, - COLOR_LONGTEXT, false ); - change_integer_list( pi_color_values, ppsz_color_descriptions, 0 ); + COLOR_LONGTEXT, false ) + change_integer_list( pi_color_values, ppsz_color_descriptions, NULL ) add_integer( CFG_PREFIX "saturationthres", 20, NULL, - _("Saturaton threshold"), "", false ); + N_("Saturaton threshold"), "", false ) add_integer( CFG_PREFIX "similaritythres", 15, NULL, - _("Similarity threshold"), "", false ); - set_callbacks( Create, Destroy ); -vlc_module_end(); + N_("Similarity threshold"), "", false ) + set_callbacks( Create, Destroy ) +vlc_module_end () static const char *const ppsz_filter_options[] = { "color", "saturationthes", "similaritythres", NULL @@ -118,17 +118,14 @@ static int Create( vlc_object_t *p_this ) config_ChainParse( p_filter, CFG_PREFIX, ppsz_filter_options, p_filter->p_cfg ); - var_CreateGetIntegerCommand( p_filter, CFG_PREFIX "color" ); - var_CreateGetIntegerCommand( p_filter, CFG_PREFIX "similaritythres" ); - var_CreateGetIntegerCommand( p_filter, CFG_PREFIX "saturationthres" ); + var_Create( p_filter, CFG_PREFIX "color", VLC_VAR_INTEGER | VLC_VAR_DOINHERIT | VLC_VAR_ISCOMMAND ); + var_Create( p_filter, CFG_PREFIX "similaritythres", VLC_VAR_INTEGER | VLC_VAR_DOINHERIT | VLC_VAR_ISCOMMAND ); + var_Create( p_filter, CFG_PREFIX "saturationthres", VLC_VAR_INTEGER | VLC_VAR_DOINHERIT | VLC_VAR_ISCOMMAND ); /* Allocate structure */ p_filter->p_sys = malloc( sizeof( filter_sys_t ) ); if( p_filter->p_sys == NULL ) - { - msg_Err( p_filter, "out of memory" ); return VLC_ENOMEM; - } p_filter->pf_video_filter = Filter; @@ -164,12 +161,10 @@ static picture_t *Filter( filter_t *p_filter, picture_t *p_pic ) if( !p_pic ) return NULL; - p_outpic = p_filter->pf_vout_buffer_new( p_filter ); + p_outpic = filter_NewPicture( p_filter ); if( !p_outpic ) { - msg_Warn( p_filter, "can't get output picture" ); - if( p_pic->pf_release ) - p_pic->pf_release( p_pic ); + picture_Release( p_pic ); return NULL; } @@ -228,14 +223,5 @@ static picture_t *Filter( filter_t *p_filter, picture_t *p_pic ) p_out_v++; } - p_outpic->date = p_pic->date; - p_outpic->b_force = p_pic->b_force; - p_outpic->i_nb_fields = p_pic->i_nb_fields; - p_outpic->b_progressive = p_pic->b_progressive; - p_outpic->b_top_field_first = p_pic->b_top_field_first; - - if( p_pic->pf_release ) - p_pic->pf_release( p_pic ); - - return p_outpic; + return CopyInfoAndRelease( p_outpic, p_pic ); }