FFmpeg
Macros | Functions | Variables
hevc_mc_uniw_msa.c File Reference
#include "libavutil/mips/generic_macros_msa.h"
#include "libavcodec/mips/hevcdsp_mips.h"
#include "libavcodec/mips/hevc_macros_msa.h"

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); \
}

Definition at line 32 of file hevc_mc_uniw_msa.c.

◆ 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.

◆ 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.

◆ 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, \
}

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, \
}

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 ( )

◆ UNIWGT_MC_COPY() [2/9]

UNIWGT_MC_COPY ( )

◆ UNIWGT_MC_COPY() [3/9]

UNIWGT_MC_COPY ( )

◆ 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  ,
,
,
hz  ,
mx   
)

◆ UNI_W_MC() [2/30]

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

◆ UNI_W_MC() [3/30]

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

◆ UNI_W_MC() [4/30]

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

◆ UNI_W_MC() [5/30]

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

◆ UNI_W_MC() [6/30]

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

◆ UNI_W_MC() [7/30]

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

◆ UNI_W_MC() [8/30]

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

◆ UNI_W_MC() [9/30]

UNI_W_MC ( qpel  ,
,
,
,
vt  ,
my   
)

◆ UNI_W_MC() [10/30]

UNI_W_MC ( qpel  ,
,
,
,
vt  ,
my   
)

◆ UNI_W_MC() [11/30]

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

◆ UNI_W_MC() [12/30]

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

◆ UNI_W_MC() [13/30]

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

◆ UNI_W_MC() [14/30]

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

◆ UNI_W_MC() [15/30]

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

◆ UNI_W_MC() [16/30]

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

◆ UNI_W_MC() [17/30]

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

◆ UNI_W_MC() [18/30]

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

◆ UNI_W_MC() [19/30]

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

◆ UNI_W_MC() [20/30]

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

◆ UNI_W_MC() [21/30]

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

◆ UNI_W_MC() [22/30]

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

◆ UNI_W_MC() [23/30]

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

◆ UNI_W_MC() [24/30]

UNI_W_MC ( epel  ,
,
,
,
vt  ,
my   
)

◆ UNI_W_MC() [25/30]

UNI_W_MC ( epel  ,
,
,
,
vt  ,
my   
)

◆ UNI_W_MC() [26/30]

UNI_W_MC ( epel  ,
,
,
,
vt  ,
my   
)

◆ UNI_W_MC() [27/30]

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

◆ UNI_W_MC() [28/30]

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

◆ UNI_W_MC() [29/30]

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

◆ UNI_W_MC() [30/30]

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

◆ UNI_W_MC_HV() [1/15]

UNI_W_MC_HV ( qpel  ,
,
 
)

◆ UNI_W_MC_HV() [2/15]

UNI_W_MC_HV ( qpel  ,
,
 
)

◆ UNI_W_MC_HV() [3/15]

UNI_W_MC_HV ( qpel  ,
12  ,
 
)

◆ UNI_W_MC_HV() [4/15]

UNI_W_MC_HV ( qpel  ,
16  ,
 
)

◆ UNI_W_MC_HV() [5/15]

UNI_W_MC_HV ( qpel  ,
24  ,
 
)

◆ UNI_W_MC_HV() [6/15]

UNI_W_MC_HV ( qpel  ,
32  ,
 
)

◆ UNI_W_MC_HV() [7/15]

UNI_W_MC_HV ( qpel  ,
48  ,
 
)

◆ UNI_W_MC_HV() [8/15]

UNI_W_MC_HV ( qpel  ,
64  ,
 
)

◆ UNI_W_MC_HV() [9/15]

UNI_W_MC_HV ( epel  ,
,
 
)

◆ UNI_W_MC_HV() [10/15]

UNI_W_MC_HV ( epel  ,
,
 
)

◆ UNI_W_MC_HV() [11/15]

UNI_W_MC_HV ( epel  ,
,
 
)

◆ UNI_W_MC_HV() [12/15]

UNI_W_MC_HV ( epel  ,
12  ,
 
)

◆ UNI_W_MC_HV() [13/15]

UNI_W_MC_HV ( epel  ,
16  ,
 
)

◆ UNI_W_MC_HV() [14/15]

UNI_W_MC_HV ( epel  ,
24  ,
 
)

◆ UNI_W_MC_HV() [15/15]

UNI_W_MC_HV ( epel  ,
32  ,
 
)

Variable Documentation

◆ ff_hevc_mask_arr

const uint8_t ff_hevc_mask_arr[16 *2]
static
filter
void(* filter)(uint8_t *src, int stride, int qscale)
Definition: h263dsp.c:29
mx
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t mx
Definition: dsp.h:53
weight
const h264_weight_func weight
Definition: h264dsp_init.c:33
my
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t my
Definition: dsp.h:53
height
#define height
Definition: dsp.h:85
shift
static int shift(int a, int b)
Definition: bonk.c:261
dst
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t int int16_t * dst
Definition: dsp.h:83
WIDTH
#define WIDTH
Definition: c93.c:44
offset
it s the only field you need to keep assuming you have a context There is some magic you don t need to care about around this just let it vf offset
Definition: writing_filters.txt:86
zero
static int zero(InterplayACMContext *s, unsigned ind, unsigned col)
Definition: interplayacm.c:121
ILVRL_H2_SW
#define ILVRL_H2_SW(...)
Definition: generic_macros_msa.h:1509
_
#define _
width
#define width
Definition: dsp.h:85
src
#define src
Definition: vp8dsp.c:248