[svn] / branches / dev-api-4 / xvidcore / vfw / src / w32api / vfw.h Repository:
ViewVC logotype

Annotation of /branches/dev-api-4/xvidcore/vfw/src/w32api/vfw.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1170 - (view) (download)

1 : edgomez 1170 #ifndef _INC_VFW
2 :     #define _INC_VFW
3 :    
4 :     #include <mmsystem.h>
5 :    
6 :     #ifndef aviTWOCC
7 :     #define aviTWOCC(C0,C1) ((WORD)(BYTE)(C0)|((WORD)(BYTE)(C1) << 8))
8 :     #endif
9 :    
10 :     #ifndef ICTYPE_VIDEO
11 :     #define ICTYPE_VIDEO mmioFOURCC('v', 'i', 'd', 'c')
12 :     #define ICTYPE_AUDIO mmioFOURCC('a', 'u', 'd', 'c')
13 :     #endif
14 :    
15 :     #ifndef ICERR_OK
16 :     #define ICERR_OK 0L
17 :     #define ICERR_DONTDRAW 1L
18 :     #define ICERR_NEWPALETTE 2L
19 :     #define ICERR_GOTOKEYFRAME 3L
20 :     #define ICERR_STOPDRAWING 4L
21 :    
22 :     #define ICERR_UNSUPPORTED -1L
23 :     #define ICERR_BADFORMAT -2L
24 :     #define ICERR_MEMORY -3L
25 :     #define ICERR_INTERNAL -4L
26 :     #define ICERR_BADFLAGS -5L
27 :     #define ICERR_BADPARAM -6L
28 :     #define ICERR_BADSIZE -7L
29 :     #define ICERR_BADHANDLE -8L
30 :     #define ICERR_CANTUPDATE -9L
31 :     #define ICERR_ABORT -10L
32 :     #define ICERR_ERROR -100L
33 :     #define ICERR_BADBITDEPTH -200L
34 :     #define ICERR_BADIMAGESIZE -201L
35 :    
36 :     #define ICERR_CUSTOM -400L
37 :     #endif
38 :    
39 :     #ifndef ICMODE_COMPRESS
40 :     #define ICMODE_COMPRESS 1
41 :     #define ICMODE_DECOMPRESS 2
42 :     #define ICMODE_FASTDECOMPRESS 3
43 :     #define ICMODE_QUERY 4
44 :     #define ICMODE_FASTCOMPRESS 5
45 :     #define ICMODE_DRAW 8
46 :     #endif
47 :    
48 :     #define AVIIF_LIST 0x00000001L
49 :     #define AVIIF_TWOCC 0x00000002L
50 :     #define AVIIF_KEYFRAME 0x00000010L
51 :    
52 :     #define ICCOMPRESS_KEYFRAME 0x00000001L
53 :    
54 :     typedef struct {
55 :     DWORD dwFlags;
56 :     LPBITMAPINFOHEADER lpbiOutput;
57 :     LPVOID lpOutput;
58 :     LPBITMAPINFOHEADER lpbiInput;
59 :     LPVOID lpInput;
60 :     LPDWORD lpckid;
61 :     LPDWORD lpdwFlags;
62 :     LONG lFrameNum;
63 :     DWORD dwFrameSize;
64 :     DWORD dwQuality;
65 :     LPBITMAPINFOHEADER lpbiPrev;
66 :     LPVOID lpPrev;
67 :     } ICCOMPRESS;
68 :    
69 :     #define ICCOMPRESSFRAMES_PADDING 0x00000001
70 :    
71 :     typedef struct {
72 :     DWORD dwFlags;
73 :     LPBITMAPINFOHEADER lpbiOutput;
74 :     LPARAM lOutput;
75 :     LPBITMAPINFOHEADER lpbiInput;
76 :     LPARAM lInput;
77 :     LONG lStartFrame;
78 :     LONG lFrameCount;
79 :     LONG lQuality;
80 :     LONG lDataRate;
81 :     LONG lKeyRate;
82 :     DWORD dwRate;
83 :     DWORD dwScale;
84 :     DWORD dwOverheadPerFrame;
85 :     DWORD dwReserved2;
86 :     LONG (CALLBACK *GetData)(LPARAM,LONG,LPVOID,LONG);
87 :     LONG (CALLBACK *PutData)(LPARAM,LONG,LPVOID,LONG);
88 :     } ICCOMPRESSFRAMES;
89 :    
90 :     #define ICDECOMPRESS_HURRYUP 0x80000000L
91 :     #define ICDECOMPRESS_UPDATE 0x40000000L
92 :     #define ICDECOMPRESS_PREROLL 0x20000000L
93 :     #define ICDECOMPRESS_NULLFRAME 0x10000000L
94 :     #define ICDECOMPRESS_NOTKEYFRAME 0x08000000L
95 :    
96 :     typedef struct {
97 :     DWORD dwFlags;
98 :     LPBITMAPINFOHEADER lpbiInput;
99 :     LPVOID lpInput;
100 :     LPBITMAPINFOHEADER lpbiOutput;
101 :     LPVOID lpOutput;
102 :     DWORD ckid;
103 :     } ICDECOMPRESS;
104 :    
105 :     typedef struct {
106 :     DWORD dwSize;
107 :     DWORD fccType;
108 :     DWORD fccHandler;
109 :     DWORD dwVersion;
110 :     DWORD dwFlags;
111 :     LRESULT dwError;
112 :     LPVOID pV1Reserved;
113 :     LPVOID pV2Reserved;
114 :     DWORD dnDevNode;
115 :     } ICOPEN;
116 :    
117 :     #define ICM_USER (DRV_USER+0x0000)
118 :    
119 :     #define ICM_RESERVED ICM_RESERVED_LOW
120 :     #define ICM_RESERVED_LOW (DRV_USER+0x1000)
121 :     #define ICM_RESERVED_HIGH (DRV_USER+0x2000)
122 :    
123 :     #define ICM_GETSTATE (ICM_RESERVED+0)
124 :     #define ICM_SETSTATE (ICM_RESERVED+1)
125 :     #define ICM_GETINFO (ICM_RESERVED+2)
126 :     #define ICM_CONFIGURE (ICM_RESERVED+10)
127 :     #define ICM_ABOUT (ICM_RESERVED+11)
128 :     #define ICM_GETERRORTEXT (ICM_RESERVED+12)
129 :     #define ICM_GETFORMATNAME (ICM_RESERVED+20)
130 :     #define ICM_ENUMFORMATS (ICM_RESERVED+21)
131 :     #define ICM_GETDEFAULTQUALITY (ICM_RESERVED+30)
132 :     #define ICM_GETQUALITY (ICM_RESERVED+31)
133 :     #define ICM_SETQUALITY (ICM_RESERVED+32)
134 :     #define ICM_SET (ICM_RESERVED+40)
135 :     #define ICM_GET (ICM_RESERVED+41)
136 :    
137 :     #define ICM_FRAMERATE mmioFOURCC('F','r','m','R')
138 :     #define ICM_KEYFRAMERATE mmioFOURCC('K','e','y','R')
139 :    
140 :     typedef struct {
141 :     DWORD dwSize;
142 :     DWORD fccType;
143 :     DWORD fccHandler;
144 :     DWORD dwFlags;
145 :     DWORD dwVersion;
146 :     DWORD dwVersionICM;
147 :     WCHAR szName[16];
148 :     WCHAR szDescription[128];
149 :     WCHAR szDriver[128];
150 :     } ICINFO;
151 :    
152 :     #define VIDCF_QUALITY 0x0001
153 :     #define VIDCF_CRUNCH 0x0002
154 :     #define VIDCF_TEMPORAL 0x0004
155 :     #define VIDCF_COMPRESSFRAMES 0x0008
156 :     #define VIDCF_DRAW 0x0010
157 :     #define VIDCF_FASTTEMPORALC 0x0020
158 :     #define VIDCF_FASTTEMPORALD 0x0080
159 :     #define VIDCF_QUALITYTIME 0x0040
160 :     #define VIDCF_FASTTEMPORAL (VIDCF_FASTTEMPORALC|VIDCF_FASTTEMPORALD)
161 :    
162 :     #define ICVERSION 0x0104
163 :    
164 :     #define ICM_COMPRESS_GET_FORMAT (ICM_USER+4)
165 :     #define ICM_COMPRESS_GET_SIZE (ICM_USER+5)
166 :     #define ICM_COMPRESS_QUERY (ICM_USER+6)
167 :     #define ICM_COMPRESS_BEGIN (ICM_USER+7)
168 :     #define ICM_COMPRESS (ICM_USER+8)
169 :     #define ICM_COMPRESS_END (ICM_USER+9)
170 :    
171 :     #define ICM_DECOMPRESS_GET_FORMAT (ICM_USER+10)
172 :     #define ICM_DECOMPRESS_QUERY (ICM_USER+11)
173 :     #define ICM_DECOMPRESS_BEGIN (ICM_USER+12)
174 :     #define ICM_DECOMPRESS (ICM_USER+13)
175 :     #define ICM_DECOMPRESS_END (ICM_USER+14)
176 :     #define ICM_DECOMPRESS_SET_PALETTE (ICM_USER+29)
177 :     #define ICM_DECOMPRESS_GET_PALETTE (ICM_USER+30)
178 :    
179 :     #define ICM_DRAW_QUERY (ICM_USER+31)
180 :     #define ICM_DRAW_BEGIN (ICM_USER+15)
181 :     #define ICM_DRAW_GET_PALETTE (ICM_USER+16)
182 :     #define ICM_DRAW_UPDATE (ICM_USER+17)
183 :     #define ICM_DRAW_START (ICM_USER+18)
184 :     #define ICM_DRAW_STOP (ICM_USER+19)
185 :     #define ICM_DRAW_BITS (ICM_USER+20)
186 :     #define ICM_DRAW_END (ICM_USER+21)
187 :     #define ICM_DRAW_GETTIME (ICM_USER+32)
188 :     #define ICM_DRAW (ICM_USER+33)
189 :     #define ICM_DRAW_WINDOW (ICM_USER+34)
190 :     #define ICM_DRAW_SETTIME (ICM_USER+35)
191 :     #define ICM_DRAW_REALIZE (ICM_USER+36)
192 :     #define ICM_DRAW_FLUSH (ICM_USER+37)
193 :     #define ICM_DRAW_RENDERBUFFER (ICM_USER+38)
194 :     #define ICM_DRAW_START_PLAY (ICM_USER+39)
195 :     #define ICM_DRAW_STOP_PLAY (ICM_USER+40)
196 :     #define ICM_DRAW_SUGGESTFORMAT (ICM_USER+50)
197 :     #define ICM_DRAW_CHANGEPALETTE (ICM_USER+51)
198 :     #define ICM_DRAW_IDLE (ICM_USER+52)
199 :     #define ICM_GETBUFFERSWANTED (ICM_USER+41)
200 :     #define ICM_GETDEFAULTKEYFRAMERATE (ICM_USER+42)
201 :     #define ICM_DECOMPRESSEX_BEGIN (ICM_USER+60)
202 :     #define ICM_DECOMPRESSEX_QUERY (ICM_USER+61)
203 :     #define ICM_DECOMPRESSEX (ICM_USER+62)
204 :     #define ICM_DECOMPRESSEX_END (ICM_USER+63)
205 :     #define ICM_COMPRESS_FRAMES_INFO (ICM_USER+70)
206 :     #define ICM_COMPRESS_FRAMES (ICM_USER+71)
207 :     #define ICM_SET_STATUS_PROC (ICM_USER+72)
208 :    
209 :     #endif /* _INC_VFW */

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.4