19#ifndef AVFILTER_LIMITER_INIT_H
20#define AVFILTER_LIMITER_INIT_H
27#define LIMITER(n, type) \
28static void limiter##n(const uint8_t *src8, uint8_t *dst8, \
29 ptrdiff_t slinesize, ptrdiff_t dlinesize,\
30 int w, int h, int min, int max) \
32 for (int y = 0; y < h; y++) { \
33 const type *src = (const type *)src8; \
34 type *dst = (type *)dst8; \
35 for (int x = 0; x < w; x++) { \
36 dst[x] = av_clip(src[x], min, max); \
50 s->limiter = limiter8;
52 s->limiter = limiter16;
55#if ARCH_X86 && HAVE_X86ASM
common internal and external API header
Macro definitions for various function/variable attributes.
void ff_limiter_init_x86(LimiterDSPContext *dsp, int bpp)
static av_unused void ff_limiter_init(LimiterDSPContext *s, int depth)