FFmpeg
4.0
|
Codec debug viewer filter. More...
#include "libavutil/imgutils.h"
#include "libavutil/motion_vector.h"
#include "libavutil/opt.h"
#include "avfilter.h"
#include "internal.h"
Go to the source code of this file.
Data Structures | |
struct | CodecViewContext |
Macros | |
#define | MV_P_FOR (1<<0) |
#define | MV_B_FOR (1<<1) |
#define | MV_B_BACK (1<<2) |
#define | MV_TYPE_FOR (1<<0) |
#define | MV_TYPE_BACK (1<<1) |
#define | FRAME_TYPE_I (1<<0) |
#define | FRAME_TYPE_P (1<<1) |
#define | FRAME_TYPE_B (1<<2) |
#define | OFFSET(x) offsetof(CodecViewContext, x) |
#define | FLAGS AV_OPT_FLAG_FILTERING_PARAM|AV_OPT_FLAG_VIDEO_PARAM |
#define | CONST(name, help, val, unit) { name, help, 0, AV_OPT_TYPE_CONST, {.i64=val}, 0, 0, FLAGS, unit } |
Functions | |
AVFILTER_DEFINE_CLASS (codecview) | |
static int | query_formats (AVFilterContext *ctx) |
static int | clip_line (int *sx, int *sy, int *ex, int *ey, int maxx) |
static void | draw_line (uint8_t *buf, int sx, int sy, int ex, int ey, int w, int h, int stride, int color) |
Draw a line from (ex, ey) -> (sx, sy). More... | |
static void | draw_arrow (uint8_t *buf, int sx, int sy, int ex, int ey, int w, int h, int stride, int color, int tail, int direction) |
Draw an arrow from (ex, ey) -> (sx, sy). More... | |
static int | filter_frame (AVFilterLink *inlink, AVFrame *frame) |
static int | config_input (AVFilterLink *inlink) |
Variables | |
static const AVOption | codecview_options [] |
static const AVFilterPad | codecview_inputs [] |
static const AVFilterPad | codecview_outputs [] |
AVFilter | ff_vf_codecview |
Codec debug viewer filter.
All the MV drawing code from Michael Niedermayer is extracted from libavcodec/mpegvideo.c.
TODO: segmentation
Definition in file vf_codecview.c.
#define MV_P_FOR (1<<0) |
Definition at line 38 of file vf_codecview.c.
Referenced by filter_frame().
#define MV_B_FOR (1<<1) |
Definition at line 39 of file vf_codecview.c.
Referenced by filter_frame().
#define MV_B_BACK (1<<2) |
Definition at line 40 of file vf_codecview.c.
Referenced by filter_frame().
#define MV_TYPE_FOR (1<<0) |
Definition at line 41 of file vf_codecview.c.
Referenced by filter_frame().
#define MV_TYPE_BACK (1<<1) |
Definition at line 42 of file vf_codecview.c.
Referenced by filter_frame().
#define FRAME_TYPE_I (1<<0) |
Definition at line 43 of file vf_codecview.c.
Referenced by filter_frame().
#define FRAME_TYPE_P (1<<1) |
Definition at line 44 of file vf_codecview.c.
Referenced by filter_frame().
#define FRAME_TYPE_B (1<<2) |
Definition at line 45 of file vf_codecview.c.
Referenced by filter_frame().
#define OFFSET | ( | x | ) | offsetof(CodecViewContext, x) |
Definition at line 56 of file vf_codecview.c.
#define FLAGS AV_OPT_FLAG_FILTERING_PARAM|AV_OPT_FLAG_VIDEO_PARAM |
Definition at line 57 of file vf_codecview.c.
#define CONST | ( | name, | |
help, | |||
val, | |||
unit | |||
) | { name, help, 0, AV_OPT_TYPE_CONST, {.i64=val}, 0, 0, FLAGS, unit } |
Definition at line 58 of file vf_codecview.c.
AVFILTER_DEFINE_CLASS | ( | codecview | ) |
|
static |
Definition at line 80 of file vf_codecview.c.
Definition at line 91 of file vf_codecview.c.
Referenced by draw_line().
|
static |
Draw a line from (ex, ey) -> (sx, sy).
w | width of the image |
h | height of the image |
stride | stride/linesize of the image |
color | color of the arrow |
Definition at line 119 of file vf_codecview.c.
Referenced by draw_arrow().
|
static |
Draw an arrow from (ex, ey) -> (sx, sy).
w | width of the image |
h | height of the image |
stride | stride/linesize of the image |
color | color of the arrow |
Definition at line 177 of file vf_codecview.c.
Referenced by filter_frame().
|
static |
Definition at line 215 of file vf_codecview.c.
|
static |
Definition at line 283 of file vf_codecview.c.
|
static |
Definition at line 60 of file vf_codecview.c.
|
static |
Definition at line 294 of file vf_codecview.c.
|
static |
Definition at line 305 of file vf_codecview.c.
AVFilter ff_vf_codecview |
Definition at line 313 of file vf_codecview.c.