FFmpeg
Loading...
Searching...
No Matches
hevc_mc_uniw_msa.c File Reference

Go to the source code of this file.

Macros

#define HEVC_UNIW_RND_CLIP2_MAX_SATU_H(in0_h, in1_h, wgt_w, offset_h, rnd_w, out0_h, out1_h)
 
#define HEVC_UNIW_RND_CLIP4_MAX_SATU_H(in0_h, in1_h, in2_h, in3_h, wgt_w, offset_h, rnd_w, out0_h, out1_h, out2_h, out3_h)
 
#define HEVC_FILT_8TAP_4W_SH(in0, in1, in2, in3, filt0, filt1, filt2, filt3, dst0, dst1)
 
#define UNIWGT_MC_COPY(WIDTH)
 
#define UNI_W_MC(PEL, DIR, WIDTH, TAP, DIR1, FILT_DIR)
 
#define UNI_W_MC_HV(PEL, WIDTH, TAP)
 

Functions

static void hevc_uniwgt_copy_4w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_uniwgt_copy_6w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_uniwgt_copy_8w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_uniwgt_copy_12w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_uniwgt_copy_16w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_uniwgt_copy_24w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_uniwgt_copy_32w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_uniwgt_copy_48w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_uniwgt_copy_64w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_8t_4w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_8t_8w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_8t_12w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_8t_16w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_8t_24w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_8t_32w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_8t_48w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_8t_64w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_8t_4w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_8t_8w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_8t_12w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_8t_16multx4mult_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val, int32_t weightmul16)
 
static void hevc_vt_uniwgt_8t_16w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_8t_24w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_8t_32w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_8t_48w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_8t_64w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hv_uniwgt_8t_4w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hv_uniwgt_8t_8multx2mult_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val, int32_t width)
 
static void hevc_hv_uniwgt_8t_8w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hv_uniwgt_8t_12w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hv_uniwgt_8t_16w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hv_uniwgt_8t_24w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hv_uniwgt_8t_32w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hv_uniwgt_8t_48w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hv_uniwgt_8t_64w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_4t_4x2_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_4t_4x4_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_4t_4x8multiple_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_4t_4w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_4t_6w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_4t_8x2_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_4t_8x4_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_4t_8x6_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_4t_8x8multiple_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_4t_8w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_4t_12w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_4t_16w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_4t_24w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hz_uniwgt_4t_32w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_4t_4x2_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_4t_4x4_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_4t_4x8multiple_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_4t_4w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_4t_6w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_4t_8x2_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_4t_8x4_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_4t_8x6_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_4t_8x8mult_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_4t_8w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_4t_12w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_4t_16w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_4t_24w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_vt_uniwgt_4t_32w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hv_uniwgt_4t_4x2_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hv_uniwgt_4t_4x4_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hv_uniwgt_4t_4multx8mult_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hv_uniwgt_4t_4w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hv_uniwgt_4t_6w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hv_uniwgt_4t_8x2_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hv_uniwgt_4t_8multx4_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t width8mult, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hv_uniwgt_4t_8x6_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hv_uniwgt_4t_8multx4mult_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val, int32_t width8mult)
 
