FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
vp9dsp_template.c File Reference
#include "libavutil/common.h"
#include "bit_depth_template.c"
#include "vp9dsp.h"

Go to the source code of this file.

Macros

#define DST(x, y)   dst[(x) + (y) * stride]
 
#define def_diag_downleft(size)
 
#define def_diag_downright(size)
 
#define def_vert_right(size)
 
#define def_hor_down(size)
 
#define def_vert_left(size)
 
#define def_hor_up(size)
 
#define init_intra_pred_bd_aware(tx, sz)
 
#define init_intra_pred(tx, sz)
 
#define itxfm_wrapper(type_a, type_b, sz, bits, has_dconly)
 
#define itxfm_wrap(sz, bits)
 
#define IN(x)   ((dctint) in[(x) * stride])
 
#define init_itxfm(tx, sz)
 
#define init_idct(tx, nm)
 
#define lf_8_fn(dir, wd, stridea, strideb)
 
#define lf_8_fns(wd)
 
#define lf_16_fn(dir, stridea)
 
#define lf_mix_fn(dir, wd1, wd2, stridea)
 
#define lf_mix_fns(wd1, wd2)
 
#define fpel_fn(type, sz)
 
#define copy_avg_fn(sz)
 
#define FILTER_8TAP(src, x, F, stride)
 
#define filter_8tap_1d_fn(opn, opa, dir, ds)
 
#define filter_8tap_2d_fn(opn, opa)
 
#define filter_fn_1d(sz, dir, dir_m, type, type_idx, avg)
 
#define filter_fn_2d(sz, type, type_idx, avg)
 
#define FILTER_BILIN(src, x, mxy, stride)   (src[x] + ((mxy * (src[x + stride] - src[x]) + 8) >> 4))
 
#define bilin_1d_fn(opn, opa, dir, ds)
 
#define bilin_2d_fn(opn, opa)
 
#define bilinf_fn_1d(sz, dir, dir_m, avg)
 
#define bilinf_fn_2d(sz, avg)
 
#define filter_fn(sz, avg)
 
#define filter_fn_set(avg)
 
#define init_fpel(idx1, idx2, sz, type)
 
#define init_copy_avg(idx, sz)
 
#define init_subpel1_bd_aware(idx1, idx2, idxh, idxv, sz, dir, type)
 
#define init_subpel1(idx1, idx2, idxh, idxv, sz, dir, type)
 
#define init_subpel2(idx, idxh, idxv, dir, type)
 
#define init_subpel3(idx, type)
 
#define scaled_filter_8tap_fn(opn, opa)
 
#define scaled_filter_fn(sz, type, type_idx, avg)
 
#define scaled_bilin_fn(opn, opa)
 
#define scaled_bilinf_fn(sz, avg)
 
#define scaled_filter_fns(sz, avg)
 
#define scaled_filter_fn_set(avg)
 
#define init_scaled_bd_aware(idx1, idx2, sz, type)
 
#define init_scaled(idx1, idx2, sz, type)
 
#define init_scaled_put_avg(idx, sz)
 

Functions

static void vert_4x4_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *_top)
 
static void vert_8x8_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *_top)
 
static void vert_16x16_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *_top)
 
static void vert_32x32_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *_top)
 
static void hor_4x4_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *_left, const uint8_t *top)
 
static void hor_8x8_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *_left, const uint8_t *top)
 
static void hor_16x16_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *_left, const uint8_t *top)
 
static void hor_32x32_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *_left, const uint8_t *top)
 
static void tm_4x4_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *_left, const uint8_t *_top)
 
static void tm_8x8_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *_left, const uint8_t *_top)
 
static void tm_16x16_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *_left, const uint8_t *_top)
 
static void tm_32x32_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *_left, const uint8_t *_top)
 
static void dc_4x4_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *_left, const uint8_t *_top)
 
static void dc_8x8_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *_left, const uint8_t *_top)
 
static void dc_16x16_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *_left, const uint8_t *_top)
 
static void dc_32x32_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *_left, const uint8_t *_top)
 
static void dc_left_4x4_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *_left, const uint8_t *top)
 
static void dc_left_8x8_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *_left, const uint8_t *top)
 
static void dc_left_16x16_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *_left, const uint8_t *top)
 
static void dc_left_32x32_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *_left, const uint8_t *top)
 
static void dc_top_4x4_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *_top)
 
static void dc_top_8x8_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *_top)
 
static void dc_top_16x16_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *_top)
 
static void dc_top_32x32_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *_top)
 
static void dc_128_4x4_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
 
static void dc_128_8x8_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
 
static void dc_128_16x16_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
 
static void dc_128_32x32_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
 
static void dc_127_4x4_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
 
static void dc_127_8x8_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
 
static void dc_127_16x16_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
 
static void dc_127_32x32_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
 
static void dc_129_4x4_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
 
static void dc_129_8x8_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
 
static void dc_129_16x16_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
 
static void dc_129_32x32_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *top)
 
static void memset_bpc (uint16_t *dst, int val, int len)
 
static void diag_downleft_4x4_c (uint8_t *_dst, ptrdiff_t stride, const uint8_t *left, const uint8_t *_top)
 
 def_diag_downleft (8)
 
 def_diag_downright (8)
 
 def_vert_right (8)
 
 def_hor_down (8)
 
 def_vert_left (8)
 
 def_hor_up (8)
 
static av_always_inline void idct4_1d (const dctcoef *in, ptrdiff_t stride, dctcoef *out, int pass)
 
static av_always_inline void iadst4_1d (const dctcoef *in, ptrdiff_t stride, dctcoef *out, int pass)
 
 itxfm_wrap (4, 4)
 
static av_always_inline void iadst8_1d (const dctcoef *in, ptrdiff_t stride, dctcoef *out, int pass)
 
 itxfm_wrap (8, 5)
 
static av_always_inline void iadst16_1d (const dctcoef *in, ptrdiff_t stride, dctcoef *out, int pass)
 
 itxfm_wrap (16, 6)
 
 itxfm_wrapper (idct, idct, 32, 6, 1)
 
 itxfm_wrapper (iwht, iwht, 4, 0, 0)
 
static av_always_inline void loop_filter (pixel *dst, int E, int I, int H, ptrdiff_t stridea, ptrdiff_t strideb, int wd)
 
 lf_8_fns (4)
 
static av_always_inline void copy_c (uint8_t *dst, ptrdiff_t dst_stride, const uint8_t *src, ptrdiff_t src_stride, int w, int h)
 
