/*
   mmrdef.h

   Base definitions

   Copyright (C) 1996 Free Software Foundation, Inc.

   This file is part of the Windows32 API Library.

   This library is free software; you can redistribute it and/or
   modify it under the terms of the GNU Library General Public
   License as published by the Free Software Foundation; either
   version 2 of the License, or (at your option) any later version.

   This library is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Library General Public License for more details.

   If you are interested in a warranty or support for this source code,
   contact Scott Christley <scottc@net-community.com> for more information.

   You should have received a copy of the GNU Library General Public
   License along with this library; see the file COPYING.LIB.
   If not, write to the Free Software Foundation,
   59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

   -----------
   DAL 2003 - this file modified extensively for my compiler.  New
   definitionswnwn added as well.
*/
#define ACM_MPEG_COPYRIGHT (2)
#define ACM_MPEG_DUALCHANNEL (4)
#define ACM_MPEG_ID_MPEG1 (16)
#define ACM_MPEG_JOINTSTEREO (2)
#define ACM_MPEG_LAYER1 (1)
#define ACM_MPEG_LAYER2 (2)
#define ACM_MPEG_LAYER3 (4)
#define ACM_MPEG_ORIGINALHOME (4)
#define ACM_MPEG_PRIVATEBIT (1)
#define ACM_MPEG_PROTECTIONBIT (8)
#define ACM_MPEG_SINGLECHANNEL (8)
#define ACM_MPEG_STEREO (1)

#define AVIIF_CONTROLFRAME (512)

#define BICOMP_CREATIVEYUV mmioFOURCC('c', 'y', 'u', 'v')
#define BICOMP_IBMPHOTOMOTION mmioFOURCC('P', 'H', 'M', 'O')
#define BICOMP_IBMULTIMOTION mmioFOURCC('U', 'L', 'T', 'I')

#define BI_BITFIELDS (3L)

#define FOURCC_RDSP mmioFOURCC('R', 'D', 'S', 'P')

#define ICTYPE_AUDIO mmioFOURCC('a', 'u', 'd', 'c')
#define ICTYPE_VIDEO mmioFOURCC('v', 'i', 'd', 'c')

#define JIFMK_00 (65280)
#define JIFMK_APP0 (65504)
#define JIFMK_APP1 (65505)
#define JIFMK_APP2 (65506)
#define JIFMK_APP3 (65507)
#define JIFMK_APP4 (65508)
#define JIFMK_APP5 (65509)
#define JIFMK_APP6 (65510)
#define JIFMK_APP7 (65511)
#define JIFMK_COM (65534)
#define JIFMK_DAC (65484)
#define JIFMK_DHP (65502)
#define JIFMK_DHT (65476)
#define JIFMK_DNL (65500)
#define JIFMK_DQT (65499)
#define JIFMK_DRI (65501)
#define JIFMK_EOI (65497)
#define JIFMK_EXP (65503)
#define JIFMK_FF (65535)
#define JIFMK_JPG (65480)
#define JIFMK_JPG0 (65520)
#define JIFMK_JPG1 (65521)
#define JIFMK_JPG10 (65530)
#define JIFMK_JPG11 (65531)
#define JIFMK_JPG12 (65532)
#define JIFMK_JPG13 (65533)
#define JIFMK_JPG2 (65522)
#define JIFMK_JPG3 (65523)
#define JIFMK_JPG4 (65524)
#define JIFMK_JPG5 (65525)
#define JIFMK_JPG6 (65526)
#define JIFMK_JPG7 (65527)
#define JIFMK_JPG8 (65528)
#define JIFMK_JPG9 (65529)
#define JIFMK_RES (65282)
#define JIFMK_RST0 (65488)
#define JIFMK_RST1 (65489)
#define JIFMK_RST2 (65490)
#define JIFMK_RST3 (65491)
#define JIFMK_RST4 (65492)
#define JIFMK_RST5 (65493)
#define JIFMK_RST6 (65494)
#define JIFMK_RST7 (65495)
#define JIFMK_SOF0 (65472)
#define JIFMK_SOF1 (65473)
#define JIFMK_SOF10 (65482)
#define JIFMK_SOF11 (65483)
#define JIFMK_SOF13 (65485)
#define JIFMK_SOF14 (65486)
#define JIFMK_SOF15 (65487)
#define JIFMK_SOF2 (65474)
#define JIFMK_SOF3 (65475)
#define JIFMK_SOF5 (65477)
#define JIFMK_SOF6 (65478)
#define JIFMK_SOF7 (65479)
#define JIFMK_SOF9 (65481)
#define JIFMK_SOI (65496)
#define JIFMK_SOS (65498)
#define JIFMK_TEM (65281)

