#ifndef AVI_H #define AVI_H typedef struct { DWORD dwMicroSecPerFrame; DWORD dwMaxBytesPerSec; DWORD dwReserved1; DWORD dwFlags; DWORD dwTotalFrames; DWORD dwInitialFrames; DWORD dwStreams; DWORD dwSuggestedBufferSize; DWORD dwWidth; DWORD dwHeight; DWORD dwScale; DWORD dwRate; DWORD dwStart; DWORD dwLength; } MainAVIHeader; //avi header, from "Video for Windows Programmer's Guide" typedef struct { FOURCC fccType; FOURCC fccHandler; DWORD dwFlags; DWORD dwReserved1; DWORD dwInitialFrames; DWORD dwScale; DWORD dwRate; DWORD dwStart; DWORD dwLength; DWORD dwSuggestedBufferSize; DWORD dwQuality; DWORD dwSampleSize; } AVIStreamHeader;//stream header; from "Video for Windows Programmer's Guide" typedef struct idx1{ DWORD dwChunkid; DWORD dwFlags; DWORD dwOffset; DWORD dwSize; }idx1;//from microsoft.com /* Flags for AVI file index */ #define AVIIF_LIST 0x00000001L #define AVIIF_TWOCC 0x00000002L #define AVIIF_KEYFRAME 0x00000010L #endif