FFmpeg
Loading...
Searching...
No Matches
boxblur.c File Reference
#include "libavutil/mem.h"
#include "boxblur.h"

Go to the source code of this file.

Macros

#define EVAL_RADIUS_EXPR(comp)
 
#define CHECK_RADIUS_VAL(w_, h_, comp)
 

Enumerations

enum  var_name {
  VAR_W , VAR_H , VAR_CW , VAR_CH ,
  VAR_HSUB , VAR_VSUB , VARS_NB
}
 

Functions

int ff_boxblur_eval_filter_params (AVFilterLink *inlink, FilterParam *luma_param, FilterParam *chroma_param, FilterParam *alpha_param)
 

Variables

static const char *const var_names []
 

Macro Definition Documentation

◆ EVAL_RADIUS_EXPR

#define EVAL_RADIUS_EXPR ( comp)
Value:
expr = comp->radius_expr; \
ret = av_expr_parse_and_eval(&res, expr, var_names, var_values, \
NULL, NULL, NULL, NULL, NULL, 0, ctx); \
comp->radius = res; \
if (ret < 0) { \
av_log(ctx, AV_LOG_ERROR, \
"Error when evaluating " #comp " radius expression '%s'\n", expr); \
return ret; \
}
#define NULL
Definition coverity.c:32
static void comp(unsigned char *dst, ptrdiff_t dst_stride, unsigned char *src, ptrdiff_t src_stride, int add)
Definition eamad.c:79
int av_expr_parse_and_eval(double *d, const char *s, const char *const *const_names, const double *const_values, const char *const *func1_names, double(*const *funcs1)(void *, double), const char *const *func2_names, double(*const *funcs2)(void *, double, double), void *opaque, int log_offset, void *log_ctx)
Parse and evaluate an expression.
Definition eval.c:839
#define AV_LOG_ERROR
Something went wrong and cannot losslessly be recovered.
Definition log.h:210
static const char *const var_names[]
Definition noise.c:30
static AVFormatContext * ctx
Definition movenc.c:49

Referenced by ff_boxblur_eval_filter_params().

◆ CHECK_RADIUS_VAL

#define CHECK_RADIUS_VAL ( w_,
h_,
comp )
Value:
if (comp->radius < 0 || \
2*comp->radius >= FFMIN(w_, h_)) { \
av_log(ctx, AV_LOG_ERROR, \
"Invalid " #comp " radius value %d, must be >= 0 and < %d\n", \
comp->radius, FFMIN(w_, h_)/2); \
return AVERROR(EINVAL); \
}
#define AVERROR(e)
Definition error.h:45
#define FFMIN(a, b)
Definition macros.h:49

Referenced by ff_boxblur_eval_filter_params().

Enumeration Type Documentation

◆ var_name

enum var_name
Enumerator
VAR_W 
VAR_H 
VAR_CW 
VAR_CH 
VAR_HSUB 
VAR_VSUB 
VARS_NB 

Definition at line 36 of file boxblur.c.

Function Documentation

◆ ff_boxblur_eval_filter_params()

int ff_boxblur_eval_filter_params ( AVFilterLink * inlink,
FilterParam * luma_param,
FilterParam * chroma_param,
FilterParam * alpha_param )

Definition at line 47 of file boxblur.c.

Referenced by boxblur_opencl_make_filter_params(), and config_input().

Variable Documentation

◆ var_names

const char* const var_names[]
static
Initial value:
= {
"w",
"h",
"cw",
"ch",
"hsub",
"vsub",
}

Definition at line 26 of file boxblur.c.