static av_always_inline void avg_c (uint8_t *_dst, ptrdiff_t dst_stride, const uint8_t *_src, ptrdiff_t src_stride, int w, int h)
 
 copy_avg_fn (64)
 
 filter_8tap_1d_fn (put, 0, v, src_stride/sizeof(pixel)) filter_8tap_1d_fn(put
 
 filter_8tap_1d_fn (avg, 1, v, src_stride/sizeof(pixel)) filter_8tap_1d_fn(avg
 
static av_always_inline void do_8tap_2d_c (uint8_t *_dst, ptrdiff_t dst_stride, const uint8_t *_src, ptrdiff_t src_stride, int w, int h, const int16_t *filterx, const int16_t *filtery, int avg)
 
 filter_8tap_2d_fn (put, 0)
 
 bilin_1d_fn (put, 0, v, src_stride/sizeof(pixel)) bilin_1d_fn(put
 
 bilin_1d_fn (avg, 1, v, src_stride/sizeof(pixel)) bilin_1d_fn(avg
 
static av_always_inline void do_bilin_2d_c (uint8_t *_dst, ptrdiff_t dst_stride, const uint8_t *_src, ptrdiff_t src_stride, int w, int h, int mx, int my, int avg)
 
 bilin_2d_fn (put, 0)
 
static av_always_inline void do_scaled_8tap_c (uint8_t *_dst, ptrdiff_t dst_stride, const uint8_t *_src, ptrdiff_t src_stride, int w, int h, int mx, int my, int dx, int dy, int avg, const int16_t(*filters)[8])
 
 scaled_filter_8tap_fn (put, 0)
 
 scaled_bilin_fn (put, 0)
 
av_cold void FUNC() ff_vp9dsp_init (VP9DSPContext *dsp)
 

Variables

 h
 

Macro Definition Documentation

#define DST (   x,
 
)    dst[(x) + (y) * stride]
#define def_diag_downleft (   size)
Value:
static void diag_downleft_##size##x##size##_c(uint8_t *_dst, ptrdiff_t stride, \
const uint8_t *left, const uint8_t *_top) \
{ \
pixel *dst = (pixel *) _dst; \
const pixel *top = (const pixel *) _top; \
int i, j; \
pixel v[size - 1]; \
stride /= sizeof(pixel); \
for (i = 0; i < size - 2; i++) \
v[i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \
v[size - 2] = (top[size - 2] + top[size - 1] * 3 + 2) >> 2; \
for (j = 0; j < size; j++) { \
memcpy(dst + j*stride, v + j, (size - 1 - j) * sizeof(pixel)); \
memset_bpc(dst + j*stride + size - 1 - j, top[size - 1], j + 1); \
} \
}
uint8_t
ptrdiff_t size
Definition: opengl_enc.c:101
static void memset_bpc(uint16_t *dst, int val, int len)
uint8_t pixel
Definition: tiny_ssim.c:42
int
GLint GLenum GLboolean GLsizei stride
Definition: opengl_enc.c:105
#define stride
for(j=16;j >0;--j)

Definition at line 801 of file vp9dsp_template.c.

#define def_diag_downright (   size)
Value:
static void diag_downright_##size##x##size##_c(uint8_t *_dst, ptrdiff_t stride, \
const uint8_t *_left, const uint8_t *_top) \
{ \
pixel *dst = (pixel *) _dst; \
const pixel *top = (const pixel *) _top; \
const pixel *left = (const pixel *) _left; \
int i, j; \
pixel v[size + size - 1]; \
stride /= sizeof(pixel); \
for (i = 0; i < size - 2; i++) { \
v[i ] = (left[i] + left[i + 1] * 2 + left[i + 2] + 2) >> 2; \
v[size + 1 + i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \
} \
v[size - 2] = (left[size - 2] + left[size - 1] * 2 + top[-1] + 2) >> 2; \
v[size - 1] = (left[size - 1] + top[-1] * 2 + top[ 0] + 2) >> 2; \
v[size ] = (top[-1] + top[0] * 2 + top[ 1] + 2) >> 2; \
for (j = 0; j < size; j++) \
memcpy(dst + j*stride, v + size - 1 - j, size * sizeof(pixel)); \
}
uint8_t
ptrdiff_t size
Definition: opengl_enc.c:101
uint8_t pixel
Definition: tiny_ssim.c:42
int
GLint GLenum GLboolean GLsizei stride
Definition: opengl_enc.c:105
#define stride
for(j=16;j >0;--j)

Definition at line 844 of file vp9dsp_template.c.

#define def_vert_right (   size)
Value:
static void vert_right_##size##x##size##_c(uint8_t *_dst, ptrdiff_t stride, \
const uint8_t *_left, const uint8_t *_top) \
{ \
pixel *dst = (pixel *) _dst; \
const pixel *top = (const pixel *) _top; \
const pixel *left = (const pixel *) _left; \
int i, j; \
pixel ve[size + size/2 - 1], vo[size + size/2 - 1]; \
stride /= sizeof(pixel); \
for (i = 0; i < size/2 - 2; i++) { \
vo[i] = (left[i*2 + 3] + left[i*2 + 2] * 2 + left[i*2 + 1] + 2) >> 2; \
ve[i] = (left[i*2 + 4] + left[i*2 + 3] * 2 + left[i*2 + 2] + 2) >> 2; \
} \
vo[size/2 - 2] = (left[size - 1] + left[size - 2] * 2 + left[size - 3] + 2) >> 2; \
ve[size/2 - 2] = (top[-1] + left[size - 1] * 2 + left[size - 2] + 2) >> 2; \
\
ve[size/2 - 1] = (top[-1] + top[0] + 1) >> 1; \
vo[size/2 - 1] = (left[size - 1] + top[-1] * 2 + top[0] + 2) >> 2; \
for (i = 0; i < size - 1; i++) { \
ve[size/2 + i] = (top[i] + top[i + 1] + 1) >> 1; \
vo[size/2 + i] = (top[i - 1] + top[i] * 2 + top[i + 1] + 2) >> 2; \
} \
for (j = 0; j < size / 2; j++) { \
memcpy(dst + j*2 *stride, ve + size/2 - 1 - j, size * sizeof(pixel)); \
memcpy(dst + (j*2 + 1)*stride, vo + size/2 - 1 - j, size * sizeof(pixel)); \
} \
}
uint8_t
ptrdiff_t size
Definition: opengl_enc.c:101
uint8_t pixel
Definition: tiny_ssim.c:42
int
GLint GLenum GLboolean GLsizei stride
Definition: opengl_enc.c:105
#define stride
for(j=16;j >0;--j)

Definition at line 893 of file vp9dsp_template.c.

#define def_hor_down (   size)
Value:
static void hor_down_##size##x##size##_c(uint8_t *_dst, ptrdiff_t stride, \
const uint8_t *_left, const uint8_t *_top) \
{ \
pixel *dst = (pixel *) _dst; \
const pixel *top = (const pixel *) _top; \
const pixel *left = (const pixel *) _left; \
int i, j; \
pixel v[size * 3 - 2]; \
stride /= sizeof(pixel); \
for (i = 0; i < size - 2; i++) { \
v[i*2 ] = (left[i + 1] + left[i + 0] + 1) >> 1; \
v[i*2 + 1] = (left[i + 2] + left[i + 1] * 2 + left[i + 0] + 2) >> 2; \
v[size*2 + i] = (top[i - 1] + top[i] * 2 + top[i + 1] + 2) >> 2; \
} \
v[size*2 - 2] = (top[-1] + left[size - 1] + 1) >> 1; \
v[size*2 - 4] = (left[size - 1] + left[size - 2] + 1) >> 1; \
v[size*2 - 1] = (top[0] + top[-1] * 2 + left[size - 1] + 2) >> 2; \
v[size*2 - 3] = (top[-1] + left[size - 1] * 2 + left[size - 2] + 2) >> 2; \
for (j = 0; j < size; j++) \
memcpy(dst + j*stride, v + size*2 - 2 - j*2, size * sizeof(pixel)); \
}
uint8_t
ptrdiff_t size
Definition: opengl_enc.c:101
uint8_t pixel
Definition: tiny_ssim.c:42
int
GLint GLenum GLboolean GLsizei stride
Definition: opengl_enc.c:105
#define stride
for(j=16;j >0;--j)

Definition at line 950 of file vp9dsp_template.c.

#define def_vert_left (   size)
Value:
static void vert_left_##size##x##size##_c(uint8_t *_dst, ptrdiff_t stride, \
const uint8_t *left, const uint8_t *_top) \
{ \
pixel *dst = (pixel *) _dst; \
const pixel *top = (const pixel *) _top; \
int i, j; \
pixel ve[size - 1], vo[size - 1]; \
stride /= sizeof(pixel); \
for (i = 0; i < size - 2; i++) { \
ve[i] = (top[i] + top[i + 1] + 1) >> 1; \
vo[i] = (top[i] + top[i + 1] * 2 + top[i + 2] + 2) >> 2; \
} \
ve[size - 2] = (top[size - 2] + top[size - 1] + 1) >> 1; \
vo[size - 2] = (top[size - 2] + top[size - 1] * 3 + 2) >> 2; \
for (j = 0; j < size / 2; j++) { \
memcpy(dst + j*2 * stride, ve + j, (size - j - 1) * sizeof(pixel)); \
memset_bpc(dst + j*2 * stride + size - j - 1, top[size - 1], j + 1); \
memcpy(dst + (j*2 + 1) * stride, vo + j, (size - j - 1) * sizeof(pixel)); \
memset_bpc(dst + (j*2 + 1) * stride + size - j - 1, top[size - 1], j + 1); \
} \
}
uint8_t
ptrdiff_t size
Definition: opengl_enc.c:101
static void memset_bpc(uint16_t *dst, int val, int len)
uint8_t pixel
Definition: tiny_ssim.c:42
int
GLint GLenum GLboolean GLsizei stride
Definition: opengl_enc.c:105
#define stride
for(j=16;j >0;--j)

Definition at line 1000 of file vp9dsp_template.c.

