www.pudn.com > eval-1.2.zip > mpeg-4.h


#ifndef MPEG4_DEF
#define MPEG4_DEF

#define VDO_SC_MIN 0x00
#define VDO_SC_MAX 0x1f

#define VOL_SC_MIN 0x20
#define VOL_SC_MAX 0x2f

#define SYS_SC_MIN 0xc6
#define SYS_SC_MAX 0xff

#define RES_SC_MIN 0x30
#define RES_SC_MAX 0xaf

#define VOS_SC 0xb0
#define VOS_EC 0xb1
#define VO_SC  0xb5

#define UD_SC   0xb2

#define GVOP_SC 0xb3
#define VOP_SC  0xb6

#define VS_ERC  0xb4

#define FBAO_SC  0xba
#define FBAOP_SC 0xbb
#define MO_SC    0xbc
#define MOP_SC   0xbd
#define STO_SC   0xbe
#define TSPL_SC  0xbf
#define TSNRL_SC 0xc0
#define TT_SC    0xc1
#define TSHL_SC  0xc2

#define VDO_SC 0x1000
#define VOL_SC 0x1001
#define SYS_SC 0x1002
#define RES_SC 0x1003

typedef struct {
  unsigned long
    width,
    height;
  unsigned char
    type,
    verid,
    priority,
    aspect,
    shape,
      shape_ex,
    vop_time_inc_res,
    fixed_vop_time_inc;
} VOL_header;

typedef struct {
  unsigned char
    pre,
    hours,
    minutes,
    seconds;
} GVOP_header;

int getsc(char *, unsigned);
int checksc(int);
unsigned nextbits(char *, unsigned);
unsigned skipbits(char *, unsigned);
int VOLheader(char *, unsigned, VOL_header *);
int VOP_not_coded(char *, VOL_header *);
void resetbuf(void);

#endif