X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=modules%2Fvideo_filter%2Fball.c;h=66032c9cf1ab352c4af41548137beec308b9e07c;hb=c12acbd7d48431d7b5029d765e69e87378aca7a2;hp=ecb330d6dbe157fd9fc2a78d380d6402c92ba556;hpb=c766d434b0e2f7d8787a30703c06e27e9b2bb8d7;p=vlc diff --git a/modules/video_filter/ball.c b/modules/video_filter/ball.c index ecb330d6db..66032c9cf1 100644 --- a/modules/video_filter/ball.c +++ b/modules/video_filter/ball.c @@ -38,8 +38,6 @@ #include #include -#include -#include #include "vlc_filter.h" #include "filter_picture.h" @@ -139,20 +137,20 @@ vlc_module_begin () set_category( CAT_VIDEO ) set_subcategory( SUBCAT_VIDEO_VFILTER ) - add_string( FILTER_PREFIX "ball-color", "ball-color", NULL, + add_string( FILTER_PREFIX "color", "ball-color", NULL, BALL_COLOR_TEXT, BALL_COLOR_LONGTEXT, false ) change_string_list( mode_list, mode_list_text, 0 ) - add_integer_with_range( FILTER_PREFIX "ball-speed", 4, 1, 15, NULL, + add_integer_with_range( FILTER_PREFIX "speed", 4, 1, 15, NULL, BALL_SPEED_TEXT, BALL_SPEED_LONGTEXT, false ) - add_integer_with_range( FILTER_PREFIX "ball-size", 10, 5, 30, NULL, + add_integer_with_range( FILTER_PREFIX "size", 10, 5, 30, NULL, BALL_SIZE_TEXT, BALL_SIZE_LONGTEXT, false ) add_integer_with_range( FILTER_PREFIX "gradient-threshold", 40, 1, 200, NULL, GRAD_THRESH_TEXT, GRAD_THRESH_LONGTEXT, false ) - add_bool( FILTER_PREFIX "edge-visible", 1, NULL, + add_bool( FILTER_PREFIX "edge-visible", true, NULL, EDGE_VISIBLE_TEXT, EDGE_VISIBLE_LONGTEXT, true ) add_shortcut( "ball" ) @@ -254,7 +252,7 @@ static int Create( vlc_object_t *p_this ) COLORS_RGB break; default: - msg_Err( p_filter, "Unsupported input chroma (%4s)", + msg_Err( p_filter, "Unsupported input chroma (%4.4s)", (char*)&(p_filter->fmt_in.video.i_chroma) ); return VLC_EGENERIC; } @@ -270,10 +268,10 @@ static int Create( vlc_object_t *p_this ) if( !(psz_method = var_CreateGetNonEmptyStringCommand( p_filter, - FILTER_PREFIX "ball-color" ) ) ) + FILTER_PREFIX "color" ) ) ) { msg_Err( p_filter, "configuration variable " - FILTER_PREFIX "ball-color empty" ); + FILTER_PREFIX "color empty" ); p_filter->p_sys->ballColor = RED; } else @@ -282,9 +280,9 @@ static int Create( vlc_object_t *p_this ) free( psz_method ); p_filter->p_sys->i_ballSize = - var_CreateGetIntegerCommand( p_filter, FILTER_PREFIX "ball-size" ); + var_CreateGetIntegerCommand( p_filter, FILTER_PREFIX "size" ); p_filter->p_sys->i_ballSpeed = - var_CreateGetIntegerCommand( p_filter, FILTER_PREFIX "ball-speed" ); + var_CreateGetIntegerCommand( p_filter, FILTER_PREFIX "speed" ); p_filter->p_sys->b_edgeVisible = var_CreateGetBoolCommand( p_filter, FILTER_PREFIX "edge-visible" ); p_filter->p_sys->i_gradThresh = @@ -292,11 +290,11 @@ static int Create( vlc_object_t *p_this ) vlc_mutex_init( &p_filter->p_sys->lock ); - var_AddCallback( p_filter, FILTER_PREFIX "ball-color", + var_AddCallback( p_filter, FILTER_PREFIX "color", ballCallback, p_filter->p_sys ); - var_AddCallback( p_filter, FILTER_PREFIX "ball-size", + var_AddCallback( p_filter, FILTER_PREFIX "size", ballCallback, p_filter->p_sys ); - var_AddCallback( p_filter, FILTER_PREFIX "ball-speed", + var_AddCallback( p_filter, FILTER_PREFIX "speed", ballCallback, p_filter->p_sys ); var_AddCallback( p_filter, FILTER_PREFIX "edge-visible", ballCallback, p_filter->p_sys ); @@ -325,6 +323,15 @@ static void Destroy( vlc_object_t *p_this ) filter_t *p_filter = (filter_t *)p_this; filter_sys_t *p_sys = p_filter->p_sys; + var_DelCallback( p_filter, FILTER_PREFIX "color", + ballCallback, p_sys ); + var_DelCallback( p_filter, FILTER_PREFIX "size", + ballCallback, p_sys ); + var_DelCallback( p_filter, FILTER_PREFIX "speed", + ballCallback, p_sys ); + var_DelCallback( p_filter, FILTER_PREFIX "edge-visible", + ballCallback, p_sys ); + vlc_mutex_destroy( &p_sys->lock ); image_HandlerDelete( p_sys->p_image ); @@ -811,15 +818,15 @@ static int ballCallback( vlc_object_t *p_this, char const *psz_var, msg_Err( p_this, "Test" ); vlc_mutex_lock( &p_sys->lock ); - if( !strcmp( psz_var, FILTER_PREFIX "ball-color" ) ) + if( !strcmp( psz_var, FILTER_PREFIX "color" ) ) { p_sys->ballColor = getBallColor( p_this, newval.psz_string ); } - else if( !strcmp( psz_var, FILTER_PREFIX "ball-size" ) ) + else if( !strcmp( psz_var, FILTER_PREFIX "size" ) ) { p_sys->i_ballSize = newval.i_int; } - else if( !strcmp( psz_var, FILTER_PREFIX "ball-speed" ) ) + else if( !strcmp( psz_var, FILTER_PREFIX "speed" ) ) { p_sys->i_ballSpeed = newval.i_int; } @@ -838,7 +845,7 @@ static int ballCallback( vlc_object_t *p_this, char const *psz_var, /***************************************************************************** - * ballCallback + * getBallColor ***************************************************************************** * Get and assign the ball color value *****************************************************************************/