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 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; \
ILVRL_H2_SW(in0_h, in0_h, in0_r_m, in0_l_m); \
ILVRL_H2_SW(in1_h, in1_h, in1_r_m, in1_l_m); \
DOTP_SH4_SW(in0_r_m, in1_r_m, in0_l_m, in1_l_m, wgt_w, wgt_w, wgt_w, \
wgt_w, in0_r_m, in1_r_m, in0_l_m, in1_l_m); \
SRAR_W4_SW(in0_r_m, in1_r_m, in0_l_m, in1_l_m, rnd_w); \
PCKEV_H2_SH(in0_l_m, in0_r_m, in1_l_m, in1_r_m, out0_h, out1_h); \
ADDS_SH2_SH(out0_h, offset_h, out1_h, offset_h, out0_h, out1_h); \
CLIP_SH2_0_255(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 47 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 5257 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 - 1]; \
int shift = denom + 14 - 8; \
\
hevc_##DIR1##_uniwgt_##TAP##t_##WIDTH##w_msa(src, src_stride, dst, \
dst_stride, filter, height, \
}

Definition at line 5287 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 - 1]; \
const int8_t *filter_y = ff_hevc_##PEL##_filters[my - 1]; \
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 5346 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 57 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 124 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 186 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 281 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 326 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 369 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 422 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 468 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 525 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 588 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 664 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 742 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 836 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 914 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 1007 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 1109 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 1203 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 1294 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 1386 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 1465 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 1679 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 1694 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 1712 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 1727 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 1742 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 1757 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 2044 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 2060 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 2266 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 2282 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 2298 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 2314 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 2330 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 2346 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 2404 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 2461 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 2529 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 2552 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 2633 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 2688 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 2745 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 2815 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 2895 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 2921 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 3001 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 3084 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 3162 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 3249 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 3304 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 3358 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 3434 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 3457 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 3535 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 3586 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 3641 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 3704 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 3783 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 3809 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 3914 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 3996 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 4098 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 4192 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 4256 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 4325 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 4432 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 4458 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 4585 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 4661 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 4756 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 4994 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 5025 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 5203 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 5225 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 5241 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
filter_frame For filters that do not use the this method is called when a frame is pushed to the filter s input It can be called at any time except in a reentrant way If the input frame is enough to produce then the filter should push the output frames on the output link immediately As an exception to the previous rule if the input frame is enough to produce several output frames then the filter needs output only at least one per link The additional frames can be left buffered in the filter
Definition: filter_design.txt:228
width
#define width
weight
static int weight(int i, int blen, int offset)
Definition: diracdec.c:1563
WIDTH
#define WIDTH
Definition: c93.c:44
height
#define height
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
ILVRL_H2_SW
#define ILVRL_H2_SW(...)
Definition: generic_macros_msa.h:1509
shift
static int shift(int a, int b)
Definition: sonic.c:88
_
#define _
src
INIT_CLIP pixel * src
Definition: h264pred_template.c:418