855 lines
29 KiB
C
855 lines
29 KiB
C
/*
|
|
* Declarations for MultiMedia-REGistration
|
|
*
|
|
* Copyright (C) 1999 Eric Pouech
|
|
*
|
|
* This library is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
* License as published by the Free Software Foundation; either
|
|
* version 2.1 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
|
|
* Lesser General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
* License along with this library; if not, write to the Free Software
|
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
|
*/
|
|
|
|
#ifndef __WIDL__
|
|
|
|
#ifndef __WINE_MMREG_H
|
|
#define __WINE_MMREG_H
|
|
|
|
#include <pshpack1.h>
|
|
|
|
/***********************************************************************
|
|
* Defines/Enums
|
|
*/
|
|
|
|
#ifndef _ACM_WAVEFILTER
|
|
#define _ACM_WAVEFILTER
|
|
|
|
#define WAVE_FILTER_UNKNOWN 0x0000
|
|
#define WAVE_FILTER_DEVELOPMENT 0xFFFF
|
|
|
|
typedef struct _WAVEFILTER {
|
|
DWORD cbStruct;
|
|
DWORD dwFilterTag;
|
|
DWORD fdwFilter;
|
|
DWORD dwReserved[5];
|
|
} WAVEFILTER, *PWAVEFILTER, *NPWAVEFILTER, *LPWAVEFILTER;
|
|
#endif /* _ACM_WAVEFILTER */
|
|
|
|
#ifndef WAVE_FILTER_VOLUME
|
|
#define WAVE_FILTER_VOLUME 0x0001
|
|
|
|
typedef struct _WAVEFILTER_VOLUME {
|
|
WAVEFILTER wfltr;
|
|
DWORD dwVolume;
|
|
} VOLUMEWAVEFILTER, *PVOLUMEWAVEFILTER, *NPVOLUMEWAVEFILTER, *LPVOLUMEWAVEFILTER;
|
|
#endif /* WAVE_FILTER_VOLUME */
|
|
|
|
#ifndef WAVE_FILTER_ECHO
|
|
#define WAVE_FILTER_ECHO 0x0002
|
|
|
|
typedef struct WAVEFILTER_ECHO {
|
|
WAVEFILTER wfltr;
|
|
DWORD dwVolume;
|
|
DWORD dwDelay;
|
|
} ECHOWAVEFILTER, *PECHOWAVEFILTER, *NPECHOWAVEFILTER, *LPECHOWAVEFILTER;
|
|
#endif /* WAVEFILTER_ECHO */
|
|
|
|
#ifndef _WAVEFORMATEX_
|
|
#define _WAVEFORMATEX_
|
|
typedef struct _WAVEFORMATEX {
|
|
WORD wFormatTag;
|
|
WORD nChannels;
|
|
DWORD nSamplesPerSec;
|
|
DWORD nAvgBytesPerSec;
|
|
WORD nBlockAlign;
|
|
WORD wBitsPerSample;
|
|
WORD cbSize;
|
|
} WAVEFORMATEX, *PWAVEFORMATEX, *NPWAVEFORMATEX, *LPWAVEFORMATEX;
|
|
#endif /* _WAVEFORMATEX_ */
|
|
|
|
#ifndef WAVE_FORMAT_PCM
|
|
typedef struct waveformat_tag {
|
|
WORD wFormatTag;
|
|
WORD nChannels;
|
|
DWORD nSamplesPerSec;
|
|
DWORD nAvgBytesPerSec;
|
|
WORD nBlockAlign;
|
|
} WAVEFORMAT, *PWAVEFORMAT, *NPWAVEFORMAT, *LPWAVEFORMAT;
|
|
|
|
typedef struct pcmwaveformat_tag {
|
|
WAVEFORMAT wf;
|
|
WORD wBitsPerSample;
|
|
} PCMWAVEFORMAT, *PPCMWAVEFORMAT, *NPPCMWAVEFORMAT, *LPPCMWAVEFORMAT;
|
|
#endif /* WAVE_FORMAT_PCM */
|
|
|
|
/* WAVE form wFormatTag IDs */
|
|
#define WAVE_FORMAT_UNKNOWN 0x0000 /* Microsoft Corporation */
|
|
#ifndef WAVE_FORMAT_PCM
|
|
#define WAVE_FORMAT_PCM 0x0001
|
|
#endif
|
|
#define WAVE_FORMAT_ADPCM 0x0002 /* Microsoft Corporation */
|
|
#define WAVE_FORMAT_IEEE_FLOAT 0x0003 /* Microsoft Corporation */
|
|
#define WAVE_FORMAT_VSELP 0x0004
|
|
#define WAVE_FORMAT_IBM_CVSD 0x0005 /* IBM Corporation */
|
|
#define WAVE_FORMAT_ALAW 0x0006 /* Microsoft Corporation */
|
|
#define WAVE_FORMAT_MULAW 0x0007 /* Microsoft Corporation */
|
|
#define WAVE_FORMAT_DTS 0x0008
|
|
#define WAVE_FORMAT_DRM 0x0009
|
|
#define WAVE_FORMAT_WMAVOICE9 0x000a
|
|
#define WAVE_FORMAT_OKI_ADPCM 0x0010 /* OKI */
|
|
#define WAVE_FORMAT_DVI_ADPCM 0x0011 /* Intel Corporation */
|
|
#define WAVE_FORMAT_IMA_ADPCM (WAVE_FORMAT_DVI_ADPCM) /* Intel Corporation */
|
|
#define WAVE_FORMAT_MEDIASPACE_ADPCM 0x0012 /* Videologic */
|
|
#define WAVE_FORMAT_SIERRA_ADPCM 0x0013 /* Sierra Semiconductor Corp */
|
|
#define WAVE_FORMAT_G723_ADPCM 0x0014 /* Antex Electronics Corporation */
|
|
#define WAVE_FORMAT_DIGISTD 0x0015 /* DSP Solutions, Inc. */
|
|
#define WAVE_FORMAT_DIGIFIX 0x0016 /* DSP Solutions, Inc. */
|
|
#define WAVE_FORMAT_DIALOGIC_OKI_ADPCM 0x0017 /* Dialogic Corporation */
|
|
#define WAVE_FORMAT_MEDIAVISION_ADPCM 0x0018
|
|
#define WAVE_FORMAT_CU_CODEC 0x0019
|
|
#define WAVE_FORMAT_HP_DYN_VOICE 0x001a
|
|
#define WAVE_FORMAT_YAMAHA_ADPCM 0x0020 /* Yamaha Corporation of America */
|
|
#define WAVE_FORMAT_SONARC 0x0021 /* Speech Compression */
|
|
#define WAVE_FORMAT_DSPGROUP_TRUESPEECH 0x0022 /* DSP Group, Inc */
|
|
#define WAVE_FORMAT_ECHOSC1 0x0023 /* Echo Speech Corporation */
|
|
#define WAVE_FORMAT_AUDIOFILE_AF36 0x0024 /* */
|
|
#define WAVE_FORMAT_APTX 0x0025 /* Audio Processing Technology */
|
|
#define WAVE_FORMAT_AUDIOFILE_AF10 0x0026 /* */
|
|
#define WAVE_FORMAT_PROSODY_1612 0x0027
|
|
#define WAVE_FORMAT_LRC 0x0028
|
|
#define WAVE_FORMAT_DOLBY_AC2 0x0030 /* Dolby Laboratories */
|
|
#define WAVE_FORMAT_GSM610 0x0031 /* Microsoft Corporation */
|
|
#define WAVE_FORMAT_MSNAUDIO 0x0032
|
|
#define WAVE_FORMAT_ANTEX_ADPCME 0x0033 /* Antex Electronics Corporation */
|
|
#define WAVE_FORMAT_CONTROL_RES_VQLPC 0x0034 /* Control Resources Limited */
|
|
#define WAVE_FORMAT_DIGIREAL 0x0035 /* DSP Solutions, Inc. */
|
|
#define WAVE_FORMAT_DIGIADPCM 0x0036 /* DSP Solutions, Inc. */
|
|
#define WAVE_FORMAT_CONTROL_RES_CR10 0x0037 /* Control Resources Limited */
|
|
#define WAVE_FORMAT_NMS_VBXADPCM 0x0038 /* Natural MicroSystems */
|
|
#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 /* Antex Electronics Corporation */
|
|
#define WAVE_FORMAT_G728_CELP 0x0041
|
|
#define WAVE_FORMAT_MSG723 0x0042
|
|
#define WAVE_FORMAT_INTEL_G723_1 0x0043
|
|
#define WAVE_FORMAT_INTEL_G729 0x0044
|
|
#define WAVE_FORMAT_SHARP_G726 0x0045
|
|
#define WAVE_FORMAT_MPEG 0x0050 /* Microsoft Corporation */
|
|
#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 0x0066
|
|
#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_VOXWARE_SC3 0x007a
|
|
#define WAVE_FORMAT_VOXWARE_SC3_1 0x007b
|
|
#define WAVE_FORMAT_SOFTSOUND 0x0080
|
|
#define WAVE_FORMAT_VOXWARE_TQ60 0x0081
|
|
#define WAVE_FORMAT_MSRT24 0x0082 /* Microsoft Corporation */
|
|
#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_MULTITUDE_FT_SX20 0x008a
|
|
#define WAVE_FORMAT_INFOCOM_ITS_G721_ADPCM 0x008b
|
|
#define WAVE_FORMAT_CONVEDIA_G729 0x008c
|
|
#define WAVE_FORMAT_CONGRUENCY 0x008d
|
|
#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_RACAL_RECORDER_GSM 0x00a1
|
|
#define WAVE_FORMAT_RACAL_RECORDER_G720_A 0x00a2
|
|
#define WAVE_FORMAT_RACAL_RECORDER_G723_1 0x00a3
|
|
#define WAVE_FORMAT_RACAL_RECORDER_TETRA_ACELP 0x00a4
|
|
#define WAVE_FORMAT_NEC_AAC 0x00b0
|
|
#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_PHILIPS_CELP 0x0120
|
|
#define WAVE_FORMAT_PHILIPS_GRUNDIG 0x0121
|
|
#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_VOICEAGE_AMR 0x0136
|
|
#define WAVE_FORMAT_G726ADPCM 0x0140
|
|
#define WAVE_FORMAT_DICTAPHONE_CELP68 0x0141
|
|
#define WAVE_FORMAT_DICTAPHONE_CELP54 0x0142
|
|
#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_SYCOM_ACM_SYC008 0x0174
|
|
#define WAVE_FORMAT_SYCOM_ACM_SYC701_G726L 0x0175
|
|
#define WAVE_FORMAT_SYCOM_ACM_SYC701_CELP54 0x0176
|
|
#define WAVE_FORMAT_SYCOM_ACM_SYC701_CELP68 0x0177
|
|
#define WAVE_FORMAT_KNOWLEDGE_ADVENTURE_ADPCM 0x0178
|
|
#define WAVE_FORMAT_FRAUNHOFER_IIS_MPEG2_AAC 0x0180
|
|
#define WAVE_FORMAT_DTS_DS 0x0190
|
|
#define WAVE_FORMAT_CREATIVE_ADPCM 0x0200 /* Creative Labs, Inc */
|
|
#define WAVE_FORMAT_CREATIVE_FASTSPEECH8 0x0202 /* Creative Labs, Inc */
|
|
#define WAVE_FORMAT_CREATIVE_FASTSPEECH10 0x0203 /* Creative Labs, Inc */
|
|
#define WAVE_FORMAT_UHER_ADPCM 0x0210
|
|
#define WAVE_FORMAT_ULEAD_DV_AUDIO 0x0215
|
|
#define WAVE_FORMAT_ULEAD_DV_AUDIO_1 0x0216
|
|
#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_SONY_SCY 0x0271
|
|
#define WAVE_FORMAT_SONY_ATRAC3 0x0272
|
|
#define WAVE_FORMAT_SONY_SPC 0x0273
|
|
#define WAVE_FORMAT_TELUM_AUDIO 0x0280
|
|
#define WAVE_FORMAT_TELUM_IA_AUDIO 0x0281
|
|
#define WAVE_FORMAT_NORCOM_VOICE_SYSTEMS_ADPCM 0x0285
|
|
#define WAVE_FORMAT_FM_TOWNS_SND 0x0300 /* Fujitsu Corp. */
|
|
#define WAVE_FORMAT_MICRONAS 0x0350
|
|
#define WAVE_FORMAT_MICRONAS_CELP833 0x0351
|
|
#define WAVE_FORMAT_BTV_DIGITAL 0x0400
|
|
#define WAVE_FORMAT_INTEL_MUSIC_CODER 0x0401
|
|
#define WAVE_FORMAT_INDEO_AUDIO 0x0402
|
|
#define WAVE_FORMAT_QDESIGN_MUSIC 0x0450
|
|
#define WAVE_FORMAT_ON2_VP7_AUDIO 0x0500
|
|
#define WAVE_FORMAT_ON2_VP6_AUDIO 0x0501
|
|
#define WAVE_FORMAT_VME_VMPCM 0x0680
|
|
#define WAVE_FORMAT_TPC 0x0681
|
|
#define WAVE_FORMAT_LIGHTWAVE_LOSSLESS 0x08ae
|
|
#define WAVE_FORMAT_OLIGSM 0x1000 /* Ing C. Olivetti & C., S.p.A. */
|
|
#define WAVE_FORMAT_OLIADPCM 0x1001 /* Ing C. Olivetti & C., S.p.A. */
|
|
#define WAVE_FORMAT_OLICELP 0x1002 /* Ing C. Olivetti & C., S.p.A. */
|
|
#define WAVE_FORMAT_OLISBC 0x1003 /* Ing C. Olivetti & C., S.p.A. */
|
|
#define WAVE_FORMAT_OLIOPR 0x1004 /* Ing C. Olivetti & C., S.p.A. */
|
|
#define WAVE_FORMAT_LH_CODEC 0x1100
|
|
#define WAVE_FORMAT_LH_CODEC_CELP 0x1101
|
|
#define WAVE_FORMAT_LH_CODEC_SBC8 0x1102
|
|
#define WAVE_FORMAT_LH_CODEC_SBC12 0x1103
|
|
#define WAVE_FORMAT_LH_CODEC_SBC16 0x1104
|
|
#define WAVE_FORMAT_NORRIS 0x1400
|
|
#define WAVE_FORMAT_ISIAUDIO_2 0x1401
|
|
#define WAVE_FORMAT_SOUNDSPACE_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_VOXWARE_RT24_SPEECH 0x181c
|
|
#define WAVE_FORMAT_SONICFOUNDRY_LOSSLESS 0x1971
|
|
#define WAVE_FORMAT_INNINGS_TELECOM_ADPCM 0x1979
|
|
#define WAVE_FORMAT_LUCENT_SX8300P 0x1c07
|
|
#define WAVE_FORMAT_LUCENT_SX5363S 0x1c0c
|
|
#define WAVE_FORMAT_CUSEEME 0x1f03
|
|
#define WAVE_FORMAT_NTCSOFT_ALF2CM_ACM 0x1fc4
|
|
#define WAVE_FORMAT_DVM 0x2000
|
|
#define WAVE_FORMAT_DTS2 0x2001
|
|
#define WAVE_FORMAT_MAKEAVIS 0x3313
|
|
#define WAVE_FORMAT_DIVIO_MPEG4_AAC 0x4143
|
|
#define WAVE_FORMAT_NOKIA_ADAPTIVE_MULTIRATE 0x4201
|
|
#define WAVE_FORMAT_DIVIO_G726 0x4243
|
|
#define WAVE_FORMAT_LEAD_SPEECH 0x434c
|
|
#define WAVE_FORMAT_LEAD_VORBIS 0x564c
|
|
#define WAVE_FORMAT_WAVPACK_AUDIO 0x5756
|
|
#define WAVE_FORMAT_ALAC 0x6c61
|
|
#define WAVE_FORMAT_OGG_VORBIS_MODE_1 0x674f
|
|
#define WAVE_FORMAT_OGG_VORBIS_MODE_2 0x6750
|
|
#define WAVE_FORMAT_OGG_VORBIS_MODE_3 0x6751
|
|
#define WAVE_FORMAT_OGG_VORBIS_MODE_1_PLUS 0x676f
|
|
#define WAVE_FORMAT_OGG_VORBIS_MODE_2_PLUS 0x6770
|
|
#define WAVE_FORMAT_OGG_VORBIS_MODE_3_PLUS 0x6771
|
|
#define WAVE_FORMAT_3COM_NBX 0x7000
|
|
#define WAVE_FORMAT_OPUS 0x704f
|
|
#define WAVE_FORMAT_FAAD_AAC 0x706d
|
|
#define WAVE_FORMAT_AMR_NB 0x7361
|
|
#define WAVE_FORMAT_AMR_WB 0x7362
|
|
#define WAVE_FORMAT_AMR_WP 0x7363
|
|
#define WAVE_FORMAT_GSM_AMR_CBR 0x7a21
|
|
#define WAVE_FORMAT_GSM_AMR_VBR_SID 0x7a22
|
|
#define WAVE_FORMAT_COMVERSE_INFOSYS_G723_1 0xa100
|
|
#define WAVE_FORMAT_COMVERSE_INFOSYS_AVQSBC 0xa101
|
|
#define WAVE_FORMAT_COMVERSE_INFOSYS_SBC 0xa102
|
|
#define WAVE_FORMAT_SYMBOL_G729_A 0xa103
|
|
#define WAVE_FORMAT_VOICEAGE_AMR_WB 0xa104
|
|
#define WAVE_FORMAT_INGENIENT_G726 0xa105
|
|
#define WAVE_FORMAT_MPEG4_AAC 0xa106
|
|
#define WAVE_FORMAT_ENCORE_G726 0xa107
|
|
#define WAVE_FORMAT_ZOLL_ASAO 0xa108
|
|
#define WAVE_FORMAT_SPEEX_VOICE 0xa109
|
|
#define WAVE_FORMAT_VIANIX_MASC 0xa10a
|
|
#define WAVE_FORMAT_WM9_SPECTRUM_ANALYZER 0xa10b
|
|
#define WAVE_FORMAT_WMF_SPECTRUM_ANAYZER 0xa10c
|
|
#define WAVE_FORMAT_GSM_610 0xa10d
|
|
#define WAVE_FORMAT_GSM_620 0xa10e
|
|
#define WAVE_FORMAT_GSM_660 0xa10f
|
|
#define WAVE_FORMAT_GSM_690 0xa110
|
|
#define WAVE_FORMAT_GSM_ADAPTIVE_MULTIRATE_WB 0xa111
|
|
#define WAVE_FORMAT_POLYCOM_G722 0xa112
|
|
#define WAVE_FORMAT_POLYCOM_G728 0xa113
|
|
#define WAVE_FORMAT_POLYCOM_G729_A 0xa114
|
|
#define WAVE_FORMAT_POLYCOM_SIREN 0xa115
|
|
#define WAVE_FORMAT_GLOBAL_IP_ILBC 0xa116
|
|
#define WAVE_FORMAT_RADIOTIME_TIME_SHIFT_RADIO 0xa117
|
|
#define WAVE_FORMAT_NICE_ACA 0xa118
|
|
#define WAVE_FORMAT_NICE_ADPCM 0xa119
|
|
#define WAVE_FORMAT_VOCORD_G721 0xa11a
|
|
#define WAVE_FORMAT_VOCORD_G726 0xa11b
|
|
#define WAVE_FORMAT_VOCORD_G722_1 0xa11c
|
|
#define WAVE_FORMAT_VOCORD_G728 0xa11d
|
|
#define WAVE_FORMAT_VOCORD_G729 0xa11e
|
|
#define WAVE_FORMAT_VOCORD_G729_A 0xa11f
|
|
#define WAVE_FORMAT_VOCORD_G723_1 0xa120
|
|
#define WAVE_FORMAT_VOCORD_LBC 0xa121
|
|
#define WAVE_FORMAT_NICE_G728 0xa122
|
|
#define WAVE_FORMAT_FRACE_TELECOM_G729 0xa123
|
|
#define WAVE_FORMAT_CODIAN 0xa124
|
|
#define WAVE_FORMAT_FLAC 0xf1ac
|
|
#if !defined(WAVE_FORMAT_EXTENSIBLE)
|
|
#define WAVE_FORMAT_EXTENSIBLE 0xfffe /* Microsoft */
|
|
#endif
|
|
#define WAVE_FORMAT_DEVELOPMENT (0xffff)
|
|
|
|
|
|
#ifndef MM_MICROSOFT
|
|
#define MM_MICROSOFT 0x01
|
|
#endif
|
|
#define MM_MSFT_ACM_MSADPCM 0x21
|
|
#define MM_MSFT_ACM_IMAADPCM 0x22
|
|
#define MM_MSFT_ACM_GSM610 0x24
|
|
#define MM_MSFT_ACM_G711 0x25
|
|
#define MM_MSFT_ACM_PCM 0x26
|
|
#define MM_MSFT_ACM_WMAUDIO 39
|
|
#define MM_MSFT_ACM_MSAUDIO1 39
|
|
#define MM_MSFT_ACM_WMAUDIO2 101
|
|
|
|
#define MM_FRAUNHOFER_IIS 0xAC
|
|
#define MM_FHGIIS_MPEGLAYER3_DECODE 0x09
|
|
#define MM_FHGIIS_MPEGLAYER3_PROFESSIONAL 0x0d
|
|
|
|
typedef struct adpcmcoef_tag {
|
|
short iCoef1;
|
|
short iCoef2;
|
|
} ADPCMCOEFSET;
|
|
typedef ADPCMCOEFSET *PADPCMCOEFSET,
|
|
*NPADPCMCOEFSET, *LPADPCMCOEFSET;
|
|
|
|
typedef struct adpcmwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wSamplesPerBlock;
|
|
WORD wNumCoef;
|
|
/* FIXME: this should be aCoef[0] */
|
|
ADPCMCOEFSET aCoef[1];
|
|
} ADPCMWAVEFORMAT;
|
|
typedef ADPCMWAVEFORMAT *PADPCMWAVEFORMAT,
|
|
*NPADPCMWAVEFORMAT, *LPADPCMWAVEFORMAT;
|
|
|
|
typedef struct drmwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wReserved;
|
|
ULONG ulContentId;
|
|
WAVEFORMATEX wfxSecure;
|
|
} DRMWAVEFORMAT;
|
|
typedef DRMWAVEFORMAT *PDRMWAVEFORMAT, *NPDRMWAVEFORMAT,
|
|
*LPDRMWAVEFORMAT;
|
|
|
|
typedef struct dvi_adpcmwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wSamplesPerBlock;
|
|
} DVIADPCMWAVEFORMAT;
|
|
typedef DVIADPCMWAVEFORMAT *PDVIADPCMWAVEFORMAT,
|
|
*NPDVIADPCMWAVEFORMAT, *LPDVIADPCMWAVEFORMAT;
|
|
|
|
typedef struct ima_adpcmwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wSamplesPerBlock;
|
|
} IMAADPCMWAVEFORMAT;
|
|
typedef IMAADPCMWAVEFORMAT *PIMAADPCMWAVEFORMAT, *NPIMAADPCMWAVEFORMAT,
|
|
*LPIMAADPCMWAVEFORMAT;
|
|
|
|
typedef struct mediaspace_adpcmwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wRevision;
|
|
} MEDIASPACEADPCMWAVEFORMAT;
|
|
typedef MEDIASPACEADPCMWAVEFORMAT *PMEDIASPACEADPCMWAVEFORMAT,
|
|
*NPMEDIASPACEADPCMWAVEFORMAT, *LPMEDIASPACEADPCMWAVEFORMAT;
|
|
|
|
typedef struct sierra_adpcmwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wRevision;
|
|
} SIERRAADPCMWAVEFORMAT;
|
|
typedef SIERRAADPCMWAVEFORMAT *PSIERRAADPCMWAVEFORMAT,
|
|
*NPSIERRAADPCMWAVEFORMAT, *LPSIERRAADPCMWAVEFORMAT;
|
|
|
|
typedef struct g723_adpcmwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD cbExtraSize;
|
|
WORD nAuxBlockSize;
|
|
} G723_ADPCMWAVEFORMAT;
|
|
typedef G723_ADPCMWAVEFORMAT *PG723_ADPCMWAVEFORMAT,
|
|
*NPG723_ADPCMWAVEFORMAT, *LPG723_ADPCMWAVEFORMAT;
|
|
|
|
typedef struct digistdwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
} DIGISTDWAVEFORMAT;
|
|
typedef DIGISTDWAVEFORMAT *PDIGISTDWAVEFORMAT,
|
|
*NPDIGISTDWAVEFORMAT, *LPDIGISTDWAVEFORMAT;
|
|
|
|
typedef struct digifixwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
} DIGIFIXWAVEFORMAT;
|
|
typedef DIGIFIXWAVEFORMAT *PDIGIFIXWAVEFORMAT,
|
|
*NPDIGIFIXWAVEFORMAT, *LPDIGIFIXWAVEFORMAT;
|
|
|
|
typedef struct creative_fastspeechformat_tag {
|
|
WAVEFORMATEX ewf;
|
|
} DIALOGICOKIADPCMWAVEFORMAT;
|
|
typedef DIALOGICOKIADPCMWAVEFORMAT *PDIALOGICOKIADPCMWAVEFORMAT,
|
|
*NPDIALOGICOKIADPCMWAVEFORMAT, *LPDIALOGICOKIADPCMWAVEFORMAT;
|
|
|
|
typedef struct yamaha_adpmcwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
} YAMAHA_ADPCMWAVEFORMAT;
|
|
typedef YAMAHA_ADPCMWAVEFORMAT *PYAMAHA_ADPCMWAVEFORMAT,
|
|
*NPYAMAHA_ADPCMWAVEFORMAT, *LPYAMAHA_ADPCMWAVEFORMAT;
|
|
|
|
typedef struct sonarcwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wCompType;
|
|
} SONARCWAVEFORMAT;
|
|
typedef SONARCWAVEFORMAT *PSONARCWAVEFORMAT,
|
|
*NPSONARCWAVEFORMAT,*LPSONARCWAVEFORMAT;
|
|
|
|
typedef struct truespeechwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wRevision;
|
|
WORD nSamplesPerBlock;
|
|
BYTE abReserved[28];
|
|
} TRUESPEECHWAVEFORMAT;
|
|
typedef TRUESPEECHWAVEFORMAT *PTRUESPEECHWAVEFORMAT,
|
|
*NPTRUESPEECHWAVEFORMAT, *LPTRUESPEECHWAVEFORMAT;
|
|
|
|
typedef struct echosc1waveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
} ECHOSC1WAVEFORMAT;
|
|
typedef ECHOSC1WAVEFORMAT *PECHOSC1WAVEFORMAT,
|
|
*NPECHOSC1WAVEFORMAT, *LPECHOSC1WAVEFORMAT;
|
|
|
|
typedef struct audiofile_af36waveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
} AUDIOFILE_AF36WAVEFORMAT;
|
|
typedef AUDIOFILE_AF36WAVEFORMAT *PAUDIOFILE_AF36WAVEFORMAT,
|
|
*NPAUDIOFILE_AF36WAVEFORMAT, *LPAUDIOFILE_AF36WAVEFORMAT;
|
|
|
|
typedef struct aptxwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
} APTXWAVEFORMAT;
|
|
typedef APTXWAVEFORMAT *PAPTXWAVEFORMAT,
|
|
*NPAPTXWAVEFORMAT, *LPAPTXWAVEFORMAT;
|
|
|
|
typedef struct audiofile_af10waveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
} AUDIOFILE_AF10WAVEFORMAT;
|
|
typedef AUDIOFILE_AF10WAVEFORMAT *PAUDIOFILE_AF10WAVEFORMAT,
|
|
*NPAUDIOFILE_AF10WAVEFORMAT, *LPAUDIOFILE_AF10WAVEFORMAT;
|
|
|
|
typedef struct dolbyac2waveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD nAuxBitsCode;
|
|
} DOLBYAC2WAVEFORMAT;
|
|
|
|
typedef struct gsm610waveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wSamplesPerBlock;
|
|
} GSM610WAVEFORMAT;
|
|
typedef GSM610WAVEFORMAT *PGSM610WAVEFORMAT,
|
|
*NPGSM610WAVEFORMAT, *LPGSM610WAVEFORMAT;
|
|
|
|
typedef struct adpcmewaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wSamplesPerBlock;
|
|
} ADPCMEWAVEFORMAT;
|
|
typedef ADPCMEWAVEFORMAT *PADPCMEWAVEFORMAT,
|
|
*NPADPCMEWAVEFORMAT, *LPADPCMEWAVEFORMAT;
|
|
|
|
typedef struct contres_vqlpcwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wSamplesPerBlock;
|
|
} CONTRESVQLPCWAVEFORMAT;
|
|
typedef CONTRESVQLPCWAVEFORMAT *PCONTRESVQLPCWAVEFORMAT,
|
|
*NPCONTRESVQLPCWAVEFORMAT, *LPCONTRESVQLPCWAVEFORMAT;
|
|
|
|
typedef struct digirealwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wSamplesPerBlock;
|
|
} DIGIREALWAVEFORMAT;
|
|
typedef DIGIREALWAVEFORMAT *PDIGIREALWAVEFORMAT,
|
|
*NPDIGIREALWAVEFORMAT, *LPDIGIREALWAVEFORMAT;
|
|
|
|
typedef struct digiadpcmmwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wSamplesPerBlock;
|
|
} DIGIADPCMWAVEFORMAT;
|
|
typedef DIGIADPCMWAVEFORMAT *PDIGIADPCMWAVEFORMAT,
|
|
*NPDIGIADPCMWAVEFORMAT, *LPDIGIADPCMWAVEFORMAT;
|
|
|
|
typedef struct contres_cr10waveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wSamplesPerBlock;
|
|
} CONTRESCR10WAVEFORMAT;
|
|
typedef CONTRESCR10WAVEFORMAT *PCONTRESCR10WAVEFORMAT,
|
|
*NPCONTRESCR10WAVEFORMAT, *LPCONTRESCR10WAVEFORMAT;
|
|
|
|
typedef struct nms_vbxadpcmmwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wSamplesPerBlock;
|
|
} NMS_VBXADPCMWAVEFORMAT;
|
|
typedef NMS_VBXADPCMWAVEFORMAT *PNMS_VBXADPCMWAVEFORMAT,
|
|
*NPNMS_VBXADPCMWAVEFORMAT, *LPNMS_VBXADPCMWAVEFORMAT;
|
|
|
|
typedef struct g721_adpcmwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD nAuxBlockSize;
|
|
} G721_ADPCMWAVEFORMAT;
|
|
typedef G721_ADPCMWAVEFORMAT *PG721_ADPCMWAVEFORMAT,
|
|
*NG721_ADPCMWAVEFORMAT, *LPG721_ADPCMWAVEFORMAT;
|
|
|
|
typedef struct creative_adpcmwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wRevision;
|
|
} CREATIVEADPCMWAVEFORMAT;
|
|
typedef CREATIVEADPCMWAVEFORMAT *PCREATIVEADPCMWAVEFORMAT,
|
|
*NPCREATIVEADPCMWAVEFORMAT, *LPCREATIVEADPCMWAVEFORMAT;
|
|
|
|
typedef struct creative_fastspeech8format_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wRevision;
|
|
} CREATIVEFASTSPEECH8WAVEFORMAT;
|
|
typedef CREATIVEFASTSPEECH8WAVEFORMAT *PCREATIVEFASTSPEECH8WAVEFORMAT,
|
|
*NPCREATIVEFASTSPEECH8WAVEFORMAT, *LPCREATIVEFASTSPEECH8WAVEFORMAT;
|
|
|
|
typedef struct creative_fastspeech10format_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wRevision;
|
|
} CREATIVEFASTSPEECH10WAVEFORMAT;
|
|
typedef CREATIVEFASTSPEECH10WAVEFORMAT *PCREATIVEFASTSPEECH10WAVEFORMAT,
|
|
*NPCREATIVEFASTSPEECH10WAVEFORMAT, *LPCREATIVEFASTSPEECH10WAVEFORMAT;
|
|
|
|
typedef struct fmtowns_snd_waveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wRevision;
|
|
} FMTOWNS_SND_WAVEFORMAT;
|
|
typedef FMTOWNS_SND_WAVEFORMAT *PFMTOWNS_SND_WAVEFORMAT,
|
|
*NPFMTOWNS_SND_WAVEFORMAT, *LPFMTOWNS_SND_WAVEFORMAT;
|
|
|
|
typedef struct oligsmwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
} OLIGSMWAVEFORMAT;
|
|
typedef OLIGSMWAVEFORMAT *POLIGSMWAVEFORMAT,
|
|
*NPOLIGSMWAVEFORMAT, *LPOLIGSMWAVEFORMAT;
|
|
|
|
typedef struct oliadpcmwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
} OLIADPCMWAVEFORMAT;
|
|
typedef OLIADPCMWAVEFORMAT *POLIADPCMWAVEFORMAT,
|
|
*NPOLIADPCMWAVEFORMAT, *LPOLIADPCMWAVEFORMAT;
|
|
|
|
typedef struct olicelpwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
} OLICELPWAVEFORMAT;
|
|
typedef OLICELPWAVEFORMAT *POLICELPWAVEFORMAT,
|
|
*NPOLICELPWAVEFORMAT, *LPOLICELPWAVEFORMAT;
|
|
|
|
typedef struct olisbcwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
} OLISBCWAVEFORMAT;
|
|
typedef OLISBCWAVEFORMAT *POLISBCWAVEFORMAT,
|
|
*NPOLISBCWAVEFORMAT, *LPOLISBCWAVEFORMAT;
|
|
|
|
typedef struct olioprwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
} OLIOPRWAVEFORMAT;
|
|
typedef OLIOPRWAVEFORMAT *POLIOPRWAVEFORMAT,
|
|
*NPOLIOPRWAVEFORMAT, *LPOLIOPRWAVEFORMAT;
|
|
|
|
typedef struct csimaadpcmwaveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
} CSIMAADPCMWAVEFORMAT;
|
|
typedef CSIMAADPCMWAVEFORMAT *PCSIMAADPCMWAVEFORMAT,
|
|
*NPCSIMAADPCMWAVEFORMAT, *LPCSIMAADPCMWAVEFORMAT;
|
|
|
|
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,
|
|
*NPMPEG1WAVEFORMAT, *LPMPEG1WAVEFORMAT;
|
|
|
|
#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
|
|
|
|
typedef struct mpeglayer3waveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wID;
|
|
DWORD fdwFlags;
|
|
WORD nBlockSize;
|
|
WORD nFramesPerBlock;
|
|
WORD nCodecDelay;
|
|
} MPEGLAYER3WAVEFORMAT;
|
|
typedef MPEGLAYER3WAVEFORMAT *PMPEGLAYER3WAVEFORMAT,
|
|
*NPMPEGLAYER3WAVEFORMAT, *LPMPEGLAYER3WAVEFORMAT;
|
|
|
|
#define MPEGLAYER3_WFX_EXTRA_BYTES 12
|
|
|
|
#define MPEGLAYER3_ID_UNKNOWN 0
|
|
#define MPEGLAYER3_ID_MPEG 1
|
|
#define MPEGLAYER3_ID_CONSTANTFRAMESIZE 2
|
|
|
|
#define MPEGLAYER3_FLAG_PADDING_ISO 0x00000000
|
|
#define MPEGLAYER3_FLAG_PADDING_ON 0x00000001
|
|
#define MPEGLAYER3_FLAG_PADDING_OFF 0x00000002
|
|
|
|
typedef struct msaudio1waveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wSamplesPerBlock;
|
|
WORD wEncodeOptions;
|
|
} MSAUDIO1WAVEFORMAT, *LPMSAUDIO1WAVEFORMAT;
|
|
|
|
#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 (sizeof(MSAUDIO1WAVEFORMAT) - sizeof(WAVEFORMATEX))
|
|
|
|
typedef struct wmaudio2waveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
DWORD dwSamplesPerBlock;
|
|
WORD wEncodeOptions;
|
|
DWORD dwSuperBlockAlign;
|
|
} WMAUDIO2WAVEFORMAT, *LPWMAUDIO2WAVEFORMAT;
|
|
|
|
#define WMAUDIO2_BITS_PER_SAMPLE WMAUDIO_BITS_PER_SAMPLE
|
|
#define WMAUDIO2_MAX_CHANNELS WMAUDIO_MAX_CHANNELS
|
|
#define WMAUDIO2_WFX_EXTRA_BYTES (sizeof(WMAUDIO2WAVEFORMAT) - sizeof(WAVEFORMATEX))
|
|
|
|
typedef struct wmaudio3waveformat_tag {
|
|
WAVEFORMATEX wfx;
|
|
WORD wValidBitsPerSample;
|
|
DWORD dwChannelMask;
|
|
DWORD dwReserved1;
|
|
DWORD dwReserved2;
|
|
WORD wEncodeOptions;
|
|
WORD wReserved3;
|
|
} WMAUDIO3WAVEFORMAT, *LPWMAUDIO3WAVEFORMAT;
|
|
|
|
#define WMAUDIO3_WFX_EXTRA_BYTES (sizeof(WMAUDIO3WAVEFORMAT) - sizeof(WAVEFORMATEX))
|
|
|
|
#ifdef GUID_DEFINED
|
|
|
|
#ifndef _WAVEFORMATEXTENSIBLE_
|
|
#define _WAVEFORMATEXTENSIBLE_
|
|
typedef struct {
|
|
WAVEFORMATEX Format;
|
|
union {
|
|
WORD wValidBitsPerSample;
|
|
WORD wSamplesPerBlock;
|
|
WORD wReserved;
|
|
} Samples;
|
|
DWORD dwChannelMask;
|
|
GUID SubFormat;
|
|
} WAVEFORMATEXTENSIBLE, *PWAVEFORMATEXTENSIBLE;
|
|
#endif /* _WAVEFORMATEXTENSIBLE_ */
|
|
|
|
#endif /* GUID_DEFINED */
|
|
|
|
typedef WAVEFORMATEXTENSIBLE WAVEFORMATPCMEX;
|
|
typedef WAVEFORMATPCMEX* PWAVEFORMATPCMEX;
|
|
typedef WAVEFORMATPCMEX* NPWAVEFORMATPCMEX;
|
|
typedef WAVEFORMATPCMEX* LPWAVEFORMATPCMEX;
|
|
|
|
typedef WAVEFORMATEXTENSIBLE WAVEFORMATIEEEFLOATEX;
|
|
typedef WAVEFORMATIEEEFLOATEX* PWAVEFORMATIEEEFLOATEX;
|
|
typedef WAVEFORMATIEEEFLOATEX* NPWAVEFORMATIEEEFLOATEX;
|
|
typedef WAVEFORMATIEEEFLOATEX* LPWAVEFORMATIEEEFLOATEX;
|
|
|
|
#ifndef _SPEAKER_POSITIONS_
|
|
#define _SPEAKER_POSITIONS_
|
|
|
|
#define SPEAKER_FRONT_LEFT 0x00000001
|
|
#define SPEAKER_FRONT_RIGHT 0x00000002
|
|
#define SPEAKER_FRONT_CENTER 0x00000004
|
|
#define SPEAKER_LOW_FREQUENCY 0x00000008
|
|
#define SPEAKER_BACK_LEFT 0x00000010
|
|
#define SPEAKER_BACK_RIGHT 0x00000020
|
|
#define SPEAKER_FRONT_LEFT_OF_CENTER 0x00000040
|
|
#define SPEAKER_FRONT_RIGHT_OF_CENTER 0x00000080
|
|
#define SPEAKER_BACK_CENTER 0x00000100
|
|
#define SPEAKER_SIDE_LEFT 0x00000200
|
|
#define SPEAKER_SIDE_RIGHT 0x00000400
|
|
#define SPEAKER_TOP_CENTER 0x00000800
|
|
#define SPEAKER_TOP_FRONT_LEFT 0x00001000
|
|
#define SPEAKER_TOP_FRONT_CENTER 0x00002000
|
|
#define SPEAKER_TOP_FRONT_RIGHT 0x00004000
|
|
#define SPEAKER_TOP_BACK_LEFT 0x00008000
|
|
#define SPEAKER_TOP_BACK_CENTER 0x00010000
|
|
#define SPEAKER_TOP_BACK_RIGHT 0x00020000
|
|
#define SPEAKER_RESERVED 0x7FFC0000
|
|
#define SPEAKER_ALL 0x80000000
|
|
|
|
#endif /* _SPEAKER_POSITIONS_ */
|
|
|
|
/* DIB stuff */
|
|
|
|
#ifndef BI_BITFIELDS
|
|
#define BI_BITFIELDS 3
|
|
#endif
|
|
|
|
#ifndef QUERYDIBSUPPORT
|
|
#define QUERYDIBSUPPORT 3073
|
|
#define QDI_SETDIBITS 1
|
|
#define QDI_GETDIBITS 2
|
|
#define QDI_DIBTOSCREEN 4
|
|
#define QDI_STRETCHDIB 8
|
|
#endif
|
|
|
|
#ifndef NOBITMAP
|
|
typedef struct tagEXBMINFOHEADER {
|
|
BITMAPINFOHEADER bmi;
|
|
DWORD biExtDataOffset;
|
|
} EXBMINFOHEADER;
|
|
#endif
|
|
|
|
|
|
/* Video stuff */
|
|
|
|
#ifndef NONEWIC
|
|
|
|
#ifndef ICTYPE_VIDEO
|
|
#define ICTYPE_VIDEO mmioFOURCC('v', 'i', 'd', 'c')
|
|
#define ICTYPE_AUDIO mmioFOURCC('a', 'u', 'd', 'c')
|
|
#endif
|
|
|
|
#endif
|
|
|
|
#include <poppack.h>
|
|
|
|
#endif /* __WINE_MMREG_H */
|
|
|
|
#else /* __WIDL__ */
|
|
|
|
cpp_quote("#if 0")
|
|
#pragma pack(push, 1)
|
|
|
|
typedef struct tWAVEFORMATEX {
|
|
WORD wFormatTag;
|
|
WORD nChannels;
|
|
DWORD nSamplesPerSec;
|
|
DWORD nAvgBytesPerSec;
|
|
WORD nBlockAlign;
|
|
WORD wBitsPerSample;
|
|
WORD cbSize;
|
|
[size_is(cbSize)] BYTE pExtraBytes[];
|
|
} WAVEFORMATEX, *PWAVEFORMATEX, *NPWAVEFORMATEX, *LPWAVEFORMATEX;
|
|
|
|
typedef struct {
|
|
WORD wFormatTag;
|
|
WORD nChannels;
|
|
DWORD nSamplesPerSec;
|
|
DWORD nAvgBytesPerSec;
|
|
WORD nBlockAlign;
|
|
WORD wBitsPerSample;
|
|
WORD cbSize;
|
|
WORD wValidBitsPerSample;
|
|
DWORD dwChannelMask;
|
|
GUID SubFormat;
|
|
} WAVEFORMATEXTENSIBLE, *PWAVEFORMATEXTENSIBLE;
|
|
|
|
typedef struct {
|
|
WAVEFORMATEX wfx;
|
|
WORD fwHeadLayer;
|
|
DWORD dwHeadBitrate;
|
|
WORD fwHeadMode;
|
|
WORD fwHeadModeExt;
|
|
WORD wHeadEmphasis;
|
|
WORD fwHeadFlags;
|
|
DWORD dwPTSLow;
|
|
DWORD dwPTSHigh;
|
|
} MPEG1WAVEFORMAT;
|
|
|
|
#pragma pack(pop)
|
|
cpp_quote("#endif")
|
|
|
|
#endif /* __WIDL__ */
|