00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef _ME_DISTORTION_H_
00019 #define _ME_DISTORTION_H_
00020
00021 extern SubImageContainer ref_pic_sub;
00022 extern SubImageContainer ref_pic1_sub;
00023 extern SubImageContainer ref_pic2_sub;
00024
00025 extern short weight1, weight2, offsetBi;
00026 extern int weight_luma, weight_cr[2], offset_luma, offset_cr[2];
00027 extern short weight1_cr[2], weight2_cr[2], offsetBi_cr[2];
00028 extern short img_width, img_height;
00029 extern int test8x8transform;
00030 extern int ChromaMEEnable;
00031
00032 extern int HadamardSAD4x4(int* diff);
00033 extern int HadamardSAD8x8(int* diff);
00034
00035 extern int computeSAD (imgpel* , int, int, int, int, int);
00036 extern int computeSAD4x4 (imgpel* , int, int, int, int, int);
00037 extern int computeSAD4x8 (imgpel* , int, int, int, int, int);
00038 extern int computeSAD8x4 (imgpel* , int, int, int, int, int);
00039 extern int computeSAD8x8 (imgpel* , int, int, int, int, int);
00040 extern int computeSAD8x16 (imgpel* , int, int, int, int, int);
00041 extern int computeSAD16x8 (imgpel* , int, int, int, int, int);
00042 extern int computeSAD16x16(imgpel* , int, int, int, int, int);
00043
00044 extern int computeBiPredSAD1 (imgpel* , int, int, int, int, int, int, int);
00045 extern int computeBiPred4x4SAD1 (imgpel* , int, int, int, int, int, int, int);
00046 extern int computeBiPred4x8SAD1 (imgpel* , int, int, int, int, int, int, int);
00047 extern int computeBiPred8x4SAD1 (imgpel* , int, int, int, int, int, int, int);
00048 extern int computeBiPred8x8SAD1 (imgpel* , int, int, int, int, int, int, int);
00049 extern int computeBiPred8x16SAD1 (imgpel* , int, int, int, int, int, int, int);
00050 extern int computeBiPred16x8SAD1 (imgpel* , int, int, int, int, int, int, int);
00051 extern int computeBiPred16x16SAD1(imgpel* , int, int, int, int, int, int, int);
00052
00053 extern int computeBiPredSATD1 (imgpel* , int, int, int, int, int, int, int);
00054 extern int computeBiPred8x8SATD1 (imgpel* , int, int, int, int, int, int, int);
00055 extern int computeBiPred8x16SATD1 (imgpel* , int, int, int, int, int, int, int);
00056 extern int computeBiPred16x8SATD1 (imgpel* , int, int, int, int, int, int, int);
00057 extern int computeBiPred16x16SATD1(imgpel* , int, int, int, int, int, int, int);
00058
00059 extern int computeSADWP(imgpel* , int, int, int, int, int);
00060 extern int computeBiPredSAD2(imgpel* , int, int, int, int, int, int, int);
00061
00062 extern int computeSATD (imgpel* , int, int, int, int, int);
00063 extern int computeSAT4x4D (imgpel* , int, int, int, int, int);
00064 extern int computeSAT8x8D (imgpel* , int, int, int, int, int);
00065 extern int computeSAT8x8D16x8 (imgpel* , int, int, int, int, int);
00066 extern int computeSAT4x4D16x8 (imgpel* , int, int, int, int, int);
00067 extern int computeSAT8x8D16x16(imgpel* , int, int, int, int, int);
00068 extern int computeSAT4x4D16x16(imgpel* , int, int, int, int, int);
00069
00070 extern int computeSATDWP(imgpel* , int, int, int, int, int);
00071
00072 extern int computeBiPredSATD2(imgpel* , int, int, int, int, int, int, int);
00073 extern int computeSSE(imgpel* , int, int, int, int, int);
00074 extern int computeSSEWP(imgpel* , int, int, int, int, int);
00075 extern int computeBiPredSSE1(imgpel* , int, int, int, int, int, int, int);
00076 extern int computeBiPredSSE2(imgpel* , int, int, int, int, int, int, int);
00077
00078 extern int (*computeUniPred[6])(imgpel* , int , int , int , int , int );
00079 extern int (*computeBiPred) (imgpel* , int , int , int , int , int, int , int);
00080 extern int (*computeBiPred1[3])(imgpel* , int , int , int , int , int, int , int);
00081 extern int (*computeBiPred2[3])(imgpel* , int , int , int , int , int, int , int);
00082
00083 #endif