#define JPEG_DIB mmioFOURCC('J', 'P', 'E', 'G')
#define JPEG_PROCESS_BASELINE (0)
#define JPEG_RGB (3)
#define JPEG_Y (1)
#define JPEG_YCbCr (2)

#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

#define MJPG_DIB mmioFOURCC('M', 'J', 'P', 'G')

#define MM_ADLIB (9)
#define MM_ANTEX (31)
#define MM_APPS (42)
#define MM_APT (56)
#define MM_APT_ACE100CD (1)
#define MM_ARTISOFT (20)
#define MM_ARTISOFT_SBWAVEIN (1)
#define MM_ARTISOFT_SBWAVEOUT (2)
#define MM_AST (64)
#define MM_ATI (27)
#define MM_AUDIOFILE (47)
#define MM_AUDIOPT (74)
#define MM_AURAVISION (80)
#define MM_AZTECH (52)
#define MM_AZTECH_AUX (404)
#define MM_AZTECH_AUX_CD (401)
#define MM_AZTECH_AUX_LINE (402)
#define MM_AZTECH_AUX_MIC (403)
#define MM_AZTECH_DSP16_FMSYNTH (68)
#define MM_AZTECH_DSP16_WAVEIN (65)
#define MM_AZTECH_DSP16_WAVEOUT (66)
#define MM_AZTECH_DSP16_WAVESYNTH (70)
#define MM_AZTECH_FMSYNTH (20)
#define MM_AZTECH_MIDIIN (4)
#define MM_AZTECH_MIDIOUT (3)
#define MM_AZTECH_MIXER (21)
#define MM_AZTECH_NOVA16_MIXER (73)
#define MM_AZTECH_NOVA16_WAVEIN (71)
#define MM_AZTECH_NOVA16_WAVEOUT (72)
#define MM_AZTECH_PRO16_FMSYNTH (38)
#define MM_AZTECH_PRO16_WAVEIN (33)
#define MM_AZTECH_PRO16_WAVEOUT (34)
#define MM_AZTECH_WASH16_MIXER (76)
#define MM_AZTECH_WASH16_WAVEIN (74)
#define MM_AZTECH_WASH16_WAVEOUT (75)
#define MM_AZTECH_WAVEIN (17)
#define MM_AZTECH_WAVEOUT (18)
#define MM_CANOPUS (49)
#define MM_CAT (41)
#define MM_CAT_WAVEOUT (1)
#define MM_CDPC_AUX MM_MEDIAVISION_CDPC + 7
#define MM_CDPC_MIDIIN MM_MEDIAVISION_CDPC + 2
#define MM_CDPC_MIDIOUT MM_MEDIAVISION_CDPC + 1
#define MM_CDPC_MIXER MM_MEDIAVISION_CDPC + 6
#define MM_CDPC_SYNTH MM_MEDIAVISION_CDPC + 3
#define MM_CDPC_WAVEIN MM_MEDIAVISION_CDPC + 5
#define MM_CDPC_WAVEOUT MM_MEDIAVISION_CDPC + 4
#define MM_COMPUSIC (89)
#define MM_COMPUTER_FRIENDS (45)
#define MM_CONTROLRES (84)
#define MM_CREATIVE (2)
#define MM_CREATIVE_AUX_CD (401)
#define MM_CREATIVE_AUX_LINE (402)
#define MM_CREATIVE_AUX_MASTER (404)
#define MM_CREATIVE_AUX_MIC (403)
#define MM_CREATIVE_AUX_MIDI (407)
#define MM_CREATIVE_AUX_PCSPK (405)
#define MM_CREATIVE_AUX_WAVE (406)
#define MM_CREATIVE_FMSYNTH_MONO (301)
#define MM_CREATIVE_FMSYNTH_STEREO (302)
#define MM_CREATIVE_MIDIIN (202)
#define MM_CREATIVE_MIDIOUT (201)
#define MM_CREATIVE_MIDI_AWE32 (303)
#define MM_CREATIVE_SB15_WAVEIN (1)
#define MM_CREATIVE_SB15_WAVEOUT (101)
#define MM_CREATIVE_SB16_MIXER (409)
#define MM_CREATIVE_SB20_WAVEIN (2)
#define MM_CREATIVE_SB20_WAVEOUT (102)
#define MM_CREATIVE_SBP16_WAVEIN (4)
#define MM_CREATIVE_SBP16_WAVEOUT (104)
#define MM_CREATIVE_SBPRO_MIXER (408)
#define MM_CREATIVE_SBPRO_WAVEIN (3)
#define MM_CREATIVE_SBPRO_WAVEOUT (103)
#define MM_DIALOGIC (93)
#define MM_DOLBY (78)
#define MM_DSP_GROUP (43)
#define MM_DSP_GROUP_TRUESPEECH (1)
#define MM_DSP_SOLUTIONS (25)
#define MM_DSP_SOLUTIONS_AUX (4)
#define MM_DSP_SOLUTIONS_SYNTH (3)
#define MM_DSP_SOLUTIONS_WAVEIN (2)
#define MM_DSP_SOLUTIONS_WAVEOUT (1)
#define MM_ECHO (39)
#define MM_ECHO_AUX (6)
#define MM_ECHO_MIDIIN (5)
#define MM_ECHO_MIDIOUT (4)
#define MM_ECHO_SYNTH (1)
#define MM_ECHO_WAVEIN (3)
#define MM_ECHO_WAVEOUT (2)
#define MM_EPSON (50)
#define MM_EPS_FMSND (1)
#define MM_ESS (46)
#define MM_ESS_AMAUX (3)
#define MM_ESS_AMMIDIIN (6)
#define MM_ESS_AMMIDIOUT (5)
#define MM_ESS_AMSYNTH (4)
#define MM_ESS_AMWAVEIN (2)
#define MM_ESS_AMWAVEOUT (1)
#define MM_ESS_AUX_CD (8)
#define MM_ESS_ES1488_MIXER (24)
#define MM_ESS_ES1488_WAVEIN (23)
#define MM_ESS_ES1488_WAVEOUT (22)
#define MM_ESS_ES1688_MIXER (27)
#define MM_ESS_ES1688_WAVEIN (26)
#define MM_ESS_ES1688_WAVEOUT (25)
#define MM_ESS_ES488_MIXER (18)
#define MM_ESS_ES488_WAVEIN (17)
#define MM_ESS_ES488_WAVEOUT (16)
#define MM_ESS_ES688_MIXER (21)
#define MM_ESS_ES688_WAVEIN (20)
#define MM_ESS_ES688_WAVEOUT (19)
#define MM_ESS_MIXER (7)
#define MM_ESS_MPU401_MIDIIN (10)
#define MM_ESS_MPU401_MIDIOUT (9)
#define MM_EVEREX (38)
#define MM_EVEREX_CARRIER (1)
#define MM_EXAN (63)
#define MM_FUJITSU (4)
#define MM_GRAVIS (34)
#define MM_IBM (22)
#define MM_IBM_PCMCIA_AUX (16)
#define MM_IBM_PCMCIA_MIDIIN (14)
#define MM_IBM_PCMCIA_MIDIOUT (15)
#define MM_IBM_PCMCIA_SYNTH (13)
#define MM_IBM_PCMCIA_WAVEIN (11)
#define MM_IBM_PCMCIA_WAVEOUT (12)
#define MM_ICL_PS (32)
#define MM_ICS (57)
#define MM_ICS_WAVEDECK_AUX (4)
#define MM_ICS_WAVEDECK_MIXER (3)
#define MM_ICS_WAVEDECK_SYNTH (5)
#define MM_ICS_WAVEDECK_WAVEIN (2)
#define MM_ICS_WAVEDECK_WAVEOUT (1)
#define MM_INTEL (33)
#define MM_INTELOPD_AUX (401)
#define MM_INTELOPD_WAVEIN (1)
#define MM_INTELOPD_WAVEOUT (101)
#define MM_INTERACTIVE (36)
#define MM_INTERACTIVE_WAVEIN (69)
#define MM_INTERACTIVE_WAVEOUT (69)
#define MM_IOMAGIC (82)
#define MM_IOMAGIC_TEMPO_AUXOUT (6)
#define MM_IOMAGIC_TEMPO_MIDIOUT (4)
#define MM_IOMAGIC_TEMPO_MXDOUT (5)
#define MM_IOMAGIC_TEMPO_SYNTH (3)
#define MM_IOMAGIC_TEMPO_WAVEIN (2)
#define MM_IOMAGIC_TEMPO_WAVEOUT (1)
#define MM_ITERATEDSYS (58)
#define MM_ITERATEDSYS_FUFCODEC (1)
#define MM_KORG (55)
#define MM_KORG_PCIF_MIDIIN (2)
#define MM_KORG_PCIF_MIDIOUT (1)
#define MM_LOGITECH (60)
#define MM_LYRRUS (88)
#define MM_LYRRUS_BRIDGE_GUITAR (1)
#define MM_MATSUSHITA (83)
#define MM_MATSUSHITA_AUX (5)
#define MM_MATSUSHITA_FMSYNTH_STEREO (3)
#define MM_MATSUSHITA_MIXER (4)
#define MM_MATSUSHITA_WAVEIN (1)
#define MM_MATSUSHITA_WAVEOUT (2)
#define MM_MEDIAVISION (3)
#define MM_MEDIAVISION_CDPC (112)
#define MM_MEDIAVISION_OPUS1208 (128)
#define MM_MEDIAVISION_OPUS1216 (144)
#define MM_MEDIAVISION_PROAUDIO (16)
#define MM_MEDIAVISION_PROAUDIO_16 (96)
#define MM_MEDIAVISION_PROAUDIO_PLUS (80)
#define MM_MEDIAVISION_PROSTUDIO_16 (96)
#define MM_MEDIAVISION_THUNDER (32)
#define MM_MEDIAVISION_TPORT (64)
#define MM_MELABS (44)
#define MM_MELABS_MIDI2GO (1)
#define MM_METHEUS (59)
#define MM_METHEUS_ZIPPER (1)
#define MM_MICROSOFT (1)
#define MM_MIDI_MAPPER (1)
#define MM_MMOTION_WAVEAUX (1)
#define MM_MMOTION_WAVEIN (3)
#define MM_MMOTION_WAVEOUT (2)
#define MM_MOSCOM (68)
#define MM_MOSCOM_VPC2400 (1)
#define MM_MOTOROLA (48)
#define MM_MPU401_MIDIIN (11)
#define MM_MPU401_MIDIOUT (10)
#define MM_MSFT_ACM_G711 (37)
#define MM_MSFT_ACM_GSM610 (36)
#define MM_MSFT_ACM_IMAADPCM (34)
#define MM_MSFT_ACM_MSADPCM (33)
#define MM_MSFT_ACM_MSFILTER (35)
#define MM_MSFT_ACM_PCM (38)
#define MM_MSFT_GENERIC_AUX_CD (30)
#define MM_MSFT_GENERIC_AUX_LINE (28)
#define MM_MSFT_GENERIC_AUX_MIC (29)
#define MM_MSFT_GENERIC_MIDIIN (25)
#define MM_MSFT_GENERIC_MIDIOUT (26)
#define MM_MSFT_GENERIC_MIDISYNTH (27)
#define MM_MSFT_GENERIC_WAVEIN (23)
#define MM_MSFT_GENERIC_WAVEOUT (24)
#define MM_MSFT_MSACM (32)
#define MM_MSFT_MSOPL_SYNTH (76)
#define MM_MSFT_SB16_AUX_CD (66)
#define MM_MSFT_SB16_AUX_LINE (65)
#define MM_MSFT_SB16_MIDIIN (62)
#define MM_MSFT_SB16_MIDIOUT (63)
#define MM_MSFT_SB16_MIXER (67)
#define MM_MSFT_SB16_SYNTH (64)
#define MM_MSFT_SB16_WAVEIN (60)
#define MM_MSFT_SB16_WAVEOUT (61)
#define MM_MSFT_SBPRO_AUX_CD (74)
#define MM_MSFT_SBPRO_AUX_LINE (73)
#define MM_MSFT_SBPRO_MIDIIN (70)
#define MM_MSFT_SBPRO_MIDIOUT (71)
#define MM_MSFT_SBPRO_MIXER (75)
#define MM_MSFT_SBPRO_SYNTH (72)
#define MM_MSFT_SBPRO_WAVEIN (68)
#define MM_MSFT_SBPRO_WAVEOUT (69)
#define MM_MSFT_WSS_AUX (21)
#define MM_MSFT_WSS_FMSYNTH_STEREO (16)
#define MM_MSFT_WSS_MIXER (17)
#define MM_MSFT_WSS_NT_AUX (59)
#define MM_MSFT_WSS_NT_FMSYNTH_STEREO (57)
#define MM_MSFT_WSS_NT_MIXER (58)
#define MM_MSFT_WSS_NT_WAVEIN (55)
#define MM_MSFT_WSS_NT_WAVEOUT (56)
#define MM_MSFT_WSS_OEM_AUX (22)
#define MM_MSFT_WSS_OEM_FMSYNTH_STEREO (20)
#define MM_MSFT_WSS_OEM_MIXER (31)
#define MM_MSFT_WSS_OEM_WAVEIN (18)
#define MM_MSFT_WSS_OEM_WAVEOUT (19)
#define MM_MSFT_WSS_WAVEIN (14)
#define MM_MSFT_WSS_WAVEOUT (15)
#define MM_NCR (62)
#define MM_NCR_BA_AUX (4)
#define MM_NCR_BA_MIXER (5)
#define MM_NCR_BA_SYNTH (3)
#define MM_NCR_BA_WAVEIN (1)
#define MM_NCR_BA_WAVEOUT (2)
#define MM_NEC (26)
#define MM_NEWMEDIA (86)
#define MM_NEWMEDIA_WAVJAMMER (1)
#define MM_NMS (87)
#define MM_OKI (79)
#define MM_OLIVETTI (81)
#define MM_OLIVETTI_ACM_ADPCM (10)
#define MM_OLIVETTI_ACM_CELP (11)
#define MM_OLIVETTI_ACM_GSM (9)
#define MM_OLIVETTI_ACM_OPR (13)
#define MM_OLIVETTI_ACM_SBC (12)
#define MM_OLIVETTI_AUX (4)
#define MM_OLIVETTI_JOYSTICK (8)
#define MM_OLIVETTI_MIDIIN (5)
#define MM_OLIVETTI_MIDIOUT (6)
#define MM_OLIVETTI_MIXER (3)
#define MM_OLIVETTI_SYNTH (7)
#define MM_OLIVETTI_WAVEIN (1)
#define MM_OLIVETTI_WAVEOUT (2)
#define MM_OPTI (90)
#define MM_OPTI_M16_AUX (7)
#define MM_OPTI_M16_FMSYNTH_STEREO (1)
#define MM_OPTI_M16_MIDIIN (2)
#define MM_OPTI_M16_MIDIOUT (3)
#define MM_OPTI_M16_MIXER (6)
#define MM_OPTI_M16_WAVEIN (4)
#define MM_OPTI_M16_WAVEOUT (5)
#define MM_OPTI_M32_AUX (38)
#define MM_OPTI_M32_MIDIIN (34)
#define MM_OPTI_M32_MIDIOUT (35)
#define MM_OPTI_M32_MIXER (37)
#define MM_OPTI_M32_SYNTH_STEREO (36)
#define MM_OPTI_M32_WAVEIN (32)
#define MM_OPTI_M32_WAVEOUT (33)
#define MM_OPTI_P16_AUX (22)
#define MM_OPTI_P16_FMSYNTH_STEREO (16)
#define MM_OPTI_P16_MIDIIN (17)
#define MM_OPTI_P16_MIDIOUT (18)
#define MM_OPTI_P16_MIXER (21)
#define MM_OPTI_P16_WAVEIN (19)
#define MM_OPTI_P16_WAVEOUT (20)
#define MM_OPUS1208_AUX MM_MEDIAVISION_OPUS1215
#define MM_OPUS1208_MIXER MM_MEDIAVISION_OPUS1214
#define MM_OPUS1208_SYNTH MM_MEDIAVISION_OPUS1211
#define MM_OPUS1208_WAVEIN MM_MEDIAVISION_OPUS1213
#define MM_OPUS1208_WAVEOUT MM_MEDIAVISION_OPUS1212
#define MM_OPUS1216_AUX MM_MEDIAVISION_OPUS1223
#define MM_OPUS1216_MIDIIN MM_MEDIAVISION_OPUS1218
#define MM_OPUS1216_MIDIOUT MM_MEDIAVISION_OPUS1217
#define MM_OPUS1216_MIXER MM_MEDIAVISION_OPUS1222
#define MM_OPUS1216_SYNTH MM_MEDIAVISION_OPUS1219
#define MM_OPUS1216_WAVEIN MM_MEDIAVISION_OPUS1221
#define MM_OPUS1216_WAVEOUT MM_MEDIAVISION_OPUS1220
#define MM_OPUS401_MIDIIN MM_MEDIAVISION_OPUS1210
#define MM_OPUS401_MIDIOUT MM_MEDIAVISION_OPUS1209
#define MM_PCSPEAKER_WAVEOUT (13)
#define MM_PC_JOYSTICK (12)
#define MM_PROAUD_16_AUX MM_MEDIAVISION_PROAUDIO_23
#define MM_PROAUD_16_MIDIIN MM_MEDIAVISION_PROAUDIO_18
#define MM_PROAUD_16_MIDIOUT MM_MEDIAVISION_PROAUDIO_17
#define MM_PROAUD_16_MIXER MM_MEDIAVISION_PROAUDIO_22
#define MM_PROAUD_16_SYNTH MM_MEDIAVISION_PROAUDIO_19
#define MM_PROAUD_16_WAVEIN MM_MEDIAVISION_PROAUDIO_21
#define MM_PROAUD_16_WAVEOUT MM_MEDIAVISION_PROAUDIO_20
#define MM_PROAUD_AUX MM_MEDIAVISION_PROAUDIO + 7
#define MM_PROAUD_MIDIIN MM_MEDIAVISION_PROAUDIO + 2
#define MM_PROAUD_MIDIOUT MM_MEDIAVISION_PROAUDIO + 1
#define MM_PROAUD_MIXER MM_MEDIAVISION_PROAUDIO + 6
#define MM_PROAUD_PLUS_AUX MM_MEDIAVISION_PROAUDIO_PLUS + 7
#define MM_PROAUD_PLUS_MIDIIN MM_MEDIAVISION_PROAUDIO_PLUS + 2
#define MM_PROAUD_PLUS_MIDIOUT MM_MEDIAVISION_PROAUDIO_PLUS + 1
#define MM_PROAUD_PLUS_MIXER MM_MEDIAVISION_PROAUDIO_PLUS + 6
#define MM_PROAUD_PLUS_SYNTH MM_MEDIAVISION_PROAUDIO_PLUS + 3
#define MM_PROAUD_PLUS_WAVEIN MM_MEDIAVISION_PROAUDIO_PLUS + 5
#define MM_PROAUD_PLUS_WAVEOUT MM_MEDIAVISION_PROAUDIO_PLUS + 4
#define MM_PROAUD_SYNTH MM_MEDIAVISION_PROAUDIO + 3
#define MM_PROAUD_WAVEIN MM_MEDIAVISION_PROAUDIO + 5
#define MM_PROAUD_WAVEOUT MM_MEDIAVISION_PROAUDIO + 4
#define MM_ROLAND (24)
#define MM_ROLAND_MPU401_MIDIIN (16)
#define MM_ROLAND_MPU401_MIDIOUT (15)
#define MM_ROLAND_SC7_MIDIIN (22)
#define MM_ROLAND_SC7_MIDIOUT (21)
#define MM_ROLAND_SERIAL_MIDIIN (24)
#define MM_ROLAND_SERIAL_MIDIOUT (23)
#define MM_ROLAND_SMPU_MIDIINA (19)
#define MM_ROLAND_SMPU_MIDIINB (20)
#define MM_ROLAND_SMPU_MIDIOUTA (17)
#define MM_ROLAND_SMPU_MIDIOUTB (18)
#define MM_SCALACS (54)
#define MM_SIERRA (40)
#define MM_SIERRA_ARIA_AUX (25)
#define MM_SIERRA_ARIA_AUX2 (32)
#define MM_SIERRA_ARIA_MIDIIN (21)
#define MM_SIERRA_ARIA_MIDIOUT (20)
#define MM_SIERRA_ARIA_SYNTH (22)
#define MM_SIERRA_ARIA_WAVEIN (24)
#define MM_SIERRA_ARIA_WAVEOUT (23)
#define MM_SILICONSOFT (69)
#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_SOUNDJR2PR_WAVEIN (6)
#define MM_SILICONSOFT_SOUNDJR2PR_WAVEOUT (7)
#define MM_SILICONSOFT_SOUNDJR2_WAVEOUT (5)
#define MM_SILICONSOFT_SOUNDJR3_WAVEOUT (8)
#define MM_SNDBLST_MIDIIN (4)
#define MM_SNDBLST_MIDIOUT (3)
#define MM_SNDBLST_SYNTH (5)
#define MM_SNDBLST_WAVEIN (7)
#define MM_SNDBLST_WAVEOUT (6)
#define MM_SONICFOUNDRY (66)
#define MM_SPEECHCOMP (76)
#define MM_STUDIO_16_AUX MM_MEDIAVISION_PROSTUDIO_23
#define MM_STUDIO_16_MIDIIN MM_MEDIAVISION_PROSTUDIO_18
#define MM_STUDIO_16_MIDIOUT MM_MEDIAVISION_PROSTUDIO_17
#define MM_STUDIO_16_MIXER MM_MEDIAVISION_PROSTUDIO_22
#define MM_STUDIO_16_SYNTH MM_MEDIAVISION_PROSTUDIO_19
#define MM_STUDIO_16_WAVEIN MM_MEDIAVISION_PROSTUDIO_21
#define MM_STUDIO_16_WAVEOUT MM_MEDIAVISION_PROSTUDIO_20
#define MM_SUPERMAC (73)
#define MM_TANDY (29)
#define MM_TANDY_PSSJWAVEIN (9)
#define MM_TANDY_PSSJWAVEOUT (10)
#define MM_TANDY_SENS_MMAMIDIIN (6)
#define MM_TANDY_SENS_MMAMIDIOUT (7)
#define MM_TANDY_SENS_MMAWAVEIN (4)
#define MM_TANDY_SENS_MMAWAVEOUT (5)
#define MM_TANDY_SENS_VISWAVEOUT (8)
#define MM_TANDY_VISBIOSSYNTH (3)
#define MM_TANDY_VISWAVEIN (1)
#define MM_TANDY_VISWAVEOUT (2)
#define MM_THUNDER_AUX MM_MEDIAVISION_THUNDER + 7
#define MM_THUNDER_SYNTH MM_MEDIAVISION_THUNDER + 3
#define MM_THUNDER_WAVEIN MM_MEDIAVISION_THUNDER + 5
#define MM_THUNDER_WAVEOUT MM_MEDIAVISION_THUNDER + 4
#define MM_TPORT_SYNTH MM_MEDIAVISION_TPORT + 3
#define MM_TPORT_WAVEIN MM_MEDIAVISION_TPORT + 2
#define MM_TPORT_WAVEOUT MM_MEDIAVISION_TPORT + 1
#define MM_TRUEVISION (51)
#define MM_TRUEVISION_WAVEIN1 (1)
#define MM_TRUEVISION_WAVEOUT1 (2)
#define MM_TURTLE_BEACH (21)
#define MM_VAL (35)
#define MM_VIDEOLOGIC (53)
#define MM_VIDEOLOGIC_MSWAVEIN (1)
#define MM_VIDEOLOGIC_MSWAVEOUT (2)
#define MM_VITEC (67)
#define MM_VITEC_VMAKER (1)
#define MM_VITEC_VMPRO (2)
#define MM_VOCALTEC (23)
#define MM_VOCALTEC_WAVEIN (2)
#define MM_VOCALTEC_WAVEOUT (1)
#define MM_VOYETRA (30)
#define MM_WANGLABS (28)
#define MM_WANGLABS_WAVEIN1 (1)
#define MM_WANGLABS_WAVEOUT1 (2)
#define MM_WAVE_MAPPER (2)
#define MM_WILLOWPOND (65)
#define MM_WINNOV (61)
#define MM_WINNOV_CAVIAR_CHAMPAGNE (4)
#define MM_WINNOV_CAVIAR_VIDC (3)
#define MM_WINNOV_CAVIAR_WAVEIN (1)
#define MM_WINNOV_CAVIAR_WAVEOUT (2)
#define MM_WINNOV_CAVIAR_YUV8 (5)
#define MM_WSS_SB16_AUX_CD (45)
#define MM_WSS_SB16_AUX_LINE (44)
#define MM_WSS_SB16_MIDIIN (41)
#define MM_WSS_SB16_MIDIOUT (42)
#define MM_WSS_SB16_MIXER (46)
#define MM_WSS_SB16_SYNTH (43)
#define MM_WSS_SB16_WAVEIN (39)
#define MM_WSS_SB16_WAVEOUT (40)
#define MM_WSS_SBPRO_AUX_CD (53)
#define MM_WSS_SBPRO_AUX_LINE (52)
#define MM_WSS_SBPRO_MIDIIN (49)
#define MM_WSS_SBPRO_MIDIOUT (50)
#define MM_WSS_SBPRO_MIXER (54)
#define MM_WSS_SBPRO_SYNTH (51)
#define MM_WSS_SBPRO_WAVEIN (47)
#define MM_WSS_SBPRO_WAVEOUT (48)
#define MM_XEBEC (85)
#define MM_YAMAHA (37)
#define MM_YAMAHA_GSS_AUX (6)
#define MM_YAMAHA_GSS_MIDIIN (5)
#define MM_YAMAHA_GSS_MIDIOUT (4)
#define MM_YAMAHA_GSS_SYNTH (1)
#define MM_YAMAHA_GSS_WAVEIN (3)
#define MM_YAMAHA_GSS_WAVEOUT (2)