static void hevc_hv_uniwgt_4t_8w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hv_uniwgt_4t_12w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hv_uniwgt_4t_16w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hv_uniwgt_4t_24w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
static void hevc_hv_uniwgt_4t_32w_msa (const uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height, int32_t weight, int32_t offset, int32_t rnd_val)
 
 UNIWGT_MC_COPY (4)
 
 UNIWGT_MC_COPY (6)
 
 UNIWGT_MC_COPY (8)
 
 UNIWGT_MC_COPY (12)
 
 UNIWGT_MC_COPY (16)
 
 UNIWGT_MC_COPY (24)
 
 UNIWGT_MC_COPY (32)
 
 UNIWGT_MC_COPY (48)
 
 UNIWGT_MC_COPY (64)
 
 UNI_W_MC (qpel, h, 4, 8, hz, mx)
 
 UNI_W_MC (qpel, h, 8, 8, hz, mx)
 
 UNI_W_MC (qpel, h, 12, 8, hz, mx)
 
 UNI_W_MC (qpel, h, 16, 8, hz, mx)
 
 UNI_W_MC (qpel, h, 24, 8, hz, mx)
 
 UNI_W_MC (qpel, h, 32, 8, hz, mx)
 
 UNI_W_MC (qpel, h, 48, 8, hz, mx)
 
 UNI_W_MC (qpel, h, 64, 8, hz, mx)
 
 UNI_W_MC (qpel, v, 4, 8, vt, my)
 
 UNI_W_MC (qpel, v, 8, 8, vt, my)
 
 UNI_W_MC (qpel, v, 12, 8, vt, my)
 
 UNI_W_MC (qpel, v, 16, 8, vt, my)
 
 UNI_W_MC (qpel, v, 24, 8, vt, my)
 
 UNI_W_MC (qpel, v, 32, 8, vt, my)
 
 UNI_W_MC (qpel, v, 48, 8, vt, my)
 
 UNI_W_MC (qpel, v, 64, 8, vt, my)
 
 UNI_W_MC (epel, h, 4, 4, hz, mx)
 
 UNI_W_MC (epel, h, 6, 4, hz, mx)
 
 UNI_W_MC (epel, h, 8, 4, hz, mx)
 
 UNI_W_MC (epel, h, 12, 4, hz, mx)
 
 UNI_W_MC (epel, h, 16, 4, hz, mx)
 
 UNI_W_MC (epel, h, 24, 4, hz, mx)
 
 UNI_W_MC (epel, h, 32, 4, hz, mx)
 
 UNI_W_MC (epel, v, 4, 4, vt, my)
 
 UNI_W_MC (epel, v, 6, 4, vt, my)
 
 UNI_W_MC (epel, v, 8, 4, vt, my)
 
 UNI_W_MC (epel, v, 12, 4, vt, my)
 
 UNI_W_MC (epel, v, 16, 4, vt, my)
 
 UNI_W_MC (epel, v, 24, 4, vt, my)
 
 UNI_W_MC (epel, v, 32, 4, vt, my)
 
 UNI_W_MC_HV (qpel, 4, 8)
 
 UNI_W_MC_HV (qpel, 8, 8)
 
 UNI_W_MC_HV (qpel, 12, 8)
 
 UNI_W_MC_HV (qpel, 16, 8)
 
 UNI_W_MC_HV (qpel, 24, 8)
 
 UNI_W_MC_HV (qpel, 32, 8)
 
 UNI_W_MC_HV (qpel, 48, 8)
 
 UNI_W_MC_HV (qpel, 64, 8)
 
 UNI_W_MC_HV (epel, 4, 4)
 
 UNI_W_MC_HV (epel, 6, 4)
 
 UNI_W_MC_HV (epel, 8, 4)
 
 UNI_W_MC_HV (epel, 12, 4)
 
 UNI_W_MC_HV (epel, 16, 4)
 
 UNI_W_MC_HV (epel, 24, 4)
 
 UNI_W_MC_HV (epel, 32, 4)
 

Variables

static const uint8_t ff_hevc_mask_arr [16 *2]
 

Macro Definition Documentation

◆ HEVC_UNIW_RND_CLIP2_MAX_SATU_H

#define HEVC_UNIW_RND_CLIP2_MAX_SATU_H ( in0_h,
in1_h,
wgt_w,
offset_h,
rnd_w,
out0_h,
out1_h )
Value:
{ \
v4i32 in0_r_m, in0_l_m, in1_r_m, in1_l_m; \
v8i16 zero = { 0 }; \
\
ILVRL_H2_SW(zero, in0_h, in0_r_m, in0_l_m); \
ILVRL_H2_SW(zero, in1_h, in1_r_m, in1_l_m); \
MUL4(in0_r_m, wgt_w, in0_l_m, wgt_w, in1_r_m, wgt_w, in1_l_m, wgt_w, \
in0_r_m, in0_l_m, in1_r_m, in1_l_m); \
SRAR_W4_SW(in0_r_m, in0_l_m, in1_r_m, in1_l_m, rnd_w); \
ADD4(in0_r_m, offset_h, in0_l_m, offset_h, in1_r_m, offset_h, in1_l_m, \
offset_h, in0_r_m, in0_l_m, in1_r_m, in1_l_m); \
CLIP_SW4_0_255(in0_r_m, in0_l_m, in1_r_m, in1_l_m); \
PCKEV_H2_SH(in0_l_m, in0_r_m, in1_l_m, in1_r_m, out0_h, out1_h); \
}
static int zero(InterplayACMContext *s, unsigned ind, unsigned col)

Definition at line 32 of file hevc_mc_uniw_msa.c.

Referenced by hevc_uniwgt_copy_12w_msa(), hevc_uniwgt_copy_4w_msa(), and hevc_uniwgt_copy_8w_msa().

◆ HEVC_UNIW_RND_CLIP4_MAX_SATU_H

#define HEVC_UNIW_RND_CLIP4_MAX_SATU_H ( in0_h,
in1_h,
in2_h,
in3_h,
wgt_w,
offset_h,
rnd_w,
out0_h,
out1_h,
out2_h,
out3_h )
Value:
{ \
HEVC_UNIW_RND_CLIP2_MAX_SATU_H(in0_h, in1_h, wgt_w, offset_h, rnd_w, \
out0_h, out1_h); \
HEVC_UNIW_RND_CLIP2_MAX_SATU_H(in2_h, in3_h, wgt_w, offset_h, rnd_w, \
out2_h, out3_h); \
}

Definition at line 49 of file hevc_mc_uniw_msa.c.

Referenced by hevc_uniwgt_copy_12w_msa(), hevc_uniwgt_copy_16w_msa(), hevc_uniwgt_copy_24w_msa(), hevc_uniwgt_copy_32w_msa(), hevc_uniwgt_copy_48w_msa(), hevc_uniwgt_copy_4w_msa(), hevc_uniwgt_copy_64w_msa(), hevc_uniwgt_copy_6w_msa(), and hevc_uniwgt_copy_8w_msa().

◆ HEVC_FILT_8TAP_4W_SH

#define HEVC_FILT_8TAP_4W_SH ( in0,
in1,
in2,
in3,
filt0,
filt1,
filt2,
filt3,
dst0,
dst1 )
Value:
{ \
v8i16 tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7; \
ILVRL_B2_SH(zero, in0, tmp0, tmp4); \
ILVRL_B2_SH(zero, in1, tmp1, tmp5); \
ILVRL_B2_SH(zero, in2, tmp2, tmp6); \
ILVRL_B2_SH(zero, in3, tmp3, tmp7); \
dst0 = __msa_dotp_s_w((v8i16) tmp0, (v8i16) filt0); \
dst1 = __msa_dotp_s_w((v8i16) tmp4, (v8i16) filt0); \
DPADD_SH2_SW(tmp1, tmp5, filt1, filt1, dst0, dst1); \
DPADD_SH2_SW(tmp2, tmp6, filt2, filt2, dst0, dst1); \
DPADD_SH2_SW(tmp3, tmp7, filt3, filt3, dst0, dst1); \
}

Definition at line 59 of file hevc_mc_uniw_msa.c.

Referenced by hevc_hv_uniwgt_8t_12w_msa(), hevc_hv_uniwgt_8t_4w_msa(), hevc_hv_uniwgt_8t_8multx2mult_msa(), hevc_hz_uniwgt_8t_12w_msa(), hevc_hz_uniwgt_8t_16w_msa(), hevc_hz_uniwgt_8t_24w_msa(), hevc_hz_uniwgt_8t_32w_msa(), hevc_hz_uniwgt_8t_48w_msa(), hevc_hz_uniwgt_8t_4w_msa(), hevc_hz_uniwgt_8t_64w_msa(), hevc_hz_uniwgt_8t_8w_msa(), hevc_vt_uniwgt_8t_12w_msa(), hevc_vt_uniwgt_8t_16multx4mult_msa(), hevc_vt_uniwgt_8t_4w_msa(), and hevc_vt_uniwgt_8t_8w_msa().

◆ UNIWGT_MC_COPY

#define UNIWGT_MC_COPY ( WIDTH)
Value:
void ff_hevc_put_hevc_uni_w_pel_pixels##WIDTH##_8_msa(uint8_t *dst, \
ptrdiff_t dst_stride, \
const uint8_t *src, \
ptrdiff_t src_stride, \
int height, \
int denom, \
int weight, \
int offset, \
intptr_t mx, \
intptr_t my, \
int width) \
{ \
int shift = denom + 14 - 8; \
hevc_uniwgt_copy_##WIDTH##w_msa(src, src_stride, dst, dst_stride, \
}
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t my
Definition dsp.h:57
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t mx
Definition dsp.h:57
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t int int16_t * dst
Definition dsp.h:87
unsigned offset
Definition libaomenc.c:763
static int shift(int a, int b)
Definition bonk.c:261
#define WIDTH
Definition c93.c:45
const h264_weight_func weight
#define src
Definition vp8dsp.c:248
#define height
Definition dsp.h:89
#define width
Definition dsp.h:89

Definition at line 6221 of file hevc_mc_uniw_msa.c.

◆ UNI_W_MC

#define UNI_W_MC ( PEL,
DIR,
WIDTH,
TAP,
DIR1,
FILT_DIR )
Value:
void ff_hevc_put_hevc_uni_w_##PEL##_##DIR##WIDTH##_8_msa(uint8_t *dst, \
ptrdiff_t \
dst_stride, \
const uint8_t *src, \
ptrdiff_t \
src_stride, \
int height, \
int denom, \
int weight, \
int offset, \
intptr_t mx, \
intptr_t my, \
int width) \
{ \
const int8_t *filter = ff_hevc_##PEL##_filters[FILT_DIR]; \
int shift = denom + 14 - 8; \
\
hevc_##DIR1##_uniwgt_##TAP##t_##WIDTH##w_msa(src, src_stride, dst, \
dst_stride, filter, height, \
}
#define _
void(* filter)(uint8_t *src, ptrdiff_t stride, int qscale)
Definition h263dsp.c:29

