FFmpeg
4.0
|
VP8 compatible video decoder. More...
#include "libavutil/common.h"
#include "libavutil/intreadwrite.h"
#include "mathops.h"
#include "vp8dsp.h"
Go to the source code of this file.
Macros | |
#define | MK_IDCT_DC_ADD4_C(name) |
#define | LOAD_PIXELS |
#define | clip_int8(n) (cm[(n) + 0x80] - 0x80) |
#define | NORMAL_LIMIT(vpn) |
E - limit at the macroblock edge I - limit for interior difference. More... | |
#define | LOOP_FILTER(vpn, dir, size, stridea, strideb, maybe_inline) |
#define | UV_LOOP_FILTER(vpn, dir, stridea, strideb) |
#define | LOOP_FILTER_SIMPLE(vpn) |
#define | LOOP_FILTERS(vpn) |
#define | PUT_PIXELS(WIDTH) |
#define | FILTER_6TAP(src, F, stride) |
#define | FILTER_4TAP(src, F, stride) |
#define | VP8_EPEL_H(SIZE, TAPS) |
#define | VP8_EPEL_V(SIZE, TAPS) |
#define | VP8_EPEL_HV(SIZE, HTAPS, VTAPS) |
#define | VP8_BILINEAR(SIZE) |
#define | VP78_MC_FUNC(IDX, SIZE) |
#define | VP78_BILINEAR_MC_FUNC(IDX, SIZE) |
Functions | |
static av_always_inline void | filter_common (uint8_t *p, ptrdiff_t stride, int is4tap, int is_vp7) |
static av_always_inline void | vp7_filter_common (uint8_t *p, ptrdiff_t stride, int is4tap) |
static av_always_inline void | vp8_filter_common (uint8_t *p, ptrdiff_t stride, int is4tap) |
static av_always_inline int | vp7_simple_limit (uint8_t *p, ptrdiff_t stride, int flim) |
static av_always_inline int | vp8_simple_limit (uint8_t *p, ptrdiff_t stride, int flim) |
static av_always_inline int | hev (uint8_t *p, ptrdiff_t stride, int thresh) |
static av_always_inline void | filter_mbedge (uint8_t *p, ptrdiff_t stride) |
av_cold void | ff_vp78dsp_init (VP8DSPContext *dsp) |
Variables | |
static const uint8_t | subpel_filters [7][6] |
VP8 compatible video decoder.
Definition in file vp8dsp.c.
#define LOAD_PIXELS |
Definition at line 249 of file vp8dsp.c.
Referenced by filter_common(), filter_mbedge(), hev(), vp7_simple_limit(), and vp8_simple_limit().
Definition at line 259 of file vp8dsp.c.
Referenced by filter_common(), and filter_mbedge().
#define NORMAL_LIMIT | ( | vpn | ) |
E - limit at the macroblock edge I - limit for interior difference.
#define LOOP_FILTER | ( | vpn, | |
dir, | |||
size, | |||
stridea, | |||
strideb, | |||
maybe_inline | |||
) |
#define UV_LOOP_FILTER | ( | vpn, | |
dir, | |||
stridea, | |||
strideb | |||
) |
#define LOOP_FILTER_SIMPLE | ( | vpn | ) |
#define LOOP_FILTERS | ( | vpn | ) |
Definition at line 450 of file vp8dsp.c.
Referenced by ff_vp78dsp_init().
Definition at line 481 of file vp8dsp.c.
Referenced by ff_put_vp8_epel16_h4v6_mmi(), ff_put_vp8_epel16_h6_mmi(), ff_put_vp8_epel16_h6v4_mmi(), ff_put_vp8_epel16_h6v6_mmi(), ff_put_vp8_epel16_v6_mmi(), ff_put_vp8_epel4_h4v6_mmi(), ff_put_vp8_epel4_h6_mmi(), ff_put_vp8_epel4_h6v4_mmi(), ff_put_vp8_epel4_h6v6_mmi(), ff_put_vp8_epel4_v6_mmi(), ff_put_vp8_epel8_h4v6_mmi(), ff_put_vp8_epel8_h6_mmi(), ff_put_vp8_epel8_h6v4_mmi(), ff_put_vp8_epel8_h6v6_mmi(), and ff_put_vp8_epel8_v6_mmi().
Definition at line 486 of file vp8dsp.c.
Referenced by ff_put_vp8_epel16_h4_mmi(), ff_put_vp8_epel16_h4v4_mmi(), ff_put_vp8_epel16_h4v6_mmi(), ff_put_vp8_epel16_h6v4_mmi(), ff_put_vp8_epel16_v4_mmi(), ff_put_vp8_epel4_h4_mmi(), ff_put_vp8_epel4_h4v4_mmi(), ff_put_vp8_epel4_h4v6_mmi(), ff_put_vp8_epel4_h6v4_mmi(), ff_put_vp8_epel4_v4_mmi(), ff_put_vp8_epel8_h4_mmi(), ff_put_vp8_epel8_h4v4_mmi(), ff_put_vp8_epel8_h4v6_mmi(), ff_put_vp8_epel8_h6v4_mmi(), and ff_put_vp8_epel8_v4_mmi().
#define VP8_EPEL_H | ( | SIZE, | |
TAPS | |||
) |
#define VP8_EPEL_V | ( | SIZE, | |
TAPS | |||
) |
#define VP78_MC_FUNC | ( | IDX, | |
SIZE | |||
) |
Definition at line 644 of file vp8dsp.c.
Referenced by ff_vp78dsp_init().
#define VP78_BILINEAR_MC_FUNC | ( | IDX, | |
SIZE | |||
) |
Definition at line 655 of file vp8dsp.c.
Referenced by ff_vp78dsp_init().
|
static |
Definition at line 261 of file vp8dsp.c.
Referenced by vp7_filter_common(), and vp8_filter_common().
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
av_cold void ff_vp78dsp_init | ( | VP8DSPContext * | dsp | ) |
Definition at line 666 of file vp8dsp.c.
Referenced by check_mc(), and vp78_decode_init().
|
static |
Definition at line 457 of file vp8dsp.c.
Referenced by ff_put_vp8_epel16_h4_mmi(), ff_put_vp8_epel16_h4v4_mmi(), ff_put_vp8_epel16_h4v6_mmi(), ff_put_vp8_epel16_h6_mmi(), ff_put_vp8_epel16_h6v4_mmi(), ff_put_vp8_epel16_h6v6_mmi(), ff_put_vp8_epel16_v4_mmi(), ff_put_vp8_epel16_v6_mmi(), ff_put_vp8_epel4_h4_mmi(), ff_put_vp8_epel4_h4v4_mmi(), ff_put_vp8_epel4_h4v6_mmi(), ff_put_vp8_epel4_h6_mmi(), ff_put_vp8_epel4_h6v4_mmi(), ff_put_vp8_epel4_h6v6_mmi(), ff_put_vp8_epel4_v4_mmi(), ff_put_vp8_epel4_v6_mmi(), ff_put_vp8_epel8_h4_mmi(), ff_put_vp8_epel8_h4v4_mmi(), ff_put_vp8_epel8_h4v6_mmi(), ff_put_vp8_epel8_h6_mmi(), ff_put_vp8_epel8_h6v4_mmi(), ff_put_vp8_epel8_h6v6_mmi(), ff_put_vp8_epel8_v4_mmi(), and ff_put_vp8_epel8_v6_mmi().