#define def_hor_up (   size)
Value:
static void hor_up_##size##x##size##_c(uint8_t *_dst, ptrdiff_t stride, \
const uint8_t *_left, const uint8_t *top) \
{ \
pixel *dst = (pixel *) _dst; \
const pixel *left = (const pixel *) _left; \
int i, j; \
pixel v[size*2 - 2]; \
stride /= sizeof(pixel); \
for (i = 0; i < size - 2; i++) { \
v[i*2 ] = (left[i] + left[i + 1] + 1) >> 1; \
v[i*2 + 1] = (left[i] + left[i + 1] * 2 + left[i + 2] + 2) >> 2; \
} \
v[size*2 - 4] = (left[size - 2] + left[size - 1] + 1) >> 1; \
v[size*2 - 3] = (left[size - 2] + left[size - 1] * 3 + 2) >> 2; \
for (j = 0; j < size / 2; j++) \
memcpy(dst + j*stride, v + j*2, size * sizeof(pixel)); \
for (j = size / 2; j < size; j++) { \
memcpy(dst + j*stride, v + j*2, (size*2 - 2 - j*2) * sizeof(pixel)); \
memset_bpc(dst + j*stride + size*2 - 2 - j*2, left[size - 1], \
2 + j*2 - size); \
} \
}
uint8_t
ptrdiff_t size
Definition: opengl_enc.c:101
static void memset_bpc(uint16_t *dst, int val, int len)
uint8_t pixel
Definition: tiny_ssim.c:42
int
GLint GLenum GLboolean GLsizei stride
Definition: opengl_enc.c:105
#define stride
for(j=16;j >0;--j)

Definition at line 1046 of file vp9dsp_template.c.

#define init_intra_pred_bd_aware (   tx,
  sz 
)
Value:
dsp->intra_pred[tx][TM_VP8_PRED] = tm_##sz##_c; \
dsp->intra_pred[tx][DC_128_PRED] = dc_128_##sz##_c; \
dsp->intra_pred[tx][DC_127_PRED] = dc_127_##sz##_c; \
dsp->intra_pred[tx][DC_129_PRED] = dc_129_##sz##_c
#define init_intra_pred (   tx,
  sz 
)
Value:
dsp->intra_pred[tx][VERT_PRED] = vert_##sz##_c; \
dsp->intra_pred[tx][HOR_PRED] = hor_##sz##_c; \
dsp->intra_pred[tx][DC_PRED] = dc_##sz##_c; \
dsp->intra_pred[tx][DIAG_DOWN_LEFT_PRED] = diag_downleft_##sz##_c; \
dsp->intra_pred[tx][DIAG_DOWN_RIGHT_PRED] = diag_downright_##sz##_c; \
dsp->intra_pred[tx][VERT_RIGHT_PRED] = vert_right_##sz##_c; \
dsp->intra_pred[tx][HOR_DOWN_PRED] = hor_down_##sz##_c; \
dsp->intra_pred[tx][VERT_LEFT_PRED] = vert_left_##sz##_c; \
dsp->intra_pred[tx][HOR_UP_PRED] = hor_up_##sz##_c; \
dsp->intra_pred[tx][LEFT_DC_PRED] = dc_left_##sz##_c; \
dsp->intra_pred[tx][TOP_DC_PRED] = dc_top_##sz##_c; \
Definition: vp9.h:47
Definition: vp9.h:46
#define init_intra_pred_bd_aware(tx, sz)
Definition: vp9.h:48
#define itxfm_wrapper (   type_a,
  type_b,
  sz,
  bits,
  has_dconly 
)

Definition at line 1123 of file vp9dsp_template.c.

#define itxfm_wrap (   sz,
  bits 
)
Value:
itxfm_wrapper(idct, idct, sz, bits, 1) \
itxfm_wrapper(iadst, idct, sz, bits, 0) \
itxfm_wrapper(idct, iadst, sz, bits, 0) \
itxfm_wrapper(iadst, iadst, sz, bits, 0)
#define itxfm_wrapper(type_a, type_b, sz, bits, has_dconly)
static void idct(int16_t block[64])
Definition: 4xm.c:163

Definition at line 1162 of file vp9dsp_template.c.

#define IN (   x)    ((dctint) in[(x) * stride])
#define init_itxfm (   tx,
  sz 
)
Value:
dsp->itxfm_add[tx][DCT_DCT] = idct_idct_##sz##_add_c; \
dsp->itxfm_add[tx][DCT_ADST] = iadst_idct_##sz##_add_c; \
dsp->itxfm_add[tx][ADST_DCT] = idct_iadst_##sz##_add_c; \
dsp->itxfm_add[tx][ADST_ADST] = iadst_iadst_##sz##_add_c
Definition: vp9.h:38
Definition: vp9.h:39
Definition: vp9.h:41
Definition: vp9.h:40

Referenced by itxfm_wrapper().

#define init_idct (   tx,
  nm 
)
Value:
dsp->itxfm_add[tx][DCT_DCT] = \
dsp->itxfm_add[tx][ADST_DCT] = \
dsp->itxfm_add[tx][DCT_ADST] = \
dsp->itxfm_add[tx][ADST_ADST] = nm##_add_c
Definition: vp9.h:38
Definition: vp9.h:39
Definition: vp9.h:41
Definition: vp9.h:40

Referenced by itxfm_wrapper().

#define lf_8_fn (   dir,
  wd,
  stridea,
  strideb 
)
Value:
static void loop_filter_##dir##_##wd##_8_c(uint8_t *_dst, \
ptrdiff_t stride, \
int E, int I, int H) \
{ \
pixel *dst = (pixel *) _dst; \
stride /= sizeof(pixel); \
loop_filter(dst, E, I, H, stridea, strideb, wd); \
}
uint8_t
#define _
#define E
Definition: avdct.c:32
uint8_t pixel
Definition: tiny_ssim.c:42
GLint GLenum GLboolean GLsizei stride
Definition: opengl_enc.c:105
#define H
Definition: pixlet.c:39
static av_always_inline void loop_filter(pixel *dst, int E, int I, int H, ptrdiff_t stridea, ptrdiff_t strideb, int wd)
#define stride

Definition at line 1859 of file vp9dsp_template.c.

#define lf_8_fns (   wd)
Value:
lf_8_fn(h, wd, stride, 1) \
lf_8_fn(v, wd, 1, stride)
#define lf_8_fn(dir, wd, stridea, strideb)
GLint GLenum GLboolean GLsizei stride
Definition: opengl_enc.c:105

Definition at line 1869 of file vp9dsp_template.c.

#define lf_16_fn (   dir,
  stridea 
)
Value:
static void loop_filter_##dir##_16_16_c(uint8_t *dst, \
ptrdiff_t stride, \
int E, int I, int H) \
{ \
loop_filter_##dir##_16_8_c(dst, stride, E, I, H); \
loop_filter_##dir##_16_8_c(dst + 8 * stridea, stride, E, I, H); \
}
uint8_t
#define E
Definition: avdct.c:32
GLint GLenum GLboolean GLsizei stride
Definition: opengl_enc.c:105
#define H
Definition: pixlet.c:39
#define lf_mix_fn (   dir,
  wd1,
  wd2,
  stridea 
)
Value:
static void loop_filter_##dir##_##wd1##wd2##_16_c(uint8_t *dst, \
ptrdiff_t stride, \
int E, int I, int H) \
{ \
loop_filter_##dir##_##wd1##_8_c(dst, stride, E & 0xff, I & 0xff, H & 0xff); \
loop_filter_##dir##_##wd2##_8_c(dst + 8 * stridea, stride, E >> 8, I >> 8, H >> 8); \
}
uint8_t
#define _
#define E
Definition: avdct.c:32
GLint GLenum GLboolean GLsizei stride
Definition: opengl_enc.c:105
#define H
Definition: pixlet.c:39
#define lf_mix_fns (   wd1,
  wd2 
)
Value:
lf_mix_fn(h, wd1, wd2, stride) \
lf_mix_fn(v, wd1, wd2, sizeof(pixel))
#define lf_mix_fn(dir, wd1, wd2, stridea)
uint8_t pixel
Definition: tiny_ssim.c:42
GLint GLenum GLboolean GLsizei stride
Definition: opengl_enc.c:105
#define fpel_fn (   type,
  sz 
)
Value:
static void type##sz##_c(uint8_t *dst, ptrdiff_t dst_stride, \
const uint8_t *src, ptrdiff_t src_stride, \
int h, int mx, int my) \
{ \
type##_c(dst, dst_stride, src, src_stride, sz, h); \
}
#define src
Definition: vp8dsp.c:254
uint8_t
GLint GLenum type
Definition: opengl_enc.c:105

