Initial bulk commit for "Git on MSys"
[msysgit/historical-msysgit.git] / mingw / include / aviriff.h
blob306aa0581753cffb23b58752debc3d1458a8c13b
1 #ifndef _AVIRIFF_H
2 #define _AVIRIFF_H
3 #if __GNUC__ >=3
4 #pragma GCC system_header
5 #endif
7 #ifndef _MMSYSTEM_H
8 #include <mmsystem.h>
9 #endif
10 #ifndef _WINGDI_H
11 #include <wingdi.h>
12 #endif
14 #ifdef __cplusplus
15 extern "C" {
16 #endif
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
84 #ifdef __cplusplus
86 #endif
87 #endif