📄 dsp_type.h
字号:
#ifndef _DSP_SVP_TYPE_H_
#define _DSP_SVP_TYPE_H_
//typedef int Int ;
typedef unsigned int UInt ;
typedef short int SInt ;
typedef unsigned int U_Int ;
//typedef char Char ;
typedef unsigned char UChar ;
typedef long int LInt ;
#define I_VOP 0 /* vop coding modes */
#define P_VOP 1
#define VERSION 1
#define SCENE_CHANGE_THREADHOLD 30
typedef double Double ;
#define BITSTREAM_ALLOC_SIZE 256
#define VOP_START_CODE 0x1B6
#define VOP_START_CODE_LENGTH 32
#define MAX_NUM_VOS 32
#define MAX_NUM_VOLS 16
#define MODE_INTRA 0
#define MODE_INTER 1
#define MODE_INTRA_Q 2 /* not used currently */
#define MODE_INTER_Q 3 /* not used currently */
#define MODE_INTER4V 4
#define MODE_GMC 5 /* NTT for GMC coding */
#define MODE_GMC_Q 6
#define MB_SIZE 16
#define BLOCK_SIZE 8
#define PCT_INTRA 0
#define PCT_INTER 1
#define PCT_SPRITE 2
#define ABS(x) (((x) < 0) ? -(x) : (x))
//#define MOMCHECK(a) if ((a) == 0) fprintf(stdout, "MOMCHECK failed in file %s, line %i\n", __FILE__, __LINE__)
#ifndef MAX
#define MAX(a,b) (((a) > (b)) ? (a) : (b))
#endif
#ifndef MIN
#define MIN(a,b) (((a) < (b)) ? (a) : (b))
#endif
#define CLIP(a,i,s) (((a) > (s)) ? (s) : MAX(a,i))
#define SIGN(x) (((x) < 0) ? -1 : 1)
#define MARKER_BIT 1
typedef struct
{
char prediction_type; /* VOP prediction type */
// short mod_time_base; /* VOP modulo time base (absolute) */
// short time_inc; /* VOP time increment (relative to last mtb) */
char rounding_type;
short width; /* VOP height (smallest rectangle) */
short height; /* VOP width (smallest rectangle) */
// short size;
char hor_spat_ref; /* -16,for previous recon vop */
char ver_spat_ref; /* -16,for previous recon vop */
// short intra_dc_vlc_thr;
char quantizer; /* VOP quantizer for P-VOPs */
char intra_quantizer; /* VOP quantizer for I-VOPs */
// char vo_id; /* VO Id */
// char ident; /* VOL identifier (for tracking) */
short time_increment_resolution;
short sr_for; /* VOP search range of motion vectors */
char fcode_for; /* VOP dynamic range of motion vectors */
char quant_precision;
char bits_per_pixel;
short modulo_time_base;
}voppara;
typedef struct
{
U_Int code; /* right justified */
UChar len;
} VLCtable;
//mot mot mot mot mot mot mot mot mot
#define DEFAULT_8_WIN 2
#define MBM_INTRA 0
#define MBM_INTER16 1
//#define MBM_SPRITE 3
//#define MBM_INTER8 4//优化时候屏蔽的
//#define MBM_TRANSPARENT 2
//#define MBM_OUT 5
//#define MBM_SKIPPED 6
#define B_SIZE 8
#define INDEX_BIG(x,y) ((x)+(y)*(vop_width))
#define INDEX_NOR(x,y) ((x)+(y)*(MB_SIZE))
#define MV_MAX_ERROR 0x2000000
#ifndef INT_MAX
#define INT_MAX 2147483647 /* maximum (signed) int value */
#endif
#define SKIPP 6
#define BV(p,xdim,h,v,h2,v2) (p[(2*(v)+(v2))*(xdim)+2*(h)+(h2)])
/* 16x16 MV obtainment */
#define MBV_H(h,v) (ph[2*(v)*2*hdim+2*(h)])
#define MBV_V(h,v) (pv[2*(v)*2*hdim+2*(h)])
/* 8x8 MV obtainment */
#define BV_H(h,v,h2,v2) (ph[(2*(v)+(v2))*2*hdim+2*(h)+(h2)])
#define BV_V(h,v,h2,v2) (pv[(2*(v)+(v2))*2*hdim+2*(h)+(h2)])
#endif /* _DSP_SVP_TYPE_H_*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -