📄 skl_mb_c.cpp
字号:
{ SKL_UINT32 Sad_H = 0, Sad_V = 0, Sad_HV = 0; for(int j=8; j>0; j--) { for(int i=-8; i<0; i++) { SKL_INT32 v1 = Src[8+i] + Src[8+i+1] + 1; SKL_INT32 v2 = Src[8+i+BpS] + Src[8+i+1+BpS] + 1 + v1; v1 = (v1>>1) - Cur[8+i]; v2 = (v2>>2) - Cur[8+i]; Sad_H += ABS(v1); Sad_HV += ABS(v2); SKL_INT32 v3 = Src[8+i+BpS] + Src[8+i] + 1; v3 = (v3>>1) - Cur[8+i]; Sad_V += ABS(v3); } Cur += BpS; Src += BpS; } Sad[0] = Sad_H; Sad[1] = Sad_V; Sad[2] = Sad_HV;}void Skl_SAD_HP_8x8_Rnd1_C(const SKL_BYTE *Cur, const SKL_BYTE *Src, int BpS, SKL_UINT32 Sad[3]){ SKL_UINT32 Sad_H = 0, Sad_V = 0, Sad_HV = 0; for(int j=8; j>0; j--) { for(int i=-8; i<0; i++) { SKL_INT32 v1 = Src[8+i] + Src[8+i+1]; SKL_INT32 v2 = Src[8+i+BpS] + Src[8+i+1+BpS] + 1 + v1; v1 = (v1>>1) - Cur[8+i]; v2 = (v2>>2) - Cur[8+i]; Sad_H += ABS(v1); Sad_HV += ABS(v2); SKL_INT32 v3 = Src[8+i+BpS] + Src[8+i]; v3 = (v3>>1) - Cur[8+i]; Sad_V += ABS(v3); } Cur += BpS; Src += BpS; } Sad[0] = Sad_H; Sad[1] = Sad_V; Sad[2] = Sad_HV;}#undef SAD//////////////////////////////////////////////////////////// C-versionextern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_16_Copy_Rnd1_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_16_Copy_Rnd1_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_16_Copy_Rnd1_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_16_Copy_Rnd1_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_Up_16_Copy_Rnd1_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_Up_16_Copy_Rnd1_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_8_Copy_Rnd1_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_8_Copy_Rnd1_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_8_Copy_Rnd1_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_8_Copy_Rnd1_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_Up_8_Copy_Rnd1_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_Up_8_Copy_Rnd1_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_16_Copy_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_16_Copy_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_16_Copy_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_16_Copy_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_Up_16_Copy_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_Up_16_Copy_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_8_Copy_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_8_Copy_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_8_Copy_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_8_Copy_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_Up_8_Copy_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_Up_8_Copy_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_16_Add_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_16_Add_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_16_Add_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_16_Add_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_Up_16_Add_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_Up_16_Add_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_8_Add_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_8_Add_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_8_Add_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_8_Add_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_Up_8_Add_Rnd0_C);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_Up_8_Add_Rnd0_C);SKL_MB_FUNCS Skl_MB_Funcs_Copy_Rnd1_C = { { Skl_Copy_16x8_FF_C, Skl_Copy_16x8_FH_Rnd1_C, Skl_Copy_16x8_HF_Rnd1_C, Skl_Copy_16x8_HH_Rnd1_C }, { Skl_Copy_8x8_FF_C, Skl_Copy_8x8_FH_Rnd1_C, Skl_Copy_8x8_HF_Rnd1_C, Skl_Copy_8x8_HH_Rnd1_C }, { Skl_Copy_8x4_FF_C, Skl_Copy_8x4_FH_Rnd1_C, Skl_Copy_8x4_HF_Rnd1_C, Skl_Copy_8x4_HH_Rnd1_C }, Skl_H_Pass_16_Copy_Rnd1_C, Skl_H_Pass_Avrg_16_Copy_Rnd1_C, Skl_H_Pass_Avrg_Up_16_Copy_Rnd1_C, Skl_H_Pass_16_Copy_Rnd1_C, Skl_H_Pass_Avrg_16_Copy_Rnd1_C, Skl_H_Pass_Avrg_Up_16_Copy_Rnd1_C, Skl_V_Pass_16_Copy_Rnd1_C, Skl_V_Pass_Avrg_16_Copy_Rnd1_C, Skl_V_Pass_Avrg_Up_16_Copy_Rnd1_C, Skl_H_Pass_8_Copy_Rnd1_C, Skl_H_Pass_Avrg_8_Copy_Rnd1_C, Skl_H_Pass_Avrg_Up_8_Copy_Rnd1_C, Skl_H_Pass_8_Copy_Rnd1_C, Skl_H_Pass_Avrg_8_Copy_Rnd1_C, Skl_H_Pass_Avrg_Up_8_Copy_Rnd1_C, Skl_V_Pass_8_Copy_Rnd1_C, Skl_V_Pass_Avrg_8_Copy_Rnd1_C, Skl_V_Pass_Avrg_Up_8_Copy_Rnd1_C, Skl_SAD_HP_16x16_Rnd1_C, Skl_SAD_HP_8x8_Rnd1_C};SKL_MB_FUNCS Skl_MB_Funcs_Copy_Rnd0_C = { { Skl_Copy_16x8_FF_C, Skl_Copy_16x8_FH_Rnd0_C, Skl_Copy_16x8_HF_Rnd0_C, Skl_Copy_16x8_HH_Rnd0_C }, { Skl_Copy_8x8_FF_C, Skl_Copy_8x8_FH_Rnd0_C, Skl_Copy_8x8_HF_Rnd0_C, Skl_Copy_8x8_HH_Rnd0_C }, { Skl_Copy_8x4_FF_C, Skl_Copy_8x4_FH_Rnd0_C, Skl_Copy_8x4_HF_Rnd0_C, Skl_Copy_8x4_HH_Rnd0_C }, Skl_H_Pass_16_Copy_Rnd0_C, Skl_H_Pass_Avrg_16_Copy_Rnd0_C, Skl_H_Pass_Avrg_Up_16_Copy_Rnd0_C, Skl_H_Pass_16_Copy_Rnd0_C, Skl_H_Pass_Avrg_16_Copy_Rnd0_C, Skl_H_Pass_Avrg_Up_16_Copy_Rnd0_C, Skl_V_Pass_16_Copy_Rnd0_C, Skl_V_Pass_Avrg_16_Copy_Rnd0_C, Skl_V_Pass_Avrg_Up_16_Copy_Rnd0_C, Skl_H_Pass_8_Copy_Rnd0_C, Skl_H_Pass_Avrg_8_Copy_Rnd0_C, Skl_H_Pass_Avrg_Up_8_Copy_Rnd0_C, Skl_H_Pass_8_Copy_Rnd0_C, Skl_H_Pass_Avrg_8_Copy_Rnd0_C, Skl_H_Pass_Avrg_Up_8_Copy_Rnd0_C, Skl_V_Pass_8_Copy_Rnd0_C, Skl_V_Pass_Avrg_8_Copy_Rnd0_C, Skl_V_Pass_Avrg_Up_8_Copy_Rnd0_C, Skl_SAD_HP_16x16_Rnd0_C, Skl_SAD_HP_8x8_Rnd0_C};SKL_MB_FUNCS Skl_MB_Funcs_Add_Rnd0_C = { { Skl_Add_16x8_FF_C, Skl_Add_16x8_FH_Rnd0_C, Skl_Add_16x8_HF_Rnd0_C, Skl_Add_16x8_HH_Rnd0_C }, { Skl_Add_8x8_FF_C, Skl_Add_8x8_FH_Rnd0_C, Skl_Add_8x8_HF_Rnd0_C, Skl_Add_8x8_HH_Rnd0_C }, { Skl_Add_8x4_FF_C, Skl_Add_8x4_FH_Rnd0_C, Skl_Add_8x4_HF_Rnd0_C, Skl_Add_8x4_HH_Rnd0_C }, Skl_H_Pass_16_Add_Rnd0_C, Skl_H_Pass_Avrg_16_Add_Rnd0_C, Skl_H_Pass_Avrg_Up_16_Add_Rnd0_C, Skl_H_Pass_16_Copy_Rnd0_C, Skl_H_Pass_Avrg_16_Copy_Rnd0_C, Skl_H_Pass_Avrg_Up_16_Copy_Rnd0_C, Skl_V_Pass_16_Add_Rnd0_C, Skl_V_Pass_Avrg_16_Add_Rnd0_C, Skl_V_Pass_Avrg_Up_16_Add_Rnd0_C, Skl_H_Pass_8_Add_Rnd0_C, Skl_H_Pass_Avrg_8_Add_Rnd0_C, Skl_H_Pass_Avrg_Up_8_Add_Rnd0_C, Skl_H_Pass_8_Copy_Rnd0_C, Skl_H_Pass_Avrg_8_Copy_Rnd0_C, Skl_H_Pass_Avrg_Up_8_Copy_Rnd0_C, Skl_V_Pass_8_Add_Rnd0_C, Skl_V_Pass_Avrg_8_Add_Rnd0_C, Skl_V_Pass_Avrg_Up_8_Add_Rnd0_C, Skl_SAD_HP_16x16_Rnd0_C, Skl_SAD_HP_8x8_Rnd0_C};//////////////////////////////////////////////////////////// Ref version with basic Q-Pel funcsextern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_16_Copy_Rnd1_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_16_Copy_Rnd1_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_16_Copy_Rnd1_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_16_Copy_Rnd1_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_Up_16_Copy_Rnd1_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_Up_16_Copy_Rnd1_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_8_Copy_Rnd1_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_8_Copy_Rnd1_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_8_Copy_Rnd1_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_8_Copy_Rnd1_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_Up_8_Copy_Rnd1_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_Up_8_Copy_Rnd1_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_16_Copy_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_16_Copy_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_16_Copy_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_16_Copy_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_Up_16_Copy_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_Up_16_Copy_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_8_Copy_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_8_Copy_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_8_Copy_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_8_Copy_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_Up_8_Copy_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_Up_8_Copy_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_16_Add_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_16_Add_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_16_Add_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_16_Add_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_Up_16_Add_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_Up_16_Add_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_8_Add_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_8_Add_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_8_Add_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_8_Add_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_Up_8_Add_Rnd0_Ref);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_Up_8_Add_Rnd0_Ref);//////////////////////////////////////////////////////////SKL_MB_FUNCS Skl_MB_Funcs_Copy_Rnd1_Ref = { { Skl_Copy_16x8_FF_C, Skl_Copy_16x8_FH_Rnd1_C, Skl_Copy_16x8_HF_Rnd1_C, Skl_Copy_16x8_HH_Rnd1_C }, { Skl_Copy_8x8_FF_C, Skl_Copy_8x8_FH_Rnd1_C, Skl_Copy_8x8_HF_Rnd1_C, Skl_Copy_8x8_HH_Rnd1_C }, { Skl_Copy_8x4_FF_C, Skl_Copy_8x4_FH_Rnd1_C, Skl_Copy_8x4_HF_Rnd1_C, Skl_Copy_8x4_HH_Rnd1_C }, Skl_H_Pass_16_Copy_Rnd1_Ref, Skl_H_Pass_Avrg_16_Copy_Rnd1_Ref, Skl_H_Pass_Avrg_Up_16_Copy_Rnd1_Ref, Skl_H_Pass_16_Copy_Rnd1_Ref, Skl_H_Pass_Avrg_16_Copy_Rnd1_Ref, Skl_H_Pass_Avrg_Up_16_Copy_Rnd1_Ref, Skl_V_Pass_16_Copy_Rnd1_Ref, Skl_V_Pass_Avrg_16_Copy_Rnd1_Ref, Skl_V_Pass_Avrg_Up_16_Copy_Rnd1_Ref, Skl_H_Pass_8_Copy_Rnd1_Ref, Skl_H_Pass_Avrg_8_Copy_Rnd1_Ref, Skl_H_Pass_Avrg_Up_8_Copy_Rnd1_Ref, Skl_H_Pass_8_Copy_Rnd1_Ref, Skl_H_Pass_Avrg_8_Copy_Rnd1_Ref, Skl_H_Pass_Avrg_Up_8_Copy_Rnd1_Ref, Skl_V_Pass_8_Copy_Rnd1_Ref, Skl_V_Pass_Avrg_8_Copy_Rnd1_Ref, Skl_V_Pass_Avrg_Up_8_Copy_Rnd1_Ref, Skl_SAD_HP_16x16_Rnd1_C, Skl_SAD_HP_8x8_Rnd1_C};SKL_MB_FUNCS Skl_MB_Funcs_Copy_Rnd0_Ref = { { Skl_Copy_16x8_FF_C, Skl_Copy_16x8_FH_Rnd0_C, Skl_Copy_16x8_HF_Rnd0_C, Skl_Copy_16x8_HH_Rnd0_C }, { Skl_Copy_8x8_FF_C, Skl_Copy_8x8_FH_Rnd0_C, Skl_Copy_8x8_HF_Rnd0_C, Skl_Copy_8x8_HH_Rnd0_C }, { Skl_Copy_8x4_FF_C, Skl_Copy_8x4_FH_Rnd0_C, Skl_Copy_8x4_HF_Rnd0_C, Skl_Copy_8x4_HH_Rnd0_C }, Skl_H_Pass_16_Copy_Rnd0_Ref, Skl_H_Pass_Avrg_16_Copy_Rnd0_Ref, Skl_H_Pass_Avrg_Up_16_Copy_Rnd0_Ref, Skl_H_Pass_16_Copy_Rnd0_Ref, Skl_H_Pass_Avrg_16_Copy_Rnd0_Ref, Skl_H_Pass_Avrg_Up_16_Copy_Rnd0_Ref, Skl_V_Pass_16_Copy_Rnd0_Ref, Skl_V_Pass_Avrg_16_Copy_Rnd0_Ref, Skl_V_Pass_Avrg_Up_16_Copy_Rnd0_Ref, Skl_H_Pass_8_Copy_Rnd0_Ref, Skl_H_Pass_Avrg_8_Copy_Rnd0_Ref, Skl_H_Pass_Avrg_Up_8_Copy_Rnd0_Ref, Skl_H_Pass_8_Copy_Rnd0_Ref, Skl_H_Pass_Avrg_8_Copy_Rnd0_Ref, Skl_H_Pass_Avrg_Up_8_Copy_Rnd0_Ref, Skl_V_Pass_8_Copy_Rnd0_Ref, Skl_V_Pass_Avrg_8_Copy_Rnd0_Ref, Skl_V_Pass_Avrg_Up_8_Copy_Rnd0_Ref, Skl_SAD_HP_16x16_Rnd0_C, Skl_SAD_HP_8x8_Rnd0_C};SKL_MB_FUNCS Skl_MB_Funcs_Add_Rnd0_Ref = { { Skl_Add_16x8_FF_C, Skl_Add_16x8_FH_Rnd0_C, Skl_Add_16x8_HF_Rnd0_C, Skl_Add_16x8_HH_Rnd0_C }, { Skl_Add_8x8_FF_C, Skl_Add_8x8_FH_Rnd0_C, Skl_Add_8x8_HF_Rnd0_C, Skl_Add_8x8_HH_Rnd0_C }, { Skl_Add_8x4_FF_C, Skl_Add_8x4_FH_Rnd0_C, Skl_Add_8x4_HF_Rnd0_C, Skl_Add_8x4_HH_Rnd0_C }, Skl_H_Pass_16_Add_Rnd0_Ref, Skl_H_Pass_Avrg_16_Add_Rnd0_Ref, Skl_H_Pass_Avrg_Up_16_Add_Rnd0_Ref, Skl_H_Pass_16_Copy_Rnd0_Ref, Skl_H_Pass_Avrg_16_Copy_Rnd0_Ref, Skl_H_Pass_Avrg_Up_16_Copy_Rnd0_Ref, Skl_V_Pass_16_Add_Rnd0_Ref, Skl_V_Pass_Avrg_16_Add_Rnd0_Ref, Skl_V_Pass_Avrg_Up_16_Add_Rnd0_Ref, Skl_H_Pass_8_Add_Rnd0_Ref, Skl_H_Pass_Avrg_8_Add_Rnd0_Ref, Skl_H_Pass_Avrg_Up_8_Add_Rnd0_Ref, Skl_H_Pass_8_Copy_Rnd0_Ref, Skl_H_Pass_Avrg_8_Copy_Rnd0_Ref, Skl_H_Pass_Avrg_Up_8_Copy_Rnd0_Ref , Skl_V_Pass_8_Add_Rnd0_Ref, Skl_V_Pass_Avrg_8_Add_Rnd0_Ref, Skl_V_Pass_Avrg_Up_8_Add_Rnd0_Ref, Skl_SAD_HP_16x16_Rnd0_C, Skl_SAD_HP_8x8_Rnd0_C};//////////////////////////////////////////////////////////// x86-ASM version#ifdef SKL_USE_ASMextern MB_FUNC(Skl_Add_8x8_FF_x86);extern MB_FUNC(Skl_Add_8x8_FH_Rnd0_x86);extern MB_FUNC(Skl_Add_8x8_HF_Rnd0_x86);extern MB_FUNC(Skl_Add_8x8_HH_Rnd0_x86);extern MB_FUNC(Skl_Add_16x8_FF_x86);extern MB_FUNC(Skl_Add_16x8_FH_Rnd0_x86);extern MB_FUNC(Skl_Add_16x8_HF_Rnd0_x86);extern MB_FUNC(Skl_Add_16x8_HH_Rnd0_x86);extern MB_FUNC(Skl_Copy_8x8_FF_x86);extern MB_FUNC(Skl_Copy_8x8_FH_Rnd1_x86);extern MB_FUNC(Skl_Copy_8x8_HF_Rnd1_x86);extern MB_FUNC(Skl_Copy_8x8_HH_Rnd1_x86);extern MB_FUNC(Skl_Copy_8x8_FH_Rnd0_x86);extern MB_FUNC(Skl_Copy_8x8_HF_Rnd0_x86);extern MB_FUNC(Skl_Copy_8x8_HH_Rnd0_x86);extern MB_FUNC(Skl_Copy_16x8_FF_x86);extern MB_FUNC(Skl_Copy_16x8_FH_Rnd1_x86);extern MB_FUNC(Skl_Copy_16x8_HF_Rnd1_x86);extern MB_FUNC(Skl_Copy_16x8_HH_Rnd1_x86);extern MB_FUNC(Skl_Copy_16x8_FH_Rnd0_x86);extern MB_FUNC(Skl_Copy_16x8_HF_Rnd0_x86);extern MB_FUNC(Skl_Copy_16x8_HH_Rnd0_x86);extern SKL_MB_FUNCS Skl_MB_Funcs_Add_x86;extern SKL_MB_FUNCS Skl_MB_Funcs_Copy_x86;SKL_MB_FUNCS Skl_MB_Funcs_Copy_Rnd1_x86 = { { Skl_Copy_16x8_FF_x86, Skl_Copy_16x8_FH_Rnd1_x86, Skl_Copy_16x8_HF_Rnd1_x86, Skl_Copy_16x8_HH_Rnd1_x86 }, { Skl_Copy_8x8_FF_x86, Skl_Copy_8x8_FH_Rnd1_x86, Skl_Copy_8x8_HF_Rnd1_x86, Skl_Copy_8x8_HH_Rnd1_x86 }, { Skl_Copy_8x4_FF_C, Skl_Copy_8x4_FH_Rnd1_C, Skl_Copy_8x4_HF_Rnd1_C, Skl_Copy_8x4_HH_Rnd1_C }, Skl_H_Pass_16_Copy_Rnd1_C, Skl_H_Pass_Avrg_16_Copy_Rnd1_C, Skl_H_Pass_Avrg_Up_16_Copy_Rnd1_C, Skl_H_Pass_16_Copy_Rnd1_C, Skl_H_Pass_Avrg_16_Copy_Rnd1_C, Skl_H_Pass_Avrg_Up_16_Copy_Rnd1_C, Skl_V_Pass_16_Copy_Rnd1_C, Skl_V_Pass_Avrg_16_Copy_Rnd1_C, Skl_V_Pass_Avrg_Up_16_Copy_Rnd1_C, Skl_H_Pass_8_Copy_Rnd1_C, Skl_H_Pass_Avrg_8_Copy_Rnd1_C, Skl_H_Pass_Avrg_Up_8_Copy_Rnd1_C, Skl_H_Pass_8_Copy_Rnd1_C, Skl_H_Pass_Avrg_8_Copy_Rnd1_C, Skl_H_Pass_Avrg_Up_8_Copy_Rnd1_C, Skl_V_Pass_8_Copy_Rnd1_C, Skl_V_Pass_Avrg_8_Copy_Rnd1_C, Skl_V_Pass_Avrg_Up_8_Copy_Rnd1_C, Skl_SAD_HP_16x16_Rnd1_C, Skl_SAD_HP_8x8_Rnd1_C};SKL_MB_FUNCS Skl_MB_Funcs_Copy_Rnd0_x86 = { { Skl_Copy_16x8_FF_x86, Skl_Copy_16x8_FH_Rnd0_x86, Skl_Copy_16x8_HF_Rnd0_x86, Skl_Copy_16x8_HH_Rnd0_x86 }, { Skl_Copy_8x8_FF_x86, Skl_Copy_8x8_FH_Rnd0_x86, Skl_Copy_8x8_HF_Rnd0_x86, Skl_Copy_8x8_HH_Rnd0_x86 }, { Skl_Copy_8x4_FF_C, Skl_Copy_8x4_FH_Rnd0_C, Skl_Copy_8x4_HF_Rnd0_C, Skl_Copy_8x4_HH_Rnd0_C }, Skl_H_Pass_16_Copy_Rnd0_C, Skl_H_Pass_Avrg_16_Copy_Rnd0_C, Skl_H_Pass_Avrg_Up_16_Copy_Rnd0_C, Skl_H_Pass_16_Copy_Rnd0_C, Skl_H_Pass_Avrg_16_Copy_Rnd0_C, Skl_H_Pass_Avrg_Up_16_Copy_Rnd0_C, Skl_V_Pass_16_Copy_Rnd0_C, Skl_V_Pass_Avrg_16_Copy_Rnd0_C, Skl_V_Pass_Avrg_Up_16_Copy_Rnd0_C, Skl_H_Pass_8_Copy_Rnd0_C, Skl_H_Pass_Avrg_8_Copy_Rnd0_C, Skl_H_Pass_Avrg_Up_8_Copy_Rnd0_C, Skl_H_Pass_8_Copy_Rnd0_C, Skl_H_Pass_Avrg_8_Copy_Rnd0_C, Skl_H_Pass_Avrg_Up_8_Copy_Rnd0_C, Skl_V_Pass_8_Copy_Rnd0_C, Skl_V_Pass_Avrg_8_Copy_Rnd0_C, Skl_V_Pass_Avrg_Up_8_Copy_Rnd0_C, Skl_SAD_HP_16x16_Rnd0_C, Skl_SAD_HP_8x8_Rnd0_C};SKL_MB_FUNCS Skl_MB_Funcs_Add_Rnd0_x86 = { { Skl_Add_16x8_FF_x86, Skl_Add_16x8_FH_Rnd0_x86, Skl_Add_16x8_HF_Rnd0_x86, Skl_Add_16x8_HH_Rnd0_x86 }, { Skl_Add_8x8_FF_x86, Skl_Add_8x8_FH_Rnd0_x86, Skl_Add_8x8_HF_Rnd0_x86, Skl_Add_8x8_HH_Rnd0_x86 }, { Skl_Add_8x4_FF_C, Skl_Add_8x4_FH_Rnd0_C, Skl_Add_8x4_HF_Rnd0_C, Skl_Add_8x4_HH_Rnd0_C }, Skl_H_Pass_16_Add_Rnd0_C, Skl_H_Pass_Avrg_16_Add_Rnd0_C, Skl_H_Pass_Avrg_Up_16_Add_Rnd0_C, Skl_H_Pass_16_Copy_Rnd0_C, Skl_H_Pass_Avrg_16_Copy_Rnd0_C, Skl_H_Pass_Avrg_Up_16_Copy_Rnd0_C, Skl_V_Pass_16_Add_Rnd0_C, Skl_V_Pass_Avrg_16_Add_Rnd0_C, Skl_V_Pass_Avrg_Up_16_Add_Rnd0_C, Skl_H_Pass_8_Add_Rnd0_C, Skl_H_Pass_Avrg_8_Add_Rnd0_C, Skl_H_Pass_Avrg_Up_8_Add_Rnd0_C, Skl_H_Pass_8_Copy_Rnd0_C, Skl_H_Pass_Avrg_8_Copy_Rnd0_C, Skl_H_Pass_Avrg_Up_8_Copy_Rnd0_C, Skl_V_Pass_8_Add_Rnd0_C, Skl_V_Pass_Avrg_8_Add_Rnd0_C, Skl_V_Pass_Avrg_Up_8_Add_Rnd0_C, Skl_SAD_HP_16x16_Rnd0_C, Skl_SAD_HP_8x8_Rnd0_C};//////////////////////////////////////////////////////////// MMX versionextern SKL_MB_FUNCS Skl_MB_Funcs_Add_MMX;extern SKL_MB_FUNCS Skl_MB_Funcs_Copy_MMX;extern MB_FUNC(Skl_Add_8x4_FF_MMX);extern MB_FUNC(Skl_Add_8x4_FH_Rnd0_MMX);extern MB_FUNC(Skl_Add_8x4_HF_Rnd0_MMX);extern MB_FUNC(Skl_Add_8x4_HH_Rnd0_MMX);extern MB_FUNC(Skl_Add_8x8_FF_MMX);extern MB_FUNC(Skl_Add_8x8_FH_Rnd0_MMX);extern MB_FUNC(Skl_Add_8x8_HF_Rnd0_MMX);extern MB_FUNC(Skl_Add_8x8_HH_Rnd0_MMX);extern MB_FUNC(Skl_Add_16x8_FF_MMX);extern MB_FUNC(Skl_Add_16x8_FH_Rnd0_MMX);extern MB_FUNC(Skl_Add_16x8_HF_Rnd0_MMX);extern MB_FUNC(Skl_Add_16x8_HH_Rnd0_MMX);extern MB_FUNC(Skl_Copy_8x4_FF_MMX);extern MB_FUNC(Skl_Copy_8x4_FH_Rnd1_MMX);extern MB_FUNC(Skl_Copy_8x4_HF_Rnd1_MMX);extern MB_FUNC(Skl_Copy_8x4_HH_Rnd1_MMX);extern MB_FUNC(Skl_Copy_8x4_FH_Rnd0_MMX);extern MB_FUNC(Skl_Copy_8x4_HF_Rnd0_MMX);extern MB_FUNC(Skl_Copy_8x4_HH_Rnd0_MMX);extern MB_FUNC(Skl_Copy_8x8_FF_MMX);extern MB_FUNC(Skl_Copy_8x8_FH_Rnd1_MMX);extern MB_FUNC(Skl_Copy_8x8_HF_Rnd1_MMX);extern MB_FUNC(Skl_Copy_8x8_HH_Rnd1_MMX);extern MB_FUNC(Skl_Copy_8x8_FH_Rnd0_MMX);extern MB_FUNC(Skl_Copy_8x8_HF_Rnd0_MMX);extern MB_FUNC(Skl_Copy_8x8_HH_Rnd0_MMX);extern MB_FUNC(Skl_Copy_16x8_FF_MMX);extern MB_FUNC(Skl_Copy_16x8_FH_Rnd1_MMX);extern MB_FUNC(Skl_Copy_16x8_HF_Rnd1_MMX);extern MB_FUNC(Skl_Copy_16x8_HH_Rnd1_MMX);extern MB_FUNC(Skl_Copy_16x8_FH_Rnd0_MMX);extern MB_FUNC(Skl_Copy_16x8_HF_Rnd0_MMX);extern MB_FUNC(Skl_Copy_16x8_HH_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_16_Copy_Rnd1_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_16_Copy_Rnd1_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_16_Copy_Rnd1_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_16_Copy_Rnd1_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_Up_16_Copy_Rnd1_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_Up_16_Copy_Rnd1_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_8_Copy_Rnd1_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_8_Copy_Rnd1_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_8_Copy_Rnd1_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_8_Copy_Rnd1_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_Up_8_Copy_Rnd1_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_Up_8_Copy_Rnd1_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_16_Copy_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_16_Copy_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_16_Copy_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_16_Copy_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_Up_16_Copy_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_Up_16_Copy_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_8_Copy_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_8_Copy_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_8_Copy_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_8_Copy_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_Up_8_Copy_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_Up_8_Copy_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_16_Add_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_16_Add_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_16_Add_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_16_Add_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_Up_16_Add_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_Up_16_Add_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_8_Add_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_8_Add_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_8_Add_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_V_Pass_Avrg_8_Add_Rnd0_MMX);extern SKL_MB_QP_PASS_SIGNATURE(Skl_H_Pass_Avrg_Up_8_Add_Rnd0_MMX);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -