Go to the documentation of this file.
21 #ifndef AVCODEC_AARCH64_H26X_DSP_H
22 #define AVCODEC_AARCH64_H26X_DSP_H
28 ptrdiff_t stride_dst, ptrdiff_t stride_src,
29 const int16_t *sao_offset_val,
int sao_left_class,
32 const int16_t *sao_offset_val,
int eo,
int width,
int height);
34 const int16_t *sao_offset_val,
int eo,
int width,
int height);
37 const int16_t *sao_offset_val,
int eo,
int width,
int height);
39 const int16_t *sao_offset_val,
int eo,
int width,
int height);
41 #define NEON8_FNPROTO_PARTIAL_6(fn, args, ext) \
42 void ff_hevc_put_hevc_##fn##_h4_8_neon##ext args; \
43 void ff_hevc_put_hevc_##fn##_h6_8_neon##ext args; \
44 void ff_hevc_put_hevc_##fn##_h8_8_neon##ext args; \
45 void ff_hevc_put_hevc_##fn##_h12_8_neon##ext args; \
46 void ff_hevc_put_hevc_##fn##_h16_8_neon##ext args; \
47 void ff_hevc_put_hevc_##fn##_h32_8_neon##ext args;
59 #define NEON8_FNPROTO(fn, args, ext) \
60 void ff_hevc_put_hevc_##fn##4_8_neon##ext args; \
61 void ff_hevc_put_hevc_##fn##6_8_neon##ext args; \
62 void ff_hevc_put_hevc_##fn##8_8_neon##ext args; \
63 void ff_hevc_put_hevc_##fn##12_8_neon##ext args; \
64 void ff_hevc_put_hevc_##fn##16_8_neon##ext args; \
65 void ff_hevc_put_hevc_##fn##24_8_neon##ext args; \
66 void ff_hevc_put_hevc_##fn##32_8_neon##ext args; \
67 void ff_hevc_put_hevc_##fn##48_8_neon##ext args; \
68 void ff_hevc_put_hevc_##fn##64_8_neon##ext args
70 #define NEON8_FNPROTO_PARTIAL_4(fn, args, ext) \
71 void ff_hevc_put_hevc_##fn##4_8_neon##ext args; \
72 void ff_hevc_put_hevc_##fn##8_8_neon##ext args; \
73 void ff_hevc_put_hevc_##fn##16_8_neon##ext args; \
74 void ff_hevc_put_hevc_##fn##64_8_neon##ext args
76 #define NEON8_FNPROTO_PARTIAL_5(fn, args, ext) \
77 void ff_hevc_put_hevc_##fn##4_8_neon##ext args; \
78 void ff_hevc_put_hevc_##fn##8_8_neon##ext args; \
79 void ff_hevc_put_hevc_##fn##16_8_neon##ext args; \
80 void ff_hevc_put_hevc_##fn##32_8_neon##ext args; \
81 void ff_hevc_put_hevc_##fn##64_8_neon##ext args
117 int height,
int denom,
int wx,
int ox,
134 int height,
int denom,
int wx,
int ox,
139 int height,
int denom,
int wx,
int ox,
160 int height,
int denom,
int wx,
int ox,
165 int height,
int denom,
int wx,
int ox,
166 intptr_t
mx, intptr_t
my,
int width), _i8mm);
198 int height,
int denom,
int wx,
int ox,
203 int height,
int denom,
int wx,
int ox,
204 intptr_t
mx, intptr_t
my,
int width), _i8mm);
208 int height,
int denom,
int wx,
int ox,
213 int height,
int denom,
int wx,
int ox,
214 intptr_t
mx, intptr_t
my,
int width), _i8mm);
218 int height,
int denom,
int wx,
int ox,
223 int height,
int denom,
int wx,
int ox,
224 intptr_t
mx, intptr_t
my,
int width), _i8mm);
238 #undef NEON8_FNPROTO_PARTIAL_4
239 #define NEON8_FNPROTO_PARTIAL_4(fn, args, ext) \
240 void ff_vvc_put_##fn##_h4_8_neon##ext args; \
241 void ff_vvc_put_##fn##_h8_8_neon##ext args; \
242 void ff_vvc_put_##fn##_h16_8_neon##ext args; \
243 void ff_vvc_put_##fn##_h32_8_neon##ext args;
246 const int8_t *
hf,
const int8_t *
vf,
int width),)
252 const int8_t *
hf, const int8_t *
vf,
int width),)
254 #undef NEON8_FNPROTO_PARTIAL_6
255 #define NEON8_FNPROTO_PARTIAL_6(fn, args, ext) \
256 void ff_vvc_put_##fn##4_8_neon##ext args; \
257 void ff_vvc_put_##fn##8_8_neon##ext args; \
258 void ff_vvc_put_##fn##16_8_neon##ext args; \
259 void ff_vvc_put_##fn##32_8_neon##ext args; \
260 void ff_vvc_put_##fn##64_8_neon##ext args; \
261 void ff_vvc_put_##fn##128_8_neon##ext args
265 const int8_t *
hf,
const int8_t *
vf,
int width),);
269 const int8_t *
hf,
const int8_t *
vf,
int width),);
273 int height,
int denom,
int wx,
int ox,
274 const int8_t *
hf,
const int8_t *
vf,
int width),);
278 const int8_t *
hf,
const int8_t *
vf,
int width), _i8mm);
282 const int8_t *
hf,
const int8_t *
vf,
int width), _i8mm);
286 const int8_t *
hf,
const int8_t *
vf,
int width);
290 const int8_t *
hf,
const int8_t *
vf,
int width);
294 const int8_t *
hf,
const int8_t *
vf,
int width),);
298 const int8_t *
hf,
const int8_t *
vf,
int width), _i8mm);
302 const int8_t *
hf,
const int8_t *
vf,
int width),);
306 const int8_t *
hf,
const int8_t *
vf,
int width), _i8mm);
void ff_hevc_sao_edge_filter_16x16_8_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride_dst, const int16_t *sao_offset_val, int eo, int width, int height)
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t int int16_t const uint8_t * src
void ff_vvc_put_qpel_v8_8_neon(int16_t *dst, const uint8_t *_src, ptrdiff_t _srcstride, int height, const int8_t *hf, const int8_t *vf, int width)
uint8_t ptrdiff_t const uint8_t ptrdiff_t int height
void ff_hevc_sao_edge_filter_8x8_8_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride_dst, const int16_t *sao_offset_val, int eo, int width, int height)
uint8_t ptrdiff_t const uint8_t * _src
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t mx
uint8_t ptrdiff_t const uint8_t ptrdiff_t _srcstride
void ff_vvc_put_qpel_v4_8_neon(int16_t *dst, const uint8_t *_src, ptrdiff_t _srcstride, int height, const int8_t *hf, const int8_t *vf, int width)
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t my
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t int int16_t const uint8_t ptrdiff_t srcstride
#define NEON8_FNPROTO(fn, args, ext)
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t int width
uint8_t ptrdiff_t _dststride
void ff_vvc_sao_edge_filter_8x8_8_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride_dst, const int16_t *sao_offset_val, int eo, int width, int height)
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t int int16_t * dst
void ff_h26x_sao_band_filter_8x8_8_neon(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)
#define NEON8_FNPROTO_PARTIAL_5(fn, args, ext)
#define NEON8_FNPROTO_PARTIAL_4(fn, args, ext)
uint8_t ptrdiff_t const uint8_t ptrdiff_t int const int8_t * hf
#define NEON8_FNPROTO_PARTIAL_6(fn, args, ext)
void ff_vvc_sao_edge_filter_16x16_8_neon(uint8_t *dst, const uint8_t *src, ptrdiff_t stride_dst, const int16_t *sao_offset_val, int eo, int width, int height)
uint8_t ptrdiff_t const uint8_t ptrdiff_t int const int8_t const int8_t * vf