Definition at line 1971 of file vp9dsp_template.c.

#define copy_avg_fn (   sz)
Value:
static void copy(const float *p1, float *p2, const int length)
#define fpel_fn(type, sz)
#define avg(a, b, c, d)

Definition at line 1979 of file vp9dsp_template.c.

#define FILTER_8TAP (   src,
  x,
  F,
  stride 
)
Value:
av_clip_pixel((F[0] * src[x + -3 * stride] + \
F[1] * src[x + -2 * stride] + \
F[2] * src[x + -1 * stride] + \
F[3] * src[x + +0 * stride] + \
F[4] * src[x + +1 * stride] + \
F[5] * src[x + +2 * stride] + \
F[6] * src[x + +3 * stride] + \
F[7] * src[x + +4 * stride] + 64) >> 7)
#define src
Definition: vp8dsp.c:254
#define av_clip_pixel(a)
GLint GLenum GLboolean GLsizei stride
Definition: opengl_enc.c:105
#define F(x)

Referenced by copy_avg_fn(), do_8tap_2d_c(), and do_scaled_8tap_c().

#define filter_8tap_1d_fn (   opn,
  opa,
  dir,
  ds 
)
Value:
static av_noinline void opn##_8tap_1d_##dir##_c(uint8_t *dst, ptrdiff_t dst_stride, \
const uint8_t *src, ptrdiff_t src_stride, \
int w, int h, const int16_t *filter) \
{ \
do_8tap_1d_c(dst, dst_stride, src, src_stride, w, h, ds, filter, opa); \
}
#define src
Definition: vp8dsp.c:254
static void filter(int16_t *output, ptrdiff_t out_stride, int16_t *low, ptrdiff_t low_stride, int16_t *high, ptrdiff_t high_stride, int len, int clip)
Definition: cfhd.c:114
uint8_t
uint8_t w
Definition: llviddspenc.c:38
#define av_noinline
Definition: attributes.h:62

Definition at line 2029 of file vp9dsp_template.c.

#define filter_8tap_2d_fn (   opn,
  opa 
)
Value:
static av_noinline void opn##_8tap_2d_hv_c(uint8_t *dst, ptrdiff_t dst_stride, \
const uint8_t *src, ptrdiff_t src_stride, \
int w, int h, const int16_t *filterx, \
const int16_t *filtery) \
{ \
do_8tap_2d_c(dst, dst_stride, src, src_stride, w, h, filterx, filtery, opa); \
}
#define src
Definition: vp8dsp.c:254
uint8_t
uint8_t w
Definition: llviddspenc.c:38
static av_always_inline void do_8tap_2d_c(uint8_t *_dst, ptrdiff_t dst_stride, const uint8_t *_src, ptrdiff_t src_stride, int w, int h, const int16_t *filterx, const int16_t *filtery, int avg)
#define av_noinline
Definition: attributes.h:62

Definition at line 2083 of file vp9dsp_template.c.

#define filter_fn_1d (   sz,
  dir,
  dir_m,
  type,
  type_idx,
  avg 
)
Value:
static void avg##_8tap_##type##_##sz##dir##_c(uint8_t *dst, ptrdiff_t dst_stride, \
const uint8_t *src, ptrdiff_t src_stride, \
int h, int mx, int my) \
{ \
avg##_8tap_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, \
ff_vp9_subpel_filters[type_idx][dir_m]); \
}
#define src
Definition: vp8dsp.c:254
uint8_t
const int16_t ff_vp9_subpel_filters[3][16][8]
Definition: vp9dsp.c:28
#define _
GLint GLenum type
Definition: opengl_enc.c:105
#define avg(a, b, c, d)
#define filter_fn_2d (   sz,
  type,
  type_idx,
  avg 
)
Value:
static void avg##_8tap_##type##_##sz##hv_c(uint8_t *dst, ptrdiff_t dst_stride, \
const uint8_t *src, ptrdiff_t src_stride, \
int h, int mx, int my) \
{ \
avg##_8tap_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, \
ff_vp9_subpel_filters[type_idx][mx], \
ff_vp9_subpel_filters[type_idx][my]); \
}
#define src
Definition: vp8dsp.c:254
uint8_t
const int16_t ff_vp9_subpel_filters[3][16][8]
Definition: vp9dsp.c:28
#define _
GLint GLenum type
Definition: opengl_enc.c:105
#define avg(a, b, c, d)
#define FILTER_BILIN (   src,
  x,
  mxy,
  stride 
)    (src[x] + ((mxy * (src[x + stride] - src[x]) + 8) >> 4))
#define bilin_1d_fn (   opn,
  opa,
  dir,
  ds 
)
Value:
static av_noinline void opn##_bilin_1d_##dir##_c(uint8_t *dst, ptrdiff_t dst_stride, \
const uint8_t *src, ptrdiff_t src_stride, \
int w, int h, int mxy) \
{ \
do_bilin_1d_c(dst, dst_stride, src, src_stride, w, h, ds, mxy, opa); \
}
#define src
Definition: vp8dsp.c:254
uint8_t
uint8_t w
Definition: llviddspenc.c:38
#define av_noinline
Definition: attributes.h:62

Definition at line 2145 of file vp9dsp_template.c.

#define bilin_2d_fn (   opn,
  opa 
)
Value:
static av_noinline void opn##_bilin_2d_hv_c(uint8_t *dst, ptrdiff_t dst_stride, \
const uint8_t *src, ptrdiff_t src_stride, \
int w, int h, int mx, int my) \
{ \
do_bilin_2d_c(dst, dst_stride, src, src_stride, w, h, mx, my, opa); \
}
#define src
Definition: vp8dsp.c:254
uint8_t
static av_always_inline void do_bilin_2d_c(uint8_t *_dst, ptrdiff_t dst_stride, const uint8_t *_src, ptrdiff_t src_stride, int w, int h, int mx, int my, int avg)
uint8_t w
Definition: llviddspenc.c:38
#define av_noinline
Definition: attributes.h:62

Definition at line 2197 of file vp9dsp_template.c.

