1 |
#ifndef _AVIRIFF_H |
2 |
#define _AVIRIFF_H |
3 |
#if __GNUC__ >=3 |
4 |
#pragma GCC system_header |
5 |
#endif |
6 |
|
7 |
#ifndef _MMSYSTEM_H |
8 |
#include <mmsystem.h> |
9 |
#endif |
10 |
#ifndef _WINGDI_H |
11 |
#include <wingdi.h> |
12 |
#endif |
13 |
|
14 |
#ifdef __cplusplus |
15 |
extern "C" { |
16 |
#endif |
17 |
|
18 |
/*--- DirectShow Reference - DirectShow Structures */ |
19 |
typedef struct _avimainheader { |
20 |
FOURCC fcc; |
21 |
DWORD cb; |
22 |
DWORD dwMicroSecPerFrame; |
23 |
DWORD dwMaxBytesPerSec; |
24 |
DWORD dwPaddingGranularity; |
25 |
DWORD dwFlags; |
26 |
DWORD dwTotalFrames; |
27 |
DWORD dwInitialFrames; |
28 |
DWORD dwStreams; |
29 |
DWORD dwSuggestedBufferSize; |
30 |
DWORD dwWidth; |
31 |
DWORD dwHeight; |
32 |
DWORD dwReserved[4]; |
33 |
} AVIMAINHEADER; |
34 |
#define AVIF_COPYRIGHTED 0x00020000 |
35 |
#define AVIF_HASINDEX 0x00000010 |
36 |
#define AVIF_ISINTERLEAVED 0x00000100 |
37 |
#define AVIF_MUSTUSEINDEX 0x00000020 |
38 |
#define AVIF_WASCAPTUREFILE 0x00010000 |
39 |
typedef struct _avioldindex { |
40 |
FOURCC fcc; |
41 |
DWORD cb; |
42 |
struct _avioldindex_entry { |
43 |
DWORD dwChunkId; |
44 |
DWORD dwFlags; |
45 |
DWORD dwOffset; |
46 |
DWORD dwSize; |
47 |
} aIndex[]; |
48 |
} AVIOLDINDEX; |
49 |
#define AVIIF_LIST 0x00000001 |
50 |
#define AVIIF_KEYFRAME 0x00000010 |
51 |
#define AVIIF_NO_TIME 0x00000100 |
52 |
typedef struct { |
53 |
BYTE bFirstEntry; |
54 |
BYTE bNumEntries; |
55 |
WORD wFlags; |
56 |
PALETTEENTRY peNew[]; |
57 |
} AVIPALCHANGE; |
58 |
typedef struct _avistreamheader { |
59 |
FOURCC fcc; |
60 |
DWORD cb; |
61 |
FOURCC fccType; |
62 |
FOURCC fccHandler; |
63 |
DWORD dwFlags; |
64 |
WORD wPriority; |
65 |
WORD wLanguage; |
66 |
DWORD dwInitialFrames; |
67 |
DWORD dwScale; |
68 |
DWORD dwRate; |
69 |
DWORD dwStart; |
70 |
DWORD dwLength; |
71 |
DWORD dwSuggestedBufferSize; |
72 |
DWORD dwQuality; |
73 |
DWORD dwSampleSize; |
74 |
struct { |
75 |
short int left; |
76 |
short int top; |
77 |
short int right; |
78 |
short int bottom; |
79 |
} rcFrame; |
80 |
} AVISTREAMHEADER; |
81 |
#define AVISF_DISABLED 0x00000001 |
82 |
#define AVISF_VIDEO_PALCHANGES 0x00010000 |
83 |
|
84 |
#ifdef __cplusplus |
85 |
} |
86 |
#endif |
87 |
#endif |