|
FFmpeg
|
high quality 3d video denoiser, ported from MPlayer libmpcodecs/vf_hqdn3d.c. More...
#include <float.h>#include "config.h"#include "libavutil/attributes.h"#include "libavutil/common.h"#include "libavutil/mem.h"#include "libavutil/pixdesc.h"#include "libavutil/intreadwrite.h"#include "libavutil/opt.h"#include "avfilter.h"#include "filters.h"#include "video.h"#include "vf_hqdn3d.h"Go to the source code of this file.
Data Structures | |
| struct | ThreadData |
| Used for passing data between threads. More... | |
Macros | |
| #define | LUT_BITS (depth==16 ? 8 : 4) |
| #define | LOAD(x) |
| #define | STORE(x, val) |
| #define | denoise(...) |
| #define | PARAM1_DEFAULT 4.0 |
| #define | PARAM2_DEFAULT 3.0 |
| #define | PARAM3_DEFAULT 6.0 |
| #define | OFFSET(x) |
| #define | FLAGS AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_FILTERING_PARAM | AV_OPT_FLAG_RUNTIME_PARAM |
Functions | |
| static av_always_inline uint32_t | lowpass (int prev, int cur, int16_t *coef, int depth) |
| static av_always_inline void | denoise_temporal (uint8_t *src, uint8_t *dst, uint16_t *frame_ant, int w, int h, int sstride, int dstride, int16_t *temporal, int depth) |
| static av_always_inline void | denoise_spatial (HQDN3DContext *s, uint8_t *src, uint8_t *dst, uint16_t *line_ant, uint16_t *frame_ant, int w, int h, int sstride, int dstride, int16_t *spatial, int16_t *temporal, int depth) |
| static av_always_inline int | denoise_depth (HQDN3DContext *s, uint8_t *src, uint8_t *dst, uint16_t *line_ant, uint16_t **frame_ant_ptr, int w, int h, int sstride, int dstride, int16_t *spatial, int16_t *temporal, int depth) |
| static void | precalc_coefs (double dist25, int depth, int16_t *ct) |
| static av_cold int | init (AVFilterContext *ctx) |
| static av_cold void | uninit (AVFilterContext *ctx) |
| static void | calc_coefs (AVFilterContext *ctx) |
| static int | config_input (AVFilterLink *inlink) |
| static int | do_denoise (AVFilterContext *ctx, void *data, int job_nr, int n_jobs) |
| static int | filter_frame (AVFilterLink *inlink, AVFrame *in) |
| static int | process_command (AVFilterContext *ctx, const char *cmd, const char *args, char *res, int res_len, int flags) |
| AVFILTER_DEFINE_CLASS (hqdn3d) | |
Variables | |
| static enum AVPixelFormat | pix_fmts [] |
| static const AVOption | hqdn3d_options [] |
| static const AVFilterPad | avfilter_vf_hqdn3d_inputs [] |
| const FFFilter | ff_vf_hqdn3d |
high quality 3d video denoiser, ported from MPlayer libmpcodecs/vf_hqdn3d.c.
Definition in file vf_hqdn3d.c.
| #define LUT_BITS (depth==16 ? 8 : 4) |
Definition at line 44 of file vf_hqdn3d.c.
| #define LOAD | ( | x | ) |
Definition at line 45 of file vf_hqdn3d.c.
Referenced by denoise_depth(), denoise_spatial(), and denoise_temporal().
| #define STORE | ( | x, | |
| val ) |
Definition at line 47 of file vf_hqdn3d.c.
Referenced by denoise_spatial(), and denoise_temporal().
| #define denoise | ( | ... | ) |
Definition at line 155 of file vf_hqdn3d.c.
Referenced by denoise_vaapi_build_filter_params(), do_denoise(), and filter_frame().
| #define PARAM1_DEFAULT 4.0 |
Definition at line 187 of file vf_hqdn3d.c.
Referenced by init().
| #define PARAM2_DEFAULT 3.0 |
Definition at line 188 of file vf_hqdn3d.c.
Referenced by init().
| #define PARAM3_DEFAULT 6.0 |
Definition at line 189 of file vf_hqdn3d.c.
Referenced by init().
| #define OFFSET | ( | x | ) |
Definition at line 386 of file vf_hqdn3d.c.
| #define FLAGS AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_FILTERING_PARAM | AV_OPT_FLAG_RUNTIME_PARAM |
Definition at line 387 of file vf_hqdn3d.c.
|
static |
Definition at line 51 of file vf_hqdn3d.c.
|
static |
Definition at line 58 of file vf_hqdn3d.c.
Referenced by denoise_depth().
|
static |
Definition at line 80 of file vf_hqdn3d.c.
Referenced by denoise_depth().
|
static |
Definition at line 124 of file vf_hqdn3d.c.
|
static |
Definition at line 170 of file vf_hqdn3d.c.
Referenced by calc_coefs().
|
static |
Definition at line 191 of file vf_hqdn3d.c.
|
static |
Definition at line 211 of file vf_hqdn3d.c.
Referenced by config_input().
|
static |
Definition at line 241 of file vf_hqdn3d.c.
Referenced by config_input(), and process_command().
|
static |
Definition at line 249 of file vf_hqdn3d.c.
Referenced by filter_frame().
|
static |
Definition at line 291 of file vf_hqdn3d.c.
Referenced by filter_frame().
|
static |
Definition at line 309 of file vf_hqdn3d.c.
|
static |
Definition at line 372 of file vf_hqdn3d.c.
| AVFILTER_DEFINE_CLASS | ( | hqdn3d | ) |
|
static |
Definition at line 227 of file vf_hqdn3d.c.
|
static |
Definition at line 388 of file vf_hqdn3d.c.
|
static |
Definition at line 398 of file vf_hqdn3d.c.
| const FFFilter ff_vf_hqdn3d |
Definition at line 408 of file vf_hqdn3d.c.