1 | /*
|
---|
2 | * msacm.h - Declarations for MSACM
|
---|
3 | */
|
---|
4 |
|
---|
5 | #ifndef __WINE_MSACM_H
|
---|
6 | #define __WINE_MSACM_H
|
---|
7 |
|
---|
8 | #include "windef.h"
|
---|
9 | #include "mmsystem.h"
|
---|
10 | #include "mmreg.h"
|
---|
11 |
|
---|
12 | #ifdef __cplusplus
|
---|
13 | extern "C" {
|
---|
14 | #endif /* defined(__cplusplus) */
|
---|
15 |
|
---|
16 | #define ACMAPI WINAPI
|
---|
17 |
|
---|
18 | /***********************************************************************
|
---|
19 | * Defines/Enums
|
---|
20 | */
|
---|
21 | #define ACMERR_BASE 512
|
---|
22 | #define ACMERR_NOTPOSSIBLE (ACMERR_BASE + 0)
|
---|
23 | #define ACMERR_BUSY (ACMERR_BASE + 1)
|
---|
24 | #define ACMERR_UNPREPARED (ACMERR_BASE + 2)
|
---|
25 | #define ACMERR_CANCELED (ACMERR_BASE + 3)
|
---|
26 |
|
---|
27 | #define MM_ACM_OPEN MM_STREAM_OPEN
|
---|
28 | #define MM_ACM_CLOSE MM_STREAM_CLOSE
|
---|
29 | #define MM_ACM_DONE MM_STREAM_DONE
|
---|
30 |
|
---|
31 | #define ACM_DRIVERADDF_FUNCTION 0x00000003L
|
---|
32 | #define ACM_DRIVERADDF_NOTIFYHWND 0x00000004L
|
---|
33 | #define ACM_DRIVERADDF_TYPEMASK 0x00000007L
|
---|
34 | #define ACM_DRIVERADDF_LOCAL 0x00000000L
|
---|
35 | #define ACM_DRIVERADDF_GLOBAL 0x00000008L
|
---|
36 |
|
---|
37 | #define ACMDRIVERDETAILS_SHORTNAME_CHARS 32
|
---|
38 | #define ACMDRIVERDETAILS_LONGNAME_CHARS 128
|
---|
39 | #define ACMDRIVERDETAILS_COPYRIGHT_CHARS 80
|
---|
40 | #define ACMDRIVERDETAILS_LICENSING_CHARS 128
|
---|
41 | #define ACMDRIVERDETAILS_FEATURES_CHARS 512
|
---|
42 |
|
---|
43 | #define ACMDRIVERDETAILS_FCCTYPE_AUDIOCODEC mmioFOURCC('a', 'u', 'd', 'c')
|
---|
44 | #define ACMDRIVERDETAILS_FCCCOMP_UNDEFINED mmioFOURCC('\0', '\0', '\0', '\0')
|
---|
45 |
|
---|
46 | #define ACMDRIVERDETAILS_SUPPORTF_CODEC 0x00000001L
|
---|
47 | #define ACMDRIVERDETAILS_SUPPORTF_CONVERTER 0x00000002L
|
---|
48 | #define ACMDRIVERDETAILS_SUPPORTF_FILTER 0x00000004L
|
---|
49 | #define ACMDRIVERDETAILS_SUPPORTF_HARDWARE 0x00000008L
|
---|
50 | #define ACMDRIVERDETAILS_SUPPORTF_ASYNC 0x00000010L
|
---|
51 | #define ACMDRIVERDETAILS_SUPPORTF_LOCAL 0x40000000L
|
---|
52 | #define ACMDRIVERDETAILS_SUPPORTF_DISABLED 0x80000000L
|
---|
53 |
|
---|
54 | #define ACM_DRIVERENUMF_NOLOCAL 0x40000000L
|
---|
55 | #define ACM_DRIVERENUMF_DISABLED 0x80000000L
|
---|
56 |
|
---|
57 | #define ACM_DRIVERPRIORITYF_ENABLE 0x00000001L
|
---|
58 | #define ACM_DRIVERPRIORITYF_DISABLE 0x00000002L
|
---|
59 | #define ACM_DRIVERPRIORITYF_ABLEMASK 0x00000003L
|
---|
60 | #define ACM_DRIVERPRIORITYF_BEGIN 0x00010000L
|
---|
61 | #define ACM_DRIVERPRIORITYF_END 0x00020000L
|
---|
62 | #define ACM_DRIVERPRIORITYF_DEFERMASK 0x00030000L
|
---|
63 |
|
---|
64 | #define MM_ACM_FILTERCHOOSE 0x8000
|
---|
65 |
|
---|
66 | #define FILTERCHOOSE_MESSAGE 0
|
---|
67 | #define FILTERCHOOSE_FILTERTAG_VERIFY (FILTERCHOOSE_MESSAGE+0)
|
---|
68 | #define FILTERCHOOSE_FILTER_VERIFY (FILTERCHOOSE_MESSAGE+1)
|
---|
69 | #define FILTERCHOOSE_CUSTOM_VERIFY (FILTERCHOOSE_MESSAGE+2)
|
---|
70 |
|
---|
71 | #define ACMFILTERCHOOSE_STYLEF_SHOWHELP 0x00000004L
|
---|
72 | #define ACMFILTERCHOOSE_STYLEF_ENABLEHOOK 0x00000008L
|
---|
73 | #define ACMFILTERCHOOSE_STYLEF_ENABLETEMPLATE 0x00000010L
|
---|
74 | #define ACMFILTERCHOOSE_STYLEF_ENABLETEMPLATEHANDLE 0x00000020L
|
---|
75 | #define ACMFILTERCHOOSE_STYLEF_INITTOFILTERSTRUCT 0x00000040L
|
---|
76 | #define ACMFILTERCHOOSE_STYLEF_CONTEXTHELP 0x00000080L
|
---|
77 |
|
---|
78 | #define ACMFILTERDETAILS_FILTER_CHARS 128
|
---|
79 |
|
---|
80 | #define ACM_FILTERDETAILSF_INDEX 0x00000000L
|
---|
81 | #define ACM_FILTERDETAILSF_FILTER 0x00000001L
|
---|
82 | #define ACM_FILTERDETAILSF_QUERYMASK 0x0000000FL
|
---|
83 |
|
---|
84 | #define ACMFILTERTAGDETAILS_FILTERTAG_CHARS 48
|
---|
85 |
|
---|
86 | #define ACM_FILTERTAGDETAILSF_INDEX 0x00000000L
|
---|
87 | #define ACM_FILTERTAGDETAILSF_FILTERTAG 0x00000001L
|
---|
88 | #define ACM_FILTERTAGDETAILSF_LARGESTSIZE 0x00000002L
|
---|
89 | #define ACM_FILTERTAGDETAILSF_QUERYMASK 0x0000000FL
|
---|
90 |
|
---|
91 | #define ACM_FILTERENUMF_DWFILTERTAG 0x00010000L
|
---|
92 |
|
---|
93 | #define ACMHELPMSGSTRINGA "acmchoose_help"
|
---|
94 | static const WCHAR ACMHELPMSGSTRINGW[] = { 'a','c','m',
|
---|
95 | 'c','h','o','o','s','e','_','h','e','l','p',0 };
|
---|
96 | #define ACMHELPMSGSTRING WINELIB_NAME_AW(ACMHELPMSGSTRING)
|
---|
97 |
|
---|
98 | #define ACMHELPMSGCONTEXTMENUA "acmchoose_contextmenu"
|
---|
99 | static const WCHAR ACMHELPMSGCONTEXTMENUW[] = { 'a','c','m',
|
---|
100 | 'c','h','o','o','s','e','_','c','o','n','t','e','x','t','m','e','n','u',0 };
|
---|
101 | #define ACMHELPMSGCONTEXTMENU WINELIB_NAME_AW(ACMHELPMSGCONTEXTMENU)
|
---|
102 |
|
---|
103 | #define ACMHELPMSGCONTEXTHELPA "acmchoose_contexthelp"
|
---|
104 | static const WCHAR ACMHELPMSGCONTEXTHELPW[] = { 'a','c','m',
|
---|
105 | 'c','h','o','o','s','e','_','c','o','n','t','e','x','t','h','e','l','p',0 };
|
---|
106 | #define ACMHELPMSGCONTEXTHELP WINELIB_NAME_AW(ACMHELPMSGCONTEXTHELP)
|
---|
107 |
|
---|
108 | #define MM_ACM_FORMATCHOOSE 0x8000
|
---|
109 |
|
---|
110 | #define FORMATCHOOSE_MESSAGE 0
|
---|
111 | #define FORMATCHOOSE_FORMATTAG_VERIFY (FORMATCHOOSE_MESSAGE+0)
|
---|
112 | #define FORMATCHOOSE_FORMAT_VERIFY (FORMATCHOOSE_MESSAGE+1)
|
---|
113 | #define FORMATCHOOSE_CUSTOM_VERIFY (FORMATCHOOSE_MESSAGE+2)
|
---|
114 |
|
---|
115 | #define ACMFORMATCHOOSE_STYLEF_SHOWHELP 0x00000004L
|
---|
116 | #define ACMFORMATCHOOSE_STYLEF_ENABLEHOOK 0x00000008L
|
---|
117 | #define ACMFORMATCHOOSE_STYLEF_ENABLETEMPLATE 0x00000010L
|
---|
118 | #define ACMFORMATCHOOSE_STYLEF_ENABLETEMPLATEHANDLE 0x00000020L
|
---|
119 | #define ACMFORMATCHOOSE_STYLEF_INITTOWFXSTRUCT 0x00000040L
|
---|
120 | #define ACMFORMATCHOOSE_STYLEF_CONTEXTHELP 0x00000080L
|
---|
121 |
|
---|
122 | #define ACMFORMATDETAILS_FORMAT_CHARS 128
|
---|
123 |
|
---|
124 | #define ACM_FORMATDETAILSF_INDEX 0x00000000L
|
---|
125 | #define ACM_FORMATDETAILSF_FORMAT 0x00000001L
|
---|
126 | #define ACM_FORMATDETAILSF_QUERYMASK 0x0000000FL
|
---|
127 |
|
---|
128 | #define ACM_FORMATENUMF_WFORMATTAG 0x00010000L
|
---|
129 | #define ACM_FORMATENUMF_NCHANNELS 0x00020000L
|
---|
130 | #define ACM_FORMATENUMF_NSAMPLESPERSEC 0x00040000L
|
---|
131 | #define ACM_FORMATENUMF_WBITSPERSAMPLE 0x00080000L
|
---|
132 | #define ACM_FORMATENUMF_CONVERT 0x00100000L
|
---|
133 | #define ACM_FORMATENUMF_SUGGEST 0x00200000L
|
---|
134 | #define ACM_FORMATENUMF_HARDWARE 0x00400000L
|
---|
135 | #define ACM_FORMATENUMF_INPUT 0x00800000L
|
---|
136 | #define ACM_FORMATENUMF_OUTPUT 0x01000000L
|
---|
137 |
|
---|
138 | #define ACM_FORMATSUGGESTF_WFORMATTAG 0x00010000L
|
---|
139 | #define ACM_FORMATSUGGESTF_NCHANNELS 0x00020000L
|
---|
140 | #define ACM_FORMATSUGGESTF_NSAMPLESPERSEC 0x00040000L
|
---|
141 | #define ACM_FORMATSUGGESTF_WBITSPERSAMPLE 0x00080000L
|
---|
142 | #define ACM_FORMATSUGGESTF_TYPEMASK 0x00FF0000L
|
---|
143 |
|
---|
144 | #define ACMFORMATTAGDETAILS_FORMATTAG_CHARS 48
|
---|
145 |
|
---|
146 | #define ACM_FORMATTAGDETAILSF_INDEX 0x00000000L
|
---|
147 | #define ACM_FORMATTAGDETAILSF_FORMATTAG 0x00000001L
|
---|
148 | #define ACM_FORMATTAGDETAILSF_LARGESTSIZE 0x00000002L
|
---|
149 | #define ACM_FORMATTAGDETAILSF_QUERYMASK 0x0000000FL
|
---|
150 |
|
---|
151 | #define ACM_METRIC_COUNT_DRIVERS 1
|
---|
152 | #define ACM_METRIC_COUNT_CODECS 2
|
---|
153 | #define ACM_METRIC_COUNT_CONVERTERS 3
|
---|
154 | #define ACM_METRIC_COUNT_FILTERS 4
|
---|
155 | #define ACM_METRIC_COUNT_DISABLED 5
|
---|
156 | #define ACM_METRIC_COUNT_HARDWARE 6
|
---|
157 | #define ACM_METRIC_COUNT_LOCAL_DRIVERS 20
|
---|
158 | #define ACM_METRIC_COUNT_LOCAL_CODECS 21
|
---|
159 | #define ACM_METRIC_COUNT_LOCAL_CONVERTERS 22
|
---|
160 | #define ACM_METRIC_COUNT_LOCAL_FILTERS 23
|
---|
161 | #define ACM_METRIC_COUNT_LOCAL_DISABLED 24
|
---|
162 | #define ACM_METRIC_HARDWARE_WAVE_INPUT 30
|
---|
163 | #define ACM_METRIC_HARDWARE_WAVE_OUTPUT 31
|
---|
164 | #define ACM_METRIC_MAX_SIZE_FORMAT 50
|
---|
165 | #define ACM_METRIC_MAX_SIZE_FILTER 51
|
---|
166 | #define ACM_METRIC_DRIVER_SUPPORT 100
|
---|
167 | #define ACM_METRIC_DRIVER_PRIORITY 101
|
---|
168 |
|
---|
169 | #define ACM_STREAMCONVERTF_BLOCKALIGN 0x00000004
|
---|
170 | #define ACM_STREAMCONVERTF_START 0x00000010
|
---|
171 | #define ACM_STREAMCONVERTF_END 0x00000020
|
---|
172 |
|
---|
173 | #define ACMSTREAMHEADER_STATUSF_DONE 0x00010000L
|
---|
174 | #define ACMSTREAMHEADER_STATUSF_PREPARED 0x00020000L
|
---|
175 | #define ACMSTREAMHEADER_STATUSF_INQUEUE 0x00100000L
|
---|
176 |
|
---|
177 | #define ACM_STREAMOPENF_QUERY 0x00000001
|
---|
178 | #define ACM_STREAMOPENF_ASYNC 0x00000002
|
---|
179 | #define ACM_STREAMOPENF_NONREALTIME 0x00000004
|
---|
180 |
|
---|
181 | #define ACM_STREAMSIZEF_SOURCE 0x00000000L
|
---|
182 | #define ACM_STREAMSIZEF_DESTINATION 0x00000001L
|
---|
183 | #define ACM_STREAMSIZEF_QUERYMASK 0x0000000FL
|
---|
184 |
|
---|
185 | #define ACMDM_USER (DRV_USER + 0x0000)
|
---|
186 | #define ACMDM_RESERVED_LOW (DRV_USER + 0x2000)
|
---|
187 | #define ACMDM_RESERVED_HIGH (DRV_USER + 0x2FFF)
|
---|
188 |
|
---|
189 | #define ACMDM_BASE ACMDM_RESERVED_LOW
|
---|
190 |
|
---|
191 | #define ACMDM_DRIVER_ABOUT (ACMDM_BASE + 11)
|
---|
192 |
|
---|
193 | /***********************************************************************
|
---|
194 | * Callbacks
|
---|
195 | */
|
---|
196 |
|
---|
197 | typedef BOOL (* CALLBACK ACMDRIVERENUMCB)(
|
---|
198 | HACMDRIVERID hadid, DWORD dwInstance, DWORD fdwSupport
|
---|
199 | );
|
---|
200 |
|
---|
201 | typedef UINT (* CALLBACK ACMFILTERCHOOSEHOOKPROCA)(
|
---|
202 | HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam
|
---|
203 | );
|
---|
204 |
|
---|
205 | typedef UINT (* CALLBACK ACMFILTERCHOOSEHOOKPROCW)(
|
---|
206 | HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam
|
---|
207 | );
|
---|
208 | #define ACMFILTERCHOOSEHOOKPROC WINELIB_NAME_AW(ACMFILTERCHOOSEHOOKPROC)
|
---|
209 |
|
---|
210 | typedef UINT (* CALLBACK ACMFORMATCHOOSEHOOKPROCA)(
|
---|
211 | HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam
|
---|
212 | );
|
---|
213 |
|
---|
214 | typedef UINT (* CALLBACK ACMFORMATCHOOSEHOOKPROCW)(
|
---|
215 | HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam
|
---|
216 | );
|
---|
217 | #define ACMFORMATCHOOSEHOOKPROC WINELIB_NAME_AW(ACMFORMATCHOOSEHOOKPROC)
|
---|
218 |
|
---|
219 | /***********************************************************************
|
---|
220 | * Structures
|
---|
221 | */
|
---|
222 |
|
---|
223 | typedef struct _ACMDRIVERDETAILSA
|
---|
224 | {
|
---|
225 | DWORD cbStruct;
|
---|
226 |
|
---|
227 | FOURCC fccType;
|
---|
228 | FOURCC fccComp;
|
---|
229 |
|
---|
230 | WORD wMid;
|
---|
231 | WORD wPid;
|
---|
232 |
|
---|
233 | DWORD vdwACM;
|
---|
234 | DWORD vdwDriver;
|
---|
235 |
|
---|
236 | DWORD fdwSupport;
|
---|
237 | DWORD cFormatTags;
|
---|
238 | DWORD cFilterTags;
|
---|
239 |
|
---|
240 | HICON hicon;
|
---|
241 |
|
---|
242 | CHAR szShortName[ACMDRIVERDETAILS_SHORTNAME_CHARS];
|
---|
243 | CHAR szLongName[ACMDRIVERDETAILS_LONGNAME_CHARS];
|
---|
244 | CHAR szCopyright[ACMDRIVERDETAILS_COPYRIGHT_CHARS];
|
---|
245 | CHAR szLicensing[ACMDRIVERDETAILS_LICENSING_CHARS];
|
---|
246 | CHAR szFeatures[ACMDRIVERDETAILS_FEATURES_CHARS];
|
---|
247 | } ACMDRIVERDETAILSA, *PACMDRIVERDETAILSA, *LPACMDRIVERDETAILSA;
|
---|
248 |
|
---|
249 | typedef struct _ACMDRIVERDETAILSW
|
---|
250 | {
|
---|
251 | DWORD cbStruct;
|
---|
252 |
|
---|
253 | FOURCC fccType;
|
---|
254 | FOURCC fccComp;
|
---|
255 |
|
---|
256 | WORD wMid;
|
---|
257 | WORD wPid;
|
---|
258 |
|
---|
259 | DWORD vdwACM;
|
---|
260 | DWORD vdwDriver;
|
---|
261 |
|
---|
262 | DWORD fdwSupport;
|
---|
263 | DWORD cFormatTags;
|
---|
264 | DWORD cFilterTags;
|
---|
265 |
|
---|
266 | HICON hicon;
|
---|
267 |
|
---|
268 | WCHAR szShortName[ACMDRIVERDETAILS_SHORTNAME_CHARS];
|
---|
269 | WCHAR szLongName[ACMDRIVERDETAILS_LONGNAME_CHARS];
|
---|
270 | WCHAR szCopyright[ACMDRIVERDETAILS_COPYRIGHT_CHARS];
|
---|
271 | WCHAR szLicensing[ACMDRIVERDETAILS_LICENSING_CHARS];
|
---|
272 | WCHAR szFeatures[ACMDRIVERDETAILS_FEATURES_CHARS];
|
---|
273 | } ACMDRIVERDETAILSW, *PACMDRIVERDETAILSW, *LPACMDRIVERDETAILSW;
|
---|
274 |
|
---|
275 | DECL_WINELIB_TYPE_AW(ACMDRIVERDETAILS)
|
---|
276 | DECL_WINELIB_TYPE_AW(PACMDRIVERDETAILS)
|
---|
277 | DECL_WINELIB_TYPE_AW(LPACMDRIVERDETAILS)
|
---|
278 |
|
---|
279 | typedef struct _ACMFILTERCHOOSEA
|
---|
280 | {
|
---|
281 | DWORD cbStruct;
|
---|
282 | DWORD fdwStyle;
|
---|
283 |
|
---|
284 | HWND hwndOwner;
|
---|
285 |
|
---|
286 | PWAVEFILTER pwfltr;
|
---|
287 | DWORD cbwfltr;
|
---|
288 |
|
---|
289 | LPCSTR pszTitle;
|
---|
290 |
|
---|
291 | CHAR szFilterTag[ACMFILTERTAGDETAILS_FILTERTAG_CHARS];
|
---|
292 | CHAR szFilter[ACMFILTERDETAILS_FILTER_CHARS];
|
---|
293 | LPSTR pszName;
|
---|
294 | DWORD cchName;
|
---|
295 |
|
---|
296 | DWORD fdwEnum;
|
---|
297 | PWAVEFILTER pwfltrEnum;
|
---|
298 |
|
---|
299 | HINSTANCE hInstance;
|
---|
300 | LPCSTR pszTemplateName;
|
---|
301 | LPARAM lCustData;
|
---|
302 | ACMFILTERCHOOSEHOOKPROCA pfnHook;
|
---|
303 | } ACMFILTERCHOOSEA, *PACMFILTERCHOOSEA, *LPACMFILTERCHOOSEA;
|
---|
304 |
|
---|
305 | typedef struct _ACMFILTERCHOOSEW
|
---|
306 | {
|
---|
307 | DWORD cbStruct;
|
---|
308 | DWORD fdwStyle;
|
---|
309 |
|
---|
310 | HWND hwndOwner;
|
---|
311 |
|
---|
312 | PWAVEFILTER pwfltr;
|
---|
313 | DWORD cbwfltr;
|
---|
314 |
|
---|
315 | LPCWSTR pszTitle;
|
---|
316 |
|
---|
317 | WCHAR szFilterTag[ACMFILTERTAGDETAILS_FILTERTAG_CHARS];
|
---|
318 | WCHAR szFilter[ACMFILTERDETAILS_FILTER_CHARS];
|
---|
319 | LPWSTR pszName;
|
---|
320 | DWORD cchName;
|
---|
321 |
|
---|
322 | DWORD fdwEnum;
|
---|
323 | PWAVEFILTER pwfltrEnum;
|
---|
324 |
|
---|
325 | HINSTANCE hInstance;
|
---|
326 | LPCWSTR pszTemplateName;
|
---|
327 | LPARAM lCustData;
|
---|
328 | ACMFILTERCHOOSEHOOKPROCW pfnHook;
|
---|
329 | } ACMFILTERCHOOSEW, *PACMFILTERCHOOSEW, *LPACMFILTERCHOOSEW;
|
---|
330 |
|
---|
331 | DECL_WINELIB_TYPE_AW(ACMFILTERCHOOSE)
|
---|
332 | DECL_WINELIB_TYPE_AW(PACMFILTERCHOOSE)
|
---|
333 | DECL_WINELIB_TYPE_AW(LPACMFILTERCHOOSE)
|
---|
334 |
|
---|
335 | typedef struct _ACMFILTERDETAILSA
|
---|
336 | {
|
---|
337 | DWORD cbStruct;
|
---|
338 | DWORD dwFilterIndex;
|
---|
339 | DWORD dwFilterTag;
|
---|
340 | DWORD fdwSupport;
|
---|
341 | PWAVEFILTER pwfltr;
|
---|
342 | DWORD cbwfltr;
|
---|
343 | CHAR szFilter[ACMFILTERDETAILS_FILTER_CHARS];
|
---|
344 | } ACMFILTERDETAILSA, *PACMFILTERDETAILSA, *LPACMFILTERDETAILSA;
|
---|
345 |
|
---|
346 | typedef struct _ACMFILTERDETAILSW
|
---|
347 | {
|
---|
348 | DWORD cbStruct;
|
---|
349 | DWORD dwFilterIndex;
|
---|
350 | DWORD dwFilterTag;
|
---|
351 | DWORD fdwSupport;
|
---|
352 | PWAVEFILTER pwfltr;
|
---|
353 | DWORD cbwfltr;
|
---|
354 | WCHAR szFilter[ACMFILTERDETAILS_FILTER_CHARS];
|
---|
355 | } ACMFILTERDETAILSW, *PACMFILTERDETAILSW, *LPACMFILTERDETAILSW;
|
---|
356 |
|
---|
357 | DECL_WINELIB_TYPE_AW(ACMFILTERDETAILS)
|
---|
358 | DECL_WINELIB_TYPE_AW(PACMFILTERDETAILS)
|
---|
359 | DECL_WINELIB_TYPE_AW(LPACMFILTERDETAILS)
|
---|
360 |
|
---|
361 | typedef struct _ACMFILTERTAGDETAILSA
|
---|
362 | {
|
---|
363 | DWORD cbStruct;
|
---|
364 | DWORD dwFilterTagIndex;
|
---|
365 | DWORD dwFilterTag;
|
---|
366 | DWORD cbFilterSize;
|
---|
367 | DWORD fdwSupport;
|
---|
368 | DWORD cStandardFilters;
|
---|
369 | CHAR szFilterTag[ACMFILTERTAGDETAILS_FILTERTAG_CHARS];
|
---|
370 | } ACMFILTERTAGDETAILSA, *PACMFILTERTAGDETAILSA, *LPACMFILTERTAGDETAILSA;
|
---|
371 |
|
---|
372 | typedef struct _ACMFILTERTAGDETAILSW
|
---|
373 | {
|
---|
374 | DWORD cbStruct;
|
---|
375 | DWORD dwFilterTagIndex;
|
---|
376 | DWORD dwFilterTag;
|
---|
377 | DWORD cbFilterSize;
|
---|
378 | DWORD fdwSupport;
|
---|
379 | DWORD cStandardFilters;
|
---|
380 | WCHAR szFilterTag[ACMFILTERTAGDETAILS_FILTERTAG_CHARS];
|
---|
381 | } ACMFILTERTAGDETAILSW, *PACMFILTERTAGDETAILSW, *LPACMFILTERTAGDETAILSW;
|
---|
382 |
|
---|
383 | DECL_WINELIB_TYPE_AW(ACMFILTERTAGDETAILS)
|
---|
384 | DECL_WINELIB_TYPE_AW(PACMFILTERTAGDETAILS)
|
---|
385 | DECL_WINELIB_TYPE_AW(LPACMFILTERTAGDETAILS)
|
---|
386 |
|
---|
387 | typedef struct _ACMFORMATCHOOSEA
|
---|
388 | {
|
---|
389 | DWORD cbStruct;
|
---|
390 | DWORD fdwStyle;
|
---|
391 |
|
---|
392 | HWND hwndOwner;
|
---|
393 |
|
---|
394 | PWAVEFORMATEX pwfx;
|
---|
395 | DWORD cbwfx;
|
---|
396 | LPCSTR pszTitle;
|
---|
397 |
|
---|
398 | CHAR szFormatTag[ACMFORMATTAGDETAILS_FORMATTAG_CHARS];
|
---|
399 | CHAR szFormat[ACMFORMATDETAILS_FORMAT_CHARS];
|
---|
400 |
|
---|
401 | LPSTR pszName;
|
---|
402 | DWORD cchName;
|
---|
403 |
|
---|
404 | DWORD fdwEnum;
|
---|
405 | PWAVEFORMATEX pwfxEnum;
|
---|
406 |
|
---|
407 | HINSTANCE hInstance;
|
---|
408 | LPCSTR pszTemplateName;
|
---|
409 | LPARAM lCustData;
|
---|
410 | ACMFORMATCHOOSEHOOKPROCA pfnHook;
|
---|
411 | } ACMFORMATCHOOSEA, *PACMFORMATCHOOSEA, *LPACMFORMATCHOOSEA;
|
---|
412 |
|
---|
413 | typedef struct _ACMFORMATCHOOSEW
|
---|
414 | {
|
---|
415 | DWORD cbStruct;
|
---|
416 | DWORD fdwStyle;
|
---|
417 |
|
---|
418 | HWND hwndOwner;
|
---|
419 |
|
---|
420 | PWAVEFORMATEX pwfx;
|
---|
421 | DWORD cbwfx;
|
---|
422 | LPCWSTR pszTitle;
|
---|
423 |
|
---|
424 | WCHAR szFormatTag[ACMFORMATTAGDETAILS_FORMATTAG_CHARS];
|
---|
425 | WCHAR szFormat[ACMFORMATDETAILS_FORMAT_CHARS];
|
---|
426 |
|
---|
427 | LPWSTR pszName;
|
---|
428 | DWORD cchName;
|
---|
429 |
|
---|
430 | DWORD fdwEnum;
|
---|
431 | LPWAVEFORMATEX pwfxEnum;
|
---|
432 |
|
---|
433 | HINSTANCE hInstance;
|
---|
434 | LPCWSTR pszTemplateName;
|
---|
435 | LPARAM lCustData;
|
---|
436 | ACMFORMATCHOOSEHOOKPROCW pfnHook;
|
---|
437 | } ACMFORMATCHOOSEW, *PACMFORMATCHOOSEW, *LPACMFORMATCHOOSEW;
|
---|
438 |
|
---|
439 | DECL_WINELIB_TYPE_AW(ACMFORMATCHOOSE)
|
---|
440 | DECL_WINELIB_TYPE_AW(PACMFORMATCHOOSE)
|
---|
441 | DECL_WINELIB_TYPE_AW(LPACMFORMATCHOOSE)
|
---|
442 |
|
---|
443 | typedef struct _ACMFORMATDETAILSA
|
---|
444 | {
|
---|
445 | DWORD cbStruct;
|
---|
446 | DWORD dwFormatIndex;
|
---|
447 | DWORD dwFormatTag;
|
---|
448 | DWORD fdwSupport;
|
---|
449 | PWAVEFORMATEX pwfx;
|
---|
450 | DWORD cbwfx;
|
---|
451 | CHAR szFormat[ACMFORMATDETAILS_FORMAT_CHARS];
|
---|
452 | } ACMFORMATDETAILSA, *PACMFORMATDETAILSA, *LPACMFORMATDETAILSA;
|
---|
453 |
|
---|
454 | typedef struct _ACMFORMATDETAILSW
|
---|
455 | {
|
---|
456 | DWORD cbStruct;
|
---|
457 | DWORD dwFormatIndex;
|
---|
458 | DWORD dwFormatTag;
|
---|
459 | DWORD fdwSupport;
|
---|
460 | PWAVEFORMATEX pwfx;
|
---|
461 | DWORD cbwfx;
|
---|
462 | WCHAR szFormat[ACMFORMATDETAILS_FORMAT_CHARS];
|
---|
463 | } ACMFORMATDETAILSW, *PACMFORMATDETAILSW, *LPACMFORMATDETAILSW;
|
---|
464 |
|
---|
465 | DECL_WINELIB_TYPE_AW(ACMFORMATDETAILS)
|
---|
466 | DECL_WINELIB_TYPE_AW(PACMFORMATDETAILS)
|
---|
467 | DECL_WINELIB_TYPE_AW(LPACMFORMATDETAILS)
|
---|
468 |
|
---|
469 | typedef struct _ACMFORMATTAGDETAILSA
|
---|
470 | {
|
---|
471 | DWORD cbStruct;
|
---|
472 | DWORD dwFormatTagIndex;
|
---|
473 | DWORD dwFormatTag;
|
---|
474 | DWORD cbFormatSize;
|
---|
475 | DWORD fdwSupport;
|
---|
476 | DWORD cStandardFormats;
|
---|
477 | CHAR szFormatTag[ACMFORMATTAGDETAILS_FORMATTAG_CHARS];
|
---|
478 | } ACMFORMATTAGDETAILSA, *PACMFORMATTAGDETAILSA, *LPACMFORMATTAGDETAILSA;
|
---|
479 |
|
---|
480 | typedef struct _ACMFORMATTAGDETAILSW
|
---|
481 | {
|
---|
482 | DWORD cbStruct;
|
---|
483 | DWORD dwFormatTagIndex;
|
---|
484 | DWORD dwFormatTag;
|
---|
485 | DWORD cbFormatSize;
|
---|
486 | DWORD fdwSupport;
|
---|
487 | DWORD cStandardFormats;
|
---|
488 | WCHAR szFormatTag[ACMFORMATTAGDETAILS_FORMATTAG_CHARS];
|
---|
489 | } ACMFORMATTAGDETAILSW, *PACMFORMATTAGDETAILSW, *LPACMFORMATTAGDETAILSW;
|
---|
490 |
|
---|
491 | DECL_WINELIB_TYPE_AW(ACMFORMATTAGDETAILS)
|
---|
492 | DECL_WINELIB_TYPE_AW(PACMFORMATTAGDETAILS)
|
---|
493 | DECL_WINELIB_TYPE_AW(LPACMFORMATTAGDETAILS)
|
---|
494 |
|
---|
495 | typedef struct _ACMSTREAMHEADER
|
---|
496 | {
|
---|
497 | DWORD cbStruct;
|
---|
498 | DWORD fdwStatus;
|
---|
499 | DWORD dwUser;
|
---|
500 | LPBYTE pbSrc;
|
---|
501 | DWORD cbSrcLength;
|
---|
502 | DWORD cbSrcLengthUsed;
|
---|
503 | DWORD dwSrcUser;
|
---|
504 | LPBYTE pbDst;
|
---|
505 | DWORD cbDstLength;
|
---|
506 | DWORD cbDstLengthUsed;
|
---|
507 | DWORD dwDstUser;
|
---|
508 | DWORD dwReservedDriver[10];
|
---|
509 | } ACMSTREAMHEADER, *PACMSTREAMHEADER, *LPACMSTREAMHEADER;
|
---|
510 |
|
---|
511 | /***********************************************************************
|
---|
512 | * Callbacks 2
|
---|
513 | */
|
---|
514 |
|
---|
515 | typedef BOOL (* CALLBACK ACMFILTERENUMCBA)(
|
---|
516 | HACMDRIVERID hadid, PACMFILTERDETAILSA pafd,
|
---|
517 | DWORD dwInstance, DWORD fdwSupport
|
---|
518 | );
|
---|
519 |
|
---|
520 | typedef BOOL (* CALLBACK ACMFILTERENUMCBW)(
|
---|
521 | HACMDRIVERID hadid, PACMFILTERDETAILSW pafd,
|
---|
522 | DWORD dwInstance, DWORD fdwSupport
|
---|
523 | );
|
---|
524 |
|
---|
525 | #define ACMFILTERENUMCB WINELIB_NAME_AW(ACMFILTERENUMCB)
|
---|
526 |
|
---|
527 | typedef BOOL (* CALLBACK ACMFILTERTAGENUMCBA)(
|
---|
528 | HACMDRIVERID hadid, PACMFILTERTAGDETAILSA paftd,
|
---|
529 | DWORD dwInstance, DWORD fdwSupport
|
---|
530 | );
|
---|
531 |
|
---|
532 | typedef BOOL (* CALLBACK ACMFILTERTAGENUMCBW)(
|
---|
533 | HACMDRIVERID hadid, PACMFILTERTAGDETAILSW paftd,
|
---|
534 | DWORD dwInstance, DWORD fdwSupport
|
---|
535 | );
|
---|
536 |
|
---|
537 | #define ACMFILTERTAGENUMCB WINELIB_NAME_AW(ACMFILTERTAGENUMCB)
|
---|
538 |
|
---|
539 | typedef BOOL (* CALLBACK ACMFORMATENUMCBA)(
|
---|
540 | HACMDRIVERID hadid, PACMFORMATDETAILSA pafd,
|
---|
541 | DWORD dwInstance, DWORD fdwSupport
|
---|
542 | );
|
---|
543 |
|
---|
544 | typedef BOOL (* CALLBACK ACMFORMATENUMCBW)(
|
---|
545 | HACMDRIVERID hadid, PACMFORMATDETAILSW pafd,
|
---|
546 | DWORD dwInstance, DWORD fdwSupport
|
---|
547 | );
|
---|
548 |
|
---|
549 | #define ACMFORMATENUMCB WINELIB_NAME_AW(ACMFORMATENUMCB)
|
---|
550 |
|
---|
551 | typedef BOOL (* CALLBACK ACMFORMATTAGENUMCBA)(
|
---|
552 | HACMDRIVERID hadid, PACMFORMATTAGDETAILSA paftd,
|
---|
553 | DWORD dwInstance, DWORD fdwSupport
|
---|
554 | );
|
---|
555 |
|
---|
556 | typedef BOOL (* CALLBACK ACMFORMATTAGENUMCBW)(
|
---|
557 | HACMDRIVERID hadid, PACMFORMATTAGDETAILSW paftd,
|
---|
558 | DWORD dwInstance, DWORD fdwSupport
|
---|
559 | );
|
---|
560 |
|
---|
561 | #define ACMFORMATTAGENUMCB WINELIB_NAME_AW(ACMFORMATTAGENUMCB)
|
---|
562 |
|
---|
563 | /***********************************************************************
|
---|
564 | * Functions - Win32
|
---|
565 | */
|
---|
566 |
|
---|
567 | MMRESULT WINAPI acmDriverAddA(
|
---|
568 | PHACMDRIVERID phadid, HINSTANCE hinstModule,
|
---|
569 | LPARAM lParam, DWORD dwPriority, DWORD fdwAdd
|
---|
570 | );
|
---|
571 | MMRESULT WINAPI acmDriverAddW(
|
---|
572 | PHACMDRIVERID phadid, HINSTANCE hinstModule,
|
---|
573 | LPARAM lParam, DWORD dwPriority, DWORD fdwAdd
|
---|
574 | );
|
---|
575 | #define acmDriverAdd WINELIB_NAME_AW(acmDriverAdd)
|
---|
576 |
|
---|
577 | MMRESULT WINAPI acmDriverClose(
|
---|
578 | HACMDRIVER had, DWORD fdwClose
|
---|
579 | );
|
---|
580 | MMRESULT WINAPI acmDriverDetailsA(
|
---|
581 | HACMDRIVERID hadid, PACMDRIVERDETAILSA padd, DWORD fdwDetails
|
---|
582 | );
|
---|
583 | MMRESULT WINAPI acmDriverDetailsW(
|
---|
584 | HACMDRIVERID hadid, PACMDRIVERDETAILSW padd, DWORD fdwDetails
|
---|
585 | );
|
---|
586 | #define acmDriverDetails WINELIB_NAME_AW(acmDriverDetails)
|
---|
587 |
|
---|
588 | MMRESULT WINAPI acmDriverEnum(
|
---|
589 | ACMDRIVERENUMCB fnCallback, DWORD dwInstance, DWORD fdwEnum
|
---|
590 | );
|
---|
591 | MMRESULT WINAPI acmDriverID(
|
---|
592 | HACMOBJ hao, PHACMDRIVERID phadid, DWORD fdwDriverID
|
---|
593 | );
|
---|
594 | LRESULT WINAPI acmDriverMessage(
|
---|
595 | HACMDRIVER had, UINT uMsg, LPARAM lParam1, LPARAM lParam2
|
---|
596 | );
|
---|
597 | MMRESULT WINAPI acmDriverOpen(
|
---|
598 | PHACMDRIVER phad, HACMDRIVERID hadid, DWORD fdwOpen
|
---|
599 | );
|
---|
600 | MMRESULT WINAPI acmDriverPriority(
|
---|
601 | HACMDRIVERID hadid, DWORD dwPriority, DWORD fdwPriority
|
---|
602 | );
|
---|
603 | MMRESULT WINAPI acmDriverRemove(
|
---|
604 | HACMDRIVERID hadid, DWORD fdwRemove
|
---|
605 | );
|
---|
606 | MMRESULT WINAPI acmFilterChooseA(
|
---|
607 | PACMFILTERCHOOSEA pafltrc
|
---|
608 | );
|
---|
609 | MMRESULT WINAPI acmFilterChooseW(
|
---|
610 | PACMFILTERCHOOSEW pafltrc
|
---|
611 | );
|
---|
612 | #define acmFilterChoose WINELIB_NAME_AW(acmFilterChoose)
|
---|
613 |
|
---|
614 | MMRESULT WINAPI acmFilterDetailsA(
|
---|
615 | HACMDRIVER had, PACMFILTERDETAILSA pafd, DWORD fdwDetails
|
---|
616 | );
|
---|
617 | MMRESULT WINAPI acmFilterDetailsW(
|
---|
618 | HACMDRIVER had, PACMFILTERDETAILSW pafd, DWORD fdwDetails
|
---|
619 | );
|
---|
620 | #define acmFilterDetails WINELIB_NAME_AW(acmFilterDetails)
|
---|
621 |
|
---|
622 | MMRESULT WINAPI acmFilterEnumA(
|
---|
623 | HACMDRIVER had, PACMFILTERDETAILSA pafd,
|
---|
624 | ACMFILTERENUMCBA fnCallback, DWORD dwInstance, DWORD fdwEnum
|
---|
625 | );
|
---|
626 | MMRESULT WINAPI acmFilterEnumW(
|
---|
627 | HACMDRIVER had, PACMFILTERDETAILSW pafd,
|
---|
628 | ACMFILTERENUMCBW fnCallback, DWORD dwInstance, DWORD fdwEnum
|
---|
629 | );
|
---|
630 | #define acmFilterEnum WINELIB_NAME_AW(acmFilterEnum)
|
---|
631 |
|
---|
632 | MMRESULT WINAPI acmFilterTagDetailsA(
|
---|
633 | HACMDRIVER had, PACMFILTERTAGDETAILSA paftd, DWORD fdwDetails
|
---|
634 | );
|
---|
635 | MMRESULT WINAPI acmFilterTagDetailsW(
|
---|
636 | HACMDRIVER had, PACMFILTERTAGDETAILSW paftd, DWORD fdwDetails
|
---|
637 | );
|
---|
638 | #define acmFilterTagDetails WINELIB_NAME_AW(acmFilterTagDetails)
|
---|
639 |
|
---|
640 | MMRESULT WINAPI acmFilterTagEnumA(
|
---|
641 | HACMDRIVER had, PACMFILTERTAGDETAILSA paftd,
|
---|
642 | ACMFILTERTAGENUMCBA fnCallback, DWORD dwInstance, DWORD fdwEnum
|
---|
643 | );
|
---|
644 | MMRESULT WINAPI acmFilterTagEnumW(
|
---|
645 | HACMDRIVER had, PACMFILTERTAGDETAILSW paftd,
|
---|
646 | ACMFILTERTAGENUMCBW fnCallback, DWORD dwInstance, DWORD fdwEnum
|
---|
647 | );
|
---|
648 | #define acmFilterTagEnum WINELIB_NAME_AW(acmFilterTagEnum)
|
---|
649 |
|
---|
650 | MMRESULT WINAPI acmFormatChooseA(
|
---|
651 | PACMFORMATCHOOSEA pafmtc
|
---|
652 | );
|
---|
653 | MMRESULT WINAPI acmFormatChooseW(
|
---|
654 | PACMFORMATCHOOSEW pafmtc
|
---|
655 | );
|
---|
656 | #define acmFormatChoose WINELIB_NAME_AW(acmFormatChoose)
|
---|
657 |
|
---|
658 | MMRESULT WINAPI acmFormatDetailsA(
|
---|
659 | HACMDRIVER had, PACMFORMATDETAILSA pafd, DWORD fdwDetails
|
---|
660 | );
|
---|
661 | MMRESULT WINAPI acmFormatDetailsW(
|
---|
662 | HACMDRIVER had, PACMFORMATDETAILSW pafd, DWORD fdwDetails
|
---|
663 | );
|
---|
664 | #define acmFormatDetails WINELIB_NAME_AW(acmFormatDetails)
|
---|
665 |
|
---|
666 | MMRESULT WINAPI acmFormatEnumA(
|
---|
667 | HACMDRIVER had, PACMFORMATDETAILSA pafd,
|
---|
668 | ACMFORMATENUMCBA fnCallback, DWORD dwInstance, DWORD fdwEnum
|
---|
669 | );
|
---|
670 | MMRESULT WINAPI acmFormatEnumW(
|
---|
671 | HACMDRIVER had, PACMFORMATDETAILSW pafd,
|
---|
672 | ACMFORMATENUMCBW fnCallback, DWORD dwInstance, DWORD fdwEnum
|
---|
673 | );
|
---|
674 | #define acmFormatEnum WINELIB_NAME_AW(acmFormatEnum)
|
---|
675 |
|
---|
676 | MMRESULT WINAPI acmFormatSuggest(
|
---|
677 | HACMDRIVER had, PWAVEFORMATEX pwfxSrc, PWAVEFORMATEX pwfxDst,
|
---|
678 | DWORD cbwfxDst, DWORD fdwSuggest
|
---|
679 | );
|
---|
680 | MMRESULT WINAPI acmFormatTagDetailsA(
|
---|
681 | HACMDRIVER had, PACMFORMATTAGDETAILSA paftd, DWORD fdwDetails
|
---|
682 | );
|
---|
683 | MMRESULT WINAPI acmFormatTagDetailsW(
|
---|
684 | HACMDRIVER had, PACMFORMATTAGDETAILSW paftd, DWORD fdwDetails
|
---|
685 | );
|
---|
686 | #define acmFormatTagDetails WINELIB_NAME_AW(acmFormatTagDetails)
|
---|
687 |
|
---|
688 | MMRESULT WINAPI acmFormatTagEnumA(
|
---|
689 | HACMDRIVER had, PACMFORMATTAGDETAILSA paftd,
|
---|
690 | ACMFORMATTAGENUMCBA fnCallback, DWORD dwInstance, DWORD fdwEnum
|
---|
691 | );
|
---|
692 | MMRESULT WINAPI acmFormatTagEnumW(
|
---|
693 | HACMDRIVER had, PACMFORMATTAGDETAILSW paftd,
|
---|
694 | ACMFORMATTAGENUMCBW fnCallback, DWORD dwInstance, DWORD fdwEnum
|
---|
695 | );
|
---|
696 | #define acmFormatTagEnum WINELIB_NAME_AW(acmFormatTagEnum)
|
---|
697 |
|
---|
698 | DWORD WINAPI acmGetVersion(void
|
---|
699 | );
|
---|
700 | MMRESULT WINAPI acmMetrics(
|
---|
701 | HACMOBJ hao, UINT uMetric, LPVOID pMetric
|
---|
702 | );
|
---|
703 | MMRESULT WINAPI acmStreamClose(
|
---|
704 | HACMSTREAM has, DWORD fdwClose
|
---|
705 | );
|
---|
706 | MMRESULT WINAPI acmStreamConvert(
|
---|
707 | HACMSTREAM has, PACMSTREAMHEADER pash, DWORD fdwConvert
|
---|
708 | );
|
---|
709 | MMRESULT WINAPI acmStreamMessage(
|
---|
710 | HACMSTREAM has, UINT uMsg, LPARAM lParam1, LPARAM lParam2
|
---|
711 | );
|
---|
712 | MMRESULT WINAPI acmStreamOpen(
|
---|
713 | PHACMSTREAM phas, HACMDRIVER had, PWAVEFORMATEX pwfxSrc,
|
---|
714 | PWAVEFORMATEX pwfxDst, PWAVEFILTER pwfltr, DWORD dwCallback,
|
---|
715 | DWORD dwInstance, DWORD fdwOpen
|
---|
716 | );
|
---|
717 | MMRESULT WINAPI acmStreamPrepareHeader(
|
---|
718 | HACMSTREAM has, PACMSTREAMHEADER pash, DWORD fdwPrepare
|
---|
719 | );
|
---|
720 | MMRESULT WINAPI acmStreamReset(
|
---|
721 | HACMSTREAM has, DWORD fdwReset
|
---|
722 | );
|
---|
723 | MMRESULT WINAPI acmStreamSize(
|
---|
724 | HACMSTREAM has, DWORD cbInput,
|
---|
725 | LPDWORD pdwOutputBytes, DWORD fdwSize
|
---|
726 | );
|
---|
727 | MMRESULT WINAPI acmStreamUnprepareHeader(
|
---|
728 | HACMSTREAM has, PACMSTREAMHEADER pash, DWORD fdwUnprepare
|
---|
729 | );
|
---|
730 |
|
---|
731 | #ifdef __cplusplus
|
---|
732 | } /* extern "C" */
|
---|
733 | #endif /* defined(__cplusplus) */
|
---|
734 |
|
---|
735 | #endif /* __WINE_MSACM_H */
|
---|
736 |
|
---|
737 |
|
---|