#define QDI_DIBTOSCREEN (4)
#define QDI_GETDIBITS (2)
#define QDI_SETDIBITS (1)
#define QDI_STRETCHDIB (8)

#define QUERYDIBSUPPORT (3073)

#define RIFFCPPO mmioFOURCC('C', 'P', 'P', 'O')
#define RIFFCPPO_byte mmioFOURCC('b', 'y', 't', 'e')
#define RIFFCPPO_char mmioFOURCC('c', 'h', 'a', 'r')
#define RIFFCPPO_clsi mmioFOURCC('c', 'l', 's', 'i')
#define RIFFCPPO_clsr mmioFOURCC('c', 'l', 's', 'r')
#define RIFFCPPO_dbl mmioFOURCC('d', 'b', 'l', ' ')
#define RIFFCPPO_dwrd mmioFOURCC('d', 'w', 'r', 'd')
#define RIFFCPPO_flt mmioFOURCC('f', 'l', 't', ' ')
#define RIFFCPPO_int mmioFOURCC('i', 'n', 't', ' ')
#define RIFFCPPO_long mmioFOURCC('l', 'o', 'n', 'g')
#define RIFFCPPO_mbr mmioFOURCC('m', 'b', 'r', ' ')
#define RIFFCPPO_obji mmioFOURCC('o', 'b', 'j', 'i')
#define RIFFCPPO_objr mmioFOURCC('o', 'b', 'j', 'r')
#define RIFFCPPO_str mmioFOURCC('s', 't', 'r', ' ')
#define RIFFCPPO_word mmioFOURCC('w', 'o', 'r', 'd')

