|
FFmpeg
|
#include <inttypes.h>#include "libavutil/avassert.h"#include "libavutil/imgutils.h"#include "libavutil/opt.h"#include "libavutil/timestamp.h"#include "avfilter.h"#include "filters.h"#include "internal.h"Go to the source code of this file.
Data Structures | |
| struct | FieldMatchContext |
Macros | |
| #define | INPUT_MAIN 0 |
| #define | INPUT_CLEANSRC 1 |
| #define | OFFSET(x) offsetof(FieldMatchContext, x) |
| #define | FLAGS AV_OPT_FLAG_VIDEO_PARAM|AV_OPT_FLAG_FILTERING_PARAM |
| #define | FILTER(xm2, xm1, xp1, xp2) |
| #define | HAS_FF_AROUND(p, lz) |
| #define | C_ARRAY_ADD(v) |
| #define | VERTICAL_HALF(y_start, y_end) |
| #define | LOAD_COMB(mid) |
| #define | SLIDING_FRAME_WINDOW(prv, src, nxt) |
Enumerations | |
| enum | fieldmatch_parity { FM_PARITY_AUTO = -1, FM_PARITY_BOTTOM = 0, FM_PARITY_TOP = 1 } |
| enum | matching_mode { MODE_PC, MODE_PC_N, MODE_PC_U, MODE_PC_N_UB, MODE_PCN, MODE_PCN_UB, NB_MODE } |
| enum | comb_matching_mode { COMBMATCH_NONE, COMBMATCH_SC, COMBMATCH_FULL, NB_COMBMATCH } |
| enum | comb_dbg { COMBDBG_NONE, COMBDBG_PCN, COMBDBG_PCNUB, NB_COMBDBG } |
| enum | { mP, mC, mN, mB, mU } |
Functions | |
| AVFILTER_DEFINE_CLASS (fieldmatch) | |
| static int | get_width (const FieldMatchContext *fm, const AVFrame *f, int plane) |
| static int | get_height (const FieldMatchContext *fm, const AVFrame *f, int plane) |
| static int64_t | luma_abs_diff (const AVFrame *f1, const AVFrame *f2) |
| static void | fill_buf (uint8_t *data, int w, int h, int linesize, uint8_t v) |
| static int | calc_combed_score (const FieldMatchContext *fm, const AVFrame *src) |
| static void | build_abs_diff_mask (const uint8_t *prvp, int prv_linesize, const uint8_t *nxtp, int nxt_linesize, uint8_t *tbuffer, int tbuf_linesize, int width, int height) |
| static void | build_diff_map (FieldMatchContext *fm, const uint8_t *prvp, int prv_linesize, const uint8_t *nxtp, int nxt_linesize, uint8_t *dstp, int dst_linesize, int height, int width, int plane) |
| Build a map over which pixels differ a lot/a little. More... | |
| static int | get_field_base (int match, int field) |
| static AVFrame * | select_frame (FieldMatchContext *fm, int match) |
| static int | compare_fields (FieldMatchContext *fm, int match1, int match2, int field) |
| static void | copy_fields (const FieldMatchContext *fm, AVFrame *dst, const AVFrame *src, int field) |
| static AVFrame * | create_weave_frame (AVFilterContext *ctx, int match, int field, const AVFrame *prv, AVFrame *src, const AVFrame *nxt) |
| static int | checkmm (AVFilterContext *ctx, int *combs, int m1, int m2, AVFrame **gen_frames, int field) |
| static int | filter_frame (AVFilterLink *inlink, AVFrame *in) |
| static int | activate (AVFilterContext *ctx) |
| static int | query_formats (AVFilterContext *ctx) |
| static int | config_input (AVFilterLink *inlink) |
| static av_cold int | fieldmatch_init (AVFilterContext *ctx) |
| static av_cold void | fieldmatch_uninit (AVFilterContext *ctx) |
| static int | config_output (AVFilterLink *outlink) |
Variables | |
| static const AVOption | fieldmatch_options [] |
| static const int | fxo0m [] = { mP, mC, mN, mB, mU } |
| static const int | fxo1m [] = { mN, mC, mP, mU, mB } |
| static const AVFilterPad | fieldmatch_outputs [] |
| const AVFilter | ff_vf_fieldmatch |
Fieldmatching filter, ported from VFM filter (VapourSynth) by Clément. Fredrik Mellbin is the author of the VIVTC/VFM filter, which is itself a light clone of the TIVTC/TFM (AviSynth) filter written by Kevin Stone (tritical), the original author.
Definition in file vf_fieldmatch.c.
| #define INPUT_MAIN 0 |
Definition at line 43 of file vf_fieldmatch.c.
| #define INPUT_CLEANSRC 1 |
Definition at line 44 of file vf_fieldmatch.c.
| #define OFFSET | ( | x | ) | offsetof(FieldMatchContext, x) |
Definition at line 114 of file vf_fieldmatch.c.
| #define FLAGS AV_OPT_FLAG_VIDEO_PARAM|AV_OPT_FLAG_FILTERING_PARAM |
Definition at line 115 of file vf_fieldmatch.c.
| #define FILTER | ( | xm2, | |
| xm1, | |||
| xp1, | |||
| xp2 | |||
| ) |
| #define HAS_FF_AROUND | ( | p, | |
| lz | |||
| ) |
| #define C_ARRAY_ADD | ( | v | ) |
| #define VERTICAL_HALF | ( | y_start, | |
| y_end | |||
| ) |
| #define LOAD_COMB | ( | mid | ) |
| #define SLIDING_FRAME_WINDOW | ( | prv, | |
| src, | |||
| nxt | |||
| ) |
| enum fieldmatch_parity |
| Enumerator | |
|---|---|
| FM_PARITY_AUTO | |
| FM_PARITY_BOTTOM | |
| FM_PARITY_TOP | |
Definition at line 46 of file vf_fieldmatch.c.
| enum matching_mode |
| Enumerator | |
|---|---|
| MODE_PC | |
| MODE_PC_N | |
| MODE_PC_U | |
| MODE_PC_N_UB | |
| MODE_PCN | |
| MODE_PCN_UB | |
| NB_MODE | |
Definition at line 52 of file vf_fieldmatch.c.
| enum comb_matching_mode |
| Enumerator | |
|---|---|
| COMBMATCH_NONE | |
| COMBMATCH_SC | |
| COMBMATCH_FULL | |
| NB_COMBMATCH | |
Definition at line 62 of file vf_fieldmatch.c.
| enum comb_dbg |
| Enumerator | |
|---|---|
| COMBDBG_NONE | |
| COMBDBG_PCN | |
| COMBDBG_PCNUB | |
| NB_COMBDBG | |
Definition at line 69 of file vf_fieldmatch.c.
| anonymous enum |
| Enumerator | |
|---|---|
| mP | |
| mC | |
| mN | |
| mB | |
| mU | |
Definition at line 473 of file vf_fieldmatch.c.
| AVFILTER_DEFINE_CLASS | ( | fieldmatch | ) |
|
static |
Definition at line 156 of file vf_fieldmatch.c.
Referenced by calc_combed_score(), compare_fields(), and copy_fields().
|
static |
Definition at line 161 of file vf_fieldmatch.c.
Referenced by calc_combed_score(), compare_fields(), copy_fields(), and ff_sauce_read().
Definition at line 166 of file vf_fieldmatch.c.
Referenced by filter_frame().
Definition at line 186 of file vf_fieldmatch.c.
Referenced by calc_combed_score(), compare_fields(), and intercept_id3().
|
static |
Definition at line 196 of file vf_fieldmatch.c.
Referenced by filter_frame().
|
static |
Definition at line 394 of file vf_fieldmatch.c.
Referenced by build_diff_map().
|
static |
Build a map over which pixels differ a lot/a little.
Definition at line 415 of file vf_fieldmatch.c.
Referenced by compare_fields().
Definition at line 475 of file vf_fieldmatch.c.
Referenced by compare_fields().
|
static |
Definition at line 480 of file vf_fieldmatch.c.
Referenced by compare_fields().
|
static |
Definition at line 487 of file vf_fieldmatch.c.
Referenced by filter_frame().
|
static |
Definition at line 609 of file vf_fieldmatch.c.
Referenced by create_weave_frame().
|
static |
Definition at line 622 of file vf_fieldmatch.c.
Referenced by filter_frame().
|
static |
Definition at line 649 of file vf_fieldmatch.c.
Referenced by filter_frame().
|
static |
Definition at line 676 of file vf_fieldmatch.c.
Referenced by activate().
|
static |
Definition at line 835 of file vf_fieldmatch.c.
|
static |
Definition at line 886 of file vf_fieldmatch.c.
|
static |
Definition at line 932 of file vf_fieldmatch.c.
Referenced by fieldmatch_init().
|
static |
Definition at line 963 of file vf_fieldmatch.c.
|
static |
Definition at line 997 of file vf_fieldmatch.c.
|
static |
Definition at line 1017 of file vf_fieldmatch.c.
|
static |
Definition at line 117 of file vf_fieldmatch.c.
Definition at line 673 of file vf_fieldmatch.c.
Referenced by filter_frame().
Definition at line 674 of file vf_fieldmatch.c.
Referenced by filter_frame().
|
static |
Definition at line 1034 of file vf_fieldmatch.c.
| const AVFilter ff_vf_fieldmatch |
Definition at line 1042 of file vf_fieldmatch.c.
1.8.17