21 #ifndef AVCODEC_MIPS_HEVCDSP_MIPS_H 22 #define AVCODEC_MIPS_HEVCDSP_MIPS_H 26 #define MC(PEL, DIR, WIDTH) \ 27 void ff_hevc_put_hevc_##PEL##_##DIR##WIDTH##_8_msa(int16_t *dst, \ 29 ptrdiff_t src_stride, \ 104 #define UNI_MC(PEL, DIR, WIDTH) \ 105 void ff_hevc_put_hevc_uni_##PEL##_##DIR##WIDTH##_8_msa(uint8_t *dst, \ 106 ptrdiff_t dst_stride, \ 108 ptrdiff_t src_stride, \ 183 #define UNI_W_MC(PEL, DIR, WIDTH) \ 184 void ff_hevc_put_hevc_uni_w_##PEL##_##DIR##WIDTH##_8_msa(uint8_t *dst, \ 267 #define BI_MC(PEL, DIR, WIDTH) \ 268 void ff_hevc_put_hevc_bi_##PEL##_##DIR##WIDTH##_8_msa(uint8_t *dst, \ 269 ptrdiff_t dst_stride, \ 271 ptrdiff_t src_stride, \ 272 int16_t *src_16bit, \ 278 BI_MC(pel, pixels, 4);
279 BI_MC(pel, pixels, 6);
280 BI_MC(pel, pixels, 8);
281 BI_MC(pel, pixels, 12);
282 BI_MC(pel, pixels, 16);
283 BI_MC(pel, pixels, 24);
284 BI_MC(pel, pixels, 32);
285 BI_MC(pel, pixels, 48);
286 BI_MC(pel, pixels, 64);
347 #define BI_W_MC(PEL, DIR, WIDTH) \ 348 void ff_hevc_put_hevc_bi_w_##PEL##_##DIR##WIDTH##_8_msa(uint8_t *dst, \ 354 int16_t *src_16bit, \ 435 ptrdiff_t src_stride,
440 ptrdiff_t src_stride,
445 ptrdiff_t src_stride,
450 ptrdiff_t src_stride,
455 ptrdiff_t stride_dst, ptrdiff_t stride_src,
456 int16_t *sao_offset_val,
int sao_left_class,
460 ptrdiff_t stride_dst,
461 int16_t *sao_offset_val,
483 #define L_MC(PEL, DIR, WIDTH, TYPE) \ 484 void ff_hevc_put_hevc_##PEL##_##DIR##WIDTH##_8_##TYPE(int16_t *dst, \ 486 ptrdiff_t src_stride, \ 491 L_MC(qpel,
h, 4, mmi);
492 L_MC(qpel,
h, 8, mmi);
493 L_MC(qpel,
h, 12, mmi);
494 L_MC(qpel,
h, 16, mmi);
495 L_MC(qpel,
h, 24, mmi);
496 L_MC(qpel,
h, 32, mmi);
497 L_MC(qpel,
h, 48, mmi);
498 L_MC(qpel,
h, 64, mmi);
500 L_MC(qpel, hv, 4, mmi);
501 L_MC(qpel, hv, 8, mmi);
502 L_MC(qpel, hv, 12, mmi);
503 L_MC(qpel, hv, 16, mmi);
504 L_MC(qpel, hv, 24, mmi);
505 L_MC(qpel, hv, 32, mmi);
506 L_MC(qpel, hv, 48, mmi);
507 L_MC(qpel, hv, 64, mmi);
509 #define L_BI_MC(PEL, DIR, WIDTH, TYPE) \ 510 void ff_hevc_put_hevc_##PEL##_bi_##DIR##WIDTH##_8_##TYPE(uint8_t *dst, \ 511 ptrdiff_t dst_stride, \ 513 ptrdiff_t src_stride, \ 553 #define L_UNI_MC(PEL, DIR, WIDTH, TYPE) \ 554 void ff_hevc_put_hevc_##PEL##_uni_##DIR##WIDTH##_8_##TYPE(uint8_t *dst, \ 555 ptrdiff_t dst_stride, \ 557 ptrdiff_t src_stride, \ 573 #endif // #ifndef AVCODEC_MIPS_HEVCDSP_MIPS_H
void ff_hevc_idct_dc_8x8_msa(int16_t *coeffs)
void ff_hevc_sao_band_filter_0_8_msa(uint8_t *dst, uint8_t *src, ptrdiff_t stride_dst, ptrdiff_t stride_src, int16_t *sao_offset_val, int sao_left_class, int width, int height)
void ff_hevc_addblk_8x8_msa(uint8_t *dst, int16_t *pi16Coeffs, ptrdiff_t stride)
void ff_hevc_idct_dc_16x16_msa(int16_t *coeffs)
void ff_hevc_loop_filter_chroma_v_8_msa(uint8_t *src, ptrdiff_t src_stride, int32_t *tc, uint8_t *no_p, uint8_t *no_q)
void ff_hevc_idct_32x32_msa(int16_t *coeffs, int col_limit)
void ff_hevc_loop_filter_luma_h_8_msa(uint8_t *src, ptrdiff_t src_stride, int32_t beta, int32_t *tc, uint8_t *no_p, uint8_t *no_q)
#define BI_MC(PEL, DIR, WIDTH)
#define MC(PEL, DIR, WIDTH)
void ff_hevc_idct_dc_32x32_msa(int16_t *coeffs)
void ff_hevc_idct_8x8_msa(int16_t *coeffs, int col_limit)
void ff_hevc_idct_16x16_msa(int16_t *coeffs, int col_limit)
void ff_hevc_addblk_16x16_msa(uint8_t *dst, int16_t *pi16Coeffs, ptrdiff_t stride)
#define L_MC(PEL, DIR, WIDTH, TYPE)
void ff_hevc_idct_4x4_msa(int16_t *coeffs, int col_limit)
void ff_hevc_loop_filter_luma_v_8_msa(uint8_t *src, ptrdiff_t src_stride, int32_t beta, int32_t *tc, uint8_t *no_p, uint8_t *no_q)
#define UNI_W_MC(PEL, DIR, WIDTH)
#define BI_W_MC(PEL, DIR, WIDTH)
#define UNI_MC(PEL, DIR, WIDTH)
#define L_BI_MC(PEL, DIR, WIDTH, TYPE)
void ff_hevc_idct_luma_4x4_msa(int16_t *pi16Coeffs)
void ff_hevc_sao_edge_filter_8_msa(uint8_t *dst, uint8_t *src, ptrdiff_t stride_dst, int16_t *sao_offset_val, int eo, int width, int height)
#define L_UNI_MC(PEL, DIR, WIDTH, TYPE)
void ff_hevc_idct_dc_4x4_msa(int16_t *coeffs)
GLint GLenum GLboolean GLsizei stride
void ff_hevc_addblk_4x4_msa(uint8_t *dst, int16_t *pi16Coeffs, ptrdiff_t stride)
void ff_hevc_loop_filter_chroma_h_8_msa(uint8_t *src, ptrdiff_t src_stride, int32_t *tc, uint8_t *no_p, uint8_t *no_q)
void ff_hevc_addblk_32x32_msa(uint8_t *dst, int16_t *pi16Coeffs, ptrdiff_t stride)