00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef __WINE_MMREG_H
00011 #define __WINE_MMREG_H
00012
00013
00014
00015
00016
00017 #ifndef _ACM_WAVEFILTER
00018 #define _ACM_WAVEFILTER
00019
00020 #include "windef.h"
00021
00022 #define WAVE_FILTER_UNKNOWN 0x0000
00023 #define WAVE_FILTER_DEVELOPMENT 0xFFFF
00024
00025 typedef struct __attribute__((__packed__)) _WAVEFILTER {
00026 DWORD cbStruct;
00027 DWORD dwFilterTag;
00028 DWORD fdwFilter;
00029 DWORD dwReserved[5];
00030 } WAVEFILTER, *PWAVEFILTER, *NPWAVEFILTER, *LPWAVEFILTER;
00031 #endif
00032
00033 #ifndef WAVE_FILTER_VOLUME
00034 #define WAVE_FILTER_VOLUME 0x0001
00035
00036 typedef struct __attribute__((__packed__)) _WAVEFILTER_VOLUME {
00037 WAVEFILTER wfltr;
00038 DWORD dwVolume;
00039 } VOLUMEWAVEFILTER, *PVOLUMEWAVEFILTER, *NPVOLUMEWAVEFILTER, *LPVOLUMEWAVEFILTER;
00040 #endif
00041
00042 #ifndef WAVE_FILTER_ECHO
00043 #define WAVE_FILTER_ECHO 0x0002
00044
00045 typedef struct __attribute__((__packed__)) WAVEFILTER_ECHO {
00046 WAVEFILTER wfltr;
00047 DWORD dwVolume;
00048 DWORD dwDelay;
00049 } ECHOWAVEFILTER, *PECHOWAVEFILTER, *NPECHOWAVEFILTER, *LPECHOWAVEFILTER;
00050 #endif
00051
00052 #ifndef _WAVEFORMATEX_
00053 #define _WAVEFORMATEX_
00054 typedef struct __attribute__((__packed__)) _WAVEFORMATEX {
00055 WORD wFormatTag;
00056 WORD nChannels;
00057 DWORD nSamplesPerSec;
00058 DWORD nAvgBytesPerSec;
00059 WORD nBlockAlign;
00060 WORD wBitsPerSample;
00061 WORD cbSize;
00062 } WAVEFORMATEX, *PWAVEFORMATEX, *NPWAVEFORMATEX, *LPWAVEFORMATEX;
00063 #endif
00064
00065 #ifndef GUID_TYPE
00066 #define GUID_TYPE
00067 typedef struct
00068 {
00069 unsigned long f1;
00070 unsigned short f2;
00071 unsigned short f3;
00072 unsigned char f4[8];
00073 } GUID;
00074 #endif
00075
00076 #ifndef _WAVEFORMATEXTENSIBLE_
00077 #define _WAVEFORMATEXTENSIBLE_
00078 typedef struct {
00079 WAVEFORMATEX Format;
00080 union {
00081 WORD wValidBitsPerSample;
00082 WORD wSamplesPerBlock;
00083 WORD wReserved;
00084 } Samples;
00085 DWORD dwChannelMask;
00086
00087 GUID SubFormat;
00088 } WAVEFORMATEXTENSIBLE, *PWAVEFORMATEXTENSIBLE;
00089 #endif // !_WAVEFORMATEXTENSIBLE_
00090
00091 #ifndef _MPEGLAYER3WAVEFORMAT_
00092 #define _MPEGLAYER3WAVEFORMAT_
00093 typedef struct mpeglayer3waveformat_tag {
00094 WORD wFormatTag WINE_PACKED;
00095 WORD nChannels WINE_PACKED;
00096 DWORD nSamplesPerSec WINE_PACKED;
00097 DWORD nAvgBytesPerSec WINE_PACKED;
00098 WORD nBlockAlign WINE_PACKED;
00099 WORD wBitsPerSample WINE_PACKED;
00100 WORD cbSize WINE_PACKED;
00101 WORD wID WINE_PACKED;
00102 DWORD fdwFlags WINE_PACKED;
00103 WORD nBlockSize WINE_PACKED;
00104 WORD nFramesPerBlock WINE_PACKED;
00105 WORD nCodecDelay WINE_PACKED;
00106 } MPEGLAYER3WAVEFORMAT;
00107 #endif
00108
00109
00110
00111 #define WAVE_FORMAT_UNKNOWN 0x0000
00112 #define WAVE_FORMAT_ADPCM 0x0002
00113 #define WAVE_FORMAT_IEEE_FLOAT 0x0003
00114 #define WAVE_FORMAT_VSELP 0x0004
00115 #define WAVE_FORMAT_IBM_CVSD 0x0005
00116 #define WAVE_FORMAT_ALAW 0x0006
00117 #define WAVE_FORMAT_MULAW 0x0007
00118 #define WAVE_FORMAT_DTS 0x0008
00119 #define WAVE_FORMAT_OKI_ADPCM 0x0010
00120 #define WAVE_FORMAT_DVI_ADPCM 0x0011
00121 #define WAVE_FORMAT_IMA_ADPCM (WAVE_FORMAT_DVI_ADPCM)
00122 #define WAVE_FORMAT_MEDIASPACE_ADPCM 0x0012
00123 #define WAVE_FORMAT_SIERRA_ADPCM 0x0013
00124 #define WAVE_FORMAT_G723_ADPCM 0x0014
00125 #define WAVE_FORMAT_DIGISTD 0x0015
00126 #define WAVE_FORMAT_DIGIFIX 0x0016
00127 #define WAVE_FORMAT_DIALOGIC_OKI_ADPCM 0x0017
00128 #define WAVE_FORMAT_MEDIAVISION_ADPCM 0x0018
00129 #define WAVE_FORMAT_CU_CODEC 0x0019
00130 #define WAVE_FORMAT_YAMAHA_ADPCM 0x0020
00131 #define WAVE_FORMAT_SONARC 0x0021
00132 #define WAVE_FORMAT_DSPGROUP_TRUESPEECH 0x0022
00133 #define WAVE_FORMAT_ECHOSC1 0x0023
00134 #define WAVE_FORMAT_AUDIOFILE_AF36 0x0024
00135 #define WAVE_FORMAT_APTX 0x0025
00136 #define WAVE_FORMAT_AUDIOFILE_AF10 0x0026
00137 #define WAVE_FORMAT_PROSODY_1612 0x0027
00138 #define WAVE_FORMAT_LRC 0x0028
00139 #define WAVE_FORMAT_DOLBY_AC2 0x0030
00140 #define WAVE_FORMAT_GSM610 0x0031
00141 #define WAVE_FORMAT_MSNAUDIO 0x0032
00142 #define WAVE_FORMAT_ANTEX_ADPCME 0x0033
00143 #define WAVE_FORMAT_CONTROL_RES_VQLPC 0x0034
00144 #define WAVE_FORMAT_DIGIREAL 0x0035
00145 #define WAVE_FORMAT_DIGIADPCM 0x0036
00146 #define WAVE_FORMAT_CONTROL_RES_CR10 0x0037
00147 #define WAVE_FORMAT_NMS_VBXADPCM 0x0038
00148 #define WAVE_FORMAT_CS_IMAADPCM 0x0039
00149 #define WAVE_FORMAT_ECHOSC3 0x003A
00150 #define WAVE_FORMAT_ROCKWELL_ADPCM 0x003B
00151 #define WAVE_FORMAT_ROCKWELL_DIGITALK 0x003C
00152 #define WAVE_FORMAT_XEBEC 0x003D
00153 #define WAVE_FORMAT_G721_ADPCM 0x0040
00154 #define WAVE_FORMAT_G728_CELP 0x0041
00155 #define WAVE_FORMAT_MSG723 0x0042
00156 #define WAVE_FORMAT_MPEG 0x0050
00157 #define WAVE_FORMAT_RT24 0x0052
00158 #define WAVE_FORMAT_PAC 0x0053
00159 #define WAVE_FORMAT_MPEGLAYER3 0x0055
00160 #define WAVE_FORMAT_LUCENT_G723 0x0059
00161 #define WAVE_FORMAT_CIRRUS 0x0060
00162 #define WAVE_FORMAT_ESPCM 0x0061
00163 #define WAVE_FORMAT_VOXWARE 0x0062
00164 #define WAVE_FORMAT_CANOPUS_ATRAC 0x0063
00165 #define WAVE_FORMAT_G726_ADPCM 0x0064
00166 #define WAVE_FORMAT_G722_ADPCM 0x0065
00167 #define WAVE_FORMAT_DSAT_DISPLAY 0x0067
00168 #define WAVE_FORMAT_VOXWARE_BYTE_ALIGNED 0x0069
00169 #define WAVE_FORMAT_VOXWARE_AC8 0x0070
00170 #define WAVE_FORMAT_VOXWARE_AC10 0x0071
00171 #define WAVE_FORMAT_VOXWARE_AC16 0x0072
00172 #define WAVE_FORMAT_VOXWARE_AC20 0x0073
00173 #define WAVE_FORMAT_VOXWARE_RT24 0x0074
00174 #define WAVE_FORMAT_VOXWARE_RT29 0x0075
00175 #define WAVE_FORMAT_VOXWARE_RT29HW 0x0076
00176 #define WAVE_FORMAT_VOXWARE_VR12 0x0077
00177 #define WAVE_FORMAT_VOXWARE_VR18 0x0078
00178 #define WAVE_FORMAT_VOXWARE_TQ40 0x0079
00179 #define WAVE_FORMAT_SOFTSOUND 0x0080
00180 #define WAVE_FORMAT_VOXWARE_TQ60 0x0081
00181 #define WAVE_FORMAT_MSRT24 0x0082
00182 #define WAVE_FORMAT_G729A 0x0083
00183 #define WAVE_FORMAT_MVI_MVI2 0x0084
00184 #define WAVE_FORMAT_DF_G726 0x0085
00185 #define WAVE_FORMAT_DF_GSM610 0x0086
00186 #define WAVE_FORMAT_ISIAUDIO 0x0088
00187 #define WAVE_FORMAT_ONLIVE 0x0089
00188 #define WAVE_FORMAT_SBC24 0x0091
00189 #define WAVE_FORMAT_DOLBY_AC3_SPDIF 0x0092
00190 #define WAVE_FORMAT_MEDIASONIC_G723 0x0093
00191 #define WAVE_FORMAT_PROSODY_8KBPS 0x0094
00192 #define WAVE_FORMAT_ZYXEL_ADPCM 0x0097
00193 #define WAVE_FORMAT_PHILIPS_LPCBB 0x0098
00194 #define WAVE_FORMAT_PACKED 0x0099
00195 #define WAVE_FORMAT_MALDEN_PHONYTALK 0x00A0
00196 #define WAVE_FORMAT_RHETOREX_ADPCM 0x0100
00197 #define WAVE_FORMAT_IRAT 0x0101
00198 #define WAVE_FORMAT_VIVO_G723 0x0111
00199 #define WAVE_FORMAT_VIVO_SIREN 0x0112
00200 #define WAVE_FORMAT_DIGITAL_G723 0x0123
00201 #define WAVE_FORMAT_SANYO_LD_ADPCM 0x0125
00202 #define WAVE_FORMAT_SIPROLAB_ACEPLNET 0x0130
00203 #define WAVE_FORMAT_SIPROLAB_ACELP4800 0x0131
00204 #define WAVE_FORMAT_SIPROLAB_ACELP8V3 0x0132
00205 #define WAVE_FORMAT_SIPROLAB_G729 0x0133
00206 #define WAVE_FORMAT_SIPROLAB_G729A 0x0134
00207 #define WAVE_FORMAT_SIPROLAB_KELVIN 0x0135
00208 #define WAVE_FORMAT_G726ADPCM 0x0140
00209 #define WAVE_FORMAT_QUALCOMM_PUREVOICE 0x0150
00210 #define WAVE_FORMAT_QUALCOMM_HALFRATE 0x0151
00211 #define WAVE_FORMAT_TUBGSM 0x0155
00212 #define WAVE_FORMAT_MSAUDIO1 0x0160
00213 #define WAVE_FORMAT_CREATIVE_ADPCM 0x0200
00214 #define WAVE_FORMAT_CREATIVE_FASTSPEECH8 0x0202
00215 #define WAVE_FORMAT_CREATIVE_FASTSPEECH10 0x0203
00216 #define WAVE_FORMAT_UHER_ADPCM 0x0210
00217 #define WAVE_FORMAT_QUARTERDECK 0x0220
00218 #define WAVE_FORMAT_ILINK_VC 0x0230
00219 #define WAVE_FORMAT_RAW_SPORT 0x0240
00220 #define WAVE_FORMAT_IPI_HSX 0x0250
00221 #define WAVE_FORMAT_IPI_RPELP 0x0251
00222 #define WAVE_FORMAT_CS2 0x0260
00223 #define WAVE_FORMAT_SONY_SCX 0x0270
00224 #define WAVE_FORMAT_FM_TOWNS_SND 0x0300
00225 #define WAVE_FORMAT_BTV_DIGITAL 0x0400
00226 #define WAVE_FORMAT_QDESIGN_MUSIC 0x0450
00227 #define WAVE_FORMAT_VME_VMPCM 0x0680
00228 #define WAVE_FORMAT_TPC 0x0681
00229 #define WAVE_FORMAT_OLIGSM 0x1000
00230 #define WAVE_FORMAT_OLIADPCM 0x1001
00231 #define WAVE_FORMAT_OLICELP 0x1002
00232 #define WAVE_FORMAT_OLISBC 0x1003
00233 #define WAVE_FORMAT_OLIOPR 0x1004
00234 #define WAVE_FORMAT_LH_CODEC 0x1100
00235 #define WAVE_FORMAT_NORRIS 0x1400
00236 #define WAVE_FORMAT_SOUNDSPACE_MUSICOMPRESS 0x1500
00237 #define WAVE_FORMAT_DVM 0x2000
00238
00239 #if !defined(WAVE_FORMAT_EXTENSIBLE)
00240 #define WAVE_FORMAT_EXTENSIBLE 0xFFFE
00241 #endif // !defined(WAVE_FORMAT_EXTENSIBLE)
00242
00243
00244
00245
00246
00247 #define WAVE_FORMAT_DEVELOPMENT (0xFFFF)
00248
00249
00250 #endif