📄 color.h
字号:
#define CF_UMV 1
#define CF_AP 2
#define CF_PB 4
#define CF_SAC 8
#define SF_SQCIF 0
#define SF_QCIF 1
#define SF_CIF 2
#define SF_4CIF 3
#define MAXLENGTH 32768
#define MB_SIZE 16
#define PCT_INTRA 0
#define PCT_INTER 1
#define MODE_INTER 0
#define MODE_INTER_Q 1
#define MODE_INTER4V 2
#define MODE_INTRA 3
#define MODE_INTRA_Q 4
#define QMODE_PI 0
#define QMODE_PB 1
#define PBMODE_NORMAL 0
#define PBMODE_MVDB 1
#define PBMODE_CBPB_MVDB 2
#define ESCAPE 7167
#define MYERROR -1
#define PC_PSC 0x20
#define PC_EOS 0x3f
#define GOB_GBSC 1
#define NO_VEC 999
#define HMB Height/MB_SIZE
#define WMB Width/MB_SIZE
#define DEF_8X8_WIN 2
#define PREF_16_VEC 100
#define DEF_PBDELTA_WIN 2
#define PREF_PBDELTA_NULL_VEC 50
typedef struct ColorYUV
{HANDLE hImage;
BYTE *Image;
BYTE *Y;
BYTE *U;
BYTE *V;
}YUVData;
typedef struct RGB
{BYTE B;
BYTE G;
BYTE R;
}RGBPixel;
const struct format_info
{
int Pixels;
int Lines;
DWORD TotalBytes;
}FormatInfo[5]={{128,96,12288},
{176,144,25344},
{352,288,101376},
{704,576,405504},
{1408,1152,1622016}};
typedef struct motion_vector
{
int x; // Horizontal comp. of mv
int y; // Vertical comp. of mv
int x_half; // Horizontal half-pel acc.
int y_half; // Vertical half-pel acc.
int min_error; // Min error for this vector
int Mode; // Necessary for adv. pred. mode
} MotionVector;
typedef struct picture_layer
{
int PSC;
int TR;
BOOL SplitScreen;
BOOL DocumentCamera;
BOOL FreezePicture;
int SourceFormat;
BOOL PictureType;
BOOL UMVMode;
BOOL SACMode;
BOOL APMode;
BOOL PBMode;
BOOL CPM;
BOOL PLCI;
int PQUANT;
int TRB;
int DBQUANT;
BOOL PEI;
int PSPARE;
int EOS;
}PictureLayerInfo;
typedef struct picture_bits
{
int TotalBits;
int PSCBits;
int TRBits;
int SourceFormatBits;
int CPMBits;
int PLCIBits;
int PQUANTBits;
int TRBBits;
int DBQUANTBits;
int PEIBits;
int PSPAREBits;
int EOSBits;
}PictureLayerBits;
typedef struct gob_layer
{
int GBSC;
int GroupNumber;
int GLCI;
int GFID;
int GQUANT;
}GOBLayerInfo;
typedef struct gob_bits
{
int TotalBits;
int GBSCBits;
int GNBits;
int GLCIBits;
int GFIDBits;
int GQUANTBits;
}GOBLayerBits;
typedef struct mb_layer
{
int COD;
int MCBPC;
int MCBPCCW;
int MODB;
int MODBCW;
int CBPB;
int CBPBCW;
int CBPY;
int CBPYCW;
int DQUANT;
int DQUANTCW;
MotionVector MVD;
int MVDCW;
MotionVector MVD2;
int MVD2CW;
MotionVector MVD3;
int MVD3CW;
MotionVector MVD4;
int MVD4CW;
MotionVector MVDB;
int MVDBCW;
}MBLayerInfo;
typedef struct mb_bits
{
int TotalBits;
int CODBits;
int MCBPCBits;
int MODBBits;
int CBPBBits;
int CBPYBits;
int DQUANTBits;
int MVDBits;
int MVD2Bits;
int MVD3Bits;
int MVD4Bits;
int MVDBBits;
}MBLayerBits;
typedef struct mb_data
{
short lumData[MB_SIZE*MB_SIZE+4];
short *lum;
short CBData[MB_SIZE*MB_SIZE/4+4];
short *CB;
short CRData[MB_SIZE*MB_SIZE/4+4];
short *CR;
}MB_Structure;
typedef struct BYTE_mb_data
{ BYTE lumData[MB_SIZE*MB_SIZE+8];
BYTE *lum;
BYTE CBData[MB_SIZE*MB_SIZE/4+8];
BYTE *CB;
BYTE CRData[MB_SIZE*MB_SIZE/4+8];
BYTE *CR;
}MB_BYTE_Structure;
typedef struct area_intpolate
{ BYTE *LumIntPel;
BYTE *LumXHalf;
BYTE *LumYHalf;
BYTE *LumHalfPel;
BYTE *CBIntPel;
BYTE *CBXHalf;
BYTE *CBYHalf;
BYTE *CBHalfPel;
BYTE *CRIntPel;
BYTE *CRXHalf;
BYTE *CRYHalf;
BYTE *CRHalfPel;
int Pixels;
int Lines;
}AreaInt;
typedef struct
{
int run, level, len;
}DCTtab;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -