FFmpeg
|
Histogram equalization filter, based on the VirtualDub filter by Donald A. More...
#include "libavutil/common.h"
#include "libavutil/opt.h"
#include "libavutil/pixdesc.h"
#include "avfilter.h"
#include "drawutils.h"
#include "formats.h"
#include "internal.h"
#include "video.h"
Go to the source code of this file.
Data Structures | |
struct | HisteqContext |
Macros | |
#define | LCG_A 4096 |
#define | LCG_C 150889 |
#define | LCG_M 714025 |
#define | LCG(x) (((x) * LCG_A + LCG_C) % LCG_M) |
#define | LCG_SEED 739187 |
#define | OFFSET(x) offsetof(HisteqContext, x) |
#define | FLAGS AV_OPT_FLAG_VIDEO_PARAM|AV_OPT_FLAG_FILTERING_PARAM |
#define | CONST(name, help, val, unit) { name, help, 0, AV_OPT_TYPE_CONST, {.i64=val}, INT_MIN, INT_MAX, FLAGS, unit } |
#define | R 0 |
#define | G 1 |
#define | B 2 |
#define | A 3 |
#define | GET_RGB_VALUES(r, g, b, src, map) |
Enumerations | |
enum | HisteqAntibanding { HISTEQ_ANTIBANDING_NONE = 0, HISTEQ_ANTIBANDING_WEAK = 1, HISTEQ_ANTIBANDING_STRONG = 2, HISTEQ_ANTIBANDING_NB } |
Functions | |
AVFILTER_DEFINE_CLASS (histeq) | |
static av_cold int | init (AVFilterContext *ctx, const char *args) |
static av_cold void | uninit (AVFilterContext *ctx) |
static int | query_formats (AVFilterContext *ctx) |
static int | config_input (AVFilterLink *inlink) |
static int | filter_frame (AVFilterLink *inlink, AVFilterBufferRef *inpic) |
Variables | |
static const AVOption | histeq_options [] |
static const AVFilterPad | histeq_inputs [] |
static const AVFilterPad | histeq_outputs [] |
AVFilter | avfilter_vf_histeq |
Histogram equalization filter, based on the VirtualDub filter by Donald A.
Graft <neuron2 at="" home="" dot="" com>="">. Implements global automatic contrast adjustment by means of histogram equalization.
Definition in file vf_histeq.c.
#define LCG_A 4096 |
Definition at line 43 of file vf_histeq.c.
#define LCG_C 150889 |
Definition at line 44 of file vf_histeq.c.
#define LCG_M 714025 |
Definition at line 45 of file vf_histeq.c.
Referenced by filter_frame().
Definition at line 46 of file vf_histeq.c.
Referenced by filter_frame().
#define LCG_SEED 739187 |
Definition at line 47 of file vf_histeq.c.
Referenced by filter_frame().
#define OFFSET | ( | x | ) | offsetof(HisteqContext, x) |
Definition at line 69 of file vf_histeq.c.
#define FLAGS AV_OPT_FLAG_VIDEO_PARAM|AV_OPT_FLAG_FILTERING_PARAM |
Definition at line 70 of file vf_histeq.c.
#define CONST | ( | name, | |
help, | |||
val, | |||
unit | |||
) | { name, help, 0, AV_OPT_TYPE_CONST, {.i64=val}, INT_MIN, INT_MAX, FLAGS, unit } |
Definition at line 71 of file vf_histeq.c.
#define R 0 |
Definition at line 134 of file vf_histeq.c.
Referenced by filter_frame().
#define G 1 |
Definition at line 135 of file vf_histeq.c.
Referenced by filter_frame().
#define B 2 |
Definition at line 136 of file vf_histeq.c.
Referenced by filter_frame().
#define A 3 |
Definition at line 137 of file vf_histeq.c.
Definition at line 139 of file vf_histeq.c.
Referenced by filter_frame().
enum HisteqAntibanding |
HISTEQ_ANTIBANDING_NONE | |
HISTEQ_ANTIBANDING_WEAK | |
HISTEQ_ANTIBANDING_STRONG | |
HISTEQ_ANTIBANDING_NB |
Definition at line 49 of file vf_histeq.c.
AVFILTER_DEFINE_CLASS | ( | histeq | ) |
|
static |
Definition at line 85 of file vf_histeq.c.
|
static |
Definition at line 104 of file vf_histeq.c.
|
static |
Definition at line 110 of file vf_histeq.c.
|
static |
Definition at line 122 of file vf_histeq.c.
|
static |
Definition at line 145 of file vf_histeq.c.
|
static |
Definition at line 73 of file vf_histeq.c.
|
static |
Definition at line 268 of file vf_histeq.c.
|
static |
Definition at line 279 of file vf_histeq.c.
AVFilter avfilter_vf_histeq |
Definition at line 287 of file vf_histeq.c.