#define bilinf_fn_1d (   sz,
  dir,
  dir_m,
  avg 
)
Value:
static void avg##_bilin_##sz##dir##_c(uint8_t *dst, ptrdiff_t dst_stride, \
const uint8_t *src, ptrdiff_t src_stride, \
int h, int mx, int my) \
{ \
avg##_bilin_1d_##dir##_c(dst, dst_stride, src, src_stride, sz, h, dir_m); \
}
#define src
Definition: vp8dsp.c:254
uint8_t
#define avg(a, b, c, d)
#define bilinf_fn_2d (   sz,
  avg 
)
Value:
static void avg##_bilin_##sz##hv_c(uint8_t *dst, ptrdiff_t dst_stride, \
const uint8_t *src, ptrdiff_t src_stride, \
int h, int mx, int my) \
{ \
avg##_bilin_2d_hv_c(dst, dst_stride, src, src_stride, sz, h, mx, my); \
}
#define src
Definition: vp8dsp.c:254
uint8_t
#define avg(a, b, c, d)
#define filter_fn (   sz,
  avg 
)
Value:
filter_fn_1d(sz, h, mx, regular, FILTER_8TAP_REGULAR, avg) \
filter_fn_1d(sz, v, my, regular, FILTER_8TAP_REGULAR, avg) \
filter_fn_1d(sz, v, my, smooth, FILTER_8TAP_SMOOTH, avg) \
filter_fn_1d(sz, v, my, sharp, FILTER_8TAP_SHARP, avg) \
bilinf_fn_1d(sz, h, mx, avg) \
bilinf_fn_1d(sz, v, my, avg) \
#define bilinf_fn_2d(sz, avg)
#define filter_fn_1d(sz, dir, dir_m, type, type_idx, avg)
#define filter_fn_2d(sz, type, type_idx, avg)
#define bilinf_fn_1d(sz, dir, dir_m, avg)
#define avg(a, b, c, d)
#define filter_fn_set (   avg)
Value:
#define avg(a, b, c, d)
#define filter_fn(sz, avg)
#define init_fpel (   idx1,
  idx2,
  sz,
  type 
)
Value:
dsp->mc[idx1][FILTER_8TAP_SMOOTH ][idx2][0][0] = type##sz##_c; \
dsp->mc[idx1][FILTER_8TAP_REGULAR][idx2][0][0] = type##sz##_c; \
dsp->mc[idx1][FILTER_8TAP_SHARP ][idx2][0][0] = type##sz##_c; \
dsp->mc[idx1][FILTER_BILINEAR ][idx2][0][0] = type##sz##_c
GLint GLenum type
Definition: opengl_enc.c:105
#define init_copy_avg (   idx,
  sz 
)
Value:
init_fpel(idx, 0, sz, copy); \
init_fpel(idx, 1, sz, avg)
static void copy(const float *p1, float *p2, const int length)
#define init_fpel(idx1, idx2, sz, type)
#define avg(a, b, c, d)
#define init_subpel1_bd_aware (   idx1,
  idx2,
  idxh,
  idxv,
  sz,
  dir,
  type 
)
Value:
dsp->mc[idx1][FILTER_8TAP_SMOOTH ][idx2][idxh][idxv] = type##_8tap_smooth_##sz##dir##_c; \
dsp->mc[idx1][FILTER_8TAP_REGULAR][idx2][idxh][idxv] = type##_8tap_regular_##sz##dir##_c; \
dsp->mc[idx1][FILTER_8TAP_SHARP ][idx2][idxh][idxv] = type##_8tap_sharp_##sz##dir##_c
GLint GLenum type
Definition: opengl_enc.c:105
#define init_subpel1 (   idx1,
  idx2,
  idxh,
  idxv,
  sz,
  dir,
  type 
)
Value:
init_subpel1_bd_aware(idx1, idx2, idxh, idxv, sz, dir, type); \
dsp->mc[idx1][FILTER_BILINEAR ][idx2][idxh][idxv] = type##_bilin_##sz##dir##_c
#define init_subpel1_bd_aware(idx1, idx2, idxh, idxv, sz, dir, type)
GLint GLenum type
Definition: opengl_enc.c:105
#define init_subpel2 (   idx,
  idxh,
  idxv,
  dir,
  type 
)
Value:
init_subpel1(0, idx, idxh, idxv, 64, dir, type); \
init_subpel1(1, idx, idxh, idxv, 32, dir, type); \
init_subpel1(2, idx, idxh, idxv, 16, dir, type); \
init_subpel1(3, idx, idxh, idxv, 8, dir, type); \
init_subpel1(4, idx, idxh, idxv, 4, dir, type)
GLint GLenum type
Definition: opengl_enc.c:105
#define init_subpel1(idx1, idx2, idxh, idxv, sz, dir, type)

Referenced by ff_vp9dsp_init_x86(), and INIT_FUNC().

#define init_subpel3 (   idx,
  type 
)
Value:
init_subpel2(idx, 1, 1, hv, type); \
init_subpel2(idx, 0, 1, v, type); \
init_subpel2(idx, 1, 0, h, type)
#define init_subpel2(idx, idxh, idxv, dir, type)
GLint GLenum type
Definition: opengl_enc.c:105

Referenced by ff_vp9dsp_init_x86(), and INIT_FUNC().

#define scaled_filter_8tap_fn (   opn,
  opa 
)
Value:
static av_noinline void opn##_scaled_8tap_c(uint8_t *dst, ptrdiff_t dst_stride, \
const uint8_t *src, ptrdiff_t src_stride, \
int w, int h, int mx, int my, int dx, int dy, \
const int16_t (*filters)[8]) \
{ \
do_scaled_8tap_c(dst, dst_stride, src, src_stride, w, h, mx, my, dx, dy, \
opa, filters); \
}
#define src
Definition: vp8dsp.c:254
uint8_t
static av_always_inline void do_scaled_8tap_c(uint8_t *_dst, ptrdiff_t dst_stride, const uint8_t *_src, ptrdiff_t src_stride, int w, int h, int mx, int my, int dx, int dy, int avg, const int16_t(*filters)[8])
uint8_t w
Definition: llviddspenc.c:38
static const struct PPFilter filters[]
Definition: postprocess.c:134
#define av_noinline
Definition: attributes.h:62

Definition at line 2379 of file vp9dsp_template.c.

#define scaled_filter_fn (   sz,
  type,
  type_idx,
  avg 
)
Value:
static void avg##_scaled_##type##_##sz##_c(uint8_t *dst, ptrdiff_t dst_stride, \
const uint8_t *src, ptrdiff_t src_stride, \
int h, int mx, int my, int dx, int dy) \
{ \
avg##_scaled_8tap_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy, \
ff_vp9_subpel_filters[type_idx]); \
}
#define src
Definition: vp8dsp.c:254
uint8_t
const int16_t ff_vp9_subpel_filters[3][16][8]
Definition: vp9dsp.c:28
#define _
GLint GLenum type
Definition: opengl_enc.c:105
#define avg(a, b, c, d)
#define scaled_bilin_fn (   opn,
  opa 
)
Value:
static av_noinline void opn##_scaled_bilin_c(uint8_t *dst, ptrdiff_t dst_stride, \
const uint8_t *src, ptrdiff_t src_stride, \
int w, int h, int mx, int my, int dx, int dy) \
{ \
do_scaled_bilin_c(dst, dst_stride, src, src_stride, w, h, mx, my, dx, dy, opa); \
}
#define src
Definition: vp8dsp.c:254
uint8_t
uint8_t w
Definition: llviddspenc.c:38
#define av_noinline
Definition: attributes.h:62

Definition at line 2452 of file vp9dsp_template.c.

#define scaled_bilinf_fn (   sz,
  avg 
)
Value:
static void avg##_scaled_bilin_##sz##_c(uint8_t *dst, ptrdiff_t dst_stride, \
const uint8_t *src, ptrdiff_t src_stride, \
int h, int mx, int my, int dx, int dy) \
{ \
avg##_scaled_bilin_c(dst, dst_stride, src, src_stride, sz, h, mx, my, dx, dy); \
}
#define src
Definition: vp8dsp.c:254
uint8_t
#define avg(a, b, c, d)
#define scaled_filter_fns (   sz,
  avg 
)
Value:
#define scaled_filter_fn(sz, type, type_idx, avg)
#define scaled_bilinf_fn(sz, avg)
#define avg(a, b, c, d)
#define scaled_filter_fn_set (   avg)
Value:
#define scaled_filter_fns(sz, avg)
#define avg(a, b, c, d)
#define init_scaled_bd_aware (   idx1,
  idx2,
  sz,
  type 
)
Value:
dsp->smc[idx1][FILTER_8TAP_SMOOTH ][idx2] = type##_scaled_smooth_##sz##_c; \
dsp->smc[idx1][FILTER_8TAP_REGULAR][idx2] = type##_scaled_regular_##sz##_c; \
dsp->smc[idx1][FILTER_8TAP_SHARP ][idx2] = type##_scaled_sharp_##sz##_c
GLint GLenum type
Definition: opengl_enc.c:105
#define init_scaled (   idx1,
  idx2,
  sz,
  type 
)
Value:
init_scaled_bd_aware(idx1, idx2, sz, type); \
dsp->smc[idx1][FILTER_BILINEAR ][idx2] = type##_scaled_bilin_##sz##_c
GLint GLenum type
Definition: opengl_enc.c:105
#define init_scaled_bd_aware(idx1, idx2, sz, type)
#define init_scaled_put_avg (   idx,
  sz 
)
Value:
init_scaled(idx, 0, sz, put); \
init_scaled(idx, 1, sz, avg)
#define init_scaled(idx1, idx2, sz, type)
#define avg(a, b, c, d)

Function Documentation

static void vert_4x4_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t left,
const uint8_t _top 
)
static

Definition at line 33 of file vp9dsp_template.c.

static void vert_8x8_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t left,
const uint8_t _top 
)
static

Definition at line 47 of file vp9dsp_template.c.

static void vert_16x16_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t left,
const uint8_t _top 
)
static

Definition at line 64 of file vp9dsp_template.c.

static void vert_32x32_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t left,
const uint8_t _top 
)
static

Definition at line 85 of file vp9dsp_template.c.

static void hor_4x4_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t _left,
const uint8_t top 
)
static

Definition at line 114 of file vp9dsp_template.c.

static void hor_8x8_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t _left,
const uint8_t top 
)
static

Definition at line 127 of file vp9dsp_template.c.

static void hor_16x16_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t _left,
const uint8_t top 
)
static

Definition at line 144 of file vp9dsp_template.c.

