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