?? video.h
字號(hào):
typedef struct macroblock { int mb_address; /* Macroblock address. */ int past_mb_addr; /* Previous mblock address. */ int motion_h_forw_code; /* Forw. horiz. motion vector code. */ unsigned int motion_h_forw_r; /* Used in decoding vectors. */ int motion_v_forw_code; /* Forw. vert. motion vector code. */ unsigned int motion_v_forw_r; /* Used in decdoinge vectors. */ int motion_h_back_code; /* Back horiz. motion vector code. */ unsigned int motion_h_back_r; /* Used in decoding vectors. */ int motion_v_back_code; /* Back vert. motion vector code. */ unsigned int motion_v_back_r; /* Used in decoding vectors. */ unsigned int cbp; /* Coded block pattern. */ BOOLEAN mb_intra; /* Intracoded mblock flag. */ BOOLEAN bpict_past_forw; /* Past B frame forw. vector flag. */ BOOLEAN bpict_past_back; /* Past B frame back vector flag. */ int past_intra_addr; /* Addr of last intracoded mblock. */ int recon_right_for_prev; /* Past right forw. vector. */ int recon_down_for_prev; /* Past down forw. vector. */ int recon_right_back_prev; /* Past right back vector. */ int recon_down_back_prev; /* Past down back vector. */} Macroblock;/* Block structure. */typedef struct block { short int dct_recon[8][8]; /* Reconstructed dct coeff matrix. */ short int dct_dc_y_past; /* Past lum. dc dct coefficient. */ short int dct_dc_cr_past; /* Past cr dc dct coefficient. */ short int dct_dc_cb_past; /* Past cb dc dct coefficient. */} Block;/* Video stream structure. */typedef struct vid_stream { unsigned int h_size; /* Horiz. size in pixels. */ unsigned int v_size; /* Vert. size in pixels. */ unsigned int mb_height; /* Vert. size in mblocks. */ unsigned int mb_width; /* Horiz. size in mblocks. */ unsigned char aspect_ratio; /* Code for aspect ratio. */ unsigned char picture_rate; /* Code for picture rate. */ unsigned int bit_rate; /* Bit rate. */ unsigned int vbv_buffer_size; /* Minimum buffer size. */ BOOLEAN const_param_flag; /* Contrained parameter flag. */ unsigned char intra_quant_matrix[8][8]; /* Quantization matrix for intracoded frames. */ unsigned char non_intra_quant_matrix[8][8]; /* Quanitization matrix for non intracoded frames. */ char *ext_data; /* Extension data. */ char *user_data; /* User data. */ GoP group; /* Current group of pict. */ Pict picture; /* Current picture. */ Slice slice; /* Current slice. */ Macroblock mblock; /* Current macroblock. */ Block block; /* Current block. */ int state; /* State of decoding. */ int bit_offset; /* Bit offset in stream. */ unsigned int *buffer; /* Pointer to next byte in buffer. */ int buf_length; /* Length of remaining buffer.*/ unsigned int *buf_start; /* Pointer to buffer start. *//* Brown - beginning of added variables that used to be static or global */ int max_buf_length; /* Max length of buffer. */ int film_has_ended; /* Boolean - film has ended */ int sys_layer; /* -1 uninitialized, 0 video layer, 1 syslayer */ unsigned int num_left; /* from ReadPacket - leftover */ unsigned int leftover_bytes; /* from ReadPacket - leftover */ int EOF_flag; /* stream is EOF */ FILE *input; /* stream comes from here */ long seekValue; /* 0 no seeking >0 do a seek, <0 already has done seek */ BOOLEAN swap; /* from ReadFile */ BOOLEAN Parse_done; /* from read_sys */ int gAudioStreamID; int gVideoStreamID; int gReservedStreamID; int right_for,down_for; /* From ReconPMBlock, video.c */ int right_half_for, down_half_for; unsigned int curBits; /* current bits */ int matched_depth; /* depth of displayed movie */ char *filename; /* Name of stream filename */ int ditherType; /* What type of dithering */ char *ditherFlags; /* flags for MB Ordered dither*/ int totNumFrames; /* Total Number of Frames */ double realTimeStart; /* When did the movie start? *//* Brown - end of added variables */ PictImage *past; /* Past predictive frame. */ PictImage *future; /* Future predictive frame. */ PictImage *current; /* Current frame. */ PictImage *ring[RING_BUF_SIZE]; /* Ring buffer of frames. */ /* x,y size of PPM output file */ int ppm_width, ppm_height, ppm_modulus;} VidStream; typedef struct { XImage *ximage; Colormap cmap; Window window; GC gc; Display *display; int owncmFlag; XSizeHints hints; Visual *visual; int depth; char *name; int ditherType; Window ExistingWindow;} XInfo;/* Declaration of global display pointer. */#if SH_MEM/* Shared memory flag. */extern int shmemFlag;#endif/* Quiet mode flag. */extern int quietFlag;/* Flag controlling the "Press return" prompt */extern int requireKeypressFlag;/* Flag controlling speed vs. quality */extern int qualityFlag;/* Gamma correction stuff */extern int gammaCorrectFlag;extern double gammaCorrect;/* Chroma correction stuff */extern int chromaCorrectFlag;extern double chromaCorrect;/* Definition of Contant integer scale factor. */#define CONST_BITS 13/* Misc DCT definitions */#define DCTSIZE 8 /* The basic DCT block is 8x8 samples */#define DCTSIZE2 64 /* DCTSIZE squared; # of elements in a block */#define GLOBAL /* a function referenced thru EXTERNs */ typedef short DCTELEM;typedef DCTELEM DCTBLOCK[DCTSIZE2]; #ifdef SH_MEMextern int gXErrorFlag;#endifextern int loopFlag;extern int noDisplayFlag;extern int partialFlag, startFrame, endFrame;#ifdef ANALYSISextern unsigned int bitCount;extern int showEachFlag;extern unsigned int cacheHit[8][8];extern unsigned int cacheMiss[8][8];#endif#if !defined(__MIPSEL__) && (defined(MIPSEL) || defined(__MIPSEL) || defined(__MIPSEL__) || defined(__mipsel) || defined(__mipsel__))#define __MIPSEL__ 1#endif#if !defined(__MIPSEB__) && (defined(MIPSEB) || defined(__MIPSEB) || defined(__MIPSEB__) || defined(__mipseb) || defined(__mipseb__))#define __MIPSEB__ 1#endif#if !defined(__SPARC__) && (defined(SPARC) || defined(__SPARC) || defined(__SPARC__) || defined(__sparc) || defined(__sparc__))#define __SPARC__ 1#endif#if !defined(__alpha__) && (defined(ALPHA) || defined(__ALPHA) || defined(__ALPHA__) || defined(__alpha))#define __alpha__ 1#endif#if !defined(__680x0__) && (defined(__680x0) || defined(__680x0__))#define __680x0__ 1#endif#if !defined(__AIX__) && (defined(AIX) || defined(_AIX) || defined(__AIX) || defined(__AIX__))#define __AIX__ 1#endif#if !defined(__RS6000__) && (defined(__AIX__) || defined(RS6000) || defined(_RS6000) || defined(__RS6000) || defined(__RS6000__))#define __RS6000__ 1#endif#if !defined(__HPUX__) && (defined(HPUX) || defined(_HPUX) || defined(__HPUX) || defined(__HPUX__))#define __HPUX__ 1#endif#if !defined(__HPUX__) && (defined(hpux) || defined(_hpux) || defined(__hpux) || defined(__hpux__))#define __HPUX__ 1#endif#if !defined(__VAX__) && (defined(VAX) || defined (__VAX))#define __VAX__ 1#endif#if !defined(__SCO__) && (defined(SCO) || defined(__SCO) || defined(sco) || defined(__sco__))#define __SCO__ 1#endif#if defined(__i386__) || defined(__VAX__) || defined(__MIPSEL__) || defined(__alpha__) || defined(__SCO__)#undef BIG_ENDIAN_ARCHITECTURE#define LITTLE_ENDIAN_ARCHITECTURE 1#endif#if defined(__RS6000__) || defined(__SPARC__) || defined(__680x0__) || defined(__HPUX__) || defined(__MIPSEB__) || defined(convex) || defined(__convex__)#undef LITTLE_ENDIAN_ARCHITECTURE#define BIG_ENDIAN_ARCHITECTURE 1#endif#if !defined(LITTLE_ENDIAN_ARCHITECTURE) && !defined(BIG_ENDIAN_ARCHITECTURE)Error: Unknown endianism of architecture#endif#ifdef __alpha__#define SIXTYFOUR_BIT#endif#endif /* video.h already included */
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -