⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 skl_mb_c.cpp

📁 mpeg4编解码器
💻 CPP
📖 第 1 页 / 共 4 页
字号:
{  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 + -