
Data Structures | |
| struct | filter_sys_t |
| filter_sys_t: chroma method descriptor More... | |
Defines | |
| #define | MODE_TEXT N_("Distort mode") |
| #define | MODE_LONGTEXT N_("Distort mode, one of \"gradient\", \"edge\" and \"hough\".") |
| #define | GRADIENT_TEXT N_("Gradient image type") |
| #define | GRADIENT_LONGTEXT |
| #define | CARTOON_TEXT N_("Apply cartoon effect") |
| #define | CARTOON_LONGTEXT |
| #define | GRADIENT_HELP N_("Apply color gradient or edge detection effects") |
| #define | FILTER_PREFIX "gradient-" |
| #define | FOR |
| #define | THETA_Y 0 |
| #define | THETA_X 1 |
| #define | THETA_P 2 |
| #define | THETA_M 3 |
| #define | p_pre_hough p_filter->p_sys->p_pre_hough |
Enumerations | |
| enum | { GRADIENT, EDGE, HOUGH } |
Functions | |
| static int | Create (vlc_object_t *) |
| static void | Destroy (vlc_object_t *) |
| static picture_t * | Filter (filter_t *, picture_t *) |
| static int | GradientCallback (vlc_object_t *, char const *, vlc_value_t, vlc_value_t, void *) |
| static void | FilterGradient (filter_t *, picture_t *, picture_t *) |
| static void | FilterEdge (filter_t *, picture_t *, picture_t *) |
| static void | FilterHough (filter_t *, picture_t *, picture_t *) |
| int | vlc_entry__main (module_t *p_module) |
| const char * | vlc_entry_license__main (void) |
| static void | GaussianConvolution (picture_t *p_inpic, uint32_t *p_smooth) |
Variables | |
| static const char *const | mode_list [] = { "gradient", "edge", "hough" } |
| static const char *const | mode_list_text [] = { N_("Gradient"), N_("Edge"), N_("Hough") } |
| static const char *const | ppsz_filter_options [] |
| #define CARTOON_LONGTEXT |
Value:
N_("Apply cartoon effect. It is only used by " \ "\"gradient\" and \"edge\".")
| #define CARTOON_TEXT N_("Apply cartoon effect") |
| #define FILTER_PREFIX "gradient-" |
| #define FOR |
Value:
for( y = 1; y < i_num_lines - 1; y++ ) \ { \ for( x = 1; x < i_src_visible - 1; x++ ) \ { \ const uint32_t a = \ ( \ abs( \ ( p_smooth[(y-1)*i_src_visible+x-1] \ - p_smooth[(y+1)*i_src_visible+x-1] ) \ + ( ( p_smooth[(y-1)*i_src_visible+x] \ - p_smooth[(y+1)*i_src_visible+x] ) <<1 ) \ + ( p_smooth[(y-1)*i_src_visible+x+1] \ - p_smooth[(y+1)*i_src_visible+x+1] ) \ ) \ + \ abs( \ ( p_smooth[(y-1)*i_src_visible+x-1] \ - p_smooth[(y-1)*i_src_visible+x+1] ) \ + ( ( p_smooth[y*i_src_visible+x-1] \ - p_smooth[y*i_src_visible+x+1] ) <<1 ) \ + ( p_smooth[(y+1)*i_src_visible+x-1] \ - p_smooth[(y+1)*i_src_visible+x+1] ) \ ) \ );
Referenced by FilterGradient().
| #define GRADIENT_HELP N_("Apply color gradient or edge detection effects") |
| #define GRADIENT_LONGTEXT |
Value:
N_("Gradient image type (0 or 1). 0 will " \ "turn the image to white while 1 will keep colors." )
| #define GRADIENT_TEXT N_("Gradient image type") |
| #define MODE_LONGTEXT N_("Distort mode, one of \"gradient\", \"edge\" and \"hough\".") |
| #define MODE_TEXT N_("Distort mode") |
| #define p_pre_hough p_filter->p_sys->p_pre_hough |
Referenced by FilterHough().
| #define THETA_M 3 |
Referenced by FilterEdge().
| #define THETA_P 2 |
Referenced by FilterEdge().
| #define THETA_X 1 |
Referenced by FilterEdge().
| #define THETA_Y 0 |
Referenced by FilterEdge().
| static int Create | ( | vlc_object_t * | p_this | ) | [static] |
References filter_sys_t::b_cartoon, CASE_PLANAR_YUV, config_ChainParse, EDGE, Filter(), FILTER_PREFIX, filter_t::fmt_in, GRADIENT, GradientCallback(), HOUGH, video_format_t::i_chroma, filter_sys_t::i_gradient_type, filter_sys_t::i_mode, filter_sys_t::lock, msg_Err, filter_sys_t::p_buf32, filter_sys_t::p_buf32_bis, filter_sys_t::p_buf8, filter_t::p_cfg, filter_sys_t::p_pre_hough, filter_t::p_sys, ppsz_filter_options, var_AddCallback, var_CreateGetBoolCommand, var_CreateGetIntegerCommand, var_CreateGetNonEmptyStringCommand, es_format_t::video, VLC_EGENERIC, VLC_ENOMEM, vlc_mutex_init(), and VLC_SUCCESS.
| static void Destroy | ( | vlc_object_t * | p_this | ) | [static] |
References filter_sys_t::b_cartoon, GaussianConvolution(), plane_t::i_lines, plane_t::i_pitch, plane_t::i_visible_lines, plane_t::i_visible_pitch, picture_t::p, filter_sys_t::p_buf32, filter_sys_t::p_buf32_bis, filter_sys_t::p_buf8, plane_t::p_pixels, filter_t::p_sys, THETA_M, THETA_P, THETA_X, THETA_Y, U_PLANE, V_PLANE, vlc_memcpy(), vlc_memset(), and Y_PLANE.
Referenced by Filter().
| static void FilterGradient | ( | filter_t * | p_filter, | |
| picture_t * | p_inpic, | |||
| picture_t * | p_outpic | |||
| ) | [static] |
References a, filter_sys_t::b_cartoon, FOR, GaussianConvolution(), filter_sys_t::i_gradient_type, plane_t::i_lines, plane_t::i_pitch, plane_t::i_visible_lines, plane_t::i_visible_pitch, picture_t::p, filter_sys_t::p_buf32, plane_t::p_pixels, filter_t::p_sys, U_PLANE, V_PLANE, vlc_memcpy(), vlc_memset(), and Y_PLANE.
Referenced by Filter().
References a, GaussianConvolution(), i, plane_t::i_lines, plane_t::i_pitch, plane_t::i_visible_lines, plane_t::i_visible_pitch, M_PI, msg_Dbg, picture_t::p, plane_t::p_pixels, p_pre_hough, U_PLANE, V_PLANE, vlc_memcpy(), vlc_memset(), and Y_PLANE.
Referenced by Filter().
| static void GaussianConvolution | ( | picture_t * | p_inpic, | |
| uint32_t * | p_smooth | |||
| ) | [static] |
References plane_t::i_pitch, plane_t::i_visible_lines, plane_t::i_visible_pitch, picture_t::p, plane_t::p_pixels, and Y_PLANE.
| static int GradientCallback | ( | vlc_object_t * | p_this, | |
| char const * | psz_var, | |||
| vlc_value_t | oldval, | |||
| vlc_value_t | newval, | |||
| void * | p_data | |||
| ) | [static] |
| int vlc_entry__main | ( | module_t * | p_module | ) |
| const char* vlc_entry_license__main | ( | void | ) |
const char* const mode_list[] = { "gradient", "edge", "hough" } [static] |
const char* const mode_list_text[] = { N_("Gradient"), N_("Edge"), N_("Hough") } [static] |
const char* const ppsz_filter_options[] [static] |
Initial value:
{
"mode", "type", "cartoon", NULL
}
1.5.6