Home | History | Annotate | Download | only in include
      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