Definition at line 6251 of file hevc_mc_uniw_msa.c.

◆ UNI_W_MC_HV

#define UNI_W_MC_HV ( PEL,
WIDTH,
TAP )
Value:
void ff_hevc_put_hevc_uni_w_##PEL##_hv##WIDTH##_8_msa(uint8_t *dst, \
ptrdiff_t dst_stride, \
const uint8_t *src, \
ptrdiff_t src_stride, \
int height, \
int denom, \
int weight, \
int offset, \
intptr_t mx, \
intptr_t my, \
int width) \
{ \
const int8_t *filter_x = ff_hevc_##PEL##_filters[mx]; \
const int8_t *filter_y = ff_hevc_##PEL##_filters[my]; \
int shift = denom + 14 - 8; \
\
hevc_hv_uniwgt_##TAP##t_##WIDTH##w_msa(src, src_stride, dst, dst_stride, \
filter_x, filter_y, height, \
}

Definition at line 6310 of file hevc_mc_uniw_msa.c.

Function Documentation

◆ hevc_uniwgt_copy_4w_msa()

static void hevc_uniwgt_copy_4w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 74 of file hevc_mc_uniw_msa.c.

◆ hevc_uniwgt_copy_6w_msa()

static void hevc_uniwgt_copy_6w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 141 of file hevc_mc_uniw_msa.c.

◆ hevc_uniwgt_copy_8w_msa()

static void hevc_uniwgt_copy_8w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 248 of file hevc_mc_uniw_msa.c.

◆ hevc_uniwgt_copy_12w_msa()

static void hevc_uniwgt_copy_12w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 342 of file hevc_mc_uniw_msa.c.

◆ hevc_uniwgt_copy_16w_msa()

static void hevc_uniwgt_copy_16w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 386 of file hevc_mc_uniw_msa.c.

◆ hevc_uniwgt_copy_24w_msa()

static void hevc_uniwgt_copy_24w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 428 of file hevc_mc_uniw_msa.c.

◆ hevc_uniwgt_copy_32w_msa()

static void hevc_uniwgt_copy_32w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 480 of file hevc_mc_uniw_msa.c.

◆ hevc_uniwgt_copy_48w_msa()

static void hevc_uniwgt_copy_48w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 525 of file hevc_mc_uniw_msa.c.

◆ hevc_uniwgt_copy_64w_msa()

static void hevc_uniwgt_copy_64w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 581 of file hevc_mc_uniw_msa.c.

◆ hevc_hz_uniwgt_8t_4w_msa()

static void hevc_hz_uniwgt_8t_4w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 643 of file hevc_mc_uniw_msa.c.

◆ hevc_hz_uniwgt_8t_8w_msa()

static void hevc_hz_uniwgt_8t_8w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 765 of file hevc_mc_uniw_msa.c.

◆ hevc_hz_uniwgt_8t_12w_msa()

static void hevc_hz_uniwgt_8t_12w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 865 of file hevc_mc_uniw_msa.c.

◆ hevc_hz_uniwgt_8t_16w_msa()

static void hevc_hz_uniwgt_8t_16w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 944 of file hevc_mc_uniw_msa.c.

◆ hevc_hz_uniwgt_8t_24w_msa()

static void hevc_hz_uniwgt_8t_24w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 1023 of file hevc_mc_uniw_msa.c.

◆ hevc_hz_uniwgt_8t_32w_msa()

static void hevc_hz_uniwgt_8t_32w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 1124 of file hevc_mc_uniw_msa.c.

◆ hevc_hz_uniwgt_8t_48w_msa()

static void hevc_hz_uniwgt_8t_48w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 1238 of file hevc_mc_uniw_msa.c.

◆ hevc_hz_uniwgt_8t_64w_msa()

static void hevc_hz_uniwgt_8t_64w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 1339 of file hevc_mc_uniw_msa.c.

◆ hevc_vt_uniwgt_8t_4w_msa()

static void hevc_vt_uniwgt_8t_4w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 1430 of file hevc_mc_uniw_msa.c.

◆ hevc_vt_uniwgt_8t_8w_msa()

static void hevc_vt_uniwgt_8t_8w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 1567 of file hevc_mc_uniw_msa.c.

Referenced by hevc_vt_uniwgt_8t_24w_msa().

◆ hevc_vt_uniwgt_8t_12w_msa()

static void hevc_vt_uniwgt_8t_12w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 1663 of file hevc_mc_uniw_msa.c.

◆ hevc_vt_uniwgt_8t_16multx4mult_msa()

static void hevc_vt_uniwgt_8t_16multx4mult_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val,
int32_t weightmul16 )
static

◆ hevc_vt_uniwgt_8t_16w_msa()

static void hevc_vt_uniwgt_8t_16w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 1933 of file hevc_mc_uniw_msa.c.

