This repository has been archived on 2024-12-16. You can view files and clone it, but cannot push or open issues or pull requests.
CodeBlocksPortable/WATCOM/h/nt/mmreg.h

2806 lines
103 KiB
C
Raw Normal View History

/*
* mmreg.h Multimedia registration definitions
*
* =========================================================================
*
* Open Watcom Project
*
* Copyright (c) 2004-2010 The Open Watcom Contributors. All Rights Reserved.
*
* This file is automatically generated. Do not edit directly.
*
* =========================================================================
*/
#ifndef _INC_MMREG
#define _INC_MMREG 158
#ifndef _ENABLE_AUTODEPEND
#pragma read_only_file;
#endif
#ifdef __cplusplus
extern "C" {
#endif
/* Multimedia manufacturers */
#ifndef MM_MICROSOFT
#define MM_MICROSOFT 1
#endif
#define MM_CREATIVE 2
#define MM_MEDIAVISION 3
#define MM_FUJITSU 4
#define MM_PRAGMATRAX 5
#define MM_CYRIX 6
#define MM_PHILIPS_SPEECH_PROCESSING 7
#define MM_NETXL 8
#define MM_ZYXEL 9
#define MM_BECUBED 10
#define MM_AARDVARK 11
#define MM_BINTEC 12
#define MM_HEWLETT_PACKARD 13
#define MM_ACULAB 14
#define MM_FAITH 15
#define MM_MITEL 16
#define MM_QUANTUM3D 17
#define MM_SNI 18
#define MM_EMU 19
#define MM_ARTISOFT 20
#define MM_TURTLE_BEACH 21
#define MM_IBM 22
#define MM_VOCALTEC 23
#define MM_ROLAND 24
#define MM_DSP_SOLUTIONS 25
#define MM_NEC 26
#define MM_ATI 27
#define MM_WANGLABS 28
#define MM_TANDY 29
#define MM_VOYETRA 30
#define MM_ANTEX 31
#define MM_ICL_PS 32
#define MM_INTEL 33
#define MM_GRAVIS 34
#define MM_VAL 35
#define MM_INTERACTIVE 36
#define MM_YAMAHA 37
#define MM_EVEREX 38
#define MM_ECHO 39
#define MM_SIERRA 40
#define MM_CAT 41
#define MM_APPS 42
#define MM_DSP_GROUP 43
#define MM_MELABS 44
#define MM_COMPUTER_FRIENDS 45
#define MM_ESS 46
#define MM_AUDIOFILE 47
#define MM_MOTOROLA 48
#define MM_CANOPUS 49
#define MM_EPSON 50
#define MM_TRUEVISION 51
#define MM_AZTECH 52
#define MM_VIDEOLOGIC 53
#define MM_SCALACS 54
#define MM_KORG 55
#define MM_APT 56
#define MM_ICS 57
#define MM_ITERATEDSYS 58
#define MM_METHEUS 59
#define MM_LOGITECH 60
#define MM_WINNOV 61
#define MM_NCR 62
#define MM_EXAN 63
#define MM_AST 64
#define MM_WILLOWPOND 65
#define MM_SONICFOUNDRY 66
#define MM_VITEC 67
#define MM_MOSCOM 68
#define MM_SILICONSOFT 69
#define MM_TERRATEC 70
#define MM_MEDIASONIC 71
#define MM_SANYO 72
#define MM_SUPERMAC 73
#define MM_AUDIOPT 74
#define MM_NOGATECH 75
#define MM_SPEECHCOMP 76
#define MM_AHEAD 77
#define MM_DOLBY 78
#define MM_OKI 79
#define MM_AURAVISION 80
#define MM_OLIVETTI 81
#define MM_IOMAGIC 82
#define MM_MATSUSHITA 83
#define MM_CONTROLRES 84
#define MM_XEBEC 85
#define MM_NEWMEDIA 86
#define MM_NMS 87
#define MM_LYRRUS 88
#define MM_COMPUSIC 89
#define MM_OPTI 90
#define MM_ADLACC 91
#define MM_COMPAQ 92
#define MM_DIALOGIC 93
#define MM_INSOFT 94
#define MM_MPTUS 95
#define MM_WEITEK 96
#define MM_LERNOUT_AND_HAUSPIE 97
#define MM_QCIAR 98
#define MM_APPLE 99
#define MM_DIGITAL 100
#define MM_MOTU 101
#define MM_WORKBIT 102
#define MM_OSITECH 103
#define MM_MIRO 104
#define MM_CIRRUSLOGIC 105
#define MM_ISOLUTION 106
#define MM_HORIZON 107
#define MM_CONCEPTS 108
#define MM_VTG 109
#define MM_RADIUS 110
#define MM_ROCKWELL 111
#define MM_XYZ 112
#define MM_OPCODE 113
#define MM_VOXWARE 114
#define MM_NORTHERN_TELECOM 115
#define MM_APICOM 116
#define MM_GRANDE 117
#define MM_ADDX 118
#define MM_WILDCAT 119
#define MM_RHETOREX 120
#define MM_BROOKTREE 121
#define MM_ENSONIQ 125
#define MM_FAST 126
#define MM_NVIDIA 127
#define MM_OKSORI 128
#define MM_DIACOUSTICS 129
#define MM_GULBRANSEN 130
#define MM_KAY_ELEMETRICS 131
#define MM_CRYSTAL 132
#define MM_SPLASH_STUDIOS 133
#define MM_QUARTERDECK 134
#define MM_TDK 135
#define MM_DIGITAL_AUDIO_LABS 136
#define MM_SEERSYS 137
#define MM_PICTURETEL 138
#define MM_ATT_MICROELECTRONICS 139
#define MM_OSPREY 140
#define MM_MEDIATRIX 141
#define MM_SOUNDESIGNS 142
#define MM_ALDIGITAL 143
#define MM_SPECTRUM_SIGNAL_PROCESSING 144
#define MM_ECS 145
#define MM_AMD 146
#define MM_COREDYNAMICS 147
#define MM_CANAM 148
#define MM_SOFTSOUND 149
#define MM_NORRIS 150
#define MM_DDD 151
#define MM_EUPHONICS 152
#define MM_PRECEPT 153
#define MM_CRYSTAL_NET 154
#define MM_CHROMATIC 155
#define MM_VOICEINFO 156
#define MM_VIENNASYS 157
#define MM_CONNECTIX 158
#define MM_GADGETLABS 159
#define MM_FRONTIER 160
#define MM_VIONA 161
#define MM_CASIO 162
#define MM_DIAMONDMM 163
#define MM_S3 164
#define MM_DVISION 165
#define MM_NETSCAPE 166
#define MM_SOUNDSCAPE 167
#define MM_VANKOEVERING 168
#define MM_QTEAM 169
#define MM_ZEFIRO 170
#define MM_STUDER 171
#define MM_FRAUNHOFER_IIS 172
#define MM_QUICKNET 173
#define MM_ALARIS 174
#define MM_SICRESOURCE 175
#define MM_NEOMAGIC 176
#define MM_MERGING_TECHNOLOGIES 177
#define MM_XIRLINK 178
#define MM_COLORGRAPH 179
#define MM_OTI 180
#define MM_AUREAL 181
#define MM_VIVO 182
#define MM_SHARP 183
#define MM_LUCENT 184
#define MM_ATT 185
#define MM_SUNCOM 186
#define MM_SORVIS 187
#define MM_INVISION 188
#define MM_BERKOM 189
#define MM_MARIAN 190
#define MM_DPSINC 191
#define MM_BCB 192
#define MM_MOTIONPIXELS 193
#define MM_QDESIGNS 194
#define MM_NMP 195
#define MM_DATAFUSION 196
#define MM_DUCK 197
#define MM_FTR 198
#define MM_BERCOS 199
#define MM_ONLIVE 200
#define MM_SIEMENS_SBC 201
#define MM_TERALOGIC 202
#define MM_PHONET 203
#define MM_WINBOND 204
#define MM_VIRTUALMUSIC 205
#define MM_ENET 206
#define MM_GUILLEMOT 207
#define MM_EMAGIC 208
#define MM_MWM 209
#define MM_PACIFICRESEARCH 210
#define MM_SIPROLAB 211
#define MM_LYNX 212
#define MM_SPECTRUM_PRODUCTIONS 213
#define MM_DICTAPHONE 214
#define MM_QUALCOMM 215
#define MM_RZS 216
#define MM_AUDIOSCIENCE 217
#define MM_PINNACLE 218
#define MM_EES 219
#define MM_HAFTMANN 220
#define MM_LUCID 221
#define MM_HEADSPACE 222
#define MM_UNISYS 223
#define MM_LUMINOSITI 224
#define MM_ACTIVEVOICE 225
#define MM_DTS 226
#define MM_DIGIGRAM 227
#define MM_SOFTLAB_NSK 228
#define MM_FORTEMEDIA 229
#define MM_SONORUS 230
#define MM_ARRAY 231
#define MM_DATARAN 232
#define MM_I_LINK 233
#define MM_SELSIUS_SYSTEMS 234
#define MM_ADMOS 235
#define MM_LEXICON 236
#define MM_SGI 237
#define MM_IPI 238
#define MM_ICE 239
#define MM_VQST 240
#define MM_ETEK 241
#define MM_CS 242
#define MM_ALESIS 243
#define MM_INTERNET 244
#define MM_SONY 245
#define MM_HYPERACTIVE 246
#define MM_UHER_INFORMATIC 247
#define MM_SYDEC_NV 248
#define MM_FLEXION 249
#define MM_VIA 250
#define MM_MICRONAS 251
#define MM_ANALOGDEVICES 252
#define MM_HP 253
#define MM_MATROX_DIV 254
#define MM_QUICKAUDIO 255
#define MM_YOUCOM 256
#define MM_RICHMOND 257
#define MM_IODD 258
#define MM_ICCC 259
#define MM_3COM 260
#define MM_MALDEN 261
#define MM_3DFX 262
#define MM_MINDMAKER 263
#define MM_TELEKOL 264
#define MM_ST_MICROELECTRONICS 265
#define MM_ALGOVISION 266
#define MM_UNMAPPED 0xFFFF
#define MM_PID_UNMAPPED MM_UNMAPPED
/* Macros to manipulate manufacturer and product identifiers */
#define INIT_MMREG_MID( p1, p2 ) \
{ \
(p1)->Data1 = 0xD5A47FA7 + (USHORT)(p2); \
(p1)->Data2 = 0x6D98; \
(p1)->Data3 = 0x11D1; \
(p1)->Data4[0] = 0xA2; \
(p1)->Data4[1] = 0x1A; \
(p1)->Data4[2] = 0x00; \
(p1)->Data4[3] = 0xA0; \
(p1)->Data4[4] = 0xC9; \
(p1)->Data4[5] = 0x22; \
(p1)->Data4[6] = 0x31; \
(p1)->Data4[7] = 0x96; \
}
#define EXTRACT_MMREG_MID( x ) \
(USHORT)((x)->Data1 - 0xD5A47FA7)
#define DEFINE_MMREG_MID_GUID( x ) \
0xD5A47FA7 + (USHORT)(x), 0x6D98, 0x11D1, 0xA2, 0x1A, 0x00, 0xA0, 0xC9, 0x22, \
0x31, 0x96
#define IS_COMPATIBLE_MMREG_MID( x ) \
(((x)->Data1 >= 0xD5A47FA7) && ((x)->Data1 < 0xD5A47FA7 + 0xFFFF) && \
((x)->Data2 == 0x6D98) && ((x)->Data3 == 0x11D1) && ((x)->Data4[0] == 0xA2) && \
((x)->Data4[1] == 0x1A) && ((x)->Data4[2] == 0x00) && ((x)->Data4[3] == 0xA0) && \
((x)->Data4[4] == 0xC9) && ((x)->Data4[5] == 0x22) && ((x)->Data4[6] == 0x31) && \
((x)->Data4[7] == 0x96))
#define INIT_MMREG_PID( p1, p2 ) \
{ \
(p1)->Data1 = 0xE36DC2AC + (USHORT)(p2); \
(p1)->Data2 = 0x6D9A; \
(p1)->Data3 = 0x11D1; \
(p1)->Data4[0] = 0xA2; \
(p1)->Data4[1] = 0x1A; \
(p1)->Data4[2] = 0x00; \
(p1)->Data4[3] = 0xA0; \
(p1)->Data4[4] = 0xC9; \
(p1)->Data4[5] = 0x22; \
(p1)->Data4[6] = 0x31; \
(p1)->Data4[7] = 0x96; \
}
#define EXTRACT_MMREG_PID( x ) \
(USHORT)((x)->Data1 - 0xE36DC2AC)
#define DEFINE_MMREG_PID_GUID( x ) \
0xE36DC2AC + (USHORT)(x), 0x6D9A, 0x11D1, 0xA2, 0x1A, 0x00, 0xA0, 0xC9, 0x22, \
0x31, 0x96
#define IS_COMPATIBLE_MMREG_PID( x ) \
(((x)->Data1 >= 0xE36DC2AC) && ((x)->Data1 < 0xE36DC2AC + 0xFFFF) && \
((x)->Data2 == 0x6D9A) && ((x)->Data3 == 0x11D1) && ((x)->Data4[0] == 0xA2) && \
((x)->Data4[1] == 0x1A) && ((x)->Data4[2] == 0x00) && ((x)->Data4[3] == 0xA0) && \
((x)->Data4[4] == 0xC9) && ((x)->Data4[5] == 0x22) && ((x)->Data4[6] == 0x31) && \
((x)->Data4[7] == 0x96))
/* Product identifiers for MM_MICROSOFT */
#ifndef MM_MIDI_MAPPER
#define MM_MIDI_MAPPER 1
#define MM_WAVE_MAPPER 2
#define MM_SNDBLST_MIDIOUT 3
#define MM_SNDBLST_MIDIIN 4
#define MM_SNDBLST_SYNTH 5
#define MM_SNDBLST_WAVEOUT 6
#define MM_SNDBLST_WAVEIN 7
#define MM_ADLIB 9
#define MM_MPU401_MIDIOUT 10
#define MM_MPU401_MIDIIN 11
#define MM_PC_JOYSTICK 12
#endif
#define MM_PCSPEAKER_WAVEOUT 13
#define MM_MSFT_WSS_WAVEIN 14
#define MM_MSFT_WSS_WAVEOUT 15
#define MM_MSFT_WSS_FMSYNTH_STEREO 16
#define MM_MSFT_WSS_MIXER 17
#define MM_MSFT_WSS_OEM_WAVEIN 18
#define MM_MSFT_WSS_OEM_WAVEOUT 19
#define MM_MSFT_WSS_OEM_FMSYNTH_STEREO 20
#define MM_MSFT_WSS_AUX 21
#define MM_MSFT_WSS_OEM_AUX 22
#define MM_MSFT_GENERIC_WAVEIN 23
#define MM_MSFT_GENERIC_WAVEOUT 24
#define MM_MSFT_GENERIC_MIDIIN 25
#define MM_MSFT_GENERIC_MIDIOUT 26
#define MM_MSFT_GENERIC_MIDISYNTH 27
#define MM_MSFT_GENERIC_AUX_LINE 28
#define MM_MSFT_GENERIC_AUX_MIC 29
#define MM_MSFT_GENERIC_AUX_CD 30
#define MM_MSFT_WSS_OEM_MIXER 31
#define MM_MSFT_MSACM 32
#define MM_MSFT_ACM_MSADPCM 33
#define MM_MSFT_ACM_IMAADPCM 34
#define MM_MSFT_ACM_MSFILTER 35
#define MM_MSFT_ACM_GSM610 36
#define MM_MSFT_ACM_G711 37
#define MM_MSFT_ACM_PCM 38
#define MM_WSS_SB16_WAVEIN 39
#define MM_WSS_SB16_WAVEOUT 40
#define MM_WSS_SB16_MIDIIN 41
#define MM_WSS_SB16_MIDIOUT 42
#define MM_WSS_SB16_SYNTH 43
#define MM_WSS_SB16_AUX_LINE 44
#define MM_WSS_SB16_AUX_CD 45
#define MM_WSS_SB16_MIXER 46
#define MM_WSS_SBPRO_WAVEIN 47
#define MM_WSS_SBPRO_WAVEOUT 48
#define MM_WSS_SBPRO_MIDIIN 49
#define MM_WSS_SBPRO_MIDIOUT 50
#define MM_WSS_SBPRO_SYNTH 51
#define MM_WSS_SBPRO_AUX_LINE 52
#define MM_WSS_SBPRO_AUX_CD 53
#define MM_WSS_SBPRO_MIXER 54
#define MM_MSFT_WSS_NT_WAVEIN 55
#define MM_MSFT_WSS_NT_WAVEOUT 56
#define MM_MSFT_WSS_NT_FMSYNTH_STEREO 57
#define MM_MSFT_WSS_NT_MIXER 58
#define MM_MSFT_WSS_NT_AUX 59
#define MM_MSFT_SB16_WAVEIN 60
#define MM_MSFT_SB16_WAVEOUT 61
#define MM_MSFT_SB16_MIDIIN 62
#define MM_MSFT_SB16_MIDIOUT 63
#define MM_MSFT_SB16_SYNTH 64
#define MM_MSFT_SB16_AUX_LINE 65
#define MM_MSFT_SB16_AUX_CD 66
#define MM_MSFT_SB16_MIXER 67
#define MM_MSFT_SBPRO_WAVEIN 68
#define MM_MSFT_SBPRO_WAVEOUT 69
#define MM_MSFT_SBPRO_MIDIIN 70
#define MM_MSFT_SBPRO_MIDIOUT 71
#define MM_MSFT_SBPRO_SYNTH 72
#define MM_MSFT_SBPRO_AUX_LINE 73
#define MM_MSFT_SBPRO_AUX_CD 74
#define MM_MSFT_SBPRO_MIXER 75
#define MM_MSFT_MSOPL_SYNTH 76
#define MM_MSFT_VMDMS_LINE_WAVEIN 80
#define MM_MSFT_VMDMS_LINE_WAVEOUT 81
#define MM_MSFT_VMDMS_HANDSET_WAVEIN 82
#define MM_MSFT_VMDMS_HANDSET_WAVEOUT 83
#define MM_MSFT_VMDMW_LINE_WAVEIN 84
#define MM_MSFT_VMDMW_LINE_WAVEOUT 85
#define MM_MSFT_VMDMW_HANDSET_WAVEIN 86
#define MM_MSFT_VMDMW_HANDSET_WAVEOUT 87
#define MM_MSFT_VMDMW_MIXER 88
#define MM_MSFT_VMDM_GAME_WAVEOUT 89
#define MM_MSFT_VMDM_GAME_WAVEIN 90
#define MM_MSFT_ACM_MSNAUDIO 91
#define MM_MSFT_ACM_MSG723 92
#define MM_MSFT_ACM_MSRT24 93
#define MM_MSFT_WDMAUDIO_WAVEOUT 100
#define MM_MSFT_WDMAUDIO_WAVEIN 101
#define MM_MSFT_WDMAUDIO_MIDIOUT 102
#define MM_MSFT_WDMAUDIO_MIDIIN 103
#define MM_MSFT_WDMAUDIO_MIXER 104
#define MM_MSFT_WDMAUDIO_AUX 105
#define MM_MSFT_ACM_WMAUDIO 39
#define MM_MSFT_ACM_MSAUDIO1 39
#define MM_MSFT_ACM_WMAUDIO2 101
/* Product identifiers for MM_CREATIVE */
#define MM_CREATIVE_SB15_WAVEIN 1
#define MM_CREATIVE_SB20_WAVEIN 2
#define MM_CREATIVE_SBPRO_WAVEIN 3
#define MM_CREATIVE_SBP16_WAVEIN 4
#define MM_CREATIVE_PHNBLST_WAVEIN 5
#define MM_CREATIVE_SB15_WAVEOUT 101
#define MM_CREATIVE_SB20_WAVEOUT 102
#define MM_CREATIVE_SBPRO_WAVEOUT 103
#define MM_CREATIVE_SBP16_WAVEOUT 104
#define MM_CREATIVE_PHNBLST_WAVEOUT 105
#define MM_CREATIVE_MIDIOUT 201
#define MM_CREATIVE_MIDIIN 202
#define MM_CREATIVE_FMSYNTH_MONO 301
#define MM_CREATIVE_FMSYNTH_STEREO 302
#define MM_CREATIVE_MIDI_AWE32 303
#define MM_CREATIVE_AUX_CD 401
#define MM_CREATIVE_AUX_LINE 402
#define MM_CREATIVE_AUX_MIC 403
#define MM_CREATIVE_AUX_MASTER 404
#define MM_CREATIVE_AUX_PCSPK 405
#define MM_CREATIVE_AUX_WAVE 406
#define MM_CREATIVE_AUX_MIDI 407
#define MM_CREATIVE_SBPRO_MIXER 408
#define MM_CREATIVE_SB16_MIXER 409
/* Product identifiers for MM_MEDIAVISION */
#define MM_MEDIAVISION_PROAUDIO 0x10
#define MM_PROAUD_MIDIOUT (MM_MEDIAVISION_PROAUDIO + 1)
#define MM_PROAUD_MIDIIN (MM_MEDIAVISION_PROAUDIO + 2)
#define MM_PROAUD_SYNTH (MM_MEDIAVISION_PROAUDIO + 3)
#define MM_PROAUD_WAVEOUT (MM_MEDIAVISION_PROAUDIO + 4)
#define MM_PROAUD_WAVEIN (MM_MEDIAVISION_PROAUDIO + 5)
#define MM_PROAUD_MIXER (MM_MEDIAVISION_PROAUDIO + 6)
#define MM_PROAUD_AUX (MM_MEDIAVISION_PROAUDIO + 7)
#define MM_MEDIAVISION_THUNDER 0x20
#define MM_THUNDER_SYNTH (MM_MEDIAVISION_THUNDER + 3)
#define MM_THUNDER_WAVEOUT (MM_MEDIAVISION_THUNDER + 4)
#define MM_THUNDER_WAVEIN (MM_MEDIAVISION_THUNDER + 5)
#define MM_THUNDER_AUX (MM_MEDIAVISION_THUNDER + 7)
#define MM_MEDIAVISION_TPORT 0x40
#define MM_TPORT_WAVEOUT (MM_MEDIAVISION_TPORT + 1)
#define MM_TPORT_WAVEIN (MM_MEDIAVISION_TPORT + 2)
#define MM_TPORT_SYNTH (MM_MEDIAVISION_TPORT + 3)
#define MM_MEDIAVISION_PROAUDIO_PLUS 0x50
#define MM_PROAUD_PLUS_MIDIOUT (MM_MEDIAVISION_PROAUDIO_PLUS + 1)
#define MM_PROAUD_PLUS_MIDIIN (MM_MEDIAVISION_PROAUDIO_PLUS + 2)
#define MM_PROAUD_PLUS_SYNTH (MM_MEDIAVISION_PROAUDIO_PLUS + 3)
#define MM_PROAUD_PLUS_WAVEOUT (MM_MEDIAVISION_PROAUDIO_PLUS + 4)
#define MM_PROAUD_PLUS_WAVEIN (MM_MEDIAVISION_PROAUDIO_PLUS + 5)
#define MM_PROAUD_PLUS_MIXER (MM_MEDIAVISION_PROAUDIO_PLUS + 6)
#define MM_PROAUD_PLUS_AUX (MM_MEDIAVISION_PROAUDIO_PLUS + 7)
#define MM_MEDIAVISION_PROAUDIO_16 0x60
#define MM_PROAUD_16_MIDIOUT (MM_MEDIAVISION_PROAUDIO_16 + 1)
#define MM_PROAUD_16_MIDIIN (MM_MEDIAVISION_PROAUDIO_16 + 2)
#define MM_PROAUD_16_SYNTH (MM_MEDIAVISION_PROAUDIO_16 + 3)
#define MM_PROAUD_16_WAVEOUT (MM_MEDIAVISION_PROAUDIO_16 + 4)
#define MM_PROAUD_16_WAVEIN (MM_MEDIAVISION_PROAUDIO_16 + 5)
#define MM_PROAUD_16_MIXER (MM_MEDIAVISION_PROAUDIO_16 + 6)
#define MM_PROAUD_16_AUX (MM_MEDIAVISION_PROAUDIO_16 + 7)
#define MM_MEDIAVISION_PROSTUDIO_16 0x60
#define MM_STUDIO_16_MIDIOUT (MM_MEDIAVISION_PROSTUDIO_16 + 1)
#define MM_STUDIO_16_MIDIIN (MM_MEDIAVISION_PROSTUDIO_16 + 2)
#define MM_STUDIO_16_SYNTH (MM_MEDIAVISION_PROSTUDIO_16 + 3)
#define MM_STUDIO_16_WAVEOUT (MM_MEDIAVISION_PROSTUDIO_16 + 4)
#define MM_STUDIO_16_WAVEIN (MM_MEDIAVISION_PROSTUDIO_16 + 5)
#define MM_STUDIO_16_MIXER (MM_MEDIAVISION_PROSTUDIO_16 + 6)
#define MM_STUDIO_16_AUX (MM_MEDIAVISION_PROSTUDIO_16 + 7)
#define MM_MEDIAVISION_CDPC 0x70
#define MM_CDPC_MIDIOUT (MM_MEDIAVISION_CDPC + 1)
#define MM_CDPC_MIDIIN (MM_MEDIAVISION_CDPC + 2)
#define MM_CDPC_SYNTH (MM_MEDIAVISION_CDPC + 3)
#define MM_CDPC_WAVEOUT (MM_MEDIAVISION_CDPC + 4)
#define MM_CDPC_WAVEIN (MM_MEDIAVISION_CDPC + 5)
#define MM_CDPC_MIXER (MM_MEDIAVISION_CDPC + 6)
#define MM_CDPC_AUX (MM_MEDIAVISION_CDPC + 7)
#define MM_MEDIAVISION_OPUS1208 0x80
#define MM_OPUS401_MIDIOUT (MM_MEDIAVISION_OPUS1208 + 1)
#define MM_OPUS401_MIDIIN (MM_MEDIAVISION_OPUS1208 + 2)
#define MM_OPUS1208_SYNTH (MM_MEDIAVISION_OPUS1208 + 3)
#define MM_OPUS1208_WAVEOUT (MM_MEDIAVISION_OPUS1208 + 4)
#define MM_OPUS1208_WAVEIN (MM_MEDIAVISION_OPUS1208 + 5)
#define MM_OPUS1208_MIXER (MM_MEDIAVISION_OPUS1208 + 6)
#define MM_OPUS1208_AUX (MM_MEDIAVISION_OPUS1208 + 7)
#define MM_MEDIAVISION_OPUS1216 0x90
#define MM_OPUS1216_MIDIOUT (MM_MEDIAVISION_OPUS1216 + 1)
#define MM_OPUS1216_MIDIIN (MM_MEDIAVISION_OPUS1216 + 2)
#define MM_OPUS1216_SYNTH (MM_MEDIAVISION_OPUS1216 + 3)
#define MM_OPUS1216_WAVEOUT (MM_MEDIAVISION_OPUS1216 + 4)
#define MM_OPUS1216_WAVEIN (MM_MEDIAVISION_OPUS1216 + 5)
#define MM_OPUS1216_MIXER (MM_MEDIAVISION_OPUS1216 + 6)
#define MM_OPUS1216_AUX (MM_MEDIAVISION_OPUS1216 + 7)
/* Product identifiers for MM_CYRIX */
#define MM_CYRIX_XASYNTH 1
#define MM_CYRIX_XAMIDIIN 2
#define MM_CYRIX_XAMIDIOUT 3
#define MM_CYRIX_XAWAVEIN 4
#define MM_CYRIX_XAWAVEOUT 5
#define MM_CYRIX_XAAUX 6
#define MM_CYRIX_XAMIXER 7
/* Product identifiers for MM_PHILIPS_SPEECH_PROCESSING */
#define MM_PHILIPS_ACM_LPCBB 1
/* Product identifiers for MM_NETXL */
#define MM_NETXL_XLVIDEO 1
/* Product identifiers for MM_ZYXEL */
#define MM_ZYXEL_ACM_ADPCM 1
/* Product identifiers for MM_AARDVARK */
#define MM_AARDVARK_STUDIO12_WAVEOUT 1
#define MM_AARDVARK_STUDIO12_WAVEIN 2
#define MM_AARDVARK_STUDIO88_WAVEOUT 3
#define MM_AARDVARK_STUDIO88_WAVEIN 4
/* Product identifiers for MM_BINTEC */
#define MM_BINTEC_TAPI_WAVE 1
/* Product identifiers for MM_HEWLETT_PACKARD */
#define MM_HEWLETT_PACKARD_CU_CODEC 1
/* Product identifiers for MM_MITEL */
#define MM_MITEL_TALKTO_LINE_WAVEOUT 100
#define MM_MITEL_TALKTO_LINE_WAVEIN 101
#define MM_MITEL_TALKTO_HANDSET_WAVEOUT 102
#define MM_MITEL_TALKTO_HANDSET_WAVEIN 103
#define MM_MITEL_TALKTO_BRIDGED_WAVEOUT 104
#define MM_MITEL_TALKTO_BRIDGED_WAVEIN 105
#define MM_MITEL_MPA_HANDSET_WAVEOUT 200
#define MM_MITEL_MPA_HANDSET_WAVEIN 201
#define MM_MITEL_MPA_HANDSFREE_WAVEOUT 202
#define MM_MITEL_MPA_HANDSFREE_WAVEIN 203
#define MM_MITEL_MPA_LINE1_WAVEOUT 204
#define MM_MITEL_MPA_LINE1_WAVEIN 205
#define MM_MITEL_MPA_LINE2_WAVEOUT 206
#define MM_MITEL_MPA_LINE2_WAVEIN 207
#define MM_MITEL_MEDIAPATH_WAVEOUT 300
#define MM_MITEL_MEDIAPATH_WAVEIN 301
/* Product identifiers for MM_SNI */
#define MM_SNI_ACM_G721 1
/* Product identifiers for MM_EMU */
#define MM_EMU_APSSYNTH 1
#define MM_EMU_APSMIDIIN 2
#define MM_EMU_APSMIDIOUT 3
#define MM_EMU_APSWAVEIN 4
#define MM_EMU_APSWAVEOUT 5
/* Product identifiers for MM_ARTISOFT */
#define MM_ARTISOFT_SBWAVEIN 1
#define MM_ARTISOFT_SBWAVEOUT 2
/* Product identifiers for MM_TURTLE_BEACH */
#define MM_TBS_TROPEZ_WAVEIN 37
#define MM_TBS_TROPEZ_WAVEOUT 38
#define MM_TBS_TROPEZ_AUX1 39
#define MM_TBS_TROPEZ_AUX2 40
#define MM_TBS_TROPEZ_LINE 41
/* Product identifiers for MM_IBM */
#define MM_MMOTION_WAVEAUX 1
#define MM_MMOTION_WAVEOUT 2
#define MM_MMOTION_WAVEIN 3
#define MM_IBM_PCMCIA_WAVEIN 11
#define MM_IBM_PCMCIA_WAVEOUT 12
#define MM_IBM_PCMCIA_SYNTH 13
#define MM_IBM_PCMCIA_MIDIIN 14
#define MM_IBM_PCMCIA_MIDIOUT 15
#define MM_IBM_PCMCIA_AUX 16
#define MM_IBM_THINKPAD200 17
#define MM_IBM_MWAVE_WAVEIN 18
#define MM_IBM_MWAVE_WAVEOUT 19
#define MM_IBM_MWAVE_MIXER 20
#define MM_IBM_MWAVE_MIDIIN 21
#define MM_IBM_MWAVE_MIDIOUT 22
#define MM_IBM_MWAVE_AUX 23
#define MM_IBM_WC_MIDIOUT 30
#define MM_IBM_WC_WAVEOUT 31
#define MM_IBM_WC_MIXEROUT 33
/* Product identifiers for MM_VOCALTEC */
#define MM_VOCALTEC_WAVEOUT 1
#define MM_VOCALTEC_WAVEIN 2
/* Product identifiers for MM_ROLAND */
#define MM_ROLAND_RAP10_MIDIOUT 10
#define MM_ROLAND_RAP10_MIDIIN 11
#define MM_ROLAND_RAP10_SYNTH 12
#define MM_ROLAND_RAP10_WAVEOUT 13
#define MM_ROLAND_RAP10_WAVEIN 14
#define MM_ROLAND_MPU401_MIDIOUT 15
#define MM_ROLAND_MPU401_MIDIIN 16
#define MM_ROLAND_SMPU_MIDIOUTA 17
#define MM_ROLAND_SMPU_MIDIOUTB 18
#define MM_ROLAND_SMPU_MIDIINA 19
#define MM_ROLAND_SMPU_MIDIINB 20
#define MM_ROLAND_SC7_MIDIOUT 21
#define MM_ROLAND_SC7_MIDIIN 22
#define MM_ROLAND_SERIAL_MIDIOUT 23
#define MM_ROLAND_SERIAL_MIDIIN 24
#define MM_ROLAND_SCP_MIDIOUT 38
#define MM_ROLAND_SCP_MIDIIN 39
#define MM_ROLAND_SCP_WAVEOUT 40
#define MM_ROLAND_SCP_WAVEIN 41
#define MM_ROLAND_SCP_MIXER 42
#define MM_ROLAND_SCP_AUX 48
/* Product identifiers for MM_DSP_SOLUTIONS */
#define MM_DSP_SOLUTIONS_WAVEOUT 1
#define MM_DSP_SOLUTIONS_WAVEIN 2
#define MM_DSP_SOLUTIONS_SYNTH 3
#define MM_DSP_SOLUTIONS_AUX 4
/* Product identifiers for MM_NEC */
#define MM_NEC_73_86_SYNTH 5
#define MM_NEC_73_86_WAVEOUT 6
#define MM_NEC_73_86_WAVEIN 7
#define MM_NEC_26_SYNTH 9
#define MM_NEC_MPU401_MIDIOUT 10
#define MM_NEC_MPU401_MIDIIN 11
#define MM_NEC_JOYSTICK 12
/* Product identifiers for MM_WANGLABS */
#define MM_WANGLABS_WAVEIN1 1
#define MM_WANGLABS_WAVEOUT1 2
/* Product identifiers for MM_TANDY */
#define MM_TANDY_VISWAVEIN 1
#define MM_TANDY_VISWAVEOUT 2
#define MM_TANDY_VISBIOSSYNTH 3
#define MM_TANDY_SENS_MMAWAVEIN 4
#define MM_TANDY_SENS_MMAWAVEOUT 5
#define MM_TANDY_SENS_MMAMIDIIN 6
#define MM_TANDY_SENS_MMAMIDIOUT 7
#define MM_TANDY_SENS_VISWAVEOUT 8
#define MM_TANDY_PSSJWAVEIN 9
#define MM_TANDY_PSSJWAVEOUT 10
/* Product identifiers for MM_ANTEX */
#define MM_ANTEX_SX12_WAVEIN 1
#define MM_ANTEX_SX12_WAVEOUT 2
#define MM_ANTEX_SX15_WAVEIN 3
#define MM_ANTEX_SX15_WAVEOUT 4
#define MM_ANTEX_VP625_WAVEIN 5
#define MM_ANTEX_VP625_WAVEOUT 6
#define MM_ANTEX_AUDIOPORT22_WAVEIN 7
#define MM_ANTEX_AUDIOPORT22_WAVEOUT 8
#define MM_ANTEX_AUDIOPORT22_FEEDTHRU 9
/* Product identifiers for MM_INTEL */
#define MM_INTELOPD_WAVEIN 1
#define MM_INTELOPD_WAVEOUT 101
#define MM_INTELOPD_AUX 401
#define MM_INTEL_NSPMODEMLINEIN 501
#define MM_INTEL_NSPMODEMLINEOUT 502
/* Product identifiers for MM_VAL */
#define MM_VAL_MICROKEY_AP_WAVEIN 1
#define MM_VAL_MICROKEY_AP_WAVEOUT 2
/* Product identifiers for MM_INTERACTIVE */
#define MM_INTERACTIVE_WAVEIN 0x45
#define MM_INTERACTIVE_WAVEOUT 0x45
/* Product identifiers for MM_YAMAHA */
#define MM_YAMAHA_GSS_SYNTH 0x01
#define MM_YAMAHA_GSS_WAVEOUT 0x02
#define MM_YAMAHA_GSS_WAVEIN 0x03
#define MM_YAMAHA_GSS_MIDIOUT 0x04
#define MM_YAMAHA_GSS_MIDIIN 0x05
#define MM_YAMAHA_GSS_AUX 0x06
#define MM_YAMAHA_SERIAL_MIDIOUT 0x07
#define MM_YAMAHA_SERIAL_MIDIIN 0x08
#define MM_YAMAHA_OPL3SA_WAVEOUT 0x10
#define MM_YAMAHA_OPL3SA_WAVEIN 0x11
#define MM_YAMAHA_OPL3SA_FMSYNTH 0x12
#define MM_YAMAHA_OPL3SA_YSYNTH 0x13
#define MM_YAMAHA_OPL3SA_MIDIOUT 0x14
#define MM_YAMAHA_OPL3SA_MIDIIN 0x15
#define MM_YAMAHA_OPL3SA_MIXER 0x17
#define MM_YAMAHA_OPL3SA_JOYSTICK 0x18
#define MM_YAMAHA_YMF724LEG_MIDIOUT 0x19
#define MM_YAMAHA_YMF724LEG_MIDIIN 0x1A
#define MM_YAMAHA_YMF724_WAVEOUT 0x1B
#define MM_YAMAHA_YMF724_WAVEIN 0x1C
#define MM_YAMAHA_YMF724_MIDIOUT 0x1D
#define MM_YAMAHA_YMF724_AUX 0x1E
#define MM_YAMAHA_YMF724_MIXER 0x1F
#define MM_YAMAHA_YMF724LEG_FMSYNTH 0x20
#define MM_YAMAHA_YMF724LEG_MIXER 0x21
#define MM_YAMAHA_SXG_MIDIOUT 0x22
#define MM_YAMAHA_SXG_WAVEOUT 0x23
#define MM_YAMAHA_SXG_MIXER 0x24
#define MM_YAMAHA_ACXG_WAVEIN 0x25
#define MM_YAMAHA_ACXG_WAVEOUT 0x26
#define MM_YAMAHA_ACXG_MIDIOUT 0x27
#define MM_YAMAHA_ACXG_MIXER 0x28
#define MM_YAMAHA_ACXG_AUX 0x29
/* Product identifers for MM_EVEREX */
#define MM_EVEREX_CARRIER 1
/* Product identifers for MM_ECHO */
#define MM_ECHO_SYNTH 1
#define MM_ECHO_WAVEOUT 2
#define MM_ECHO_WAVEIN 3
#define MM_ECHO_MIDIOUT 4
#define MM_ECHO_MIDIIN 5
#define MM_ECHO_AUX 6
/* Product identifiers for MM_SIERRA */
#define MM_SIERRA_ARIA_MIDIOUT 0x14
#define MM_SIERRA_ARIA_MIDIIN 0x15
#define MM_SIERRA_ARIA_SYNTH 0x16
#define MM_SIERRA_ARIA_WAVEOUT 0x17
#define MM_SIERRA_ARIA_WAVEIN 0x18
#define MM_SIERRA_ARIA_AUX 0x19
#define MM_SIERRA_ARIA_AUX2 0x20
#define MM_SIERRA_QUARTET_WAVEIN 0x50
#define MM_SIERRA_QUARTET_WAVEOUT 0x51
#define MM_SIERRA_QUARTET_MIDIIN 0x52
#define MM_SIERRA_QUARTET_MIDIOUT 0x53
#define MM_SIERRA_QUARTET_SYNTH 0x54
#define MM_SIERRA_QUARTET_AUX_CD 0x55
#define MM_SIERRA_QUARTET_AUX_LINE 0x56
#define MM_SIERRA_QUARTET_AUX_MODEM 0x57
#define MM_SIERRA_QUARTET_MIXER 0x58
/* Product identifiers for MM_CAT */
#define MM_CAT_WAVEOUT 1
/* Product identifiers for MM_DSP_GROUP */
#define MM_DSP_GROUP_TRUESPEECH 1
/* Product identifiers for MM_MELABS */
#define MM_MELABS_MIDI2GO 1
/* Product identifiers for MM_ESS */
#define MM_ESS_AMWAVEOUT 0x01
#define MM_ESS_AMWAVEIN 0x02
#define MM_ESS_AMAUX 0x03
#define MM_ESS_AMSYNTH 0x04
#define MM_ESS_AMMIDIOUT 0x05
#define MM_ESS_AMMIDIIN 0x06
#define MM_ESS_MIXER 0x07
#define MM_ESS_AUX_CD 0x08
#define MM_ESS_MPU401_MIDIOUT 0x09
#define MM_ESS_MPU401_MIDIIN 0x0A
#define MM_ESS_ES488_WAVEOUT 0x10
#define MM_ESS_ES488_WAVEIN 0x11
#define MM_ESS_ES488_MIXER 0x12
#define MM_ESS_ES688_WAVEOUT 0x13
#define MM_ESS_ES688_WAVEIN 0x14
#define MM_ESS_ES688_MIXER 0x15
#define MM_ESS_ES1488_WAVEOUT 0x16
#define MM_ESS_ES1488_WAVEIN 0x17
#define MM_ESS_ES1488_MIXER 0x18
#define MM_ESS_ES1688_WAVEOUT 0x19
#define MM_ESS_ES1688_WAVEIN 0x1A
#define MM_ESS_ES1688_MIXER 0x1B
#define MM_ESS_ES1788_WAVEOUT 0x1C
#define MM_ESS_ES1788_WAVEIN 0x1D
#define MM_ESS_ES1788_MIXER 0x1E
#define MM_ESS_ES1888_WAVEOUT 0x1F
#define MM_ESS_ES1888_WAVEIN 0x20
#define MM_ESS_ES1888_MIXER 0x21
#define MM_ESS_ES1868_WAVEOUT 0x22
#define MM_ESS_ES1868_WAVEIN 0x23
#define MM_ESS_ES1868_MIXER 0x24
#define MM_ESS_ES1878_WAVEOUT 0x25
#define MM_ESS_ES1878_WAVEIN 0x26
#define MM_ESS_ES1878_MIXER 0x27
/* Product identifiers for MM_CANOPUS */
#define MM_CANOPUS_ACM_DRVEX 1
/* Product identifiers for MM_EPSON */
#define MM_EPS_FMSND 1
/* Product identifiers for MM_TRUEVISION */
#define MM_TRUEVISION_WAVEIN1 1
#define MM_TRUEVISION_WAVEOUT1 2
/* Product identifiers for MM_AZTECH */
#define MM_AZTECH_MIDIOUT 3
#define MM_AZTECH_MIDIIN 4
#define MM_AZTECH_WAVEIN 17
#define MM_AZTECH_WAVEOUT 18
#define MM_AZTECH_FMSYNTH 20
#define MM_AZTECH_MIXER 21
#define MM_AZTECH_PRO16_WAVEIN 33
#define MM_AZTECH_PRO16_WAVEOUT 34
#define MM_AZTECH_PRO16_FMSYNTH 38
#define MM_AZTECH_DSP16_WAVEIN 65
#define MM_AZTECH_DSP16_WAVEOUT 66
#define MM_AZTECH_DSP16_FMSYNTH 68
#define MM_AZTECH_DSP16_WAVESYNTH 70
#define MM_AZTECH_NOVA16_WAVEIN 71
#define MM_AZTECH_NOVA16_WAVEOUT 72
#define MM_AZTECH_NOVA16_MIXER 73
#define MM_AZTECH_WASH16_WAVEIN 74
#define MM_AZTECH_WASH16_WAVEOUT 75
#define MM_AZTECH_WASH16_MIXER 76
#define MM_AZTECH_AUX_CD 401
#define MM_AZTECH_AUX_LINE 402
#define MM_AZTECH_AUX_MIC 403
#define MM_AZTECH_AUX 404
/* Product identifiers for MM_VIDEOLOGIC */
#define MM_VIDEOLOGIC_MSWAVEIN 1
#define MM_VIDEOLOGIC_MSWAVEOUT 2
/* Product identifiers for MM_KORG */
#define MM_KORG_PCIF_MIDIOUT 1
#define MM_KORG_PCIF_MIDIIN 2
#define MM_KORG_1212IO_MSWAVEIN 3
#define MM_KORG_1212IO_MSWAVEOUT 4
/* Product identifiers for MM_APT */
#define MM_APT_ACE100CD 1
/* Product identifiers for MM_ICS */
#define MM_ICS_WAVEDECK_WAVEOUT 1
#define MM_ICS_WAVEDECK_WAVEIN 2
#define MM_ICS_WAVEDECK_MIXER 3
#define MM_ICS_WAVEDECK_AUX 4
#define MM_ICS_WAVEDECK_SYNTH 5
#define MM_ICS_WAVEDEC_SB_WAVEOUT 6
#define MM_ICS_WAVEDEC_SB_WAVEIN 7
#define MM_ICS_WAVEDEC_SB_FM_MIDIOUT 8
#define MM_ICS_WAVEDEC_SB_MPU401_MIDIOUT 9
#define MM_ICS_WAVEDEC_SB_MPU401_MIDIIN 10
#define MM_ICS_WAVEDEC_SB_MIXER 11
#define MM_ICS_WAVEDEC_SB_AUX 12
#define MM_ICS_2115_LITE_MIDIOUT 13
#define MM_ICS_2120_LITE_MIDIOUT 14
/* Product identifiers for MM_ITERATEDSYS */
#define MM_ITERATEDSYS_FUFCODEC 1
/* Product identifiers for MM_METHEUS */
#define MM_METHEUS_ZIPPER 1
/* Product identifiers for MM_WINNOV */
#define MM_WINNOV_CAVIAR_WAVEIN 1
#define MM_WINNOV_CAVIAR_WAVEOUT 2
#define MM_WINNOV_CAVIAR_VIDC 3
#define MM_WINNOV_CAVIAR_CHAMPAGNE 4
#define MM_WINNOV_CAVIAR_YUV8 5
/* Product identifiers for MM_NCR */
#define MM_NCR_BA_WAVEIN 1
#define MM_NCR_BA_WAVEOUT 2
#define MM_NCR_BA_SYNTH 3
#define MM_NCR_BA_AUX 4
#define MM_NCR_BA_MIXER 5
/* Product identifiers for MM_AST */
#define MM_AST_MODEMWAVE_WAVEIN 13
#define MM_AST_MODEMWAVE_WAVEOUT 14
/* Product identifiers for MM_WILLOWPOND */
#define MM_WILLOWPOND_FMSYNTH_STEREO 20
#define MM_WILLOWPOND_MPU401 21
#define MM_WILLOWPOND_SNDPORT_WAVEIN 100
#define MM_WILLOWPOND_SNDPORT_WAVEOUT 101
#define MM_WILLOWPOND_SNDPORT_MIXER 102
#define MM_WILLOWPOND_SNDPORT_AUX 103
#define MM_WILLOWPOND_PH_WAVEIN 104
#define MM_WILLOWPOND_PH_WAVEOUT 105
#define MM_WILLOWPOND_PH_MIXER 106
#define MM_WILLOWPOND_PH_AUX 107
#define MM_WILLOWPOND_SNDCOMM_WAVEIN 108
#define MM_WILLOWPOND_SNDCOMM_WAVEOUT 109
#define MM_WILLOWPOND_SNDCOMM_MIXER 110
#define MM_WILLOWPOND_SNDCOMM_AUX 111
#define MM_WILLOWPOND_GENERIC_WAVEIN 112
#define MM_WILLOWPOND_GENERIC_WAVEOUT 113
#define MM_WILLOWPOND_GENERIC_MIXER 114
#define MM_WILLOWPOND_GENERIC_AUX 115
/* Product identifiers for MM_VITEC */
#define MM_VITEC_VMAKER 1
#define MM_VITEC_VMPRO 2
/* Product identifiers for MM_MOSCOM */
#define MM_MOSCOM_VPC2400_IN 1
#define MM_MOSCOM_VPC2400_OUT 2
/* Product identifiers for MM_SILICONSOFT */
#define MM_SILICONSOFT_SC1_WAVEIN 1
#define MM_SILICONSOFT_SC1_WAVEOUT 2
#define MM_SILICONSOFT_SC2_WAVEIN 3
#define MM_SILICONSOFT_SC2_WAVEOUT 4
#define MM_SILICONSOFT_SOUNDJR2_WAVEOUT 5
#define MM_SILICONSOFT_SOUNDJR2PR_WAVEIN 6
#define MM_SILICONSOFT_SOUNDJR2PR_WAVEOUT 7
#define MM_SILICONSOFT_SOUNDJR3_WAVEOUT 8
/* Product identifiers for MM_TERRATEC */
#define MM_TTEWS_WAVEIN 1
#define MM_TTEWS_WAVEOUT 2
#define MM_TTEWS_MIDIIN 3
#define MM_TTEWS_MIDIOUT 4
#define MM_TTEWS_MIDISYNTH 5
#define MM_TTEWS_MIDIMONITOR 6
#define MM_TTEWS_VMIDIIN 7
#define MM_TTEWS_VMIDIOUT 8
#define MM_TTEWS_AUX 9
#define MM_TTEWS_MIXER 10
/* Product identifiers for MM_MEDIASONIC */
#define MM_MEDIASONIC_ACM_G723 1
#define MM_MEDIASONIC_ICOM 2
#define MM_ICOM_WAVEIN 3
#define MM_ICOM_WAVEOUT 4
#define MM_ICOM_MIXER 5
#define MM_ICOM_AUX 6
#define MM_ICOM_LINE 7
/* Product identifiers for MM_SANYO */
#define MM_SANYO_ACM_LD_ADPCM 1
/* Product identifiers for MM_AHEAD */
#define MM_AHEAD_MULTIBOARD 1
#define MM_AHEAD_SOUNDBLASTER 2
#define MM_AHEAD_PROAUDIO 3
#define MM_AHEAD_GENERIC 4
/* Product identifiers for MM_OLIVETTI */
#define MM_OLIVETTI_WAVEIN 1
#define MM_OLIVETTI_WAVEOUT 2
#define MM_OLIVETTI_MIXER 3
#define MM_OLIVETTI_AUX 4
#define MM_OLIVETTI_MIDIIN 5
#define MM_OLIVETTI_MIDIOUT 6
#define MM_OLIVETTI_SYNTH 7
#define MM_OLIVETTI_JOYSTICK 8
#define MM_OLIVETTI_ACM_GSM 9
#define MM_OLIVETTI_ACM_ADPCM 10
#define MM_OLIVETTI_ACM_CELP 11
#define MM_OLIVETTI_ACM_SBC 12
#define MM_OLIVETTI_ACM_OPR 13
/* Product identifiers for MM_IOMAGIC */
#define MM_IOMAGIC_TEMPO_WAVEOUT 1
#define MM_IOMAGIC_TEMPO_WAVEIN 2
#define MM_IOMAGIC_TEMPO_SYNTH 3
#define MM_IOMAGIC_TEMPO_MIDIOUT 4
#define MM_IOMAGIC_TEMPO_MXDOUT 5
#define MM_IOMAGIC_TEMPO_AUXOUT 6
/* Product identifiers for MM_MATSUSHITA */
#define MM_MATSUSHITA_WAVEIN 1
#define MM_MATSUSHITA_WAVEOUT 2
#define MM_MATSUSHITA_FMSYNTH_STEREO 3
#define MM_MATSUSHITA_MIXER 4
#define MM_MATSUSHITA_AUX 5
/* Product identifiers for MM_NEWMEDIA */
#define MM_NEWMEDIA_WAVJAMMER 1
/* Product identifiers for MM_LYRRUS */
#define MM_LYRRUS_BRIDGE_GUITAR 1
/* Product identifiers for MM_OPTI */
#define MM_OPTI_M16_FMSYNTH_STEREO 0x0001
#define MM_OPTI_M16_MIDIIN 0x0002
#define MM_OPTI_M16_MIDIOUT 0x0003
#define MM_OPTI_M16_WAVEIN 0x0004
#define MM_OPTI_M16_WAVEOUT 0x0005
#define MM_OPTI_M16_MIXER 0x0006
#define MM_OPTI_M16_AUX 0x0007
#define MM_OPTI_P16_FMSYNTH_STEREO 0x0010
#define MM_OPTI_P16_MIDIIN 0x0011
#define MM_OPTI_P16_MIDIOUT 0x0012
#define MM_OPTI_P16_WAVEIN 0x0013
#define MM_OPTI_P16_WAVEOUT 0x0014
#define MM_OPTI_P16_MIXER 0x0015
#define MM_OPTI_P16_AUX 0x0016
#define MM_OPTI_M32_WAVEIN 0x0020
#define MM_OPTI_M32_WAVEOUT 0x0021
#define MM_OPTI_M32_MIDIIN 0x0022
#define MM_OPTI_M32_MIDIOUT 0x0023
#define MM_OPTI_M32_SYNTH_STEREO 0x0024
#define MM_OPTI_M32_MIXER 0x0025
#define MM_OPTI_M32_AUX 0x0026
/* Product identifiers for MM_COMPAQ */
#define MM_COMPAQ_BB_WAVEIN 1
#define MM_COMPAQ_BB_WAVEOUT 2
#define MM_COMPAQ_BB_WAVEAUX 3
/* Product identifiers for MM_MPTUS */
#define MM_MPTUS_SPWAVEOUT 1
/* Product identifiers for MM_LERNOUT_AND_HAUSPIE */
#define MM_LERNOUT_AND_HAUSPIE_LHCODECACM 1
/* Product identifiers for MM_DIGITAL */
#define MM_DIGITAL_AV320_WAVEIN 1
#define MM_DIGITAL_AV320_WAVEOUT 2
#define MM_DIGITAL_ACM_G723 3
#define MM_DIGITAL_ICM_H263 4
#define MM_DIGITAL_ICM_H261 5
/* Product identifers for MM_MOTU */
#define MM_MOTU_MTP_MIDIOUT_ALL 100
#define MM_MOTU_MTP_MIDIIN_1 101
#define MM_MOTU_MTP_MIDIOUT_1 101
#define MM_MOTU_MTP_MIDIIN_2 102
#define MM_MOTU_MTP_MIDIOUT_2 102
#define MM_MOTU_MTP_MIDIIN_3 103
#define MM_MOTU_MTP_MIDIOUT_3 103
#define MM_MOTU_MTP_MIDIIN_4 104
#define MM_MOTU_MTP_MIDIOUT_4 104
#define MM_MOTU_MTP_MIDIIN_5 105
#define MM_MOTU_MTP_MIDIOUT_5 105
#define MM_MOTU_MTP_MIDIIN_6 106
#define MM_MOTU_MTP_MIDIOUT_6 106
#define MM_MOTU_MTP_MIDIIN_7 107
#define MM_MOTU_MTP_MIDIOUT_7 107
#define MM_MOTU_MTP_MIDIIN_8 108
#define MM_MOTU_MTP_MIDIOUT_8 108
#define MM_MOTU_MTPII_MIDIOUT_ALL 200
#define MM_MOTU_MTPII_MIDIIN_SYNC 200
#define MM_MOTU_MTPII_MIDIIN_1 201
#define MM_MOTU_MTPII_MIDIOUT_1 201
#define MM_MOTU_MTPII_MIDIIN_2 202
#define MM_MOTU_MTPII_MIDIOUT_2 202
#define MM_MOTU_MTPII_MIDIIN_3 203
#define MM_MOTU_MTPII_MIDIOUT_3 203
#define MM_MOTU_MTPII_MIDIIN_4 204
#define MM_MOTU_MTPII_MIDIOUT_4 204
#define MM_MOTU_MTPII_MIDIIN_5 205
#define MM_MOTU_MTPII_MIDIOUT_5 205
#define MM_MOTU_MTPII_MIDIIN_6 206
#define MM_MOTU_MTPII_MIDIOUT_6 206
#define MM_MOTU_MTPII_MIDIIN_7 207
#define MM_MOTU_MTPII_MIDIOUT_7 207
#define MM_MOTU_MTPII_MIDIIN_8 208
#define MM_MOTU_MTPII_MIDIOUT_8 208
#define MM_MOTU_MTPII_NET_MIDIIN_1 209
#define MM_MOTU_MTPII_NET_MIDIOUT_1 209
#define MM_MOTU_MTPII_NET_MIDIIN_2 210
#define MM_MOTU_MTPII_NET_MIDIOUT_2 210
#define MM_MOTU_MTPII_NET_MIDIIN_3 211
#define MM_MOTU_MTPII_NET_MIDIOUT_3 211
#define MM_MOTU_MTPII_NET_MIDIIN_4 212
#define MM_MOTU_MTPII_NET_MIDIOUT_4 212
#define MM_MOTU_MTPII_NET_MIDIIN_5 213
#define MM_MOTU_MTPII_NET_MIDIOUT_5 213
#define MM_MOTU_MTPII_NET_MIDIIN_6 214
#define MM_MOTU_MTPII_NET_MIDIOUT_6 214
#define MM_MOTU_MTPII_NET_MIDIIN_7 215
#define MM_MOTU_MTPII_NET_MIDIOUT_7 215
#define MM_MOTU_MTPII_NET_MIDIIN_8 216
#define MM_MOTU_MTPII_NET_MIDIOUT_8 216
#define MM_MOTU_MXP_MIDIIN_MIDIOUT_ALL 300
#define MM_MOTU_MXP_MIDIIN_SYNC 300
#define MM_MOTU_MXP_MIDIIN_MIDIIN_1 301
#define MM_MOTU_MXP_MIDIIN_MIDIOUT_1 301
#define MM_MOTU_MXP_MIDIIN_MIDIIN_2 302
#define MM_MOTU_MXP_MIDIIN_MIDIOUT_2 302
#define MM_MOTU_MXP_MIDIIN_MIDIIN_3 303
#define MM_MOTU_MXP_MIDIIN_MIDIOUT_3 303
#define MM_MOTU_MXP_MIDIIN_MIDIIN_4 304
#define MM_MOTU_MXP_MIDIIN_MIDIOUT_4 304
#define MM_MOTU_MXP_MIDIIN_MIDIIN_5 305
#define MM_MOTU_MXP_MIDIIN_MIDIOUT_5 305
#define MM_MOTU_MXP_MIDIIN_MIDIIN_6 306
#define MM_MOTU_MXP_MIDIIN_MIDIOUT_6 306
#define MM_MOTU_MXPMPU_MIDIOUT_ALL 400
#define MM_MOTU_MXPMPU_MIDIIN_SYNC 400
#define MM_MOTU_MXPMPU_MIDIIN_1 401
#define MM_MOTU_MXPMPU_MIDIOUT_1 401
#define MM_MOTU_MXPMPU_MIDIIN_2 402
#define MM_MOTU_MXPMPU_MIDIOUT_2 402
#define MM_MOTU_MXPMPU_MIDIIN_3 403
#define MM_MOTU_MXPMPU_MIDIOUT_3 403
#define MM_MOTU_MXPMPU_MIDIIN_4 404
#define MM_MOTU_MXPMPU_MIDIOUT_4 404
#define MM_MOTU_MXPMPU_MIDIIN_5 405
#define MM_MOTU_MXPMPU_MIDIOUT_5 405
#define MM_MOTU_MXPMPU_MIDIIN_6 406
#define MM_MOTU_MXPMPU_MIDIOUT_6 406
#define MM_MOTU_MXN_MIDIOUT_ALL 500
#define MM_MOTU_MXN_MIDIIN_SYNC 500
#define MM_MOTU_MXN_MIDIIN_1 501
#define MM_MOTU_MXN_MIDIOUT_1 501
#define MM_MOTU_MXN_MIDIIN_2 502
#define MM_MOTU_MXN_MIDIOUT_2 502
#define MM_MOTU_MXN_MIDIIN_3 503
#define MM_MOTU_MXN_MIDIOUT_3 503
#define MM_MOTU_MXN_MIDIIN_4 504
#define MM_MOTU_MXN_MIDIOUT_4 504
#define MM_MOTU_MXN_MIDIIN_5 505
#define MM_MOTU_MXN_MIDIOUT_5 505
#define MM_MOTU_MXN_MIDIIN_6 506
#define MM_MOTU_MXN_MIDIOUT_6 506
#define MM_MOTU_FLYER_MIDI_IN_SYNC 600
#define MM_MOTU_FLYER_MIDI_IN_A 601
#define MM_MOTU_FLYER_MIDI_OUT_A 601
#define MM_MOTU_FLYER_MIDI_IN_B 602
#define MM_MOTU_FLYER_MIDI_OUT_B 602
#define MM_MOTU_PKX_MIDI_IN_SYNC 700
#define MM_MOTU_PKX_MIDI_IN_A 701
#define MM_MOTU_PKX_MIDI_OUT_A 701
#define MM_MOTU_PKX_MIDI_IN_B 702
#define MM_MOTU_PKX_MIDI_OUT_B 702
#define MM_MOTU_DTX_MIDI_IN_SYNC 800
#define MM_MOTU_DTX_MIDI_IN_A 801
#define MM_MOTU_DTX_MIDI_OUT_A 801
#define MM_MOTU_DTX_MIDI_IN_B 802
#define MM_MOTU_DTX_MIDI_OUT_B 802
#define MM_MOTU_MTPAV_MIDIOUT_ALL 900
#define MM_MOTU_MTPAV_MIDIIN_SYNC 900
#define MM_MOTU_MTPAV_MIDIIN_1 901
#define MM_MOTU_MTPAV_MIDIOUT_1 901
#define MM_MOTU_MTPAV_MIDIIN_2 902
#define MM_MOTU_MTPAV_MIDIOUT_2 902
#define MM_MOTU_MTPAV_MIDIIN_3 903
#define MM_MOTU_MTPAV_MIDIOUT_3 903
#define MM_MOTU_MTPAV_MIDIIN_4 904
#define MM_MOTU_MTPAV_MIDIOUT_4 904
#define MM_MOTU_MTPAV_MIDIIN_5 905
#define MM_MOTU_MTPAV_MIDIOUT_5 905
#define MM_MOTU_MTPAV_MIDIIN_6 906
#define MM_MOTU_MTPAV_MIDIOUT_6 906
#define MM_MOTU_MTPAV_MIDIIN_7 907
#define MM_MOTU_MTPAV_MIDIOUT_7 907
#define MM_MOTU_MTPAV_MIDIIN_8 908
#define MM_MOTU_MTPAV_MIDIOUT_8 908
#define MM_MOTU_MTPAV_NET_MIDIIN_1 909
#define MM_MOTU_MTPAV_NET_MIDIOUT_1 909
#define MM_MOTU_MTPAV_NET_MIDIIN_2 910
#define MM_MOTU_MTPAV_NET_MIDIOUT_2 910
#define MM_MOTU_MTPAV_NET_MIDIIN_3 911
#define MM_MOTU_MTPAV_NET_MIDIOUT_3 911
#define MM_MOTU_MTPAV_NET_MIDIIN_4 912
#define MM_MOTU_MTPAV_NET_MIDIOUT_4 912
#define MM_MOTU_MTPAV_NET_MIDIIN_5 913
#define MM_MOTU_MTPAV_NET_MIDIOUT_5 913
#define MM_MOTU_MTPAV_NET_MIDIIN_6 914
#define MM_MOTU_MTPAV_NET_MIDIOUT_6 914
#define MM_MOTU_MTPAV_NET_MIDIIN_7 915
#define MM_MOTU_MTPAV_NET_MIDIOUT_7 915
#define MM_MOTU_MTPAV_NET_MIDIIN_8 916
#define MM_MOTU_MTPAV_NET_MIDIOUT_8 916
#define MM_MOTU_MTPAV_MIDIIN_ADAT 917
#define MM_MOTU_MTPAV_MIDIOUT_ADAT 917
#define MM_MOTU_MXPXT_MIDIIN_SYNC 1000
#define MM_MOTU_MXPXT_MIDIOUT_ALL 1000
#define MM_MOTU_MXPXT_MIDIIN_1 1001
#define MM_MOTU_MXPXT_MIDIOUT_1 1001
#define MM_MOTU_MXPXT_MIDIIN_2 1002
#define MM_MOTU_MXPXT_MIDIOUT_2 1002
#define MM_MOTU_MXPXT_MIDIIN_3 1003
#define MM_MOTU_MXPXT_MIDIOUT_3 1003
#define MM_MOTU_MXPXT_MIDIIN_4 1004
#define MM_MOTU_MXPXT_MIDIOUT_4 1004
#define MM_MOTU_MXPXT_MIDIIN_5 1005
#define MM_MOTU_MXPXT_MIDIOUT_5 1005
#define MM_MOTU_MXPXT_MIDIIN_6 1006
#define MM_MOTU_MXPXT_MIDIOUT_6 1006
#define MM_MOTU_MXPXT_MIDIIN_7 1007
#define MM_MOTU_MXPXT_MIDIOUT_7 1007
#define MM_MOTU_MXPXT_MIDIIN_8 1008
#define MM_MOTU_MXPXT_MIDIOUT_8 1008
/* Product identifiers for MM_WORKBIT */
#define MM_WORKBIT_MIXER 1
#define MM_WORKBIT_WAVEOUT 2
#define MM_WORKBIT_WAVEIN 3
#define MM_WORKBIT_MIDIIN 4
#define MM_WORKBIT_MIDIOUT 5
#define MM_WORKBIT_FMSYNTH 6
#define MM_WORKBIT_AUX 7
#define MM_WORKBIT_JOYSTICK 8
/* Product identifiers for MM_OSITECH */
#define MM_OSITECH_TRUMPCARD 1
/* Product identifiers for MM_MIRO */
#define MM_MIRO_MOVIEPRO 1
#define MM_MIRO_VIDEOD1 2
#define MM_MIRO_VIDEODC1TV 3
#define MM_MIRO_VIDEOTD 4
#define MM_MIRO_DC30_WAVEOUT 5
#define MM_MIRO_DC30_WAVEIN 6
#define MM_MIRO_DC30_MIX 7
/* Product identifiers for MM_ISOLUTION */
#define MM_ISOLUTION_PASCAL 1
/* Product identifiers for MM_ROCKWELL */
#define MM_VOICEMIXER 1
#define ROCKWELL_WA1_WAVEIN 100
#define ROCKWELL_WA1_WAVEOUT 101
#define ROCKWELL_WA1_SYNTH 102
#define ROCKWELL_WA1_MIXER 103
#define ROCKWELL_WA1_MPU401_IN 104
#define ROCKWELL_WA1_MPU401_OUT 105
#define ROCKWELL_WA2_WAVEIN 200
#define ROCKWELL_WA2_WAVEOUT 201
#define ROCKWELL_WA2_SYNTH 202
#define ROCKWELL_WA2_MIXER 203
#define ROCKWELL_WA2_MPU401_IN 204
#define ROCKWELL_WA2_MPU401_OUT 205
/* Product identifiers for MM_VOXWARE */
#define MM_VOXWARE_CODEC 1
/* Product identifiers for MM_NORTHERN_TELECOM */
#define MM_NORTEL_MPXAC_WAVEIN 1
#define MM_NORTEL_MPXAC_WAVEOUT 2
/* Product identifiers for MM_ADDX */
#define MM_ADDX_PCTV_DIGITALMIX 1
#define MM_ADDX_PCTV_WAVEIN 2
#define MM_ADDX_PCTV_WAVEOUT 3
#define MM_ADDX_PCTV_MIXER 4
#define MM_ADDX_PCTV_AUX_CD 5
#define MM_ADDX_PCTV_AUX_LINE 6
/* Product identifiers for MM_WILDCAT */
#define MM_WILDCAT_AUTOSCOREMIDIIN 1
/* Product identifiers for MM_RHETOREX */
#define MM_RHETOREX_WAVEIN 1
#define MM_RHEROREX_WAVEOUT 2
/* Product identifiers for MM_BROOKTREE */
#define MM_BTV_WAVEIN 1
#define MM_BTV_WAVEOUT 2
#define MM_BTV_MIDIIN 3
#define MM_BTV_MIDIOUT 4
#define MM_BTV_MIDISYNTH 5
#define MM_BTV_AUX_LINE 6
#define MM_BTV_AUX_MIC 7
#define MM_BTV_AUX_CD 8
#define MM_BTV_DIGITALIN 9
#define MM_BTV_DIGITALOUT 10
#define MM_BTV_MIDIWAVESTREAM 11
#define MM_BTV_MIXER 12
/* Product identifiers for MM_ENSONIQ */
#define MM_ENSONIQ_SOUNDSCAPE 0x10
#define MM_SOUNDSCAPE_WAVEOUT (MM_ENSONIQ_SOUNDSCAPE + 1)
#define MM_SOUNDSCAPE_WAVEOUT_AUX (MM_ENSONIQ_SOUNDSCAPE + 2)
#define MM_SOUNDSCAPE_WAVEIN (MM_ENSONIQ_SOUNDSCAPE + 3)
#define MM_SOUNDSCAPE_MIDIOUT (MM_ENSONIQ_SOUNDSCAPE + 4)
#define MM_SOUNDSCAPE_MIDIIN (MM_ENSONIQ_SOUNDSCAPE + 5)
#define MM_SOUNDSCAPE_SYNTH (MM_ENSONIQ_SOUNDSCAPE + 6)
#define MM_SOUNDSCAPE_MIXER (MM_ENSONIQ_SOUNDSCAPE + 7)
#define MM_SOUNDSCAPE_AUX (MM_ENSONIQ_SOUNDSCAPE + 8)
/* Product identifiers for MM_NVIDIA */
#define MM_NVIDIA_WAVEOUT 1
#define MM_NVIDIA_WAVEIN 2
#define MM_NVIDIA_MIDIOUT 3
#define MM_NVIDIA_MIDIIN 4
#define MM_NVIDIA_GAMEPORT 5
#define MM_NVIDIA_MIXER 6
#define MM_NVIDIA_AUX 7
/* Product identifiers for MM_OKSORI */
#define MM_OKSORI_BASE 0
#define MM_OKSORI_OSR8_WAVEOUT (MM_OKSORI_BASE + 1)
#define MM_OKSORI_OSR8_WAVEIN (MM_OKSORI_BASE + 2)
#define MM_OKSORI_OSR16_WAVEOUT (MM_OKSORI_BASE + 3)
#define MM_OKSORI_OSR16_WAVEIN (MM_OKSORI_BASE + 4)
#define MM_OKSORI_FM_OPL4 (MM_OKSORI_BASE + 5)
#define MM_OKSORI_MIX_MASTER (MM_OKSORI_BASE + 6)
#define MM_OKSORI_MIX_WAVE (MM_OKSORI_BASE + 7)
#define MM_OKSORI_MIX_FM (MM_OKSORI_BASE + 8)
#define MM_OKSORI_MIX_LINE (MM_OKSORI_BASE + 9)
#define MM_OKSORI_MIX_CD (MM_OKSORI_BASE + 10)
#define MM_OKSORI_MIX_MIC (MM_OKSORI_BASE + 11)
#define MM_OKSORI_MIX_ECHO (MM_OKSORI_BASE + 12)
#define MM_OKSORI_MIX_AUX1 (MM_OKSORI_BASE + 13)
#define MM_OKSORI_MIX_LINE1 (MM_OKSORI_BASE + 14)
#define MM_OKSORI_EXT_MIC1 (MM_OKSORI_BASE + 15)
#define MM_OKSORI_EXT_MIC2 (MM_OKSORI_BASE + 16)
#define MM_OKSORI_MIDIOUT (MM_OKSORI_BASE + 17)
#define MM_OKSORI_MIDIIN (MM_OKSORI_BASE + 18)
#define MM_OKSORI_MPEG_CDVISION (MM_OKSORI_BASE + 19)
/* Product identifiers for MM_DIACOUSTICS */
#define MM_DIACOUSTICS_DRUM_ACTION 1
/* Product identifiers for MM_KAY_ELEMETRICS */
#define MM_KAY_ELEMETRICS_CSL 0x4300
#define MM_KAY_ELEMETRICS_CSL_DAT 0x4308
#define MM_KAY_ELEMETRICS_CSL_4CHANNEL 0x4309
/* Product identifiers for MM_CRYSTAL */
#define MM_CRYSTAL_CS4232_WAVEIN 1
#define MM_CRYSTAL_CS4232_WAVEOUT 2
#define MM_CRYSTAL_CS4232_WAVEMIXER 3
#define MM_CRYSTAL_CS4232_WAVEAUX_AUX1 4
#define MM_CRYSTAL_CS4232_WAVEAUX_AUX2 5
#define MM_CRYSTAL_CS4232_WAVEAUX_LINE 6
#define MM_CRYSTAL_CS4232_WAVEAUX_MONO 7
#define MM_CRYSTAL_CS4232_WAVEAUX_MASTER 8
#define MM_CRYSTAL_CS4232_MIDIIN 9
#define MM_CRYSTAL_CS4232_MIDIOUT 10
#define MM_CRYSTAL_CS4232_INPUTGAIN_AUX1 13
#define MM_CRYSTAL_CS4232_INPUTGAIN_LOOP 14
#define MM_CRYSTAL_SOUND_FUSION_WAVEIN 21
#define MM_CRYSTAL_SOUND_FUSION_WAVEOUT 22
#define MM_CRYSTAL_SOUND_FUSION_MIXER 23
#define MM_CRYSTAL_SOUND_FUSION_MIDIIN 24
#define MM_CRYSTAL_SOUND_FUSION_MIDIOUT 25
#define MM_CRYSTAL_SOUND_FUSION_JOYSTICK 26
/* Product identifiers for MM_QUARTERDECK */
#define MM_QUARTERDECK_LHWAVEIN 0
#define MM_QUARTERDECK_LHWAVEOUT 1
/* Product identifiers for MM_TDK */
#define MM_TDK_MW_MIDI_SYNTH 1
#define MM_TDK_MW_MIDI_IN 2
#define MM_TDK_MW_MIDI_OUT 3
#define MM_TDK_MW_WAVE_IN 4
#define MM_TDK_MW_WAVE_OUT 5
#define MM_TDK_MW_AUX 6
#define MM_TDK_MW_MIXER 10
#define MM_TDK_MW_AUX_MASTER 100
#define MM_TDK_MW_AUX_BASS 101
#define MM_TDK_MW_AUX_TREBLE 102
#define MM_TDK_MW_AUX_MIDI_VOL 103
#define MM_TDK_MW_AUX_WAVE_VOL 104
#define MM_TDK_MW_AUX_WAVE_RVB 105
#define MM_TDK_MW_AUX_WAVE_CHR 106
#define MM_TDK_MW_AUX_VOL 107
#define MM_TDK_MW_AUX_RVB 108
#define MM_TDK_MW_AUX_CHR 109
/* Product identifiers for MM_DIGITAL_AUDIO_LABS */
#define MM_DIGITAL_AUDIO_LABS_TC 0x01
#define MM_DIGITAL_AUDIO_LABS_DOC 0x02
#define MM_DIGITAL_AUDIO_LABS_V8 0x10
#define MM_DIGITAL_AUDIO_LABS_CPRO 0x11
#define MM_DIGITAL_AUDIO_LABS_VP 0x12
#define MM_DIGITAL_AUDIO_LABS_CDLX 0x13
#define MM_DIGITAL_AUDIO_LABS_CTDIF 0x14
/* Product identifiers for MM_SEERSYS */
#define MM_SEERSYS_SEERSYNTH 1
#define MM_SEERSYS_SEERWAVE 2
#define MM_SEERSYS_SEERMIX 3
#define MM_SEERSYS_WAVESYNTH 4
#define MM_SEERSYS_WAVESYNTH_WG 5
#define MM_SEERSYS_REALITY 6
/* Product identifiers for MM_OSPREY */
#define MM_OSPREY_1000WAVEIN 1
#define MM_OSPREY_1000WAVEOUT 2
/* Product identifiers for MM_SOUNDESIGNS */
#define MM_SOUNDESIGNS_WAVEIN 1
#define MM_SOUNDESIGNS_WAVEOUT 2
/* Product identifiers for MM_SPECTRUM_SIGNAL_PROCESSING */
#define MM_SSP_SNDFESWAVEIN 1
#define MM_SSP_SNDFESWAVEOUT 2
#define MM_SSP_SNDFESMIDIIN 3
#define MM_SSP_SNDFESMIDIOUT 4
#define MM_SSP_SNDFESSYNTH 5
#define MM_SSP_SNDFESMIX 6
#define MM_SSP_SNDFESAUX 7
/* Product identifiers for MM_ECS */
#define MM_ECS_AADF_MIDI_IN 10
#define MM_ECS_AADF_MIDI_OUT 11
#define MM_ECS_AADF_WAVE2MIDI_IN 12
/* Product identifiers for MM_AMD */
#define MM_AMD_INTERWAVE_WAVEIN 1
#define MM_AMD_INTERWAVE_WAVEOUT 2
#define MM_AMD_INTERWAVE_SYNTH 3
#define MM_AMD_INTERWAVE_MIXER1 4
#define MM_AMD_INTERWAVE_MIXER2 5
#define MM_AMD_INTERWAVE_JOYSTICK 6
#define MM_AMD_INTERWAVE_EX_CD 7
#define MM_AMD_INTERWAVE_MIDIIN 8
#define MM_AMD_INTERWAVE_MIDIOUT 9
#define MM_AMD_INTERWAVE_AUX1 10
#define MM_AMD_INTERWAVE_AUX2 11
#define MM_AMD_INTERWAVE_AUX_MIC 12
#define MM_AMD_INTERWAVE_AUX_CD 13
#define MM_AMD_INTERWAVE_MONO_IN 14
#define MM_AMD_INTERWAVE_MONO_OUT 15
#define MM_AMD_INTERWAVE_EX_TELEPHONY 16
#define MM_AMD_INTERWAVE_WAVEOUT_BASE 17
#define MM_AMD_INTERWAVE_WAVEOUT_TREBLE 18
#define MM_AMD_INTERWAVE_STEREO_ENHANCED 19
/* Product identifiers for MM_COREDYNAMICS */
#define MM_COREDYNAMICS_DYNAMIXHR 1
#define MM_COREDYNAMICS_DYNASONIX_SYNTH 2
#define MM_COREDYNAMICS_DYNASONIX_MIDI_IN 3
#define MM_COREDYNAMICS_DYNASONIX_MIDI_OUT 4
#define MM_COREDYNAMICS_DYNASONIX_WAVE_IN 5
#define MM_COREDYNAMICS_DYNASONIX_WAVE_OUT 6
#define MM_COREDYNAMICS_DYNASONIX_AUDIO_IN 7
#define MM_COREDYNAMICS_DYNASONIX_AUDIO_OUT 8
#define MM_COREDYNAMICS_DYNAGRAFX_VGA 9
#define MM_COREDYANMICS_DYNAGRAFX_WAVE_IN 10
#define MM_COREDYNAMICS_DYNAGRAFX_WAVE_OUT 11
/* Product identifiers for MM_CANAM */
#define MM_CANAM_CBXWAVEOUT 1
#define MM_CANAM_CBXWAVEIN 2
/* Product identifiers for MM_SOFTSOUND */
#define MM_SOFTSOUND_CODEC 1
/* Product identifiers for MM_NORRIS */
#define MM_NORRIS_VOICELINK 1
/* Product identifiers for MM_DDD */
#define MM_DDD_MINILINK_MIDIIN 1
#define MM_DDD_MINILINK_MIDIOUT 2
/* Product identifiers for MM_EUPHONICS */
#define MM_EUPHONICS_AUX_CD 1
#define MM_EUPHONICS_AUX_LINE 2
#define MM_EUPHONICS_AUX_MASTER 3
#define MM_EUPHONICS_AUX_MIC 4
#define MM_EUPHONICS_AUX_MIDI 5
#define MM_EUPHONICS_AUX_WAVE 6
#define MM_EUPHONICS_FMSYNTH_MONO 7
#define MM_EUPHONICS_FMSYNTH_STEREO 8
#define MM_EUPHONICS_MIDIIN 9
#define MM_EUPHONICS_MIDIOUT 10
#define MM_EUPHONICS_MIXER 11
#define MM_EUPHONICS_WAVEIN 12
#define MM_EUPHONICS_WAVEOUT 13
#define MM_EUPHONICS_EUSYNTH 14
/* Product identifiers for MM_CRYSTAL_NET */
#define CRYSTAL_NET_SFM_CODEC 1
/* Product identifiers for MM_CHROMATIC */
#define MM_CHROMATIC_M1 0x0001
#define MM_CHROMATIC_M1_WAVEIN 0x0002
#define MM_CHROMATIC_M1_WAVEOUT 0x0003
#define MM_CHROMATIC_M1_FMSYNTH 0x0004
#define MM_CHROMATIC_M1_MIXER 0x0005
#define MM_CHROMATIC_M1_AUX 0x0006
#define MM_CHROMATIC_M1_AUX_CD 0x0007
#define MM_CHROMATIC_M1_MIDIIN 0x0008
#define MM_CHROMATIC_M1_MIDIOUT 0x0009
#define MM_CHROMATIC_M1_WTSYNTH 0x0010
#define MM_CHROMATIC_M1_MPEGWAVEIN 0x0011
#define MM_CHROMATIC_M1_MPEGWAVEOUT 0x0012
#define MM_CHROMATIC_M2 0x0013
#define MM_CHROMATIC_M2_WAVEIN 0x0014
#define MM_CHROMATIC_M2_WAVEOUT 0x0015
#define MM_CHROMATIC_M2_FMSYNTH 0x0016
#define MM_CHROMATIC_M2_MIXER 0x0017
#define MM_CHROMATIC_M2_AUX 0x0018
#define MM_CHROMATIC_M2_AUX_CD 0x0019
#define MM_CHROMATIC_M2_MIDIIN 0x0020
#define MM_CHROMATIC_M2_MIDIOUT 0x0021
#define MM_CHROMATIC_M2_WTSYNTH 0x0022
#define MM_CHROMATIC_M2_MPEGWAVEIN 0x0023
#define MM_CHROMATIC_M2_MPEGWAVEOUT 0x0024
/* Product identifiers for MM_VIENNASYS */
#define MM_VIENNASYS_TSP_WAVE_DRIVER 1
/* Product identifiers for MM_CONNECTIX */
#define MM_CONNECTIX_VIDEC_CODEC 1
/* Product identifiers for MM_GADGETLABS */
#define MM_GADGETLABS_WAVE44_WAVEIN 1
#define MM_GADGETLABS_WAVE44_WAVEOUT 2
#define MM_GADGETLABS_WAVE42_WAVEIN 3
#define MM_GADGETLABS_WAVE42_WAVEOUT 4
#define MM_GADGETLABS_WAVE4_MIDIIN 5
#define MM_GADGETLABS_WAVE4_MIDIOUT 6
/* Product identifiers for MM_FRONTIER */
#define MM_FRONTIER_WAVECENTER_MIDIIN 1
#define MM_FRONTIER_WAVECENTER_MIDIOUT 2
#define MM_FRONTIER_WAVECENTER_WAVEIN 3
#define MM_FRONTIER_WAVECENTER_WAVEOUT 4
/* Product identifiers for MM_VIONA */
#define MM_VIONA_QVINPCI_MIXER 1
#define MM_VIONA_QVINPCI_WAVEIN 2
#define MM_VIONA_QVINPCI_WAVEOUT 3
#define MM_VIONA_BUSTER_MIXER 4
#define MM_VIONA_CINEMASTER_MIXER 5
#define MM_VIONA_CONCERTO_MIXER 6
/* Product identifiers for MM_CASIO */
#define MM_CASIO_WP150_MIDIOUT 1
#define MM_CASIO_WP150_MIDIIN 2
#define MM_CASIO_LSG_MIDIOUT 3
/* Product identifiers for MM_DIAMONDMM */
#define MM_DIMD_PLATFORM 0
#define MM_DIMD_DIRSOUND 1
#define MM_DIMD_VIRTMPU 2
#define MM_DIMD_VIRTSB 3
#define MM_DIMD_VIRTJOY 4
#define MM_DIMD_WAVEIN 5
#define MM_DIMD_WAVEOUT 6
#define MM_DIMD_MIDIIN 7
#define MM_DIMD_MIDIOUT 8
#define MM_DIMD_AUX_LINE 9
#define MM_DIMD_MIXER 10
#define MM_DIMD_WSS_WAVEIN 14
#define MM_DIMD_WSS_WAVEOUT 15
#define MM_DIMD_WSS_MIXER 17
#define MM_DIMD_WSS_AUX 21
#define MM_DIMD_WSS_SYNTH 76
/* Product identifiers for MM_S3 */
#define MM_S3_WAVEOUT 1
#define MM_S3_WAVEIN 2
#define MM_S3_MIDIOUT 3
#define MM_S3_MIDIIN 4
#define MM_S3_FMSYNTH 5
#define MM_S3_MIXER 6
#define MM_S3_AUX 7
/* Product identifiers for MM_VANKOEVERING */
#define MM_VKC_MPU401_MIDIIN 0x0100
#define MM_VKC_SERIAL_MIDIIN 0x0101
#define MM_VKC_MPU401_MIDIOUT 0x0200
#define MM_VKC_SERIAL_MIDIOUT 0x0201
/* Product identifiers for MM_ZEFIRO */
#define MM_ZEFIRO_ZA2 2
/* Product identifiers for MM_FRAUNHOFER_IIS */
#define MM_FHGIIS_MPEGLAYER3 10
/* Product identifiers for MM_QUICKNET */
#define MM_QUICKNET_PJWAVEIN 1
#define MM_QUICKNET_PJWAVEOUT 2
/* Product identifiers for MM_SICRESOURCE */
#define MM_SICRESOURCE_SSO3D 2
#define MM_SICRESOURCE_SSOW3DI 3
/* Product identifiers for MM_NEOMAGIC */
#define MM_NEOMAGIC_SYNTH 1
#define MM_NEOMAGIC_WAVEOUT 2
#define MM_NEOMAGIC_WAVEIN 3
#define MM_NEOMAGIC_MIDIOUT 4
#define MM_NEOMAGIC_MIDIIN 5
#define MM_NEOMAGIC_AUX 6
#define MM_NEOMAGIC_MW3DX_WAVEOUT 10
#define MM_NEOMAGIC_MW3DX_WAVEIN 11
#define MM_NEOMAGIC_MW3DX_MIDIOUT 12
#define MM_NEOMAGIC_MW3DX_MIDIIN 13
#define MM_NEOMAGIC_MW3DX_FMSYNTH 14
#define MM_NEOMAGIC_MW3DX_GMSYNTH 15
#define MM_NEOMAGIC_MW3DX_MIXER 16
#define MM_NEOMAGIC_MW3DX_AUX 17
#define MM_NEOMAGIC_MWAVE_WAVEOUT 20
#define MM_NEOMAGIC_MWAVE_WAVEIN 21
#define MM_NEOMAGIC_MWAVE_MIDIOUT 22
#define MM_NEOMAGIC_MWAVE_MIDIIN 23
#define MM_NEOMAGIC_MWAVE_MIXER 24
#define MM_NEOMAGIC_MWAVE_AUX 25
/* Product identifiers for MM_MERGING_TECHNOLOGIES */
#define MM_MERGING_MPEGL3 1
/* Product identifiers for MM_XIRLINK */
#define MM_XIRLINK_VISIONLINK 1
/* Product identifiers for MM_OTI */
#define MM_OTI_611WAVEIN 0x05
#define MM_OTI_611WAVEOUT 0x06
#define MM_OTI_611MIXER 0x07
#define MM_OTI_611MIDIIN 0x12
#define MM_OTI_611MIDIOUT 0x13
/* Product identifiers for MM_AUREAL */
#define MM_AUREAL_AU8820 16
#define MM_AU8820_SYNTH 17
#define MM_AU8820_WAVEOUT 18
#define MM_AU8820_WAVEIN 19
#define MM_AU8820_MIXER 20
#define MM_AU8820_AUX 21
#define MM_AU8820_MIDIOUT 22
#define MM_AU8820_MIDIIN 23
#define MM_AUREAL_AU8830 32
#define MM_AU8830_SYNTH 33
#define MM_AU8830_WAVEOUT 34
#define MM_AU8330_WAVEIN 35
#define MM_AU8330_MIXER 36
#define MM_AU8330_AUX 37
#define MM_AU8330_MIDIOUT 38
#define MM_AU8330_MIDIIN 39
/* Product identifiers for MM_VIVO */
#define MM_VIVO_AUDIO_CODEC 1
/* Product identifiers for MM_SHARP */
#define MM_SHARP_MDC_MIDI_SYNTH 1
#define MM_SHARP_MDC_MIDI_IN 2
#define MM_SHARP_MDC_MIDI_OUT 3
#define MM_SHARP_MDC_WAVE_IN 4
#define MM_SHARP_MDC_WAVE_OUT 5
#define MM_SHARP_MDC_AUX 6
#define MM_SHARP_MDC_MIXER 10
#define MM_SHARP_MDC_AUX_MASTER 100
#define MM_SHARP_MDC_AUX_BASS 101
#define MM_SHARP_MDC_AUX_TREBLE 102
#define MM_SHARP_MDC_AUX_MIDI_VOL 103
#define MM_SHARP_MDC_AUX_WAVE_VOL 104
#define MM_SHARP_MDC_AUX_WAVE_RVB 105
#define MM_SHARP_MDC_AUX_WAVE_CHR 106
#define MM_SHARP_MDC_AUX_VOL 107
#define MM_SHARP_MDC_AUX_RVB 108
#define MM_SHARP_MDC_AUX_CHR 109
/* Product identifiers for MM_LUCENT */
#define MM_LUCENT_ACM_G723 0
/* Product identifiers for MM_ATT */
#define MM_ATT_G729A 1
/* Product identifiers for MM_MARIAN */
#define MM_MARIAN_ARC44WAVEIN 1
#define MM_MARIAN_ARC44WAVEOUT 2
#define MM_MARIAN_PRODIF24WAVEIN 3
#define MM_MARIAN_PRODIF24WAVEOUT 4
#define MM_MARIAN_ARC88WAVEIN 5
#define MM_MARIAN_ARC88WAVEOUT 6
/* Product identifiers for MM_BCB */
#define MM_BCB_NETBOARD_10 1
#define MM_BCB_TT75_10 2
/* Product identifiers for MM_MOTIONPIXELS */
#define MM_MOTIONPIXELS_MVI2 1
/* Product identifiers for MM_QDESIGN */
#define MM_QDESIGN_ACM_MPEG 1
#define MM_QDESIGN_ACM_QDESIGN_MUSIC 2
/* Product identifiers for MM_NMP */
#define MM_NMP_CCP_WAVEIN 1
#define MM_NMP_CCP_WAVEOUT 2
#define MM_NMP_ACM_AMR 10
/* Product identifiers for MM_DATAFUSION */
#define MM_DF_ACM_G726 1
#define MM_DF_ACM_GSM610 2
/* Product identifiers for MM_BERCOS */
#define MM_BERCOS_WAVEIN 1
#define MM_BERCOS_MIXER 2
#define MM_BERCOS_WAVEOUT 3
/* Product identifiers for MM_ONLIVE */
#define MM_ONLIVE_MPCODEC 1
/* Product identifiers for MM_PHONET */
#define MM_PHONET_PP_WAVEOUT 1
#define MM_PHONET_PP_WAVEIN 2
#define MM_PHONET_PP_MIXER 3
/* Product identifiers for MM_FTR */
#define MM_FTR_ENCODER_WAVEIN 1
#define MM_FTR_ACM 2
/* Product identifiers for MM_ENET */
#define MM_ENET_T2000_LINEIN 1
#define MM_ENET_T2000_LINEOUT 2
#define MM_ENET_T2000_HANDSETIN 3
#define MM_ENET_T2000_HANDSETOUT 4
/* Product identifiers for MM_EMAGIC */
#define MM_EMAGIC_UNITOR8 1
/* Product identifiers for MM_SIPROLAB */
#define MM_SIPROLAB_ACELPNET 1
/* Product identifiers for MM_DICTAPHONE */
#define MM_DICTAPHONE_G726 1
/* Product identifiers for MM_RZS */
#define MM_RZS_ACM_TUBGSM 1
/* Product identifiers for MM_EES */
#define MM_EES_PCMIDI14 1
#define MM_EES_PCMIDI14_IN 2
#define MM_EES_PCMIDI14_OUT1 3
#define MM_EES_PCMIDI14_OUT2 4
#define MM_EES_PCMIDI14_OUT3 5
#define MM_EES_PCMIDI14_OUT4 6
/* Product identifiers for MM_HAFTMANN */
#define MM_HAFTMANN_LPTDAC2 1
/* Product identifiers for MM_LUCID */
#define MM_LUCID_PCI24WAVEIN 1
#define MM_LUCID_PCI24WAVEOUT 2
/* Product identifiers for MM_HEADSPACE */
#define MM_HEADSPACE_HAESYNTH 1
#define MM_HEADSPACE_HAEWAVEOUT 2
#define MM_HEADSPACE_HAEWAVEIN 3
#define MM_HEADSPACE_HAEMIXER 4
/* Product identifiers for MM_UNISYS */
#define MM_UNISYS_ACM_NAP 1
/* Product identifiers for MM_LUMINOSITI */
#define MM_LUMINOSITI_SCWAVEIN 1
#define MM_LUMINOSITI_SCWAVEOUT 2
#define MM_LUMINOSITI_SCWAVEMIX 3
/* Product identifiers for MM_ACTIVEVOICE */
#define MM_ACTIVEVOICE_ACM_VOXADPCM 1
/* Product identifiers for MM_DTS */
#define MM_DTS_DS 1
/* Product identifiers for MM_SOFTLAB_NSK */
#define MM_SOFTLAB_NSK_FRW_WAVEIN 1
#define MM_SOFTLAB_NSK_FRW_WAVEOUT 2
#define MM_SOFTLAB_NSK_FRW_MIXER 3
#define MM_SOFTLAB_NSK_FRW_AUX 4
/* Product identifiers for MM_FORTEMEDIA */
#define MM_FORTEMEDIA_WAVEIN 1
#define MM_FORTEMEDIA_WAVEOUT 2
#define MM_FORTEMEDIA_FMSYNC 3
#define MM_FORTEMEDIA_MIXER 4
#define MM_FORTEMEDIA_AUX 5
/* Product identifiers for MM_SONORUS */
#define MM_SONORUS_STUDIO 1
/* Product identifiers for MM_I_LINK */
#define MM_I_LINK_VOICE_CODER 1
/* Product identifiers for MM_SELSIUS_SYSTEMS */
#define MM_SELSIUS_SYSTEMS_RTPWAVEOUT 1
#define MM_SELSIUS_SYSTEMS_RTPWAVEIN 2
/* Product identifiers for MM_ADMOS */
#define MM_ADMOS_FM_SYNTH 1
#define MM_ADMOS_QS3AMIDIOUT 2
#define MM_ADMOS_QS3AMIDIIN 3
#define MM_ADMOS_QS3AWAVEOUT 4
#define MM_ADMOS_QS3AWAVEIN 5
/* Product identifiers for MM_LEXICON */
#define MM_LEXICON_STUDIO_WAVE_OUT 1
#define MM_LEXICON_STUDIO_WAVE_IN 2
/* Product identifiers for MM_SGI */
#define MM_SGI_320_WAVEIN 1
#define MM_SGI_320_WAVEOUT 2
#define MM_SGI_320_MIXER 3
#define MM_SGI_540_WAVEIN 4
#define MM_SGI_540_WAVEOUT 5
#define MM_SGI_540_MIXER 6
#define MM_SGI_RAD_ADATMONO1_WAVEIN 7
#define MM_SGI_RAD_ADATMONO2_WAVEIN 8
#define MM_SGI_RAD_ADATMONO3_WAVEIN 9
#define MM_SGI_RAD_ADATMONO4_WAVEIN 10
#define MM_SGI_RAD_ADATMONO5_WAVEIN 11
#define MM_SGI_RAD_ADATMONO6_WAVEIN 12
#define MM_SGI_RAD_ADATMONO7_WAVEIN 13
#define MM_SGI_RAD_ADATMONO8_WAVEIN 14
#define MM_SGI_RAD_ADATSTEREO12_WAVEIN 15
#define MM_SGI_RAD_ADATSTEREO34_WAVEIN 16
#define MM_SGI_RAD_ADATSTEREO56_WAVEIN 17
#define MM_SGI_RAD_ADATSTEREO78_WAVEIN 18
#define MM_SGI_RAD_ADAT8CHAN_WAVEIN 19
#define MM_SGI_RAD_ADATMONO1_WAVEOUT 20
#define MM_SGI_RAD_ADATMONO2_WAVEOUT 21
#define MM_SGI_RAD_ADATMONO3_WAVEOUT 22
#define MM_SGI_RAD_ADATMONO4_WAVEOUT 23
#define MM_SGI_RAD_ADATMONO5_WAVEOUT 24
#define MM_SGI_RAD_ADATMONO6_WAVEOUT 25
#define MM_SGI_RAD_ADATMONO7_WAVEOUT 26
#define MM_SGI_RAD_ADATMONO8_WAVEOUT 27
#define MM_SGI_RAD_ADATSTEREO12_WAVEOUT 28
#define MM_SGI_RAD_ADATSTEREO34_WAVEOUT 29
#define MM_SGI_RAD_ADATSTEREO56_WAVEOUT 30
#define MM_SGI_RAD_ADATSTEREO78_WAVEOUT 31
#define MM_SGI_RAD_ADAT8CHAN_WAVEOUT 32
#define MM_SGI_RAD_AESMONO1_WAVEIN 33
#define MM_SGI_RAD_AESMONO2_WAVEIN 34
#define MM_SGI_RAD_AESSTEREO_WAVEIN 35
#define MM_SGI_RAD_AESMONO1_WAVEOUT 36
#define MM_SGI_RAD_AESMONO2_WAVEOUT 37
#define MM_SGI_RAD_AESSTEREO_WAVEOUT 38
/* Product identifiers for MM_IPI */
#define MM_IPI_ACM_HSX 1
#define MM_IPI_ACM_RPELP 2
#define MM_IPI_WF_ASSS 3
#define MM_IPI_AT_WAVEOUT 4
#define MM_IPI_AT_WAVEIN 5
#define MM_IPI_AT_MIXER 6
/* Product identifiers for MM_ICE */
#define MM_ICE_WAVEOUT 1
#define MM_ICE_WAVEIN 2
#define MM_ICE_MTWAVEOUT 3
#define MM_ICE_MTWAVEIN 4
#define MM_ICE_MIDIOUT1 5
#define MM_ICE_MIDIIN1 6
#define MM_ICE_MIDIOUT2 7
#define MM_ICE_MIDIIN2 8
#define MM_ICE_SYNTH 9
#define MM_ICE_MIXER 10
#define MM_ICE_AUX 11
/* Product identifiers for MM_VQST */
#define MM_VQST_VQC1 1
#define MM_VQST_VQC2 2
/* Product identifiers for MM_ETEK */
#define MM_ETEK_KWINMIDI_MIDIIN 1
#define MM_ETEK_KWINMIDI_MIDIOUT 2
/* Product identifiers for MM_INTERNET */
#define MM_INTERNET_SSW_MIDIOUT 10
#define MM_INTERNET_SSW_MIDIIN 11
#define MM_INTERNET_SSW_WAVEOUT 12
#define MM_INTERNET_SSW_WAVEIN 13
/* Product identifiers for MM_SONY */
#define MM_SONY_ACM_SCX 1
/* Product identifiers for MM_UHER_INFORMATIC */
#define MM_UH_ACM_ADPCM 1
/* Product identifiers for MM_SYDEC_NV */
#define MM_SYDEC_NV_WAVEIN 1
#define MM_SYDEC_NV_WAVEOUT 2
/* Product identifiers for MM_FLEXION */
#define MM_FLEXION_X300_WAVEIN 1
#define MM_FLEXION_X300_WAVEOUT 2
/* Product identifiers for MM_VIA */
#define MM_VIA_WAVEOUT 1
#define MM_VIA_WAVEIN 2
#define MM_VIA_MIXER 3
#define MM_VIA_AUX 4
#define MM_VIA_MPU401_MIDIOUT 5
#define MM_VIA_MPU401_MIDIIN 6
#define MM_VIA_SWFM_SYNTH 7
#define MM_VIA_WDM_WAVEOUT 8
#define MM_VIA_WDM_WAVEIN 9
#define MM_VIA_WDM_MIXER 10
#define MM_VIA_WDM_MPU401_MIDIOUT 11
#define MM_VIA_WDM_MPU401_MIDIIN 12
/* Product identifiers for MM_MICRONAS */
#define MM_MICRONAS_SC4 1
#define MM_MICRONAS_CLP833 2
/* Product identifiers for MM_HP */
#define MM_HP_WAVEOUT 1
#define MM_HP_WAVEIN 2
/* Product identifiers for MM_QUICKAUDIO */
#define MM_QUICKAUDIO_MINIMIDI 1
#define MM_QUICKAUDIO_MAXIMIDI 2
/* Product identifiers for MM_ICCC */
#define MM_ICCC_UNA3_WAVEIN 1
#define MM_ICCC_UNA3_WAVEOUT 2
#define MM_ICCC_UNA3_AUX 3
#define MM_ICCC_UNA3_MIXER 4
/* Product identifiers for MM_3COM */
#define MM_3COM_CB_MIXER 1
#define MM_3COM_CB_WAVEIN 2
#define MM_3COM_CB_WAVEOUT 3
/* Product identifiers for MM_MINDMAKER */
#define MM_MINDMAKER_GC_WAVEIN 1
#define MM_MINDMAKER_GC_WAVEOUT 2
#define MM_MINDMAKER_GC_MIXER 3
/* Product identifiers for MM_TELEKOL */
#define MM_TELEKOL_WAVEOUT 1
#define MM_TELEKOL_WAVEIN 2
/* Product identifiers for MM_ALGOVISION */
#define MM_ALGOVISION_VB80WAVEOUT 1
#define MM_ALGOVISION_VB80WAVEIN 2
#define MM_ALGOVISION_VB80MIXER 3
#define MM_ALGOVISION_VB80AUX 4
#define MM_ALGOVISION_VB80AUX2 5
/* RIFF chunks */
#define RIFFINFO_IARL mmioFOURCC( 'I', 'A', 'R', 'L' )
#define RIFFINFO_IART mmioFOURCC( 'I', 'A', 'R', 'T' )
#define RIFFINFO_ICMS mmioFOURCC( 'I', 'C', 'M', 'S' )
#define RIFFINFO_ICMT mmioFOURCC( 'I', 'C', 'M', 'T' )
#define RIFFINFO_ICOP mmioFOURCC( 'I', 'C', 'O', 'P' )
#define RIFFINFO_ICRD mmioFOURCC( 'I', 'C', 'R', 'D' )
#define RIFFINFO_ICRP mmioFOURCC( 'I', 'C', 'R', 'P' )
#define RIFFINFO_IDIM mmioFOURCC( 'I', 'D', 'I', 'M' )
#define RIFFINFO_IDPI mmioFOURCC( 'I', 'D', 'P', 'I' )
#define RIFFINFO_IENG mmioFOURCC( 'I', 'E', 'N', 'G' )
#define RIFFINFO_IGNR mmioFOURCC( 'I', 'G', 'N', 'R' )
#define RIFFINFO_IKEY mmioFOURCC( 'I', 'K', 'E', 'Y' )
#define RIFFINFO_ILGT mmioFOURCC( 'I', 'L', 'G', 'T' )
#define RIFFINFO_IMED mmioFOURCC( 'I', 'M', 'E', 'D' )
#define RIFFINFO_INAM mmioFOURCC( 'I', 'N', 'A', 'M' )
#define RIFFINFO_IPLT mmioFOURCC( 'I', 'P', 'L', 'T' )
#define RIFFINFO_IPRD mmioFOURCC( 'I', 'P', 'R', 'D' )
#define RIFFINFO_ISBJ mmioFOURCC( 'I', 'S', 'B', 'J' )
#define RIFFINFO_ISFT mmioFOURCC( 'I', 'S', 'F', 'T' )
#define RIFFINFO_ISHP mmioFOURCC( 'I', 'S', 'H', 'P' )
#define RIFFINFO_ISRC mmioFOURCC( 'I', 'S', 'R', 'C' )
#define RIFFINFO_ISRF mmioFOURCC( 'I', 'S', 'R', 'F' )
#define RIFFINFO_ITCH mmioFOURCC( 'I', 'T', 'C', 'H' )
#define RIFFINFO_ISMP mmioFOURCC( 'I', 'S', 'M', 'P' )
#define RIFFINFO_IDIT mmioFOURCC( 'I', 'D', 'I', 'T' )
#define RIFFINFO_ITRK mmioFOURCC( 'I', 'T', 'R', 'K' )
#define RIFFINFO_ITOC mmioFOURCC( 'I', 'T', 'O', 'C' )
/* Wave format tags */
#define WAVE_FORMAT_UNKNOWN 0x0000
#define WAVE_FORMAT_ADPCM 0x0002
#define WAVE_FORMAT_IEEE_FLOAT 0x0003
#define WAVE_FORMAT_VSELP 0x0004
#define WAVE_FORMAT_IBM_CVSD 0x0005
#define WAVE_FORMAT_ALAW 0x0006
#define WAVE_FORMAT_MULAW 0x0007
#define WAVE_FORMAT_DTS 0x0008
#define WAVE_FORMAT_DRM 0x0009
#define WAVE_FORMAT_WMAVOICE9 0x000A
#define WAVE_FORMAT_WMAVOICE10 0x000B
#define WAVE_FORMAT_OKI_ADPCM 0x0010
#define WAVE_FORMAT_DVI_ADPCM 0x0011
#define WAVE_FORMAT_IMA_ADPCM WAVE_FORMAT_DVI_ADPCM
#define WAVE_FORMAT_MEDIASPACE_ADPCM 0x0012
#define WAVE_FORMAT_SIERRA_ADPCM 0x0013
#define WAVE_FORMAT_G723_ADPCM 0x0014
#define WAVE_FORMAT_DIGISTD 0x0015
#define WAVE_FORMAT_DIGIFIX 0x0016
#define WAVE_FORMAT_DIALOGIC_OKI_ADPCM 0x0017
#define WAVE_FORMAT_MEDIAVISION_ADPCM 0x0018
#define WAVE_FORMAT_CU_CODEC 0x0019
#define WAVE_FORMAT_YAMAHA_ADPCM 0x0020
#define WAVE_FORMAT_SONARC 0x0021
#define WAVE_FORMAT_DSPGROUP_TRUESPEECH 0x0022
#define WAVE_FORMAT_ECHOSC1 0x0023
#define WAVE_FORMAT_AUDIOFILE_AF36 0x0024
#define WAVE_FORMAT_APTX 0x0025
#define WAVE_FORMAT_AUDIOFILE_AF10 0x0026
#define WAVE_FORMAT_PROSODY_1612 0x0027
#define WAVE_FORMAT_LRC 0x0028
#define WAVE_FORMAT_DOLBY_AC2 0x0030
#define WAVE_FORMAT_GSM610 0x0031
#define WAVE_FORMAT_MSNAUDIO 0x0032
#define WAVE_FORMAT_ANTEX_ADPCME 0x0033
#define WAVE_FORMAT_CONTROL_RES_VQLPC 0x0034
#define WAVE_FORMAT_DIGIREAL 0x0035
#define WAVE_FORMAT_DIGIADPCM 0x0036
#define WAVE_FORMAT_CONTROL_RES_CR10 0x0037
#define WAVE_FORMAT_NMS_VBXADPCM 0x0038
#define WAVE_FORMAT_CS_IMAADPCM 0x0039
#define WAVE_FORMAT_ECHOSC3 0x003A
#define WAVE_FORMAT_ROCKWELL_ADPCM 0x003B
#define WAVE_FORMAT_ROCKWELL_DIGITALK 0x003C
#define WAVE_FORMAT_XEBEC 0x003D
#define WAVE_FORMAT_G721_ADPCM 0x0040
#define WAVE_FORMAT_G728_CELP 0x0041
#define WAVE_FORMAT_MSG723 0x0042
#define WAVE_FORMAT_MPEG 0x0050
#define WAVE_FORMAT_RT24 0x0052
#define WAVE_FORMAT_PAC 0x0053
#define WAVE_FORMAT_MPEGLAYER3 0x0055
#define WAVE_FORMAT_LUCENT_G723 0x0059
#define WAVE_FORMAT_CIRRUS 0x0060
#define WAVE_FORMAT_ESPCM 0x0061
#define WAVE_FORMAT_VOXWARE 0x0062
#define WAVE_FORMAT_CANOPUS_ATRAC 0x0063
#define WAVE_FORMAT_G726_ADPCM 0x0064
#define WAVE_FORMAT_G722_ADPCM 0x0065
#define WAVE_FORMAT_DSAT_DISPLAY 0x0067
#define WAVE_FORMAT_VOXWARE_BYTE_ALIGNED 0x0069
#define WAVE_FORMAT_VOXWARE_AC8 0x0070
#define WAVE_FORMAT_VOXWARE_AC10 0x0071
#define WAVE_FORMAT_VOXWARE_AC16 0x0072
#define WAVE_FORMAT_VOXWARE_AC20 0x0073
#define WAVE_FORMAT_VOXWARE_RT24 0x0074
#define WAVE_FORMAT_VOXWARE_RT29 0x0075
#define WAVE_FORMAT_VOXWARE_RT29HW 0x0076
#define WAVE_FORMAT_VOXWARE_VR12 0x0077
#define WAVE_FORMAT_VOXWARE_VR18 0x0078
#define WAVE_FORMAT_VOXWARE_TQ40 0x0079
#define WAVE_FORMAT_SOFTSOUND 0x0080
#define WAVE_FORMAT_VOXWARE_TQ60 0x0081
#define WAVE_FORMAT_MSRT24 0x0082
#define WAVE_FORMAT_G729A 0x0083
#define WAVE_FORMAT_MVI_MVI2 0x0084
#define WAVE_FORMAT_DF_G726 0x0085
#define WAVE_FORMAT_DF_GSM610 0x0086
#define WAVE_FORMAT_ISIAUDIO 0x0088
#define WAVE_FORMAT_ONLIVE 0x0089
#define WAVE_FORMAT_SBC24 0x0091
#define WAVE_FORMAT_DOLBY_AC3_SPDIF 0x0092
#define WAVE_FORMAT_MEDIASONIC_G723 0x0093
#define WAVE_FORMAT_PROSODY_8KBPS 0x0094
#define WAVE_FORMAT_ZYXEL_ADPCM 0x0097
#define WAVE_FORMAT_PHILIPS_LPCBB 0x0098
#define WAVE_FORMAT_PACKED 0x0099
#define WAVE_FORMAT_MALDEN_PHONYTALK 0x00A0
#define WAVE_FORMAT_RAW_AAC1 0x00FF
#define WAVE_FORMAT_RHETOREX_ADPCM 0x0100
#define WAVE_FORMAT_IRAT 0x0101
#define WAVE_FORMAT_VIVO_G723 0x0111
#define WAVE_FORMAT_VIVO_SIREN 0x0112
#define WAVE_FORMAT_DIGITAL_G723 0x0123
#define WAVE_FORMAT_SANYO_LD_ADPCM 0x0125
#define WAVE_FORMAT_SIPROLAB_ACEPLNET 0x0130
#define WAVE_FORMAT_SIPROLAB_ACELP4800 0x0131
#define WAVE_FORMAT_SIPROLAB_ACELP8V3 0x0132
#define WAVE_FORMAT_SIPROLAB_G729 0x0133
#define WAVE_FORMAT_SIPROLAB_G729A 0x0134
#define WAVE_FORMAT_SIPROLAB_KELVIN 0x0135
#define WAVE_FORMAT_G729ADPCM 0x0140
#define WAVE_FORMAT_QUALCOMM_PUREVOICE 0x0150
#define WAVE_FORMAT_QUALCOMM_HALFRATE 0x0151
#define WAVE_FORMAT_TUBGSM 0x0155
#define WAVE_FORMAT_MSAUDIO1 0x0160
#define WAVE_FORMAT_WMAUDIO2 0x0161
#define WAVE_FORMAT_WMAUDIO3 0x0162
#define WAVE_FORMAT_WMAUDIO_LOSSLESS 0x0163
#define WAVE_FORMAT_WMASPDIF 0x0164
#define WAVE_FORMAT_UNISYS_NAP_ADPCM 0x0170
#define WAVE_FORMAT_UNISYS_NAP_ULAW 0x0171
#define WAVE_FORMAT_UNISYS_NAP_ALAW 0x0172
#define WAVE_FORMAT_UNISYS_NAP_16K 0x0173
#define WAVE_FORMAT_CREATIVE_ADPCM 0x0200
#define WAVE_FORMAT_CREATIVE_FASTSPEECH8 0x0202
#define WAVE_FORMAT_CREATIVE_FASTSPEECH10 0x0203
#define WAVE_FORMAT_UHER_ADPCM 0x0210
#define WAVE_FORMAT_QUARTERDECK 0x0220
#define WAVE_FORMAT_ILINK_VC 0x0230
#define WAVE_FORMAT_RAW_SPORT 0x0240
#define WAVE_FORMAT_ESST_AC3 0x0241
#define WAVE_FORMAT_GENERIC_PASSTHRU 0x0249
#define WAVE_FORMAT_IPI_HSX 0x0250
#define WAVE_FORMAT_IPI_RPELP 0x0251
#define WAVE_FORMAT_CS2 0x0260
#define WAVE_FORMAT_SONY_SCX 0x0270
#define WAVE_FORMAT_FM_TOWNS_SND 0x0300
#define WAVE_FORMAT_BTV_DIGITAL 0x0400
#define WAVE_FORMAT_QDESIGN_MUSIC 0x0450
#define WAVE_FORMAT_VME_VMPCM 0x0680
#define WAVE_FORMAT_TPC 0x0681
#define WAVE_FORMAT_OLIGSM 0x1000
#define WAVE_FORMAT_OLIADPCM 0x1001
#define WAVE_FORMAT_OLICELP 0x1002
#define WAVE_FORMAT_OLISBC 0x1003
#define WAVE_FORMAT_OLIOPR 0x1004
#define WAVE_FORMAT_LH_CODEC 0x1100
#define WAVE_FORMAT_NORRIS 0x1400
#define WAVE_FORMAT_SOUNDSCAPE_MUSICOMPRESS 0x1500
#define WAVE_FORMAT_MPEG_ADTS_AAC 0x1600
#define WAVE_FORMAT_MPEG_RAW_AAC 0x1601
#define WAVE_FORMAT_MPEG_LOAS 0x1602
#define WAVE_FORMAT_NOKIA_MPEG_ADTS_AAC 0x1608
#define WAVE_FORMAT_NOKIA_MPEG_RAW_AAC 0x1609
#define WAVE_FORMAT_VODAFONE_MPEG_ADTS_AAC 0x160A
#define WAVE_FORMAT_VODAFONE_MPEG_RAW_AAC 0x160B
#define WAVE_FORMAT_MPEG_HEAAC 0x1610
#define WAVE_FORMAT_DVM 0x2000
#define WAVE_FORMAT_DTS2 0x2001
#define WAVE_FORMAT_EXTENSIBLE 0xFFFE
#define WAVE_FORMAT_DEVELOPMENT 0xFFFF
/* Extensible wave format channel mask flags */
#define SPEAKER_FRONT_LEFT 0x00000001L
#define SPEAKER_FRONT_RIGHT 0x00000002L
#define SPEAKER_FRONT_CENTER 0x00000004L
#define SPEAKER_LOW_FREQUENCY 0x00000008L
#define SPEAKER_BACK_LEFT 0x00000010L
#define SPEAKER_BACK_RIGHT 0x00000020L
#define SPEAKER_FRONT_LEFT_OF_CENTER 0x00000040L
#define SPEAKER_FRONT_RIGHT_OF_CENTER 0x00000080L
#define SPEAKER_BACK_CENTER 0x00000100L
#define SPEAKER_SIDE_LEFT 0x00000200L
#define SPEAKER_SIDE_RIGHT 0x00000400L
#define SPEAKER_TOP_CENTER 0x00000800L
#define SPEAKER_TOP_FRONT_LEFT 0x00001000L
#define SPEAKER_TOP_FRONT_CENTER 0x00002000L
#define SPEAKER_TOP_FRONT_RIGHT 0x00004000L
#define SPEAKER_TOP_BACK_LEFT 0x00008000L
#define SPEAKER_TOP_BACK_CENTER 0x00010000L
#define SPEAKER_TOP_BACK_RIGHT 0x00020000L
#define SPEAKER_ALL 0x80000000L
/* ACM MPEG layers */
#define ACM_MPEG_LAYER1 0x0001
#define ACM_MPEG_LAYER2 0x0002
#define ACM_MPEG_LAYER3 0x0004
#define ACM_MPEG_STEREO 0x0001
#define ACM_MPEG_JOINTSTEREO 0x0002
#define ACM_MPEG_DUALCHANNEL 0x0004
#define ACM_MPEG_SINGLECHANNEL 0x0008
#define ACM_MPEG_PRIVATEBIT 0x0001
#define ACM_MPEG_COPYRIGHT 0x0002
#define ACM_MPEG_ORIGINALHOME 0x0004
#define ACM_MPEG_PROTECTIONBIT 0x0008
#define ACM_MPEG_ID_MPEG1 0x0010
/* MPEG layer 3 extra bytes */
#define MPEGLAYER3_WFX_EXTRA_BYTES 12
/* MPEG layer 3 identifiers */
#define MPEGLAYER3_ID_UNKNOWN 0
#define MPEGLAYER3_ID_MPEG 1
#define MPEGLAYER3_ID_CONSTANTFRAMESIZE 2
/* MPEG layer 3 flags */
#define MPEGLAYER3_FLAG_PADDING_ISO 0x00000000L
#define MPEGLAYER3_FLAG_PADDING_ON 0x00000001L
#define MPEGLAYER3_FLAG_PADDING_OFF 0x00000002L
/* Windows Media Audio constants */
#define WMAUDIO_BITS_PER_SAMPLE 16
#define WMAUDIO_MAX_CHANNELS 2
#define MSAUDIO1_BITS_PER_SAMPLE WMAUDIO_BITS_PER_SAMPLE
#define MSAUDIO1_MAX_CHANNELS WMAUDIO_MAX_CHANNELS
#define MSAUDIO1_WFX_EXTRA_BYTES 4
#define WMAUDIO2_BITS_PER_SAMPLE WMAUDIO_BITS_PER_SAMPLE
#define WMAUDIO2_MAX_CHANNELS WMAUDIO_MAX_CHANNELS
#define WMAUDIO2_WFX_EXTRA_BYTES 10
#define WMAUDIO3_WFX_EXTRA_BYTES 18
/* Wave filters */
#define WAVE_FILTER_UNKNOWN 0x0000
#define WAVE_FILTER_VOLUME 0x0001
#define WAVE_FILTER_ECHO 0x0002
#define WAVE_FILTER_DEVELOPMENT 0xFFFF
/* Wave RIFF chunks */
#define RIFFWAVE_inst mmioFOURCC( 'i', 'n', 's', 't' )
/* CPPO RIFF chunks */
#define RIFFCPPO mmioFOURCC( 'C', 'P', 'P', 'O' )
#define RIFFCPPO_objr mmioFOURCC( 'o', 'b', 'j', 'r' )
#define RIFFCPPO_obji mmioFOURCC( 'o', 'b', 'j', 'i' )
#define RIFFCPPO_clsr mmioFOURCC( 'c', 'l', 's', 'r' )
#define RIFFCPPO_clsi mmioFOURCC( 'c', 'l', 's', 'i' )
#define RIFFCPPO_mbr mmioFOURCC( 'm', 'b', 'r', ' ' )
#define RIFFCPPO_char mmioFOURCC( 'c', 'h', 'a', 'r' )
#define RIFFCPPO_byte mmioFOURCC( 'b', 'y', 't', 'e' )
#define RIFFCPPO_int mmioFOURCC( 'i', 'n', 't', ' ' )
#define RIFFCPPO_word mmioFOURCC( 'w', 'o', 'r', 'd' )
#define RIFFCPPO_long mmioFOURCC( 'l', 'o', 'n', 'g' )
#define RIFFCPPO_dwrd mmioFOURCC( 'd', 'w', 'r', 'd' )
#define RIFFCPPO_flt mmioFOURCC( 'f', 'l', 't', ' ' )
#define RIFFCPPO_dbl mmioFOURCC( 'd', 'b', 'l', ' ' )
#define RIFFCPPO_str mmioFOURCC( 's', 't', 'r', ' ' )
/* Bitmap compression types */
#define BICOMP_IBMULTIMOTION mmioFOURCC( 'U', 'L', 'T', 'I' )
#define BICOMP_IBMPHOTOMOTION mmioFOURCC( 'P', 'H', 'M', 'O' )
#define BICOMP_CREATIVEYUV mmioFOURCC( 'c', 'y', 'u', 'v' )
#define JPEG_DIB mmioFOURCC( 'J', 'P', 'E', 'G' )
#define MJPG_DIB mmioFOURCC( 'M', 'J', 'P', 'G' )
/* JPEG process baseline */
#define JPEG_PROCESS_BASELINE 0
/* AVI file format flags */
#define AVIIF_CONTROLFRAME 0x00000200L
/* JPEG Interchange Format markers */
#define JIFMK_00 0xFF00
#define JIFMK_TEM 0xFF01
#define JIFMK_RES 0xFF02
#define JIFMK_SOF0 0xFFC0
#define JIFMK_SOF1 0xFFC1
#define JIFMK_SOF2 0xFFC2
#define JIFMK_SOF3 0xFFC3
#define JIFMK_DHT 0xFFC4
#define JIFMK_SOF5 0xFFC5
#define JIFMK_SOF6 0xFFC6
#define JIFMK_SOF7 0xFFC7
#define JIFMK_JPG 0xFFC8
#define JIFMK_SOF9 0xFFC9
#define JIFMK_SOF10 0xFFCA
#define JIFMK_SOF11 0xFFCB
#define JIFMK_DAC 0xFFCC
#define JIFMK_SOF13 0xFFCD
#define JIFMK_SOF14 0xFFCE
#define JIFMK_SOF15 0xFFCF
#define JIFMK_RST0 0xFFD0
#define JIFMK_RST1 0xFFD1
#define JIFMK_RST2 0xFFD2
#define JIFMK_RST3 0xFFD3
#define JIFMK_RST4 0xFFD4
#define JIFMK_RST5 0xFFD5
#define JIFMK_RST6 0xFFD6
#define JIFMK_RST7 0xFFD7
#define JIFMK_SOI 0xFFD8
#define JIFMK_EOI 0xFFD9
#define JIFMK_SOS 0xFFDA
#define JIFMK_DQT 0xFFDB
#define JIFMK_DNL 0xFFDC
#define JIFMK_DRI 0xFFDD
#define JIFMK_DHP 0xFFDE
#define JIFMK_EXP 0xFFDF
#define JIFMK_APP0 0xFFE0
#define JIFMK_APP1 0xFFE1
#define JIFMK_APP2 0xFFE2
#define JIFMK_APP3 0xFFE3
#define JIFMK_APP4 0xFFE4
#define JIFMK_APP5 0xFFE5
#define JIFMK_APP6 0xFFE6
#define JIFMK_APP7 0xFFE7
#define JIFMK_JPG0 0xFFF0
#define JIFMK_JPG1 0xFFF1
#define JIFMK_JPG2 0xFFF2
#define JIFMK_JPG3 0xFFF3
#define JIFMK_JPG4 0xFFF4
#define JIFMK_JPG5 0xFFF5
#define JIFMK_JPG6 0xFFF6
#define JIFMK_JPG7 0xFFF7
#define JIFMK_JPG8 0xFFF8
#define JIFMK_JPG9 0xFFF9
#define JIFMK_JPG10 0xFFFA
#define JIFMK_JPG11 0xFFFB
#define JIFMK_JPG12 0xFFFC
#define JIFMK_JPG13 0xFFFD
#define JIFMK_COM 0xFFFE
#define JIFMK_FF 0xFFFF
/* JPEG color space identifiers */
#define JPEG_Y 1
#define JPEG_YCbCr 2
#define JPEG_RGB 3
/* IC types */
#define ICTYPE_VIDEO mmioFOURCC( 'v', 'i', 'd', 'c' )
#define ICTYPE_AUDIO mmioFOURCC( 'a', 'u', 'd', 'c' )
/* RDSP file format */
#define FOURCC_RDSP mmioFOURCC( 'R', 'D', 'S', 'P' )
/* Additional mixer control types */
#define MIXERCONTROL_CONTROLTYPE_SRS_MTS \
(MIXERCONTROL_CONTROLTYPE_BOOLEAN + 6)
#define MIXERCONTROL_CONTROLTYPE_SRS_ONOFF \
(MIXERCONTROL_CONTROLTYPE_BOOLEAN + 7)
#define MIXERCONTROL_CONTROLTYPE_SRS_SYNTHSELECT \
(MIXERCONTROL_CONTROLTYPE_BOOLEAN + 8 )
/* Extensible wave format */
typedef struct {
WAVEFORMATEX Format;
union {
WORD wValidBitsPerSample;
WORD wSamplesPerBlock;
WORD wReserved;
} Samples;
DWORD dwChannelMask;
GUID SubFormat;
} WAVEFORMATEXTENSIBLE;
typedef WAVEFORMATEXTENSIBLE *PWAVEFORMATEXTENSIBLE;
typedef WAVEFORMATEXTENSIBLE WAVEFORMATPCMEX;
typedef WAVEFORMATPCMEX *PWAVEFORMATPCMEX;
typedef WAVEFORMATPCMEX *NPWAVEFORMATPCMEX;
typedef WAVEFORMATPCMEX *LPWAVEFORMATPCMEX;
typedef WAVEFORMATEXTENSIBLE WAVEFORMATIEEEFLOATEX;
typedef WAVEFORMATIEEEFLOATEX *PWAVEFORMATIEEEFLOATEX;
typedef WAVEFORMATIEEEFLOATEX *NPWAVEFORMATIEEEFLOATEX;
typedef WAVEFORMATIEEEFLOATEX *LPWAVEFORMATIEEEFLOATEX;
/* ADPCM COEF */
typedef struct adpcmcoef_tag {
short iCoef1;
short iCoef2;
} ADPCMCOEFSET;
typedef ADPCMCOEFSET *PADPCMCOEFSET;
typedef ADPCMCOEFSET *NPADPCMCOEFSET;
typedef ADPCMCOEFSET *LPADPCMCOEFSET;
/* ADPCM wave format */
typedef struct adpcmwaveformat_tag {
WAVEFORMATEX wfx;
WORD wSamplesPerBlock;
WORD wNumCoef;
ADPCMCOEFSET aCoef[1];
} ADPCMWAVEFORMAT;
typedef ADPCMWAVEFORMAT *PADPCMWAVEFORMAT;
typedef ADPCMWAVEFORMAT *NPADPCMWAVEFORMAT;
typedef ADPCMWAVEFORMAT *LPADPCMWAVEFORMAT;
/* DRM wave format */
typedef struct drmwaveformat_tag {
WAVEFORMATEX wfx;
WORD wReserved;
ULONG ulContentId;
WAVEFORMATEX wfxSecure;
} DRMWAVEFORMAT;
typedef DRMWAVEFORMAT *PDRMWAVEFORMAT;
typedef DRMWAVEFORMAT *NPDRMWAVEFORMAT;
typedef DRMWAVEFORMAT *LPDRMWAVEFORMAT;
/* DVI ADPCM wave format */
typedef struct dvi_adpcmwaveformat_tag {
WAVEFORMATEX wfx;
WORD wSamplesPerBlock;
} DVIADPCMWAVEFORMAT;
typedef DVIADPCMWAVEFORMAT *PDVIADPCMWAVEFORMAT;
typedef DVIADPCMWAVEFORMAT *NPDVIADPCMWAVEFORMAT;
typedef DVIADPCMWAVEFORMAT *LPDVIADPCMWAVEFORMAT;
/* IMA ADPCM wave format */
typedef struct ima_adpcmwaveformat_tag {
WAVEFORMATEX wfx;
WORD wSamplesPerBlock;
} IMAADPCMWAVEFORMAT;
typedef IMAADPCMWAVEFORMAT *PIMAADPCMWAVEFORMAT;
typedef IMAADPCMWAVEFORMAT *NPIMAADPCMWAVEFORMAT;
typedef IMAADPCMWAVEFORMAT *LPIMAADPCMWAVEFORMAT;
/* Media space ADPCM wave format */
typedef struct mediaspace_adpcmwaveformat_tag {
WAVEFORMATEX wfx;
WORD wRevision;
} MEDIASPACEADPCMWAVEFORMAT;
typedef MEDIASPACEADPCMWAVEFORMAT *PMEDIASPACEADPCMWAVEFORMAT;
typedef MEDIASPACEADPCMWAVEFORMAT *NPMEDIASPACEADPCMWAVEFORMAT;
typedef MEDIASPACEADPCMWAVEFORMAT *LPMEDIASPACEADPCMWAVEFORMAT;
/* Sierra ADPCM wave format */
typedef struct sierra_adpcmwaveformat_tag {
WAVEFORMATEX wfx;
WORD wRevision;
} SIERRAADPCMWAVEFORMAT;
typedef SIERRAADPCMWAVEFORMAT *PSIERRAADPCMWAVEFORMAT;
typedef SIERRAADPCMWAVEFORMAT *NPSIERRAADPCMWAVEFORMAT;
typedef SIERRAADPCMWAVEFORMAT *LPSIERRAADPCMWAVEFORMAT;
/* G723 ADPCM wave format */
typedef struct g723_adpcmwaveformat_tag {
WAVEFORMATEX wfx;
WORD cbExtraSize;
WORD nAuxBlockSize;
} G723_ADPCMWAVEFORMAT;
typedef G723_ADPCMWAVEFORMAT *PG723_ADPCMWAVEFORMAT;
typedef G723_ADPCMWAVEFORMAT *NPG723_ADPCMWAVEFORMAT;
typedef G723_ADPCMWAVEFORMAT *LPG723_ADPCMWAVEFORMAT;
/* Digital standard wave format */
typedef struct digistdwaveformat_tag {
WAVEFORMATEX wfx;
} DIGISTDWAVEFORMAT;
typedef DIGISTDWAVEFORMAT *PDIGISTDWAVEFORMAT;
typedef DIGISTDWAVEFORMAT *NPDIGISTDWAVEFORMAT;
typedef DIGISTDWAVEFORMAT *LPDIGISTDWAVEFORMAT;
/* Digital fix wave format */
typedef struct digifixwaveformat_tag {
WAVEFORMATEX wfx;
} DIGIFIXWAVEFORMAT;
typedef DIGIFIXWAVEFORMAT *PDIGIFIXWAVEFORMAT;
typedef DIGIFIXWAVEFORMAT *NPDIGIFIXWAVEFORMAT;
typedef DIGIFIXWAVEFORMAT *LPDIGIFIXWAVEFORMAT;
/* Creative fast speech wave format */
typedef struct creative_fastspeechformat_tag {
WAVEFORMATEX ewf;
} DIALOGICOKIADPCMWAVEFORMAT;
typedef DIALOGICOKIADPCMWAVEFORMAT *PDIALOGICOKIADPCMWAVEFORMAT;
typedef DIALOGICOKIADPCMWAVEFORMAT *NPDIALOGICOKIADPCMWAVEFORMAT;
typedef DIALOGICOKIADPCMWAVEFORMAT *LPDIALOGICOKIADPCMWAVEFORMAT;
/* Yamaha ADPCM wave format */
typedef struct yamaha_adpcmwaveformat_tag {
WAVEFORMATEX wfx;
} YAMAHA_ADPCMWAVEFORMAT;
typedef YAMAHA_ADPCMWAVEFORMAT *PYAMAHA_ADPCMWAVEFORMAT;
typedef YAMAHA_ADPCMWAVEFORMAT *NPYAMAHA_ADPCMWAVEFORMAT;
typedef YAMAHA_ADPCMWAVEFORMAT *LPYAMAHA_ADPCMWAVEFORMAT;
/* Sonarc wave format */
typedef struct sonarcwaveformat_tag {
WAVEFORMATEX wfx;
WORD wCompType;
} SONARCWAVEFORMAT;
typedef SONARCWAVEFORMAT *PSONARCWAVEFORMAT;
typedef SONARCWAVEFORMAT *NPSONARCWAVEFORMAT;
typedef SONARCWAVEFORMAT *LPSONARCWAVEFORMAT;
/* True speech wave format */
typedef struct truespeechwaveformat_tag {
WAVEFORMATEX wfx;
WORD wRevision;
WORD nSamplesPerBlock;
BYTE abReserved[28];
} TRUESPEECHWAVEFORMAT;
typedef TRUESPEECHWAVEFORMAT *PTRUESPEECHWAVEFORMAT;
typedef TRUESPEECHWAVEFORMAT *NPTRUESPEECHWAVEFORMAT;
typedef TRUESPEECHWAVEFORMAT *LPTRUESPEECHWAVEFORMAT;
/* Echo Speech Corporation wave format */
typedef struct echosc1waveformat_tag {
WAVEFORMATEX wfx;
} ECHOSC1WAVEFORMAT;
typedef ECHOSC1WAVEFORMAT *PECHOSC1WAVEFORMAT;
typedef ECHOSC1WAVEFORMAT *NPECHOSC1WAVEFORMAT;
typedef ECHOSC1WAVEFORMAT *LPECHOSC1WAVEFORMAT;
/* Audiofile AF36 wave format */
typedef struct audiofile_af36waveformat_tag {
WAVEFORMATEX wfx;
} AUDIOFILE_AF36WAVEFORMAT;
typedef AUDIOFILE_AF36WAVEFORMAT *PAUDIOFILE_AF36WAVEFORMAT;
typedef AUDIOFILE_AF36WAVEFORMAT *NPAUDIOFILE_AF36WAVEFORMAT;
typedef AUDIOFILE_AF36WAVEFORMAT *LPAUDIOFILE_AF36WAVEFORMAT;
/* Audio Processing Technology wave format */
typedef struct aptxwaveformat_tag {
WAVEFORMATEX wfx;
} APTXWAVEFORMAT;
typedef APTXWAVEFORMAT *PAPTXWAVEFORMAT;
typedef APTXWAVEFORMAT *NPAPTXWAVEFORMAT;
typedef APTXWAVEFORMAT *LPAPTXWAVEFORMAT;
/* Audiofile AF10 wave format */
typedef struct audiofile_af10waveformat_tag {
WAVEFORMATEX wfx;
} AUDIOFILE_AF10WAVEFORMAT;
typedef AUDIOFILE_AF10WAVEFORMAT *PAUDIOFILE_AF10WAVEFORMAT;
typedef AUDIOFILE_AF10WAVEFORMAT *NPAUDIOFILE_AF10WAVEFORMAT;
typedef AUDIOFILE_AF10WAVEFORMAT *LPAUDIOFILE_AF10WAVEFORMAT;
/* Dolby AC2 wave format */
typedef struct dolbyac2waveformat_tag {
WAVEFORMATEX wfx;
WORD nAuxBitsCode;
} DOLBYAC2WAVEFORMAT;
/* GSM610 wave format */
typedef struct gsm610waveformat_tag {
WAVEFORMATEX wfx;
WORD wSamplesPerBlock;
} GSM610WAVEFORMAT;
typedef GSM610WAVEFORMAT *PGSM610WAVEFORMAT;
typedef GSM610WAVEFORMAT *NPGSM610WAVEFORMAT;
typedef GSM610WAVEFORMAT *LPGSM610WAVEFORMAT;
/* Antex Electronics Corporation wave format */
typedef struct adpcmewaveformat_tag {
WAVEFORMATEX wfx;
WORD wSamplesPerBlock;
} ADPCMEWAVEFORMAT;
typedef ADPCMEWAVEFORMAT *PADPCMEWAVEFORMAT;
typedef ADPCMEWAVEFORMAT *NPADPCMEWAVEFORMAT;
typedef ADPCMEWAVEFORMAT *LPADPCMEWAVEFORMAT;
/* Control Resources Limited wave format */
typedef struct contres_vqlpcwaveformat_tag {
WAVEFORMATEX wfx;
WORD wSamplesPerBlock;
} CONTRESVQLPCWAVEFORMAT;
typedef CONTRESVQLPCWAVEFORMAT *PCONTRESVQLPCWAVEFORMAT;
typedef CONTRESVQLPCWAVEFORMAT *NPCONTRESVQLPCWAVEFORMAT;
typedef CONTRESVQLPCWAVEFORMAT *LPCONTRESVQLPCWAVEFORMAT;
/* Digireal wave format */
typedef struct digirealwaveformat_tag {
WAVEFORMATEX wfx;
WORD wSamplesPerBlock;
} DIGIREALWAVEFORMAT;
typedef DIGIREALWAVEFORMAT *PDIGIREALWAVEFORMAT;
typedef DIGIREALWAVEFORMAT *NPDIGIREALWAVEFORMAT;
typedef DIGIREALWAVEFORMAT *LPDIGIREALWAVEFORMAT;
/* DSP Solutions wave format */
typedef struct digiadpcmwaveformat_tag {
WAVEFORMATEX wfx;
WORD wSamplesPerBlock;
} DIGIADPCMWAVEFORMAT;
typedef DIGIADPCMWAVEFORMAT *PDIGIADPCMWAVEFORMAT;
typedef DIGIADPCMWAVEFORMAT *NPDIGIADPCMWAVEFORMAT;
typedef DIGIADPCMWAVEFORMAT *LPDIGIADPCMWAVEFORMAT;
/* Control Resources Limited CR10 wave format */
typedef struct contres_cr10waveformat_tag {
WAVEFORMATEX wfx;
WORD wSamplesPerBlock;
} CONTRESCR10WAVEFORMAT;
typedef CONTRESCR10WAVEFORMAT *PCONTRESCR10WAVEFORMAT;
typedef CONTRESCR10WAVEFORMAT *NPCONTRESCR10WAVEFORMAT;
typedef CONTRESCR10WAVEFORMAT *LPCONTRESCR10WAVEFORMAT;
/* Natural Microsystems wave format */
typedef struct nms_vbxadpcmwaveformat_tag {
WAVEFORMATEX wfx;
WORD wSamplesPerBlock;
} NMS_VBXADPCMWAVEFORMAT;
typedef NMS_VBXADPCMWAVEFORMAT *PNMS_VBXADPCMWAVEFORMAT;
typedef NMS_VBXADPCMWAVEFORMAT *NPNMS_VBXADPCMWAVEFORMAT;
typedef NMS_VBXADPCMWAVEFORMAT *LPNMS_VBXADPCMWAVEFORMAT;
/* G721 ADPCM wave format */
typedef struct g721_adpcmwaveformat_tag {
WAVEFORMATEX wfx;
WORD nAuxBlockSize;
} G721_ADPCMWAVEFORMAT;
typedef G721_ADPCMWAVEFORMAT *PG721_ADPCMWAVEFORMAT;
typedef G721_ADPCMWAVEFORMAT *NPG721_ADPCMWAVEFORMAT;
typedef G721_ADPCMWAVEFORMAT *LPG721_ADPCMWAVEFORMAT;
/* MPEG-1 wave format */
typedef struct mpeg1waveformat_tag {
WAVEFORMATEX wfx;
WORD fwHeadLayer;
DWORD dwHeadBitrate;
WORD fwHeadMode;
WORD fwHeadModeExt;
WORD wHeadEmphasis;
WORD fwHeadFlags;
DWORD dwPTSLow;
DWORD dwPTSHigh;
} MPEG1WAVEFORMAT;
typedef MPEG1WAVEFORMAT *PMPEG1WAVEFORMAT;
typedef MPEG1WAVEFORMAT *NPMPEG1WAVEFORMAT;
typedef MPEG1WAVEFORMAT *LPMPEG1WAVEFORMAT;
/* MPEG layer 3 wave format */
typedef struct mpeglayer3waveformat_tag {
WAVEFORMATEX wfx;
WORD wID;
DWORD fdwFlags;
WORD nBlockSize;
WORD nFramesPerBlock;
WORD nCodecDelay;
} MPEGLAYER3WAVEFORMAT;
typedef MPEGLAYER3WAVEFORMAT *PMPEGLAYER3WAVEFORMAT;
typedef MPEGLAYER3WAVEFORMAT *NPMPEGLAYER3WAVEFORMAT;
typedef MPEGLAYER3WAVEFORMAT *LPMPEGLAYER3WAVEFORMAT;
/* HEAAC wave information */
typedef struct heaacwaveinfo_tag {
WAVEFORMATEX wfx;
WORD wPayloadType;
WORD wAudioProfileLevelIndication;
WORD wStructType;
WORD wReserved1;
DWORD dwReserved2;
} HEAACWAVEINFO;
typedef HEAACWAVEINFO *PHEACCWAVEINFO;
typedef HEAACWAVEINFO *NPHEACCWAVEINFO;
typedef HEAACWAVEINFO *LPHEACCWAVEINFO;
/* HEAAC wave format */
typedef struct heaacwaveformat_tag {
HEAACWAVEINFO wfInfo;
BYTE pbAudioSpecificConfig[1];
} HEAACWAVEFORMAT;
typedef HEAACWAVEFORMAT *PHEAACWAVEFORMAT;
typedef HEAACWAVEFORMAT *NPHEAACWAVEFORMAT;
typedef HEAACWAVEFORMAT *LPHEAACWAVEFORMAT;
/* Windows Media Audio version 1 wave format */
typedef struct msaudio1waveformat_tag {
WAVEFORMATEX wfx;
WORD wSamplesPerBlock;
WORD wEncodeOptions;
} MSAUDIO1WAVEFORMAT;
typedef MSAUDIO1WAVEFORMAT *LPMSAUDIO1WAVEFORMAT;
/* Windows Media Audio version 2 wave format */
typedef struct wmaudio2waveformat_tag {
WAVEFORMATEX wfx;
DWORD dwSamplesPerBlock;
WORD wEncodeOptions;
DWORD dwSuperBlockAlign;
} WMAUDIO2WAVEFORMAT;
typedef WMAUDIO2WAVEFORMAT *LPWMAUDIO2WAVEFORMAT;
/* Windows Media Audio version 3 wave format */
typedef struct wmaudio3waveformat_tag {
WAVEFORMATEX wfx;
WORD wValidBitsPerSample;
DWORD dwChannelMask;
DWORD dwReserved1;
DWORD dwReserved2;
WORD wEncodeOptions;
WORD wReserved3;
} WMAUDIO3WAVEFORMAT;
typedef WMAUDIO3WAVEFORMAT *LPWMAUDIO3WAVEFORMAT;
/* Creative ADPCM wave format */
typedef struct creative_adpcmwaveformat_tag {
WAVEFORMATEX wfx;
WORD wRevision;
} CREATIVEADPCMWAVEFORMAT;
typedef CREATIVEADPCMWAVEFORMAT *PCREATIVEADPCMWAVEFORMAT;
typedef CREATIVEADPCMWAVEFORMAT *NPCREATIVEADPCMWAVEFORMAT;
typedef CREATIVEADPCMWAVEFORMAT *LPCREATIVEADPCMWAVEFORMAT;
/* Creative fast speech version 8 wave format */
typedef struct creative_fastspeech8format_tag {
WAVEFORMATEX wfx;
WORD wRevision;
} CREATIVEFASTSPEECH8WAVEFORMAT;
typedef CREATIVEFASTSPEECH8WAVEFORMAT *PCREATIVEFASTSPEECH8WAVEFORMAT;
typedef CREATIVEFASTSPEECH8WAVEFORMAT *NPCREATIVEFASTSPEECH8WAVEFORMAT;
typedef CREATIVEFASTSPEECH8WAVEFORMAT *LPCREATIVEFASTSPEECH8WAVEFORMAT;
/* Creative fast speech version 10 wave format */
typedef struct creative_fastspeech10format_tag {
WAVEFORMATEX wfx;
WORD wRevision;
} CREATIVEFASTSPEECH10WAVEFORMAT;
typedef CREATIVEFASTSPEECH10WAVEFORMAT *PCREATIVEFASTSPEECH10WAVEFORMAT;
typedef CREATIVEFASTSPEECH10WAVEFORMAT *NPCREATIVEFASTSPEECH10WAVEFORMAT;
typedef CREATIVEFASTSPEECH10WAVEFORMAT *LPCREATIVEFASTSPEECH10WAVEFORMAT;
/* FM Towns SND wave format */
typedef struct fmtowns_snd_waveformat_tag {
WAVEFORMATEX wfx;
WORD wRevision;
} FMTOWNS_SND_WAVEFORMAT;
typedef FMTOWNS_SND_WAVEFORMAT *PFMTOWNS_SND_WAVEFORMAT;
typedef FMTOWNS_SND_WAVEFORMAT *NPFMTOWNS_SND_WAVEFORMAT;
typedef FMTOWNS_SND_WAVEFORMAT *LPFMTOWNS_SND_WAVEFORMAT;
/* Olivetti GSM wave format */
typedef struct oligsmwaveformat_tag {
WAVEFORMATEX wfx;
} OLIGSMWAVEFORMAT;
typedef OLIGSMWAVEFORMAT *POLIGSMWAVEFORMAT;
typedef OLIGSMWAVEFORMAT *NPOLIGSMWAVEFORMAT;
typedef OLIGSMWAVEFORMAT *LPOLIGSMWAVEFORMAT;
/* Olivetti ADPCM wave format */
typedef struct oliadpcmwaveformat_tag {
WAVEFORMATEX wfx;
} OLIADPCMWAVEFORMAT;
typedef OLIADPCMWAVEFORMAT *POLIADPCMWAVEFORMAT;
typedef OLIADPCMWAVEFORMAT *NPOLIADPCMWAVEFORMAT;
typedef OLIADPCMWAVEFORMAT *LPOLIADPCMWAVEFORMAT;
/* Olivetti CELP wave format */
typedef struct olicelpwaveformat_tag {
WAVEFORMATEX wfx;
} OLICELPWAVEFORMAT;
typedef OLICELPWAVEFORMAT *POLICELPWAVEFORMAT;
typedef OLICELPWAVEFORMAT *NPOLICELPWAVEFORMAT;
typedef OLICELPWAVEFORMAT *LPOLICELPWAVEFORMAT;
/* Olivetti SBC wave format */
typedef struct olisbcwaveformat_tag {
WAVEFORMATEX wfx;
} OLISBCWAVEFORMAT;
typedef OLISBCWAVEFORMAT *POLISBCWAVEFORMAT;
typedef OLISBCWAVEFORMAT *NPOLISBCWAVEFORMAT;
typedef OLISBCWAVEFORMAT *LPOLISBCWAVEFORMAT;
/* Olivetti OPR wave format */
typedef struct olioprwaveformat_tag {
WAVEFORMATEX wfx;
} OLIOPRWAVEFORMAT;
typedef OLIOPRWAVEFORMAT *POLIOPRWAVEFORMAT;
typedef OLIOPRWAVEFORMAT *NPOLIOPRWAVEFORMAT;
typedef OLIOPRWAVEFORMAT *LPOLIOPRWAVEFORMAT;
/* Crystal Semiconductor IMA ADPCM wave format */
typedef struct csimaadpcmwaveformat_tag {
WAVEFORMATEX wfx;
} CSIMAADPCMWAVEFORMAT;
typedef CSIMAADPCMWAVEFORMAT *PCSIMAADPCMWAVEFORMAT;
typedef CSIMAADPCMWAVEFORMAT *NPCSIMAADPCMWAVEFORMAT;
typedef CSIMAADPCMWAVEFORMAT *LPCSIMAADPCMWAVEFORMAT;
/* Wave filter */
typedef struct wavefilter_tag {
DWORD cbStruct;
DWORD dwFilterTag;
DWORD fdwFilter;
DWORD dwReserved[5];
} WAVEFILTER;
typedef WAVEFILTER *PWAVEFILTER;
typedef WAVEFILTER *NPWAVEFILTER;
typedef WAVEFILTER *LPWAVEFILTER;
/* Volume wave filter */
typedef struct wavefilter_volume_tag {
WAVEFILTER wfltr;
DWORD dwVolume;
} VOLUMEWAVEFILTER;
typedef VOLUMEWAVEFILTER *PVOLUMEWAVEFILTER;
typedef VOLUMEWAVEFILTER *NPVOLUMEWAVEFILTER;
typedef VOLUMEWAVEFILTER *LPVOLUMEWAVEFILTER;
/* Echo wave filter */
typedef struct wavefilter_echo_tag {
WAVEFILTER wfltr;
DWORD dwVolume;
DWORD dwDelay;
} ECHOWAVEFILTER;
typedef ECHOWAVEFILTER *PECHOWAVEFILTER;
typedef ECHOWAVEFILTER *NPECHOWAVEFILTER;
typedef ECHOWAVEFILTER *LPECHOWAVEFILTER;
/* Wave RIFF "inst" chunk */
typedef struct tag_s_RIFFWAVE_inst {
BYTE bUnshiftedNote;
char cbFineTune;
char cbGain;
BYTE bLowNote;
BYTE bHighNote;
BYTE bLowVelocity;
BYTE bHighVelocity;
} s_RIFFWAVE_inst;
/* Extended bitmap information header */
typedef struct tagEXBMINFOHEADER {
BITMAPINFOHEADER bmi;
DWORD biExtDataOffset;
} EXBMINFOHEADER;
/* JPEG information header */
typedef struct tagJPEGINFOHEADER {
DWORD JPEGSize;
DWORD JPEGProcess;
DWORD JPEGColorSpaceID;
DWORD JPEGBitsPerSample;
DWORD JPEGHSubSampling;
DWORD JPEGVSubSampling;
} JPEGINFOHEADER;
#ifdef __cplusplus
} /* extern "C" */
#endif
#endif /* _INC_MMREG */