⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 video.h

📁 MPEG2 PLAYER in linux
💻 H
📖 第 1 页 / 共 2 页
字号:
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 */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -