vm_common_defs.h
上传用户:enenge
上传日期:2007-01-08
资源大小:96k
文件大小:5k
- #ifndef _VM_COMMON_DEFS_H_
- #define _VM_COMMON_DEFS_H_
- # ifdef __cplusplus
- extern "C" {
- # endif /* __cplusplus */
- #define VERSION 1 /* image structure version */
- # ifdef __cplusplus
- }
- # endif /* __cplusplus */
- /* maximum allowed number of VOs and VOLs */
- #define MAX_NUM_VOS 32
- #define MAX_NUM_VOLS 16
- /* end of bitstream code */
- #define EOB_CODE 1
- #define EOB_CODE_LENGTH 32
- /*** 10/28 TEST */
- /* #define MB_trace_thres 22 */
- #define MB_trace_thres 8193 /* changed */
- /* 10/28 TEST ***/
- #define EXTENDED_PAR 0xF
- /* session layer and vop layer start codes */
- #define SESSION_START_CODE 0x01B0
- #define SESSION_END_CODE 0x01B1
- #define VO_START_CODE 0x8
- #define VO_START_CODE_LENGTH 27
-
- #define VO_HEADER_LENGTH 32 /* lengtho of VO header: VO_START_CODE + VO_ID */
- #define SOL_START_CODE 0x01be
- #define SOL_START_CODE_LENGTH 32
- #define VOL_START_CODE 0x12 /* 25-MAR-97 JDL : according to WD2 */
- #define VOL_START_CODE_LENGTH 28
- #define VOP_START_CODE 0x1B6 /* 25-MAR-97 JDL : according to WD2 */
- #define VOP_START_CODE_LENGTH 32
- #define GROUP_START_CODE 0x01B3 /* 05-05-1997 Minhua Zhou */
- #define GROUP_START_CODE_LENGTH 32 /* 10.12.97 Luis Ducla-Soares */
- #define VOP_ID_CODE_LENGTH 5
- #define VOP_TEMP_REF_CODE_LENGTH 16
- #define USER_DATA_START_CODE 0x01B2 /* Due to N2171 Cl. 2.1.9, MW 23-MAR-1998 */
- #define USER_DATA_START_CODE_LENGTH 32 /* Due to N2171 Cl. 2.1.9, MW 23-MAR-1998 */
- #define START_CODE_PREFIX 0x01 /* Due to N2171 Cl. 2.1.9, MW 23-MAR-1998 */
- #define START_CODE_PREFIX_LENGTH 24 /* Due to N2171 Cl. 2.1.9, MW 23-MAR-1998 */
- #define SHORT_VIDEO_START_MARKER 0x20
- #define SHORT_VIDEO_START_MARKER_LENGTH 22
- #define SHORT_VIDEO_END_MARKER 0x3F
- #define GOB_RESYNC_MARKER 0x01
- #define GOB_RESYNC_MARKER_LENGTH 17
- /* motion and resync markers used in error resilient mode */
- #define DC_MARKER 438273 /* 09.10.97 LDS: according to WD4.0 */
- #define DC_MARKER_LENGTH 19
- #define MOTION_MARKER_COMB 126977 /* 26.04.97 LDS: according to VM7.0 */
- #define MOTION_MARKER_COMB_LENGTH 17
- #define MOTION_MARKER_SEP 81921 /* 26.04.97 LDS: according to VM6.0 */
- #define MOTION_MARKER_SEP_LENGTH 17
- #define RESYNC_MARKER 1 /* 26.04.97 LDS: according to VM6.0 */
- #define RESYNC_MARKER_LENGTH 17
- #define SPRITE_NOT_USED 0
- #define STATIC_SPRITE 1
- #define GMC_SPRITE 2 /* NTT for GMC coding */
- /* macroblock size */
- #define MB_SIZE 16
- /* VOL types */
- #define RECTANGULAR 0
- #define BINARY 1
- #define BINARY_SHAPE_ONLY 2 /* HYUNDAI (Grayscale) */
- #define GREY_SCALE 3 /* HYUNDAI (Grayscale) */
- /* macroblock modes */
- #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 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
- /* (from mot_est.h) */
- #define MBM_OPAQUE 7 /* opaque block value (all pixels 1 or 255) */
- #define MBM_BOUNDARY 8 /* block in the boundary of the shape => transparent */
- #define MBM_FIELD00 9 /* ref(Top)=Top, ref(Bot)=Top */
- #define MBM_FIELD01 10 /* ref(Top)=Top, ref(Bot)=Bot */
- #define MBM_FIELD10 11 /* ref(Top)=Bot, ref(Bot)=Top */
- #define MBM_FIELD11 12 /* ref(Top)=Bot, ref(Bot)=Bot */
- #define MBM_B_MODE 0x07 /* Mode mask */
- #define MBM_B_FWDFRM 0 /* Forward frame prediction */
- #define MBM_B_BAKFRM 1 /* Backward frame prediction */
- #define MBM_B_AVEFRM 2 /* Average (bidirectional) frame prediction */
- #define MBM_B_DIRECT 3 /* Direct mode */
- /* nothing defined */ /* Transparent */
- #define MBM_B_FWDFLD 5 /* Forward field prediction */
- #define MBM_B_BAKFLD 6 /* Backward field prediction */
- #define MBM_B_AVEFLD 7 /* Average (bidirectional) field prediction */
- #define MBM_B_REFFLDS 0xF0 /* Mask of reference file selectors */
- #define MBM_B_FWDTOP 0x10 /* Fwd Top fld reference is bot if set */
- #define MBM_B_FWDBOT 0x20 /* Fwd Bot fld reference is bot if set */
- #define MBM_B_BAKTOP 0x40 /* Bak Top fld reference is bot if set */
- #define MBM_B_BAKBOT 0x80 /* Bak Bot fld reference is bot if set */
-
- /* typedef enum
- {
- MBMODE_INTRA=0,
- MBMODE_INTER16=1,
- MBMODE_INTER8=4,
- MBMODE_TRANSPARENT=2,
- MBMODE_OUT=5,
- MBMODE_SPRITE=3
- } MBMODE; */
- /* (from mot_est.h) */
- #define BINARY_ALPHA 255
- #define BINARY_SHAPE 1
- #define ARB_SHAPE 1
- #define NO_SHAPE_EFFECTS 0
- #define REVERSE_VLC 1 /* 26.04.97 LDS */
- #endif