◆ hevc_vt_uniwgt_8t_24w_msa()

static void hevc_vt_uniwgt_8t_24w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 1948 of file hevc_mc_uniw_msa.c.

◆ hevc_vt_uniwgt_8t_32w_msa()

static void hevc_vt_uniwgt_8t_32w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 1966 of file hevc_mc_uniw_msa.c.

◆ hevc_vt_uniwgt_8t_48w_msa()

static void hevc_vt_uniwgt_8t_48w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 1981 of file hevc_mc_uniw_msa.c.

◆ hevc_vt_uniwgt_8t_64w_msa()

static void hevc_vt_uniwgt_8t_64w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 1996 of file hevc_mc_uniw_msa.c.

◆ hevc_hv_uniwgt_8t_4w_msa()

static void hevc_hv_uniwgt_8t_4w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 2011 of file hevc_mc_uniw_msa.c.

◆ hevc_hv_uniwgt_8t_8multx2mult_msa()

static void hevc_hv_uniwgt_8t_8multx2mult_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val,
int32_t width )
static

◆ hevc_hv_uniwgt_8t_8w_msa()

static void hevc_hv_uniwgt_8t_8w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 2293 of file hevc_mc_uniw_msa.c.

◆ hevc_hv_uniwgt_8t_12w_msa()

static void hevc_hv_uniwgt_8t_12w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 2309 of file hevc_mc_uniw_msa.c.

◆ hevc_hv_uniwgt_8t_16w_msa()

static void hevc_hv_uniwgt_8t_16w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 2511 of file hevc_mc_uniw_msa.c.

◆ hevc_hv_uniwgt_8t_24w_msa()

static void hevc_hv_uniwgt_8t_24w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 2527 of file hevc_mc_uniw_msa.c.

◆ hevc_hv_uniwgt_8t_32w_msa()

static void hevc_hv_uniwgt_8t_32w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 2543 of file hevc_mc_uniw_msa.c.

◆ hevc_hv_uniwgt_8t_48w_msa()

static void hevc_hv_uniwgt_8t_48w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 2559 of file hevc_mc_uniw_msa.c.

◆ hevc_hv_uniwgt_8t_64w_msa()

static void hevc_hv_uniwgt_8t_64w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 2575 of file hevc_mc_uniw_msa.c.

◆ hevc_hz_uniwgt_4t_4x2_msa()

static void hevc_hz_uniwgt_4t_4x2_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 2591 of file hevc_mc_uniw_msa.c.

Referenced by hevc_hz_uniwgt_4t_4w_msa().

◆ hevc_hz_uniwgt_4t_4x4_msa()

static void hevc_hz_uniwgt_4t_4x4_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 2640 of file hevc_mc_uniw_msa.c.

Referenced by hevc_hz_uniwgt_4t_4w_msa().

◆ hevc_hz_uniwgt_4t_4x8multiple_msa()

static void hevc_hz_uniwgt_4t_4x8multiple_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 2698 of file hevc_mc_uniw_msa.c.

Referenced by hevc_hz_uniwgt_4t_4w_msa().

◆ hevc_hz_uniwgt_4t_4w_msa()

static void hevc_hz_uniwgt_4t_4w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 2778 of file hevc_mc_uniw_msa.c.

◆ hevc_hz_uniwgt_4t_6w_msa()

static void hevc_hz_uniwgt_4t_6w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 2801 of file hevc_mc_uniw_msa.c.

◆ hevc_hz_uniwgt_4t_8x2_msa()

static void hevc_hz_uniwgt_4t_8x2_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 2918 of file hevc_mc_uniw_msa.c.

Referenced by hevc_hz_uniwgt_4t_8w_msa().

◆ hevc_hz_uniwgt_4t_8x4_msa()

static void hevc_hz_uniwgt_4t_8x4_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 2974 of file hevc_mc_uniw_msa.c.

Referenced by hevc_hz_uniwgt_4t_8w_msa().

◆ hevc_hz_uniwgt_4t_8x6_msa()

static void hevc_hz_uniwgt_4t_8x6_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 3046 of file hevc_mc_uniw_msa.c.

Referenced by hevc_hz_uniwgt_4t_8w_msa().

◆ hevc_hz_uniwgt_4t_8x8multiple_msa()

static void hevc_hz_uniwgt_4t_8x8multiple_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 3141 of file hevc_mc_uniw_msa.c.

Referenced by hevc_hz_uniwgt_4t_8w_msa().

◆ hevc_hz_uniwgt_4t_8w_msa()

static void hevc_hz_uniwgt_4t_8w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 3258 of file hevc_mc_uniw_msa.c.

◆ hevc_hz_uniwgt_4t_12w_msa()

static void hevc_hz_uniwgt_4t_12w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 3284 of file hevc_mc_uniw_msa.c.

◆ hevc_hz_uniwgt_4t_16w_msa()

static void hevc_hz_uniwgt_4t_16w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 3389 of file hevc_mc_uniw_msa.c.

◆ hevc_hz_uniwgt_4t_24w_msa()

static void hevc_hz_uniwgt_4t_24w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 3507 of file hevc_mc_uniw_msa.c.

◆ hevc_hz_uniwgt_4t_32w_msa()

static void hevc_hz_uniwgt_4t_32w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 3611 of file hevc_mc_uniw_msa.c.

◆ hevc_vt_uniwgt_4t_4x2_msa()

static void hevc_vt_uniwgt_4t_4x2_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 3734 of file hevc_mc_uniw_msa.c.

Referenced by hevc_vt_uniwgt_4t_4w_msa().

◆ hevc_vt_uniwgt_4t_4x4_msa()

static void hevc_vt_uniwgt_4t_4x4_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 3783 of file hevc_mc_uniw_msa.c.

Referenced by hevc_vt_uniwgt_4t_4w_msa().

◆ hevc_vt_uniwgt_4t_4x8multiple_msa()

static void hevc_vt_uniwgt_4t_4x8multiple_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 3840 of file hevc_mc_uniw_msa.c.

Referenced by hevc_vt_uniwgt_4t_4w_msa().

◆ hevc_vt_uniwgt_4t_4w_msa()

static void hevc_vt_uniwgt_4t_4w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 3926 of file hevc_mc_uniw_msa.c.

◆ hevc_vt_uniwgt_4t_6w_msa()

static void hevc_vt_uniwgt_4t_6w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 3949 of file hevc_mc_uniw_msa.c.

◆ hevc_vt_uniwgt_4t_8x2_msa()

static void hevc_vt_uniwgt_4t_8x2_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 4058 of file hevc_mc_uniw_msa.c.

Referenced by hevc_vt_uniwgt_4t_8w_msa().

◆ hevc_vt_uniwgt_4t_8x4_msa()

static void hevc_vt_uniwgt_4t_8x4_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 4111 of file hevc_mc_uniw_msa.c.

Referenced by hevc_vt_uniwgt_4t_8w_msa().

◆ hevc_vt_uniwgt_4t_8x6_msa()

static void hevc_vt_uniwgt_4t_8x6_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 4177 of file hevc_mc_uniw_msa.c.

Referenced by hevc_vt_uniwgt_4t_8w_msa().

◆ hevc_vt_uniwgt_4t_8x8mult_msa()

static void hevc_vt_uniwgt_4t_8x8mult_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 4262 of file hevc_mc_uniw_msa.c.

Referenced by hevc_vt_uniwgt_4t_8w_msa().

◆ hevc_vt_uniwgt_4t_8w_msa()

static void hevc_vt_uniwgt_4t_8w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 4374 of file hevc_mc_uniw_msa.c.

◆ hevc_vt_uniwgt_4t_12w_msa()

static void hevc_vt_uniwgt_4t_12w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 4400 of file hevc_mc_uniw_msa.c.

◆ hevc_vt_uniwgt_4t_16w_msa()

static void hevc_vt_uniwgt_4t_16w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 4563 of file hevc_mc_uniw_msa.c.

◆ hevc_vt_uniwgt_4t_24w_msa()

static void hevc_vt_uniwgt_4t_24w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 4679 of file hevc_mc_uniw_msa.c.

◆ hevc_vt_uniwgt_4t_32w_msa()

static void hevc_vt_uniwgt_4t_32w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 4837 of file hevc_mc_uniw_msa.c.

◆ hevc_hv_uniwgt_4t_4x2_msa()

static void hevc_hv_uniwgt_4t_4x2_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 4971 of file hevc_mc_uniw_msa.c.

Referenced by hevc_hv_uniwgt_4t_4w_msa().

◆ hevc_hv_uniwgt_4t_4x4_msa()

static void hevc_hv_uniwgt_4t_4x4_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 5040 of file hevc_mc_uniw_msa.c.

Referenced by hevc_hv_uniwgt_4t_4w_msa().

◆ hevc_hv_uniwgt_4t_4multx8mult_msa()

static void hevc_hv_uniwgt_4t_4multx8mult_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 5118 of file hevc_mc_uniw_msa.c.

Referenced by hevc_hv_uniwgt_4t_4w_msa().

◆ hevc_hv_uniwgt_4t_4w_msa()

static void hevc_hv_uniwgt_4t_4w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 5240 of file hevc_mc_uniw_msa.c.

◆ hevc_hv_uniwgt_4t_6w_msa()

static void hevc_hv_uniwgt_4t_6w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 5266 of file hevc_mc_uniw_msa.c.

◆ hevc_hv_uniwgt_4t_8x2_msa()