static void hor_32x32_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t _left,
const uint8_t top 
)
static

Definition at line 163 of file vp9dsp_template.c.

static void tm_4x4_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t _left,
const uint8_t _top 
)
static

Definition at line 188 of file vp9dsp_template.c.

static void tm_8x8_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t _left,
const uint8_t _top 
)
static

Definition at line 208 of file vp9dsp_template.c.

static void tm_16x16_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t _left,
const uint8_t _top 
)
static

Definition at line 232 of file vp9dsp_template.c.

static void tm_32x32_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t _left,
const uint8_t _top 
)
static

Definition at line 264 of file vp9dsp_template.c.

static void dc_4x4_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t _left,
const uint8_t _top 
)
static

Definition at line 314 of file vp9dsp_template.c.

static void dc_8x8_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t _left,
const uint8_t _top 
)
static

Definition at line 330 of file vp9dsp_template.c.

static void dc_16x16_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t _left,
const uint8_t _top 
)
static

Definition at line 350 of file vp9dsp_template.c.

static void dc_32x32_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t _left,
const uint8_t _top 
)
static

Definition at line 374 of file vp9dsp_template.c.

static void dc_left_4x4_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t _left,
const uint8_t top 
)
static

Definition at line 407 of file vp9dsp_template.c.

static void dc_left_8x8_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t _left,
const uint8_t top 
)
static

Definition at line 421 of file vp9dsp_template.c.

static void dc_left_16x16_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t _left,
const uint8_t top 
)
static

Definition at line 439 of file vp9dsp_template.c.

static void dc_left_32x32_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t _left,
const uint8_t top 
)
static

Definition at line 460 of file vp9dsp_template.c.

static void dc_top_4x4_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t left,
const uint8_t _top 
)
static

Definition at line 488 of file vp9dsp_template.c.

static void dc_top_8x8_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t left,
const uint8_t _top 
)
static

Definition at line 502 of file vp9dsp_template.c.

static void dc_top_16x16_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t left,
const uint8_t _top 
)
static

Definition at line 520 of file vp9dsp_template.c.

static void dc_top_32x32_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t left,
const uint8_t _top 
)
static

Definition at line 541 of file vp9dsp_template.c.

static void dc_128_4x4_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t left,
const uint8_t top 
)
static

Definition at line 571 of file vp9dsp_template.c.

static void dc_128_8x8_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t left,
const uint8_t top 
)
static

Definition at line 584 of file vp9dsp_template.c.

static void dc_128_16x16_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t left,
const uint8_t top 
)
static

Definition at line 599 of file vp9dsp_template.c.

static void dc_128_32x32_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t left,
const uint8_t top 
)
static

Definition at line 616 of file vp9dsp_template.c.

static void dc_127_4x4_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t left,
const uint8_t top 
)
static

Definition at line 637 of file vp9dsp_template.c.

static void dc_127_8x8_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t left,
const uint8_t top 
)
static

Definition at line 649 of file vp9dsp_template.c.

static void dc_127_16x16_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t left,
const uint8_t top 
)
static

Definition at line 664 of file vp9dsp_template.c.

static void dc_127_32x32_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t left,
const uint8_t top 
)
static

Definition at line 681 of file vp9dsp_template.c.

static void dc_129_4x4_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t left,
const uint8_t top 
)
static

Definition at line 702 of file vp9dsp_template.c.

static void dc_129_8x8_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t left,
const uint8_t top 
)
static

Definition at line 715 of file vp9dsp_template.c.

static void dc_129_16x16_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t left,
const uint8_t top 
)
static

Definition at line 730 of file vp9dsp_template.c.

static void dc_129_32x32_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t left,
const uint8_t top 
)
static

Definition at line 747 of file vp9dsp_template.c.

static void memset_bpc ( uint16_t *  dst,
int  val,
int  len 
)
inlinestatic

Definition at line 773 of file vp9dsp_template.c.

static void diag_downleft_4x4_c ( uint8_t _dst,
ptrdiff_t  stride,
const uint8_t left,
const uint8_t _top 
)
static

Definition at line 783 of file vp9dsp_template.c.

def_diag_downleft ( )

Definition at line 821 of file vp9dsp_template.c.

def_diag_downright ( )

Definition at line 867 of file vp9dsp_template.c.

def_vert_right ( )

Definition at line 924 of file vp9dsp_template.c.

def_hor_down ( )

Definition at line 975 of file vp9dsp_template.c.

def_vert_left ( )

Definition at line 1025 of file vp9dsp_template.c.

def_hor_up ( )

Definition at line 1072 of file vp9dsp_template.c.

static av_always_inline void idct4_1d ( const dctcoef in,
ptrdiff_t  stride,
dctcoef out,
int  pass 
)
static

Definition at line 1170 of file vp9dsp_template.c.

static av_always_inline void iadst4_1d ( const dctcoef in,
ptrdiff_t  stride,
dctcoef out,
int  pass 
)
static

Definition at line 1186 of file vp9dsp_template.c.

itxfm_wrap ( ,
 
)

Definition at line 1202 of file vp9dsp_template.c.

static av_always_inline void iadst8_1d ( const dctcoef in,
ptrdiff_t  stride,
dctcoef out,
int  pass 
)
static

Definition at line 1240 of file vp9dsp_template.c.

itxfm_wrap ( ,
 
)

Definition at line 1284 of file vp9dsp_template.c.

static av_always_inline void iadst16_1d ( const dctcoef in,
ptrdiff_t  stride,
dctcoef out,
int  pass 
)
static

Definition at line 1374 of file vp9dsp_template.c.

itxfm_wrap ( 16  ,
 
)

Definition at line 1477 of file vp9dsp_template.c.

itxfm_wrapper ( idct  ,
idct  ,
32  ,
,
 
)

Definition at line 1685 of file vp9dsp_template.c.

itxfm_wrapper ( iwht  ,
iwht  ,
,
,
 
)

Definition at line 1718 of file vp9dsp_template.c.

static av_always_inline void loop_filter ( pixel dst,
int  E,
int  I,
int  H,
ptrdiff_t  stridea,
ptrdiff_t  strideb,
int  wd 
)
static

Definition at line 1748 of file vp9dsp_template.c.

lf_8_fns ( )

Definition at line 1873 of file vp9dsp_template.c.

static av_always_inline void copy_c ( uint8_t dst,
ptrdiff_t  dst_stride,
const uint8_t src,
ptrdiff_t  src_stride,
int  w,
int  h 
)
static

Definition at line 1939 of file vp9dsp_template.c.

static av_always_inline void avg_c ( uint8_t _dst,
ptrdiff_t  dst_stride,
const uint8_t _src,
ptrdiff_t  src_stride,
int  w,
int  h 
)
static

Definition at line 1951 of file vp9dsp_template.c.

copy_avg_fn ( 64  )

Definition at line 1983 of file vp9dsp_template.c.

filter_8tap_1d_fn ( put  ,
,
,
src_stride/  sizeofpixel 
)
filter_8tap_1d_fn ( avg  ,
,
,
src_stride/  sizeofpixel 
)
static av_always_inline void do_8tap_2d_c ( uint8_t _dst,
ptrdiff_t  dst_stride,
const uint8_t _src,
ptrdiff_t  src_stride,
int  w,
int  h,
const int16_t *  filterx,
const int16_t *  filtery,
int  avg 
)
static

Definition at line 2044 of file vp9dsp_template.c.

filter_8tap_2d_fn ( put  ,
 
)

Definition at line 2092 of file vp9dsp_template.c.

bilin_1d_fn ( put  ,
,
,
src_stride/  sizeofpixel 
)
bilin_1d_fn ( avg  ,
,
,
src_stride/  sizeofpixel 
)
static av_always_inline void do_bilin_2d_c ( uint8_t _dst,
ptrdiff_t  dst_stride,
const uint8_t _src,
ptrdiff_t  src_stride,
int  w,
int  h,
int  mx,
int  my,
int  avg 
)
static

Definition at line 2160 of file vp9dsp_template.c.

bilin_2d_fn ( put  ,
 
)

Definition at line 2205 of file vp9dsp_template.c.

static av_always_inline void do_scaled_8tap_c ( uint8_t _dst,
ptrdiff_t  dst_stride,
const uint8_t _src,
ptrdiff_t  src_stride,
int  w,
int  h,
int  mx,
int  my,
int  dx,
int  dy,
int  avg,
const int16_t(*)  filters[8] 
)
static