#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_IDIT mmioFOURCC('I', 'D', 'I', 'T')
#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_ISMP mmioFOURCC('I', 'S', 'M', '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 RIFFWAVE_inst mmioFOURCC('i', 'n', 's', 't')

#define WAVE_FILTER_DEVELOPMENT (65535)
#define WAVE_FILTER_ECHO (2)
#define WAVE_FILTER_UNKNOWN (0)
#define WAVE_FILTER_VOLUME (1)
#define WAVE_FORMAT_ADPCM (2)
#define WAVE_FORMAT_ALAW (6)
#define WAVE_FORMAT_ANTEX_ADPCME (51)
#define WAVE_FORMAT_APTX (37)
#define WAVE_FORMAT_AUDIOFILE_AF10 (38)
#define WAVE_FORMAT_AUDIOFILE_AF36 (36)
#define WAVE_FORMAT_CONTROL_RES_CR10 (55)
#define WAVE_FORMAT_CONTROL_RES_VQLPC (52)
#define WAVE_FORMAT_CREATIVE_ADPCM (512)
#define WAVE_FORMAT_CREATIVE_FASTSPEECH10 (515)
#define WAVE_FORMAT_CREATIVE_FASTSPEECH8 (514)
#define WAVE_FORMAT_CS_IMAADPCM (57)
#define WAVE_FORMAT_DEVELOPMENT (65535)
#define WAVE_FORMAT_DIALOGIC_OKI_ADPCM (23)
#define WAVE_FORMAT_DIGIADPCM (54)
#define WAVE_FORMAT_DIGIFIX (22)
#define WAVE_FORMAT_DIGIREAL (53)
#define WAVE_FORMAT_DIGISTD (21)
#define WAVE_FORMAT_DOLBY_AC2 (48)
#define WAVE_FORMAT_DSPGROUP_TRUESPEECH (34)
#define WAVE_FORMAT_DVI_ADPCM (17)
#define WAVE_FORMAT_ECHOSC1 (35)
#define WAVE_FORMAT_FM_TOWNS_SND (768)
#define WAVE_FORMAT_G721_ADPCM (64)
#define WAVE_FORMAT_G723_ADPCM (20)
#define WAVE_FORMAT_GSM610 (49)
#define WAVE_FORMAT_IBM_CVSD (5)
#define WAVE_FORMAT_IMA_ADPCM WAVE_FORMAT_DVI_ADPCM
#define WAVE_FORMAT_MEDIASPACE_ADPCM (18)
#define WAVE_FORMAT_MPEG (80)
#define WAVE_FORMAT_MULAW (7)
#define WAVE_FORMAT_NMS_VBXADPCM (56)
#define WAVE_FORMAT_OKI_ADPCM (16)
#define WAVE_FORMAT_OLIADPCM (4097)
#define WAVE_FORMAT_OLICELP (4098)
#define WAVE_FORMAT_OLIGSM (4096)
#define WAVE_FORMAT_OLIOPR (4100)
#define WAVE_FORMAT_OLISBC (4099)
#define WAVE_FORMAT_PCM (1)
#define WAVE_FORMAT_SIERRA_ADPCM (19)
#define WAVE_FORMAT_SONARC (33)
#define WAVE_FORMAT_UNKNOWN (0)
#define WAVE_FORMAT_YAMAHA_ADPCM (32)