static void hevc_hv_uniwgt_4t_8x2_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 5425 of file hevc_mc_uniw_msa.c.

Referenced by hevc_hv_uniwgt_4t_8w_msa().

◆ hevc_hv_uniwgt_4t_8multx4_msa()

static void hevc_hv_uniwgt_4t_8multx4_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t width8mult,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 5515 of file hevc_mc_uniw_msa.c.

Referenced by hevc_hv_uniwgt_4t_16w_msa(), and hevc_hv_uniwgt_4t_8w_msa().

◆ hevc_hv_uniwgt_4t_8x6_msa()

static void hevc_hv_uniwgt_4t_8x6_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 5631 of file hevc_mc_uniw_msa.c.

Referenced by hevc_hv_uniwgt_4t_8w_msa().

◆ hevc_hv_uniwgt_4t_8multx4mult_msa()

static void hevc_hv_uniwgt_4t_8multx4mult_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val,
int32_t width8mult )
static

◆ hevc_hv_uniwgt_4t_8w_msa()

static void hevc_hv_uniwgt_4t_8w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 5916 of file hevc_mc_uniw_msa.c.

◆ hevc_hv_uniwgt_4t_12w_msa()

static void hevc_hv_uniwgt_4t_12w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 5947 of file hevc_mc_uniw_msa.c.

◆ hevc_hv_uniwgt_4t_16w_msa()

static void hevc_hv_uniwgt_4t_16w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 6167 of file hevc_mc_uniw_msa.c.

◆ hevc_hv_uniwgt_4t_24w_msa()

static void hevc_hv_uniwgt_4t_24w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 6189 of file hevc_mc_uniw_msa.c.

◆ hevc_hv_uniwgt_4t_32w_msa()

static void hevc_hv_uniwgt_4t_32w_msa ( const uint8_t * src,
int32_t src_stride,
uint8_t * dst,
int32_t dst_stride,
const int8_t * filter_x,
const int8_t * filter_y,
int32_t height,
int32_t weight,
int32_t offset,
int32_t rnd_val )
static

Definition at line 6205 of file hevc_mc_uniw_msa.c.

◆ UNIWGT_MC_COPY() [1/9]

UNIWGT_MC_COPY ( 4 )

◆ UNIWGT_MC_COPY() [2/9]

UNIWGT_MC_COPY ( 6 )

◆ UNIWGT_MC_COPY() [3/9]

UNIWGT_MC_COPY ( 8 )

◆ UNIWGT_MC_COPY() [4/9]

UNIWGT_MC_COPY ( 12 )

◆ UNIWGT_MC_COPY() [5/9]

UNIWGT_MC_COPY ( 16 )

◆ UNIWGT_MC_COPY() [6/9]

UNIWGT_MC_COPY ( 24 )

◆ UNIWGT_MC_COPY() [7/9]

UNIWGT_MC_COPY ( 32 )

◆ UNIWGT_MC_COPY() [8/9]

UNIWGT_MC_COPY ( 48 )

◆ UNIWGT_MC_COPY() [9/9]

UNIWGT_MC_COPY ( 64 )

◆ UNI_W_MC() [1/30]

UNI_W_MC ( qpel ,
h ,
4 ,
8 ,
hz ,
mx  )

◆ UNI_W_MC() [2/30]

UNI_W_MC ( qpel ,
h ,
8 ,
8 ,
hz ,
mx  )

◆ UNI_W_MC() [3/30]

UNI_W_MC ( qpel ,
h ,
12 ,
8 ,
hz ,
mx  )

◆ UNI_W_MC() [4/30]

UNI_W_MC ( qpel ,
h ,
16 ,
8 ,
hz ,
mx  )

◆ UNI_W_MC() [5/30]

UNI_W_MC ( qpel ,
h ,
24 ,
8 ,
hz ,
mx  )

◆ UNI_W_MC() [6/30]

UNI_W_MC ( qpel ,
h ,
32 ,
8 ,
hz ,
mx  )

◆ UNI_W_MC() [7/30]

UNI_W_MC ( qpel ,
h ,
48 ,
8 ,
hz ,
mx  )

◆ UNI_W_MC() [8/30]

UNI_W_MC ( qpel ,
h ,
64 ,
8 ,
hz ,
mx  )

◆ UNI_W_MC() [9/30]

UNI_W_MC ( qpel ,
v ,
4 ,
8 ,
vt ,
my  )

◆ UNI_W_MC() [10/30]

UNI_W_MC ( qpel ,
v ,
8 ,
8 ,
vt ,
my  )

◆ UNI_W_MC() [11/30]

UNI_W_MC ( qpel ,
v ,
12 ,
8 ,
vt ,
my  )

◆ UNI_W_MC() [12/30]

UNI_W_MC ( qpel ,
v ,
16 ,
8 ,
vt ,
my  )

