FFmpeg
|
#include "libavutil/avassert.h"
#include "libavutil/imgutils.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/mem.h"
#include "libavutil/opt.h"
#include "libavutil/pixdesc.h"
#include "avfilter.h"
#include "filters.h"
#include "framesync.h"
#include "video.h"
Go to the source code of this file.
Data Structures | |
struct | IPlane |
struct | LUT |
struct | chord |
struct | chord_set |
struct | MorphoContext |
struct | ThreadData |
Used for passing data between threads. More... | |
Macros | |
#define | MAX_THREADS 64 |
#define | OFFSET(x) offsetof(MorphoContext, x) |
#define | FLAGS AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_FILTERING_PARAM | AV_OPT_FLAG_RUNTIME_PARAM |
Enumerations | |
enum | MorphModes { ERODE, DILATE, OPEN, CLOSE, GRADIENT, TOPHAT, BLACKHAT, NB_MODES } |
Functions | |
FRAMESYNC_DEFINE_CLASS (morpho, MorphoContext, fs) | |
static void | min_fun (uint8_t *c, const uint8_t *a, const uint8_t *b, int x) |
static void | mininplace_fun (uint8_t *a, const uint8_t *b, int x) |
static void | max_fun (uint8_t *c, const uint8_t *a, const uint8_t *b, int x) |
static void | maxinplace_fun (uint8_t *a, const uint8_t *b, int x) |
static void | diff_fun (uint8_t *a, const uint8_t *b, int x) |
static void | diffinplace_fun (uint8_t *a, const uint8_t *b, int x) |
static void | min16_fun (uint8_t *cc, const uint8_t *aa, const uint8_t *bb, int x) |
static void | mininplace16_fun (uint8_t *aa, const uint8_t *bb, int x) |
static void | diff16_fun (uint8_t *aa, const uint8_t *bb, int x) |
static void | diffinplace16_fun (uint8_t *aa, const uint8_t *bb, int x) |
static void | max16_fun (uint8_t *cc, const uint8_t *aa, const uint8_t *bb, int x) |
static void | maxinplace16_fun (uint8_t *aa, const uint8_t *bb, int x) |
static int | alloc_lut (LUT *Ty, chord_set *SE, int type_size, int mode) |
static void | free_lut (LUT *table) |
static int | alloc_lut_if_necessary (LUT *Ty, IPlane *f, chord_set *SE, int num, enum MorphModes mode) |
static void | circular_swap (LUT *Ty) |
static void | compute_min_row (IPlane *f, LUT *Ty, chord_set *SE, int r, int y) |
static void | update_min_lut (IPlane *f, LUT *Ty, chord_set *SE, int y, int tid, int num) |
static int | compute_min_lut (LUT *Ty, IPlane *f, chord_set *SE, int y, int num) |
static void | compute_max_row (IPlane *f, LUT *Ty, chord_set *SE, int r, int y) |
static void | update_max_lut (IPlane *f, LUT *Ty, chord_set *SE, int y, int tid, int num) |
static int | compute_max_lut (LUT *Ty, IPlane *f, chord_set *SE, int y, int num) |
static void | line_dilate (IPlane *g, LUT *Ty, chord_set *SE, int y, int tid) |
static void | line_erode (IPlane *g, LUT *Ty, chord_set *SE, int y, int tid) |
static int | dilate (IPlane *g, IPlane *f, chord_set *SE, LUT *Ty, int y0, int y1) |
static int | erode (IPlane *g, IPlane *f, chord_set *SE, LUT *Ty, int y0, int y1) |
static void | difference (IPlane *g, IPlane *f, int y0, int y1) |
static void | difference2 (IPlane *g, IPlane *f, int y0, int y1) |
static int | insert_chord_set (chord_set *chords, chord c) |
static void | free_chord_set (chord_set *SE) |
static int | init_chordset (chord_set *chords) |
static int | comp_chord_length (const void *p, const void *q) |
static int | comp_chord (const void *p, const void *q) |
static int | build_chord_set (IPlane *SE, chord_set *chords) |
static void | free_iplane (IPlane *imp) |
static int | read_iplane (IPlane *imp, const uint8_t *dst, int dst_linesize, int w, int h, int R, int type_size, int depth) |
static int | config_input (AVFilterLink *inlink) |
static int | config_input_structure (AVFilterLink *inlink) |
static int | activate (AVFilterContext *ctx) |
static int | morpho_slice (AVFilterContext *ctx, void *arg, int jobnr, int nb_jobs) |
static int | morpho_sliceX (AVFilterContext *ctx, void *arg, int jobnr, int nb_jobs) |
static int | do_morpho (FFFrameSync *fs) |
static int | config_output (AVFilterLink *outlink) |
static av_cold void | uninit (AVFilterContext *ctx) |
Variables | |
static const AVOption | morpho_options [] |
static enum AVPixelFormat | pix_fmts [] |
static const AVFilterPad | morpho_inputs [] |
static const AVFilterPad | morpho_outputs [] |
const AVFilter | ff_vf_morpho |
#define MAX_THREADS 64 |
Definition at line 98 of file vf_morpho.c.
#define OFFSET | ( | x | ) | offsetof(MorphoContext, x) |
Definition at line 128 of file vf_morpho.c.
#define FLAGS AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_FILTERING_PARAM | AV_OPT_FLAG_RUNTIME_PARAM |
Definition at line 129 of file vf_morpho.c.
enum MorphModes |
Enumerator | |
---|---|
ERODE | |
DILATE | |
OPEN | |
CLOSE | |
GRADIENT | |
TOPHAT | |
BLACKHAT | |
NB_MODES |
Definition at line 37 of file vf_morpho.c.
FRAMESYNC_DEFINE_CLASS | ( | morpho | , |
MorphoContext | , | ||
fs | |||
) |
|
static |
Definition at line 171 of file vf_morpho.c.
Referenced by read_iplane().
|
static |
Definition at line 177 of file vf_morpho.c.
Referenced by read_iplane().
|
static |
Definition at line 183 of file vf_morpho.c.
Referenced by read_iplane().
|
static |
Definition at line 189 of file vf_morpho.c.
Referenced by read_iplane().
|
static |
Definition at line 195 of file vf_morpho.c.
Referenced by read_iplane().
|
static |
Definition at line 201 of file vf_morpho.c.
Referenced by read_iplane().
|
static |
Definition at line 207 of file vf_morpho.c.
Referenced by read_iplane().
|
static |
Definition at line 217 of file vf_morpho.c.
Referenced by read_iplane().
|
static |
Definition at line 226 of file vf_morpho.c.
Referenced by read_iplane().
|
static |
Definition at line 235 of file vf_morpho.c.
Referenced by read_iplane().
|
static |
Definition at line 244 of file vf_morpho.c.
Referenced by read_iplane().
|
static |
Definition at line 254 of file vf_morpho.c.
Referenced by read_iplane().
Definition at line 263 of file vf_morpho.c.
Referenced by alloc_lut_if_necessary().
|
static |
Definition at line 299 of file vf_morpho.c.
Referenced by alloc_lut_if_necessary(), and uninit().
|
static |
Definition at line 322 of file vf_morpho.c.
Referenced by compute_max_lut(), and compute_min_lut().
|
static |
Definition at line 345 of file vf_morpho.c.
Referenced by update_max_lut(), and update_min_lut().
Definition at line 361 of file vf_morpho.c.
Referenced by compute_min_lut(), and update_min_lut().
Definition at line 382 of file vf_morpho.c.
Referenced by erode().
Definition at line 390 of file vf_morpho.c.
Referenced by erode().
Definition at line 402 of file vf_morpho.c.
Referenced by compute_max_lut(), and update_max_lut().
Definition at line 423 of file vf_morpho.c.
Referenced by dilate().
Definition at line 431 of file vf_morpho.c.
Referenced by dilate().
Definition at line 443 of file vf_morpho.c.
Referenced by dilate().
Definition at line 454 of file vf_morpho.c.
Referenced by erode().
Definition at line 465 of file vf_morpho.c.
Referenced by dilate_end_frame_filter(), dilate_init(), dilate_uninit(), erode_end_frame_filter(), morpho_slice(), and morpho_sliceX().
Definition at line 480 of file vf_morpho.c.
Referenced by morpho_slice(), and morpho_sliceX().
Definition at line 495 of file vf_morpho.c.
Referenced by checkasm_check_blend(), and morpho_sliceX().
Definition at line 501 of file vf_morpho.c.
Referenced by morpho_sliceX().
Definition at line 507 of file vf_morpho.c.
Referenced by build_chord_set().
|
static |
Definition at line 532 of file vf_morpho.c.
Referenced by do_morpho(), and uninit().
|
static |
Definition at line 542 of file vf_morpho.c.
Referenced by build_chord_set().
|
static |
Definition at line 559 of file vf_morpho.c.
Referenced by build_chord_set().
|
static |
Definition at line 568 of file vf_morpho.c.
Referenced by build_chord_set().
Definition at line 577 of file vf_morpho.c.
Referenced by do_morpho().
|
static |
Definition at line 721 of file vf_morpho.c.
Referenced by uninit().
|
static |
Definition at line 726 of file vf_morpho.c.
Referenced by do_morpho().
|
static |
Definition at line 752 of file vf_morpho.c.
|
static |
Definition at line 768 of file vf_morpho.c.
|
static |
Definition at line 784 of file vf_morpho.c.
|
static |
Definition at line 794 of file vf_morpho.c.
Referenced by do_morpho().
|
static |
Definition at line 853 of file vf_morpho.c.
Referenced by do_morpho().
|
static |
Definition at line 910 of file vf_morpho.c.
Referenced by config_output().
|
static |
Definition at line 1000 of file vf_morpho.c.
|
static |
Definition at line 1035 of file vf_morpho.c.
|
static |
Definition at line 131 of file vf_morpho.c.
|
static |
Definition at line 149 of file vf_morpho.c.
|
static |
Definition at line 1058 of file vf_morpho.c.
|
static |
Definition at line 1071 of file vf_morpho.c.
const AVFilter ff_vf_morpho |
Definition at line 1079 of file vf_morpho.c.