Go to the source code of this file.
|
| enum | color_range {
RANGE_REDS
, RANGE_YELLOWS
, RANGE_GREENS
, RANGE_CYANS
,
RANGE_BLUES
, RANGE_MAGENTAS
, RANGE_WHITES
, RANGE_NEUTRALS
,
RANGE_BLACKS
, NB_RANGES
} |
| |
| enum | correction_method { CORRECTION_METHOD_ABSOLUTE
, CORRECTION_METHOD_RELATIVE
, NB_CORRECTION_METHODS
} |
| |
|
| | AVFILTER_DEFINE_CLASS (selectivecolor) |
| |
| static int | get_rgb_scale (int r, int g, int b, int min_val, int max_val) |
| |
| static int | get_cmy_scale (int r, int g, int b, int min_val, int max_val) |
| |
| static int | register_range (AVFilterContext *ctx, int range_id) |
| |
| static int | parse_psfile (AVFilterContext *ctx, const char *fname) |
| |
| static int | config_input (AVFilterLink *inlink) |
| |
| static int | comp_adjust (int scale, float value, float adjust, float k, int correction_method) |
| |
| static int | filter_frame (AVFilterLink *inlink, AVFrame *in) |
| |
◆ OFFSET
◆ FLAGS
◆ RANGE_OPTION
| #define RANGE_OPTION |
( |
| color_name, |
|
|
| range ) |
Value:
@ AV_OPT_TYPE_STRING
Underlying C type is a uint8_t* that is either NULL or points to a C string allocated with the av_mal...
Definition at line 94 of file vf_selectivecolor.c.
◆ DECLARE_RANGE_SCALE_FUNCS
| #define DECLARE_RANGE_SCALE_FUNCS |
( |
| nbits | ) |
|
Value:static int get_neutrals_scale##nbits(
int r,
int g,
int b,
int min_val,
int max_val) \
{ \
\
return (((1<<nbits)-1)*2 - (
abs((max_val<<1) - ((1<<nbits)-1)) \
+
abs((min_val<<1) - ((1<<nbits)-1))) + 1) >> 1; \
} \
\
static int get_whites_scale##nbits(
int r,
int g,
int b,
int min_val,
int max_val) \
{ \
\
return (min_val<<1) - ((1<<nbits)-1); \
} \
\
static int get_blacks_scale##nbits(
int r,
int g,
int b,
int min_val,
int max_val) \
{ \
\
return ((1<<nbits)-1) - (max_val<<1); \
} \
Definition at line 126 of file vf_selectivecolor.c.
◆ READ16
Value: do { \
goto end; \
} \
buf += 2; \
} while (0)
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t int int16_t * dst
#define AVERROR_INVALIDDATA
Invalid data found when processing input.
Referenced by parse_psfile().
◆ DECLARE_SELECTIVE_COLOR_FUNC
| #define DECLARE_SELECTIVE_COLOR_FUNC |
( |
| nbits | ) |
|
◆ DEF_SELECTIVE_COLOR_FUNC
◆ DEF_SELECTIVE_COLOR_FUNCS
| #define DEF_SELECTIVE_COLOR_FUNCS |
( |
| nbits | ) |
|
Value:
#define DECLARE_SELECTIVE_COLOR_FUNC(nbits)
@ CORRECTION_METHOD_ABSOLUTE
@ CORRECTION_METHOD_RELATIVE
Definition at line 415 of file vf_selectivecolor.c.
◆ get_range_scale_func
| typedef int(* get_range_scale_func) (int r, int g, int b, int min_val, int max_val) |
◆ selective_color_func_type
| typedef int(* selective_color_func_type) (AVFilterContext *ctx, void *td, int jobnr, int nb_jobs) |
◆ color_range
| Enumerator |
|---|
| RANGE_REDS | |
| RANGE_YELLOWS | |
| RANGE_GREENS | |
| RANGE_CYANS | |
| RANGE_BLUES | |
| RANGE_MAGENTAS | |
| RANGE_WHITES | |
| RANGE_NEUTRALS | |
| RANGE_BLACKS | |
| NB_RANGES | |
Definition at line 43 of file vf_selectivecolor.c.
◆ correction_method
| Enumerator |
|---|
| CORRECTION_METHOD_ABSOLUTE | |
| CORRECTION_METHOD_RELATIVE | |
| NB_CORRECTION_METHODS | |
Definition at line 57 of file vf_selectivecolor.c.
◆ AVFILTER_DEFINE_CLASS()
| AVFILTER_DEFINE_CLASS |
( |
selectivecolor | | ) |
|
◆ get_rgb_scale()
| static int get_rgb_scale |
( |
int | r, |
|
|
int | g, |
|
|
int | b, |
|
|
int | min_val, |
|
|
int | max_val ) |
|
static |
◆ get_cmy_scale()
| static int get_cmy_scale |
( |
int | r, |
|
|
int | g, |
|
|
int | b, |
|
|
int | min_val, |
|
|
int | max_val ) |
|
static |
◆ register_range()
◆ parse_psfile()
◆ config_input()
◆ comp_adjust()
| static int comp_adjust |
( |
int | scale, |
|
|
float | value, |
|
|
float | adjust, |
|
|
float | k, |
|
|
int | correction_method ) |
|
inlinestatic |
◆ filter_frame()
◆ color_names
Initial value:= {
"red", "yellow", "green", "cyan", "blue", "magenta", "white", "neutral", "black"
}
Definition at line 63 of file vf_selectivecolor.c.
Referenced by config_input(), register_range(), and test_av_parse_color().
◆ selectivecolor_options
Initial value:= {
}
@ AV_OPT_TYPE_CONST
Special option type for declaring named constants.
@ AV_OPT_TYPE_INT
Underlying C type is int.
#define RANGE_OPTION(color_name, range)
Definition at line 97 of file vf_selectivecolor.c.
◆ pix_fmts
Initial value:= {
}
#define AV_PIX_FMT_RGBA64
@ AV_PIX_FMT_RGB24
packed RGB 8:8:8, 24bpp, RGBRGB...
@ AV_PIX_FMT_BGR0
packed BGR 8:8:8, 32bpp, BGRXBGRX... X=unused/undefined
@ AV_PIX_FMT_ARGB
packed ARGB 8:8:8:8, 32bpp, ARGBARGB...
@ AV_PIX_FMT_BGRA
packed BGRA 8:8:8:8, 32bpp, BGRABGRA...
@ AV_PIX_FMT_ABGR
packed ABGR 8:8:8:8, 32bpp, ABGRABGR...
@ AV_PIX_FMT_0BGR
packed BGR 8:8:8, 32bpp, XBGRXBGR... X=unused/undefined
@ AV_PIX_FMT_RGBA
packed RGBA 8:8:8:8, 32bpp, RGBARGBA...
@ AV_PIX_FMT_RGB0
packed RGB 8:8:8, 32bpp, RGBXRGBX... X=unused/undefined
@ AV_PIX_FMT_BGR24
packed RGB 8:8:8, 24bpp, BGRBGR...
@ AV_PIX_FMT_0RGB
packed RGB 8:8:8, 32bpp, XRGBXRGB... X=unused/undefined
#define AV_PIX_FMT_BGRA64
Definition at line 288 of file vf_selectivecolor.c.
◆ selectivecolor_inputs
Initial value:= {
{
.name = "default",
},
}
static int config_input(AVFilterLink *inlink)
static int filter_frame(DBEDecodeContext *s, AVFrame *frame)
Definition at line 468 of file vf_selectivecolor.c.
◆ ff_vf_selectivecolor
Initial value:= {
.p.name = "selectivecolor",
.p.priv_class = &selectivecolor_class,
}
#define AVFILTER_FLAG_SUPPORT_TIMELINE_GENERIC
Some filters support a generic "enable" expression option that can be used to enable or disable a fil...
#define AVFILTER_FLAG_SLICE_THREADS
The filter supports multithreading by splitting frames into multiple parts and processing them concur...
#define FILTER_INPUTS(array)
#define FILTER_OUTPUTS(array)
#define FILTER_PIXFMTS_ARRAY(array)
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification.
static enum AVPixelFormat pix_fmts[]
static const AVFilterPad selectivecolor_inputs[]
const AVFilterPad ff_video_default_filterpad[1]
An AVFilterPad array whose only entry has name "default" and is of type AVMEDIA_TYPE_VIDEO.
Definition at line 477 of file vf_selectivecolor.c.