1 /**
2  * This file is part of the mingw-w64 runtime package.
3  * No warranty is given; refer to the file DISCLAIMER within this package.
4  */
5 
6 #include <winapifamily.h>
7 
8 #ifndef __WIDL__
9 
10 #ifndef _INC_MMREG
11 #define _INC_MMREG 158
12 
13 #ifndef RC_INVOKED
14 #include "pshpack1.h"
15 #endif
16 
17 #ifdef __cplusplus
18 extern "C" {
19 #endif
20 
21 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
22 
23 #ifndef NOMMIDS
24 #ifndef MM_MICROSOFT
25 #define MM_MICROSOFT 1
26 #endif /* MM_MICROSOFT */
27 #define MM_CREATIVE 2
28 #define MM_MEDIAVISION 3
29 #define MM_FUJITSU 4
30 #define MM_PRAGMATRAX 5
31 #define MM_CYRIX 6
32 #define MM_PHILIPS_SPEECH_PROCESSING 7
33 #define MM_NETXL 8
34 #define MM_ZYXEL 9
35 #define MM_BECUBED 10
36 #define MM_AARDVARK 11
37 #define MM_BINTEC 12
38 #define MM_HEWLETT_PACKARD 13
39 #define MM_ACULAB 14
40 #define MM_FAITH 15
41 #define MM_MITEL 16
42 #define MM_QUANTUM3D 17
43 #define MM_SNI 18
44 #define MM_EMU 19
45 #define MM_ARTISOFT 20
46 #define MM_TURTLE_BEACH 21
47 #define MM_IBM 22
48 #define MM_VOCALTEC 23
49 #define MM_ROLAND 24
50 #define MM_DSP_SOLUTIONS 25
51 #define MM_NEC 26
52 #define MM_ATI 27
53 #define MM_WANGLABS 28
54 #define MM_TANDY 29
55 #define MM_VOYETRA 30
56 #define MM_ANTEX 31
57 #define MM_ICL_PS 32
58 #define MM_INTEL 33
59 #define MM_GRAVIS 34
60 #define MM_VAL 35
61 #define MM_INTERACTIVE 36
62 #define MM_YAMAHA 37
63 #define MM_EVEREX 38
64 #define MM_ECHO 39
65 #define MM_SIERRA 40
66 #define MM_CAT 41
67 #define MM_APPS 42
68 #define MM_DSP_GROUP 43
69 #define MM_MELABS 44
70 #define MM_COMPUTER_FRIENDS 45
71 #define MM_ESS 46
72 #define MM_AUDIOFILE 47
73 #define MM_MOTOROLA 48
74 #define MM_CANOPUS 49
75 #define MM_EPSON 50
76 #define MM_TRUEVISION 51
77 #define MM_AZTECH 52
78 #define MM_VIDEOLOGIC 53
79 #define MM_SCALACS 54
80 #define MM_KORG 55
81 #define MM_APT 56
82 #define MM_ICS 57
83 #define MM_ITERATEDSYS 58
84 #define MM_METHEUS 59
85 #define MM_LOGITECH 60
86 #define MM_WINNOV 61
87 #define MM_NCR 62
88 #define MM_EXAN 63
89 #define MM_AST 64
90 #define MM_WILLOWPOND 65
91 #define MM_SONICFOUNDRY 66
92 #define MM_VITEC 67
93 #define MM_MOSCOM 68
94 #define MM_SILICONSOFT 69
95 #define MM_TERRATEC 70
96 #define MM_MEDIASONIC 71
97 #define MM_SANYO 72
98 #define MM_SUPERMAC 73
99 #define MM_AUDIOPT 74
100 #define MM_NOGATECH 75
101 #define MM_SPEECHCOMP 76
102 #define MM_AHEAD 77
103 #define MM_DOLBY 78
104 #define MM_OKI 79
105 #define MM_AURAVISION 80
106 #define MM_OLIVETTI 81
107 #define MM_IOMAGIC 82
108 #define MM_MATSUSHITA 83
109 #define MM_CONTROLRES 84
110 #define MM_XEBEC 85
111 #define MM_NEWMEDIA 86
112 #define MM_NMS 87
113 #define MM_LYRRUS 88
114 #define MM_COMPUSIC 89
115 #define MM_OPTI 90
116 #define MM_ADLACC 91
117 #define MM_COMPAQ 92
118 #define MM_DIALOGIC 93
119 #define MM_INSOFT 94
120 #define MM_MPTUS 95
121 #define MM_WEITEK 96
122 #define MM_LERNOUT_AND_HAUSPIE 97
123 #define MM_QCIAR 98
124 #define MM_APPLE 99
125 #define MM_DIGITAL 100
126 #define MM_MOTU 101
127 #define MM_WORKBIT 102
128 #define MM_OSITECH 103
129 #define MM_MIRO 104
130 #define MM_CIRRUSLOGIC 105
131 #define MM_ISOLUTION 106
132 #define MM_HORIZONS 107
133 #define MM_CONCEPTS 108
134 #define MM_VTG 109
135 #define MM_RADIUS 110
136 #define MM_ROCKWELL 111
137 #define MM_XYZ 112
138 #define MM_OPCODE 113
139 #define MM_VOXWARE 114
140 #define MM_NORTHERN_TELECOM 115
141 #define MM_APICOM 116
142 #define MM_GRANDE 117
143 #define MM_ADDX 118
144 #define MM_WILDCAT 119
145 #define MM_RHETOREX 120
146 #define MM_BROOKTREE 121
147 #define MM_ENSONIQ 125
148 #define MM_FAST 126
149 #define MM_NVIDIA 127
150 #define MM_OKSORI 128
151 #define MM_DIACOUSTICS 129
152 #define MM_GULBRANSEN 130
153 #define MM_KAY_ELEMETRICS 131
154 #define MM_CRYSTAL 132
155 #define MM_SPLASH_STUDIOS 133
156 #define MM_QUARTERDECK 134
157 #define MM_TDK 135
158 #define MM_DIGITAL_AUDIO_LABS 136
159 #define MM_SEERSYS 137
160 #define MM_PICTURETEL 138
161 #define MM_ATT_MICROELECTRONICS 139
162 #define MM_OSPREY 140
163 #define MM_MEDIATRIX 141
164 #define MM_SOUNDESIGNS 142
165 #define MM_ALDIGITAL 143
166 #define MM_SPECTRUM_SIGNAL_PROCESSING 144
167 #define MM_ECS 145
168 #define MM_AMD 146
169 #define MM_COREDYNAMICS 147
170 #define MM_CANAM 148
171 #define MM_SOFTSOUND 149
172 #define MM_NORRIS 150
173 #define MM_DDD 151
174 #define MM_EUPHONICS 152
175 #define MM_PRECEPT 153
176 #define MM_CRYSTAL_NET 154
177 #define MM_CHROMATIC 155
178 #define MM_VOICEINFO 156
179 #define MM_VIENNASYS 157
180 #define MM_CONNECTIX 158
181 #define MM_GADGETLABS 159
182 #define MM_FRONTIER 160
183 #define MM_VIONA 161
184 #define MM_CASIO 162
185 #define MM_DIAMONDMM 163
186 #define MM_S3 164
187 #define MM_DVISION 165
188 #define MM_NETSCAPE 166
189 #define MM_SOUNDSPACE 167
190 #define MM_VANKOEVERING 168
191 #define MM_QTEAM 169
192 #define MM_ZEFIRO 170
193 #define MM_STUDER 171
194 #define MM_FRAUNHOFER_IIS 172
195 #define MM_QUICKNET 173
196 #define MM_ALARIS 174
197 #define MM_SICRESOURCE 175
198 #define MM_NEOMAGIC 176
199 #define MM_MERGING_TECHNOLOGIES 177
200 #define MM_XIRLINK 178
201 #define MM_COLORGRAPH 179
202 #define MM_OTI 180
203 #define MM_AUREAL 181
204 #define MM_VIVO 182
205 #define MM_SHARP 183
206 #define MM_LUCENT 184
207 #define MM_ATT 185
208 #define MM_SUNCOM 186
209 #define MM_SORVIS 187
210 #define MM_INVISION 188
211 #define MM_BERKOM 189
212 #define MM_MARIAN 190
213 #define MM_DPSINC 191
214 #define MM_BCB 192
215 #define MM_MOTIONPIXELS 193
216 #define MM_QDESIGN 194
217 #define MM_NMP 195
218 #define MM_DATAFUSION 196
219 #define MM_DUCK 197
220 #define MM_FTR 198
221 #define MM_BERCOS 199
222 #define MM_ONLIVE 200
223 #define MM_SIEMENS_SBC 201
224 #define MM_TERALOGIC 202
225 #define MM_PHONET 203
226 #define MM_WINBOND 204
227 #define MM_VIRTUALMUSIC 205
228 #define MM_ENET 206
229 #define MM_GUILLEMOT 207
230 #define MM_EMAGIC 208
231 #define MM_MWM 209
232 #define MM_PACIFICRESEARCH 210
233 #define MM_SIPROLAB 211
234 #define MM_LYNX 212
235 #define MM_SPECTRUM_PRODUCTIONS 213
236 #define MM_DICTAPHONE 214
237 #define MM_QUALCOMM 215
238 #define MM_RZS 216
239 #define MM_AUDIOSCIENCE 217
240 #define MM_PINNACLE 218
241 #define MM_EES 219
242 #define MM_HAFTMANN 220
243 #define MM_LUCID 221
244 #define MM_HEADSPACE 222
245 #define MM_UNISYS 223
246 #define MM_LUMINOSITI 224
247 #define MM_ACTIVEVOICE 225
248 #define MM_DTS 226
249 #define MM_DIGIGRAM 227
250 #define MM_SOFTLAB_NSK 228
251 #define MM_FORTEMEDIA 229
252 #define MM_SONORUS 230
253 #define MM_ARRAY 231
254 #define MM_DATARAN 232
255 #define MM_I_LINK 233
256 #define MM_SELSIUS_SYSTEMS 234
257 #define MM_ADMOS 235
258 #define MM_LEXICON 236
259 #define MM_SGI 237
260 #define MM_IPI 238
261 #define MM_ICE 239
262 #define MM_VQST 240
263 #define MM_ETEK 241
264 #define MM_CS 242
265 #define MM_ALESIS 243
266 #define MM_INTERNET 244
267 #define MM_SONY 245
268 #define MM_HYPERACTIVE 246
269 #define MM_UHER_INFORMATIC 247
270 #define MM_SYDEC_NV 248
271 #define MM_FLEXION 249
272 #define MM_VIA 250
273 #define MM_MICRONAS 251
274 #define MM_ANALOGDEVICES 252
275 #define MM_HP 253
276 #define MM_MATROX_DIV 254
277 #define MM_QUICKAUDIO 255
278 #define MM_YOUCOM 256
279 #define MM_RICHMOND 257
280 #define MM_IODD 258
281 #define MM_ICCC 259
282 #define MM_3COM 260
283 #define MM_MALDEN 261
284 #define MM_3DFX 262
285 #define MM_MINDMAKER 263
286 #define MM_TELEKOL 264
287 #define MM_ST_MICROELECTRONICS 265
288 #define MM_ALGOVISION 266
289 
290 #define MM_UNMAPPED 0xffff
291 #define MM_PID_UNMAPPED MM_UNMAPPED
292 
293 #ifdef GUID_DEFINED
294 #if !defined (INIT_MMREG_MID)
295 #define INIT_MMREG_MID(guid, id) { (guid)->Data1 = 0xd5a47fa7 + (USHORT) (id); (guid)->Data2 = 0x6d98; (guid)->Data3 = 0x11d1; (guid)->Data4[0] = 0xa2; (guid)->Data4[1] = 0x1a; (guid)->Data4[2] = 0x00; (guid)->Data4[3] = 0xa0; (guid)->Data4[4] = 0xc9; (guid)->Data4[5] = 0x22; (guid)->Data4[6] = 0x31; (guid)->Data4[7] = 0x96; }
296 #define EXTRACT_MMREG_MID(guid) (USHORT) ((guid)->Data1 - 0xd5a47fa7)
297 #define DEFINE_MMREG_MID_GUID(id) 0xd5a47fa7+ (USHORT) (id), 0x6d98, 0x11d1, 0xa2, 0x1a, 0x00, 0xa0, 0xc9, 0x22, 0x31, 0x96
298 #define IS_COMPATIBLE_MMREG_MID(guid) (((guid)->Data1 >= 0xd5a47fa7) && ((guid)->Data1 < 0xd5a47fa7 + 0xffff) && ((guid)->Data2 == 0x6d98) && ((guid)->Data3 == 0x11d1) && ((guid)->Data4[0] == 0xa2) && ((guid)->Data4[1] == 0x1a) && ((guid)->Data4[2] == 0x00) && ((guid)->Data4[3] == 0xa0) && ((guid)->Data4[4] == 0xc9) && ((guid)->Data4[5] == 0x22) && ((guid)->Data4[6] == 0x31) && ((guid)->Data4[7] == 0x96))
299 #endif
300 #if !defined (INIT_MMREG_PID)
301 #define INIT_MMREG_PID(guid, id) { (guid)->Data1 = 0xe36dc2ac + (USHORT) (id); (guid)->Data2 = 0x6d9a; (guid)->Data3 = 0x11d1; (guid)->Data4[0] = 0xa2; (guid)->Data4[1] = 0x1a; (guid)->Data4[2] = 0x00; (guid)->Data4[3] = 0xa0; (guid)->Data4[4] = 0xc9; (guid)->Data4[5] = 0x22; (guid)->Data4[6] = 0x31; (guid)->Data4[7] = 0x96; }
302 #define EXTRACT_MMREG_PID(guid) (USHORT) ((guid)->Data1 - 0xe36dc2ac)
303 #define DEFINE_MMREG_PID_GUID(id) 0xe36dc2ac+ (USHORT) (id), 0x6d9a, 0x11d1, 0xa2, 0x1a, 0x00, 0xa0, 0xc9, 0x22, 0x31, 0x96
304 #define IS_COMPATIBLE_MMREG_PID(guid) (((guid)->Data1 >= 0xe36dc2ac) && ((guid)->Data1 < 0xe36dc2ac + 0xffff) && ((guid)->Data2 == 0x6d9a) && ((guid)->Data3 == 0x11d1) && ((guid)->Data4[0] == 0xa2) && ((guid)->Data4[1] == 0x1a) && ((guid)->Data4[2] == 0x00) && ((guid)->Data4[3] == 0xa0) && ((guid)->Data4[4] == 0xc9) && ((guid)->Data4[5] == 0x22) && ((guid)->Data4[6] == 0x31) && ((guid)->Data4[7] == 0x96))
305 #endif
306 #endif /* GUID_DEFINED */
307 
308 #ifndef MM_MIDI_MAPPER
309 #define MM_MIDI_MAPPER 1
310 #define MM_WAVE_MAPPER 2
311 #define MM_SNDBLST_MIDIOUT 3
312 #define MM_SNDBLST_MIDIIN 4
313 #define MM_SNDBLST_SYNTH 5
314 #define MM_SNDBLST_WAVEOUT 6
315 #define MM_SNDBLST_WAVEIN 7
316 #define MM_ADLIB 9
317 #define MM_MPU401_MIDIOUT 10
318 #define MM_MPU401_MIDIIN 11
319 #define MM_PC_JOYSTICK 12
320 #endif
321 
322 #define MM_PCSPEAKER_WAVEOUT 13
323 #define MM_MSFT_WSS_WAVEIN 14
324 #define MM_MSFT_WSS_WAVEOUT 15
325 #define MM_MSFT_WSS_FMSYNTH_STEREO 16
326 #define MM_MSFT_WSS_MIXER 17
327 #define MM_MSFT_WSS_OEM_WAVEIN 18
328 #define MM_MSFT_WSS_OEM_WAVEOUT 19
329 #define MM_MSFT_WSS_OEM_FMSYNTH_STEREO 20
330 #define MM_MSFT_WSS_AUX 21
331 #define MM_MSFT_WSS_OEM_AUX 22
332 #define MM_MSFT_GENERIC_WAVEIN 23
333 #define MM_MSFT_GENERIC_WAVEOUT 24
334 #define MM_MSFT_GENERIC_MIDIIN 25
335 #define MM_MSFT_GENERIC_MIDIOUT 26
336 #define MM_MSFT_GENERIC_MIDISYNTH 27
337 #define MM_MSFT_GENERIC_AUX_LINE 28
338 #define MM_MSFT_GENERIC_AUX_MIC 29
339 #define MM_MSFT_GENERIC_AUX_CD 30
340 #define MM_MSFT_WSS_OEM_MIXER 31
341 #define MM_MSFT_MSACM 32
342 #define MM_MSFT_ACM_MSADPCM 33
343 #define MM_MSFT_ACM_IMAADPCM 34
344 #define MM_MSFT_ACM_MSFILTER 35
345 #define MM_MSFT_ACM_GSM610 36
346 #define MM_MSFT_ACM_G711 37
347 #define MM_MSFT_ACM_PCM 38
348 #define MM_WSS_SB16_WAVEIN 39
349 #define MM_WSS_SB16_WAVEOUT 40
350 #define MM_WSS_SB16_MIDIIN 41
351 #define MM_WSS_SB16_MIDIOUT 42
352 #define MM_WSS_SB16_SYNTH 43
353 #define MM_WSS_SB16_AUX_LINE 44
354 #define MM_WSS_SB16_AUX_CD 45
355 #define MM_WSS_SB16_MIXER 46
356 #define MM_WSS_SBPRO_WAVEIN 47
357 #define MM_WSS_SBPRO_WAVEOUT 48
358 #define MM_WSS_SBPRO_MIDIIN 49
359 #define MM_WSS_SBPRO_MIDIOUT 50
360 #define MM_WSS_SBPRO_SYNTH 51
361 #define MM_WSS_SBPRO_AUX_LINE 52
362 #define MM_WSS_SBPRO_AUX_CD 53
363 #define MM_WSS_SBPRO_MIXER 54
364 #define MM_MSFT_WSS_NT_WAVEIN 55
365 #define MM_MSFT_WSS_NT_WAVEOUT 56
366 #define MM_MSFT_WSS_NT_FMSYNTH_STEREO 57
367 #define MM_MSFT_WSS_NT_MIXER 58
368 #define MM_MSFT_WSS_NT_AUX 59
369 #define MM_MSFT_SB16_WAVEIN 60
370 #define MM_MSFT_SB16_WAVEOUT 61
371 #define MM_MSFT_SB16_MIDIIN 62
372 #define MM_MSFT_SB16_MIDIOUT 63
373 #define MM_MSFT_SB16_SYNTH 64
374 #define MM_MSFT_SB16_AUX_LINE 65
375 #define MM_MSFT_SB16_AUX_CD 66
376 #define MM_MSFT_SB16_MIXER 67
377 #define MM_MSFT_SBPRO_WAVEIN 68
378 #define MM_MSFT_SBPRO_WAVEOUT 69
379 #define MM_MSFT_SBPRO_MIDIIN 70
380 #define MM_MSFT_SBPRO_MIDIOUT 71
381 #define MM_MSFT_SBPRO_SYNTH 72
382 #define MM_MSFT_SBPRO_AUX_LINE 73
383 #define MM_MSFT_SBPRO_AUX_CD 74
384 #define MM_MSFT_SBPRO_MIXER 75
385 #define MM_MSFT_MSOPL_SYNTH 76
386 #define MM_MSFT_VMDMS_LINE_WAVEIN 80
387 #define MM_MSFT_VMDMS_LINE_WAVEOUT 81
388 #define MM_MSFT_VMDMS_HANDSET_WAVEIN 82
389 #define MM_MSFT_VMDMS_HANDSET_WAVEOUT 83
390 #define MM_MSFT_VMDMW_LINE_WAVEIN 84
391 #define MM_MSFT_VMDMW_LINE_WAVEOUT 85
392 #define MM_MSFT_VMDMW_HANDSET_WAVEIN 86
393 #define MM_MSFT_VMDMW_HANDSET_WAVEOUT 87
394 #define MM_MSFT_VMDMW_MIXER 88
395 #define MM_MSFT_VMDM_GAME_WAVEOUT 89
396 #define MM_MSFT_VMDM_GAME_WAVEIN 90
397 #define MM_MSFT_ACM_MSNAUDIO 91
398 #define MM_MSFT_ACM_MSG723 92
399 #define MM_MSFT_ACM_MSRT24 93
400 
401 #define MM_MSFT_WDMAUDIO_WAVEOUT 100
402 #define MM_MSFT_WDMAUDIO_WAVEIN 101
403 #define MM_MSFT_WDMAUDIO_MIDIOUT 102
404 #define MM_MSFT_WDMAUDIO_MIDIIN 103
405 #define MM_MSFT_WDMAUDIO_MIXER 104
406 #define MM_MSFT_WDMAUDIO_AUX 105
407 
408 #define MM_CREATIVE_SB15_WAVEIN 1
409 #define MM_CREATIVE_SB20_WAVEIN 2
410 #define MM_CREATIVE_SBPRO_WAVEIN 3
411 #define MM_CREATIVE_SBP16_WAVEIN 4
412 #define MM_CREATIVE_PHNBLST_WAVEIN 5
413 #define MM_CREATIVE_SB15_WAVEOUT 101
414 #define MM_CREATIVE_SB20_WAVEOUT 102
415 #define MM_CREATIVE_SBPRO_WAVEOUT 103
416 #define MM_CREATIVE_SBP16_WAVEOUT 104
417 #define MM_CREATIVE_PHNBLST_WAVEOUT 105
418 #define MM_CREATIVE_MIDIOUT 201
419 #define MM_CREATIVE_MIDIIN 202
420 #define MM_CREATIVE_FMSYNTH_MONO 301
421 #define MM_CREATIVE_FMSYNTH_STEREO 302
422 #define MM_CREATIVE_MIDI_AWE32 303
423 #define MM_CREATIVE_AUX_CD 401
424 #define MM_CREATIVE_AUX_LINE 402
425 #define MM_CREATIVE_AUX_MIC 403
426 #define MM_CREATIVE_AUX_MASTER 404
427 #define MM_CREATIVE_AUX_PCSPK 405
428 #define MM_CREATIVE_AUX_WAVE 406
429 #define MM_CREATIVE_AUX_MIDI 407
430 #define MM_CREATIVE_SBPRO_MIXER 408
431 #define MM_CREATIVE_SB16_MIXER 409
432 
433 #define MM_MEDIAVISION_PROAUDIO 0x10
434 #define MM_PROAUD_MIDIOUT (MM_MEDIAVISION_PROAUDIO+1)
435 #define MM_PROAUD_MIDIIN (MM_MEDIAVISION_PROAUDIO+2)
436 #define MM_PROAUD_SYNTH (MM_MEDIAVISION_PROAUDIO+3)
437 #define MM_PROAUD_WAVEOUT (MM_MEDIAVISION_PROAUDIO+4)
438 #define MM_PROAUD_WAVEIN (MM_MEDIAVISION_PROAUDIO+5)
439 #define MM_PROAUD_MIXER (MM_MEDIAVISION_PROAUDIO+6)
440 #define MM_PROAUD_AUX (MM_MEDIAVISION_PROAUDIO+7)
441 
442 #define MM_MEDIAVISION_THUNDER 0x20
443 #define MM_THUNDER_SYNTH (MM_MEDIAVISION_THUNDER+3)
444 #define MM_THUNDER_WAVEOUT (MM_MEDIAVISION_THUNDER+4)
445 #define MM_THUNDER_WAVEIN (MM_MEDIAVISION_THUNDER+5)
446 #define MM_THUNDER_AUX (MM_MEDIAVISION_THUNDER+7)
447 
448 #define MM_MEDIAVISION_TPORT 0x40
449 #define MM_TPORT_WAVEOUT (MM_MEDIAVISION_TPORT+1)
450 #define MM_TPORT_WAVEIN (MM_MEDIAVISION_TPORT+2)
451 #define MM_TPORT_SYNTH (MM_MEDIAVISION_TPORT+3)
452 
453 #define MM_MEDIAVISION_PROAUDIO_PLUS 0x50
454 #define MM_PROAUD_PLUS_MIDIOUT (MM_MEDIAVISION_PROAUDIO_PLUS+1)
455 #define MM_PROAUD_PLUS_MIDIIN (MM_MEDIAVISION_PROAUDIO_PLUS+2)
456 #define MM_PROAUD_PLUS_SYNTH (MM_MEDIAVISION_PROAUDIO_PLUS+3)
457 #define MM_PROAUD_PLUS_WAVEOUT (MM_MEDIAVISION_PROAUDIO_PLUS+4)
458 #define MM_PROAUD_PLUS_WAVEIN (MM_MEDIAVISION_PROAUDIO_PLUS+5)
459 #define MM_PROAUD_PLUS_MIXER (MM_MEDIAVISION_PROAUDIO_PLUS+6)
460 #define MM_PROAUD_PLUS_AUX (MM_MEDIAVISION_PROAUDIO_PLUS+7)
461 
462 #define MM_MEDIAVISION_PROAUDIO_16 0x60
463 #define MM_PROAUD_16_MIDIOUT (MM_MEDIAVISION_PROAUDIO_16+1)
464 #define MM_PROAUD_16_MIDIIN (MM_MEDIAVISION_PROAUDIO_16+2)
465 #define MM_PROAUD_16_SYNTH (MM_MEDIAVISION_PROAUDIO_16+3)
466 #define MM_PROAUD_16_WAVEOUT (MM_MEDIAVISION_PROAUDIO_16+4)
467 #define MM_PROAUD_16_WAVEIN (MM_MEDIAVISION_PROAUDIO_16+5)
468 #define MM_PROAUD_16_MIXER (MM_MEDIAVISION_PROAUDIO_16+6)
469 #define MM_PROAUD_16_AUX (MM_MEDIAVISION_PROAUDIO_16+7)
470 
471 #define MM_MEDIAVISION_PROSTUDIO_16 0x60
472 #define MM_STUDIO_16_MIDIOUT (MM_MEDIAVISION_PROSTUDIO_16+1)
473 #define MM_STUDIO_16_MIDIIN (MM_MEDIAVISION_PROSTUDIO_16+2)
474 #define MM_STUDIO_16_SYNTH (MM_MEDIAVISION_PROSTUDIO_16+3)
475 #define MM_STUDIO_16_WAVEOUT (MM_MEDIAVISION_PROSTUDIO_16+4)
476 #define MM_STUDIO_16_WAVEIN (MM_MEDIAVISION_PROSTUDIO_16+5)
477 #define MM_STUDIO_16_MIXER (MM_MEDIAVISION_PROSTUDIO_16+6)
478 #define MM_STUDIO_16_AUX (MM_MEDIAVISION_PROSTUDIO_16+7)
479 
480 #define MM_MEDIAVISION_CDPC 0x70
481 #define MM_CDPC_MIDIOUT (MM_MEDIAVISION_CDPC+1)
482 #define MM_CDPC_MIDIIN (MM_MEDIAVISION_CDPC+2)
483 #define MM_CDPC_SYNTH (MM_MEDIAVISION_CDPC+3)
484 #define MM_CDPC_WAVEOUT (MM_MEDIAVISION_CDPC+4)
485 #define MM_CDPC_WAVEIN (MM_MEDIAVISION_CDPC+5)
486 #define MM_CDPC_MIXER (MM_MEDIAVISION_CDPC+6)
487 #define MM_CDPC_AUX (MM_MEDIAVISION_CDPC+7)
488 
489 #define MM_MEDIAVISION_OPUS1208 0x80
490 #define MM_OPUS401_MIDIOUT (MM_MEDIAVISION_OPUS1208+1)
491 #define MM_OPUS401_MIDIIN (MM_MEDIAVISION_OPUS1208+2)
492 #define MM_OPUS1208_SYNTH (MM_MEDIAVISION_OPUS1208+3)
493 #define MM_OPUS1208_WAVEOUT (MM_MEDIAVISION_OPUS1208+4)
494 #define MM_OPUS1208_WAVEIN (MM_MEDIAVISION_OPUS1208+5)
495 #define MM_OPUS1208_MIXER (MM_MEDIAVISION_OPUS1208+6)
496 #define MM_OPUS1208_AUX (MM_MEDIAVISION_OPUS1208+7)
497 
498 #define MM_MEDIAVISION_OPUS1216 0x90
499 #define MM_OPUS1216_MIDIOUT (MM_MEDIAVISION_OPUS1216+1)
500 #define MM_OPUS1216_MIDIIN (MM_MEDIAVISION_OPUS1216+2)
501 #define MM_OPUS1216_SYNTH (MM_MEDIAVISION_OPUS1216+3)
502 #define MM_OPUS1216_WAVEOUT (MM_MEDIAVISION_OPUS1216+4)
503 #define MM_OPUS1216_WAVEIN (MM_MEDIAVISION_OPUS1216+5)
504 #define MM_OPUS1216_MIXER (MM_MEDIAVISION_OPUS1216+6)
505 #define MM_OPUS1216_AUX (MM_MEDIAVISION_OPUS1216+7)
506 
507 #define MM_CYRIX_XASYNTH 1
508 #define MM_CYRIX_XAMIDIIN 2
509 #define MM_CYRIX_XAMIDIOUT 3
510 #define MM_CYRIX_XAWAVEIN 4
511 #define MM_CYRIX_XAWAVEOUT 5
512 #define MM_CYRIX_XAAUX 6
513 #define MM_CYRIX_XAMIXER 7
514 
515 #define MM_PHILIPS_ACM_LPCBB 1
516 #define MM_NETXL_XLVIDEO 1
517 #define MM_ZYXEL_ACM_ADPCM 1
518 
519 #define MM_AARDVARK_STUDIO12_WAVEOUT 1
520 #define MM_AARDVARK_STUDIO12_WAVEIN 2
521 #define MM_AARDVARK_STUDIO88_WAVEOUT 3
522 #define MM_AARDVARK_STUDIO88_WAVEIN 4
523 
524 #define MM_BINTEC_TAPI_WAVE 1
525 
526 #define MM_HEWLETT_PACKARD_CU_CODEC 1
527 
528 #define MM_MITEL_TALKTO_LINE_WAVEOUT 100
529 #define MM_MITEL_TALKTO_LINE_WAVEIN 101
530 #define MM_MITEL_TALKTO_HANDSET_WAVEOUT 102
531 #define MM_MITEL_TALKTO_HANDSET_WAVEIN 103
532 #define MM_MITEL_TALKTO_BRIDGED_WAVEOUT 104
533 #define MM_MITEL_TALKTO_BRIDGED_WAVEIN 105
534 #define MM_MITEL_MPA_HANDSET_WAVEOUT 200
535 #define MM_MITEL_MPA_HANDSET_WAVEIN 201
536 #define MM_MITEL_MPA_HANDSFREE_WAVEOUT 202
537 #define MM_MITEL_MPA_HANDSFREE_WAVEIN 203
538 #define MM_MITEL_MPA_LINE1_WAVEOUT 204
539 #define MM_MITEL_MPA_LINE1_WAVEIN 205
540 #define MM_MITEL_MPA_LINE2_WAVEOUT 206
541 #define MM_MITEL_MPA_LINE2_WAVEIN 207
542 #define MM_MITEL_MEDIAPATH_WAVEOUT 300
543 #define MM_MITEL_MEDIAPATH_WAVEIN 301
544 
545 #define MM_SNI_ACM_G721 1
546 
547 #define MM_EMU_APSSYNTH 1
548 #define MM_EMU_APSMIDIIN 2
549 #define MM_EMU_APSMIDIOUT 3
550 #define MM_EMU_APSWAVEIN 4
551 #define MM_EMU_APSWAVEOUT 5
552 
553 #define MM_ARTISOFT_SBWAVEIN 1
554 #define MM_ARTISOFT_SBWAVEOUT 2
555 
556 #define MM_TBS_TROPEZ_WAVEIN 37
557 #define MM_TBS_TROPEZ_WAVEOUT 38
558 #define MM_TBS_TROPEZ_AUX1 39
559 #define MM_TBS_TROPEZ_AUX2 40
560 #define MM_TBS_TROPEZ_LINE 41
561 
562 #define MM_MMOTION_WAVEAUX 1
563 #define MM_MMOTION_WAVEOUT 2
564 #define MM_MMOTION_WAVEIN 3
565 #define MM_IBM_PCMCIA_WAVEIN 11
566 #define MM_IBM_PCMCIA_WAVEOUT 12
567 #define MM_IBM_PCMCIA_SYNTH 13
568 #define MM_IBM_PCMCIA_MIDIIN 14
569 #define MM_IBM_PCMCIA_MIDIOUT 15
570 #define MM_IBM_PCMCIA_AUX 16
571 #define MM_IBM_THINKPAD200 17
572 #define MM_IBM_MWAVE_WAVEIN 18
573 #define MM_IBM_MWAVE_WAVEOUT 19
574 #define MM_IBM_MWAVE_MIXER 20
575 #define MM_IBM_MWAVE_MIDIIN 21
576 #define MM_IBM_MWAVE_MIDIOUT 22
577 #define MM_IBM_MWAVE_AUX 23
578 #define MM_IBM_WC_MIDIOUT 30
579 #define MM_IBM_WC_WAVEOUT 31
580 #define MM_IBM_WC_MIXEROUT 33
581 
582 #define MM_VOCALTEC_WAVEOUT 1
583 #define MM_VOCALTEC_WAVEIN 2
584 
585 #define MM_ROLAND_RAP10_MIDIOUT 10
586 #define MM_ROLAND_RAP10_MIDIIN 11
587 #define MM_ROLAND_RAP10_SYNTH 12
588 #define MM_ROLAND_RAP10_WAVEOUT 13
589 #define MM_ROLAND_RAP10_WAVEIN 14
590 #define MM_ROLAND_MPU401_MIDIOUT 15
591 #define MM_ROLAND_MPU401_MIDIIN 16
592 #define MM_ROLAND_SMPU_MIDIOUTA 17
593 #define MM_ROLAND_SMPU_MIDIOUTB 18
594 #define MM_ROLAND_SMPU_MIDIINA 19
595 #define MM_ROLAND_SMPU_MIDIINB 20
596 #define MM_ROLAND_SC7_MIDIOUT 21
597 #define MM_ROLAND_SC7_MIDIIN 22
598 #define MM_ROLAND_SERIAL_MIDIOUT 23
599 #define MM_ROLAND_SERIAL_MIDIIN 24
600 #define MM_ROLAND_SCP_MIDIOUT 38
601 #define MM_ROLAND_SCP_MIDIIN 39
602 #define MM_ROLAND_SCP_WAVEOUT 40
603 #define MM_ROLAND_SCP_WAVEIN 41
604 #define MM_ROLAND_SCP_MIXER 42
605 #define MM_ROLAND_SCP_AUX 48
606 
607 #define MM_DSP_SOLUTIONS_WAVEOUT 1
608 #define MM_DSP_SOLUTIONS_WAVEIN 2
609 #define MM_DSP_SOLUTIONS_SYNTH 3
610 #define MM_DSP_SOLUTIONS_AUX 4
611 
612 #define MM_NEC_73_86_SYNTH 5
613 #define MM_NEC_73_86_WAVEOUT 6
614 #define MM_NEC_73_86_WAVEIN 7
615 #define MM_NEC_26_SYNTH 9
616 #define MM_NEC_MPU401_MIDIOUT 10
617 #define MM_NEC_MPU401_MIDIIN 11
618 #define MM_NEC_JOYSTICK 12
619 
620 #define MM_WANGLABS_WAVEIN1 1
621 #define MM_WANGLABS_WAVEOUT1 2
622 
623 #define MM_TANDY_VISWAVEIN 1
624 #define MM_TANDY_VISWAVEOUT 2
625 #define MM_TANDY_VISBIOSSYNTH 3
626 #define MM_TANDY_SENS_MMAWAVEIN 4
627 #define MM_TANDY_SENS_MMAWAVEOUT 5
628 #define MM_TANDY_SENS_MMAMIDIIN 6
629 #define MM_TANDY_SENS_MMAMIDIOUT 7
630 #define MM_TANDY_SENS_VISWAVEOUT 8
631 #define MM_TANDY_PSSJWAVEIN 9
632 #define MM_TANDY_PSSJWAVEOUT 10
633 
634 #define MM_ANTEX_SX12_WAVEIN 1
635 #define MM_ANTEX_SX12_WAVEOUT 2
636 #define MM_ANTEX_SX15_WAVEIN 3
637 #define MM_ANTEX_SX15_WAVEOUT 4
638 #define MM_ANTEX_VP625_WAVEIN 5
639 #define MM_ANTEX_VP625_WAVEOUT 6
640 #define MM_ANTEX_AUDIOPORT22_WAVEIN 7
641 #define MM_ANTEX_AUDIOPORT22_WAVEOUT 8
642 #define MM_ANTEX_AUDIOPORT22_FEEDTHRU 9
643 
644 #define MM_INTELOPD_WAVEIN 1
645 #define MM_INTELOPD_WAVEOUT 101
646 #define MM_INTELOPD_AUX 401
647 #define MM_INTEL_NSPMODEMLINEIN 501
648 #define MM_INTEL_NSPMODEMLINEOUT 502
649 
650 #define MM_VAL_MICROKEY_AP_WAVEIN 1
651 #define MM_VAL_MICROKEY_AP_WAVEOUT 2
652 
653 #define MM_INTERACTIVE_WAVEIN 0x45
654 #define MM_INTERACTIVE_WAVEOUT 0x45
655 
656 #define MM_YAMAHA_GSS_SYNTH 0x01
657 #define MM_YAMAHA_GSS_WAVEOUT 0x02
658 #define MM_YAMAHA_GSS_WAVEIN 0x03
659 #define MM_YAMAHA_GSS_MIDIOUT 0x04
660 #define MM_YAMAHA_GSS_MIDIIN 0x05
661 #define MM_YAMAHA_GSS_AUX 0x06
662 #define MM_YAMAHA_SERIAL_MIDIOUT 0x07
663 #define MM_YAMAHA_SERIAL_MIDIIN 0x08
664 #define MM_YAMAHA_OPL3SA_WAVEOUT 0x10
665 #define MM_YAMAHA_OPL3SA_WAVEIN 0x11
666 #define MM_YAMAHA_OPL3SA_FMSYNTH 0x12
667 #define MM_YAMAHA_OPL3SA_YSYNTH 0x13
668 #define MM_YAMAHA_OPL3SA_MIDIOUT 0x14
669 #define MM_YAMAHA_OPL3SA_MIDIIN 0x15
670 #define MM_YAMAHA_OPL3SA_MIXER 0x17
671 #define MM_YAMAHA_OPL3SA_JOYSTICK 0x18
672 #define MM_YAMAHA_YMF724LEG_MIDIOUT 0x19
673 #define MM_YAMAHA_YMF724LEG_MIDIIN 0x1a
674 #define MM_YAMAHA_YMF724_WAVEOUT 0x1b
675 #define MM_YAMAHA_YMF724_WAVEIN 0x1c
676 #define MM_YAMAHA_YMF724_MIDIOUT 0x1d
677 #define MM_YAMAHA_YMF724_AUX 0x1e
678 #define MM_YAMAHA_YMF724_MIXER 0x1f
679 #define MM_YAMAHA_YMF724LEG_FMSYNTH 0x20
680 #define MM_YAMAHA_YMF724LEG_MIXER 0x21
681 #define MM_YAMAHA_SXG_MIDIOUT 0x22
682 #define MM_YAMAHA_SXG_WAVEOUT 0x23
683 #define MM_YAMAHA_SXG_MIXER 0x24
684 #define MM_YAMAHA_ACXG_WAVEIN 0x25
685 #define MM_YAMAHA_ACXG_WAVEOUT 0x26
686 #define MM_YAMAHA_ACXG_MIDIOUT 0x27
687 #define MM_YAMAHA_ACXG_MIXER 0x28
688 #define MM_YAMAHA_ACXG_AUX 0x29
689 
690 #define MM_EVEREX_CARRIER 1
691 
692 #define MM_ECHO_SYNTH 1
693 #define MM_ECHO_WAVEOUT 2
694 #define MM_ECHO_WAVEIN 3
695 #define MM_ECHO_MIDIOUT 4
696 #define MM_ECHO_MIDIIN 5
697 #define MM_ECHO_AUX 6
698 
699 #define MM_SIERRA_ARIA_MIDIOUT 0x14
700 #define MM_SIERRA_ARIA_MIDIIN 0x15
701 #define MM_SIERRA_ARIA_SYNTH 0x16
702 #define MM_SIERRA_ARIA_WAVEOUT 0x17
703 #define MM_SIERRA_ARIA_WAVEIN 0x18
704 #define MM_SIERRA_ARIA_AUX 0x19
705 #define MM_SIERRA_ARIA_AUX2 0x20
706 #define MM_SIERRA_QUARTET_WAVEIN 0x50
707 #define MM_SIERRA_QUARTET_WAVEOUT 0x51
708 #define MM_SIERRA_QUARTET_MIDIIN 0x52
709 #define MM_SIERRA_QUARTET_MIDIOUT 0x53
710 #define MM_SIERRA_QUARTET_SYNTH 0x54
711 #define MM_SIERRA_QUARTET_AUX_CD 0x55
712 #define MM_SIERRA_QUARTET_AUX_LINE 0x56
713 #define MM_SIERRA_QUARTET_AUX_MODEM 0x57
714 #define MM_SIERRA_QUARTET_MIXER 0x58
715 
716 #define MM_CAT_WAVEOUT 1
717 
718 #define MM_DSP_GROUP_TRUESPEECH 1
719 
720 #define MM_MELABS_MIDI2GO 1
721 
722 #define MM_ESS_AMWAVEOUT 0x01
723 #define MM_ESS_AMWAVEIN 0x02
724 #define MM_ESS_AMAUX 0x03
725 #define MM_ESS_AMSYNTH 0x04
726 #define MM_ESS_AMMIDIOUT 0x05
727 #define MM_ESS_AMMIDIIN 0x06
728 #define MM_ESS_MIXER 0x07
729 #define MM_ESS_AUX_CD 0x08
730 #define MM_ESS_MPU401_MIDIOUT 0x09
731 #define MM_ESS_MPU401_MIDIIN 0x0a
732 #define MM_ESS_ES488_WAVEOUT 0x10
733 #define MM_ESS_ES488_WAVEIN 0x11
734 #define MM_ESS_ES488_MIXER 0x12
735 #define MM_ESS_ES688_WAVEOUT 0x13
736 #define MM_ESS_ES688_WAVEIN 0x14
737 #define MM_ESS_ES688_MIXER 0x15
738 #define MM_ESS_ES1488_WAVEOUT 0x16
739 #define MM_ESS_ES1488_WAVEIN 0x17
740 #define MM_ESS_ES1488_MIXER 0x18
741 #define MM_ESS_ES1688_WAVEOUT 0x19
742 #define MM_ESS_ES1688_WAVEIN 0x1a
743 #define MM_ESS_ES1688_MIXER 0x1b
744 #define MM_ESS_ES1788_WAVEOUT 0x1c
745 #define MM_ESS_ES1788_WAVEIN 0x1d
746 #define MM_ESS_ES1788_MIXER 0x1e
747 #define MM_ESS_ES1888_WAVEOUT 0x1f
748 #define MM_ESS_ES1888_WAVEIN 0x20
749 #define MM_ESS_ES1888_MIXER 0x21
750 #define MM_ESS_ES1868_WAVEOUT 0x22
751 #define MM_ESS_ES1868_WAVEIN 0x23
752 #define MM_ESS_ES1868_MIXER 0x24
753 #define MM_ESS_ES1878_WAVEOUT 0x25
754 #define MM_ESS_ES1878_WAVEIN 0x26
755 #define MM_ESS_ES1878_MIXER 0x27
756 
757 #define MM_CANOPUS_ACM_DVREX 1
758 
759 #define MM_EPS_FMSND 1
760 
761 #define MM_TRUEVISION_WAVEIN1 1
762 #define MM_TRUEVISION_WAVEOUT1 2
763 
764 #define MM_AZTECH_MIDIOUT 3
765 #define MM_AZTECH_MIDIIN 4
766 #define MM_AZTECH_WAVEIN 17
767 #define MM_AZTECH_WAVEOUT 18
768 #define MM_AZTECH_FMSYNTH 20
769 #define MM_AZTECH_MIXER 21
770 #define MM_AZTECH_PRO16_WAVEIN 33
771 #define MM_AZTECH_PRO16_WAVEOUT 34
772 #define MM_AZTECH_PRO16_FMSYNTH 38
773 #define MM_AZTECH_DSP16_WAVEIN 65
774 #define MM_AZTECH_DSP16_WAVEOUT 66
775 #define MM_AZTECH_DSP16_FMSYNTH 68
776 #define MM_AZTECH_DSP16_WAVESYNTH 70
777 #define MM_AZTECH_NOVA16_WAVEIN 71
778 #define MM_AZTECH_NOVA16_WAVEOUT 72
779 #define MM_AZTECH_NOVA16_MIXER 73
780 #define MM_AZTECH_WASH16_WAVEIN 74
781 #define MM_AZTECH_WASH16_WAVEOUT 75
782 #define MM_AZTECH_WASH16_MIXER 76
783 #define MM_AZTECH_AUX_CD 401
784 #define MM_AZTECH_AUX_LINE 402
785 #define MM_AZTECH_AUX_MIC 403
786 #define MM_AZTECH_AUX 404
787 
788 #define MM_VIDEOLOGIC_MSWAVEIN 1
789 #define MM_VIDEOLOGIC_MSWAVEOUT 2
790 
791 #define MM_KORG_PCIF_MIDIOUT 1
792 #define MM_KORG_PCIF_MIDIIN 2
793 #define MM_KORG_1212IO_MSWAVEIN 3
794 #define MM_KORG_1212IO_MSWAVEOUT 4
795 
796 #define MM_APT_ACE100CD 1
797 
798 #define MM_ICS_WAVEDECK_WAVEOUT 1
799 #define MM_ICS_WAVEDECK_WAVEIN 2
800 #define MM_ICS_WAVEDECK_MIXER 3
801 #define MM_ICS_WAVEDECK_AUX 4
802 #define MM_ICS_WAVEDECK_SYNTH 5
803 #define MM_ICS_WAVEDEC_SB_WAVEOUT 6
804 #define MM_ICS_WAVEDEC_SB_WAVEIN 7
805 #define MM_ICS_WAVEDEC_SB_FM_MIDIOUT 8
806 #define MM_ICS_WAVEDEC_SB_MPU401_MIDIOUT 9
807 #define MM_ICS_WAVEDEC_SB_MPU401_MIDIIN 10
808 #define MM_ICS_WAVEDEC_SB_MIXER 11
809 #define MM_ICS_WAVEDEC_SB_AUX 12
810 #define MM_ICS_2115_LITE_MIDIOUT 13
811 #define MM_ICS_2120_LITE_MIDIOUT 14
812 
813 #define MM_ITERATEDSYS_FUFCODEC 1
814 
815 #define MM_METHEUS_ZIPPER 1
816 
817 #define MM_WINNOV_CAVIAR_WAVEIN 1
818 #define MM_WINNOV_CAVIAR_WAVEOUT 2
819 #define MM_WINNOV_CAVIAR_VIDC 3
820 #define MM_WINNOV_CAVIAR_CHAMPAGNE 4
821 #define MM_WINNOV_CAVIAR_YUV8 5
822 
823 #define MM_NCR_BA_WAVEIN 1
824 #define MM_NCR_BA_WAVEOUT 2
825 #define MM_NCR_BA_SYNTH 3
826 #define MM_NCR_BA_AUX 4
827 #define MM_NCR_BA_MIXER 5
828 
829 #define MM_AST_MODEMWAVE_WAVEIN 13
830 #define MM_AST_MODEMWAVE_WAVEOUT 14
831 
832 #define MM_WILLOWPOND_FMSYNTH_STEREO 20
833 #define MM_WILLOWPOND_MPU401 21
834 #define MM_WILLOWPOND_SNDPORT_WAVEIN 100
835 #define MM_WILLOWPOND_SNDPORT_WAVEOUT 101
836 #define MM_WILLOWPOND_SNDPORT_MIXER 102
837 #define MM_WILLOWPOND_SNDPORT_AUX 103
838 #define MM_WILLOWPOND_PH_WAVEIN 104
839 #define MM_WILLOWPOND_PH_WAVEOUT 105
840 #define MM_WILLOWPOND_PH_MIXER 106
841 #define MM_WILLOWPOND_PH_AUX 107
842 #define MM_WILLOPOND_SNDCOMM_WAVEIN 108
843 #define MM_WILLOWPOND_SNDCOMM_WAVEOUT 109
844 #define MM_WILLOWPOND_SNDCOMM_MIXER 110
845 #define MM_WILLOWPOND_SNDCOMM_AUX 111
846 #define MM_WILLOWPOND_GENERIC_WAVEIN 112
847 #define MM_WILLOWPOND_GENERIC_WAVEOUT 113
848 #define MM_WILLOWPOND_GENERIC_MIXER 114
849 #define MM_WILLOWPOND_GENERIC_AUX 115
850 
851 #define MM_VITEC_VMAKER 1
852 #define MM_VITEC_VMPRO 2
853 
854 #define MM_MOSCOM_VPC2400_IN 1
855 #define MM_MOSCOM_VPC2400_OUT 2
856 
857 #define MM_SILICONSOFT_SC1_WAVEIN 1
858 #define MM_SILICONSOFT_SC1_WAVEOUT 2
859 #define MM_SILICONSOFT_SC2_WAVEIN 3
860 #define MM_SILICONSOFT_SC2_WAVEOUT 4
861 #define MM_SILICONSOFT_SOUNDJR2_WAVEOUT 5
862 #define MM_SILICONSOFT_SOUNDJR2PR_WAVEIN 6
863 #define MM_SILICONSOFT_SOUNDJR2PR_WAVEOUT 7
864 #define MM_SILICONSOFT_SOUNDJR3_WAVEOUT 8
865 
866 #define MM_TTEWS_WAVEIN 1
867 #define MM_TTEWS_WAVEOUT 2
868 #define MM_TTEWS_MIDIIN 3
869 #define MM_TTEWS_MIDIOUT 4
870 #define MM_TTEWS_MIDISYNTH 5
871 #define MM_TTEWS_MIDIMONITOR 6
872 #define MM_TTEWS_VMIDIIN 7
873 #define MM_TTEWS_VMIDIOUT 8
874 #define MM_TTEWS_AUX 9
875 #define MM_TTEWS_MIXER 10
876 
877 #define MM_MEDIASONIC_ACM_G723 1
878 #define MM_MEDIASONIC_ICOM 2
879 #define MM_ICOM_WAVEIN 3
880 #define MM_ICOM_WAVEOUT 4
881 #define MM_ICOM_MIXER 5
882 #define MM_ICOM_AUX 6
883 #define MM_ICOM_LINE 7
884 
885 #define MM_SANYO_ACM_LD_ADPCM 1
886 
887 #define MM_AHEAD_MULTISOUND 1
888 #define MM_AHEAD_SOUNDBLASTER 2
889 #define MM_AHEAD_PROAUDIO 3
890 #define MM_AHEAD_GENERIC 4
891 
892 #define MM_OLIVETTI_WAVEIN 1
893 #define MM_OLIVETTI_WAVEOUT 2
894 #define MM_OLIVETTI_MIXER 3
895 #define MM_OLIVETTI_AUX 4
896 #define MM_OLIVETTI_MIDIIN 5
897 #define MM_OLIVETTI_MIDIOUT 6
898 #define MM_OLIVETTI_SYNTH 7
899 #define MM_OLIVETTI_JOYSTICK 8
900 #define MM_OLIVETTI_ACM_GSM 9
901 #define MM_OLIVETTI_ACM_ADPCM 10
902 #define MM_OLIVETTI_ACM_CELP 11
903 #define MM_OLIVETTI_ACM_SBC 12
904 #define MM_OLIVETTI_ACM_OPR 13
905 
906 #define MM_IOMAGIC_TEMPO_WAVEOUT 1
907 #define MM_IOMAGIC_TEMPO_WAVEIN 2
908 #define MM_IOMAGIC_TEMPO_SYNTH 3
909 #define MM_IOMAGIC_TEMPO_MIDIOUT 4
910 #define MM_IOMAGIC_TEMPO_MXDOUT 5
911 #define MM_IOMAGIC_TEMPO_AUXOUT 6
912 
913 #define MM_MATSUSHITA_WAVEIN 1
914 #define MM_MATSUSHITA_WAVEOUT 2
915 #define MM_MATSUSHITA_FMSYNTH_STEREO 3
916 #define MM_MATSUSHITA_MIXER 4
917 #define MM_MATSUSHITA_AUX 5
918 
919 #define MM_NEWMEDIA_WAVJAMMER 1
920 
921 #define MM_LYRRUS_BRIDGE_GUITAR 1
922 
923 #define MM_OPTI_M16_FMSYNTH_STEREO 0x0001
924 #define MM_OPTI_M16_MIDIIN 0x0002
925 #define MM_OPTI_M16_MIDIOUT 0x0003
926 #define MM_OPTI_M16_WAVEIN 0x0004
927 #define MM_OPTI_M16_WAVEOUT 0x0005
928 #define MM_OPTI_M16_MIXER 0x0006
929 #define MM_OPTI_M16_AUX 0x0007
930 #define MM_OPTI_P16_FMSYNTH_STEREO 0x0010
931 #define MM_OPTI_P16_MIDIIN 0x0011
932 #define MM_OPTI_P16_MIDIOUT 0x0012
933 #define MM_OPTI_P16_WAVEIN 0x0013
934 #define MM_OPTI_P16_WAVEOUT 0x0014
935 #define MM_OPTI_P16_MIXER 0x0015
936 #define MM_OPTI_P16_AUX 0x0016
937 #define MM_OPTI_M32_WAVEIN 0x0020
938 #define MM_OPTI_M32_WAVEOUT 0x0021
939 #define MM_OPTI_M32_MIDIIN 0x0022
940 #define MM_OPTI_M32_MIDIOUT 0x0023
941 #define MM_OPTI_M32_SYNTH_STEREO 0x0024
942 #define MM_OPTI_M32_MIXER 0x0025
943 #define MM_OPTI_M32_AUX 0x0026
944 
945 #define MM_COMPAQ_BB_WAVEIN 1
946 #define MM_COMPAQ_BB_WAVEOUT 2
947 #define MM_COMPAQ_BB_WAVEAUX 3
948 
949 #define MM_MPTUS_SPWAVEOUT 1
950 
951 #define MM_LERNOUT_ANDHAUSPIE_LHCODECACM 1
952 
953 #define MM_DIGITAL_AV320_WAVEIN 1
954 #define MM_DIGITAL_AV320_WAVEOUT 2
955 #define MM_DIGITAL_ACM_G723 3
956 #define MM_DIGITAL_ICM_H263 4
957 #define MM_DIGITAL_ICM_H261 5
958 
959 #define MM_MOTU_MTP_MIDIOUT_ALL 100
960 #define MM_MOTU_MTP_MIDIIN_1 101
961 #define MM_MOTU_MTP_MIDIOUT_1 101
962 #define MM_MOTU_MTP_MIDIIN_2 102
963 #define MM_MOTU_MTP_MIDIOUT_2 102
964 #define MM_MOTU_MTP_MIDIIN_3 103
965 #define MM_MOTU_MTP_MIDIOUT_3 103
966 #define MM_MOTU_MTP_MIDIIN_4 104
967 #define MM_MOTU_MTP_MIDIOUT_4 104
968 #define MM_MOTU_MTP_MIDIIN_5 105
969 #define MM_MOTU_MTP_MIDIOUT_5 105
970 #define MM_MOTU_MTP_MIDIIN_6 106
971 #define MM_MOTU_MTP_MIDIOUT_6 106
972 #define MM_MOTU_MTP_MIDIIN_7 107
973 #define MM_MOTU_MTP_MIDIOUT_7 107
974 #define MM_MOTU_MTP_MIDIIN_8 108
975 #define MM_MOTU_MTP_MIDIOUT_8 108
976 
977 #define MM_MOTU_MTPII_MIDIOUT_ALL 200
978 #define MM_MOTU_MTPII_MIDIIN_SYNC 200
979 #define MM_MOTU_MTPII_MIDIIN_1 201
980 #define MM_MOTU_MTPII_MIDIOUT_1 201
981 #define MM_MOTU_MTPII_MIDIIN_2 202
982 #define MM_MOTU_MTPII_MIDIOUT_2 202
983 #define MM_MOTU_MTPII_MIDIIN_3 203
984 #define MM_MOTU_MTPII_MIDIOUT_3 203
985 #define MM_MOTU_MTPII_MIDIIN_4 204
986 #define MM_MOTU_MTPII_MIDIOUT_4 204
987 #define MM_MOTU_MTPII_MIDIIN_5 205
988 #define MM_MOTU_MTPII_MIDIOUT_5 205
989 #define MM_MOTU_MTPII_MIDIIN_6 206
990 #define MM_MOTU_MTPII_MIDIOUT_6 206
991 #define MM_MOTU_MTPII_MIDIIN_7 207
992 #define MM_MOTU_MTPII_MIDIOUT_7 207
993 #define MM_MOTU_MTPII_MIDIIN_8 208
994 #define MM_MOTU_MTPII_MIDIOUT_8 208
995 #define MM_MOTU_MTPII_NET_MIDIIN_1 209
996 #define MM_MOTU_MTPII_NET_MIDIOUT_1 209
997 #define MM_MOTU_MTPII_NET_MIDIIN_2 210
998 #define MM_MOTU_MTPII_NET_MIDIOUT_2 210
999 #define MM_MOTU_MTPII_NET_MIDIIN_3 211
1000 #define MM_MOTU_MTPII_NET_MIDIOUT_3 211
1001 #define MM_MOTU_MTPII_NET_MIDIIN_4 212
1002 #define MM_MOTU_MTPII_NET_MIDIOUT_4 212
1003 #define MM_MOTU_MTPII_NET_MIDIIN_5 213
1004 #define MM_MOTU_MTPII_NET_MIDIOUT_5 213
1005 #define MM_MOTU_MTPII_NET_MIDIIN_6 214
1006 #define MM_MOTU_MTPII_NET_MIDIOUT_6 214
1007 #define MM_MOTU_MTPII_NET_MIDIIN_7 215
1008 #define MM_MOTU_MTPII_NET_MIDIOUT_7 215
1009 #define MM_MOTU_MTPII_NET_MIDIIN_8 216
1010 #define MM_MOTU_MTPII_NET_MIDIOUT_8 216
1011 
1012 #define MM_MOTU_MXP_MIDIIN_MIDIOUT_ALL 300
1013 #define MM_MOTU_MXP_MIDIIN_SYNC 300
1014 #define MM_MOTU_MXP_MIDIIN_MIDIIN_1 301
1015 #define MM_MOTU_MXP_MIDIIN_MIDIOUT_1 301
1016 #define MM_MOTU_MXP_MIDIIN_MIDIIN_2 302
1017 #define MM_MOTU_MXP_MIDIIN_MIDIOUT_2 302
1018 #define MM_MOTU_MXP_MIDIIN_MIDIIN_3 303
1019 #define MM_MOTU_MXP_MIDIIN_MIDIOUT_3 303
1020 #define MM_MOTU_MXP_MIDIIN_MIDIIN_4 304
1021 #define MM_MOTU_MXP_MIDIIN_MIDIOUT_4 304
1022 #define MM_MOTU_MXP_MIDIIN_MIDIIN_5 305
1023 #define MM_MOTU_MXP_MIDIIN_MIDIOUT_5 305
1024 #define MM_MOTU_MXP_MIDIIN_MIDIIN_6 306
1025 #define MM_MOTU_MXP_MIDIIN_MIDIOUT_6 306
1026 
1027 #define MM_MOTU_MXPMPU_MIDIOUT_ALL 400
1028 #define MM_MOTU_MXPMPU_MIDIIN_SYNC 400
1029 #define MM_MOTU_MXPMPU_MIDIIN_1 401
1030 #define MM_MOTU_MXPMPU_MIDIOUT_1 401
1031 #define MM_MOTU_MXPMPU_MIDIIN_2 402
1032 #define MM_MOTU_MXPMPU_MIDIOUT_2 402
1033 #define MM_MOTU_MXPMPU_MIDIIN_3 403
1034 #define MM_MOTU_MXPMPU_MIDIOUT_3 403
1035 #define MM_MOTU_MXPMPU_MIDIIN_4 404
1036 #define MM_MOTU_MXPMPU_MIDIOUT_4 404
1037 #define MM_MOTU_MXPMPU_MIDIIN_5 405
1038 #define MM_MOTU_MXPMPU_MIDIOUT_5 405
1039 #define MM_MOTU_MXPMPU_MIDIIN_6 406
1040 #define MM_MOTU_MXPMPU_MIDIOUT_6 406
1041 
1042 #define MM_MOTU_MXN_MIDIOUT_ALL 500
1043 #define MM_MOTU_MXN_MIDIIN_SYNC 500
1044 #define MM_MOTU_MXN_MIDIIN_1 501
1045 #define MM_MOTU_MXN_MIDIOUT_1 501
1046 #define MM_MOTU_MXN_MIDIIN_2 502
1047 #define MM_MOTU_MXN_MIDIOUT_2 502
1048 #define MM_MOTU_MXN_MIDIIN_3 503
1049 #define MM_MOTU_MXN_MIDIOUT_3 503
1050 #define MM_MOTU_MXN_MIDIIN_4 504
1051 #define MM_MOTU_MXN_MIDIOUT_4 504
1052 
1053 #define MM_MOTU_FLYER_MIDI_IN_SYNC 600
1054 #define MM_MOTU_FLYER_MIDI_IN_A 601
1055 #define MM_MOTU_FLYER_MIDI_OUT_A 601
1056 #define MM_MOTU_FLYER_MIDI_IN_B 602
1057 #define MM_MOTU_FLYER_MIDI_OUT_B 602
1058 
1059 #define MM_MOTU_PKX_MIDI_IN_SYNC 700
1060 #define MM_MOTU_PKX_MIDI_IN_A 701
1061 #define MM_MOTU_PKX_MIDI_OUT_A 701
1062 #define MM_MOTU_PKX_MIDI_IN_B 702
1063 #define MM_MOTU_PKX_MIDI_OUT_B 702
1064 
1065 #define MM_MOTU_DTX_MIDI_IN_SYNC 800
1066 #define MM_MOTU_DTX_MIDI_IN_A 801
1067 #define MM_MOTU_DTX_MIDI_OUT_A 801
1068 #define MM_MOTU_DTX_MIDI_IN_B 802
1069 #define MM_MOTU_DTX_MIDI_OUT_B 802
1070 
1071 #define MM_MOTU_MTPAV_MIDIOUT_ALL 900
1072 #define MM_MOTU_MTPAV_MIDIIN_SYNC 900
1073 #define MM_MOTU_MTPAV_MIDIIN_1 901
1074 #define MM_MOTU_MTPAV_MIDIOUT_1 901
1075 #define MM_MOTU_MTPAV_MIDIIN_2 902
1076 #define MM_MOTU_MTPAV_MIDIOUT_2 902
1077 #define MM_MOTU_MTPAV_MIDIIN_3 903
1078 #define MM_MOTU_MTPAV_MIDIOUT_3 903
1079 #define MM_MOTU_MTPAV_MIDIIN_4 904
1080 #define MM_MOTU_MTPAV_MIDIOUT_4 904
1081 #define MM_MOTU_MTPAV_MIDIIN_5 905
1082 #define MM_MOTU_MTPAV_MIDIOUT_5 905
1083 #define MM_MOTU_MTPAV_MIDIIN_6 906
1084 #define MM_MOTU_MTPAV_MIDIOUT_6 906
1085 #define MM_MOTU_MTPAV_MIDIIN_7 907
1086 #define MM_MOTU_MTPAV_MIDIOUT_7 907
1087 #define MM_MOTU_MTPAV_MIDIIN_8 908
1088 #define MM_MOTU_MTPAV_MIDIOUT_8 908
1089 #define MM_MOTU_MTPAV_NET_MIDIIN_1 909
1090 #define MM_MOTU_MTPAV_NET_MIDIOUT_1 909
1091 #define MM_MOTU_MTPAV_NET_MIDIIN_2 910
1092 #define MM_MOTU_MTPAV_NET_MIDIOUT_2 910
1093 #define MM_MOTU_MTPAV_NET_MIDIIN_3 911
1094 #define MM_MOTU_MTPAV_NET_MIDIOUT_3 911
1095 #define MM_MOTU_MTPAV_NET_MIDIIN_4 912
1096 #define MM_MOTU_MTPAV_NET_MIDIOUT_4 912
1097 #define MM_MOTU_MTPAV_NET_MIDIIN_5 913
1098 #define MM_MOTU_MTPAV_NET_MIDIOUT_5 913
1099 #define MM_MOTU_MTPAV_NET_MIDIIN_6 914
1100 #define MM_MOTU_MTPAV_NET_MIDIOUT_6 914
1101 #define MM_MOTU_MTPAV_NET_MIDIIN_7 915
1102 #define MM_MOTU_MTPAV_NET_MIDIOUT_7 915
1103 #define MM_MOTU_MTPAV_NET_MIDIIN_8 916
1104 #define MM_MOTU_MTPAV_NET_MIDIOUT_8 916
1105 #define MM_MOTU_MTPAV_MIDIIN_ADAT 917
1106 #define MM_MOTU_MTPAV_MIDIOUT_ADAT 917
1107 #define MM_MOTU_MXPXT_MIDIIN_SYNC 1000
1108 #define MM_MOTU_MXPXT_MIDIOUT_ALL 1000
1109 #define MM_MOTU_MXPXT_MIDIIN_1 1001
1110 #define MM_MOTU_MXPXT_MIDIOUT_1 1001
1111 #define MM_MOTU_MXPXT_MIDIOUT_2 1002
1112 #define MM_MOTU_MXPXT_MIDIIN_2 1002
1113 #define MM_MOTU_MXPXT_MIDIIN_3 1003
1114 #define MM_MOTU_MXPXT_MIDIOUT_3 1003
1115 #define MM_MOTU_MXPXT_MIDIIN_4 1004
1116 #define MM_MOTU_MXPXT_MIDIOUT_4 1004
1117 #define MM_MOTU_MXPXT_MIDIIN_5 1005
1118 #define MM_MOTU_MXPXT_MIDIOUT_5 1005
1119 #define MM_MOTU_MXPXT_MIDIOUT_6 1006
1120 #define MM_MOTU_MXPXT_MIDIIN_6 1006
1121 #define MM_MOTU_MXPXT_MIDIOUT_7 1007
1122 #define MM_MOTU_MXPXT_MIDIIN_7 1007
1123 #define MM_MOTU_MXPXT_MIDIOUT_8 1008
1124 #define MM_MOTU_MXPXT_MIDIIN_8 1008
1125 
1126 #define MM_WORKBIT_MIXER 1
1127 #define MM_WORKBIT_WAVEOUT 2
1128 #define MM_WORKBIT_WAVEIN 3
1129 #define MM_WORKBIT_MIDIIN 4
1130 #define MM_WORKBIT_MIDIOUT 5
1131 #define MM_WORKBIT_FMSYNTH 6
1132 #define MM_WORKBIT_AUX 7
1133 #define MM_WORKBIT_JOYSTICK 8
1134 
1135 #define MM_OSITECH_TRUMPCARD 1
1136 
1137 #define MM_MIRO_MOVIEPRO 1
1138 #define MM_MIRO_VIDEOD1 2
1139 #define MM_MIRO_VIDEODC1TV 3
1140 #define MM_MIRO_VIDEOTD 4
1141 #define MM_MIRO_DC30_WAVEOUT 5
1142 #define MM_MIRO_DC30_WAVEIN 6
1143 #define MM_MIRO_DC30_MIX 7
1144 
1145 #define MM_ISOLUTION_PASCAL 1
1146 
1147 #define MM_VOICEMIXER 1
1148 #define ROCKWELL_WA1_WAVEIN 100
1149 #define ROCKWELL_WA1_WAVEOUT 101
1150 #define ROCKWELL_WA1_SYNTH 102
1151 #define ROCKWELL_WA1_MIXER 103
1152 #define ROCKWELL_WA1_MPU401_IN 104
1153 #define ROCKWELL_WA1_MPU401_OUT 105
1154 #define ROCKWELL_WA2_WAVEIN 200
1155 #define ROCKWELL_WA2_WAVEOUT 201
1156 #define ROCKWELL_WA2_SYNTH 202
1157 #define ROCKWELL_WA2_MIXER 203
1158 #define ROCKWELL_WA2_MPU401_IN 204
1159 #define ROCKWELL_WA2_MPU401_OUT 205
1160 
1161 #define MM_VOXWARE_CODEC 1
1162 
1163 #define MM_NORTEL_MPXAC_WAVEIN 1
1164 #define MM_NORTEL_MPXAC_WAVEOUT 2
1165 
1166 #define MM_ADDX_PCTV_DIGITALMIX 1
1167 #define MM_ADDX_PCTV_WAVEIN 2
1168 #define MM_ADDX_PCTV_WAVEOUT 3
1169 #define MM_ADDX_PCTV_MIXER 4
1170 #define MM_ADDX_PCTV_AUX_CD 5
1171 #define MM_ADDX_PCTV_AUX_LINE 6
1172 
1173 #define MM_WILDCAT_AUTOSCOREMIDIIN 1
1174 
1175 #define MM_RHETOREX_WAVEIN 1
1176 #define MM_RHETOREX_WAVEOUT 2
1177 
1178 #define MM_BTV_WAVEIN 1
1179 #define MM_BTV_WAVEOUT 2
1180 #define MM_BTV_MIDIIN 3
1181 #define MM_BTV_MIDIOUT 4
1182 #define MM_BTV_MIDISYNTH 5
1183 #define MM_BTV_AUX_LINE 6
1184 #define MM_BTV_AUX_MIC 7
1185 #define MM_BTV_AUX_CD 8
1186 #define MM_BTV_DIGITALIN 9
1187 #define MM_BTV_DIGITALOUT 10
1188 #define MM_BTV_MIDIWAVESTREAM 11
1189 #define MM_BTV_MIXER 12
1190 
1191 #define MM_ENSONIQ_SOUNDSCAPE 0x10
1192 #define MM_SOUNDSCAPE_WAVEOUT MM_ENSONIQ_SOUNDSCAPE+1
1193 #define MM_SOUNDSCAPE_WAVEOUT_AUX MM_ENSONIQ_SOUNDSCAPE+2
1194 #define MM_SOUNDSCAPE_WAVEIN MM_ENSONIQ_SOUNDSCAPE+3
1195 #define MM_SOUNDSCAPE_MIDIOUT MM_ENSONIQ_SOUNDSCAPE+4
1196 #define MM_SOUNDSCAPE_MIDIIN MM_ENSONIQ_SOUNDSCAPE+5
1197 #define MM_SOUNDSCAPE_SYNTH MM_ENSONIQ_SOUNDSCAPE+6
1198 #define MM_SOUNDSCAPE_MIXER MM_ENSONIQ_SOUNDSCAPE+7
1199 #define MM_SOUNDSCAPE_AUX MM_ENSONIQ_SOUNDSCAPE+8
1200 
1201 #define MM_NVIDIA_WAVEOUT 1
1202 #define MM_NVIDIA_WAVEIN 2
1203 #define MM_NVIDIA_MIDIOUT 3
1204 #define MM_NVIDIA_MIDIIN 4
1205 #define MM_NVIDIA_GAMEPORT 5
1206 #define MM_NVIDIA_MIXER 6
1207 #define MM_NVIDIA_AUX 7
1208 
1209 #define MM_OKSORI_BASE 0
1210 #define MM_OKSORI_OSR8_WAVEOUT MM_OKSORI_BASE+1
1211 #define MM_OKSORI_OSR8_WAVEIN MM_OKSORI_BASE+2
1212 #define MM_OKSORI_OSR16_WAVEOUT MM_OKSORI_BASE+3
1213 #define MM_OKSORI_OSR16_WAVEIN MM_OKSORI_BASE+4
1214 #define MM_OKSORI_FM_OPL4 MM_OKSORI_BASE+5
1215 #define MM_OKSORI_MIX_MASTER MM_OKSORI_BASE+6
1216 #define MM_OKSORI_MIX_WAVE MM_OKSORI_BASE+7
1217 #define MM_OKSORI_MIX_FM MM_OKSORI_BASE+8
1218 #define MM_OKSORI_MIX_LINE MM_OKSORI_BASE+9
1219 #define MM_OKSORI_MIX_CD MM_OKSORI_BASE+10
1220 #define MM_OKSORI_MIX_MIC MM_OKSORI_BASE+11
1221 #define MM_OKSORI_MIX_ECHO MM_OKSORI_BASE+12
1222 #define MM_OKSORI_MIX_AUX1 MM_OKSORI_BASE+13
1223 #define MM_OKSORI_MIX_LINE1 MM_OKSORI_BASE+14
1224 #define MM_OKSORI_EXT_MIC1 MM_OKSORI_BASE+15
1225 #define MM_OKSORI_EXT_MIC2 MM_OKSORI_BASE+16
1226 #define MM_OKSORI_MIDIOUT MM_OKSORI_BASE+17
1227 #define MM_OKSORI_MIDIIN MM_OKSORI_BASE+18
1228 #define MM_OKSORI_MPEG_CDVISION MM_OKSORI_BASE+19
1229 
1230 #define MM_DIACOUSTICS_DRUM_ACTION 1
1231 
1232 #define MM_KAY_ELEMETRICS_CSL 0x4300
1233 #define MM_KAY_ELEMETRICS_CSL_DAT 0x4308
1234 #define MM_KAY_ELEMETRICS_CSL_4CHANNEL 0x4309
1235 
1236 #define MM_CRYSTAL_CS4232_WAVEIN 1
1237 #define MM_CRYSTAL_CS4232_WAVEOUT 2
1238 #define MM_CRYSTAL_CS4232_WAVEMIXER 3
1239 #define MM_CRYSTAL_CS4232_WAVEAUX_AUX1 4
1240 #define MM_CRYSTAL_CS4232_WAVEAUX_AUX2 5
1241 #define MM_CRYSTAL_CS4232_WAVEAUX_LINE 6
1242 #define MM_CRYSTAL_CS4232_WAVEAUX_MONO 7
1243 #define MM_CRYSTAL_CS4232_WAVEAUX_MASTER 8
1244 #define MM_CRYSTAL_CS4232_MIDIIN 9
1245 #define MM_CRYSTAL_CS4232_MIDIOUT 10
1246 #define MM_CRYSTAL_CS4232_INPUTGAIN_AUX1 13
1247 #define MM_CRYSTAL_CS4232_INPUTGAIN_LOOP 14
1248 #define MM_CRYSTAL_SOUND_FUSION_WAVEIN 21
1249 #define MM_CRYSTAL_SOUND_FUSION_WAVEOUT 22
1250 #define MM_CRYSTAL_SOUND_FUSION_MIXER 23
1251 #define MM_CRYSTAL_SOUND_FUSION_MIDIIN 24
1252 #define MM_CRYSTAL_SOUND_FUSION_MIDIOUT 25
1253 #define MM_CRYSTAL_SOUND_FUSION_JOYSTICK 26
1254 
1255 #define MM_QUARTERDECK_LHWAVEIN 0
1256 #define MM_QUARTERDECK_LHWAVEOUT 1
1257 
1258 #define MM_TDK_MW_MIDI_SYNTH 1
1259 #define MM_TDK_MW_MIDI_IN 2
1260 #define MM_TDK_MW_MIDI_OUT 3
1261 #define MM_TDK_MW_WAVE_IN 4
1262 #define MM_TDK_MW_WAVE_OUT 5
1263 #define MM_TDK_MW_AUX 6
1264 #define MM_TDK_MW_MIXER 10
1265 #define MM_TDK_MW_AUX_MASTER 100
1266 #define MM_TDK_MW_AUX_BASS 101
1267 #define MM_TDK_MW_AUX_TREBLE 102
1268 #define MM_TDK_MW_AUX_MIDI_VOL 103
1269 #define MM_TDK_MW_AUX_WAVE_VOL 104
1270 #define MM_TDK_MW_AUX_WAVE_RVB 105
1271 #define MM_TDK_MW_AUX_WAVE_CHR 106
1272 #define MM_TDK_MW_AUX_VOL 107
1273 #define MM_TDK_MW_AUX_RVB 108
1274 #define MM_TDK_MW_AUX_CHR 109
1275 
1276 #define MM_DIGITAL_AUDIO_LABS_TC 0x01
1277 #define MM_DIGITAL_AUDIO_LABS_DOC 0x02
1278 #define MM_DIGITAL_AUDIO_LABS_V8 0x10
1279 #define MM_DIGITAL_AUDIO_LABS_CPRO 0x11
1280 #define MM_DIGITAL_AUDIO_LABS_VP 0x12
1281 #define MM_DIGITAL_AUDIO_LABS_CDLX 0x13
1282 #define MM_DIGITAL_AUDIO_LABS_CTDIF 0x14
1283 
1284 #define MM_SEERSYS_SEERSYNTH 1
1285 #define MM_SEERSYS_SEERWAVE 2
1286 #define MM_SEERSYS_SEERMIX 3
1287 #define MM_SEERSYS_WAVESYNTH 4
1288 #define MM_SEERSYS_WAVESYNTH_WG 5
1289 #define MM_SEERSYS_REALITY 6
1290 
1291 #define MM_OSPREY_1000WAVEIN 1
1292 #define MM_OSPREY_1000WAVEOUT 2
1293 
1294 #define MM_SOUNDESIGNS_WAVEIN 1
1295 #define MM_SOUNDESIGNS_WAVEOUT 2
1296 
1297 #define MM_SSP_SNDFESWAVEIN 1
1298 #define MM_SSP_SNDFESWAVEOUT 2
1299 #define MM_SSP_SNDFESMIDIIN 3
1300 #define MM_SSP_SNDFESMIDIOUT 4
1301 #define MM_SSP_SNDFESSYNTH 5
1302 #define MM_SSP_SNDFESMIX 6
1303 #define MM_SSP_SNDFESAUX 7
1304 
1305 #define MM_ECS_AADF_MIDI_IN 10
1306 #define MM_ECS_AADF_MIDI_OUT 11
1307 #define MM_ECS_AADF_WAVE2MIDI_IN 12
1308 
1309 #define MM_AMD_INTERWAVE_WAVEIN 1
1310 #define MM_AMD_INTERWAVE_WAVEOUT 2
1311 #define MM_AMD_INTERWAVE_SYNTH 3
1312 #define MM_AMD_INTERWAVE_MIXER1 4
1313 #define MM_AMD_INTERWAVE_MIXER2 5
1314 #define MM_AMD_INTERWAVE_JOYSTICK 6
1315 #define MM_AMD_INTERWAVE_EX_CD 7
1316 #define MM_AMD_INTERWAVE_MIDIIN 8
1317 #define MM_AMD_INTERWAVE_MIDIOUT 9
1318 #define MM_AMD_INTERWAVE_AUX1 10
1319 #define MM_AMD_INTERWAVE_AUX2 11
1320 #define MM_AMD_INTERWAVE_AUX_MIC 12
1321 #define MM_AMD_INTERWAVE_AUX_CD 13
1322 #define MM_AMD_INTERWAVE_MONO_IN 14
1323 #define MM_AMD_INTERWAVE_MONO_OUT 15
1324 #define MM_AMD_INTERWAVE_EX_TELEPHONY 16
1325 #define MM_AMD_INTERWAVE_WAVEOUT_BASE 17
1326 #define MM_AMD_INTERWAVE_WAVEOUT_TREBLE 18
1327 #define MM_AMD_INTERWAVE_STEREO_ENHANCED 19
1328 
1329 #define MM_COREDYNAMICS_DYNAMIXHR 1
1330 #define MM_COREDYNAMICS_DYNASONIX_SYNTH 2
1331 #define MM_COREDYNAMICS_DYNASONIX_MIDI_IN 3
1332 #define MM_COREDYNAMICS_DYNASONIX_MIDI_OUT 4
1333 #define MM_COREDYNAMICS_DYNASONIX_WAVE_IN 5
1334 #define MM_COREDYNAMICS_DYNASONIX_WAVE_OUT 6
1335 #define MM_COREDYNAMICS_DYNASONIX_AUDIO_IN 7
1336 #define MM_COREDYNAMICS_DYNASONIX_AUDIO_OUT 8
1337 #define MM_COREDYNAMICS_DYNAGRAFX_VGA 9
1338 #define MM_COREDYNAMICS_DYNAGRAFX_WAVE_IN 10
1339 #define MM_COREDYNAMICS_DYNAGRAFX_WAVE_OUT 11
1340 
1341 #define MM_CANAM_CBXWAVEOUT 1
1342 #define MM_CANAM_CBXWAVEIN 2
1343 
1344 #define MM_SOFTSOUND_CODEC 1
1345 
1346 #define MM_NORRIS_VOICELINK 1
1347 
1348 #define MM_DDD_MIDILINK_MIDIIN 1
1349 #define MM_DDD_MIDILINK_MIDIOUT 2
1350 
1351 #define MM_EUPHONICS_AUX_CD 1
1352 #define MM_EUPHONICS_AUX_LINE 2
1353 #define MM_EUPHONICS_AUX_MASTER 3
1354 #define MM_EUPHONICS_AUX_MIC 4
1355 #define MM_EUPHONICS_AUX_MIDI 5
1356 #define MM_EUPHONICS_AUX_WAVE 6
1357 #define MM_EUPHONICS_FMSYNTH_MONO 7
1358 #define MM_EUPHONICS_FMSYNTH_STEREO 8
1359 #define MM_EUPHONICS_MIDIIN 9
1360 #define MM_EUPHONICS_MIDIOUT 10
1361 #define MM_EUPHONICS_MIXER 11
1362 #define MM_EUPHONICS_WAVEIN 12
1363 #define MM_EUPHONICS_WAVEOUT 13
1364 #define MM_EUPHONICS_EUSYNTH 14
1365 
1366 #define CRYSTAL_NET_SFM_CODEC 1
1367 
1368 #define MM_CHROMATIC_M1 0x0001
1369 #define MM_CHROMATIC_M1_WAVEIN 0x0002
1370 #define MM_CHROMATIC_M1_WAVEOUT 0x0003
1371 #define MM_CHROMATIC_M1_FMSYNTH 0x0004
1372 #define MM_CHROMATIC_M1_MIXER 0x0005
1373 #define MM_CHROMATIC_M1_AUX 0x0006
1374 #define MM_CHROMATIC_M1_AUX_CD 0x0007
1375 #define MM_CHROMATIC_M1_MIDIIN 0x0008
1376 #define MM_CHROMATIC_M1_MIDIOUT 0x0009
1377 #define MM_CHROMATIC_M1_WTSYNTH 0x0010
1378 #define MM_CHROMATIC_M1_MPEGWAVEIN 0x0011
1379 #define MM_CHROMATIC_M1_MPEGWAVEOUT 0x0012
1380 #define MM_CHROMATIC_M2 0x0013
1381 #define MM_CHROMATIC_M2_WAVEIN 0x0014
1382 #define MM_CHROMATIC_M2_WAVEOUT 0x0015
1383 #define MM_CHROMATIC_M2_FMSYNTH 0x0016
1384 #define MM_CHROMATIC_M2_MIXER 0x0017
1385 #define MM_CHROMATIC_M2_AUX 0x0018
1386 #define MM_CHROMATIC_M2_AUX_CD 0x0019
1387 #define MM_CHROMATIC_M2_MIDIIN 0x0020
1388 #define MM_CHROMATIC_M2_MIDIOUT 0x0021
1389 #define MM_CHROMATIC_M2_WTSYNTH 0x0022
1390 #define MM_CHROMATIC_M2_MPEGWAVEIN 0x0023
1391 #define MM_CHROMATIC_M2_MPEGWAVEOUT 0x0024
1392 
1393 #define MM_VIENNASYS_TSP_WAVE_DRIVER 1
1394 
1395 #define MM_CONNECTIX_VIDEC_CODEC 1
1396 
1397 #define MM_GADGETLABS_WAVE44_WAVEIN 1
1398 #define MM_GADGETLABS_WAVE44_WAVEOUT 2
1399 #define MM_GADGETLABS_WAVE42_WAVEIN 3
1400 #define MM_GADGETLABS_WAVE42_WAVEOUT 4
1401 #define MM_GADGETLABS_WAVE4_MIDIIN 5
1402 #define MM_GADGETLABS_WAVE4_MIDIOUT 6
1403 
1404 #define MM_FRONTIER_WAVECENTER_MIDIIN 1
1405 #define MM_FRONTIER_WAVECENTER_MIDIOUT 2
1406 #define MM_FRONTIER_WAVECENTER_WAVEIN 3
1407 #define MM_FRONTIER_WAVECENTER_WAVEOUT 4
1408 
1409 #define MM_VIONA_QVINPCI_MIXER 1
1410 #define MM_VIONA_QVINPCI_WAVEIN 2
1411 #define MM_VIONAQVINPCI_WAVEOUT 3
1412 #define MM_VIONA_BUSTER_MIXER 4
1413 #define MM_VIONA_CINEMASTER_MIXER 5
1414 #define MM_VIONA_CONCERTO_MIXER 6
1415 
1416 #define MM_CASIO_WP150_MIDIOUT 1
1417 #define MM_CASIO_WP150_MIDIIN 2
1418 #define MM_CASIO_LSG_MIDIOUT 3
1419 
1420 #define MM_DIMD_PLATFORM 0
1421 #define MM_DIMD_DIRSOUND 1
1422 #define MM_DIMD_VIRTMPU 2
1423 #define MM_DIMD_VIRTSB 3
1424 #define MM_DIMD_VIRTJOY 4
1425 #define MM_DIMD_WAVEIN 5
1426 #define MM_DIMD_WAVEOUT 6
1427 #define MM_DIMD_MIDIIN 7
1428 #define MM_DIMD_MIDIOUT 8
1429 #define MM_DIMD_AUX_LINE 9
1430 #define MM_DIMD_MIXER 10
1431 #define MM_DIMD_WSS_WAVEIN 14
1432 #define MM_DIMD_WSS_WAVEOUT 15
1433 #define MM_DIMD_WSS_MIXER 17
1434 #define MM_DIMD_WSS_AUX 21
1435 #define MM_DIMD_WSS_SYNTH 76
1436 
1437 #define MM_S3_WAVEOUT 1
1438 #define MM_S3_WAVEIN 2
1439 #define MM_S3_MIDIOUT 3
1440 #define MM_S3_MIDIIN 4
1441 #define MM_S3_FMSYNTH 5
1442 #define MM_S3_MIXER 6
1443 #define MM_S3_AUX 7
1444 
1445 #define MM_VKC_MPU401_MIDIIN 0x0100
1446 #define MM_VKC_SERIAL_MIDIIN 0x0101
1447 #define MM_VKC_MPU401_MIDIOUT 0x0200
1448 #define MM_VKC_SERIAL_MIDIOUT 0x0201
1449 
1450 #define MM_ZEFIRO_ZA2 2
1451 
1452 #define MM_FHGIIS_MPEGLAYER3_DECODE 9
1453 #define MM_FHGIIS_MPEGLAYER3 10
1454 #define MM_FHGIIS_MPEGLAYER3_LITE 10
1455 #define MM_FHGIIS_MPEGLAYER3_BASIC 11
1456 #define MM_FHGIIS_MPEGLAYER3_ADVANCED 12
1457 #define MM_FHGIIS_MPEGLAYER3_PROFESSIONAL 13
1458 #define MM_FHGIIS_MPEGLAYER3_ADVANCEDPLUS 14
1459 
1460 #define MM_QUICKNET_PJWAVEIN 1
1461 #define MM_QUICKNET_PJWAVEOUT 2
1462 
1463 #define MM_SICRESOURCE_SSO3D 2
1464 #define MM_SICRESOURCE_SSOW3DI 3
1465 
1466 #define MM_NEOMAGIC_SYNTH 1
1467 #define MM_NEOMAGIC_WAVEOUT 2
1468 #define MM_NEOMAGIC_WAVEIN 3
1469 #define MM_NEOMAGIC_MIDIOUT 4
1470 #define MM_NEOMAGIC_MIDIIN 5
1471 #define MM_NEOMAGIC_AUX 6
1472 #define MM_NEOMAGIC_MW3DX_WAVEOUT 10
1473 #define MM_NEOMAGIC_MW3DX_WAVEIN 11
1474 #define MM_NEOMAGIC_MW3DX_MIDIOUT 12
1475 #define MM_NEOMAGIC_MW3DX_MIDIIN 13
1476 #define MM_NEOMAGIC_MW3DX_FMSYNTH 14
1477 #define MM_NEOMAGIC_MW3DX_GMSYNTH 15
1478 #define MM_NEOMAGIC_MW3DX_MIXER 16
1479 #define MM_NEOMAGIC_MW3DX_AUX 17
1480 #define MM_NEOMAGIC_MWAVE_WAVEOUT 20
1481 #define MM_NEOMAGIC_MWAVE_WAVEIN 21
1482 #define MM_NEOMAGIC_MWAVE_MIDIOUT 22
1483 #define MM_NEOMAGIC_MWAVE_MIDIIN 23
1484 #define MM_NEOMAGIC_MWAVE_MIXER 24
1485 #define MM_NEOMAGIC_MWAVE_AUX 25
1486 
1487 #define MM_MERGING_MPEGL3 1
1488 
1489 #define MM_XIRLINK_VISIONLINK 1
1490 
1491 #define MM_OTI_611WAVEIN 5
1492 #define MM_OTI_611WAVEOUT 6
1493 #define MM_OTI_611MIXER 7
1494 #define MM_OTI_611MIDIN 0x12
1495 #define MM_OTI_611MIDIOUT 0x13
1496 
1497 #define MM_AUREAL_AU8820 16
1498 #define MM_AU8820_SYNTH 17
1499 #define MM_AU8820_WAVEOUT 18
1500 #define MM_AU8820_WAVEIN 19
1501 #define MM_AU8820_MIXER 20
1502 #define MM_AU8820_AUX 21
1503 #define MM_AU8820_MIDIOUT 22
1504 #define MM_AU8820_MIDIIN 23
1505 #define MM_AUREAL_AU8830 32
1506 #define MM_AU8830_SYNTH 33
1507 #define MM_AU8830_WAVEOUT 34
1508 #define MM_AU8830_WAVEIN 35
1509 #define MM_AU8830_MIXER 36
1510 #define MM_AU8830_AUX 37
1511 #define MM_AU8830_MIDIOUT 38
1512 #define MM_AU8830_MIDIIN 39
1513 
1514 #define MM_VIVO_AUDIO_CODEC 1
1515 
1516 #define MM_SHARP_MDC_MIDI_SYNTH 1
1517 #define MM_SHARP_MDC_MIDI_IN 2
1518 #define MM_SHARP_MDC_MIDI_OUT 3
1519 #define MM_SHARP_MDC_WAVE_IN 4
1520 #define MM_SHARP_MDC_WAVE_OUT 5
1521 #define MM_SHARP_MDC_AUX 6
1522 #define MM_SHARP_MDC_MIXER 10
1523 #define MM_SHARP_MDC_AUX_MASTER 100
1524 #define MM_SHARP_MDC_AUX_BASS 101
1525 #define MM_SHARP_MDC_AUX_TREBLE 102
1526 #define MM_SHARP_MDC_AUX_MIDI_VOL 103
1527 #define MM_SHARP_MDC_AUX_WAVE_VOL 104
1528 #define MM_SHARP_MDC_AUX_WAVE_RVB 105
1529 #define MM_SHARP_MDC_AUX_WAVE_CHR 106
1530 #define MM_SHARP_MDC_AUX_VOL 107
1531 #define MM_SHARP_MDC_AUX_RVB 108
1532 #define MM_SHARP_MDC_AUX_CHR 109
1533 
1534 #define MM_LUCENT_ACM_G723 0
1535 
1536 #define MM_ATT_G729A 1
1537 
1538 #define MM_MARIAN_ARC44WAVEIN 1
1539 #define MM_MARIAN_ARC44WAVEOUT 2
1540 #define MM_MARIAN_PRODIF24WAVEIN 3
1541 #define MM_MARIAN_PRODIF24WAVEOUT 4
1542 #define MM_MARIAN_ARC88WAVEIN 5
1543 #define MM_MARIAN_ARC88WAVEOUT 6
1544 
1545 #define MM_BCB_NETBOARD_10 1
1546 #define MM_BCB_TT75_10 2
1547 
1548 #define MM_MOTIONPIXELS_MVI2 1
1549 
1550 #define MM_QDESIGN_ACM_MPEG 1
1551 #define MM_QDESIGN_ACM_QDESIGN_MUSIC 2
1552 
1553 #define MM_NMP_CCP_WAVEIN 1
1554 #define MM_NMP_CCP_WAVEOUT 2
1555 #define MM_NMP_ACM_AMR 10
1556 
1557 #define MM_DF_ACM_G726 1
1558 #define MM_DF_ACM_GSM610 2
1559 
1560 #define MM_BERCOS_WAVEIN 1
1561 #define MM_BERCOS_MIXER 2
1562 #define MM_BERCOS_WAVEOUT 3
1563 
1564 #define MM_ONLIVE_MPCODEC 1
1565 
1566 #define MM_PHONET_PP_WAVEOUT 1
1567 #define MM_PHONET_PP_WAVEIN 2
1568 #define MM_PHONET_PP_MIXER 3
1569 
1570 #define MM_FTR_ENCODER_WAVEIN 1
1571 #define MM_FTR_ACM 2
1572 
1573 #define MM_ENET_T2000_LINEIN 1
1574 #define MM_ENET_T2000_LINEOUT 2
1575 #define MM_ENET_T2000_HANDSETIN 3
1576 #define MM_ENET_T2000_HANDSETOUT 4
1577 
1578 #define MM_EMAGIC_UNITOR8 1
1579 
1580 #define MM_SIPROLAB_ACELPNET 1
1581 
1582 #define MM_DICTAPHONE_G726 1
1583 
1584 #define MM_RZS_ACM_TUBGSM 1
1585 
1586 #define MM_EES_PCMIDI14 1
1587 #define MM_EES_PCMIDI14_IN 2
1588 #define MM_EES_PCMIDI14_OUT1 3
1589 #define MM_EES_PCMIDI14_OUT2 4
1590 #define MM_EES_PCMIDI14_OUT3 5
1591 #define MM_EES_PCMIDI14_OUT4 6
1592 
1593 #define MM_HAFTMANN_LPTDAC2 1
1594 
1595 #define MM_LUCID_PCI24WAVEIN 1
1596 #define MM_LUCID_PCI24WAVEOUT 2
1597 
1598 #define MM_HEADSPACE_HAESYNTH 1
1599 #define MM_HEADSPACE_HAEWAVEOUT 2
1600 #define MM_HEADSPACE_HAEWAVEIN 3
1601 #define MM_HEADSPACE_HAEMIXER 4
1602 
1603 #define MM_UNISYS_ACM_NAP 1
1604 
1605 #define MM_LUMINOSITI_SCWAVEIN 1
1606 #define MM_LUMINOSITI_SCWAVEOUT 2
1607 #define MM_LUMINOSITI_SCWAVEMIX 3
1608 
1609 #define MM_ACTIVEVOICE_ACM_VOXADPCM 1
1610 
1611 #define MM_DTS_DS 1
1612 
1613 #define MM_SOFTLAB_NSK_FRW_WAVEIN 1
1614 #define MM_SOFTLAB_NSK_FRW_WAVEOUT 2
1615 #define MM_SOFTLAB_NSK_FRW_MIXER 3
1616 #define MM_SOFTLAB_NSK_FRW_AUX 4
1617 
1618 #define MM_FORTEMEDIA_WAVEIN 1
1619 #define MM_FORTEMEDIA_WAVEOUT 2
1620 #define MM_FORTEMEDIA_FMSYNC 3
1621 #define MM_FORTEMEDIA_MIXER 4
1622 #define MM_FORTEMEDIA_AUX 5
1623 
1624 #define MM_SONORUS_STUDIO 1
1625 
1626 #define MM_I_LINK_VOICE_CODER 1
1627 
1628 #define MM_SELSIUS_SYSTEMS_RTPWAVEOUT 1
1629 #define MM_SELSIUS_SYSTEMS_RTPWAVEIN 2
1630 
1631 #define MM_ADMOS_FM_SYNTH 1
1632 #define MM_ADMOS_QS3AMIDIOUT 2
1633 #define MM_ADMOS_QS3AMIDIIN 3
1634 #define MM_ADMOS_QS3AWAVEOUT 4
1635 #define MM_ADMOS_QS3AWAVEIN 5
1636 
1637 #define MM_LEXICON_STUDIO_WAVE_OUT 1
1638 #define MM_LEXICON_STUDIO_WAVE_IN 2
1639 
1640 #define MM_SGI_320_WAVEIN 1
1641 #define MM_SGI_320_WAVEOUT 2
1642 #define MM_SGI_320_MIXER 3
1643 #define MM_SGI_540_WAVEIN 4
1644 #define MM_SGI_540_WAVEOUT 5
1645 #define MM_SGI_540_MIXER 6
1646 #define MM_SGI_RAD_ADATMONO1_WAVEIN 7
1647 #define MM_SGI_RAD_ADATMONO2_WAVEIN 8
1648 #define MM_SGI_RAD_ADATMONO3_WAVEIN 9
1649 #define MM_SGI_RAD_ADATMONO4_WAVEIN 10
1650 #define MM_SGI_RAD_ADATMONO5_WAVEIN 11
1651 #define MM_SGI_RAD_ADATMONO6_WAVEIN 12
1652 #define MM_SGI_RAD_ADATMONO7_WAVEIN 13
1653 #define MM_SGI_RAD_ADATMONO8_WAVEIN 14
1654 #define MM_SGI_RAD_ADATSTEREO12_WAVEIN 15
1655 #define MM_SGI_RAD_ADATSTEREO34_WAVEIN 16
1656 #define MM_SGI_RAD_ADATSTEREO56_WAVEIN 17
1657 #define MM_SGI_RAD_ADATSTEREO78_WAVEIN 18
1658 #define MM_SGI_RAD_ADAT8CHAN_WAVEIN 19
1659 #define MM_SGI_RAD_ADATMONO1_WAVEOUT 20
1660 #define MM_SGI_RAD_ADATMONO2_WAVEOUT 21
1661 #define MM_SGI_RAD_ADATMONO3_WAVEOUT 22
1662 #define MM_SGI_RAD_ADATMONO4_WAVEOUT 23
1663 #define MM_SGI_RAD_ADATMONO5_WAVEOUT 24
1664 #define MM_SGI_RAD_ADATMONO6_WAVEOUT 25
1665 #define MM_SGI_RAD_ADATMONO7_WAVEOUT 26
1666 #define MM_SGI_RAD_ADATMONO8_WAVEOUT 27
1667 #define MM_SGI_RAD_ADATSTEREO12_WAVEOUT 28
1668 #define MM_SGI_RAD_ADATSTEREO32_WAVEOUT 29
1669 #define MM_SGI_RAD_ADATSTEREO56_WAVEOUT 30
1670 #define MM_SGI_RAD_ADATSTEREO78_WAVEOUT 31
1671 #define MM_SGI_RAD_ADAT8CHAN_WAVEOUT 32
1672 #define MM_SGI_RAD_AESMONO1_WAVEIN 33
1673 #define MM_SGI_RAD_AESMONO2_WAVEIN 34
1674 #define MM_SGI_RAD_AESSTEREO_WAVEIN 35
1675 #define MM_SGI_RAD_AESMONO1_WAVEOUT 36
1676 #define MM_SGI_RAD_AESMONO2_WAVEOUT 37
1677 #define MM_SGI_RAD_AESSTEREO_WAVEOUT 38
1678 
1679 #define MM_IPI_ACM_HSX 1
1680 #define MM_IPI_ACM_RPELP 2
1681 #define MM_IPI_WF_ASSS 3
1682 #define MM_IPI_AT_WAVEOUT 4
1683 #define MM_IPI_AT_WAVEIN 5
1684 #define MM_IPI_AT_MIXER 6
1685 
1686 #define MM_ICE_WAVEOUT 1
1687 #define MM_ICE_WAVEIN 2
1688 #define MM_ICE_MTWAVEOUT 3
1689 #define MM_ICE_MTWAVEIN 4
1690 #define MM_ICE_MIDIOUT1 5
1691 #define MM_ICE_MIDIIN1 6
1692 #define MM_ICE_MIDIOUT2 7
1693 #define MM_ICE_MIDIIN2 8
1694 #define MM_ICE_SYNTH 9
1695 #define MM_ICE_MIXER 10
1696 #define MM_ICE_AUX 11
1697 
1698 #define MM_VQST_VQC1 1
1699 #define MM_VQST_VQC2 2
1700 
1701 #define MM_ETEK_KWIKMIDI_MIDIIN 1
1702 #define MM_ETEK_KWIKMIDI_MIDIOUT 2
1703 
1704 #define MM_INTERNET_SSW_MIDIOUT 10
1705 #define MM_INTERNET_SSW_MIDIIN 11
1706 #define MM_INTERNET_SSW_WAVEOUT 12
1707 #define MM_INTERNET_SSW_WAVEIN 13
1708 
1709 #define MM_SONY_ACM_SCX 1
1710 
1711 #define MM_UH_ACM_ADPCM 1
1712 
1713 #define MM_SYDEC_NV_WAVEIN 1
1714 #define MM_SYDEC_NV_WAVEOUT 2
1715 
1716 #define MM_FLEXION_X300_WAVEIN 1
1717 #define MM_FLEXION_X300_WAVEOUT 2
1718 
1719 #define MM_VIA_WAVEOUT 1
1720 #define MM_VIA_WAVEIN 2
1721 #define MM_VIA_MIXER 3
1722 #define MM_VIA_AUX 4
1723 #define MM_VIA_MPU401_MIDIOUT 5
1724 #define MM_VIA_MPU401_MIDIIN 6
1725 #define MM_VIA_SWFM_SYNTH 7
1726 #define MM_VIA_WDM_WAVEOUT 8
1727 #define MM_VIA_WDM_WAVEIN 9
1728 #define MM_VIA_WDM_MIXER 10
1729 #define MM_VIA_WDM_MPU401_MIDIOUT 11
1730 #define MM_VIA_WDM_MPU401_MIDIIN 12
1731 
1732 #define MM_MICRONAS_SC4 1
1733 #define MM_MICRONAS_CLP833 2
1734 
1735 #define MM_HP_WAVEOUT 1
1736 #define MM_HP_WAVEIN 2
1737 
1738 #define MM_QUICKAUDIO_MINIMIDI 1
1739 #define MM_QUICKAUDIO_MAXIMIDI 2
1740 
1741 #define MM_ICCC_UNA3_WAVEIN 1
1742 #define MM_ICCC_UNA3_WAVEOUT 2
1743 #define MM_ICCC_UNA3_AUX 3
1744 #define MM_ICCC_UNA3_MIXER 4
1745 
1746 #define MM_3COM_CB_MIXER 1
1747 #define MM_3COM_CB_WAVEIN 2
1748 #define MM_3COM_CB_WAVEOUT 3
1749 
1750 #define MM_MINDMAKER_GC_WAVEIN 1
1751 #define MM_MINDMAKER_GC_WAVEOUT 2
1752 #define MM_MINDMAKER_GC_MIXER 3
1753 
1754 #define MM_TELEKOL_WAVEOUT 1
1755 #define MM_TELEKOL_WAVEIN 2
1756 
1757 #define MM_ALGOVISION_VB80WAVEOUT 1
1758 #define MM_ALGOVISION_VB80WAVEIN 2
1759 #define MM_ALGOVISION_VB80MIXER 3
1760 #define MM_ALGOVISION_VB80AUX 4
1761 #define MM_ALGOVISION_VB80AUX2 5
1762 #endif
1763 
1764 #define RIFFINFO_IARL mmioFOURCC ('I', 'A', 'R', 'L')
1765 #define RIFFINFO_IART mmioFOURCC ('I', 'A', 'R', 'T')
1766 #define RIFFINFO_ICMS mmioFOURCC ('I', 'C', 'M', 'S')
1767 #define RIFFINFO_ICMT mmioFOURCC ('I', 'C', 'M', 'T')
1768 #define RIFFINFO_ICOP mmioFOURCC ('I', 'C', 'O', 'P')
1769 #define RIFFINFO_ICRD mmioFOURCC ('I', 'C', 'R', 'D')
1770 #define RIFFINFO_ICRP mmioFOURCC ('I', 'C', 'R', 'P')
1771 #define RIFFINFO_IDIM mmioFOURCC ('I', 'D', 'I', 'M')
1772 #define RIFFINFO_IDPI mmioFOURCC ('I', 'D', 'P', 'I')
1773 #define RIFFINFO_IENG mmioFOURCC ('I', 'E', 'N', 'G')
1774 #define RIFFINFO_IGNR mmioFOURCC ('I', 'G', 'N', 'R')
1775 #define RIFFINFO_IKEY mmioFOURCC ('I', 'K', 'E', 'Y')
1776 #define RIFFINFO_ILGT mmioFOURCC ('I', 'L', 'G', 'T')
1777 #define RIFFINFO_IMED mmioFOURCC ('I', 'M', 'E', 'D')
1778 #define RIFFINFO_INAM mmioFOURCC ('I', 'N', 'A', 'M')
1779 #define RIFFINFO_IPLT mmioFOURCC ('I', 'P', 'L', 'T')
1780 #define RIFFINFO_IPRD mmioFOURCC ('I', 'P', 'R', 'D')
1781 #define RIFFINFO_ISBJ mmioFOURCC ('I', 'S', 'B', 'J')
1782 #define RIFFINFO_ISFT mmioFOURCC ('I', 'S', 'F', 'T')
1783 #define RIFFINFO_ISHP mmioFOURCC ('I', 'S', 'H', 'P')
1784 #define RIFFINFO_ISRC mmioFOURCC ('I', 'S', 'R', 'C')
1785 #define RIFFINFO_ISRF mmioFOURCC ('I', 'S', 'R', 'F')
1786 #define RIFFINFO_ITCH mmioFOURCC ('I', 'T', 'C', 'H')
1787 
1788 #define RIFFINFO_ISMP mmioFOURCC ('I', 'S', 'M', 'P')
1789 
1790 #define RIFFINFO_IDIT mmioFOURCC ('I', 'D', 'I', 'T')
1791 
1792 #define RIFFINFO_ITRK mmioFOURCC ('I', 'T', 'R', 'K')
1793 #define RIFFINFO_ITOC mmioFOURCC ('I', 'T', 'O', 'C')
1794 #endif
1795 
1796 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
1797 
1798 #ifndef NONEWWAVE
1799 #define WAVE_FORMAT_UNKNOWN 0x0000
1800 #define WAVE_FORMAT_ADPCM 0x0002
1801 #define WAVE_FORMAT_IEEE_FLOAT 0x0003
1802 #define WAVE_FORMAT_VSELP 0x0004
1803 #define WAVE_FORMAT_IBM_CVSD 0x0005
1804 #define WAVE_FORMAT_ALAW 0x0006
1805 #define WAVE_FORMAT_MULAW 0x0007
1806 #define WAVE_FORMAT_DTS 0x0008
1807 #define WAVE_FORMAT_DRM 0x0009
1808 #define WAVE_FORMAT_WMAVOICE9 0x000a
1809 #define WAVE_FORMAT_WMAVOICE10 0x000b
1810 #define WAVE_FORMAT_OKI_ADPCM 0x0010
1811 #define WAVE_FORMAT_DVI_ADPCM 0x0011
1812 #define WAVE_FORMAT_IMA_ADPCM (WAVE_FORMAT_DVI_ADPCM)
1813 #define WAVE_FORMAT_MEDIASPACE_ADPCM 0x0012
1814 #define WAVE_FORMAT_SIERRA_ADPCM 0x0013
1815 #define WAVE_FORMAT_G723_ADPCM 0x0014
1816 #define WAVE_FORMAT_DIGISTD 0x0015
1817 #define WAVE_FORMAT_DIGIFIX 0x0016
1818 #define WAVE_FORMAT_DIALOGIC_OKI_ADPCM 0x0017
1819 #define WAVE_FORMAT_MEDIAVISION_ADPCM 0x0018
1820 #define WAVE_FORMAT_CU_CODEC 0x0019
1821 #define WAVE_FORMAT_HP_DYN_VOICE 0x001a
1822 #define WAVE_FORMAT_YAMAHA_ADPCM 0x0020
1823 #define WAVE_FORMAT_SONARC 0x0021
1824 #define WAVE_FORMAT_DSPGROUP_TRUESPEECH 0x0022
1825 #define WAVE_FORMAT_ECHOSC1 0x0023
1826 #define WAVE_FORMAT_AUDIOFILE_AF36 0x0024
1827 #define WAVE_FORMAT_APTX 0x0025
1828 #define WAVE_FORMAT_AUDIOFILE_AF10 0x0026
1829 #define WAVE_FORMAT_PROSODY_1612 0x0027
1830 #define WAVE_FORMAT_LRC 0x0028
1831 #define WAVE_FORMAT_DOLBY_AC2 0x0030
1832 #define WAVE_FORMAT_GSM610 0x0031
1833 #define WAVE_FORMAT_MSNAUDIO 0x0032
1834 #define WAVE_FORMAT_ANTEX_ADPCME 0x0033
1835 #define WAVE_FORMAT_CONTROL_RES_VQLPC 0x0034
1836 #define WAVE_FORMAT_DIGIREAL 0x0035
1837 #define WAVE_FORMAT_DIGIADPCM 0x0036
1838 #define WAVE_FORMAT_CONTROL_RES_CR10 0x0037
1839 #define WAVE_FORMAT_NMS_VBXADPCM 0x0038
1840 #define WAVE_FORMAT_CS_IMAADPCM 0x0039
1841 #define WAVE_FORMAT_ECHOSC3 0x003a
1842 #define WAVE_FORMAT_ROCKWELL_ADPCM 0x003b
1843 #define WAVE_FORMAT_ROCKWELL_DIGITALK 0x003c
1844 #define WAVE_FORMAT_XEBEC 0x003d
1845 #define WAVE_FORMAT_G721_ADPCM 0x0040
1846 #define WAVE_FORMAT_G728_CELP 0x0041
1847 #define WAVE_FORMAT_MSG723 0x0042
1848 #define WAVE_FORMAT_INTEL_G723_1 0x0043
1849 #define WAVE_FORMAT_INTEL_G729 0x0044
1850 #define WAVE_FORMAT_SHARP_G726 0x0045
1851 #define WAVE_FORMAT_MPEG 0x0050
1852 #define WAVE_FORMAT_RT24 0x0052
1853 #define WAVE_FORMAT_PAC 0x0053
1854 #define WAVE_FORMAT_MPEGLAYER3 0x0055
1855 #define WAVE_FORMAT_LUCENT_G723 0x0059
1856 #define WAVE_FORMAT_CIRRUS 0x0060
1857 #define WAVE_FORMAT_ESPCM 0x0061
1858 #define WAVE_FORMAT_VOXWARE 0x0062
1859 #define WAVE_FORMAT_CANOPUS_ATRAC 0x0063
1860 #define WAVE_FORMAT_G726_ADPCM 0x0064
1861 #define WAVE_FORMAT_G722_ADPCM 0x0065
1862 #define WAVE_FORMAT_DSAT 0x0066
1863 #define WAVE_FORMAT_DSAT_DISPLAY 0x0067
1864 #define WAVE_FORMAT_VOXWARE_BYTE_ALIGNED 0x0069
1865 #define WAVE_FORMAT_VOXWARE_AC8 0x0070
1866 #define WAVE_FORMAT_VOXWARE_AC10 0x0071
1867 #define WAVE_FORMAT_VOXWARE_AC16 0x0072
1868 #define WAVE_FORMAT_VOXWARE_AC20 0x0073
1869 #define WAVE_FORMAT_VOXWARE_RT24 0x0074
1870 #define WAVE_FORMAT_VOXWARE_RT29 0x0075
1871 #define WAVE_FORMAT_VOXWARE_RT29HW 0x0076
1872 #define WAVE_FORMAT_VOXWARE_VR12 0x0077
1873 #define WAVE_FORMAT_VOXWARE_VR18 0x0078
1874 #define WAVE_FORMAT_VOXWARE_TQ40 0x0079
1875 #define WAVE_FORMAT_VOXWARE_SC3 0x007a
1876 #define WAVE_FORMAT_VOXWARE_SC3_1 0x007b
1877 #define WAVE_FORMAT_SOFTSOUND 0x0080
1878 #define WAVE_FORMAT_VOXWARE_TQ60 0x0081
1879 #define WAVE_FORMAT_MSRT24 0x0082
1880 #define WAVE_FORMAT_G729A 0x0083
1881 #define WAVE_FORMAT_MVI_MVI2 0x0084
1882 #define WAVE_FORMAT_DF_G726 0x0085
1883 #define WAVE_FORMAT_DF_GSM610 0x0086
1884 #define WAVE_FORMAT_ISIAUDIO 0x0088
1885 #define WAVE_FORMAT_ONLIVE 0x0089
1886 #define WAVE_FORMAT_MULTITUDE_FT_SX20 0x008a
1887 #define WAVE_FORMAT_INFOCOM_ITS_G721_ADPCM 0x008b
1888 #define WAVE_FORMAT_CONVEDIA_G729 0x008c
1889 #define WAVE_FORMAT_CONGRUENCY 0x008d
1890 #define WAVE_FORMAT_SBC24 0x0091
1891 #define WAVE_FORMAT_DOLBY_AC3_SPDIF 0x0092
1892 #define WAVE_FORMAT_MEDIASONIC_G723 0x0093
1893 #define WAVE_FORMAT_PROSODY_8KBPS 0x0094
1894 #define WAVE_FORMAT_ZYXEL_ADPCM 0x0097
1895 #define WAVE_FORMAT_PHILIPS_LPCBB 0x0098
1896 #define WAVE_FORMAT_PACKED 0x0099
1897 #define WAVE_FORMAT_MALDEN_PHONYTALK 0x00a0
1898 #define WAVE_FORMAT_RACAL_RECORDER_GSM 0x00a1
1899 #define WAVE_FORMAT_RACAL_RECORDER_G720_A 0x00a2
1900 #define WAVE_FORMAT_RACAL_RECORDER_G723_1 0x00a3
1901 #define WAVE_FORMAT_RACAL_RECORDER_TETRA_ACELP 0x00a4
1902 #define WAVE_FORMAT_NEC_AAC 0x00b0
1903 #define WAVE_FORMAT_RAW_AAC1 0x00ff
1904 #define WAVE_FORMAT_RHETOREX_ADPCM 0x0100
1905 #define WAVE_FORMAT_IRAT 0x0101
1906 #define WAVE_FORMAT_VIVO_G723 0x0111
1907 #define WAVE_FORMAT_VIVO_SIREN 0x0112
1908 #define WAVE_FORMAT_PHILIPS_CELP 0x0120
1909 #define WAVE_FORMAT_PHILIPS_GRUNDIG 0x0121
1910 #define WAVE_FORMAT_DIGITAL_G723 0x0123
1911 #define WAVE_FORMAT_SANYO_LD_ADPCM 0x0125
1912 #define WAVE_FORMAT_SIPROLAB_ACEPLNET 0x0130
1913 #define WAVE_FORMAT_SIPROLAB_ACELP4800 0x0131
1914 #define WAVE_FORMAT_SIPROLAB_ACELP8V3 0x0132
1915 #define WAVE_FORMAT_SIPROLAB_G729 0x0133
1916 #define WAVE_FORMAT_SIPROLAB_G729A 0x0134
1917 #define WAVE_FORMAT_SIPROLAB_KELVIN 0x0135
1918 #define WAVE_FORMAT_VOICEAGE_AMR 0x0136
1919 #define WAVE_FORMAT_G726ADPCM 0x0140
1920 #define WAVE_FORMAT_DICTAPHONE_CELP68 0x0141
1921 #define WAVE_FORMAT_DICTAPHONE_CELP54 0x0142
1922 #define WAVE_FORMAT_QUALCOMM_PUREVOICE 0x0150
1923 #define WAVE_FORMAT_QUALCOMM_HALFRATE 0x0151
1924 #define WAVE_FORMAT_TUBGSM 0x0155
1925 #define WAVE_FORMAT_MSAUDIO1 0x0160
1926 #define WAVE_FORMAT_WMAUDIO2 0x0161
1927 #define WAVE_FORMAT_WMAUDIO3 0x0162
1928 #define WAVE_FORMAT_WMAUDIO_LOSSLESS 0x0163
1929 #define WAVE_FORMAT_WMASPDIF 0x0164
1930 #define WAVE_FORMAT_UNISYS_NAP_ADPCM 0x0170
1931 #define WAVE_FORMAT_UNISYS_NAP_ULAW 0x0171
1932 #define WAVE_FORMAT_UNISYS_NAP_ALAW 0x0172
1933 #define WAVE_FORMAT_UNISYS_NAP_16K 0x0173
1934 #define WAVE_FORMAT_SYCOM_ACM_SYC008 0x0174
1935 #define WAVE_FORMAT_SYCOM_ACM_SYC701_G726L 0x0175
1936 #define WAVE_FORMAT_SYCOM_ACM_SYC701_CELP54 0x0176
1937 #define WAVE_FORMAT_SYCOM_ACM_SYC701_CELP68 0x0177
1938 #define WAVE_FORMAT_KNOWLEDGE_ADVENTURE_ADPCM 0x0178
1939 #define WAVE_FORMAT_FRAUNHOFER_IIS_MPEG2_AAC 0x0180
1940 #define WAVE_FORMAT_DTS_DS 0x0190
1941 #define WAVE_FORMAT_CREATIVE_ADPCM 0x0200
1942 #define WAVE_FORMAT_CREATIVE_FASTSPEECH8 0x0202
1943 #define WAVE_FORMAT_CREATIVE_FASTSPEECH10 0x0203
1944 #define WAVE_FORMAT_UHER_ADPCM 0x0210
1945 #define WAVE_FORMAT_ULEAD_DV_AUDIO 0x0215
1946 #define WAVE_FORMAT_ULEAD_DV_AUDIO_1 0x0216
1947 #define WAVE_FORMAT_QUARTERDECK 0x0220
1948 #define WAVE_FORMAT_ILINK_VC 0x0230
1949 #define WAVE_FORMAT_RAW_SPORT 0x0240
1950 #define WAVE_FORMAT_ESST_AC3 0x0241
1951 #define WAVE_FORMAT_GENERIC_PASSTHRU 0x0249
1952 #define WAVE_FORMAT_IPI_HSX 0x0250
1953 #define WAVE_FORMAT_IPI_RPELP 0x0251
1954 #define WAVE_FORMAT_CS2 0x0260
1955 #define WAVE_FORMAT_SONY_SCX 0x0270
1956 #define WAVE_FORMAT_SONY_SCY 0x0271
1957 #define WAVE_FORMAT_SONY_ATRAC3 0x0272
1958 #define WAVE_FORMAT_SONY_SPC 0x0273
1959 #define WAVE_FORMAT_TELUM_AUDIO 0x0280
1960 #define WAVE_FORMAT_TELUM_IA_AUDIO 0x0281
1961 #define WAVE_FORMAT_NORCOM_VOICE_SYSTEMS_ADPCM 0x0285
1962 #define WAVE_FORMAT_FM_TOWNS_SND 0x0300
1963 #define WAVE_FORMAT_MICRONAS 0x0350
1964 #define WAVE_FORMAT_MICRONAS_CELP833 0x0351
1965 #define WAVE_FORMAT_BTV_DIGITAL 0x0400
1966 #define WAVE_FORMAT_INTEL_MUSIC_CODER 0x0401
1967 #define WAVE_FORMAT_INDEO_AUDIO 0x0402
1968 #define WAVE_FORMAT_QDESIGN_MUSIC 0x0450
1969 #define WAVE_FORMAT_ON2_VP7_AUDIO 0x0500
1970 #define WAVE_FORMAT_ON2_VP6_AUDIO 0x0501
1971 #define WAVE_FORMAT_VME_VMPCM 0x0680
1972 #define WAVE_FORMAT_TPC 0x0681
1973 #define WAVE_FORMAT_LIGHTWAVE_LOSSLESS 0x08ae
1974 #define WAVE_FORMAT_OLIGSM 0x1000
1975 #define WAVE_FORMAT_OLIADPCM 0x1001
1976 #define WAVE_FORMAT_OLICELP 0x1002
1977 #define WAVE_FORMAT_OLISBC 0x1003
1978 #define WAVE_FORMAT_OLIOPR 0x1004
1979 #define WAVE_FORMAT_LH_CODEC 0x1100
1980 #define WAVE_FORMAT_LH_CODEC_CELP 0x1101
1981 #define WAVE_FORMAT_LH_CODEC_SBC8 0x1102
1982 #define WAVE_FORMAT_LH_CODEC_SBC12 0x1103
1983 #define WAVE_FORMAT_LH_CODEC_SBC16 0x1104
1984 #define WAVE_FORMAT_NORRIS 0x1400
1985 #define WAVE_FORMAT_ISIAUDIO_2 0x1401
1986 #define WAVE_FORMAT_SOUNDSPACE_MUSICOMPRESS 0x1500
1987 #define WAVE_FORMAT_MPEG_ADTS_AAC 0x1600
1988 #define WAVE_FORMAT_MPEG_RAW_AAC 0x1601
1989 #define WAVE_FORMAT_MPEG_LOAS 0x1602
1990 #define WAVE_FORMAT_NOKIA_MPEG_ADTS_AAC 0x1608
1991 #define WAVE_FORMAT_NOKIA_MPEG_RAW_AAC 0x1609
1992 #define WAVE_FORMAT_VODAFONE_MPEG_ADTS_AAC 0x160a
1993 #define WAVE_FORMAT_VODAFONE_MPEG_RAW_AAC 0x160b
1994 #define WAVE_FORMAT_MPEG_HEAAC 0x1610
1995 #define WAVE_FORMAT_VOXWARE_RT24_SPEECH 0x181c
1996 #define WAVE_FORMAT_SONICFOUNDRY_LOSSLESS 0x1971
1997 #define WAVE_FORMAT_INNINGS_TELECOM_ADPCM 0x1979
1998 #define WAVE_FORMAT_LUCENT_SX8300P 0x1c07
1999 #define WAVE_FORMAT_LUCENT_SX5363S 0x1c0c
2000 #define WAVE_FORMAT_CUSEEME 0x1f03
2001 #define WAVE_FORMAT_NTCSOFT_ALF2CM_ACM 0x1fc4
2002 #define WAVE_FORMAT_DVM 0x2000
2003 #define WAVE_FORMAT_DTS2 0x2001
2004 #define WAVE_FORMAT_MAKEAVIS 0x3313
2005 #define WAVE_FORMAT_DIVIO_MPEG4_AAC 0x4143
2006 #define WAVE_FORMAT_NOKIA_ADAPTIVE_MULTIRATE 0x4201
2007 #define WAVE_FORMAT_DIVIO_G726 0x4243
2008 #define WAVE_FORMAT_LEAD_SPEECH 0x434c
2009 #define WAVE_FORMAT_LEAD_VORBIS 0x564c
2010 #define WAVE_FORMAT_WAVPACK_AUDIO 0x5756
2011 #define WAVE_FORMAT_OGG_VORBIS_MODE_1 0x674f
2012 #define WAVE_FORMAT_OGG_VORBIS_MODE_2 0x6750
2013 #define WAVE_FORMAT_OGG_VORBIS_MODE_3 0x6751
2014 #define WAVE_FORMAT_OGG_VORBIS_MODE_1_PLUS 0x676f
2015 #define WAVE_FORMAT_OGG_VORBIS_MODE_2_PLUS 0x6770
2016 #define WAVE_FORMAT_OGG_VORBIS_MODE_3_PLUS 0x6771
2017 #define WAVE_FORMAT_3COM_NBX 0x7000
2018 #define WAVE_FORMAT_FAAD_AAC 0x706d
2019 #define WAVE_FORMAT_GSM_AMR_CBR 0x7a21
2020 #define WAVE_FORMAT_GSM_AMR_VBR_SID 0x7a22
2021 #define WAVE_FORMAT_COMVERSE_INFOSYS_G723_1 0xa100
2022 #define WAVE_FORMAT_COMVERSE_INFOSYS_AVQSBC 0xa101
2023 #define WAVE_FORMAT_COMVERSE_INFOSYS_SBC 0xa102
2024 #define WAVE_FORMAT_SYMBOL_G729_A 0xa103
2025 #define WAVE_FORMAT_VOICEAGE_AMR_WB 0xa104
2026 #define WAVE_FORMAT_INGENIENT_G726 0xa105
2027 #define WAVE_FORMAT_MPEG4_AAC 0xa106
2028 #define WAVE_FORMAT_ENCORE_G726 0xa107
2029 #define WAVE_FORMAT_ZOLL_ASAO 0xa108
2030 #define WAVE_FORMAT_SPEEX_VOICE 0xa109
2031 #define WAVE_FORMAT_VIANIX_MASC 0xa10a
2032 #define WAVE_FORMAT_WM9_SPECTRUM_ANALYZER 0xa10b
2033 #define WAVE_FORMAT_WMF_SPECTRUM_ANAYZER 0xa10c
2034 #define WAVE_FORMAT_GSM_610 0xa10d
2035 #define WAVE_FORMAT_GSM_620 0xa10e
2036 #define WAVE_FORMAT_GSM_660 0xa10f
2037 #define WAVE_FORMAT_GSM_690 0xa110
2038 #define WAVE_FORMAT_GSM_ADAPTIVE_MULTIRATE_WB 0xa111
2039 #define WAVE_FORMAT_POLYCOM_G722 0xa112
2040 #define WAVE_FORMAT_POLYCOM_G728 0xa113
2041 #define WAVE_FORMAT_POLYCOM_G729_A 0xa114
2042 #define WAVE_FORMAT_POLYCOM_SIREN 0xa115
2043 #define WAVE_FORMAT_GLOBAL_IP_ILBC 0xa116
2044 #define WAVE_FORMAT_RADIOTIME_TIME_SHIFT_RADIO 0xa117
2045 #define WAVE_FORMAT_NICE_ACA 0xa118
2046 #define WAVE_FORMAT_NICE_ADPCM 0xa119
2047 #define WAVE_FORMAT_VOCORD_G721 0xa11a
2048 #define WAVE_FORMAT_VOCORD_G726 0xa11b
2049 #define WAVE_FORMAT_VOCORD_G722_1 0xa11c
2050 #define WAVE_FORMAT_VOCORD_G728 0xa11d
2051 #define WAVE_FORMAT_VOCORD_G729 0xa11e
2052 #define WAVE_FORMAT_VOCORD_G729_A 0xa11f
2053 #define WAVE_FORMAT_VOCORD_G723_1 0xa120
2054 #define WAVE_FORMAT_VOCORD_LBC 0xa121
2055 #define WAVE_FORMAT_NICE_G728 0xa122
2056 #define WAVE_FORMAT_FRACE_TELECOM_G729 0xa123
2057 #define WAVE_FORMAT_CODIAN 0xa124
2058 #define WAVE_FORMAT_FLAC 0xf1ac
2059 
2060 #if !defined (WAVE_FORMAT_EXTENSIBLE)
2061 #define WAVE_FORMAT_EXTENSIBLE 0xfffe
2062 #endif
2063 
2064 #define WAVE_FORMAT_DEVELOPMENT (0xffff)
2065 #endif
2066 
2067 #ifndef WAVE_FORMAT_PCM
2068   typedef struct waveformat_tag {
2069     WORD wFormatTag;
2070     WORD nChannels;
2071     DWORD nSamplesPerSec;
2072     DWORD nAvgBytesPerSec;
2073     WORD nBlockAlign;
2074   } WAVEFORMAT,*PWAVEFORMAT,*NPWAVEFORMAT,*LPWAVEFORMAT;
2075 
2076   typedef struct pcmwaveformat_tag {
2077     WAVEFORMAT wf;
2078     WORD wBitsPerSample;
2079   } PCMWAVEFORMAT,*PPCMWAVEFORMAT,*NPPCMWAVEFORMAT,*LPPCMWAVEFORMAT;
2080 #endif
2081 
2082 #ifndef WAVE_FORMAT_PCM
2083 #define WAVE_FORMAT_PCM 1
2084 #endif
2085 
2086 #ifndef _WAVEFORMATEX_
2087 #define _WAVEFORMATEX_
2088   typedef struct tWAVEFORMATEX {
2089     WORD wFormatTag;
2090     WORD nChannels;
2091     DWORD nSamplesPerSec;
2092     DWORD nAvgBytesPerSec;
2093     WORD nBlockAlign;
2094     WORD wBitsPerSample;
2095     WORD cbSize;
2096   } WAVEFORMATEX,*PWAVEFORMATEX,*NPWAVEFORMATEX,*LPWAVEFORMATEX;
2097 #endif
2098 
2099 #ifdef GUID_DEFINED
2100 #ifndef _NTRTL_
2101 #ifndef DEFINE_GUIDEX
2102 #define DEFINE_GUIDEX(name) EXTERN_C const CDECL GUID name
2103 #endif
2104 
2105 #ifndef STATICGUIDOF
2106 #define STATICGUIDOF(guid) STATIC_##guid
2107 #endif
2108 #endif
2109 
2110 #ifndef DEFINE_GUIDSTRUCT
2111 #define DEFINE_GUIDSTRUCT(g, n) DEFINE_GUIDEX (n)
2112 #define DEFINE_GUIDNAMED(n) n
2113 #endif
2114 
2115 #if !defined (DEFINE_WAVEFORMATEX_GUID)
2116 #define DEFINE_WAVEFORMATEX_GUID(x) (USHORT) (x), 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71
2117 #endif
2118 
2119 #if !defined (STATIC_KSDATAFORMAT_SUBTYPE_PCM)
2120 #define STATIC_KSDATAFORMAT_SUBTYPE_PCM DEFINE_WAVEFORMATEX_GUID (WAVE_FORMAT_PCM)
2121 
2122   DEFINE_GUIDSTRUCT ("00000001-0000-0010-8000-00aa00389b71", KSDATAFORMAT_SUBTYPE_PCM);
2123 
2124 #define KSDATAFORMAT_SUBTYPE_PCM DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_PCM)
2125 #endif
2126 
2127 #if !defined (RC_INVOKED)
2128 #if !defined (STATIC_KSDATAFORMAT_SUBTYPE_IEEE_FLOAT)
2129 #define STATIC_KSDATAFORMAT_SUBTYPE_IEEE_FLOAT DEFINE_WAVEFORMATEX_GUID (WAVE_FORMAT_IEEE_FLOAT)
2130   DEFINE_GUIDSTRUCT("00000003-0000-0010-8000-00aa00389b71", KSDATAFORMAT_SUBTYPE_IEEE_FLOAT);
2131 
2132 #define KSDATAFORMAT_SUBTYPE_IEEE_FLOAT DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_IEEE_FLOAT)
2133 #endif
2134 
2135 #if !defined (STATIC_KSDATAFORMAT_SUBTYPE_WAVEFORMATEX)
2136 #define STATIC_KSDATAFORMAT_SUBTYPE_WAVEFORMATEX __MSABI_LONG (0x00000000), 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71
2137   DEFINE_GUIDSTRUCT ("00000000-0000-0010-8000-00aa00389b71", KSDATAFORMAT_SUBTYPE_WAVEFORMATEX);
2138 #define KSDATAFORMAT_SUBTYPE_WAVEFORMATEX DEFINE_GUIDNAMED(KSDATAFORMAT_SUBTYPE_WAVEFORMATEX)
2139 #endif
2140 #endif
2141 
2142 #if !defined (INIT_WAVEFORMATEX_GUID)
2143 #define INIT_WAVEFORMATEX_GUID(Guid, x) { *(Guid) = KSDATAFORMAT_SUBTYPE_WAVEFORMATEX; (Guid)->Data1 = (USHORT) (x); }
2144 #endif
2145 
2146 #if !defined (EXTRACT_WAVEFORMATEX_ID)
2147 #define EXTRACT_WAVEFORMATEX_ID(Guid) (USHORT) ((Guid)->Data1)
2148 #endif
2149 
2150 #if !defined (IS_VALID_WAVEFORMATEX_GUID)
2151 #define IS_VALID_WAVEFORMATEX_GUID(Guid) (!memcmp (((PUSHORT) &KSDATAFORMAT_SUBTYPE_WAVEFORMATEX) + 1,((PUSHORT) (Guid)) + 1, sizeof (GUID) - sizeof (USHORT)))
2152 #endif
2153 
2154 #ifndef _WAVEFORMATEXTENSIBLE_
2155 #define _WAVEFORMATEXTENSIBLE_
2156   typedef struct {
2157     WAVEFORMATEX Format;
2158     union {
2159       WORD wValidBitsPerSample;
2160       WORD wSamplesPerBlock;
2161       WORD wReserved;
2162     } Samples;
2163     DWORD dwChannelMask;
2164     GUID SubFormat;
2165   } WAVEFORMATEXTENSIBLE,*PWAVEFORMATEXTENSIBLE;
2166 #endif
2167 
2168   typedef WAVEFORMATEXTENSIBLE WAVEFORMATPCMEX;
2169   typedef WAVEFORMATPCMEX *PWAVEFORMATPCMEX;
2170   typedef WAVEFORMATPCMEX *NPWAVEFORMATPCMEX;
2171   typedef WAVEFORMATPCMEX *LPWAVEFORMATPCMEX;
2172   typedef WAVEFORMATEXTENSIBLE WAVEFORMATIEEEFLOATEX;
2173   typedef WAVEFORMATIEEEFLOATEX *PWAVEFORMATIEEEFLOATEX;
2174   typedef WAVEFORMATIEEEFLOATEX *NPWAVEFORMATIEEEFLOATEX;
2175   typedef WAVEFORMATIEEEFLOATEX *LPWAVEFORMATIEEEFLOATEX;
2176 #endif /* GUID_DEFINED */
2177 
2178 #ifndef _SPEAKER_POSITIONS_
2179 #define _SPEAKER_POSITIONS_
2180 
2181 #define SPEAKER_FRONT_LEFT 0x1
2182 #define SPEAKER_FRONT_RIGHT 0x2
2183 #define SPEAKER_FRONT_CENTER 0x4
2184 #define SPEAKER_LOW_FREQUENCY 0x8
2185 #define SPEAKER_BACK_LEFT 0x10
2186 #define SPEAKER_BACK_RIGHT 0x20
2187 #define SPEAKER_FRONT_LEFT_OF_CENTER 0x40
2188 #define SPEAKER_FRONT_RIGHT_OF_CENTER 0x80
2189 #define SPEAKER_BACK_CENTER 0x100
2190 #define SPEAKER_SIDE_LEFT 0x200
2191 #define SPEAKER_SIDE_RIGHT 0x400
2192 #define SPEAKER_TOP_CENTER 0x800
2193 #define SPEAKER_TOP_FRONT_LEFT 0x1000
2194 #define SPEAKER_TOP_FRONT_CENTER 0x2000
2195 #define SPEAKER_TOP_FRONT_RIGHT 0x4000
2196 #define SPEAKER_TOP_BACK_LEFT 0x8000
2197 #define SPEAKER_TOP_BACK_CENTER 0x10000
2198 #define SPEAKER_TOP_BACK_RIGHT 0x20000
2199 
2200 #define SPEAKER_RESERVED 0x7ffc0000
2201 
2202 #define SPEAKER_ALL 0x80000000
2203 #endif
2204 #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) */
2205 
2206 #ifndef NONEWWAVE
2207 
2208 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
2209   typedef struct adpcmcoef_tag {
2210     short iCoef1;
2211     short iCoef2;
2212   } ADPCMCOEFSET,*PADPCMCOEFSET,*NPADPCMCOEFSET,*LPADPCMCOEFSET;
2213 
2214   typedef struct adpcmwaveformat_tag {
2215     WAVEFORMATEX wfx;
2216     WORD wSamplesPerBlock;
2217     WORD wNumCoef;
2218     ADPCMCOEFSET aCoef[];
2219   } ADPCMWAVEFORMAT,*PADPCMWAVEFORMAT,*NPADPCMWAVEFORMAT,*LPADPCMWAVEFORMAT;
2220 
2221   typedef struct drmwaveformat_tag {
2222     WAVEFORMATEX wfx;
2223     WORD wReserved;
2224     ULONG ulContentId;
2225     WAVEFORMATEX wfxSecure;
2226   } DRMWAVEFORMAT,*PDRMWAVEFORMAT,*NPDRMWAVEFORMAT,*LPDRMWAVEFORMAT;
2227 #endif
2228 
2229 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
2230   typedef struct dvi_adpcmwaveformat_tag {
2231     WAVEFORMATEX wfx;
2232     WORD wSamplesPerBlock;
2233   } DVIADPCMWAVEFORMAT,*PDVIADPCMWAVEFORMAT,*NPDVIADPCMWAVEFORMAT,*LPDVIADPCMWAVEFORMAT;
2234 #endif
2235 
2236 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
2237   typedef struct ima_adpcmwaveformat_tag {
2238     WAVEFORMATEX wfx;
2239     WORD wSamplesPerBlock;
2240   } IMAADPCMWAVEFORMAT,*PIMAADPCMWAVEFORMAT,*NPIMAADPCMWAVEFORMAT,*LPIMAADPCMWAVEFORMAT;
2241 #endif
2242 
2243 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
2244   typedef struct mediaspace_adpcmwaveformat_tag {
2245     WAVEFORMATEX wfx;
2246     WORD wRevision;
2247   } MEDIASPACEADPCMWAVEFORMAT,*PMEDIASPACEADPCMWAVEFORMAT,*NPMEDIASPACEADPCMWAVEFORMAT,*LPMEDIASPACEADPCMWAVEFORMAT;
2248 
2249   typedef struct sierra_adpcmwaveformat_tag {
2250     WAVEFORMATEX wfx;
2251     WORD wRevision;
2252   } SIERRAADPCMWAVEFORMAT,*PSIERRAADPCMWAVEFORMAT,*NPSIERRAADPCMWAVEFORMAT,*LPSIERRAADPCMWAVEFORMAT;
2253 
2254   typedef struct g723_adpcmwaveformat_tag {
2255     WAVEFORMATEX wfx;
2256     WORD cbExtraSize;
2257     WORD nAuxBlockSize;
2258   } G723_ADPCMWAVEFORMAT,*PG723_ADPCMWAVEFORMAT,*NPG723_ADPCMWAVEFORMAT,*LPG723_ADPCMWAVEFORMAT;
2259 
2260   typedef struct digistdwaveformat_tag {
2261     WAVEFORMATEX wfx;
2262   } DIGISTDWAVEFORMAT,*PDIGISTDWAVEFORMAT,*NPDIGISTDWAVEFORMAT,*LPDIGISTDWAVEFORMAT;
2263 
2264   typedef struct digifixwaveformat_tag {
2265     WAVEFORMATEX wfx;
2266   } DIGIFIXWAVEFORMAT,*PDIGIFIXWAVEFORMAT,*NPDIGIFIXWAVEFORMAT,*LPDIGIFIXWAVEFORMAT;
2267 
2268   typedef struct creative_fastspeechformat_tag {
2269     WAVEFORMATEX ewf;
2270   } DIALOGICOKIADPCMWAVEFORMAT,*PDIALOGICOKIADPCMWAVEFORMAT,*NPDIALOGICOKIADPCMWAVEFORMAT,*LPDIALOGICOKIADPCMWAVEFORMAT;
2271 
2272   typedef struct yamaha_adpmcwaveformat_tag {
2273     WAVEFORMATEX wfx;
2274   } YAMAHA_ADPCMWAVEFORMAT,*PYAMAHA_ADPCMWAVEFORMAT,*NPYAMAHA_ADPCMWAVEFORMAT,*LPYAMAHA_ADPCMWAVEFORMAT;
2275 
2276   typedef struct sonarcwaveformat_tag {
2277     WAVEFORMATEX wfx;
2278     WORD wCompType;
2279   } SONARCWAVEFORMAT,*PSONARCWAVEFORMAT,*NPSONARCWAVEFORMAT,*LPSONARCWAVEFORMAT;
2280 
2281   typedef struct truespeechwaveformat_tag {
2282     WAVEFORMATEX wfx;
2283     WORD wRevision;
2284     WORD nSamplesPerBlock;
2285     BYTE abReserved[28];
2286   } TRUESPEECHWAVEFORMAT,*PTRUESPEECHWAVEFORMAT,*NPTRUESPEECHWAVEFORMAT,*LPTRUESPEECHWAVEFORMAT;
2287 
2288   typedef struct echosc1waveformat_tag {
2289     WAVEFORMATEX wfx;
2290   } ECHOSC1WAVEFORMAT,*PECHOSC1WAVEFORMAT,*NPECHOSC1WAVEFORMAT,*LPECHOSC1WAVEFORMAT;
2291 
2292   typedef struct audiofile_af36waveformat_tag {
2293     WAVEFORMATEX wfx;
2294   } AUDIOFILE_AF36WAVEFORMAT,*PAUDIOFILE_AF36WAVEFORMAT,*NPAUDIOFILE_AF36WAVEFORMAT,*LPAUDIOFILE_AF36WAVEFORMAT;
2295 
2296   typedef struct aptxwaveformat_tag {
2297     WAVEFORMATEX wfx;
2298   } APTXWAVEFORMAT,*PAPTXWAVEFORMAT,*NPAPTXWAVEFORMAT,*LPAPTXWAVEFORMAT;
2299 
2300   typedef struct audiofile_af10waveformat_tag {
2301     WAVEFORMATEX wfx;
2302   } AUDIOFILE_AF10WAVEFORMAT,*PAUDIOFILE_AF10WAVEFORMAT,*NPAUDIOFILE_AF10WAVEFORMAT,*LPAUDIOFILE_AF10WAVEFORMAT;
2303 
2304   typedef struct dolbyac2waveformat_tag {
2305     WAVEFORMATEX wfx;
2306     WORD nAuxBitsCode;
2307   } DOLBYAC2WAVEFORMAT;
2308 #endif
2309 
2310 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
2311   typedef struct gsm610waveformat_tag {
2312     WAVEFORMATEX wfx;
2313     WORD wSamplesPerBlock;
2314   } GSM610WAVEFORMAT,*PGSM610WAVEFORMAT,*NPGSM610WAVEFORMAT,*LPGSM610WAVEFORMAT;
2315 #endif
2316 
2317 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
2318   typedef struct adpcmewaveformat_tag {
2319     WAVEFORMATEX wfx;
2320     WORD wSamplesPerBlock;
2321   } ADPCMEWAVEFORMAT,*PADPCMEWAVEFORMAT,*NPADPCMEWAVEFORMAT,*LPADPCMEWAVEFORMAT;
2322 
2323   typedef struct contres_vqlpcwaveformat_tag {
2324     WAVEFORMATEX wfx;
2325     WORD wSamplesPerBlock;
2326   } CONTRESVQLPCWAVEFORMAT,*PCONTRESVQLPCWAVEFORMAT,*NPCONTRESVQLPCWAVEFORMAT,*LPCONTRESVQLPCWAVEFORMAT;
2327 
2328   typedef struct digirealwaveformat_tag {
2329     WAVEFORMATEX wfx;
2330     WORD wSamplesPerBlock;
2331   } DIGIREALWAVEFORMAT,*PDIGIREALWAVEFORMAT,*NPDIGIREALWAVEFORMAT,*LPDIGIREALWAVEFORMAT;
2332 
2333   typedef struct digiadpcmmwaveformat_tag {
2334     WAVEFORMATEX wfx;
2335     WORD wSamplesPerBlock;
2336   } DIGIADPCMWAVEFORMAT,*PDIGIADPCMWAVEFORMAT,*NPDIGIADPCMWAVEFORMAT,*LPDIGIADPCMWAVEFORMAT;
2337 
2338   typedef struct contres_cr10waveformat_tag {
2339     WAVEFORMATEX wfx;
2340     WORD wSamplesPerBlock;
2341   } CONTRESCR10WAVEFORMAT,*PCONTRESCR10WAVEFORMAT,*NPCONTRESCR10WAVEFORMAT,*LPCONTRESCR10WAVEFORMAT;
2342 
2343   typedef struct nms_vbxadpcmmwaveformat_tag {
2344     WAVEFORMATEX wfx;
2345     WORD wSamplesPerBlock;
2346   } NMS_VBXADPCMWAVEFORMAT,*PNMS_VBXADPCMWAVEFORMAT,*NPNMS_VBXADPCMWAVEFORMAT,*LPNMS_VBXADPCMWAVEFORMAT;
2347 
2348   typedef struct g721_adpcmwaveformat_tag {
2349     WAVEFORMATEX wfx;
2350     WORD nAuxBlockSize;
2351   } G721_ADPCMWAVEFORMAT,*PG721_ADPCMWAVEFORMAT,*NPG721_ADPCMWAVEFORMAT,*LPG721_ADPCMWAVEFORMAT;
2352 #endif
2353 
2354 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_APP)
2355   typedef struct mpeg1waveformat_tag {
2356     WAVEFORMATEX wfx;
2357     WORD fwHeadLayer;
2358     DWORD dwHeadBitrate;
2359     WORD fwHeadMode;
2360     WORD fwHeadModeExt;
2361     WORD wHeadEmphasis;
2362     WORD fwHeadFlags;
2363     DWORD dwPTSLow;
2364     DWORD dwPTSHigh;
2365   } MPEG1WAVEFORMAT,*PMPEG1WAVEFORMAT,*NPMPEG1WAVEFORMAT,*LPMPEG1WAVEFORMAT;
2366 
2367 #define ACM_MPEG_LAYER1 (0x0001)
2368 #define ACM_MPEG_LAYER2 (0x0002)
2369 #define ACM_MPEG_LAYER3 (0x0004)
2370 #define ACM_MPEG_STEREO (0x0001)
2371 #define ACM_MPEG_JOINTSTEREO (0x0002)
2372 #define ACM_MPEG_DUALCHANNEL (0x0004)
2373 #define ACM_MPEG_SINGLECHANNEL (0x0008)
2374 #define ACM_MPEG_PRIVATEBIT (0x0001)
2375 #define ACM_MPEG_COPYRIGHT (0x0002)
2376 #define ACM_MPEG_ORIGINALHOME (0x0004)
2377 #define ACM_MPEG_PROTECTIONBIT (0x0008)
2378 #define ACM_MPEG_ID_MPEG1 (0x0010)
2379 
2380 #define MPEGLAYER3_WFX_EXTRA_BYTES 12
2381 
2382   typedef struct mpeglayer3waveformat_tag {
2383     WAVEFORMATEX wfx;
2384     WORD wID;
2385     DWORD fdwFlags;
2386     WORD nBlockSize;
2387     WORD nFramesPerBlock;
2388     WORD nCodecDelay;
2389   } MPEGLAYER3WAVEFORMAT,*PMPEGLAYER3WAVEFORMAT,*NPMPEGLAYER3WAVEFORMAT,*LPMPEGLAYER3WAVEFORMAT;
2390 
2391 #define MPEGLAYER3_ID_UNKNOWN 0
2392 #define MPEGLAYER3_ID_MPEG 1
2393 #define MPEGLAYER3_ID_CONSTANTFRAMESIZE 2
2394 
2395 #define MPEGLAYER3_FLAG_PADDING_ISO 0x00000000
2396 #define MPEGLAYER3_FLAG_PADDING_ON 0x00000001
2397 #define MPEGLAYER3_FLAG_PADDING_OFF 0x00000002
2398 
2399   typedef struct heaacwaveinfo_tag {
2400     WAVEFORMATEX wfx;
2401     WORD wPayloadType;
2402     WORD wAudioProfileLevelIndication;
2403     WORD wStructType;
2404     WORD wReserved1;
2405     DWORD dwReserved2;
2406   } HEAACWAVEINFO,*PHEAACWAVEINFO,*NPHEAACWAVEINFO,*LPHEAACWAVEINFO;
2407 
2408   typedef struct heaacwaveformat_tag {
2409     HEAACWAVEINFO wfInfo;
2410     BYTE pbAudioSpecificConfig[1];
2411   } HEAACWAVEFORMAT,*PHEAACWAVEFORMAT,*NPHEAACWAVEFORMAT,*LPHEAACWAVEFORMAT;
2412 
2413 #define MM_MSFT_ACM_WMAUDIO 39
2414 #define MM_MSFT_ACM_MSAUDIO1 39
2415 
2416 #define WMAUDIO_BITS_PER_SAMPLE 16
2417 #define WMAUDIO_MAX_CHANNELS 2
2418 
2419   typedef struct msaudio1waveformat_tag {
2420     WAVEFORMATEX wfx;
2421     WORD wSamplesPerBlock;
2422     WORD wEncodeOptions;
2423   } MSAUDIO1WAVEFORMAT,*LPMSAUDIO1WAVEFORMAT;
2424 
2425 #define MSAUDIO1_BITS_PER_SAMPLE WMAUDIO_BITS_PER_SAMPLE
2426 #define MSAUDIO1_MAX_CHANNELS WMAUDIO_MAX_CHANNELS
2427 #define MSAUDIO1_WFX_EXTRA_BYTES (sizeof (MSAUDIO1WAVEFORMAT) - sizeof (WAVEFORMATEX))
2428 
2429 #define MM_MSFT_ACM_WMAUDIO2 101
2430 
2431   typedef struct wmaudio2waveformat_tag {
2432     WAVEFORMATEX wfx;
2433     DWORD dwSamplesPerBlock;
2434     WORD wEncodeOptions;
2435     DWORD dwSuperBlockAlign;
2436   } WMAUDIO2WAVEFORMAT,*LPWMAUDIO2WAVEFORMAT;
2437 
2438 #define WMAUDIO2_BITS_PER_SAMPLE WMAUDIO_BITS_PER_SAMPLE
2439 #define WMAUDIO2_MAX_CHANNELS WMAUDIO_MAX_CHANNELS
2440 #define WMAUDIO2_WFX_EXTRA_BYTES (sizeof (WMAUDIO2WAVEFORMAT) - sizeof (WAVEFORMATEX))
2441 
2442   typedef struct wmaudio3waveformat_tag {
2443     WAVEFORMATEX wfx;
2444     WORD wValidBitsPerSample;
2445     DWORD dwChannelMask;
2446     DWORD dwReserved1;
2447     DWORD dwReserved2;
2448     WORD wEncodeOptions;
2449     WORD wReserved3;
2450   } WMAUDIO3WAVEFORMAT,*LPWMAUDIO3WAVEFORMAT;
2451 
2452 #define WMAUDIO3_WFX_EXTRA_BYTES (sizeof (WMAUDIO3WAVEFORMAT) - sizeof (WAVEFORMATEX))
2453 #endif
2454 
2455 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
2456   typedef struct creative_adpcmwaveformat_tag {
2457     WAVEFORMATEX wfx;
2458     WORD wRevision;
2459   } CREATIVEADPCMWAVEFORMAT,*PCREATIVEADPCMWAVEFORMAT,*NPCREATIVEADPCMWAVEFORMAT,*LPCREATIVEADPCMWAVEFORMAT;
2460 
2461   typedef struct creative_fastspeech8format_tag {
2462     WAVEFORMATEX wfx;
2463     WORD wRevision;
2464   } CREATIVEFASTSPEECH8WAVEFORMAT,*PCREATIVEFASTSPEECH8WAVEFORMAT,*NPCREATIVEFASTSPEECH8WAVEFORMAT,*LPCREATIVEFASTSPEECH8WAVEFORMAT;
2465 
2466   typedef struct creative_fastspeech10format_tag {
2467     WAVEFORMATEX wfx;
2468     WORD wRevision;
2469   } CREATIVEFASTSPEECH10WAVEFORMAT,*PCREATIVEFASTSPEECH10WAVEFORMAT,*NPCREATIVEFASTSPEECH10WAVEFORMAT,*LPCREATIVEFASTSPEECH10WAVEFORMAT;
2470 
2471   typedef struct fmtowns_snd_waveformat_tag {
2472     WAVEFORMATEX wfx;
2473     WORD wRevision;
2474   } FMTOWNS_SND_WAVEFORMAT,*PFMTOWNS_SND_WAVEFORMAT,*NPFMTOWNS_SND_WAVEFORMAT,*LPFMTOWNS_SND_WAVEFORMAT;
2475 
2476   typedef struct oligsmwaveformat_tag {
2477     WAVEFORMATEX wfx;
2478   } OLIGSMWAVEFORMAT,*POLIGSMWAVEFORMAT,*NPOLIGSMWAVEFORMAT,*LPOLIGSMWAVEFORMAT;
2479 
2480   typedef struct oliadpcmwaveformat_tag {
2481     WAVEFORMATEX wfx;
2482   } OLIADPCMWAVEFORMAT,*POLIADPCMWAVEFORMAT,*NPOLIADPCMWAVEFORMAT,*LPOLIADPCMWAVEFORMAT;
2483 
2484   typedef struct olicelpwaveformat_tag {
2485     WAVEFORMATEX wfx;
2486   } OLICELPWAVEFORMAT,*POLICELPWAVEFORMAT,*NPOLICELPWAVEFORMAT,*LPOLICELPWAVEFORMAT;
2487 
2488   typedef struct olisbcwaveformat_tag {
2489     WAVEFORMATEX wfx;
2490   } OLISBCWAVEFORMAT,*POLISBCWAVEFORMAT,*NPOLISBCWAVEFORMAT,*LPOLISBCWAVEFORMAT;
2491 
2492   typedef struct olioprwaveformat_tag {
2493     WAVEFORMATEX wfx;
2494   } OLIOPRWAVEFORMAT,*POLIOPRWAVEFORMAT,*NPOLIOPRWAVEFORMAT,*LPOLIOPRWAVEFORMAT;
2495 
2496   typedef struct csimaadpcmwaveformat_tag {
2497     WAVEFORMATEX wfx;
2498   } CSIMAADPCMWAVEFORMAT,*PCSIMAADPCMWAVEFORMAT,*NPCSIMAADPCMWAVEFORMAT,*LPCSIMAADPCMWAVEFORMAT;
2499 
2500 #ifndef _ACM_WAVEFILTER
2501 #define _ACM_WAVEFILTER
2502 
2503 #define WAVE_FILTER_UNKNOWN 0x0000
2504 #define WAVE_FILTER_DEVELOPMENT (0xffff)
2505 
2506   typedef struct wavefilter_tag {
2507     DWORD cbStruct;
2508     DWORD dwFilterTag;
2509     DWORD fdwFilter;
2510     DWORD dwReserved[5];
2511   } WAVEFILTER,*PWAVEFILTER,*NPWAVEFILTER,*LPWAVEFILTER;
2512 #endif
2513 
2514 #ifndef WAVE_FILTER_VOLUME
2515 #define WAVE_FILTER_VOLUME 0x0001
2516 
2517   typedef struct wavefilter_volume_tag {
2518     WAVEFILTER wfltr;
2519     DWORD dwVolume;
2520   } VOLUMEWAVEFILTER,*PVOLUMEWAVEFILTER,*NPVOLUMEWAVEFILTER,*LPVOLUMEWAVEFILTER;
2521 #endif
2522 
2523 #ifndef WAVE_FILTER_ECHO
2524 #define WAVE_FILTER_ECHO 0x0002
2525 
2526   typedef struct wavefilter_echo_tag {
2527     WAVEFILTER wfltr;
2528     DWORD dwVolume;
2529     DWORD dwDelay;
2530   } ECHOWAVEFILTER,*PECHOWAVEFILTER,*NPECHOWAVEFILTER,*LPECHOWAVEFILTER;
2531 #endif
2532 
2533 #define RIFFWAVE_inst mmioFOURCC ('i', 'n', 's', 't')
2534 
2535   struct tag_s_RIFFWAVE_inst {
2536     BYTE bUnshiftedNote;
2537     char chFineTune;
2538     char chGain;
2539     BYTE bLowNote;
2540     BYTE bHighNote;
2541     BYTE bLowVelocity;
2542     BYTE bHighVelocity;
2543   };
2544 
2545   typedef struct tag_s_RIFFWAVE_INST s_RIFFWAVE_inst;
2546 #endif
2547 #endif
2548 
2549 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
2550 #ifndef NONEWRIFF
2551 #define RIFFCPPO mmioFOURCC ('C', 'P', 'P', 'O')
2552 #define RIFFCPPO_objr mmioFOURCC ('o', 'b', 'j', 'r')
2553 #define RIFFCPPO_obji mmioFOURCC ('o', 'b', 'j', 'i')
2554 #define RIFFCPPO_clsr mmioFOURCC ('c', 'l', 's', 'r')
2555 #define RIFFCPPO_clsi mmioFOURCC ('c', 'l', 's', 'i')
2556 #define RIFFCPPO_mbr mmioFOURCC ('m', 'b', 'r', ' ')
2557 #define RIFFCPPO_char mmioFOURCC ('c', 'h', 'a', 'r')
2558 #define RIFFCPPO_byte mmioFOURCC ('b', 'y', 't', 'e')
2559 #define RIFFCPPO_int mmioFOURCC ('i', 'n', 't', ' ')
2560 #define RIFFCPPO_word mmioFOURCC ('w', 'o', 'r', 'd')
2561 #define RIFFCPPO_long mmioFOURCC ('l', 'o', 'n', 'g')
2562 #define RIFFCPPO_dwrd mmioFOURCC ('d', 'w', 'r', 'd')
2563 #define RIFFCPPO_flt mmioFOURCC ('f', 'l', 't', ' ')
2564 #define RIFFCPPO_dbl mmioFOURCC ('d', 'b', 'l', ' ')
2565 #define RIFFCPPO_str mmioFOURCC ('s', 't', 'r', ' ')
2566 #endif
2567 
2568 #ifndef BI_BITFIELDS
2569 #define BI_BITFIELDS 3
2570 #endif
2571 
2572 #ifndef QUERYDIBSUPPORT
2573 #define QUERYDIBSUPPORT 3073
2574 #define QDI_SETDIBITS 0x0001
2575 #define QDI_GETDIBITS 0x0002
2576 #define QDI_DIBTOSCREEN 0x0004
2577 #define QDI_STRETCHDIB 0x0008
2578 #endif
2579 
2580 #ifndef NOBITMAP
2581   typedef struct tagEXBMINFOHEADER {
2582     BITMAPINFOHEADER bmi;
2583     DWORD biExtDataOffset;
2584   } EXBMINFOHEADER;
2585 #endif
2586 
2587 #define BICOMP_IBMULTIMOTION mmioFOURCC ('U', 'L', 'T', 'I')
2588 #define BICOMP_IBMPHOTOMOTION mmioFOURCC ('P', 'H', 'M', 'O')
2589 #define BICOMP_CREATIVEYUV mmioFOURCC ('c', 'y', 'u', 'v')
2590 
2591 #ifndef NOJPEGDIB
2592 #define JPEG_DIB mmioFOURCC ('J', 'P', 'E', 'G')
2593 #define MJPG_DIB mmioFOURCC ('M', 'J', 'P', 'G')
2594 
2595 #define JPEG_PROCESS_BASELINE 0
2596 
2597 #define AVIIF_CONTROLFRAME __MSABI_LONG (0x00000200)
2598 
2599 #define JIFMK_SOF0 0xffc0
2600 #define JIFMK_SOF1 0xffc1
2601 #define JIFMK_SOF2 0xffc2
2602 #define JIFMK_SOF3 0xffc3
2603 #define JIFMK_SOF5 0xffc5
2604 #define JIFMK_SOF6 0xffc6
2605 #define JIFMK_SOF7 0xffc7
2606 #define JIFMK_JPG 0xffc8
2607 #define JIFMK_SOF9 0xffc9
2608 #define JIFMK_SOF10 0xffca
2609 #define JIFMK_SOF11 0xffcb
2610 #define JIFMK_SOF13 0xffcd
2611 #define JIFMK_SOF14 0xffce
2612 #define JIFMK_SOF15 0xffcf
2613 #define JIFMK_DHT 0xffc4
2614 #define JIFMK_DAC 0xffcc
2615 #define JIFMK_RST0 0xffd0
2616 #define JIFMK_RST1 0xffd1
2617 #define JIFMK_RST2 0xffd2
2618 #define JIFMK_RST3 0xffd3
2619 #define JIFMK_RST4 0xffd4
2620 #define JIFMK_RST5 0xffd5
2621 #define JIFMK_RST6 0xffd6
2622 #define JIFMK_RST7 0xffd7
2623 #define JIFMK_SOI 0xffd8
2624 #define JIFMK_EOI 0xffd9
2625 #define JIFMK_SOS 0xffda
2626 #define JIFMK_DQT 0xffdb
2627 #define JIFMK_DNL 0xffdc
2628 #define JIFMK_DRI 0xffdd
2629 #define JIFMK_DHP 0xffde
2630 #define JIFMK_EXP 0xffdf
2631 #define JIFMK_APP0 0xffe0
2632 #define JIFMK_APP1 0xffe1
2633 #define JIFMK_APP2 0xffe2
2634 #define JIFMK_APP3 0xffe3
2635 #define JIFMK_APP4 0xffe4
2636 #define JIFMK_APP5 0xffe5
2637 #define JIFMK_APP6 0xffe6
2638 #define JIFMK_APP7 0xffe7
2639 #define JIFMK_JPG0 0xfff0
2640 #define JIFMK_JPG1 0xfff1
2641 #define JIFMK_JPG2 0xfff2
2642 #define JIFMK_JPG3 0xfff3
2643 #define JIFMK_JPG4 0xfff4
2644 #define JIFMK_JPG5 0xfff5
2645 #define JIFMK_JPG6 0xfff6
2646 #define JIFMK_JPG7 0xfff7
2647 #define JIFMK_JPG8 0xfff8
2648 #define JIFMK_JPG9 0xfff9
2649 #define JIFMK_JPG10 0xfffa
2650 #define JIFMK_JPG11 0xfffb
2651 #define JIFMK_JPG12 0xfffc
2652 #define JIFMK_JPG13 0xfffd
2653 #define JIFMK_COM 0xfffe
2654 #define JIFMK_TEM 0xff01
2655 #define JIFMK_RES 0xff02
2656 #define JIFMK_00 0xff00
2657 #define JIFMK_FF 0xffff
2658 
2659 #define JPEG_Y 1
2660 #define JPEG_YCbCr 2
2661 #define JPEG_RGB 3
2662 
2663   typedef struct tagJPEGINFOHEADER {
2664     DWORD JPEGSize;
2665     DWORD JPEGProcess;
2666     DWORD JPEGColorSpaceID;
2667     DWORD JPEGBitsPerSample;
2668     DWORD JPEGHSubSampling;
2669     DWORD JPEGVSubSampling;
2670   } JPEGINFOHEADER;
2671 #ifdef MJPGDHTSEG_STORAGE
2672 
2673   MJPGDHTSEG_STORAGE BYTE MJPGDHTSeg[0x1a4] = {
2674     0xff, 0xc4, 0x01, 0xa2, 0x00, 0x00, 0x01, 0x05, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00,
2675     0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x01, 0x00, 0x03,
2676     0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x03,
2677     0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x10, 0x00, 0x02, 0x01, 0x03, 0x03, 0x02, 0x04, 0x03, 0x05,
2678     0x05, 0x04, 0x04, 0x00, 0x00, 0x01, 0x7d, 0x01, 0x02, 0x03, 0x00, 0x04, 0x11, 0x05, 0x12, 0x21, 0x31, 0x41,
2679     0x06, 0x13, 0x51, 0x61, 0x07, 0x22, 0x71, 0x14, 0x32, 0x81, 0x91, 0xa1, 0x08, 0x23, 0x42, 0xb1, 0xc1, 0x15,
2680     0x52, 0xd1, 0xf0, 0x24, 0x33, 0x62, 0x72, 0x82, 0x09, 0x0a, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x25, 0x26, 0x27,
2681     0x28, 0x29, 0x2a, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a,
2682     0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x73, 0x74,
2683     0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x92, 0x93, 0x94, 0x95,
2684     0x96, 0x97, 0x98, 0x99, 0x9a, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xb2, 0xb3, 0xb4, 0xb5,
2685     0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xd2, 0xd3, 0xd4, 0xd5,
2686     0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xf1, 0xf2, 0xf3,
2687     0xf4, 0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa, 0x11, 0x00, 0x02, 0x01, 0x02, 0x04, 0x04, 0x03, 0x04, 0x07, 0x05,
2688     0x04, 0x04, 0x00, 0x01, 0x02, 0x77, 0x00, 0x01, 0x02, 0x03, 0x11, 0x04, 0x05, 0x21, 0x31, 0x06, 0x12, 0x41,
2689     0x51, 0x07, 0x61, 0x71, 0x13, 0x22, 0x32, 0x81, 0x08, 0x14, 0x42, 0x91, 0xa1, 0xb1, 0xc1, 0x09, 0x23, 0x33,
2690     0x52, 0xf0, 0x15, 0x62, 0x72, 0xd1, 0x0a, 0x16, 0x24, 0x34, 0xe1, 0x25, 0xf1, 0x17, 0x18, 0x19, 0x1a, 0x26,
2691     0x27, 0x28, 0x29, 0x2a, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a,
2692     0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a, 0x73, 0x74,
2693     0x75, 0x76, 0x77, 0x78, 0x79, 0x7a, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x92, 0x93, 0x94,
2694     0x95, 0x96, 0x97, 0x98, 0x99, 0x9a, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xb2, 0xb3, 0xb4,
2695     0xb5, 0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xd2, 0xd3, 0xd4,
2696     0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea, 0xf2, 0xf3, 0xf4,
2697     0xf5, 0xf6, 0xf7, 0xf8, 0xf9, 0xfa
2698   };
2699 #endif
2700 #endif
2701 
2702 #ifndef NONEWIC
2703 
2704 #ifndef ICTYPE_VIDEO
2705 #define ICTYPE_VIDEO mmioFOURCC ('v', 'i', 'd', 'c')
2706 #define ICTYPE_AUDIO mmioFOURCC ('a', 'u', 'd', 'c')
2707 #endif
2708 #endif
2709 
2710 #define FOURCC_RDSP mmioFOURCC ('R', 'D', 'S', 'P')
2711 
2712 #ifndef MMNOMIXER
2713 #define MIXERCONTROL_CONTROLTYPE_SRS_MTS (MIXERCONTROL_CONTROLTYPE_BOOLEAN + 6)
2714 #define MIXERCONTROL_CONTROLTYPE_SRS_ONOFF (MIXERCONTROL_CONTROLTYPE_BOOLEAN + 7)
2715 #define MIXERCONTROL_CONTROLTYPE_SRS_SYNTHSELECT (MIXERCONTROL_CONTROLTYPE_BOOLEAN + 8)
2716 #endif
2717 #endif
2718 
2719 #ifndef RC_INVOKED
2720 #include "poppack.h"
2721 #endif
2722 
2723 #ifdef __cplusplus
2724 }
2725 #endif
2726 
2727 #endif
2728 #else /* defined (__WIDL__) */
2729 cpp_quote("#if 0")
2730 /* FIXME: #pragma pack(push, 1) */
2731 typedef struct tWAVEFORMATEX {
2732   WORD wFormatTag;
2733   WORD nChannels;
2734   DWORD nSamplesPerSec;
2735   DWORD nAvgBytesPerSec;
2736   WORD nBlockAlign;
2737   WORD wBitsPerSample;
2738   WORD cbSize;
2739   [size_is (cbSize)] BYTE pExtraBytes[];
2740 } WAVEFORMATEX,*PWAVEFORMATEX,*NPWAVEFORMATEX,*LPWAVEFORMATEX;
2741 typedef struct {
2742   WORD wFormatTag;
2743   WORD nChannels;
2744   DWORD nSamplesPerSec;
2745   DWORD nAvgBytesPerSec;
2746   WORD nBlockAlign;
2747   WORD wBitsPerSample;
2748   WORD cbSize;
2749   WORD wValidBitsPerSample;
2750   DWORD dwChannelMask;
2751   GUID SubFormat;
2752 } WAVEFORMATEXTENSIBLE,*PWAVEFORMATEXTENSIBLE;
2753 /* FIXME: #pragma pack(pop) */
2754 cpp_quote("#endif")
2755 #endif
2756