◆ UNI_W_MC() [13/30]

UNI_W_MC ( qpel ,
v ,
24 ,
8 ,
vt ,
my  )

◆ UNI_W_MC() [14/30]

UNI_W_MC ( qpel ,
v ,
32 ,
8 ,
vt ,
my  )

◆ UNI_W_MC() [15/30]

UNI_W_MC ( qpel ,
v ,
48 ,
8 ,
vt ,
my  )

◆ UNI_W_MC() [16/30]

UNI_W_MC ( qpel ,
v ,
64 ,
8 ,
vt ,
my  )

◆ UNI_W_MC() [17/30]

UNI_W_MC ( epel ,
h ,
4 ,
4 ,
hz ,
mx  )

◆ UNI_W_MC() [18/30]

UNI_W_MC ( epel ,
h ,
6 ,
4 ,
hz ,
mx  )

◆ UNI_W_MC() [19/30]

UNI_W_MC ( epel ,
h ,
8 ,
4 ,
hz ,
mx  )

◆ UNI_W_MC() [20/30]

UNI_W_MC ( epel ,
h ,
12 ,
4 ,
hz ,
mx  )

◆ UNI_W_MC() [21/30]

UNI_W_MC ( epel ,
h ,
16 ,
4 ,
hz ,
mx  )

◆ UNI_W_MC() [22/30]

UNI_W_MC ( epel ,
h ,
24 ,
4 ,
hz ,
mx  )

◆ UNI_W_MC() [23/30]

UNI_W_MC ( epel ,
h ,
32 ,
4 ,
hz ,
mx  )

◆ UNI_W_MC() [24/30]

UNI_W_MC ( epel ,
v ,
4 ,
4 ,
vt ,
my  )

◆ UNI_W_MC() [25/30]

UNI_W_MC ( epel ,
v ,
6 ,
4 ,
vt ,
my  )

◆ UNI_W_MC() [26/30]

UNI_W_MC ( epel ,
v ,
8 ,
4 ,
vt ,
my  )

◆ UNI_W_MC() [27/30]

UNI_W_MC ( epel ,
v ,
12 ,
4 ,
vt ,
my  )

◆ UNI_W_MC() [28/30]

UNI_W_MC ( epel ,
v ,
16 ,
4 ,
vt ,
my  )

◆ UNI_W_MC() [29/30]

UNI_W_MC ( epel ,
v ,
24 ,
4 ,
vt ,
my  )

◆ UNI_W_MC() [30/30]

UNI_W_MC ( epel ,
v ,
32 ,
4 ,
vt ,
my  )

◆ UNI_W_MC_HV() [1/15]

UNI_W_MC_HV ( qpel ,
4 ,
8  )

◆ UNI_W_MC_HV() [2/15]

UNI_W_MC_HV ( qpel ,
8 ,
8  )

◆ UNI_W_MC_HV() [3/15]

UNI_W_MC_HV ( qpel ,
12 ,
8  )

◆ UNI_W_MC_HV() [4/15]

UNI_W_MC_HV ( qpel ,
16 ,
8  )

◆ UNI_W_MC_HV() [5/15]

UNI_W_MC_HV ( qpel ,
24 ,
8  )

◆ UNI_W_MC_HV() [6/15]

UNI_W_MC_HV ( qpel ,
32 ,
8  )

◆ UNI_W_MC_HV() [7/15]

UNI_W_MC_HV ( qpel ,
48 ,
8  )

◆ UNI_W_MC_HV() [8/15]

UNI_W_MC_HV ( qpel ,
64 ,
8  )

◆ UNI_W_MC_HV() [9/15]

UNI_W_MC_HV ( epel ,
4 ,
4  )

◆ UNI_W_MC_HV() [10/15]

UNI_W_MC_HV ( epel ,
6 ,
4  )

◆ UNI_W_MC_HV() [11/15]

UNI_W_MC_HV ( epel ,
8 ,
4  )

◆ UNI_W_MC_HV() [12/15]

UNI_W_MC_HV ( epel ,
12 ,
4  )

◆ UNI_W_MC_HV() [13/15]

UNI_W_MC_HV ( epel ,
16 ,
4  )

◆ UNI_W_MC_HV() [14/15]

UNI_W_MC_HV ( epel ,
24 ,
4  )

◆ UNI_W_MC_HV() [15/15]

UNI_W_MC_HV ( epel ,
32 ,
4  )

Variable Documentation

◆ ff_hevc_mask_arr

const uint8_t ff_hevc_mask_arr[16 *2]
static
Initial value:
= {
0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8,
0, 1, 1, 2, 2, 3, 3, 4, 16, 17, 17, 18, 18, 19, 19, 20
}

Definition at line 25 of file hevc_mc_uniw_msa.c.