Mercurial > mplayer.hg
annotate loader/wine/mmreg.h @ 22920:320d9b360a3b
Start to separate bad-autodetection hacks from other stuff in extension-based
demuxer selection.
author | reimar |
---|---|
date | Sat, 07 Apr 2007 17:41:17 +0000 |
parents | 0783dd397f74 |
children | 67e6bb7dcac4 |
rev | line source |
---|---|
1 | 1 /* |
2 * mmreg.h - Declarations for ??? | |
15166
f5537cc95b02
Mark modified imported files as such to comply with GPL ¡ø2a.
diego
parents:
12979
diff
changeset
|
3 * |
18783 | 4 * Modified for use with MPlayer, detailed changelog at |
5 * http://svn.mplayerhq.hu/mplayer/trunk/ | |
15166
f5537cc95b02
Mark modified imported files as such to comply with GPL ¡ø2a.
diego
parents:
12979
diff
changeset
|
6 * $Id$ |
f5537cc95b02
Mark modified imported files as such to comply with GPL ¡ø2a.
diego
parents:
12979
diff
changeset
|
7 * |
1 | 8 */ |
9 | |
10 #ifndef __WINE_MMREG_H | |
11 #define __WINE_MMREG_H | |
12 | |
13 /*********************************************************************** | |
14 * Defines/Enums | |
15 */ | |
16 | |
17 #ifndef _ACM_WAVEFILTER | |
18 #define _ACM_WAVEFILTER | |
19 | |
20 #include "windef.h" | |
21 | |
22 #define WAVE_FILTER_UNKNOWN 0x0000 | |
23 #define WAVE_FILTER_DEVELOPMENT 0xFFFF | |
24 | |
7386 | 25 typedef struct __attribute__((__packed__)) _WAVEFILTER { |
1 | 26 DWORD cbStruct; |
27 DWORD dwFilterTag; | |
28 DWORD fdwFilter; | |
29 DWORD dwReserved[5]; | |
30 } WAVEFILTER, *PWAVEFILTER, *NPWAVEFILTER, *LPWAVEFILTER; | |
31 #endif /* _ACM_WAVEFILTER */ | |
32 | |
33 #ifndef WAVE_FILTER_VOLUME | |
34 #define WAVE_FILTER_VOLUME 0x0001 | |
35 | |
7386 | 36 typedef struct __attribute__((__packed__)) _WAVEFILTER_VOLUME { |
1 | 37 WAVEFILTER wfltr; |
38 DWORD dwVolume; | |
39 } VOLUMEWAVEFILTER, *PVOLUMEWAVEFILTER, *NPVOLUMEWAVEFILTER, *LPVOLUMEWAVEFILTER; | |
40 #endif /* WAVE_FILTER_VOLUME */ | |
41 | |
42 #ifndef WAVE_FILTER_ECHO | |
43 #define WAVE_FILTER_ECHO 0x0002 | |
44 | |
7386 | 45 typedef struct __attribute__((__packed__)) WAVEFILTER_ECHO { |
1 | 46 WAVEFILTER wfltr; |
47 DWORD dwVolume; | |
48 DWORD dwDelay; | |
49 } ECHOWAVEFILTER, *PECHOWAVEFILTER, *NPECHOWAVEFILTER, *LPECHOWAVEFILTER; | |
50 #endif /* WAVEFILTER_ECHO */ | |
51 | |
52 #ifndef _WAVEFORMATEX_ | |
53 #define _WAVEFORMATEX_ | |
7386 | 54 typedef struct __attribute__((__packed__)) _WAVEFORMATEX { |
1 | 55 WORD wFormatTag; |
56 WORD nChannels; | |
57 DWORD nSamplesPerSec; | |
58 DWORD nAvgBytesPerSec; | |
59 WORD nBlockAlign; | |
60 WORD wBitsPerSample; | |
61 WORD cbSize; | |
62 } WAVEFORMATEX, *PWAVEFORMATEX, *NPWAVEFORMATEX, *LPWAVEFORMATEX; | |
63 #endif /* _WAVEFORMATEX_ */ | |
64 | |
1836 | 65 #ifndef GUID_TYPE |
66 #define GUID_TYPE | |
67 typedef struct | |
68 { | |
69 unsigned long f1; | |
70 unsigned short f2; | |
71 unsigned short f3; | |
72 unsigned char f4[8]; | |
73 } GUID; | |
74 #endif | |
1835 | 75 |
76 #ifndef _WAVEFORMATEXTENSIBLE_ | |
77 #define _WAVEFORMATEXTENSIBLE_ | |
78 typedef struct { | |
79 WAVEFORMATEX Format; | |
80 union { | |
81 WORD wValidBitsPerSample; /* bits of precision */ | |
82 WORD wSamplesPerBlock; /* valid if wBitsPerSample==0 */ | |
83 WORD wReserved; /* If neither applies, set to zero. */ | |
84 } Samples; | |
85 DWORD dwChannelMask; /* which channels are */ | |
86 /* present in stream */ | |
87 GUID SubFormat; | |
88 } WAVEFORMATEXTENSIBLE, *PWAVEFORMATEXTENSIBLE; | |
89 #endif // !_WAVEFORMATEXTENSIBLE_ | |
90 | |
12979
6f18105c058a
Better protection against double definition of MPEGLAYER3WAVEFORMAT
wight
parents:
12356
diff
changeset
|
91 #ifndef _MPEGLAYER3WAVEFORMAT_ |
6f18105c058a
Better protection against double definition of MPEGLAYER3WAVEFORMAT
wight
parents:
12356
diff
changeset
|
92 #define _MPEGLAYER3WAVEFORMAT_ |
2634 | 93 typedef struct mpeglayer3waveformat_tag { |
94 WORD wFormatTag WINE_PACKED; | |
95 WORD nChannels WINE_PACKED; | |
96 DWORD nSamplesPerSec WINE_PACKED; | |
97 DWORD nAvgBytesPerSec WINE_PACKED; | |
98 WORD nBlockAlign WINE_PACKED; | |
99 WORD wBitsPerSample WINE_PACKED; | |
100 WORD cbSize WINE_PACKED; | |
101 WORD wID WINE_PACKED; | |
102 DWORD fdwFlags WINE_PACKED; | |
103 WORD nBlockSize WINE_PACKED; | |
104 WORD nFramesPerBlock WINE_PACKED; | |
105 WORD nCodecDelay WINE_PACKED; | |
106 } MPEGLAYER3WAVEFORMAT; | |
12979
6f18105c058a
Better protection against double definition of MPEGLAYER3WAVEFORMAT
wight
parents:
12356
diff
changeset
|
107 #endif /* !_MPEGLAYER3WAVEFORMAT_ */ |
1835 | 108 |
1 | 109 /* WAVE form wFormatTag IDs */ |
110 | |
1835 | 111 #define WAVE_FORMAT_UNKNOWN 0x0000 /* Microsoft Corporation */ |
112 #define WAVE_FORMAT_ADPCM 0x0002 /* Microsoft Corporation */ | |
113 #define WAVE_FORMAT_IEEE_FLOAT 0x0003 /* Microsoft Corporation */ | |
114 #define WAVE_FORMAT_VSELP 0x0004 /* Compaq Computer Corp. */ | |
115 #define WAVE_FORMAT_IBM_CVSD 0x0005 /* IBM Corporation */ | |
116 #define WAVE_FORMAT_ALAW 0x0006 /* Microsoft Corporation */ | |
117 #define WAVE_FORMAT_MULAW 0x0007 /* Microsoft Corporation */ | |
118 #define WAVE_FORMAT_DTS 0x0008 /* Microsoft Corporation */ | |
119 #define WAVE_FORMAT_OKI_ADPCM 0x0010 /* OKI */ | |
120 #define WAVE_FORMAT_DVI_ADPCM 0x0011 /* Intel Corporation */ | |
121 #define WAVE_FORMAT_IMA_ADPCM (WAVE_FORMAT_DVI_ADPCM) /* Intel Corporation */ | |
122 #define WAVE_FORMAT_MEDIASPACE_ADPCM 0x0012 /* Videologic */ | |
123 #define WAVE_FORMAT_SIERRA_ADPCM 0x0013 /* Sierra Semiconductor Corp */ | |
124 #define WAVE_FORMAT_G723_ADPCM 0x0014 /* Antex Electronics Corporation */ | |
125 #define WAVE_FORMAT_DIGISTD 0x0015 /* DSP Solutions, Inc. */ | |
126 #define WAVE_FORMAT_DIGIFIX 0x0016 /* DSP Solutions, Inc. */ | |
127 #define WAVE_FORMAT_DIALOGIC_OKI_ADPCM 0x0017 /* Dialogic Corporation */ | |
128 #define WAVE_FORMAT_MEDIAVISION_ADPCM 0x0018 /* Media Vision, Inc. */ | |
129 #define WAVE_FORMAT_CU_CODEC 0x0019 /* Hewlett-Packard Company */ | |
130 #define WAVE_FORMAT_YAMAHA_ADPCM 0x0020 /* Yamaha Corporation of America */ | |
131 #define WAVE_FORMAT_SONARC 0x0021 /* Speech Compression */ | |
132 #define WAVE_FORMAT_DSPGROUP_TRUESPEECH 0x0022 /* DSP Group, Inc */ | |
133 #define WAVE_FORMAT_ECHOSC1 0x0023 /* Echo Speech Corporation */ | |
134 #define WAVE_FORMAT_AUDIOFILE_AF36 0x0024 /* Virtual Music, Inc. */ | |
135 #define WAVE_FORMAT_APTX 0x0025 /* Audio Processing Technology */ | |
136 #define WAVE_FORMAT_AUDIOFILE_AF10 0x0026 /* Virtual Music, Inc. */ | |
137 #define WAVE_FORMAT_PROSODY_1612 0x0027 /* Aculab plc */ | |
138 #define WAVE_FORMAT_LRC 0x0028 /* Merging Technologies S.A. */ | |
139 #define WAVE_FORMAT_DOLBY_AC2 0x0030 /* Dolby Laboratories */ | |
140 #define WAVE_FORMAT_GSM610 0x0031 /* Microsoft Corporation */ | |
141 #define WAVE_FORMAT_MSNAUDIO 0x0032 /* Microsoft Corporation */ | |
142 #define WAVE_FORMAT_ANTEX_ADPCME 0x0033 /* Antex Electronics Corporation */ | |
143 #define WAVE_FORMAT_CONTROL_RES_VQLPC 0x0034 /* Control Resources Limited */ | |
144 #define WAVE_FORMAT_DIGIREAL 0x0035 /* DSP Solutions, Inc. */ | |
145 #define WAVE_FORMAT_DIGIADPCM 0x0036 /* DSP Solutions, Inc. */ | |
146 #define WAVE_FORMAT_CONTROL_RES_CR10 0x0037 /* Control Resources Limited */ | |
147 #define WAVE_FORMAT_NMS_VBXADPCM 0x0038 /* Natural MicroSystems */ | |
148 #define WAVE_FORMAT_CS_IMAADPCM 0x0039 /* Crystal Semiconductor IMA ADPCM */ | |
149 #define WAVE_FORMAT_ECHOSC3 0x003A /* Echo Speech Corporation */ | |
150 #define WAVE_FORMAT_ROCKWELL_ADPCM 0x003B /* Rockwell International */ | |
151 #define WAVE_FORMAT_ROCKWELL_DIGITALK 0x003C /* Rockwell International */ | |
152 #define WAVE_FORMAT_XEBEC 0x003D /* Xebec Multimedia Solutions Limited */ | |
153 #define WAVE_FORMAT_G721_ADPCM 0x0040 /* Antex Electronics Corporation */ | |
154 #define WAVE_FORMAT_G728_CELP 0x0041 /* Antex Electronics Corporation */ | |
155 #define WAVE_FORMAT_MSG723 0x0042 /* Microsoft Corporation */ | |
156 #define WAVE_FORMAT_MPEG 0x0050 /* Microsoft Corporation */ | |
157 #define WAVE_FORMAT_RT24 0x0052 /* InSoft, Inc. */ | |
158 #define WAVE_FORMAT_PAC 0x0053 /* InSoft, Inc. */ | |
159 #define WAVE_FORMAT_MPEGLAYER3 0x0055 /* ISO/MPEG Layer3 Format Tag */ | |
160 #define WAVE_FORMAT_LUCENT_G723 0x0059 /* Lucent Technologies */ | |
161 #define WAVE_FORMAT_CIRRUS 0x0060 /* Cirrus Logic */ | |
162 #define WAVE_FORMAT_ESPCM 0x0061 /* ESS Technology */ | |
163 #define WAVE_FORMAT_VOXWARE 0x0062 /* Voxware Inc */ | |
164 #define WAVE_FORMAT_CANOPUS_ATRAC 0x0063 /* Canopus, co., Ltd. */ | |
165 #define WAVE_FORMAT_G726_ADPCM 0x0064 /* APICOM */ | |
166 #define WAVE_FORMAT_G722_ADPCM 0x0065 /* APICOM */ | |
167 #define WAVE_FORMAT_DSAT_DISPLAY 0x0067 /* Microsoft Corporation */ | |
168 #define WAVE_FORMAT_VOXWARE_BYTE_ALIGNED 0x0069 /* Voxware Inc */ | |
169 #define WAVE_FORMAT_VOXWARE_AC8 0x0070 /* Voxware Inc */ | |
170 #define WAVE_FORMAT_VOXWARE_AC10 0x0071 /* Voxware Inc */ | |
171 #define WAVE_FORMAT_VOXWARE_AC16 0x0072 /* Voxware Inc */ | |
172 #define WAVE_FORMAT_VOXWARE_AC20 0x0073 /* Voxware Inc */ | |
173 #define WAVE_FORMAT_VOXWARE_RT24 0x0074 /* Voxware Inc */ | |
174 #define WAVE_FORMAT_VOXWARE_RT29 0x0075 /* Voxware Inc */ | |
175 #define WAVE_FORMAT_VOXWARE_RT29HW 0x0076 /* Voxware Inc */ | |
176 #define WAVE_FORMAT_VOXWARE_VR12 0x0077 /* Voxware Inc */ | |
177 #define WAVE_FORMAT_VOXWARE_VR18 0x0078 /* Voxware Inc */ | |
178 #define WAVE_FORMAT_VOXWARE_TQ40 0x0079 /* Voxware Inc */ | |
179 #define WAVE_FORMAT_SOFTSOUND 0x0080 /* Softsound, Ltd. */ | |
180 #define WAVE_FORMAT_VOXWARE_TQ60 0x0081 /* Voxware Inc */ | |
181 #define WAVE_FORMAT_MSRT24 0x0082 /* Microsoft Corporation */ | |
182 #define WAVE_FORMAT_G729A 0x0083 /* AT&T Labs, Inc. */ | |
183 #define WAVE_FORMAT_MVI_MVI2 0x0084 /* Motion Pixels */ | |
184 #define WAVE_FORMAT_DF_G726 0x0085 /* DataFusion Systems (Pty) (Ltd) */ | |
185 #define WAVE_FORMAT_DF_GSM610 0x0086 /* DataFusion Systems (Pty) (Ltd) */ | |
186 #define WAVE_FORMAT_ISIAUDIO 0x0088 /* Iterated Systems, Inc. */ | |
187 #define WAVE_FORMAT_ONLIVE 0x0089 /* OnLive! Technologies, Inc. */ | |
188 #define WAVE_FORMAT_SBC24 0x0091 /* Siemens Business Communications Sys */ | |
189 #define WAVE_FORMAT_DOLBY_AC3_SPDIF 0x0092 /* Sonic Foundry */ | |
190 #define WAVE_FORMAT_MEDIASONIC_G723 0x0093 /* MediaSonic */ | |
191 #define WAVE_FORMAT_PROSODY_8KBPS 0x0094 /* Aculab plc */ | |
192 #define WAVE_FORMAT_ZYXEL_ADPCM 0x0097 /* ZyXEL Communications, Inc. */ | |
193 #define WAVE_FORMAT_PHILIPS_LPCBB 0x0098 /* Philips Speech Processing */ | |
194 #define WAVE_FORMAT_PACKED 0x0099 /* Studer Professional Audio AG */ | |
195 #define WAVE_FORMAT_MALDEN_PHONYTALK 0x00A0 /* Malden Electronics Ltd. */ | |
196 #define WAVE_FORMAT_RHETOREX_ADPCM 0x0100 /* Rhetorex Inc. */ | |
197 #define WAVE_FORMAT_IRAT 0x0101 /* BeCubed Software Inc. */ | |
198 #define WAVE_FORMAT_VIVO_G723 0x0111 /* Vivo Software */ | |
199 #define WAVE_FORMAT_VIVO_SIREN 0x0112 /* Vivo Software */ | |
200 #define WAVE_FORMAT_DIGITAL_G723 0x0123 /* Digital Equipment Corporation */ | |
201 #define WAVE_FORMAT_SANYO_LD_ADPCM 0x0125 /* Sanyo Electric Co., Ltd. */ | |
202 #define WAVE_FORMAT_SIPROLAB_ACEPLNET 0x0130 /* Sipro Lab Telecom Inc. */ | |
203 #define WAVE_FORMAT_SIPROLAB_ACELP4800 0x0131 /* Sipro Lab Telecom Inc. */ | |
204 #define WAVE_FORMAT_SIPROLAB_ACELP8V3 0x0132 /* Sipro Lab Telecom Inc. */ | |
205 #define WAVE_FORMAT_SIPROLAB_G729 0x0133 /* Sipro Lab Telecom Inc. */ | |
206 #define WAVE_FORMAT_SIPROLAB_G729A 0x0134 /* Sipro Lab Telecom Inc. */ | |
207 #define WAVE_FORMAT_SIPROLAB_KELVIN 0x0135 /* Sipro Lab Telecom Inc. */ | |
208 #define WAVE_FORMAT_G726ADPCM 0x0140 /* Dictaphone Corporation */ | |
209 #define WAVE_FORMAT_QUALCOMM_PUREVOICE 0x0150 /* Qualcomm, Inc. */ | |
210 #define WAVE_FORMAT_QUALCOMM_HALFRATE 0x0151 /* Qualcomm, Inc. */ | |
211 #define WAVE_FORMAT_TUBGSM 0x0155 /* Ring Zero Systems, Inc. */ | |
212 #define WAVE_FORMAT_MSAUDIO1 0x0160 /* Microsoft Corporation */ | |
213 #define WAVE_FORMAT_CREATIVE_ADPCM 0x0200 /* Creative Labs, Inc */ | |
214 #define WAVE_FORMAT_CREATIVE_FASTSPEECH8 0x0202 /* Creative Labs, Inc */ | |
215 #define WAVE_FORMAT_CREATIVE_FASTSPEECH10 0x0203 /* Creative Labs, Inc */ | |
216 #define WAVE_FORMAT_UHER_ADPCM 0x0210 /* UHER informatic GmbH */ | |
217 #define WAVE_FORMAT_QUARTERDECK 0x0220 /* Quarterdeck Corporation */ | |
218 #define WAVE_FORMAT_ILINK_VC 0x0230 /* I-link Worldwide */ | |
219 #define WAVE_FORMAT_RAW_SPORT 0x0240 /* Aureal Semiconductor */ | |
220 #define WAVE_FORMAT_IPI_HSX 0x0250 /* Interactive Products, Inc. */ | |
221 #define WAVE_FORMAT_IPI_RPELP 0x0251 /* Interactive Products, Inc. */ | |
222 #define WAVE_FORMAT_CS2 0x0260 /* Consistent Software */ | |
223 #define WAVE_FORMAT_SONY_SCX 0x0270 /* Sony Corp. */ | |
224 #define WAVE_FORMAT_FM_TOWNS_SND 0x0300 /* Fujitsu Corp. */ | |
225 #define WAVE_FORMAT_BTV_DIGITAL 0x0400 /* Brooktree Corporation */ | |
226 #define WAVE_FORMAT_QDESIGN_MUSIC 0x0450 /* QDesign Corporation */ | |
227 #define WAVE_FORMAT_VME_VMPCM 0x0680 /* AT&T Labs, Inc. */ | |
228 #define WAVE_FORMAT_TPC 0x0681 /* AT&T Labs, Inc. */ | |
229 #define WAVE_FORMAT_OLIGSM 0x1000 /* Ing C. Olivetti & C., S.p.A. */ | |
230 #define WAVE_FORMAT_OLIADPCM 0x1001 /* Ing C. Olivetti & C., S.p.A. */ | |
231 #define WAVE_FORMAT_OLICELP 0x1002 /* Ing C. Olivetti & C., S.p.A. */ | |
232 #define WAVE_FORMAT_OLISBC 0x1003 /* Ing C. Olivetti & C., S.p.A. */ | |
233 #define WAVE_FORMAT_OLIOPR 0x1004 /* Ing C. Olivetti & C., S.p.A. */ | |
234 #define WAVE_FORMAT_LH_CODEC 0x1100 /* Lernout & Hauspie */ | |
235 #define WAVE_FORMAT_NORRIS 0x1400 /* Norris Communications, Inc. */ | |
236 #define WAVE_FORMAT_SOUNDSPACE_MUSICOMPRESS 0x1500 /* AT&T Labs, Inc. */ | |
237 #define WAVE_FORMAT_DVM 0x2000 /* FAST Multimedia AG */ | |
238 | |
239 #if !defined(WAVE_FORMAT_EXTENSIBLE) | |
240 #define WAVE_FORMAT_EXTENSIBLE 0xFFFE /* Microsoft */ | |
241 #endif // !defined(WAVE_FORMAT_EXTENSIBLE) | |
242 // | |
243 // the WAVE_FORMAT_DEVELOPMENT format tag can be used during the | |
244 // development phase of a new wave format. Before shipping, you MUST | |
245 // acquire an official format tag from Microsoft. | |
246 // | |
247 #define WAVE_FORMAT_DEVELOPMENT (0xFFFF) | |
248 | |
1 | 249 |
250 #endif /* __WINE_MMREG_H */ |