ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

mmreg.h
Go to the documentation of this file.
00001 /*
00002  * Declarations for MultiMedia-REGistration
00003  *
00004  * Copyright (C) 1999 Eric Pouech
00005  *
00006  * This library is free software; you can redistribute it and/or
00007  * modify it under the terms of the GNU Lesser General Public
00008  * License as published by the Free Software Foundation; either
00009  * version 2.1 of the License, or (at your option) any later version.
00010  *
00011  * This library is distributed in the hope that it will be useful,
00012  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00013  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014  * Lesser General Public License for more details.
00015  *
00016  * You should have received a copy of the GNU Lesser General Public
00017  * License along with this library; if not, write to the Free Software
00018  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
00019  */
00020 
00021 #ifndef __WINE_MMREG_H
00022 #define __WINE_MMREG_H
00023 
00024 #ifndef RC_INVOKED
00025 #include "pshpack1.h"
00026 #endif
00027 
00028 
00029 /***********************************************************************
00030  * Defines/Enums
00031  */
00032 
00033 #define  MM_MSFT_WDMAUDIO_WAVEOUT 0x64
00034 #define  MM_MSFT_WDMAUDIO_WAVEIN 0x65
00035 #define  MM_MSFT_WDMAUDIO_MIDIOUT 0x66
00036 #define  MM_MSFT_WDMAUDIO_MIDIIN 0x67
00037 #define  MM_MSFT_WDMAUDIO_MIXER 0x68
00038 #define  MM_MSFT_WDMAUDIO_AUX 0x69
00039 
00040 #ifndef _ACM_WAVEFILTER
00041 #define _ACM_WAVEFILTER
00042 
00043 #define WAVE_FILTER_UNKNOWN     0x0000
00044 #define WAVE_FILTER_DEVELOPMENT 0xFFFF
00045 
00046 typedef struct _WAVEFILTER {
00047   DWORD   cbStruct;
00048   DWORD   dwFilterTag;
00049   DWORD   fdwFilter;
00050   DWORD   dwReserved[5];
00051 } WAVEFILTER, *PWAVEFILTER, *NPWAVEFILTER, *LPWAVEFILTER;
00052 #endif /* _ACM_WAVEFILTER */
00053 
00054 #ifndef WAVE_FILTER_VOLUME
00055 #define WAVE_FILTER_VOLUME      0x0001
00056 
00057 typedef struct _WAVEFILTER_VOLUME {
00058    WAVEFILTER      wfltr;
00059    DWORD           dwVolume;
00060 } VOLUMEWAVEFILTER, *PVOLUMEWAVEFILTER, *NPVOLUMEWAVEFILTER, *LPVOLUMEWAVEFILTER;
00061 #endif  /* WAVE_FILTER_VOLUME */
00062 
00063 #ifndef WAVE_FILTER_ECHO
00064 #define WAVE_FILTER_ECHO        0x0002
00065 
00066 typedef struct WAVEFILTER_ECHO {
00067    WAVEFILTER      wfltr;
00068    DWORD           dwVolume;
00069    DWORD           dwDelay;
00070 } ECHOWAVEFILTER, *PECHOWAVEFILTER, *NPECHOWAVEFILTER, *LPECHOWAVEFILTER;
00071 #endif  /* WAVEFILTER_ECHO */
00072 
00073 #ifndef _WAVEFORMATEX_
00074 #define _WAVEFORMATEX_
00075 typedef struct _WAVEFORMATEX {
00076   WORD   wFormatTag;
00077   WORD   nChannels;
00078   DWORD  nSamplesPerSec;
00079   DWORD  nAvgBytesPerSec;
00080   WORD   nBlockAlign;
00081   WORD   wBitsPerSample;
00082   WORD   cbSize;
00083 } WAVEFORMATEX, *PWAVEFORMATEX, *NPWAVEFORMATEX, *LPWAVEFORMATEX;
00084 
00085 typedef const struct _WAVEFORMATEX *LPCWAVEFORMATEX;
00086 #endif /* _WAVEFORMATEX_ */
00087 
00088 #ifndef WAVE_FORMAT_PCM
00089 #define WAVE_FORMAT_PCM                 0x0001
00090 #endif
00091 
00092 /* WAVE form wFormatTag IDs */
00093 #define  WAVE_FORMAT_UNKNOWN            0x0000  /*  Microsoft Corporation  */
00094 #define  WAVE_FORMAT_ADPCM          0x0002  /*  Microsoft Corporation  */
00095 #define  WAVE_FORMAT_IBM_CVSD           0x0005  /*  IBM Corporation  */
00096 #define  WAVE_FORMAT_ALAW           0x0006  /*  Microsoft Corporation  */
00097 #define  WAVE_FORMAT_MULAW          0x0007  /*  Microsoft Corporation  */
00098 #define  WAVE_FORMAT_OKI_ADPCM          0x0010  /*  OKI  */
00099 #define  WAVE_FORMAT_DVI_ADPCM          0x0011  /*  Intel Corporation  */
00100 #define  WAVE_FORMAT_IMA_ADPCM          (WAVE_FORMAT_DVI_ADPCM) /*  Intel Corporation  */
00101 #define  WAVE_FORMAT_MEDIASPACE_ADPCM       0x0012  /*  Videologic  */
00102 #define  WAVE_FORMAT_SIERRA_ADPCM       0x0013  /*  Sierra Semiconductor Corp  */
00103 #define  WAVE_FORMAT_G723_ADPCM         0x0014  /*  Antex Electronics Corporation  */
00104 #define  WAVE_FORMAT_DIGISTD            0x0015  /*  DSP Solutions, Inc.  */
00105 #define  WAVE_FORMAT_DIGIFIX            0x0016  /*  DSP Solutions, Inc.  */
00106 #define  WAVE_FORMAT_DIALOGIC_OKI_ADPCM     0x0017  /*  Dialogic Corporation  */
00107 #define  WAVE_FORMAT_YAMAHA_ADPCM       0x0020  /*  Yamaha Corporation of America  */
00108 #define  WAVE_FORMAT_SONARC         0x0021  /*  Speech Compression  */
00109 #define  WAVE_FORMAT_DSPGROUP_TRUESPEECH    0x0022  /*  DSP Group, Inc  */
00110 #define  WAVE_FORMAT_ECHOSC1            0x0023  /*  Echo Speech Corporation  */
00111 #define  WAVE_FORMAT_AUDIOFILE_AF36     0x0024  /*    */
00112 #define  WAVE_FORMAT_APTX           0x0025  /*  Audio Processing Technology  */
00113 #define  WAVE_FORMAT_AUDIOFILE_AF10     0x0026  /*    */
00114 #define  WAVE_FORMAT_DOLBY_AC2          0x0030  /*  Dolby Laboratories  */
00115 #define  WAVE_FORMAT_GSM610         0x0031  /*  Microsoft Corporation  */
00116 #define  WAVE_FORMAT_ANTEX_ADPCME       0x0033  /*  Antex Electronics Corporation  */
00117 #define  WAVE_FORMAT_CONTROL_RES_VQLPC      0x0034  /*  Control Resources Limited  */
00118 #define  WAVE_FORMAT_DIGIREAL           0x0035  /*  DSP Solutions, Inc.  */
00119 #define  WAVE_FORMAT_DIGIADPCM          0x0036  /*  DSP Solutions, Inc.  */
00120 #define  WAVE_FORMAT_CONTROL_RES_CR10       0x0037  /*  Control Resources Limited  */
00121 #define  WAVE_FORMAT_NMS_VBXADPCM       0x0038  /*  Natural MicroSystems  */
00122 #define  WAVE_FORMAT_G721_ADPCM         0x0040  /*  Antex Electronics Corporation  */
00123 #define  WAVE_FORMAT_MPEG           0x0050  /*  Microsoft Corporation  */
00124 #define  WAVE_FORMAT_MPEGLAYER3         0x0055
00125 #define  WAVE_FORMAT_DOLBY_AC3_SPDIF    0x0092 /* Sonic Foundry */
00126 #define  WAVE_FORMAT_CREATIVE_ADPCM     0x0200  /*  Creative Labs, Inc  */
00127 #define  WAVE_FORMAT_CREATIVE_FASTSPEECH8   0x0202  /*  Creative Labs, Inc  */
00128 #define  WAVE_FORMAT_CREATIVE_FASTSPEECH10  0x0203  /*  Creative Labs, Inc  */
00129 #define  WAVE_FORMAT_FM_TOWNS_SND       0x0300  /*  Fujitsu Corp.  */
00130 #define  WAVE_FORMAT_OLIGSM         0x1000  /*  Ing C. Olivetti & C., S.p.A.  */
00131 #define  WAVE_FORMAT_OLIADPCM           0x1001  /*  Ing C. Olivetti & C., S.p.A.  */
00132 #define  WAVE_FORMAT_OLICELP            0x1002  /*  Ing C. Olivetti & C., S.p.A.  */
00133 #define  WAVE_FORMAT_OLISBC         0x1003  /*  Ing C. Olivetti & C., S.p.A.  */
00134 #define  WAVE_FORMAT_OLIOPR         0x1004  /*  Ing C. Olivetti & C., S.p.A.  */
00135 
00136 #define   MM_UNMAPPED                   0xffff
00137 #define   MM_PID_UNMAPPED               MM_UNMAPPED
00138 
00139 #if !defined(WAVE_FORMAT_EXTENSIBLE)
00140 #define  WAVE_FORMAT_EXTENSIBLE         0xFFFE  /* Microsoft */
00141 #endif
00142 
00143 #define WAVE_FORMAT_DEVELOPMENT             (0xFFFF)
00144 
00145 typedef struct adpcmcoef_tag {
00146     short   iCoef1;
00147     short   iCoef2;
00148 } ADPCMCOEFSET;
00149 typedef ADPCMCOEFSET *PADPCMCOEFSET,
00150     *NPADPCMCOEFSET, *LPADPCMCOEFSET;
00151 
00152 typedef struct adpcmwaveformat_tag {
00153     WAVEFORMATEX    wfx;
00154     WORD            wSamplesPerBlock;
00155     WORD            wNumCoef;
00156     /* FIXME: this should be aCoef[0] */
00157     ADPCMCOEFSET    aCoef[1];
00158 } ADPCMWAVEFORMAT;
00159 typedef ADPCMWAVEFORMAT *PADPCMWAVEFORMAT,
00160     *NPADPCMWAVEFORMAT, *LPADPCMWAVEFORMAT;
00161 
00162 typedef struct dvi_adpcmwaveformat_tag {
00163     WAVEFORMATEX    wfx;
00164     WORD            wSamplesPerBlock;
00165 } DVIADPCMWAVEFORMAT;
00166 typedef DVIADPCMWAVEFORMAT *PDVIADPCMWAVEFORMAT,
00167     *NPDVIADPCMWAVEFORMAT, *LPDVIADPCMWAVEFORMAT;
00168 
00169 typedef struct ima_adpcmwaveformat_tag {
00170     WAVEFORMATEX    wfx;
00171     WORD            wSamplesPerBlock;
00172 } IMAADPCMWAVEFORMAT;
00173 typedef IMAADPCMWAVEFORMAT *PIMAADPCMWAVEFORMAT, *NPIMAADPCMWAVEFORMAT,
00174     *LPIMAADPCMWAVEFORMAT;
00175 
00176 typedef struct mediaspace_adpcmwaveformat_tag {
00177     WAVEFORMATEX    wfx;
00178     WORD            wRevision;
00179 } MEDIASPACEADPCMWAVEFORMAT;
00180 typedef MEDIASPACEADPCMWAVEFORMAT *PMEDIASPACEADPCMWAVEFORMAT,
00181     *NPMEDIASPACEADPCMWAVEFORMAT, *LPMEDIASPACEADPCMWAVEFORMAT;
00182 
00183 typedef struct sierra_adpcmwaveformat_tag {
00184     WAVEFORMATEX    wfx;
00185     WORD            wRevision;
00186 } SIERRAADPCMWAVEFORMAT;
00187 typedef SIERRAADPCMWAVEFORMAT *PSIERRAADPCMWAVEFORMAT,
00188     *NPSIERRAADPCMWAVEFORMAT, *LPSIERRAADPCMWAVEFORMAT;
00189 
00190 typedef struct g723_adpcmwaveformat_tag {
00191     WAVEFORMATEX    wfx;
00192     WORD            cbExtraSize;
00193     WORD            nAuxBlockSize;
00194 } G723_ADPCMWAVEFORMAT;
00195 typedef G723_ADPCMWAVEFORMAT *PG723_ADPCMWAVEFORMAT,
00196     *NPG723_ADPCMWAVEFORMAT, *LPG723_ADPCMWAVEFORMAT;
00197 
00198 typedef struct digistdwaveformat_tag {
00199     WAVEFORMATEX    wfx;
00200 } DIGISTDWAVEFORMAT;
00201 typedef DIGISTDWAVEFORMAT *PDIGISTDWAVEFORMAT,
00202     *NPDIGISTDWAVEFORMAT, *LPDIGISTDWAVEFORMAT;
00203 
00204 typedef struct digifixwaveformat_tag {
00205     WAVEFORMATEX    wfx;
00206 } DIGIFIXWAVEFORMAT;
00207 typedef DIGIFIXWAVEFORMAT *PDIGIFIXWAVEFORMAT,
00208     *NPDIGIFIXWAVEFORMAT, *LPDIGIFIXWAVEFORMAT;
00209 
00210 typedef struct creative_fastspeechformat_tag {
00211     WAVEFORMATEX    ewf;
00212 } DIALOGICOKIADPCMWAVEFORMAT;
00213 typedef DIALOGICOKIADPCMWAVEFORMAT *PDIALOGICOKIADPCMWAVEFORMAT,
00214     *NPDIALOGICOKIADPCMWAVEFORMAT, *LPDIALOGICOKIADPCMWAVEFORMAT;
00215 
00216 typedef struct yamaha_adpmcwaveformat_tag {
00217     WAVEFORMATEX    wfx;
00218 } YAMAHA_ADPCMWAVEFORMAT;
00219 typedef YAMAHA_ADPCMWAVEFORMAT *PYAMAHA_ADPCMWAVEFORMAT,
00220     *NPYAMAHA_ADPCMWAVEFORMAT, *LPYAMAHA_ADPCMWAVEFORMAT;
00221 
00222 typedef struct sonarcwaveformat_tag {
00223     WAVEFORMATEX    wfx;
00224     WORD            wCompType;
00225 } SONARCWAVEFORMAT;
00226 typedef SONARCWAVEFORMAT *PSONARCWAVEFORMAT,
00227     *NPSONARCWAVEFORMAT,*LPSONARCWAVEFORMAT;
00228 
00229 typedef struct truespeechwaveformat_tag {
00230     WAVEFORMATEX    wfx;
00231     WORD            wRevision;
00232     WORD            nSamplesPerBlock;
00233     BYTE            abReserved[28];
00234 } TRUESPEECHWAVEFORMAT;
00235 typedef TRUESPEECHWAVEFORMAT *PTRUESPEECHWAVEFORMAT,
00236     *NPTRUESPEECHWAVEFORMAT, *LPTRUESPEECHWAVEFORMAT;
00237 
00238 typedef struct echosc1waveformat_tag {
00239     WAVEFORMATEX    wfx;
00240 } ECHOSC1WAVEFORMAT;
00241 typedef ECHOSC1WAVEFORMAT *PECHOSC1WAVEFORMAT,
00242     *NPECHOSC1WAVEFORMAT, *LPECHOSC1WAVEFORMAT;
00243 
00244 typedef struct audiofile_af36waveformat_tag {
00245     WAVEFORMATEX    wfx;
00246 } AUDIOFILE_AF36WAVEFORMAT;
00247 typedef AUDIOFILE_AF36WAVEFORMAT *PAUDIOFILE_AF36WAVEFORMAT,
00248     *NPAUDIOFILE_AF36WAVEFORMAT, *LPAUDIOFILE_AF36WAVEFORMAT;
00249 
00250 typedef struct aptxwaveformat_tag {
00251     WAVEFORMATEX    wfx;
00252 } APTXWAVEFORMAT;
00253 typedef APTXWAVEFORMAT *PAPTXWAVEFORMAT,
00254     *NPAPTXWAVEFORMAT, *LPAPTXWAVEFORMAT;
00255 
00256 typedef struct audiofile_af10waveformat_tag {
00257     WAVEFORMATEX    wfx;
00258 } AUDIOFILE_AF10WAVEFORMAT;
00259 typedef AUDIOFILE_AF10WAVEFORMAT *PAUDIOFILE_AF10WAVEFORMAT,
00260     *NPAUDIOFILE_AF10WAVEFORMAT,  *LPAUDIOFILE_AF10WAVEFORMAT;
00261 
00262 typedef struct dolbyac2waveformat_tag {
00263     WAVEFORMATEX    wfx;
00264     WORD            nAuxBitsCode;
00265 } DOLBYAC2WAVEFORMAT;
00266 
00267 typedef struct gsm610waveformat_tag {
00268     WAVEFORMATEX    wfx;
00269     WORD            wSamplesPerBlock;
00270 } GSM610WAVEFORMAT;
00271 typedef GSM610WAVEFORMAT *PGSM610WAVEFORMAT,
00272     *NPGSM610WAVEFORMAT, *LPGSM610WAVEFORMAT;
00273 
00274 typedef struct adpcmewaveformat_tag {
00275     WAVEFORMATEX    wfx;
00276     WORD            wSamplesPerBlock;
00277 } ADPCMEWAVEFORMAT;
00278 typedef ADPCMEWAVEFORMAT *PADPCMEWAVEFORMAT,
00279     *NPADPCMEWAVEFORMAT, *LPADPCMEWAVEFORMAT;
00280 
00281 typedef struct contres_vqlpcwaveformat_tag {
00282     WAVEFORMATEX    wfx;
00283     WORD            wSamplesPerBlock;
00284 } CONTRESVQLPCWAVEFORMAT;
00285 typedef CONTRESVQLPCWAVEFORMAT *PCONTRESVQLPCWAVEFORMAT,
00286     *NPCONTRESVQLPCWAVEFORMAT, *LPCONTRESVQLPCWAVEFORMAT;
00287 
00288 typedef struct digirealwaveformat_tag {
00289     WAVEFORMATEX    wfx;
00290     WORD            wSamplesPerBlock;
00291 } DIGIREALWAVEFORMAT;
00292 typedef DIGIREALWAVEFORMAT *PDIGIREALWAVEFORMAT,
00293     *NPDIGIREALWAVEFORMAT, *LPDIGIREALWAVEFORMAT;
00294 
00295 typedef struct digiadpcmmwaveformat_tag {
00296     WAVEFORMATEX    wfx;
00297     WORD            wSamplesPerBlock;
00298 } DIGIADPCMWAVEFORMAT;
00299 typedef DIGIADPCMWAVEFORMAT *PDIGIADPCMWAVEFORMAT,
00300     *NPDIGIADPCMWAVEFORMAT, *LPDIGIADPCMWAVEFORMAT;
00301 
00302 typedef struct contres_cr10waveformat_tag {
00303     WAVEFORMATEX    wfx;
00304     WORD            wSamplesPerBlock;
00305 } CONTRESCR10WAVEFORMAT;
00306 typedef CONTRESCR10WAVEFORMAT *PCONTRESCR10WAVEFORMAT,
00307     *NPCONTRESCR10WAVEFORMAT, *LPCONTRESCR10WAVEFORMAT;
00308 
00309 typedef struct nms_vbxadpcmmwaveformat_tag {
00310     WAVEFORMATEX    wfx;
00311     WORD            wSamplesPerBlock;
00312 } NMS_VBXADPCMWAVEFORMAT;
00313 typedef NMS_VBXADPCMWAVEFORMAT *PNMS_VBXADPCMWAVEFORMAT,
00314     *NPNMS_VBXADPCMWAVEFORMAT, *LPNMS_VBXADPCMWAVEFORMAT;
00315 
00316 typedef struct g721_adpcmwaveformat_tag {
00317     WAVEFORMATEX    wfx;
00318     WORD            nAuxBlockSize;
00319 } G721_ADPCMWAVEFORMAT;
00320 typedef G721_ADPCMWAVEFORMAT *PG721_ADPCMWAVEFORMAT,
00321     *NG721_ADPCMWAVEFORMAT, *LPG721_ADPCMWAVEFORMAT;
00322 
00323 typedef struct creative_adpcmwaveformat_tag {
00324     WAVEFORMATEX    wfx;
00325     WORD            wRevision;
00326 } CREATIVEADPCMWAVEFORMAT;
00327 typedef CREATIVEADPCMWAVEFORMAT *PCREATIVEADPCMWAVEFORMAT,
00328     *NPCREATIVEADPCMWAVEFORMAT, *LPCREATIVEADPCMWAVEFORMAT;
00329 
00330 typedef struct creative_fastspeech8format_tag {
00331     WAVEFORMATEX    wfx;
00332     WORD wRevision;
00333 } CREATIVEFASTSPEECH8WAVEFORMAT;
00334 typedef CREATIVEFASTSPEECH8WAVEFORMAT *PCREATIVEFASTSPEECH8WAVEFORMAT,
00335     *NPCREATIVEFASTSPEECH8WAVEFORMAT, *LPCREATIVEFASTSPEECH8WAVEFORMAT;
00336 
00337 typedef struct creative_fastspeech10format_tag {
00338     WAVEFORMATEX    wfx;
00339     WORD wRevision;
00340 } CREATIVEFASTSPEECH10WAVEFORMAT;
00341 typedef CREATIVEFASTSPEECH10WAVEFORMAT *PCREATIVEFASTSPEECH10WAVEFORMAT,
00342     *NPCREATIVEFASTSPEECH10WAVEFORMAT, *LPCREATIVEFASTSPEECH10WAVEFORMAT;
00343 
00344 typedef struct fmtowns_snd_waveformat_tag {
00345     WAVEFORMATEX    wfx;
00346     WORD            wRevision;
00347 } FMTOWNS_SND_WAVEFORMAT;
00348 typedef FMTOWNS_SND_WAVEFORMAT *PFMTOWNS_SND_WAVEFORMAT,
00349     *NPFMTOWNS_SND_WAVEFORMAT, *LPFMTOWNS_SND_WAVEFORMAT;
00350 
00351 typedef struct oligsmwaveformat_tag {
00352     WAVEFORMATEX    wfx;
00353 } OLIGSMWAVEFORMAT;
00354 typedef OLIGSMWAVEFORMAT *POLIGSMWAVEFORMAT,
00355     *NPOLIGSMWAVEFORMAT, *LPOLIGSMWAVEFORMAT;
00356 
00357 typedef struct oliadpcmwaveformat_tag {
00358     WAVEFORMATEX    wfx;
00359 } OLIADPCMWAVEFORMAT;
00360 typedef OLIADPCMWAVEFORMAT *POLIADPCMWAVEFORMAT,
00361     *NPOLIADPCMWAVEFORMAT, *LPOLIADPCMWAVEFORMAT;
00362 
00363 typedef struct olicelpwaveformat_tag {
00364     WAVEFORMATEX    wfx;
00365 } OLICELPWAVEFORMAT;
00366 typedef OLICELPWAVEFORMAT *POLICELPWAVEFORMAT,
00367     *NPOLICELPWAVEFORMAT, *LPOLICELPWAVEFORMAT;
00368 
00369 typedef struct olisbcwaveformat_tag {
00370     WAVEFORMATEX    wfx;
00371 } OLISBCWAVEFORMAT;
00372 typedef OLISBCWAVEFORMAT *POLISBCWAVEFORMAT,
00373     *NPOLISBCWAVEFORMAT, *LPOLISBCWAVEFORMAT;
00374 
00375 typedef struct olioprwaveformat_tag {
00376     WAVEFORMATEX    wfx;
00377 } OLIOPRWAVEFORMAT;
00378 typedef OLIOPRWAVEFORMAT *POLIOPRWAVEFORMAT,
00379     *NPOLIOPRWAVEFORMAT, *LPOLIOPRWAVEFORMAT;
00380 
00381 typedef struct csimaadpcmwaveformat_tag {
00382     WAVEFORMATEX    wfx;
00383 } CSIMAADPCMWAVEFORMAT;
00384 typedef CSIMAADPCMWAVEFORMAT *PCSIMAADPCMWAVEFORMAT,
00385     *NPCSIMAADPCMWAVEFORMAT, *LPCSIMAADPCMWAVEFORMAT;
00386 
00387 typedef struct mpeg1waveformat_tag {
00388     WAVEFORMATEX    wfx;
00389     WORD        fwHeadLayer;
00390     DWORD       dwHeadBitrate;
00391     WORD        fwHeadMode;
00392     WORD        fwHeadModeExt;
00393     WORD        wHeadEmphasis;
00394     WORD        fwHeadFlags;
00395     DWORD       dwPTSLow;
00396     DWORD       dwPTSHigh;
00397 } MPEG1WAVEFORMAT,* PMPEG1WAVEFORMAT;
00398 
00399 #define ACM_MPEG_LAYER1     0x0001
00400 #define ACM_MPEG_LAYER2     0x0002
00401 #define ACM_MPEG_LAYER3     0x0004
00402 
00403 #define ACM_MPEG_STEREO     0x0001
00404 #define ACM_MPEG_JOINTSTEREO    0x0002
00405 #define ACM_MPEG_DUALCHANNEL    0x0004
00406 #define ACM_MPEG_SINGLECHANNEL  0x0008
00407 #define ACM_MPEG_PRIVATEBIT 0x0001
00408 #define ACM_MPEG_COPYRIGHT  0x0002
00409 #define ACM_MPEG_ORIGINALHOME   0x0004
00410 #define ACM_MPEG_PROTECTIONBIT  0x0008
00411 #define ACM_MPEG_ID_MPEG1   0x0010
00412 
00413 typedef struct mpeglayer3waveformat_tag {
00414     WAVEFORMATEX    wfx;
00415     WORD        wID;
00416     DWORD       fdwFlags;
00417     WORD        nBlockSize;
00418     WORD        nFramesPerBlock;
00419     WORD        nCodecDelay;
00420 } MPEGLAYER3WAVEFORMAT;
00421 
00422 #define MPEGLAYER3_WFX_EXTRA_BYTES   12
00423 
00424 #define MPEGLAYER3_ID_UNKNOWN           0
00425 #define MPEGLAYER3_ID_MPEG      1
00426 #define MPEGLAYER3_ID_CONSTANTFRAMESIZE 2
00427 
00428 #define MPEGLAYER3_FLAG_PADDING_ISO 0x00000000
00429 #define MPEGLAYER3_FLAG_PADDING_ON  0x00000001
00430 #define MPEGLAYER3_FLAG_PADDING_OFF 0x00000002
00431 
00432 #ifdef GUID_DEFINED
00433 
00434 #ifndef _WAVEFORMATEXTENSIBLE_
00435 #define _WAVEFORMATEXTENSIBLE_
00436 typedef struct {
00437     WAVEFORMATEX    Format;
00438     union {
00439         WORD        wValidBitsPerSample;
00440         WORD        wSamplesPerBlock;
00441         WORD        wReserved;
00442     } Samples;
00443     DWORD           dwChannelMask;
00444     GUID            SubFormat;
00445 } WAVEFORMATEXTENSIBLE, *PWAVEFORMATEXTENSIBLE;
00446 #endif /* _WAVEFORMATEXTENSIBLE_ */
00447 
00448 #endif /* GUID_DEFINED */
00449 
00450 typedef WAVEFORMATEXTENSIBLE    WAVEFORMATPCMEX;
00451 typedef WAVEFORMATPCMEX*        PWAVEFORMATPCMEX;
00452 typedef WAVEFORMATPCMEX*        NPWAVEFORMATPCMEX;
00453 typedef WAVEFORMATPCMEX*        LPWAVEFORMATPCMEX;
00454 
00455 typedef WAVEFORMATEXTENSIBLE    WAVEFORMATIEEEFLOATEX;
00456 typedef WAVEFORMATIEEEFLOATEX*  PWAVEFORMATIEEEFLOATEX;
00457 typedef WAVEFORMATIEEEFLOATEX*  NPWAVEFORMATIEEEFLOATEX;
00458 typedef WAVEFORMATIEEEFLOATEX*  LPWAVEFORMATIEEEFLOATEX;
00459 
00460 #ifndef _SPEAKER_POSITIONS_
00461 #define _SPEAKER_POSITIONS_
00462 
00463 #define SPEAKER_FRONT_LEFT              0x00000001
00464 #define SPEAKER_FRONT_RIGHT             0x00000002
00465 #define SPEAKER_FRONT_CENTER            0x00000004
00466 #define SPEAKER_LOW_FREQUENCY           0x00000008
00467 #define SPEAKER_BACK_LEFT               0x00000010
00468 #define SPEAKER_BACK_RIGHT              0x00000020
00469 #define SPEAKER_FRONT_LEFT_OF_CENTER    0x00000040
00470 #define SPEAKER_FRONT_RIGHT_OF_CENTER   0x00000080
00471 #define SPEAKER_BACK_CENTER             0x00000100
00472 #define SPEAKER_SIDE_LEFT               0x00000200
00473 #define SPEAKER_SIDE_RIGHT              0x00000400
00474 #define SPEAKER_TOP_CENTER              0x00000800
00475 #define SPEAKER_TOP_FRONT_LEFT          0x00001000
00476 #define SPEAKER_TOP_FRONT_CENTER        0x00002000
00477 #define SPEAKER_TOP_FRONT_RIGHT         0x00004000
00478 #define SPEAKER_TOP_BACK_LEFT           0x00008000
00479 #define SPEAKER_TOP_BACK_CENTER         0x00010000
00480 #define SPEAKER_TOP_BACK_RIGHT          0x00020000
00481 #define SPEAKER_RESERVED                0x7FFC0000
00482 #define SPEAKER_ALL                     0x80000000
00483 
00484 #endif /* _SPEAKER_POSITIONS_ */
00485 
00486 
00487 /* DIB stuff */
00488 
00489 #ifndef BI_BITFIELDS
00490 #define BI_BITFIELDS     3
00491 #endif
00492 
00493 #ifndef QUERYDIBSUPPORT
00494 #define QUERYDIBSUPPORT     3073
00495 #define QDI_SETDIBITS       1
00496 #define QDI_GETDIBITS       2
00497 #define QDI_DIBTOSCREEN     4
00498 #define QDI_STRETCHDIB      8
00499 #endif
00500 
00501 #ifndef NOBITMAP
00502 typedef struct tagEXBMINFOHEADER {
00503     BITMAPINFOHEADER bmi;
00504     DWORD biExtDataOffset;
00505 } EXBMINFOHEADER;
00506 #endif
00507 
00508 
00509 /* Video stuff */
00510 
00511 #ifndef NONEWIC
00512 
00513 #ifndef ICTYPE_VIDEO
00514 #define ICTYPE_VIDEO        mmioFOURCC('v', 'i', 'd', 'c')
00515 #define ICTYPE_AUDIO        mmioFOURCC('a', 'u', 'd', 'c')
00516 #endif
00517 
00518 #endif
00519 
00520 #ifndef RC_INVOKED
00521 #include "poppack.h"
00522 #endif
00523 
00524 #endif /* __WINE_MMREG_H */

Generated on Sun May 27 2012 04:31:40 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.