Definition at line 2331 of file vp9dsp_template.c.

scaled_filter_8tap_fn ( put  ,
 
)

Definition at line 2389 of file vp9dsp_template.c.

scaled_bilin_fn ( put  ,
 
)

Definition at line 2460 of file vp9dsp_template.c.

av_cold void FUNC() ff_vp9dsp_init ( VP9DSPContext dsp)

Definition at line 2539 of file vp9dsp_template.c.

Variable Documentation

h

Definition at line 2038 of file vp9dsp_template.c.

Referenced by acalc_magnitudes(), alloc_buffers(), alloc_frame(), alloc_frame_empty(), alloc_scratch_buffers(), alloc_sequence_buffers(), analyze_plane(), apply_lut(), apply_palette(), async_buffer_task(), async_check_interrupt(), av_image_copy_to_buffer(), av_image_fill_pointers(), av_opt_is_set_to_default(), av_vdpau_get_surface_parameters(), avg_h264_qpel8_v_lowpass_mmi(), avg_h264_qpel8or16_hv2_lowpass_mmi(), avg_no_rnd_vc1_chroma_mc4_c(), avg_no_rnd_vc1_chroma_mc8_c(), avio_check(), avio_close(), avio_close_dir(), avio_open_dir(), avio_read_dir(), avpriv_h264_has_num_reorder_frames(), avpriv_io_delete(), blend_pixel(), blend_pixel16(), blur(), calc_channel_magnitudes(), calc_channel_phases(), calc_persp_luts(), calculate_skip_errors(), cavs_decode_frame(), cavs_flush(), cdg_copy_rect_buf(), cdg_fill_rect_preset(), cdxl_decode_frame(), check_bidir_mv(), check_header(), check_idct(), check_idct_multiple(), check_mc(), check_multiply3x3(), check_rgb2yuv(), check_threshold(), check_yuv2rgb(), check_yuv2yuv(), checkasm_check_blockdsp(), checkasm_check_bswapdsp(), checkasm_check_exrdsp(), checkasm_check_flacdsp(), checkasm_check_g722dsp(), checkasm_check_h264pred(), checkasm_check_h264qpel(), checkasm_check_hevc_add_res(), checkasm_check_hevc_idct(), checkasm_check_hevc_sao(), checkasm_check_jpeg2000dsp(), checkasm_check_pixblockdsp(), checkasm_check_utvideodsp(), checkasm_check_v210enc(), choose_rct_params(), clearTable(), clv_decode_init(), cmp_inline(), color_correlation(), color_correlation_gbrp(), color_decorrelation(), color_decorrelation_gbrp(), color_mix(), commit_bitstream_and_slice_buffer(), compose2D(), compute_default_clut(), compute_histogram16(), compute_histogram8(), compute_safe_ssd_integral_image_c(), compute_unsafe_ssd_integral_image(), config_input(), config_input_main(), config_output(), config_props(), convert(), convert_mask_to_strength_mask(), convert_timestamp(), convolution_x(), copy_block16(), copy_block16_mmi(), copy_block17(), copy_block2(), copy_block4(), copy_block8(), copy_block9(), copy_cell(), copy_CTB_to_hv(), copy_picture_field(), correlate(), cover_rect(), create_clusters(), cudascale_config_props(), d3d11va_transfer_data(), dc_test(), dca_parse_params(), deband_16_c(), deband_16_coupling_c(), deband_8_c(), deband_8_coupling_c(), deblocking_filter_CTB(), decode_blocks(), decode_dvd_subtitles(), decode_entropy_coded_image(), decode_frame(), decode_frame_header(), decode_hextile(), decode_init(), decode_init_static(), decode_long_vertical_delta(), decode_long_vertical_delta2(), decode_mvc2(), decode_nal_sei_pic_timing(), decode_p_block(), decode_plane(), decode_rgb_frame_TMPL(), decode_rle(), decode_sequence_header_adv(), decode_subband_slice_buffered(), decompose2D(), deflicker16(), deflicker8(), deinterleaveBytes_c(), denoise_depth(), denoise_spatial(), denoise_temporal(), dequantize(), diff_pixels_mvi(), dirac_decode_frame_internal(), displace_packed(), displace_planar(), display_integral(), djb2_hash(), dnxhd_probe(), do_convolve(), doTest(), double_threshold(), dpx_probe(), draw_axis_rgb(), draw_axis_yuv(), draw_background(), draw_dc(), draw_edges_8_c(), draw_frame(), draw_mandelbrot(), draw_sample_cline_gray(), draw_sample_cline_rgba_full(), draw_sample_cline_rgba_scale(), draw_sample_p2p_gray(), draw_sample_p2p_rgba_full(), draw_sample_p2p_rgba_scale(), draw_slice(), draw_sono(), dss_read_metadata_date(), dts_probe(), dvb_encode_rle2(), dvb_encode_rle4(), dvb_encode_rle8(), dvd_encode_rle(), dvdsub_parse_extradata(), dwt_decode97_int(), dwt_encode97_int(), dxa_probe(), dxa_read_header(), dxtory_decode_v1_410(), dxtory_decode_v1_420(), dxtory_decode_v1_444(), dxtory_decode_v1_rgb(), dxva2_h264_decode_slice(), dxva2_h264_end_frame(), dxva2_h264_start_frame(), dxva2_hevc_decode_slice(), dxva2_hevc_end_frame(), dxva2_hevc_start_frame(), dxva2_vp9_decode_slice(), dxva2_vp9_end_frame(), dxva2_vp9_start_frame(), encode_block(), encode_blocks(), encode_close(), encode_dvb_subtitles(), encode_frame(), encode_init(), encode_mode(), encode_plane(), encode_q_branch(), encode_rgb_frame_TMPL(), encode_subband_c0run(), encode_thread(), epzs_motion_search2(), epzs_motion_search4(), extend_edges(), ff_alsa_open(), ff_avg_h264_chroma_mc4_mmi(), ff_avg_h264_chroma_mc8_mmi(), ff_avg_pixels4_xy2_8_mmi(), ff_avg_pixels8_xy2_8_mmi(), ff_bgmc_decode(), ff_blend_rectangle(), ff_calculate_bounding_box(), ff_cavs_end(), ff_cavs_init(), ff_emulated_edge_mc(), ff_fill_block16_mmi(), ff_fill_block8_mmi(), ff_frame_pool_video_init(), ff_gmc_c(), ff_h261_encode_mb(), ff_h261_encode_picture_header(), ff_h261_loop_filter(), ff_h263_decode_frame(), ff_h264_slice_context_init(), ff_h264_update_thread_context(), ff_huff_gen_len_table(), ff_jpeg2000_tag_tree_init(), ff_libwebp_get_frame(), ff_mjpeg_decode_frame(), ff_mjpeg_decode_sos(), ff_mpv_encode_picture(), ff_pca(), ff_pnm_decode_header(), ff_put_h264_chroma_mc4_mmi(), ff_put_h264_chroma_mc8_mmi(), ff_put_no_rnd_pixels8_xy2_8_mmi(), ff_put_pixels16_8_mmi(), ff_put_pixels16_l2_8_mmi(), ff_put_pixels4_8_mmi(), ff_put_pixels4_l2_8_mmi(), ff_put_pixels4_xy2_8_mmi(), ff_put_pixels8_l2_8_mmi(), ff_put_pixels8_xy2_8_mmi(), ff_put_vp8_bilinear16_h_mmi(), ff_put_vp8_bilinear16_hv_mmi(), ff_put_vp8_bilinear16_v_mmi(), ff_put_vp8_bilinear4_h_mmi(), ff_put_vp8_bilinear4_hv_mmi(), ff_put_vp8_bilinear4_v_mmi(), ff_put_vp8_bilinear8_h_mmi(), ff_put_vp8_bilinear8_hv_mmi(), ff_put_vp8_bilinear8_v_mmi(), 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(), ff_put_vp8_epel8_v6_mmi(), ff_put_vp8_pixels16_mmi(), ff_put_vp8_pixels4_mmi(), ff_put_vp8_pixels8_mmi(), ff_rm_parse_packet(), ff_rtjpeg_decode_frame_yuv420(), ff_rtp_send_jpeg(), ff_rtp_send_mpegvideo(), ff_scale_eval_dimensions(), ff_snow_alloc_blocks(), ff_snow_common_init_after_header(), ff_vc1_decode_entry_point(), ff_vc1_decode_sequence_header(), ff_videotoolbox_avcc_extradata_create(), ff_videotoolbox_h264_decode_slice(), ff_videotoolbox_h264_start_frame(), ff_videotoolbox_hvcc_extradata_create(), ff_vmafmotion_init(), ff_vp9_decode_block(), ff_vp9dsp_init_16bpp_x86(), ff_vp9dsp_init_x86(), ff_xface_generate_face(), ffio_fdopen(), ffio_open_whitelist(), ffmal_copy_frame(), fill_block16_c(), fill_block8_c(), fill_buf(), fill_in_tongue(), fill_loopfilter_buffers(), fill_rectangle(), fill_slice_long(), filter(), filter16_brng(), filter16_tout(), filter16_vrep(), filter8_brng(), filter8_tout(), filter8_vrep(), filter_frame(), filter_slice(), filter_slice16(), filter_slice8(), find_smallest_bounding_rectangle(), findCode(), fraps2_decode_plane(), g2m_paint_cursor(), gammafilter(), gbr16ptopacked16(), gbr24ptopacked24(), gbr24ptopacked32(), gen_image(), get_histogram(), get_input(), get_intra_count(), get_pixels_mvi(), get_stats(), get_video_buffer(), getpix(), getsigctxno(), getSSD(), gmc1_c(), gnutls_url_pull(), gnutls_url_push(), guess_dc(), h261_decode_end(), h261_decode_frame(), h261_decode_init(), h261_encode_gob_header(), h263_mv4_search(), h264_decode_end(), h264_decode_init(), h264_er_decode_mb(), h264_slice_header_init(), h_block_filter(), hadamard_func(), halfpel_interpol(), hblur(), hl_decode_mb(), hl_decode_mb_444(), hl_motion(), hpel_motion_lowres(), hqa_decode_slice(), hysteresis16(), hysteresis8(), idcin_probe(), image_copy(), image_copy_16_to_8(), image_sad(), ingenient_read_packet(), init(), init_decoder(), init_demo(), init_pattern_from_file(), init_planes(), insert_ts(), interlaced_search(), interleaveBytes_c(), interleaveBytes_TMPL(), interpolate(), irdft_horizontal16(), irdft_horizontal8(), irdft_vertical(), kmvc_decode_inter_8x8(), kmvc_decode_intra_8x8(), limiter16(), limiter8(), ljpeg_decode_yuv_scan(), ljpeg_encode_yuv_mb(), load_input_picture(), m4sl_cb(), MAC64(), main(), maskedclamp16(), maskedclamp8(), maskedmerge16(), maskedmerge8(), matroska_parse_rm_audio(), mcdc(), mjpeg_decode_scan(), mjpeg_idct_scan_progressive_ac(), MLS64(), mp3_read_probe(), mp3_write_audio_packet(), mp3lame_encode_frame(), mp_read_changes_map(), mpeg4_decode_sprite_trajectory(), mpeg_decode_sequence_display_extension(), mpeg_motion_internal(), mpeg_motion_lowres(), mpeg_parse_packet(), mss2_decode_frame(), multiply3x3_c(), nlmeans_plane(), nppscale_config_props(), nsse16_c(), nsse8_c(), nvdec_h264_decode_slice(), nvdec_h264_frame_params(), nvdec_h264_start_frame(), nvdec_vp8_start_frame(), nvdec_vp9_start_frame(), ogm_chapter(), output_single_frame(), packed16togbra16(), packedtogbr24p(), paint_raw(), paint_rect(), pam_encode_frame(), parse_frame_header(), parse_presentation_segment(), pat_cb(), pcx_decode_frame(), pick_palette_entry(), pix_abs16_c(), pix_abs16_x2_c(), pix_abs16_xy2_c(), pix_abs16_y2_c(), pix_abs8_c(), pix_abs8_x2_c(), pix_abs8_xy2_c(), pix_abs8_y2_c(), pix_median_abs16_c(), pix_median_abs8_c(), pix_sum(), pixels16_x2(), pixels8_x2(), pixels8_xy2(), pixels8_y2(), pixlet_decode_frame(), pixscope_filter_frame(), plot_channel(), pmt_cb(), pnm_decode_frame(), pnm_encode_frame(), postprocess_chroma(), postprocess_luma(), predict_slice(), predict_slice_buffered(), premultiply16(), premultiply16offset(), premultiply16yuv(), premultiply8(), premultiply8offset(), premultiply8yuv(), print_ctl_info(), probe(), process_c(), process_cqt(), process_frame_obj(), ptx_decode_frame(), pulse_audio_sink_input_cb(), pulse_event(), pulse_overflow(), pulse_stream_writable(), pulse_underflow(), push_single_pic(), put_cursor(), put_h264_qpel8_h_lowpass_l2_mmi(), put_h264_qpel8_v_lowpass_mmi(), put_h264_qpel8or16_hv2_lowpass_mmi(), put_no_rnd_pixels_l2(), put_no_rnd_vc1_chroma_mc4_c(), put_no_rnd_vc1_chroma_mc8_c(), qsvscale_config_props(), quantize(), ratecontrol_1pass(), rd_frame(), rdft_horizontal16(), rdft_horizontal8(), rdft_vertical(), realloc_texture(), request_frame(), resample_cubic(), resample_linear(), rescale(), rgb2yuv(), rgb2yuv_fsb(), rgb48Toxyz12(), ripemd128_transform(), ripemd160_transform(), ripemd256_transform(), ripemd320_transform(), rm_read_dts(), rv30_parse_slice_header(), rv40_parse_slice_header(), s302m_parse_frame_header(), sao_filter_CTB(), scale_magnitudes(), scc_write_packet(), sdt_cb(), selfTest(), set_control(), set_default_ctl_value(), set_frame(), set_sps(), sha256_transform(), sha512_transform(), smka_decode_frame(), smv_img_pnt(), soft_thresholding(), softfloat_mul(), sse(), sse16_c(), sse4_c(), sse8_c(), sse_mb(), stereo_processing(), sub2video_prepare(), submit_stats(), sunrast_decode_frame(), synth_window(), targa_encode_normal(), targa_encode_rle(), tdsc_decode_tiles(), tdsc_paint_cursor(), tdsc_parse_tdsf(), test_stereo_interpolate(), threshold16(), threshold8(), tls_read_callback(), tls_read_cb(), tls_write_callback(), tls_write_cb(), tm2_decode_blocks(), tqi_decode_frame(), transform_step(), transpose_block_16_c(), transpose_block_24_c(), transpose_block_32_c(), transpose_block_48_c(), transpose_block_64_c(), transpose_block_8_c(), txd_decode_frame(), unpack_coeffs(), unpremultiply16(), unpremultiply16offset(), unpremultiply16yuv(), unpremultiply8(), unpremultiply8offset(), unpremultiply8yuv(), update_canvas_size(), update_frame_pool(), update_size(), url_bio_bread(), url_bio_bwrite(), urlcontext_child_next(), urlcontext_to_name(), vaapi_h264_decode_slice(), vaapi_h264_end_frame(), vaapi_h264_start_frame(), vaapi_hevc_decode_slice(), vaapi_hevc_end_frame(), vaapi_hevc_start_frame(), vaapi_vp9_decode_slice(), vaapi_vp9_end_frame(), vaapi_vp9_start_frame(), vc2_encode_init(), vdpau_h264_decode_slice(), vdpau_h264_end_frame(), vdpau_h264_set_reference_frames(), vdpau_h264_start_frame(), vdpau_hevc_decode_slice(), vdpau_hevc_end_frame(), vdpau_hevc_start_frame(), vectorscope16(), vectorscope8(), verify_md5(), video_audio_display(), video_frame_cksum(), video_open(), videotoolbox_h264_decode_params(), vmd_probe(), vp3_draw_horiz_band(), vp8_lossless_decode_frame(), vp9_handle_packet(), vu9_to_vu12_c(), vu9_to_vu12_TMPL(), w_c(), wdec14(), wdec16(), win32thread_worker(), wmv2_mspel8_h_lowpass(), wrapped_url_read(), write_root_table(), xcbgrab_reposition(), xsub_encode_rle(), xyz12Torgb48(), yae_reset(), yuv2rgb(), yuv2yuv(), yvu9_to_yuy2_c(), and yvu9_to_yuy2_TMPL().