Go to the source code of this file.
 | 
| #define  | R   0 | 
|   | 
| #define  | G   1 | 
|   | 
| #define  | B   2 | 
|   | 
| #define  | A   3 | 
|   | 
| #define  | OFFSET(x)   offsetof(SelectiveColorContext, x) | 
|   | 
| #define  | FLAGS   AV_OPT_FLAG_FILTERING_PARAM|AV_OPT_FLAG_VIDEO_PARAM | 
|   | 
| #define  | RANGE_OPTION(color_name, range)   { color_name"s", "adjust "color_name" regions", OFFSET(opt_cmyk_adjust[range]), AV_OPT_TYPE_STRING, {.str=NULL}, CHAR_MIN, CHAR_MAX, FLAGS } | 
|   | 
| #define  | DECLARE_RANGE_SCALE_FUNCS(nbits) | 
|   | 
| #define  | READ16(dst) | 
|   | 
| #define  | DECLARE_SELECTIVE_COLOR_FUNC(nbits) | 
|   | 
| #define  | DEF_SELECTIVE_COLOR_FUNC(name, direct, correction_method, nbits) | 
|   | 
| #define  | DEF_SELECTIVE_COLOR_FUNCS(nbits) | 
|   | 
 | 
| 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 (SelectiveColorContext *s, int range_id) | 
|   | 
| static int  | parse_psfile (AVFilterContext *ctx, const char *fname) | 
|   | 
| static int  | config_input (AVFilterLink *inlink) | 
|   | 
| static int  | query_formats (AVFilterContext *ctx) | 
|   | 
| static int  | comp_adjust (int scale, float value, float adjust, float k, int correction_method) | 
|   | 
| static int  | filter_frame (AVFilterLink *inlink, AVFrame *in) | 
|   | 
      
        
          | #define RANGE_OPTION | 
          ( | 
            | 
          color_name,  | 
        
        
           | 
           | 
            | 
          range  | 
        
        
           | 
          ) | 
           |    { color_name"s", "adjust "color_name" regions", OFFSET(opt_cmyk_adjust[range]), AV_OPT_TYPE_STRING, {.str=NULL}, CHAR_MIN, CHAR_MAX, FLAGS } | 
        
      
 
 
      
        
          | #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 127 of file vf_selectivecolor.c.
 
 
Value:
    }                                   \
} while (0)
#define AVERROR_INVALIDDATA
Invalid data found when processing input. 
 
uint64_t_TMPL AV_WL64 unsigned int_TMPL AV_WL32 unsigned int_TMPL AV_WL24 unsigned int_TMPL AV_WL16 uint64_t_TMPL AV_WB64 unsigned int_TMPL AV_WB32 unsigned int_TMPL AV_WB24 unsigned int_TMPL AV_RB16
 
static av_cold int end(AVCodecContext *avctx)
 
 
Referenced by parse_psfile().
 
 
      
        
          | #define DECLARE_SELECTIVE_COLOR_FUNC | 
          ( | 
            | 
          nbits | ) | 
           | 
        
      
 
 
      
        
          | #define DEF_SELECTIVE_COLOR_FUNCS | 
          ( | 
            | 
          nbits | ) | 
           | 
        
      
 
Value:
#define DEF_SELECTIVE_COLOR_FUNC(name, direct, correction_method, nbits)
 
#define DECLARE_SELECTIVE_COLOR_FUNC(nbits)
 
 
Definition at line 402 of file vf_selectivecolor.c.
 
 
| Enumerator | 
|---|
| RANGE_REDS  | 
 | 
| RANGE_YELLOWS  | 
 | 
| RANGE_GREENS  | 
 | 
| RANGE_CYANS  | 
 | 
| RANGE_BLUES  | 
 | 
| RANGE_MAGENTAS  | 
 | 
| RANGE_WHITES  | 
 | 
| RANGE_NEUTRALS  | 
 | 
| RANGE_BLACKS  | 
 | 
| NB_RANGES  | 
 | 
Definition at line 44 of file vf_selectivecolor.c.
 
 
| Enumerator | 
|---|
| CORRECTION_METHOD_ABSOLUTE  | 
 | 
| CORRECTION_METHOD_RELATIVE  | 
 | 
| NB_CORRECTION_METHODS  | 
 | 
Definition at line 58 of file vf_selectivecolor.c.
 
 
      
        
          | AVFILTER_DEFINE_CLASS  | 
          ( | 
          selectivecolor  | 
           | ) | 
           | 
        
      
 
 
  
  
      
        
          | static int comp_adjust  | 
          ( | 
          int  | 
          scale,  | 
         
        
           | 
           | 
          float  | 
          value,  | 
         
        
           | 
           | 
          float  | 
          adjust,  | 
         
        
           | 
           | 
          float  | 
          k,  | 
         
        
           | 
           | 
          int  | 
          correction_method  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inlinestatic   | 
  
 
 
Initial value:= {
    "red", "yellow", "green", "cyan", "blue", "magenta", "white", "neutral", "black"
}
 
Definition at line 64 of file vf_selectivecolor.c.
Referenced by config_input(), register_range(), and test_av_parse_color().
 
 
Initial value:= {
}
#define RANGE_OPTION(color_name, range)
 
 
Definition at line 98 of file vf_selectivecolor.c.
 
 
Initial value:= {
    {
        .name         = "default",
    },
}
static int filter_frame(AVFilterLink *inlink, AVFrame *in)
 
static int config_input(AVFilterLink *inlink)
 
 
Definition at line 455 of file vf_selectivecolor.c.
 
 
Initial value:= {
    .name          = "selectivecolor",
    .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...
 
static const AVFilterPad selectivecolor_inputs[]
 
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
 
#define AVFILTER_FLAG_SLICE_THREADS
The filter supports multithreading by splitting frames into multiple parts and processing them concur...
 
static const AVFilterPad selectivecolor_outputs[]
 
static const AVFilterPad inputs[]
 
static const AVFilterPad outputs[]
 
#define flags(name, subs,...)
 
static int query_formats(AVFilterContext *ctx)
 
 
Definition at line 473 of file vf_selectivecolor.c.