25#ifndef AVCODEC_HEVC_DSP_H
26#define AVCODEC_HEVC_DSP_H
53 void (*
dequant)(int16_t *coeffs , int16_t log2_size);
59 void (*
idct[4])(int16_t *coeffs,
int col_limit);
64 const int16_t *sao_offset_val,
int sao_left_class,
int width,
int height);
68 const int16_t *sao_offset_val,
int sao_eo_class,
int width,
int height);
71 const struct SAOParams *sao,
const int *borders,
int _width,
int _height,
int c_idx,
72 const uint8_t *vert_edge,
const uint8_t *horiz_edge,
const uint8_t *diag_edge);
79 int height,
int denom,
int wx,
int ox, intptr_t
mx, intptr_t
my,
int width);
86 int height,
int denom,
int wx0,
int wx1,
87 int ox, intptr_t
mx, intptr_t
my,
int width);
94 int height,
int denom,
int wx,
int ox, intptr_t
mx, intptr_t
my,
int width);
100 int height,
int denom,
int wx0,
int wx1,
int ox,
105 const uint8_t *no_p,
const uint8_t *no_q);
108 const uint8_t *no_p,
const uint8_t *no_q);
110 const int32_t *tc,
const uint8_t *no_p,
const uint8_t *no_q);
112 const int32_t *tc,
const uint8_t *no_p,
const uint8_t *no_q);
115 const uint8_t *no_p,
const uint8_t *no_q);
118 const uint8_t *no_p,
const uint8_t *no_q);
120 const int32_t *tc,
const uint8_t *no_p,
121 const uint8_t *no_q);
123 const int32_t *tc,
const uint8_t *no_p,
124 const uint8_t *no_q);
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t int int16_t const uint8_t ptrdiff_t srcstride
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t my
uint8_t ptrdiff_t _dststride
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t mx
uint8_t ptrdiff_t const uint8_t ptrdiff_t _srcstride
uint8_t ptrdiff_t const uint8_t * _src
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t int int16_t * dst
static void bit_depth(AudioStatsContext *s, const uint64_t *const mask, uint8_t *depth)
bitstream reader API header.
const int8_t ff_hevc_epel_filters[8][4]
ff_hevc_.pel_filters[0] are dummies to simplify array addressing
const int8_t ff_hevc_qpel_filters[4][16]
void ff_hevc_dsp_init_riscv(HEVCDSPContext *c, const int bit_depth)
void ff_hevc_dsp_init_mips(HEVCDSPContext *c, const int bit_depth)
void ff_hevc_dsp_init_aarch64(HEVCDSPContext *c, const int bit_depth)
void ff_hevc_dsp_init_ppc(HEVCDSPContext *c, const int bit_depth)
void ff_hevc_dsp_init_x86(HEVCDSPContext *c, const int bit_depth)
void ff_hevc_dsp_init_arm(HEVCDSPContext *c, const int bit_depth)
void ff_hevc_dsp_init_wasm(HEVCDSPContext *c, const int bit_depth)
void ff_hevc_dsp_init(HEVCDSPContext *hpc, int bit_depth)
void ff_hevc_dsp_init_loongarch(HEVCDSPContext *c, const int bit_depth)
void(* put_hevc_epel_bi_w[10][2][2])(uint8_t *dst, ptrdiff_t dststride, const uint8_t *_src, ptrdiff_t _srcstride, const int16_t *src2, int height, int denom, int wx0, int wx1, int ox, intptr_t mx, intptr_t my, int width)
void(* put_hevc_epel_bi[10][2][2])(uint8_t *dst, ptrdiff_t dststride, const uint8_t *_src, ptrdiff_t _srcstride, const int16_t *src2, int height, intptr_t mx, intptr_t my, int width)
void(* hevc_v_loop_filter_luma)(uint8_t *pix, ptrdiff_t stride, int beta, const int32_t *tc, const uint8_t *no_p, const uint8_t *no_q)
void(* put_hevc_epel[10][2][2])(int16_t *dst, const uint8_t *src, ptrdiff_t srcstride, int height, intptr_t mx, intptr_t my, int width)
void(* sao_band_filter[5])(uint8_t *_dst, const uint8_t *_src, ptrdiff_t _stride_dst, ptrdiff_t _stride_src, const int16_t *sao_offset_val, int sao_left_class, int width, int height)
void(* transform_rdpcm)(int16_t *coeffs, int16_t log2_size, int mode)
void(* hevc_h_loop_filter_chroma_c)(uint8_t *pix, ptrdiff_t stride, const int32_t *tc, const uint8_t *no_p, const uint8_t *no_q)
void(* transform_4x4_luma)(int16_t *coeffs)
void(* sao_edge_restore[2])(uint8_t *_dst, const uint8_t *_src, ptrdiff_t _stride_dst, ptrdiff_t _stride_src, const struct SAOParams *sao, const int *borders, int _width, int _height, int c_idx, const uint8_t *vert_edge, const uint8_t *horiz_edge, const uint8_t *diag_edge)
void(* put_hevc_qpel_uni[10][2][2])(uint8_t *dst, ptrdiff_t dststride, const uint8_t *src, ptrdiff_t srcstride, int height, intptr_t mx, intptr_t my, int width)
void(* hevc_h_loop_filter_luma_c)(uint8_t *pix, ptrdiff_t stride, int beta, const int32_t *tc, const uint8_t *no_p, const uint8_t *no_q)
void(* idct[4])(int16_t *coeffs, int col_limit)
void(* put_hevc_epel_uni[10][2][2])(uint8_t *dst, ptrdiff_t dststride, const uint8_t *_src, ptrdiff_t _srcstride, int height, intptr_t mx, intptr_t my, int width)
void(* put_hevc_qpel_uni_w[10][2][2])(uint8_t *_dst, ptrdiff_t _dststride, const uint8_t *_src, ptrdiff_t _srcstride, int height, int denom, int wx, int ox, intptr_t mx, intptr_t my, int width)
void(* put_pcm)(uint8_t *_dst, ptrdiff_t _stride, int width, int height, struct GetBitContext *gb, int pcm_bit_depth)
void(* add_residual[4])(uint8_t *dst, const int16_t *res, ptrdiff_t stride)
void(* idct_dc[4])(int16_t *coeffs)
void(* put_hevc_qpel_bi_w[10][2][2])(uint8_t *dst, ptrdiff_t dststride, const uint8_t *_src, ptrdiff_t _srcstride, const int16_t *src2, int height, int denom, int wx0, int wx1, int ox, intptr_t mx, intptr_t my, int width)
void(* sao_edge_filter[5])(uint8_t *_dst, const uint8_t *_src, ptrdiff_t stride_dst, const int16_t *sao_offset_val, int sao_eo_class, int width, int height)
void(* hevc_v_loop_filter_chroma)(uint8_t *pix, ptrdiff_t stride, const int32_t *tc, const uint8_t *no_p, const uint8_t *no_q)
void(* hevc_h_loop_filter_luma)(uint8_t *pix, ptrdiff_t stride, int beta, const int32_t *tc, const uint8_t *no_p, const uint8_t *no_q)
void(* hevc_h_loop_filter_chroma)(uint8_t *pix, ptrdiff_t stride, const int32_t *tc, const uint8_t *no_p, const uint8_t *no_q)
void(* put_hevc_epel_uni_w[10][2][2])(uint8_t *_dst, ptrdiff_t _dststride, const uint8_t *_src, ptrdiff_t _srcstride, int height, int denom, int wx, int ox, intptr_t mx, intptr_t my, int width)
void(* put_hevc_qpel[10][2][2])(int16_t *dst, const uint8_t *src, ptrdiff_t srcstride, int height, intptr_t mx, intptr_t my, int width)
void(* put_hevc_qpel_bi[10][2][2])(uint8_t *dst, ptrdiff_t dststride, const uint8_t *_src, ptrdiff_t _srcstride, const int16_t *src2, int height, intptr_t mx, intptr_t my, int width)
void(* hevc_v_loop_filter_chroma_c)(uint8_t *pix, ptrdiff_t stride, const int32_t *tc, const uint8_t *no_p, const uint8_t *no_q)
void(* dequant)(int16_t *coeffs, int16_t log2_size)
void(* hevc_v_loop_filter_luma_c)(uint8_t *pix, ptrdiff_t stride, int beta, const int32_t *tc, const uint8_t *no_p, const uint8_t *no_q)
int offset_sign[3][4]
sao_offset_sign
int16_t offset_val[3][5]
SaoOffsetVal.
uint8_t band_position[3]
sao_band_position
int eo_class[3]
sao_eo_class
int offset_abs[3][4]
sao_offset_abs
uint8_t type_idx[3]
sao_type_idx