<?xml version="1.0"?>
<doc>
    <assembly>
        <name>CSCore</name>
    </assembly>
    <members>
        <member name="T:CSCore.AudioSubTypes">
            <summary>
            Defines <see cref="T:CSCore.AudioSubTypes"/> and provides methods to convert between <see cref="T:CSCore.AudioEncoding"/>-values and <see cref="T:CSCore.AudioSubTypes"/>-values.
            </summary>
            <remarks><see cref="T:CSCore.AudioSubTypes"/> are used by the <see cref="T:CSCore.WaveFormatExtensible"/>, the <see cref="T:CSCore.MediaFoundation.MFMediaType"/> and the <see cref="T:CSCore.DMO.MediaType"/> class.</remarks>
        </member>
        <member name="F:CSCore.AudioSubTypes.Unknown">
            <summary>WAVE_FORMAT_UNKNOWN,	Microsoft Corporation</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.Pcm">
            <summary>WAVE_FORMAT_PCM		Microsoft Corporation</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.Adpcm">
            <summary>WAVE_FORMAT_ADPCM		Microsoft Corporation</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.IeeeFloat">
            <summary>WAVE_FORMAT_IEEE_FLOAT Microsoft Corporation</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.Vselp">
            <summary>WAVE_FORMAT_VSELP		Compaq Computer Corp.</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.IbmCvsd">
            <summary>WAVE_FORMAT_IBM_CVSD	IBM Corporation</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.ALaw">
            <summary>WAVE_FORMAT_ALAW		Microsoft Corporation</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.MuLaw">
            <summary>WAVE_FORMAT_MULAW		Microsoft Corporation</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.Dts">
            <summary>WAVE_FORMAT_DTS		Microsoft Corporation</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.Drm">
            <summary>WAVE_FORMAT_DRM		Microsoft Corporation</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WmaVoice9">
            <summary>WAVE_FORMAT_WMAVOICE9 </summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.OkiAdpcm">
            <summary>WAVE_FORMAT_OKI_ADPCM	OKI</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.DviAdpcm">
            <summary>WAVE_FORMAT_DVI_ADPCM	Intel Corporation</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.ImaAdpcm">
            <summary>WAVE_FORMAT_IMA_ADPCM  Intel Corporation</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.MediaspaceAdpcm">
            <summary>WAVE_FORMAT_MEDIASPACE_ADPCM Videologic</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.SierraAdpcm">
            <summary>WAVE_FORMAT_SIERRA_ADPCM Sierra Semiconductor Corp </summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.G723Adpcm">
            <summary>WAVE_FORMAT_G723_ADPCM Antex Electronics Corporation </summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.DigiStd">
            <summary>WAVE_FORMAT_DIGISTD DSP Solutions, Inc.</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.DigiFix">
            <summary>WAVE_FORMAT_DIGIFIX DSP Solutions, Inc.</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.DialogicOkiAdpcm">
            <summary>WAVE_FORMAT_DIALOGIC_OKI_ADPCM Dialogic Corporation</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.MediaVisionAdpcm">
            <summary>WAVE_FORMAT_MEDIAVISION_ADPCM Media Vision, Inc.</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.CUCodec">
            <summary>WAVE_FORMAT_CU_CODEC Hewlett-Packard Company </summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.YamahaAdpcm">
            <summary>WAVE_FORMAT_YAMAHA_ADPCM Yamaha Corporation of America</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.SonarC">
            <summary>WAVE_FORMAT_SONARC Speech Compression</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.DspGroupTrueSpeech">
            <summary>WAVE_FORMAT_DSPGROUP_TRUESPEECH DSP Group, Inc </summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.EchoSpeechCorporation1">
            <summary>WAVE_FORMAT_ECHOSC1 Echo Speech Corporation</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.AudioFileAf36">
            <summary>WAVE_FORMAT_AUDIOFILE_AF36, Virtual Music, Inc.</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.Aptx">
            <summary>WAVE_FORMAT_APTX Audio Processing Technology</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.AudioFileAf10">
            <summary>WAVE_FORMAT_AUDIOFILE_AF10, Virtual Music, Inc.</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.Prosody1612">
            <summary>WAVE_FORMAT_PROSODY_1612, Aculab plc</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.Lrc">
            <summary>WAVE_FORMAT_LRC, Merging Technologies S.A. </summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.DolbyAc2">
            <summary>WAVE_FORMAT_DOLBY_AC2, Dolby Laboratories</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.Gsm610">
            <summary>WAVE_FORMAT_GSM610, Microsoft Corporation</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.MsnAudio">
            <summary>WAVE_FORMAT_MSNAUDIO, Microsoft Corporation</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.AntexAdpcme">
            <summary>WAVE_FORMAT_ANTEX_ADPCME, Antex Electronics Corporation</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.ControlResVqlpc">
            <summary>WAVE_FORMAT_CONTROL_RES_VQLPC, Control Resources Limited </summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.DigiReal">
            <summary>WAVE_FORMAT_DIGIREAL, DSP Solutions, Inc. </summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.DigiAdpcm">
            <summary>WAVE_FORMAT_DIGIADPCM, DSP Solutions, Inc.</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.ControlResCr10">
            <summary>WAVE_FORMAT_CONTROL_RES_CR10, Control Resources Limited</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_NMS_VBXADPCM">
            <summary>WAVE_FORMAT_NMS_VBXADPCM</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_CS_IMAADPCM">
            <summary>WAVE_FORMAT_CS_IMAADPCM</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_ECHOSC3">
            <summary>WAVE_FORMAT_ECHOSC3</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_ROCKWELL_ADPCM">
            <summary>WAVE_FORMAT_ROCKWELL_ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_ROCKWELL_DIGITALK">
            <summary>WAVE_FORMAT_ROCKWELL_DIGITALK</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_XEBEC">
            <summary>WAVE_FORMAT_XEBEC</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_G721_ADPCM">
            <summary>WAVE_FORMAT_G721_ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_G728_CELP">
            <summary>WAVE_FORMAT_G728_CELP</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_MSG723">
            <summary>WAVE_FORMAT_MSG723</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.Mpeg">
            <summary>WAVE_FORMAT_MPEG, Microsoft Corporation </summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_RT24">
            <summary>WAVE_FORMAT_RT24</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_PAC">
            <summary>WAVE_FORMAT_PAC</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.MpegLayer3">
            <summary>WAVE_FORMAT_MPEGLAYER3, ISO/MPEG Layer3 Format Tag </summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_LUCENT_G723">
            <summary>WAVE_FORMAT_LUCENT_G723</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_CIRRUS">
            <summary>WAVE_FORMAT_CIRRUS</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_ESPCM">
            <summary>WAVE_FORMAT_ESPCM</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_VOXWARE">
            <summary>WAVE_FORMAT_VOXWARE</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_CANOPUS_ATRAC">
            <summary>WAVE_FORMAT_CANOPUS_ATRAC</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_G726_ADPCM">
            <summary>WAVE_FORMAT_G726_ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_G722_ADPCM">
            <summary>WAVE_FORMAT_G722_ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_DSAT_DISPLAY">
            <summary>WAVE_FORMAT_DSAT_DISPLAY</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_VOXWARE_BYTE_ALIGNED">
            <summary>WAVE_FORMAT_VOXWARE_BYTE_ALIGNED</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_VOXWARE_AC8">
            <summary>WAVE_FORMAT_VOXWARE_AC8</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_VOXWARE_AC10">
            <summary>WAVE_FORMAT_VOXWARE_AC10</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_VOXWARE_AC16">
            <summary>WAVE_FORMAT_VOXWARE_AC16</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_VOXWARE_AC20">
            <summary>WAVE_FORMAT_VOXWARE_AC20</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_VOXWARE_RT24">
            <summary>WAVE_FORMAT_VOXWARE_RT24</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_VOXWARE_RT29">
            <summary>WAVE_FORMAT_VOXWARE_RT29</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_VOXWARE_RT29HW">
            <summary>WAVE_FORMAT_VOXWARE_RT29HW</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_VOXWARE_VR12">
            <summary>WAVE_FORMAT_VOXWARE_VR12</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_VOXWARE_VR18">
            <summary>WAVE_FORMAT_VOXWARE_VR18</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_VOXWARE_TQ40">
            <summary>WAVE_FORMAT_VOXWARE_TQ40</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_SOFTSOUND">
            <summary>WAVE_FORMAT_SOFTSOUND</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_VOXWARE_TQ60">
            <summary>WAVE_FORMAT_VOXWARE_TQ60</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_MSRT24">
            <summary>WAVE_FORMAT_MSRT24</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_G729A">
            <summary>WAVE_FORMAT_G729A</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_MVI_MVI2">
            <summary>WAVE_FORMAT_MVI_MVI2</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_DF_G726">
            <summary>WAVE_FORMAT_DF_G726</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_DF_GSM610">
            <summary>WAVE_FORMAT_DF_GSM610</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_ISIAUDIO">
            <summary>WAVE_FORMAT_ISIAUDIO</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_ONLIVE">
            <summary>WAVE_FORMAT_ONLIVE</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_SBC24">
            <summary>WAVE_FORMAT_SBC24</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_DOLBY_AC3_SPDIF">
            <summary>WAVE_FORMAT_DOLBY_AC3_SPDIF</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_MEDIASONIC_G723">
            <summary>WAVE_FORMAT_MEDIASONIC_G723</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_PROSODY_8KBPS">
            <summary>WAVE_FORMAT_PROSODY_8KBPS</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_ZYXEL_ADPCM">
            <summary>WAVE_FORMAT_ZYXEL_ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_PHILIPS_LPCBB">
            <summary>WAVE_FORMAT_PHILIPS_LPCBB</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_PACKED">
            <summary>WAVE_FORMAT_PACKED</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_MALDEN_PHONYTALK">
            <summary>WAVE_FORMAT_MALDEN_PHONYTALK</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.Gsm">
            <summary>WAVE_FORMAT_GSM</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.G729">
            <summary>WAVE_FORMAT_G729</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.G723">
            <summary>WAVE_FORMAT_G723</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.Acelp">
            <summary>WAVE_FORMAT_ACELP</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.RawAac">
            <summary>
                WAVE_FORMAT_RAW_AAC1
            </summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_RHETOREX_ADPCM">
            <summary>WAVE_FORMAT_RHETOREX_ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_IRAT">
            <summary>WAVE_FORMAT_IRAT</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_VIVO_G723">
            <summary>WAVE_FORMAT_VIVO_G723</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_VIVO_SIREN">
            <summary>WAVE_FORMAT_VIVO_SIREN</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_DIGITAL_G723">
            <summary>WAVE_FORMAT_DIGITAL_G723</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_SANYO_LD_ADPCM">
            <summary>WAVE_FORMAT_SANYO_LD_ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_SIPROLAB_ACEPLNET">
            <summary>WAVE_FORMAT_SIPROLAB_ACEPLNET</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_SIPROLAB_ACELP4800">
            <summary>WAVE_FORMAT_SIPROLAB_ACELP4800</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_SIPROLAB_ACELP8V3">
            <summary>WAVE_FORMAT_SIPROLAB_ACELP8V3</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_SIPROLAB_G729">
            <summary>WAVE_FORMAT_SIPROLAB_G729</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_SIPROLAB_G729A">
            <summary>WAVE_FORMAT_SIPROLAB_G729A</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_SIPROLAB_KELVIN">
            <summary>WAVE_FORMAT_SIPROLAB_KELVIN</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_G726ADPCM">
            <summary>WAVE_FORMAT_G726ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_QUALCOMM_PUREVOICE">
            <summary>WAVE_FORMAT_QUALCOMM_PUREVOICE</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_QUALCOMM_HALFRATE">
            <summary>WAVE_FORMAT_QUALCOMM_HALFRATE</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_TUBGSM">
            <summary>WAVE_FORMAT_TUBGSM</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_MSAUDIO1">
            <summary>WAVE_FORMAT_MSAUDIO1</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WindowsMediaAudio">
            <summary>
                Windows Media Audio, WAVE_FORMAT_WMAUDIO2, Microsoft Corporation
            </summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WindowsMediaAudioProfessional">
            <summary>
                Windows Media Audio Professional WAVE_FORMAT_WMAUDIO3, Microsoft Corporation
            </summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WindowsMediaAudioLosseless">
            <summary>
                Windows Media Audio Lossless, WAVE_FORMAT_WMAUDIO_LOSSLESS
            </summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WindowsMediaAudioSpdif">
            <summary>
                Windows Media Audio Professional over SPDIF WAVE_FORMAT_WMASPDIF (0x0164)
            </summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_UNISYS_NAP_ADPCM">
            <summary>WAVE_FORMAT_UNISYS_NAP_ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_UNISYS_NAP_ULAW">
            <summary>WAVE_FORMAT_UNISYS_NAP_ULAW</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_UNISYS_NAP_ALAW">
            <summary>WAVE_FORMAT_UNISYS_NAP_ALAW</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_UNISYS_NAP_16K">
            <summary>WAVE_FORMAT_UNISYS_NAP_16K</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_CREATIVE_ADPCM">
            <summary>WAVE_FORMAT_CREATIVE_ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_CREATIVE_FASTSPEECH8">
            <summary>WAVE_FORMAT_CREATIVE_FASTSPEECH8</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_CREATIVE_FASTSPEECH10">
            <summary>WAVE_FORMAT_CREATIVE_FASTSPEECH10</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_UHER_ADPCM">
            <summary>WAVE_FORMAT_UHER_ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_QUARTERDECK">
            <summary>WAVE_FORMAT_QUARTERDECK</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_ILINK_VC">
            <summary>WAVE_FORMAT_ILINK_VC</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_RAW_SPORT">
            <summary>WAVE_FORMAT_RAW_SPORT</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_ESST_AC3">
            <summary>WAVE_FORMAT_ESST_AC3</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_IPI_HSX">
            <summary>WAVE_FORMAT_IPI_HSX</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_IPI_RPELP">
            <summary>WAVE_FORMAT_IPI_RPELP</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_CS2">
            <summary>WAVE_FORMAT_CS2</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_SONY_SCX">
            <summary>WAVE_FORMAT_SONY_SCX</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_FM_TOWNS_SND">
            <summary>WAVE_FORMAT_FM_TOWNS_SND</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_BTV_DIGITAL">
            <summary>WAVE_FORMAT_BTV_DIGITAL</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_QDESIGN_MUSIC">
            <summary>WAVE_FORMAT_QDESIGN_MUSIC</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_VME_VMPCM">
            <summary>WAVE_FORMAT_VME_VMPCM</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_TPC">
            <summary>WAVE_FORMAT_TPC</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_OLIGSM">
            <summary>WAVE_FORMAT_OLIGSM</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_OLIADPCM">
            <summary>WAVE_FORMAT_OLIADPCM</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_OLICELP">
            <summary>WAVE_FORMAT_OLICELP</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_OLISBC">
            <summary>WAVE_FORMAT_OLISBC</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_OLIOPR">
            <summary>WAVE_FORMAT_OLIOPR</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_LH_CODEC">
            <summary>WAVE_FORMAT_LH_CODEC</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_NORRIS">
            <summary>WAVE_FORMAT_NORRIS</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_SOUNDSPACE_MUSICOMPRESS">
            <summary>WAVE_FORMAT_SOUNDSPACE_MUSICOMPRESS</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.MPEG_ADTS_AAC">
            <summary>
                Advanced Audio Coding (AAC) audio in Audio Data Transport Stream (ADTS) format.
                The format block is a WAVEFORMATEX structure with wFormatTag equal to WAVE_FORMAT_MPEG_ADTS_AAC.
            </summary>
            <remarks>
                The WAVEFORMATEX structure specifies the core AAC-LC sample rate and number of channels,
                prior to applying spectral band replication (SBR) or parametric stereo (PS) tools, if present.
                No additional data is required after the WAVEFORMATEX structure.
            </remarks>
            <see>http://msdn.microsoft.com/en-us/library/dd317599%28VS.85%29.aspx</see>
        </member>
        <member name="F:CSCore.AudioSubTypes.MPEG_RAW_AAC">
            <summary>MPEG_RAW_AAC</summary>
            <remarks>Source wmCodec.h</remarks>
        </member>
        <member name="F:CSCore.AudioSubTypes.MPEG_LOAS">
            <summary>
                MPEG-4 audio transport stream with a synchronization layer (LOAS) and a multiplex layer (LATM).
                The format block is a WAVEFORMATEX structure with wFormatTag equal to WAVE_FORMAT_MPEG_LOAS.
                See <see href="http://msdn.microsoft.com/en-us/library/dd317599%28VS.85%29.aspx"/>.
            </summary>
            <remarks>
                The WAVEFORMATEX structure specifies the core AAC-LC sample rate and number of channels,
                prior to applying spectral SBR or PS tools, if present.
                No additional data is required after the WAVEFORMATEX structure.
            </remarks>
        </member>
        <member name="F:CSCore.AudioSubTypes.NOKIA_MPEG_ADTS_AAC">
            <summary>NOKIA_MPEG_ADTS_AAC</summary>
            <remarks>Source wmCodec.h</remarks>
        </member>
        <member name="F:CSCore.AudioSubTypes.NOKIA_MPEG_RAW_AAC">
            <summary>NOKIA_MPEG_RAW_AAC</summary>
            <remarks>Source wmCodec.h</remarks>
        </member>
        <member name="F:CSCore.AudioSubTypes.VODAFONE_MPEG_ADTS_AAC">
            <summary>VODAFONE_MPEG_ADTS_AAC</summary>
            <remarks>Source wmCodec.h</remarks>
        </member>
        <member name="F:CSCore.AudioSubTypes.VODAFONE_MPEG_RAW_AAC">
            <summary>VODAFONE_MPEG_RAW_AAC</summary>
            <remarks>Source wmCodec.h</remarks>
        </member>
        <member name="F:CSCore.AudioSubTypes.MPEG_HEAAC">
            <summary>
                High-Efficiency Advanced Audio Coding (HE-AAC) stream.
                The format block is an HEAACWAVEFORMAT structure. See <see href="http://msdn.microsoft.com/en-us/library/dd317599%28VS.85%29.aspx"/>.
            </summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_DVM">
            <summary>WAVE_FORMAT_DVM</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.Vorbis1">
            <summary>WAVE_FORMAT_VORBIS1 "Og" Original stream compatible</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.Vorbis2">
            <summary>WAVE_FORMAT_VORBIS2 "Pg" Have independent header</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.Vorbis3">
            <summary>WAVE_FORMAT_VORBIS3 "Qg" Have no codebook header</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.Vorbis1P">
            <summary>WAVE_FORMAT_VORBIS1P "og" Original stream compatible</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.Vorbis2P">
            <summary>WAVE_FORMAT_VORBIS2P "pg" Have independent headere</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.Vorbis3P">
            <summary>WAVE_FORMAT_VORBIS3P "qg" Have no codebook header</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_RAW_AAC1">
            <summary>
                Raw AAC1
            </summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_WMAVOICE9">
            <summary>
                Windows Media Audio Voice (WMA Voice)
            </summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.Extensible">
            <summary>Extensible</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_DEVELOPMENT">
            <summary>WAVE_FORMAT_DEVELOPMENT</summary>
        </member>
        <member name="F:CSCore.AudioSubTypes.WAVE_FORMAT_FLAC">
            <summary>
            FLAC
            </summary>
        </member>
        <member name="M:CSCore.AudioSubTypes.EncodingFromSubType(System.Guid)">
            <summary>
            Converts a <see cref="T:CSCore.AudioSubTypes"/>-value to a <see cref="T:CSCore.AudioEncoding"/>-value.
            </summary>
            <param name="audioSubType">The <see cref="T:CSCore.AudioSubTypes"/>-value to convert to the equivalent <see cref="T:CSCore.AudioEncoding"/>-value.</param>
            <returns>The <see cref="T:CSCore.AudioEncoding"/> which belongs to the specified <paramref name="audioSubType"/>.</returns>
        </member>
        <member name="M:CSCore.AudioSubTypes.SubTypeFromEncoding(CSCore.AudioEncoding)">
            <summary>
            Converts a <see cref="T:CSCore.AudioEncoding"/> value to a <see cref="T:CSCore.AudioSubTypes"/>-value.
            </summary>
            <param name="audioEncoding">The <see cref="T:CSCore.AudioEncoding"/> to convert to the equivalent <see cref="T:CSCore.AudioSubTypes"/>-value.</param>
            <returns>The <see cref="T:CSCore.AudioSubTypes"/>-value which belongs to the specified <paramref name="audioEncoding"/>.</returns>
        </member>
        <member name="F:CSCore.AudioSubTypes.MediaTypeAudio">
            <summary>
            The Major Type for <c>Audio</c> media types.
            </summary>
        </member>
        <member name="T:CSCore.ChannelMask">
            <summary>
                Channelmask used by <see cref="T:CSCore.WaveFormatExtensible" />. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/dd757714(v=vs.85).aspx
            </summary>
        </member>
        <member name="F:CSCore.ChannelMask.SpeakerFrontLeft">
            <summary>
                Front left speaker.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMask.SpeakerFrontRight">
            <summary>
                Front right speaker.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMask.SpeakerFrontCenter">
            <summary>
                Front center speaker.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMask.SpeakerLowFrequency">
            <summary>
                Low frequency speaker.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMask.SpeakerBackLeft">
            <summary>
                Back left speaker.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMask.SpeakerBackRight">
            <summary>
                Back right speaker.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMask.SpeakerFrontLeftOfCenter">
            <summary>
                Front left of center speaker.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMask.SpeakerFrontRightOfCenter">
            <summary>
                Front right of center speaker.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMask.SpeakerBackCenter">
            <summary>
                Back center speaker.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMask.SpeakerSideLeft">
            <summary>
                Side left speaker.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMask.SpeakerSideRight">
            <summary>
                Side right speaker.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMask.SpeakerTopCenter">
            <summary>
                Top center speaker.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMask.SpeakerTopFrontLeft">
            <summary>
                Top front left speaker.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMask.SpeakerTopFrontCenter">
            <summary>
                Top front center speaker.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMask.SpeakerTopFrontRight">
            <summary>
                Top front right speaker.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMask.SpeakerTopBackLeft">
            <summary>
                Top back left speaker.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMask.SpeakerTopBackCenter">
            <summary>
                Top back center speaker.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMask.SpeakerTopBackRight">
            <summary>
                Top back right speaker.
            </summary>
        </member>
        <member name="T:CSCore.ChannelMasks">
            <summary>
            Defines common channelmasks.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMasks.MonoMask">
            <summary>
            Mono.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMasks.StereoMask">
            <summary>
            Stereo.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMasks.FiveDotOneWithRearMask">
            <summary>
            5.1 surround with rear speakers.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMasks.FiveDotOneWithSideMask">
            <summary>
            5.1 surround with side speakers.
            </summary>
        </member>
        <member name="F:CSCore.ChannelMasks.SevenDotOneMask">
            <summary>
            7.1 surround.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.AAC.AacAudioProfileLevelIndication">
            <summary>
            Specifies the audio profile and level of an Advanced Audio Coding (AAC) stream.
            <see cref="F:CSCore.Codecs.AAC.AacAudioProfileLevelIndication.AACProfile_L2_0x29"/> is the default setting.
            For more information, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd319560(v=vs.85).aspx"/>.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.AAC.AacAudioProfileLevelIndication.None">
            <summary>
            None/Invalid
            </summary>
        </member>
        <member name="F:CSCore.Codecs.AAC.AacAudioProfileLevelIndication.AACProfile_L2_0x29">
            <summary>
            AACProfile_L2_0x29 - Default value
            </summary>
        </member>
        <member name="F:CSCore.Codecs.AAC.AacAudioProfileLevelIndication.AACProfile_L4_0x2A">
            <summary>
            AACProfile_L4_0x2A
            </summary>
        </member>
        <member name="F:CSCore.Codecs.AAC.AacAudioProfileLevelIndication.AACProfile_L5_0x2B">
            <summary>
            AACProfile_L5_0x2B 
            </summary>
        </member>
        <member name="F:CSCore.Codecs.AAC.AacAudioProfileLevelIndication.HighEfficiencyAACProfile_L2_0x2C">
            <summary>
            HighEfficiencyAACProfile_L2_0x2C 
            </summary>
        </member>
        <member name="F:CSCore.Codecs.AAC.AacAudioProfileLevelIndication.HighEfficiencyAACProfile_L3_0x2D">
            <summary>
            HighEfficiencyAACProfile_L3_0x2D 
            </summary>
        </member>
        <member name="F:CSCore.Codecs.AAC.AacAudioProfileLevelIndication.HighEfficiencyAACProfile_L4_0x2E">
            <summary>
            HighEfficiencyAACProfile_L4_0x2E 
            </summary>
        </member>
        <member name="F:CSCore.Codecs.AAC.AacAudioProfileLevelIndication.HighEfficiencyAACProfile_L5_0x2F">
            <summary>
            HighEfficiencyAACProfile_L5_0x2F
            </summary>
        </member>
        <member name="F:CSCore.Codecs.AAC.AacAudioProfileLevelIndication.ReservedForIsoUse_0x30">
            <summary>
            ReservedForIsoUse_0x30 
            </summary>
        </member>
        <member name="F:CSCore.Codecs.AAC.AacAudioProfileLevelIndication.ReservedForIsoUse_0x31">
            <summary>
            ReservedForIsoUse_0x31
            </summary>
        </member>
        <member name="F:CSCore.Codecs.AAC.AacAudioProfileLevelIndication.ReservedForIsoUse_0x32">
            <summary>
            ReservedForIsoUse_0x32
            </summary>
        </member>
        <member name="F:CSCore.Codecs.AAC.AacAudioProfileLevelIndication.ReservedForIsoUse_0x33">
            <summary>
            ReservedForIsoUse_0x33
            </summary>
        </member>
        <member name="T:CSCore.Codecs.AAC.AacEncoder">
            <summary>
            Provides an encoder for encoding raw waveform-audio data to the AAC (Advanced Audio Codec) format.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.AAC.AacEncoder.#ctor(CSCore.WaveFormat,System.IO.Stream)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.AAC.AacEncoder"/> class.
            </summary>
            <param name="sourceFormat"><see cref="T:CSCore.WaveFormat"/> of the audio data which gets encoded.</param>
            <param name="targetStream"><see cref="T:System.IO.Stream"/> which should be used to save the encoded data in.</param>
        </member>
        <member name="M:CSCore.Codecs.AAC.AacEncoder.#ctor(CSCore.WaveFormat,System.IO.Stream,System.Int32,System.Guid)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.AAC.AacEncoder"/> class.
            </summary>
            <param name="sourceFormat"><see cref="T:CSCore.WaveFormat"/> of the audio data which gets encoded.</param>
            <param name="targetStream"><see cref="T:System.IO.Stream"/> which should be used to save the encoded data in.</param>
            <param name="defaultBitrate">Default samplerate. Use 192000 as the default value.</param>
            <param name="containerType">Guid of the container type. Use <see cref="F:CSCore.MediaFoundation.TranscodeContainerTypes.MFTranscodeContainerType_MPEG4"/> as the default container.</param>
        </member>
        <member name="P:CSCore.Codecs.AAC.AacEncoder.AudioProfileLevelIndication">
            <summary>
            Gets or sets the audio profile and level of an Advanced Audio Coding (AAC) stream.
            </summary>
            <remarks>
            This attribute contains the value of the audioProfileLevelIndication field, as defined by ISO/IEC 14496-3.
            </remarks>
        </member>
        <member name="T:CSCore.Codecs.AAC.AacDecoder">
            <summary>
            Mediafoundation AAC decoder.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.AAC.AacDecoder.IsSupported">
            <summary>
            Gets a value which indicates whether the Mediafoundation AAC decoder is supported on the current platform.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.AAC.AacDecoder.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.AAC.AacDecoder"/> class.
            </summary>
            <param name="url">Url which points to a data source which provides AAC data. This is typically a filename.</param>
        </member>
        <member name="M:CSCore.Codecs.AAC.AacDecoder.#ctor(System.IO.Stream)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.AAC.AacDecoder"/> class.
            </summary>
            <param name="stream">Stream which contains AAC data.</param>
        </member>
        <member name="T:CSCore.Codecs.AIFF.AiffChunk">
            <summary>
                Decodes an aiff-chunk and provides its stored data.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.AIFF.AiffChunk.#ctor(System.IO.BinaryReader,System.String)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.AIFF.AiffChunk" /> class.
            </summary>
            <param name="binaryReader">The binary reader which provides can be used to decode the chunk.</param>
            <param name="chunkId">The chunk identifier.</param>
            <exception cref="T:System.ArgumentNullException">
                binaryReader
                or
                chunkId
            </exception>
        </member>
        <member name="P:CSCore.Codecs.AIFF.AiffChunk.BinaryReader">
            <summary>
                Gets the underlying binary reader.
            </summary>
            <remarks>Care endianness.</remarks>
        </member>
        <member name="P:CSCore.Codecs.AIFF.AiffChunk.ChunkId">
            <summary>
                Gets the ChunkId of the <see cref="T:CSCore.Codecs.AIFF.AiffChunk" />. The is used to determine the type of the <see cref="T:CSCore.Codecs.AIFF.AiffChunk" />
                .
            </summary>
        </member>
        <member name="P:CSCore.Codecs.AIFF.AiffChunk.DataSize">
            <summary>
                Gets the size of the <see cref="T:CSCore.Codecs.AIFF.AiffChunk" /> in bytes. The <see cref="P:CSCore.Codecs.AIFF.AiffChunk.ChunkId" /> and the <see cref="P:CSCore.Codecs.AIFF.AiffChunk.DataSize" />
                (4 bytes each) are not included.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.AIFF.AiffChunk.SkipChunk">
            <summary>
                Seeks to the end of the chunk.
            </summary>
            <remarks>
                Can be used to make sure that the underlying <see cref="T:System.IO.Stream" />/<see cref="T:System.IO.BinaryReader" /> points to
                the next <see cref="T:CSCore.Codecs.AIFF.AiffChunk" />.
            </remarks>
        </member>
        <member name="T:CSCore.Codecs.AIFF.AiffChunkContainer">
            <summary>
                Provides all <see cref="T:CSCore.Codecs.AIFF.AiffChunk" />s of a aiff stream.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.AIFF.AiffChunkContainer.#ctor(System.IO.BinaryReader)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.AIFF.AiffChunkContainer" /> class.
            </summary>
            <param name="binaryReader">The binary reader which provides can be used to decode the chunk.</param>
            <exception cref="T:CSCore.Codecs.AIFF.AiffException">
                FORM header not found.
                or
                Invalid Formtype.
            </exception>
        </member>
        <member name="P:CSCore.Codecs.AIFF.AiffChunkContainer.FormType">
            <summary>
                Gets the form type.
            </summary>
            <value>
                Either 'AIFF' or 'AIFC'.
            </value>
        </member>
        <member name="P:CSCore.Codecs.AIFF.AiffChunkContainer.Chunks">
            <summary>
                Gets all found <see cref="T:CSCore.Codecs.AIFF.AiffChunk" /> of the <see cref="T:CSCore.Codecs.AIFF.AiffChunkContainer" />.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.AIFF.AiffChunkContainer.SkipChunk">
            <summary>
                Seeks to the end of the chunk.
            </summary>
            <remarks>
                Can be used to make sure that the underlying <see cref="T:System.IO.Stream" />/<see cref="T:System.IO.BinaryReader" /> points to
                the next <see cref="T:CSCore.Codecs.AIFF.AiffChunk" />.
            </remarks>
        </member>
        <member name="T:CSCore.Codecs.AIFF.AiffException">
            <summary>
                Represents errors that occur when decoding or encoding Aiff-streams/files.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.AIFF.AiffException.#ctor">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.AIFF.AiffException" /> class.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.AIFF.AiffException.#ctor(System.String)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.AIFF.AiffException" /> class.
            </summary>
            <param name="message">The message that describes the error.</param>
        </member>
        <member name="M:CSCore.Codecs.AIFF.AiffException.#ctor(System.String,System.Exception)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.AIFF.AiffException" /> class.
            </summary>
            <param name="message">The message that describes the error.</param>
            <param name="inner">The <see cref="T:System.Exception" /> that caused the <see cref="T:CSCore.Codecs.AIFF.AiffException" />.</param>
        </member>
        <member name="M:CSCore.Codecs.AIFF.AiffException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.AIFF.AiffException" /> class.
            </summary>
            <param name="info">
                The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> that holds the serialized object
                data about the exception being thrown.
            </param>
            <param name="context">
                The <see cref="T:System.Runtime.Serialization.StreamingContext" /> that contains contextual
                information about the source or destination.
            </param>
        </member>
        <member name="T:CSCore.Codecs.AIFF.AiffReader">
            <summary>
                Decodes a aiff stream/file.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.AIFF.AiffReader.#ctor(System.String)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.AIFF.AiffReader" /> class for the specified <paramref name="filename" />.
            </summary>
            <param name="filename">The complete file path to be decoded.</param>
            <exception cref="T:CSCore.Codecs.AIFF.AiffException">
                No COMM Chunk found.
                or
                No SSND Chunk found.
                or
                Format not supported.
            </exception>
        </member>
        <member name="M:CSCore.Codecs.AIFF.AiffReader.#ctor(System.IO.Stream)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.AIFF.AiffReader" /> class for the specified <paramref name="stream" />.
            </summary>
            <param name="stream">The stream to be decoded.</param>
            <exception cref="T:System.ArgumentNullException">stream</exception>
            <exception cref="T:System.ArgumentException">
                Stream is not readable.;stream
                or
                Stream is not seekable.;stream
            </exception>
            <exception cref="T:CSCore.Codecs.AIFF.AiffException">
                No COMM Chunk found.
                or
                No SSND Chunk found.
                or
                Format not supported.
            </exception>
        </member>
        <member name="P:CSCore.Codecs.AIFF.AiffReader.Chunks">
            <summary>
                Gets the found <see cref="T:CSCore.Codecs.AIFF.AiffChunk" />s of the aiff stream/file.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.AIFF.AiffReader.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of elements from the <see cref="T:CSCore.Codecs.AIFF.AiffReader" /> and advances the position within the     stream by
                the     number of elements read.
            </summary>
            <param name="buffer">
                An array of elements. When this method returns, the <paramref name="buffer" /> contains the
                specified     array of elements with the values between <paramref name="offset" /> and (<paramref name="offset" />
                +     <paramref name="count" /> - 1) replaced by the elements read from the current source.
            </param>
            <param name="offset">
                The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of elements to read from the current source.</param>
            <returns>
                The total number of elements read into the buffer.
            </returns>
            <exception cref="T:System.ArgumentNullException">buffer</exception>
            <exception cref="T:System.ArgumentOutOfRangeException">
                offset
                or
                count
            </exception>
            <exception cref="T:System.ArgumentException">The sum of offset and count is larger than the buffer length.</exception>
            <exception cref="T:CSCore.Codecs.AIFF.AiffException">Unexpected error. Not supported bps.</exception>
        </member>
        <member name="P:CSCore.Codecs.AIFF.AiffReader.CanSeek">
            <summary>
                Gets a value indicating whether the <see cref="T:CSCore.Codecs.AIFF.AiffReader" /> supports seeking.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.AIFF.AiffReader.WaveFormat">
            <summary>
                Gets the <see cref="P:CSCore.Codecs.AIFF.AiffReader.WaveFormat" /> of the waveform-audio data.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.AIFF.AiffReader.Position">
            <summary>
                Gets or sets the current position in bytes.
            </summary>
            <exception cref="T:System.ArgumentOutOfRangeException">The value is less than zero or greater than <see cref="P:CSCore.Codecs.AIFF.AiffReader.Length" />.</exception>
        </member>
        <member name="P:CSCore.Codecs.AIFF.AiffReader.Length">
            <summary>
                Gets the length of the audio data in bytes.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.AIFF.AiffReader.Dispose">
            <summary>
                Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.AIFF.AiffReader.Dispose(System.Boolean)">
            <summary>
                Releases unmanaged and - optionally - managed resources.
            </summary>
            <param name="disposing">
                <c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only
                unmanaged resources.
            </param>
        </member>
        <member name="M:CSCore.Codecs.AIFF.AiffReader.Finalize">
            <summary>
                Finalizes an instance of the <see cref="T:CSCore.Codecs.AIFF.AiffReader" /> class.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.AIFF.CommonChunk">
            <summary>
                Provides the format of the encoded audio data of a AIFF-file.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.AIFF.CommonChunk.#ctor(System.IO.BinaryReader)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.AIFF.CommonChunk" /> class.
            </summary>
            <param name="binaryReader">The binary reader which provides can be used to decode the chunk.</param>
            <exception cref="T:CSCore.Codecs.AIFF.AiffException">Compression type not supported.</exception>
        </member>
        <member name="P:CSCore.Codecs.AIFF.CommonChunk.NumberOfChannels">
            <summary>
                Gets the number of channels.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.AIFF.CommonChunk.NumberOfSampleFrames">
            <summary>
                Gets the total number of sample frames.
            </summary>
            <remarks>
                To get the total number of samples multiply <see cref="P:CSCore.Codecs.AIFF.CommonChunk.NumberOfSampleFrames" /> by
                <see cref="P:CSCore.Codecs.AIFF.CommonChunk.NumberOfChannels" />.
            </remarks>
        </member>
        <member name="P:CSCore.Codecs.AIFF.CommonChunk.BitsPerSample">
            <summary>
                Gets the number of bits per sample.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.AIFF.CommonChunk.SampleRate">
            <summary>
                Gets the sample rate in Hz.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.AIFF.CommonChunk.CompressionType">
            <summary>
                Gets the compression type.
            </summary>
            <remarks>All compression types except PCM are currently <b>not</b> supported.</remarks>
        </member>
        <member name="M:CSCore.Codecs.AIFF.CommonChunk.GetWaveFormat">
            <summary>
                Gets the wave format.
            </summary>
            <returns>The wave format.</returns>
            <remarks>
                This method does not take care about multi channel formats. It won't setup a channel mask.
            </remarks>
        </member>
        <member name="M:CSCore.Codecs.AIFF.CommonChunk.SkipChunk">
            <summary>
                Seeks to the end of the chunk.
            </summary>
            <remarks>
                Can be used to make sure that the underlying <see cref="T:System.IO.Stream" />/<see cref="T:System.IO.BinaryReader" /> points to
                the next <see cref="T:CSCore.Codecs.AIFF.AiffChunk" />.
            </remarks>
        </member>
        <member name="T:CSCore.Codecs.AIFF.FormatVersionChunk">
            <summary>
                Provides the format version of the aifc file.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.AIFF.FormatVersionChunk.AifcVersion">
            <summary>
                Defines Aiff-Versions.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.AIFF.FormatVersionChunk.AifcVersion.Version1">
            <summary>
                Version 1.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.AIFF.FormatVersionChunk.#ctor(System.IO.BinaryReader)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.AIFF.FormatVersionChunk" /> class.
            </summary>
            <param name="binaryReader">The binary reader which provides can be used to decode the chunk.</param>
            <exception cref="T:CSCore.Codecs.AIFF.AiffException">Invalid AIFF-C Version.</exception>
        </member>
        <member name="P:CSCore.Codecs.AIFF.FormatVersionChunk.Version">
            <summary>
                Gets the version of the aifc file.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.AIFF.FormatVersionChunk.SkipChunk">
            <summary>
                Seeks to the end of the chunk.
            </summary>
            <remarks>
                Can be used to make sure that the underlying <see cref="T:System.IO.Stream" />/<see cref="T:System.IO.BinaryReader" /> points to
                the next <see cref="T:CSCore.Codecs.AIFF.AiffChunk" />.
            </remarks>
        </member>
        <member name="T:CSCore.Codecs.AIFF.SoundDataChunk">
            <summary>
                Provides the encoded audio data of an aiff stream.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.AIFF.SoundDataChunk.#ctor(System.IO.BinaryReader)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.AIFF.SoundDataChunk" /> class.
            </summary>
            <param name="binaryReader">The binary reader which provides can be used to decode the chunk.</param>
        </member>
        <member name="P:CSCore.Codecs.AIFF.SoundDataChunk.Offset">
            <summary>
                Gets the offset. The offset determines where the first sample frame in the <see cref="T:CSCore.Codecs.AIFF.SoundDataChunk" /> starts.
            </summary>
            <value>Offset in bytes.</value>
        </member>
        <member name="P:CSCore.Codecs.AIFF.SoundDataChunk.BlockSize">
            <summary>
                Gets the block size. It specifies the size in bytes of the blocks that sound data is aligned to.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.AIFF.SoundDataChunk.AudioDataStartPosition">
            <summary>
                Gets the zero based position in the stream, at which the encoded audio data starts.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.AIFF.SoundDataChunk.SkipChunk">
            <summary>
                Seeks to the end of the chunk.
            </summary>
            <remarks>
                Can be used to make sure that the underlying <see cref="T:System.IO.Stream" />/<see cref="T:System.IO.BinaryReader" /> points to
                the next <see cref="T:CSCore.Codecs.AIFF.AiffChunk" />.
            </remarks>
        </member>
        <member name="T:CSCore.Codecs.CodecFactoryEntry">
            <summary>
            Represents an entry of the <see cref="T:CSCore.Codecs.CodecFactory"/> class which provides information about a codec.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.CodecFactoryEntry.GetCodecAction">
            <summary>
            Gets the <see cref="T:CSCore.Codecs.GetCodecAction"/> which initializes a codec decoder based on a <see cref="T:System.IO.Stream"/>.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.CodecFactoryEntry.FileExtensions">
            <summary>
            Gets all with the codec associated file extensions.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.CodecFactoryEntry.#ctor(CSCore.Codecs.GetCodecAction,System.String[])">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.CodecFactoryEntry"/> class.
            </summary>
            <param name="getCodecAction">Delegate which initializes a codec decoder based on a <see cref="T:System.IO.Stream"/>.</param>
            <param name="fileExtensions">All which the codec associated file extensions.</param>
        </member>
        <member name="T:CSCore.Codecs.ConnectionEstablishedEventArgs">
            <summary>
            Provides data for all events which notify the client that a connection got established. For example the <see cref="E:CSCore.Codecs.MP3.Mp3WebStream.ConnectionEstablished"/> event.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.ConnectionEstablishedEventArgs.Uri">
            <summary>
            Gets the uri of the connection.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.ConnectionEstablishedEventArgs.Success">
            <summary>
            Gets a value indicating whether the connection got established successfully or not. <c>true</c> if the connection got established successfully, otherwise <c>false</c>.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.ConnectionEstablishedEventArgs.#ctor(System.Uri,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.ConnectionEstablishedEventArgs"/> class.
            </summary>
            <param name="uri">The uri of the connection.</param>
            <param name="success">A value indicating whether the connection got established successfully or not. <c>true</c> if the connection got established successfully, otherwise <c>false</c>.</param>
        </member>
        <member name="T:CSCore.Codecs.DDP.DDPDecoder">
            <summary>
            Mediafoundation DDP decoder.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.DDP.DDPDecoder.IsSupported">
            <summary>
            Gets a value which indicates whether the Mediafoundation DDP decoder is supported on the current platform.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.DDP.DDPDecoder.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.DDP.DDPDecoder"/> class.
            </summary>
            <param name="url">Url which points to a data source which provides DDP data. This is typically a filename.</param>
        </member>
        <member name="M:CSCore.Codecs.DDP.DDPDecoder.#ctor(System.IO.Stream)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.DDP.DDPDecoder"/> class.
            </summary>
            <param name="stream">Stream which contains DDP data.</param>
        </member>
        <member name="T:CSCore.Codecs.CodecFactory">
            <summary>
                Helps to choose the right decoder for different codecs.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.CodecFactory.Instance">
            <summary>
                Gets the default singleton instance of the <see cref="T:CSCore.Codecs.CodecFactory" /> class.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.CodecFactory.SupportedFilesFilterEn">
            <summary>
                Gets the file filter in English. This filter can be used e.g. in combination with an OpenFileDialog.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.CodecFactory.Register(System.Object,CSCore.Codecs.CodecFactoryEntry)">
            <summary>
                Registers a new codec.
            </summary>
            <param name="key">
                The key which gets used internally to save the <paramref name="codec" /> in a
                <see cref="T:System.Collections.Generic.Dictionary`2" />. This is typically the associated file extension. For example: the mp3 codec
                uses the string "mp3" as its key.
            </param>
            <param name="codec"><see cref="T:CSCore.Codecs.CodecFactoryEntry" /> which provides information about the codec.</param>
        </member>
        <member name="M:CSCore.Codecs.CodecFactory.GetCodec(System.String)">
            <summary>
                Returns a fully initialized <see cref="T:CSCore.IWaveSource" /> instance which is able to decode the specified file. If the
                specified file can not be decoded, this method throws an <see cref="T:System.NotSupportedException" />.
            </summary>
            <param name="filename">Filename of the specified file.</param>
            <returns>Fully initialized <see cref="T:CSCore.IWaveSource" /> instance which is able to decode the specified file.</returns>
            <exception cref="T:System.NotSupportedException">The codec of the specified file is not supported.</exception>
        </member>
        <member name="M:CSCore.Codecs.CodecFactory.GetCodec(System.Uri)">
            <summary>
                Returns a fully initialized <see cref="T:CSCore.IWaveSource" /> instance which is able to decode the audio source behind the
                specified <paramref name="uri" />.
                If the specified audio source can not be decoded, this method throws an <see cref="T:System.NotSupportedException" />.
            </summary>
            <param name="uri">Uri which points to an audio source.</param>
            <returns>Fully initialized <see cref="T:CSCore.IWaveSource" /> instance which is able to decode the specified audio source.</returns>
            <exception cref="T:System.NotSupportedException">The codec of the specified audio source is not supported.</exception>
        </member>
        <member name="M:CSCore.Codecs.CodecFactory.GetSupportedFileExtensions">
            <summary>
                Returns all the common file extensions of all supported codecs. Note that some of these file extensions belong to
                more than one codec.
                That means that it can be possible that some files with the file extension abc can be decoded but other a few files
                with the file extension abc can't be decoded.
            </summary>
            <returns>Supported file extensions.</returns>
        </member>
        <member name="T:CSCore.Codecs.FLAC.ChannelAssignment">
            <summary>
            Defines the channel assignments.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.FLAC.ChannelAssignment.Independent">
            <summary>
            Independent assignment. 
            </summary>
        </member>
        <member name="F:CSCore.Codecs.FLAC.ChannelAssignment.LeftSide">
            <summary>
            Left/side stereo. Channel 0 becomes the left channel while channel 1 becomes the side channel.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.FLAC.ChannelAssignment.RightSide">
            <summary>
            Right/side stereo. Channel 0 becomes the right channel while channel 1 becomes the side channel.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.FLAC.ChannelAssignment.MidSide">
            <summary>
            Mid/side stereo. Channel 0 becomes the mid channel while channel 1 becomes the side channel. 
            </summary>
        </member>
        <member name="T:CSCore.Codecs.FLAC.FlacException">
            <summary>
            FLAC Exception.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacException.Layer">
            <summary>
            Gets the layer of the flac stream the exception got thrown.
            </summary>
            <remarks>Used for debugging purposes.</remarks>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacException.#ctor(System.String,CSCore.Codecs.FLAC.FlacLayer)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.FLAC.FlacException"/> class.
            </summary>
            <param name="message">A message which describes the error.</param>
            <param name="layer">The layer of the flac stream the exception got thrown.</param>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacException.#ctor(System.Exception,CSCore.Codecs.FLAC.FlacLayer)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.FLAC.FlacException"/> class.
            </summary>
            <param name="innerException">The InnerException which caused the error.</param>
            <param name="layer">The layer.The layer of the flac stream the exception got thrown.</param>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.FLAC.FlacException" /> class from serialization data.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> object that holds the serialized object data.</param>
            <param name="context">
                The StreamingContext object that supplies the contextual information about the source or
                destination.
            </param>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            When overridden in a derived class, sets the <see cref="T:System.Runtime.Serialization.SerializationInfo" /> with information about the exception.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> that holds the serialized object data about the exception being thrown.</param>
            <param name="context">The <see cref="T:System.Runtime.Serialization.StreamingContext" /> that contains contextual information about the source or destination.</param>
            <PermissionSet>
              <IPermission class="System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Read="*AllFiles*" PathDiscovery="*AllFiles*" />
              <IPermission class="System.Security.Permissions.SecurityPermission, mscorlib, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" version="1" Flags="SerializationFormatter" />
            </PermissionSet>
        </member>
        <member name="T:CSCore.Codecs.FLAC.FlacFrame">
            <summary>
            Represents a frame inside of an Flac-Stream.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFrame.Header">
            <summary>
            Gets the header of the flac frame.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFrame.Crc16">
            <summary>
            Gets the CRC16-checksum.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFrame.HasError">
            <summary>
            Gets a value indicating whether the decoder has encountered an error with this frame.
            </summary>
            <value>
              <c>true</c> if this frame contains an error; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacFrame.FromStream(System.IO.Stream)">
            <summary>
            Creates a new instance of the <see cref="T:CSCore.Codecs.FLAC.FlacFrame"/> class based on the specified <paramref name="stream"/>.
            </summary>
            <param name="stream">The stream which contains the flac frame.</param>
            <returns>A new instance of the <see cref="T:CSCore.Codecs.FLAC.FlacFrame"/> class.</returns>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacFrame.FromStream(System.IO.Stream,CSCore.Codecs.FLAC.FlacMetadataStreamInfo)">
            <summary>
            Creates a new instance of the <see cref="T:CSCore.Codecs.FLAC.FlacFrame"/> class based on the specified <paramref name="stream"/> and some basic stream information.
            </summary>
            <param name="stream">The stream which contains the flac frame.</param>
            <param name="streamInfo">Some basic information about the flac stream.</param>
            <returns>A new instance of the <see cref="T:CSCore.Codecs.FLAC.FlacFrame"/> class.</returns>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacFrame.NextFrame">
            <summary>
            Tries to read the next flac frame inside of the specified stream and returns a value which indicates whether the next flac frame could be successfully read.
            </summary>
            <returns>True if the next flac frame could be successfully read; false if not.</returns>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacFrame.GetBuffer(System.Byte[]@)">
            <summary>
            Gets the raw pcm data of the flac frame.
            </summary>
            <param name="buffer">The buffer which should be used to store the data in. This value can be null.</param>
            <returns>The number of read bytes.</returns>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacFrame.Dispose">
            <summary>
            Disposes the <see cref="T:CSCore.Codecs.FLAC.FlacFrame"/> and releases all associated resources.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacFrame.Finalize">
            <summary>
            Finalizes an instance of the <see cref="T:CSCore.Codecs.FLAC.FlacFrame"/> class.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.FLAC.FlacFile">
            <summary>
                Provides a decoder for decoding flac (Free Lostless Audio Codec) data.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFile.Metadata">
            <summary>
                Gets a list with all found metadata fields.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFile.WaveFormat">
            <summary>
                Gets the output <see cref="T:CSCore.WaveFormat" /> of the decoder.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFile.CanSeek">
            <summary>
                Gets a value which indicates whether the seeking is supported. True means that seeking is supported; False means
                that seeking is not supported.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacFile.#ctor(System.String)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.FLAC.FlacFile" /> class.
            </summary>
            <param name="fileName">Filename which of a flac file which should be decoded.</param>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacFile.#ctor(System.IO.Stream)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.FLAC.FlacFile" /> class.
            </summary>
            <param name="stream">Stream which contains flac data which should be decoded.</param>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacFile.#ctor(System.IO.Stream,CSCore.Codecs.FLAC.FlacPreScanMode)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.FLAC.FlacFile" /> class.
            </summary>
            <param name="stream">Stream which contains flac data which should be decoded.</param>
            <param name="scanFlag">Scan mode which defines how to scan the flac data for frames.</param>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacFile.#ctor(System.IO.Stream,CSCore.Codecs.FLAC.FlacPreScanMode,System.Action{CSCore.Codecs.FLAC.FlacPreScanFinishedEventArgs})">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.FLAC.FlacFile" /> class.
            </summary>
            <param name="stream">Stream which contains flac data which should be decoded.</param>
            <param name="scanFlag">Scan mode which defines how to scan the flac data for frames.</param>
            <param name="onscanFinished">
                Callback which gets called when the pre scan processes finished. Should be used if the
                <paramref name="scanFlag" /> argument is set the <see cref="F:CSCore.Codecs.FLAC.FlacPreScanMode.Async" />.
            </param>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacFile.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from the <see cref="T:CSCore.Codecs.FLAC.FlacFile" /> and advances the position within the stream by the
                number of bytes read.
            </summary>
            <param name="buffer">
                An array of bytes. When this method returns, the <paramref name="buffer" /> contains the specified
                byte array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the bytes read from the current source.
            </param>
            <param name="offset">
                The zero-based byte offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of bytes to read from the current source.</param>
            <returns>The total number of bytes read into the buffer.</returns>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFile.Position">
            <summary>
                Gets or sets the position of the <see cref="T:CSCore.Codecs.FLAC.FlacFile" /> in bytes.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFile.Length">
            <summary>
                Gets the length of the <see cref="T:CSCore.Codecs.FLAC.FlacFile" /> in bytes.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacFile.Dispose">
            <summary>
                Disposes the <see cref="T:CSCore.Codecs.FLAC.FlacFile" /> instance and disposes the underlying stream.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacFile.Dispose(System.Boolean)">
            <summary>
                Disposes the <see cref="T:CSCore.Codecs.FLAC.FlacFile" /> instance and disposes the underlying stream.
            </summary>
            <param name="disposing">
                True to release both managed and unmanaged resources; false to release only unmanaged
                resources.
            </param>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacFile.Finalize">
            <summary>
                Destructor which calls the <see cref="M:CSCore.Codecs.FLAC.FlacFile.Dispose(System.Boolean)" /> method.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.FLAC.FlacFrameHeader">
            <summary>
            Represents the header of a <see cref="T:CSCore.Codecs.FLAC.FlacFrame"/>.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFrameHeader.BlockSize">
            <summary>
            Gets number of samples, the frame contains.
            </summary>
            <value>
            The number of samples, the frame contains.
            </value>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFrameHeader.SampleRate">
            <summary>
            Gets the sample rate in Hz.
            </summary>
            <value>
            The sample rate in Hz.
            </value>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFrameHeader.Channels">
            <summary>
            Gets the number of channels.
            </summary>
            <value>
            The number of channels.
            </value>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFrameHeader.ChannelAssignment">
            <summary>
            Gets the channel assignment.
            </summary>
            <value>
            The channel assignment.
            </value>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFrameHeader.BitsPerSample">
            <summary>
            Gets the bits per sample.
            </summary>
            <value>
            The bits per sample.
            </value>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFrameHeader.BlockingStrategy">
            <summary>
            Gets a value which indicates whether the frame provides the <see cref="P:CSCore.Codecs.FLAC.FlacFrameHeader.SampleNumber"/> or the <see cref="P:CSCore.Codecs.FLAC.FlacFrameHeader.FrameNumber"/>.
            </summary>
            <value>
            A value which indicates whether the frame provides the <see cref="P:CSCore.Codecs.FLAC.FlacFrameHeader.SampleNumber"/> or the <see cref="P:CSCore.Codecs.FLAC.FlacFrameHeader.FrameNumber"/>.
            </value>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFrameHeader.SampleNumber">
            <summary>
            Gets the frame's starting sample number.
            </summary>
            <value>
            The frame's starting sample number.
            </value>
            <remarks>Only available if the <see cref="P:CSCore.Codecs.FLAC.FlacFrameHeader.BlockingStrategy"/> is set to <see cref="F:CSCore.Codecs.FLAC.BlockingStrategy.VariableBlockSize"/>.</remarks>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFrameHeader.FrameNumber">
            <summary>
            Gets the frame's number.
            </summary>
            <value>
            The frame's number.
            </value>
            <remarks>Only available if the <see cref="P:CSCore.Codecs.FLAC.FlacFrameHeader.BlockingStrategy"/> is set to <see cref="F:CSCore.Codecs.FLAC.BlockingStrategy.FixedBlockSize"/>.</remarks>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFrameHeader.Crc8">
            <summary>
            Gets the 8-bit crc checksum of the frame header.
            </summary>
            <value>
            The 8-bit crc checksum of the frame header.
            </value>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFrameHeader.HasError">
            <summary>
            Gets a value indicating whether this instance has error.
            </summary>
            <value>
              <c>true</c> if this instance has error; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFrameHeader.StreamPosition">
            <summary>
            Gets the stream position.
            </summary>
            <value>
            The stream position.
            </value>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacFrameHeader.#ctor(System.IO.Stream)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.FLAC.FlacFrameHeader"/> class.
            </summary>
            <param name="stream">The underlying stream which contains the <see cref="T:CSCore.Codecs.FLAC.FlacFrameHeader"/>.</param>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacFrameHeader.#ctor(System.IO.Stream,CSCore.Codecs.FLAC.FlacMetadataStreamInfo)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.FLAC.FlacFrameHeader"/> class.
            </summary>
            <param name="stream">The underlying stream which contains the <see cref="T:CSCore.Codecs.FLAC.FlacFrameHeader"/>.</param>
            <param name="streamInfo">The stream-info-metadata-block of the flac stream which provides some basic information about the flac framestream. Can be set to null.</param>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacFrameHeader.#ctor(System.IO.Stream,CSCore.Codecs.FLAC.FlacMetadataStreamInfo,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.FLAC.FlacFrameHeader"/> class.
            </summary>
            <param name="stream">The underlying stream which contains the <see cref="T:CSCore.Codecs.FLAC.FlacFrameHeader"/>.</param>
            <param name="streamInfo">The stream-info-metadata-block of the flac stream which provides some basic information about the flac framestream. Can be set to null.</param>
            <param name="doCrc">A value which indicates whether the crc8 checksum of the <see cref="T:CSCore.Codecs.FLAC.FlacFrameHeader"/> should be calculated.</param>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacFrameHeader.#ctor(System.Byte*@,CSCore.Codecs.FLAC.FlacMetadataStreamInfo,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.FLAC.FlacFrameHeader"/> class.
            </summary>
            <param name="buffer">The raw byte-data which contains the <see cref="T:CSCore.Codecs.FLAC.FlacFrameHeader"/>.</param>
            <param name="streamInfo">The stream-info-metadata-block of the flac stream which provides some basic information about the flac framestream. Can be set to null.</param>
            <param name="doCrc">A value which indicates whether the crc8 checksum of the <see cref="T:CSCore.Codecs.FLAC.FlacFrameHeader"/> should be calculated.</param>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacFrameHeader.IsFormatEqualTo(CSCore.Codecs.FLAC.FlacFrameHeader)">
            <summary>
            Indicates whether the format of the current <see cref="T:CSCore.Codecs.FLAC.FlacFrameHeader"/> is equal to the format of another <see cref="T:CSCore.Codecs.FLAC.FlacFrameHeader"/>.
            </summary>
            <param name="other">A <see cref="T:CSCore.Codecs.FLAC.FlacFrameHeader"/> which provides the format to compare with the format of the current <see cref="T:CSCore.Codecs.FLAC.FlacFrameHeader"/>.</param>
            <returns><c>true</c> if the format of the current <see cref="T:CSCore.Codecs.FLAC.FlacFrameHeader"/> is equal to the format of the <paramref name="other"/> <see cref="T:CSCore.Codecs.FLAC.FlacFrameHeader"/>.</returns>
        </member>
        <member name="T:CSCore.Codecs.FLAC.FlacFrameInformation">
            <summary>
            Provides some basic information about a flac frame. This structure is typically used for implementing a seeking algorithm. 
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFrameInformation.Header">
            <summary>
            Gets the header of the flac frame.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFrameInformation.IsFirstFrame">
            <summary>
            Gets a value which indicates whether the described frame is the first frame of the flac stream. True means that the described frame is the first frame of the flac stream. False means that the described frame is not the first frame of the flac stream.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFrameInformation.StreamOffset">
            <summary>
            Gets the offset in bytes at which the frame starts in the flac stream (including the header of the frame).
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacFrameInformation.SampleOffset">
            <summary>
            Gets the number samples which are contained by other frames before this frame occurs.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.FLAC.FlacLayer">
            <summary>
            Splits a flac file into a few basic layers and defines them. Mainly used for debugging purposes.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.FLAC.FlacLayer.OutSideOfFrame">
            <summary>
            Everything which is not part of a flac frame.
            </summary>
            <remarks>For example the "fLaC" sync code.</remarks>
        </member>
        <member name="F:CSCore.Codecs.FLAC.FlacLayer.Metadata">
            <summary>
            Everything metadata related.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.FLAC.FlacLayer.Frame">
            <summary>
            Everything which is part of a frame but not part of its subframes.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.FLAC.FlacLayer.SubFrame">
            <summary>
            Everything subframe related.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.FLAC.BlockingStrategy">
            <summary>
            Defines the blocking strategy of the a flac frame.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.FLAC.BlockingStrategy.VariableBlockSize">
            <summary>
            The <see cref="P:CSCore.Codecs.FLAC.FlacFrameHeader.BlockSize"/> of flac frames is variable.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.FLAC.BlockingStrategy.FixedBlockSize">
            <summary>
            Each flac frame uses the same <see cref="P:CSCore.Codecs.FLAC.FlacFrameHeader.BlockSize"/>.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.FLAC.FlacPreScanFinishedEventArgs">
            <summary>
            Provides data for a FlacPreScan.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacPreScanFinishedEventArgs.Frames">
            <summary>
            Gets the a list of found frames by the scan.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacPreScanFinishedEventArgs.#ctor(System.Collections.Generic.List{CSCore.Codecs.FLAC.FlacFrameInformation})">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.FLAC.FlacPreScanFinishedEventArgs"/> class.
            </summary>
            <param name="frames">Found frames.</param>
        </member>
        <member name="T:CSCore.Codecs.FLAC.FlacPreScanMode">
            <summary>
            Defines how to scan a flac stream.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.FLAC.FlacPreScanMode.None">
            <summary>
            Don't scan the flac stream. This will cause a stream to be not seekable.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.FLAC.FlacPreScanMode.Sync">
            <summary>
            Scan synchronously.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.FLAC.FlacPreScanMode.Async">
            <summary>
            Scan async. 
            </summary>
            <remarks>
            Don't use the stream while scan is running because the stream position
            will change while scanning. If you playback the stream, it will cause an error!
            </remarks>
        </member>
        <member name="F:CSCore.Codecs.FLAC.FlacPreScanMode.Default">
            <summary>
            Default value.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.FLAC.DefaultFlacMetadata">
            <summary>
            The default implementation of the <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/> class for <see cref="T:CSCore.Codecs.FLAC.FlacMetaDataType"/> 
            with no specific implemetation.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.FLAC.DefaultFlacMetadata.#ctor(CSCore.Codecs.FLAC.FlacMetaDataType)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/> class.
            </summary>
            <param name="metadataType">The type of the metadata.</param>
        </member>
        <member name="M:CSCore.Codecs.FLAC.DefaultFlacMetadata.InitializeByStream(System.IO.Stream)">
            <summary>
            Initializes the properties of the <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/> by reading them from the <paramref name="stream"/>.
            </summary>
            <param name="stream">The stream which contains the metadata.</param>
        </member>
        <member name="P:CSCore.Codecs.FLAC.DefaultFlacMetadata.MetaDataType">
            <summary>
            Gets the type of the <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/>.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.FLAC.FlacMetadata">
            <summary>
            Represents a flac metadata block.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacMetadata.FromStream(System.IO.Stream)">
            <summary>
            Reads and returns a single <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/> from the specified <paramref name="stream"/>.
            </summary>
            <param name="stream">The stream which contains the <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/>.</param>
            <returns>Returns the read <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/>.</returns>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacMetadata.ReadAllMetadataFromStream(System.IO.Stream)">
            <summary>
            Reads all <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/> from the specified <paramref name="stream"/>.
            </summary>
            <param name="stream">The stream which contains the <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/>.</param>
            <returns>All <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/>.</returns>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacMetadata.SkipMetadata(System.IO.Stream)">
            <summary>
            Skips all <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/> of the specified <paramref name="stream"/>.
            </summary>
            <param name="stream">The stream which contains the <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/>.</param>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacMetadata.Initialize(System.IO.Stream,System.Int32,System.Boolean)">
            <summary>
            Initializes the properties of the <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/>.
            </summary>
            <param name="stream">The stream which contains the metadata.</param>
            <param name="length">The length of <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/> block inside of the stream in bytes. Does not include the metadata header.</param>
            <param name="isLastBlock">A value which indicates whether this is the last <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/> block inside of the stream. <c>true</c> means that this is the last <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/> block inside of the stream.</param>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacMetadata.InitializeByStream(System.IO.Stream)">
            <summary>
            Initializes the properties of the <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/> by reading them from the <paramref name="stream"/>.
            </summary>
            <param name="stream">The stream which contains the metadata.</param>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacMetadata.MetaDataType">
            <summary>
            Gets the type of the <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/>.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacMetadata.IsLastMetaBlock">
            <summary>
            Gets a value indicating whether this instance is the last <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/> block.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacMetadata.Length">
            <summary>
            Gets the length of the <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/> block inside of the stream in bytes.
            </summary>
            <remarks>The length does not include the metadata header.</remarks>
        </member>
        <member name="T:CSCore.Codecs.FLAC.Metadata.FlacMetadataFactory">
            <summary>
            Flac metadata factory.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.Metadata.FlacMetadataFactory.Instance">
            <summary>
            Gets the default factory instance.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.FLAC.Metadata.FlacMetadataFactory.RegistermetadataType``1(CSCore.Codecs.FLAC.FlacMetaDataType)">
            <summary>
            Registers a new <see cref="T:CSCore.Codecs.FLAC.FlacMetaDataType"/>.
            </summary>
            <param name="metadataType">The <see cref="T:CSCore.Codecs.FLAC.FlacMetaDataType"/>.</param>
            <typeparam name="T">The <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/> object assigned to the <paramref name="metadataType"/>.</typeparam>
        </member>
        <member name="M:CSCore.Codecs.FLAC.Metadata.FlacMetadataFactory.RegistermetadataType``1(System.Int32)">
            <summary>
            Registers a new <see cref="T:CSCore.Codecs.FLAC.FlacMetaDataType"/>.
            </summary>
            <param name="metadataType">The metadata type as an integer.</param>
            <typeparam name="T">The <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/> object assigned to the <paramref name="metadataType"/>.</typeparam>
        </member>
        <member name="M:CSCore.Codecs.FLAC.Metadata.FlacMetadataFactory.ParseMetadata(System.IO.Stream)">
            <summary>
            Reads and returns a single <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/> from the specified <paramref name="stream"/>.
            </summary>
            <param name="stream">The stream which contains the <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/>.</param>
            <returns>Returns the read <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/>.</returns>
            <exception cref="T:CSCore.Codecs.FLAC.FlacException">Could not read metadata.</exception>
        </member>
        <member name="T:CSCore.Codecs.FLAC.FlacMetadataSeekTable">
            <summary>
            Represents a flac seektable.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacMetadataSeekTable.EntryCount">
            <summary>
            Gets the number of entries, the seektable offers.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacMetadataSeekTable.SeekPoints">
            <summary>
            Gets the seek points.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacMetadataSeekTable.Item(System.Int32)">
            <summary>
            Gets the <see cref="T:CSCore.Codecs.FLAC.FlacSeekPoint"/> at the specified <paramref name="index"/>.
            </summary>
            <value>
            The <see cref="T:CSCore.Codecs.FLAC.FlacSeekPoint"/>.
            </value>
            <param name="index">The index.</param>
            <returns>The <see cref="T:CSCore.Codecs.FLAC.FlacSeekPoint"/> at the specified <paramref name="index"/>.</returns>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacMetadataSeekTable.InitializeByStream(System.IO.Stream)">
            <summary>
            Initializes the properties of the <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/> by reading them from the <paramref name="stream"/>.
            </summary>
            <param name="stream">The stream which contains the metadata.</param>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacMetadataSeekTable.MetaDataType">
            <summary>
            Gets the type of the <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/>.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.FLAC.FlacMetadataStreamInfo">
            <summary>
                Represents the streaminfo metadata flac which provides general information about the flac stream.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacMetadataStreamInfo.InitializeByStream(System.IO.Stream)">
            <summary>
            Initializes the properties of the <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/> by reading them from the <paramref name="stream"/>.
            </summary>
            <param name="stream">The stream which contains the metadata.</param>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacMetadataStreamInfo.MetaDataType">
            <summary>
            Gets the type of the <see cref="T:CSCore.Codecs.FLAC.FlacMetadata"/>.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacMetadataStreamInfo.MinBlockSize">
            <summary>
            Gets the minimum size of the block in samples.
            </summary>
            <value>
            The minimum size of the block in samples.
            </value>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacMetadataStreamInfo.MaxBlockSize">
            <summary>
            Gets the maximum size of the block in samples.
            </summary>
            <value>
            The maximum size of the block in samples.
            </value>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacMetadataStreamInfo.MaxFrameSize">
            <summary>
            Gets the maximum size of the frame in bytes.
            </summary>
            <value>
            The maximum size of the frame in bytes.
            </value>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacMetadataStreamInfo.MinFrameSize">
            <summary>
            Gets the minimum size of the frame in bytes.
            </summary>
            <value>
            The minimum size of the frame in bytes.
            </value>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacMetadataStreamInfo.SampleRate">
            <summary>
            Gets the sample rate in Hz.
            </summary>
            <value>
            The sample rate.
            </value>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacMetadataStreamInfo.Channels">
            <summary>
            Gets the number of channels.
            </summary>
            <value>
            The number of channels.
            </value>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacMetadataStreamInfo.BitsPerSample">
            <summary>
            Gets the number of bits per sample.
            </summary>
            <value>
            The number of bits per sample.
            </value>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacMetadataStreamInfo.TotalSamples">
            <summary>
            Gets the total number of samples inside of the stream.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacMetadataStreamInfo.Md5">
            <summary>
            Gets MD5 signature of the unencoded audio data.
            </summary>
            <value>
            The MD5 signature of the unencoded audio data.
            </value>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacPartitionedRice.ReadFlacRiceBlock(CSCore.Codecs.FLAC.FlacBitReader,System.Int32,System.Int32,System.Int32*)">
            <summary>
            This method is based on the CUETools.NET BitReader (see http://sourceforge.net/p/cuetoolsnet/code/ci/default/tree/CUETools.Codecs/BitReader.cs)
            The author "Grigory Chudov" explicitly gave the permission to use the source as part of the cscore source code which got licensed under the ms-pl.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.FLAC.FlacMetaDataType">
            <summary>
            Defines flac metadata types.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.FLAC.FlacMetaDataType.StreamInfo">
            <summary>
            Streaminfo metadata.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.FLAC.FlacMetaDataType.Padding">
            <summary>
            Padding metadata.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.FLAC.FlacMetaDataType.Application">
            <summary>
            Application metadata.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.FLAC.FlacMetaDataType.Seektable">
            <summary>
            Seektable metadata.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.FLAC.FlacMetaDataType.VorbisComment">
            <summary>
            Vorbis comment metadata.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.FLAC.FlacMetaDataType.CueSheet">
            <summary>
            Cue sheet metadata.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.FLAC.FlacMetaDataType.Picture">
            <summary>
            Picture metadata.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.FLAC.FlacMetaDataType.Undef">
            <summary>
            Undefined metadata. Used for custom metadata fields.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.FLAC.FlacSeekPoint">
            <summary>
            Represents a single flac seek point.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.FLAC.FlacSeekPoint.PlaceHolderPointSampleNumber">
            <summary>
            The sample number for a placeholder point.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacSeekPoint.SampleNumber">
            <summary>
            Gets the sample number of the first sample in the target frame, or <see cref="F:CSCore.Codecs.FLAC.FlacSeekPoint.PlaceHolderPointSampleNumber"/> for a placeholder point.
            </summary>
            <value>
            The sample number of the first sample in the target frame.
            </value>
            <remarks>According to https://xiph.org/flac/format.html#metadata_block_seektable.</remarks>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacSeekPoint.Offset">
            <summary>
            Gets the offset (in bytes) from the first byte of the first frame header to the first byte of the target frame's header.
            </summary>
            <value>
            The offset (in bytes) from the first byte of the first frame header to the first byte of the target frame's header.
            </value>"/>
            <remarks>According to https://xiph.org/flac/format.html#metadata_block_seektable.</remarks>
        </member>
        <member name="P:CSCore.Codecs.FLAC.FlacSeekPoint.FrameSize">
            <summary>
            Gets the number of samples in the target frame.
            </summary>
            <value>
            The number of samples in the target frame.
            </value>
            <remarks>According to https://xiph.org/flac/format.html#metadata_block_seektable.</remarks>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacSeekPoint.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.FLAC.FlacSeekPoint"/> class.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacSeekPoint.#ctor(System.Int64,System.Int64,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.FLAC.FlacSeekPoint"/> class.
            </summary>
            <param name="sampleNumber">The <see cref="P:CSCore.Codecs.FLAC.FlacSeekPoint.SampleNumber"/> of the target frame.</param>
            <param name="offset">The <see cref="P:CSCore.Codecs.FLAC.FlacSeekPoint.Offset"/> of the target frame.</param>
            <param name="frameSize">The <see cref="P:CSCore.Codecs.FLAC.FlacSeekPoint.FrameSize"/> of the target frame.</param>
        </member>
        <member name="M:CSCore.Codecs.FLAC.FlacSubFrameLPC.Log2(System.Int32)">
            <summary>
            Copied from http://stackoverflow.com/questions/8970101/whats-the-quickest-way-to-compute-log2-of-an-integer-in-c 14.01.2015
            </summary>
        </member>
        <member name="T:CSCore.Codecs.FLAC.FlacBitReader">
            <summary>
            This method is based on the CUETools.NET BitReader (see http://sourceforge.net/p/cuetoolsnet/code/ci/default/tree/CUETools.Codecs/BitReader.cs)
            The author "Grigory Chudov" explicitly gave the permission to use the source as part of the cscore source code which got licensed under the ms-pl.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.GetCodecAction">
            <summary>
            Delegate which initializes a new decoder for a specific codec based on a <paramref name="stream"/>.
            </summary>
            <param name="stream"><see cref="T:System.IO.Stream"/> which contains the data that should be decoded by the codec decoder.</param>
            <returns>Decoder for a specific coded based on a <paramref name="stream"/>.</returns>
        </member>
        <member name="T:CSCore.Codecs.MP1.Mp1Decoder">
            <summary>
            Mediafoundation MP1 decoder.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP1.Mp1Decoder.IsSupported">
            <summary>
            Gets a value which indicates whether the Mediafoundation MP1 decoder is supported on the current platform.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.MP1.Mp1Decoder.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.MP1.Mp1Decoder"/> class.
            </summary>
            <param name="url">Url which points to a data source which provides MP1 data. This is typically a filename.</param>
        </member>
        <member name="M:CSCore.Codecs.MP1.Mp1Decoder.#ctor(System.IO.Stream)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.MP1.Mp1Decoder"/> class.
            </summary>
            <param name="stream">Stream which contains MP1 data.</param>
        </member>
        <member name="T:CSCore.Codecs.MP2.Mp2Decoder">
            <summary>
            Mediafoundation MP2 decoder.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP2.Mp2Decoder.IsSupported">
            <summary>
            Gets a value which indicates whether the Mediafoundation MP2 decoder is supported on the current platform.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.MP2.Mp2Decoder.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.MP2.Mp2Decoder"/> class.
            </summary>
            <param name="url">Url which points to a data source which provides MP2 data. This is typically a filename.</param>
        </member>
        <member name="M:CSCore.Codecs.MP2.Mp2Decoder.#ctor(System.IO.Stream)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.MP2.Mp2Decoder"/> class.
            </summary>
            <param name="stream">Stream which contains MP2 data.</param>
        </member>
        <member name="T:CSCore.Codecs.MP3.DmoMp3Decoder">
            <summary>
            DirectX Media Object MP3 Decoder wrapper.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.MP3.DmoMp3Decoder.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.MP3.DmoMp3Decoder"/> class.
            </summary>
            <param name="filename">File which contains raw MP3 data.</param>
        </member>
        <member name="M:CSCore.Codecs.MP3.DmoMp3Decoder.#ctor(System.IO.Stream)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.MP3.DmoMp3Decoder"/> class.
            </summary>
            <param name="stream">Stream which contains raw MP3 data.</param>
        </member>
        <member name="P:CSCore.Codecs.MP3.DmoMp3Decoder.Position">
            <summary>
            Gets or sets the position of the <see cref="T:CSCore.Codecs.MP3.DmoMp3Decoder"/> in bytes.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP3.DmoMp3Decoder.Length">
            <summary>
            Gets the length of the <see cref="T:CSCore.Codecs.MP3.DmoMp3Decoder"/> in bytes.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP3.DmoMp3Decoder.CanSeek">
            <summary>
            Gets a value indicating whether the <see cref="T:CSCore.IAudioSource"/> supports seeking.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.MP3.DmoMp3Decoder.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from the stream.
            </summary>
            <param name="buffer">An array of bytes. When this method returns, the buffer contains the read bytes.</param>
            <param name="offset">The zero-based byte offset in buffer at which to begin storing the data read from the stream.</param>
            <param name="count">The maximum number of bytes to be read from the stream</param>
            <returns>The actual number of read bytes.</returns>
        </member>
        <member name="M:CSCore.Codecs.MP3.DmoMp3Decoder.CreateMediaObject(CSCore.WaveFormat,CSCore.WaveFormat)">
            <summary>
            Returns a <see cref="T:CSCore.DMO.MediaObject"/> to decode the mp3 data.
            </summary>
            <param name="inputFormat">Format of the mp3 data to decode.</param>
            <param name="outputFormat">Output format.</param>
            <returns><see cref="T:CSCore.DMO.MediaObject"/> to decode the mp3 data.</returns>
        </member>
        <member name="M:CSCore.Codecs.MP3.DmoMp3Decoder.GetInputFormat">
            <summary>
            Returns the input format.
            </summary>
            <returns>Input format.</returns>
        </member>
        <member name="M:CSCore.Codecs.MP3.DmoMp3Decoder.GetOutputFormat">
            <summary>
            Returns the output format.
            </summary>
            <returns>Output format.</returns>
        </member>
        <member name="M:CSCore.Codecs.MP3.DmoMp3Decoder.GetInputData(System.Byte[]@,System.Int32)">
            <summary>
            Gets raw mp3 data to decode.
            </summary>
            <param name="inputDataBuffer">Byte array which will hold the raw mp3 data to decode.</param>
            <param name="requested">Number of requested bytes.</param>
            <returns>Total amount of read bytes.</returns>
        </member>
        <member name="M:CSCore.Codecs.MP3.DmoMp3Decoder.Dispose(System.Boolean)">
            <summary>
            Disposes the <see cref="T:CSCore.Codecs.MP3.DmoMp3Decoder"/>.
            </summary>
            <param name="disposing">True to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
        </member>
        <member name="T:CSCore.Codecs.MP3.Mp3ChannelMode">
            <summary>
            Channelmode of MP3 data. For more information see the mp3 specification.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.Mp3ChannelMode.Stereo">
            <summary>
            Stereo (left and right).
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.Mp3ChannelMode.JointStereo">
            <summary>
            Joint stereo.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.Mp3ChannelMode.DualChannel">
            <summary>
            Dual channel.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.Mp3ChannelMode.Mono">
            <summary>
            Mono (only one channel).
            </summary>
        </member>
        <member name="T:CSCore.Codecs.MP3.Mp3Format">
            <summary>
            The <see cref="T:CSCore.Codecs.MP3.Mp3Format"/> class describes an MPEG Audio Layer-3 (MP3) audio format. 
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.Mp3Format.Id">
            <summary>
            Set this member to <see cref="F:CSCore.Codecs.MP3.Mp3FormatId.Mpeg"/>.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.Mp3Format.Flags">
            <summary>
            Indicates whether padding is used to adjust the average bitrate to the sampling rate. 
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.Mp3Format.BlockSize">
            <summary>
            Block size in bytes. This value equals the frame length in bytes x <see cref="F:CSCore.Codecs.MP3.Mp3Format.FramesPerBlock"/>. For MP3 audio, the frame length is calculated as follows: 144 x (bitrate / sample rate) + padding.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.Mp3Format.FramesPerBlock">
            <summary>
            Number of audio frames per block.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.Mp3Format.CodecDelay">
            <summary>
            Encoder delay in samples. If you do not know this value, set this structure member to zero.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.Mp3Format.Mp3WaveFormatExtraBytes">
            <summary>
            MPEGLAYER3_WFX_EXTRA_BYTES
            </summary>
        </member>
        <member name="M:CSCore.Codecs.MP3.Mp3Format.#ctor(System.Int32,System.Int32,System.Int32,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.MP3.Mp3Format"/> class.
            </summary>
            <param name="sampleRate">Sample rate in Hz.</param>
            <param name="channels">Number of channels.</param>
            <param name="blockSize">Block size in bytes. This value equals the frame length in bytes x <see cref="F:CSCore.Codecs.MP3.Mp3Format.FramesPerBlock"/>. For MP3 audio, the frame length is calculated as follows: 144 x (bitrate / sample rate) + padding.</param>
            <param name="bitRate">Bitrate.</param>
        </member>
        <member name="M:CSCore.Codecs.MP3.Mp3Format.UpdateProperties">
            <summary>
            Updates the <see cref="P:CSCore.WaveFormat.BlockAlign"/>- and the <see cref="P:CSCore.WaveFormat.BytesPerSecond"/>-property.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.MP3.Mp3FormatId">
            <summary>
            MP3 Format id.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.Mp3FormatId.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.Mp3FormatId.Mpeg">
            <summary>
            Default value. Equals the MPEGLAYER3_ID_MPEG constant.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.Mp3FormatId.ConstFrameSize">
            <summary>
            Constant frame size.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.MP3.Mp3Frame">
            <summary>
            Represents an MP3 Frame.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.Mp3Frame.MaxFrameLength">
            <summary>
            Maximum length of one single <see cref="T:CSCore.Codecs.MP3.Mp3Frame"/> in bytes.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.MP3.Mp3Frame.FromStream(System.IO.Stream)">
            <summary>
            Creates a new instance of the <see cref="T:CSCore.Codecs.MP3.Mp3Frame"/> class based on a <see cref="T:System.IO.Stream"/>.
            </summary>
            <param name="stream"><see cref="T:System.IO.Stream"/> which provides MP3 data.</param>
            <returns>A new instance of the <see cref="T:CSCore.Codecs.MP3.Mp3Frame"/> class based on the specified <paramref name="stream"/>.</returns>
        </member>
        <member name="M:CSCore.Codecs.MP3.Mp3Frame.FromStream(System.IO.Stream,System.Byte[]@)">
            <summary>
            Creates a new instance of the <see cref="T:CSCore.Codecs.MP3.Mp3Frame"/> class based on a <see cref="T:System.IO.Stream"/>.
            </summary>
            <param name="stream"><see cref="T:System.IO.Stream"/> which provides MP3 data.</param>
            <param name="data">Byte array which recieves the content of the <see cref="T:CSCore.Codecs.MP3.Mp3Frame"/>.</param>
            <returns>A new instance of the <see cref="T:CSCore.Codecs.MP3.Mp3Frame"/> class based on the specified <paramref name="stream"/>.</returns>        
        </member>
        <member name="M:CSCore.Codecs.MP3.Mp3Frame.ReadData(System.Byte[]@,System.Int32)">
            <summary>
            Reads data from the <see cref="T:CSCore.Codecs.MP3.Mp3Frame"/>.
            </summary>
            <param name="buffer">Buffer which will receive the read data.</param>
            <param name="offset">Zero-based index at which to begin storing data within the <paramref name="buffer"/>.</param>
            <returns>The number of read bytes.</returns>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3Frame.MPEGVersion">
            <summary>
            Gets the Mpeg Version.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3Frame.MPEGLayer">
            <summary>
            Gets the Mpeg Layer.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3Frame.BitRate">
            <summary>
            Gets the bit rate.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3Frame.SampleRate">
            <summary>
            Gets the sample rate.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3Frame.ChannelMode">
            <summary>
            Gets the channel mode.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3Frame.ChannelCount">
            <summary>
            Gets the number of channels.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3Frame.SampleCount">
            <summary>
            Gets the number of samples
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3Frame.FrameLength">
            <summary>
            Gets the length of the frame.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3Frame.ChannelExtension">
            <summary>
            Gets the channel extension.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3Frame.CopyRight">
            <summary>
            Gets a value which indicates whether the copyright flag is set (true means that the copyright flag is set).
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3Frame.Original">
            <summary>
            Gets a value which indicates whether the original flag is set (true means that the original flag is set).
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3Frame.Emphasis">
            <summary>
            Gets the emphasis.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3Frame.Padding">
            <summary>
            Gets the padding.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3Frame.CrcEnabled">
            <summary>
            Gets a value which indicates whether the crc flag is set (true means that the crc flag is set).
            </summary>
        </member>
        <member name="T:CSCore.Codecs.MP3.Mp3MediafoundationDecoder">
            <summary>
            MP3 Mediafoundation Decoder.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3MediafoundationDecoder.IsSupported">
            <summary>
            Gets a value which indicates whether the Mediafoundation MP3 decoder is supported on the current platform.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.MP3.Mp3MediafoundationDecoder.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.MP3.Mp3MediafoundationDecoder"/> class.
            </summary>
            <param name="url">Url which points to a data source which provides MP3 data. This is typically a filename.</param>
        </member>
        <member name="M:CSCore.Codecs.MP3.Mp3MediafoundationDecoder.#ctor(System.IO.Stream)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.MP3.Mp3MediafoundationDecoder"/> class.
            </summary>
            <param name="stream">Stream which contains MP3 data.</param>
        </member>
        <member name="T:CSCore.Codecs.MP3.Mp3PaddingFlags">
            <summary>
            Indicates whether padding is used to adjust the average bitrate to the sampling rate. Use one of the following values:
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.Mp3PaddingFlags.PaddingIso">
            <summary>
            Insert padding as needed to achieve the stated average bitrate.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.Mp3PaddingFlags.PaddingOn">
            <summary>
            Always insert padding. The average bit rate may be higher than stated.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.Mp3PaddingFlags.PaddingOff">
            <summary>
            Never insert padding. The average bit rate may be lower than stated.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.MP3.Mp3WebStream">
            <summary>
            An <see cref="T:CSCore.IWaveSource"/> implementation for streaming mp3 streams like mp3 radio stations, etc. 
            </summary>
        </member>
        <member name="M:CSCore.Codecs.MP3.Mp3WebStream.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.MP3.Mp3WebStream"/> class.
            </summary>
            <param name="address">The address of the mp3 stream.</param>
        </member>
        <member name="M:CSCore.Codecs.MP3.Mp3WebStream.#ctor(System.String,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.MP3.Mp3WebStream"/> class.
            </summary>
            <param name="address">The address of the mp3 stream.</param>
            <param name="async">If set to <c>true</c>, the connection will be established asynchronously and the constructor will return immediately.
            Doing that, requires the usage of the <see cref="E:CSCore.Codecs.MP3.Mp3WebStream.ConnectionEstablished"/> event which will notify the caller when the <see cref="T:CSCore.Codecs.MP3.Mp3WebStream"/>
            is ready for use. If set to <c>false</c> the constructor will block the current thread as long as it takes to establish the connection. 
            </param>
        </member>
        <member name="M:CSCore.Codecs.MP3.Mp3WebStream.#ctor(System.Uri)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.MP3.Mp3WebStream"/> class.
            </summary>
            <param name="address">The address of the mp3 stream.</param>
        </member>
        <member name="M:CSCore.Codecs.MP3.Mp3WebStream.#ctor(System.Uri,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.MP3.Mp3WebStream"/> class.
            </summary>
            <param name="address">The address of the mp3 stream.</param>
            <param name="async">If set to <c>true</c>, the connection will be established asynchronously and the constructor will return immediately.
            Doing that, requires the usage of the <see cref="E:CSCore.Codecs.MP3.Mp3WebStream.ConnectionEstablished"/> event which will notify the caller when the <see cref="T:CSCore.Codecs.MP3.Mp3WebStream"/>
            is ready for use. If set to <c>false</c> the constructor will block the current thread as long as it takes to establish the connection. 
            </param>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3WebStream.StreamAddress">
            <summary>
            Gets the stream address.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3WebStream.BufferedBytes">
            <summary>
            Gets the number buffered bytes.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3WebStream.BufferSize">
            <summary>
            Gets the size of the internal buffer in bytes.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3WebStream.CanSeek">
            <summary>
            Gets a value indicating whether the <see cref="T:CSCore.Codecs.MP3.Mp3WebStream"/> supports seeking.
            </summary>
            <remarks>This property will always be set to <c>false</c>.</remarks>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3WebStream.WaveFormat">
            <summary>
            Gets the <see cref="P:CSCore.Codecs.MP3.Mp3WebStream.WaveFormat" /> of the decoded mp3 stream.
            If the internal decoder got not initialized yet, the value of the property is set to null.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.MP3.Mp3WebStream.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads a sequence of elements from the <see cref="T:CSCore.IReadableAudioSource`1" /> and advances the position within the stream by the number of elements read.
            </summary>
            <param name="buffer">An array of elements. When this method returns, the <paramref name="buffer" /> contains the specified array of elements with the values between <paramref name="offset" /> and (<paramref name="offset" /> +     <paramref name="count" /> - 1) replaced by the elements read from the current source.</param>
            <param name="offset">The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data read from the current stream.</param>
            <param name="count">The maximum number of elements to read from the current source.</param>
            <returns>
            The total number of elements read into the buffer.
            </returns>
            <exception cref="T:System.ObjectDisposedException">Mp3WebStream</exception>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3WebStream.Position">
            <summary>
            Gets or sets the current position. This property is not supported by the <see cref="T:CSCore.Codecs.MP3.Mp3WebStream" /> class.
            </summary>
            <exception cref="T:System.NotSupportedException">The Mp3WebStream class does not support seeking.</exception>
        </member>
        <member name="P:CSCore.Codecs.MP3.Mp3WebStream.Length">
            <summary>
            Gets the length of the waveform-audio data. The value of this property will always be set to zero.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.MP3.Mp3WebStream.Dispose">
            <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
            </summary>
        </member>
        <member name="E:CSCore.Codecs.MP3.Mp3WebStream.ConnectionEstablished">
            <summary>
            Occurs when connection got established and the async argument of the constructor was set to <c>true</c>.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.MP3.Mp3WebStream.InitializeConnection">
            <summary>
            Initializes the connection.
            </summary>
            <returns><c>true</c> if the connection was initialized successfully; otherwise <c>false</c>.</returns>
            <exception cref="T:System.Net.WebException">
            Could not create HttpWebRequest
            or
            Could not create WebResponse
            </exception>
        </member>
        <member name="M:CSCore.Codecs.MP3.Mp3WebStream.Dispose(System.Boolean)">
            <summary>
            Releases unmanaged and - optionally - managed resources.
            </summary>
            <param name="disposing"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
        </member>
        <member name="M:CSCore.Codecs.MP3.Mp3WebStream.Finalize">
            <summary>
            Finalizes an instance of the <see cref="T:CSCore.Codecs.MP3.Mp3WebStream"/> class.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.MP3.MpegLayer">
            <summary>
            Defines all known Mpeg-layers.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.MpegLayer.Reserved">
            <summary>
            Reserved by ISO.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.MpegLayer.Layer3">
            <summary>
            MPEG Layer 3
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.MpegLayer.Layer2">
            <summary>
            MPEG Layer 2
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.MpegLayer.Layer1">
            <summary>
            MPEG Layer 1
            </summary>
        </member>
        <member name="T:CSCore.Codecs.MP3.MpegVersion">
            <summary>
            Defines all known Mpeg Versions.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.MpegVersion.Version25">
            <summary>
            Version 2.5
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.MpegVersion.Reserved">
            <summary>
            Reserved by ISO
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.MpegVersion.Version2">
            <summary>
            Version 2.0
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.MpegVersion.Version1">
            <summary>
            Version 1.0
            </summary>
        </member>
        <member name="T:CSCore.Codecs.MP3.XingHeader">
            <summary>
            Defines a Xing-Header.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.MP3.XingHeader.HeaderFlags">
            <summary>
            Gets the header flags of the <see cref="T:CSCore.Codecs.MP3.XingHeader"/>.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.MP3.XingHeader.FromFrame(CSCore.Codecs.MP3.Mp3Frame)">
            <summary>
            Gets the <see cref="T:CSCore.Codecs.MP3.XingHeader"/> of a <see cref="T:CSCore.Codecs.MP3.Mp3Frame"/>. If the <paramref name="frame"/> does not has an <see cref="T:CSCore.Codecs.MP3.XingHeader"/> the return value will be null.
            </summary>
            <param name="frame"><see cref="T:CSCore.Codecs.MP3.Mp3Frame"/> which should get checked whether it contains a <see cref="T:CSCore.Codecs.MP3.XingHeader"/>.</param>
            <returns><see cref="T:CSCore.Codecs.MP3.XingHeader"/> of the specified <paramref name="frame"/> or null.</returns>
        </member>
        <member name="T:CSCore.Codecs.MP3.XingHeaderFlags">
            <summary>
            Defines the header flags of a xing header.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.XingHeaderFlags.Frames">
            <summary>
            Frames field is present
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.XingHeaderFlags.Bytes">
            <summary>
            Bytes field is present.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.XingHeaderFlags.Toc">
            <summary>
            TOC field is present.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.MP3.XingHeaderFlags.QualityIndicator">
            <summary>
            Quality indicator field is present.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.WMA.WmaDecoder">
            <summary>
            Mediafoundation WMA decoder.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.WMA.WmaDecoder.IsSupported">
            <summary>
            Gets a value which indicates whether the Mediafoundation WMA, WMA-Speech and WMA-Professional decoder is supported on the current platform.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.WMA.WmaDecoder.IsSpeechSupported">
            <summary>
            Gets a value which indicates whether the Mediafoundation WMA-Speech decoder is supported on the current platform.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.WMA.WmaDecoder.IsWmaProfessionalSupported">
            <summary>
            Gets a value which indicates whether the Mediafoundation WMA-Professional decoder is supported on the current platform.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.WMA.WmaDecoder.IsWmaSupported">
            <summary>
            Gets a value which indicates whether the Mediafoundation WMA decoder is supported on the current platform.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.WMA.WmaDecoder.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.WMA.WmaDecoder"/> class.
            </summary>
            <param name="url">Url which points to a data source which provides WMA data. This is typically a filename.</param>
        </member>
        <member name="M:CSCore.Codecs.WMA.WmaDecoder.#ctor(System.IO.Stream)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Codecs.WMA.WmaDecoder"/> class.
            </summary>
            <param name="stream">Stream which contains WMA data.</param>
        </member>
        <member name="T:CSCore.Codecs.RAW.RawDataReader">
            <summary>
                Implementation of the <see cref="T:CSCore.IWaveSource" /> interface which reads raw data from a <see cref="T:System.IO.Stream" /> based
                on a specified <see cref="P:CSCore.Codecs.RAW.RawDataReader.WaveFormat" />.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.RAW.RawDataReader.#ctor(System.IO.Stream,CSCore.WaveFormat)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.RAW.RawDataReader" /> class.
            </summary>
            <param name="stream"><see cref="T:System.IO.Stream" /> which contains raw waveform-audio data.</param>
            <param name="waveFormat">The format of the waveform-audio data within the <paramref name="stream" />.</param>
        </member>
        <member name="M:CSCore.Codecs.RAW.RawDataReader.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from the <see cref="T:CSCore.Codecs.RAW.RawDataReader" /> and advances the position within the stream by the
                number of bytes read.
            </summary>
            <param name="buffer">
                An array of bytes. When this method returns, the <paramref name="buffer" /> contains the specified
                byte array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the bytes read from the current source.
            </param>
            <param name="offset">
                The zero-based byte offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of bytes to read from the current source.</param>
            <returns>The total number of bytes read into the buffer.</returns>
        </member>
        <member name="P:CSCore.Codecs.RAW.RawDataReader.CanSeek">
            <summary>
            Gets a value indicating whether the <see cref="T:CSCore.IAudioSource"/> supports seeking.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.RAW.RawDataReader.WaveFormat">
            <summary>
                Gets the format of the raw data.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.RAW.RawDataReader.Position">
            <summary>
                Gets or sets the position of the <see cref="T:CSCore.Codecs.RAW.RawDataReader" /> in bytes.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.RAW.RawDataReader.Length">
            <summary>
                Gets the length of the <see cref="T:CSCore.Codecs.RAW.RawDataReader" /> in bytes.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.RAW.RawDataReader.Dispose">
            <summary>
                Disposes the <see cref="T:CSCore.Codecs.RAW.RawDataReader" /> and the underlying <see cref="T:System.IO.Stream" />.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.RAW.RawDataReader.Dispose(System.Boolean)">
            <summary>
                Disposes the <see cref="T:CSCore.Codecs.RAW.RawDataReader" /> and the underlying <see cref="T:System.IO.Stream" />.
            </summary>
            <param name="disposing">
                True to release both managed and unmanaged resources; false to release only unmanaged
                resources.
            </param>
        </member>
        <member name="M:CSCore.Codecs.RAW.RawDataReader.Finalize">
            <summary>
            Destructor which calls the <see cref="M:CSCore.Codecs.RAW.RawDataReader.Dispose(System.Boolean)"/> method.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.WAV.DataChunk">
            <summary>
                Represents the <see cref="T:CSCore.Codecs.WAV.DataChunk" /> of a wave file.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.WAV.DataChunk.DataChunkID">
            <summary>
                Chunk ID of the <see cref="T:CSCore.Codecs.WAV.DataChunk" />.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.WAV.DataChunk.#ctor(System.IO.Stream)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.WAV.DataChunk" /> class.
            </summary>
            <param name="stream"><see cref="T:System.IO.Stream" /> which contains the data chunk.</param>
        </member>
        <member name="M:CSCore.Codecs.WAV.DataChunk.#ctor(System.IO.BinaryReader)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.WAV.DataChunk" /> class.
            </summary>
            <param name="reader"><see cref="T:System.IO.BinaryReader" /> which should be used to read the data chunk.</param>
        </member>
        <member name="P:CSCore.Codecs.WAV.DataChunk.DataStartPosition">
            <summary>
            Gets the zero-based position inside of the stream at which the audio data starts.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.WAV.FmtChunk">
            <summary>
                Represents the <see cref="T:CSCore.Codecs.WAV.FmtChunk" /> of a wave file.
            </summary>
        </member>
        <member name="F:CSCore.Codecs.WAV.FmtChunk.FmtChunkID">
            <summary>
                Chunk ID of the <see cref="T:CSCore.Codecs.WAV.FmtChunk" />.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.WAV.FmtChunk.#ctor(System.IO.Stream)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.WAV.FmtChunk" /> class.
            </summary>
            <param name="stream"><see cref="T:System.IO.Stream" /> which contains the fmt chunk.</param>
        </member>
        <member name="M:CSCore.Codecs.WAV.FmtChunk.#ctor(System.IO.BinaryReader)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.WAV.FmtChunk" /> class.
            </summary>
            <param name="reader"><see cref="T:System.IO.BinaryReader" /> which should be used to read the fmt chunk.</param>
        </member>
        <member name="P:CSCore.Codecs.WAV.FmtChunk.WaveFormat">
            <summary>
                Gets the <see cref="P:CSCore.Codecs.WAV.FmtChunk.WaveFormat" /> specified by the <see cref="T:CSCore.Codecs.WAV.FmtChunk" />.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.WAV.WaveFileChunk">
            <summary>
                Represents a wave file chunk. For more information see
                <see href="http://www.sonicspot.com/guide/wavefiles.html#wavefilechunks" />.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveFileChunk.#ctor(System.IO.Stream)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.WAV.WaveFileChunk" /> class.
            </summary>
            <param name="stream"><see cref="T:System.IO.Stream" /> which contains the wave file chunk.</param>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveFileChunk.#ctor(System.IO.BinaryReader)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.WAV.WaveFileChunk" /> class.
            </summary>
            <param name="reader"><see cref="T:System.IO.BinaryReader" /> which should be used to read the wave file chunk.</param>
        </member>
        <member name="P:CSCore.Codecs.WAV.WaveFileChunk.ChunkID">
            <summary>
                Gets the unique ID of the Chunk. Each type of chunk has its own id.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.WAV.WaveFileChunk.ChunkDataSize">
            <summary>
                Gets the data size of the chunk.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveFileChunk.FromStream(System.IO.Stream)">
            <summary>
                Parses the <paramref name="stream" /> and returns a <see cref="T:CSCore.Codecs.WAV.WaveFileChunk" />. Note that the position of the
                stream has to point to a wave file chunk.
            </summary>
            <param name="stream"><see cref="T:System.IO.Stream" /> which points to a wave file chunk.</param>
            <returns>
                Instance of the <see cref="T:CSCore.Codecs.WAV.WaveFileChunk" /> class or any derived classes. It the stream does not point to a
                wave file chunk the instance of the <see cref="T:CSCore.Codecs.WAV.WaveFileChunk" /> which gets return will be invalid.
            </returns>
        </member>
        <member name="T:CSCore.Codecs.WAV.WaveFileReader">
            <summary>
                Provides a decoder for reading wave files.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveFileReader.#ctor(System.String)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.WAV.WaveFileReader" /> class.
            </summary>
            <param name="fileName">Filename which points to a wave file.</param>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveFileReader.#ctor(System.IO.Stream)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.WAV.WaveFileReader" /> class.
            </summary>
            <param name="stream">Stream which contains wave file data.</param>
        </member>
        <member name="P:CSCore.Codecs.WAV.WaveFileReader.Chunks">
            <summary>
                Gets a list of all found chunks.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveFileReader.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from the <see cref="T:CSCore.Codecs.WAV.WaveFileReader" /> and advances the position within the stream by the
                number of bytes read.
            </summary>
            <param name="buffer">
                An array of bytes. When this method returns, the <paramref name="buffer" /> contains the specified
                byte array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the bytes read from the current source.
            </param>
            <param name="offset">
                The zero-based byte offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of bytes to read from the current source.</param>
            <returns>The total number of bytes read into the buffer.</returns>
        </member>
        <member name="P:CSCore.Codecs.WAV.WaveFileReader.WaveFormat">
            <summary>
                Gets the wave format of the wave file. This property gets specified by the <see cref="T:CSCore.Codecs.WAV.FmtChunk" />.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.WAV.WaveFileReader.Position">
            <summary>
                Gets or sets the position of the <see cref="T:CSCore.Codecs.WAV.WaveFileReader" /> in bytes.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.WAV.WaveFileReader.Length">
            <summary>
                Gets the length of the <see cref="T:CSCore.Codecs.WAV.WaveFileReader" /> in bytes.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.WAV.WaveFileReader.CanSeek">
            <summary>
            Gets a value indicating whether the <see cref="T:CSCore.Codecs.WAV.WaveFileReader"/> supports seeking.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveFileReader.Dispose">
            <summary>
                Disposes the <see cref="T:CSCore.Codecs.WAV.WaveFileReader" /> and the underlying stream.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveFileReader.Dispose(System.Boolean)">
            <summary>
                Disposes the <see cref="T:CSCore.Codecs.WAV.WaveFileReader" /> and the underlying stream.
            </summary>
            <param name="disposing">
                True to release both managed and unmanaged resources; false to release only unmanaged
                resources.
            </param>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveFileReader.Finalize">
            <summary>
            Destructor which calls the <see cref="M:CSCore.Codecs.WAV.WaveFileReader.Dispose(System.Boolean)"/> method.
            </summary>
        </member>
        <member name="T:CSCore.Codecs.WAV.WaveWriter">
            <summary>
                Encoder for wave files.
            </summary>
        </member>
        <member name="P:CSCore.Codecs.WAV.WaveWriter.IsDisposed">
            <summary>
            Signals if the object has already been disposed
            </summary>
        </member>
        <member name="P:CSCore.Codecs.WAV.WaveWriter.IsDisposing">
            <summary>
            Signals if the object is in a disposing state
            </summary>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveWriter.#ctor(System.String,CSCore.WaveFormat)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.WAV.WaveWriter" /> class.
            </summary>
            <param name="fileName">Filename of the destination file. This filename should typically end with the .wav extension.</param>
            <param name="waveFormat">
                Format of the waveform-audio data. Note that the <see cref="T:CSCore.Codecs.WAV.WaveWriter" /> won't convert any
                data.
            </param>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveWriter.#ctor(System.IO.Stream,CSCore.WaveFormat)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Codecs.WAV.WaveWriter" /> class.
            </summary>
            <param name="stream">Destination stream which should be used to store the</param>
            <param name="waveFormat">
                Format of the waveform-audio data. Note that the <see cref="T:CSCore.Codecs.WAV.WaveWriter" /> won't convert any
                data.
            </param>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveWriter.Dispose">
            <summary>
                Disposes the <see cref="T:CSCore.Codecs.WAV.WaveWriter" /> and writes down the wave header.
            </summary>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveWriter.WriteToFile(System.String,CSCore.IWaveSource,System.Boolean,System.Int32)">
            <summary>
            Writes down all audio data of the <see cref="T:CSCore.IWaveSource" /> to a file.
            </summary>
            <param name="filename">The filename.</param>
            <param name="source">The source to write down to the file.</param>
            <param name="deleteFileIfAlreadyExists">if set to <c>true</c> the file will be overritten if it already exists.</param>
            <param name="maxlength">The maximum number of bytes to write. Use -1 to write an infinte number of bytes.</param>
            <remarks>
            This method is obsolete. Use the <see cref="M:CSCore.Extensions.WriteToWaveStream(CSCore.IWaveSource,System.IO.Stream)" /> extension instead.
            </remarks>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveWriter.WriteSample(System.Single)">
            <summary>
                Encodes a single sample.
            </summary>
            <param name="sample">The sample to encode.</param>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveWriter.WriteSamples(System.Single[],System.Int32,System.Int32)">
            <summary>
                Encodes multiple samples.
            </summary>
            <param name="samples">Float array which contains the samples to encode.</param>
            <param name="offset">Zero-based offset in the <paramref name="samples" /> array.</param>
            <param name="count">Number of samples to encode.</param>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveWriter.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Encodes raw data in the form of a byte array.
            </summary>
            <param name="buffer">Byte array which contains the data to encode.</param>
            <param name="offset">Zero-based offset in the <paramref name="buffer" />.</param>
            <param name="count">Number of bytes to encode.</param>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveWriter.Write(System.Byte)">
            <summary>
                Writes down a single byte.
            </summary>
            <param name="value">Byte to write down.</param>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveWriter.Write(System.Int16)">
            <summary>
                Writes down a single 16 bit integer value.
            </summary>
            <param name="value">Value to write down.</param>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveWriter.Write(System.Int32)">
            <summary>
                Writes down a single 32 bit integer value.
            </summary>
            <param name="value">Value to write down.</param>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveWriter.Write(System.Single)">
            <summary>
                Writes down a single 32 bit float value.
            </summary>
            <param name="value">Value to write down.</param>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveWriter.Dispose(System.Boolean)">
            <summary>
                Disposes the <see cref="T:CSCore.Codecs.WAV.WaveWriter" /> and writes down the wave header.
            </summary>
            <param name="disposing">
                True to release both managed and unmanaged resources; false to release only unmanaged
                resources.
            </param>
        </member>
        <member name="M:CSCore.Codecs.WAV.WaveWriter.Finalize">
            <summary>
                Destructor of the <see cref="T:CSCore.Codecs.WAV.WaveWriter" /> which calls the <see cref="M:CSCore.Codecs.WAV.WaveWriter.Dispose(System.Boolean)" /> method.
            </summary>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioCaptureClient">
            <summary>
                Enables a client to read input data from a capture endpoint buffer. For more information, see
                <see href="http://msdn.microsoft.com/en-us/library/dd370858(v=vs.85).aspx" />.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioCaptureClient.#ctor(System.IntPtr)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioCaptureClient" /> class.
            </summary>
            <param name="ptr">The native pointer of the IAudioCaptureClient COM object.</param>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioCaptureClient.NextPacketSize">
            <summary>
                Gets the size of the next packet in frames (the size of one frame equals the blockalign value of the waveformat).
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioCaptureClient.FromAudioClient(CSCore.CoreAudioAPI.AudioClient)">
            <summary>
                Creates a new <see cref="T:CSCore.CoreAudioAPI.AudioCaptureClient" /> by calling the <see cref="M:CSCore.CoreAudioAPI.AudioClient.GetService(System.Guid)" /> method of the
                specified <paramref name="audioClient" />.
            </summary>
            <param name="audioClient">
                The <see cref="T:CSCore.CoreAudioAPI.AudioClient" /> which should be used to create the <see cref="T:CSCore.CoreAudioAPI.AudioCaptureClient" />-instance
                with.
            </param>
            <returns>A new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioCaptureClient"/> class.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioCaptureClient.GetBufferNative(System.IntPtr@,System.Int32@,CSCore.CoreAudioAPI.AudioClientBufferFlags@,System.Int64@,System.Int64@)">
            <summary>
                Retrieves a pointer to the next available packet of data in the capture endpoint buffer.
                For more information see
                <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd370859%28v=vs.85%29.aspx" />.
            </summary>
            <param name="data">
                A pointer variable into which the method writes the starting address of the next data
                packet that is available for the client to read.
            </param>
            <param name="numFramesRead">
                Variable into which the method writes the frame count (the number of audio frames
                available in the data packet). The client should either read the entire data packet or none of it.
            </param>
            <param name="flags">Variable into which the method writes the buffer-status flags.</param>
            <param name="devicePosition">
                Variable into which the method writes the device position of the first audio frame in the
                data packet. The device position is expressed as the number of audio frames from the start of the stream.
            </param>
            <param name="qpcPosition">
                Variable into which the method writes the value of the performance counter at the time that
                the audio endpoint device recorded the device position of the first audio frame in the data packet.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioCaptureClient.GetBuffer(System.Int32@,CSCore.CoreAudioAPI.AudioClientBufferFlags@,System.Int64@,System.Int64@)">
            <summary>
                Retrieves a pointer to the next available packet of data in the capture endpoint buffer.
                For more information see
                <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd370859%28v=vs.85%29.aspx" />.
            </summary>
            <param name="framesRead">
                Variable into which the method writes the frame count (the number of audio frames available in
                the data packet). The client should either read the entire data packet or none of it.
            </param>
            <param name="flags">Variable into which the method writes the buffer-status flags.</param>
            <param name="devicePosition">
                Variable into which the method writes the device position of the first audio frame in the
                data packet. The device position is expressed as the number of audio frames from the start of the stream.
            </param>
            <param name="qpcPosition">
                Variable into which the method writes the value of the performance counter at the time that
                the audio endpoint device recorded the device position of the first audio frame in the data packet.
            </param>
            <returns>
                Pointer to a variable which stores the starting address of the next data packet that is available for the
                client to read.
            </returns>
            <remarks>
                Use Marshal.Copy to convert the pointer to the buffer into an array.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioCaptureClient.GetBuffer(System.Int32@,CSCore.CoreAudioAPI.AudioClientBufferFlags@)">
            <summary>
                Retrieves a pointer to the next available packet of data in the capture endpoint buffer.
                For more information see
                <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd370859%28v=vs.85%29.aspx" />.
            </summary>
            <param name="framesRead">
                Variable into which the method writes the frame count (the number of audio frames available in
                the data packet). The client should either read the entire data packet or none of it.
            </param>
            <param name="flags">Variable into which the method writes the buffer-status flags.</param>
            <returns>
                Pointer to a variable which stores the starting address of the next data packet that is available for the
                client to read.
            </returns>
            <remarks>
                Use Marshal.Copy to convert the pointer to the buffer into an array.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioCaptureClient.ReleaseBufferNative(System.Int32)">
            <summary>
                The ReleaseBuffer method releases the buffer. For more information, see <see href="http://msdn.microsoft.com/en-us/library/dd370861(v=vs.85).aspx"/>.
            </summary>
            <param name="framesRead">
                The number of audio frames that the client read from the
                capture buffer. This parameter must be either equal to the number of frames in the
                previously acquired data packet or 0.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioCaptureClient.ReleaseBuffer(System.Int32)">
            <summary>
                The ReleaseBuffer method releases the buffer. For more information, see <see href="http://msdn.microsoft.com/en-us/library/dd370861(v=vs.85).aspx"/>.
            </summary>
            <param name="framesRead">
                The number of audio frames that the client read from the
                capture buffer. This parameter must be either equal to the number of frames in the
                previously acquired data packet or 0.
            </param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioCaptureClient.GetNextPacketSizeNative(System.Int32@)">
            <summary>
                The GetNextPacketSize method retrieves the number of frames in the next data packet in
                the capture endpoint buffer.
            For more information, see <see href="http://msdn.microsoft.com/en-us/library/dd370860(v=vs.85).aspx"/>.
            </summary>
            <param name="numFramesInNextPacket">
                Variable into which the method writes the frame count (the number of audio
                frames in the next capture packet).
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioCaptureClient.GetNextPacketSize">
            <summary>
                The GetNextPacketSize method retrieves the number of frames in the next data packet in
                the capture endpoint buffer.
            For more information, see <see href="http://msdn.microsoft.com/en-us/library/dd370860(v=vs.85).aspx"/>.
            </summary>
            <returns>The number of the audio frames in the next capture packet.</returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioClientBufferFlags">
            <summary>
                Defines flags that indicate the status of an audio endpoint buffer.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioClientBufferFlags.None">
            <summary>
                None
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioClientBufferFlags.DataDiscontinuity">
            <summary>
                The data in the packet is not correlated with the previous packet's device position;
                this is possibly due to a stream state transition or timing glitch.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioClientBufferFlags.Silent">
            <summary>
                Treat all of the data in the packet as silence and ignore the actual data values.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioClientBufferFlags.TimestampError">
            <summary>
                The time at which the device's stream position was recorded is uncertain. Thus, the
                client might be unable to accurately set the time stamp for the current data packet.
            </summary>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioClientSessionFlags">
            <summary>
                The <see cref="T:CSCore.CoreAudioAPI.AudioClientSessionFlags" /> constants indicate characteristics of an audio session associated with
                the stream. A client can specify these options during the initialization of the stream by through the
                <c>StreamFlags</c> parameter of the <see cref="M:CSCore.CoreAudioAPI.AudioClient.Initialize(CSCore.CoreAudioAPI.AudioClientShareMode,CSCore.CoreAudioAPI.AudioClientStreamFlags,System.Int64,System.Int64,CSCore.WaveFormat,System.Guid)" /> method.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioClientSessionFlags.SessionFlagsExpireWhenUnowned">
            <summary>
                The session expires when there are no associated streams and owning session control objects holding references.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioClientSessionFlags.SessionFlagsDisplayHide">
            <summary>
                The volume control is hidden in the volume mixer user interface when the audio session is created. If the session
                associated with the stream already exists before <see cref="M:CSCore.CoreAudioAPI.AudioClient.Initialize(CSCore.CoreAudioAPI.AudioClientShareMode,CSCore.CoreAudioAPI.AudioClientStreamFlags,System.Int64,System.Int64,CSCore.WaveFormat,System.Guid)" /> opens the stream, the volume
                control is displayed in the volume mixer.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioClientSessionFlags.SessionFlagsDisplayHideWhenExpired">
            <summary>
                The volume control is hidden in the volume mixer user interface after the session expires.
            </summary>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioClientStreamFlags">
            <summary>
                Specifies characteristics that a client can assign to an audio stream during the initialization of the stream.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioClientStreamFlags.None">
            <summary>
                None
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioClientStreamFlags.StreamFlagsCrossProcess">
            <summary>
                The audio stream will be a member of a cross-process audio session. For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370791(v=vs.85).aspx" />.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioClientStreamFlags.StreamFlagsLoopback">
            <summary>
                The audio stream will operate in loopback mode. For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370791(v=vs.85).aspx" />.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioClientStreamFlags.StreamFlagsEventCallback">
            <summary>
                Processing of the audio buffer by the client will be event driven. For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370791(v=vs.85).aspx" />.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioClientStreamFlags.StreamFlagsNoPersist">
            <summary>
                The volume and mute settings for an audio session will not persist across system restarts. For more information,
                see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370791(v=vs.85).aspx" />.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioClientStreamFlags.StreamFlagsRateAdjust">
            <summary>
                This constant is new in Windows 7. The sample rate of the stream is adjusted to a rate specified by an application.
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370791(v=vs.85).aspx" />.
            </summary>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioClock">
            <summary>
                The <see cref="T:CSCore.CoreAudioAPI.AudioClock" /> class enables a client to monitor a stream's data rate and the current position in
                the stream.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClock.#ctor(System.IntPtr)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioClock" /> class.
            </summary>
            <param name="ptr">The native pointer of the IAudioClock COM Object.</param>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioClock.Pu64Frequency">
            <summary>
                Gets the device frequency. For more information, see
                <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd370889(v=vs.85).aspx" />.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioClock.Pu64Position">
            <summary>
                Gets the device position.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClock.FromAudioClient(CSCore.CoreAudioAPI.AudioClient)">
            <summary>
                Creates a new <see cref="T:CSCore.CoreAudioAPI.AudioCaptureClient" /> by calling the <see cref="M:CSCore.CoreAudioAPI.AudioClient.GetService(System.Guid)" /> method of the
                specified <paramref name="audioClient" />.
            </summary>
            <param name="audioClient">
                <see cref="T:CSCore.CoreAudioAPI.AudioClient" /> which should be used to create the <see cref="T:CSCore.CoreAudioAPI.AudioCaptureClient" />-instance
                with.
            </param>
            <returns>A new <see cref="T:CSCore.CoreAudioAPI.AudioCaptureClient" />.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClock.GetFrequencyNative(System.Int64@)">
            <summary>
                The GetFrequency method gets the device frequency.
            </summary>
            <param name="pu64Frequency">
                The device frequency. For more information, see
                <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd370889(v=vs.85).aspx" />.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClock.GetPositionNative(System.Int64@,System.Int64@)">
            <summary>
                The GetPosition method gets the current device position.
            </summary>
            <param name="pu64Position">
                The device position is the offset from the start of the stream to the current position in the stream. However, the
                units in which this offset is expressed are undefined—the device position value has meaning only in relation to the
                <see cref="P:CSCore.CoreAudioAPI.AudioClock.Pu64Frequency" />. For more information, see
                <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd370889(v=vs.85).aspx" />.
            </param>
            <param name="pu64QPCPosition">
                The value of the performance counter at the time that the audio endpoint device read the device position
                (<paramref name="pu64Position" />) in response to the <see cref="M:CSCore.CoreAudioAPI.AudioClock.GetPositionNative(System.Int64@,System.Int64@)" /> call. The method converts
                the counter value to 100-nanosecond time
                units before writing it to <paramref name="pu64QPCPosition" />.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClock.GetCharacteristicsNative(System.Int32@)">
            <summary>
                The GetCharacteristics method is reserved for future use.
            </summary>
            <param name="characteristics">Value that indicates the characteristics of the audio clock.</param>
            <returns>HREUSLT</returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioClock2">
            <summary>
                Used to get the device position.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClock2.#ctor(System.IntPtr)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioClock2" /> class.
            </summary>
            <param name="ptr">The native pointer of the IAudioClock2 COM object.</param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClock2.#ctor(CSCore.CoreAudioAPI.AudioClock)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioClock2" /> class.
            </summary>
            <param name="audioClock">
                An <see cref="T:CSCore.CoreAudioAPI.AudioClock" /> instance which should be used to query the
                <see cref="T:CSCore.CoreAudioAPI.AudioClock2" /> object.
            </param>
            <exception cref="T:System.ArgumentNullException">The <paramref name="audioClock" /> argument is null.</exception>
            <exception cref="T:System.NotSupportedException">
                The <see cref="T:CSCore.CoreAudioAPI.AudioClock2" /> COM object is not supported on the current platform. Only supported on Windows
                7/Windows Server 2008 R2 and above.
                For more information, see
                <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd370883(v=vs.85).aspx" />.
            </exception>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClock2.GetDevicePositionNative(System.Int64@,System.Int64@)">
            <summary>
                The <see cref="M:CSCore.CoreAudioAPI.AudioClock2.GetDevicePositionNative(System.Int64@,System.Int64@)" /> method gets the current device position, in frames, directly from the
                hardware.
            </summary>
            <param name="devicePosition">
                Receives the device position, in frames. The received position is an unprocessed value
                that the method obtains directly from the hardware. For more information, see
                <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd370883(v=vs.85).aspx" />.
            </param>
            <param name="qpcPosition">
                Receives the value of the performance counter at the time that the audio endpoint device read
                the device position retrieved in the <paramref name="devicePosition" /> parameter in response to the
                <see cref="M:CSCore.CoreAudioAPI.AudioClock2.GetDevicePositionNative(System.Int64@,System.Int64@)" /> call.
                <see cref="M:CSCore.CoreAudioAPI.AudioClock2.GetDevicePositionNative(System.Int64@,System.Int64@)" /> converts the counter value to 100-nanosecond time units before writing it to
                QPCPosition.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClock2.GetDevicePosition(System.Int64@,System.Int64@)">
            <summary>
                The <see cref="M:CSCore.CoreAudioAPI.AudioClock2.GetDevicePosition(System.Int64@,System.Int64@)" /> method gets the current device position, in frames, directly from the
                hardware.
            </summary>
            <param name="devicePosition">
                Receives the device position, in frames. The received position is an unprocessed value
                that the method obtains directly from the hardware. For more information, see
                <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd370883(v=vs.85).aspx" />.
            </param>
            <param name="qpcPosition">
                Receives the value of the performance counter at the time that the audio endpoint device read
                the device position retrieved in the <paramref name="devicePosition" /> parameter in response to the
                <see cref="M:CSCore.CoreAudioAPI.AudioClock2.GetDevicePosition(System.Int64@,System.Int64@)" /> call.
                <see cref="M:CSCore.CoreAudioAPI.AudioClock2.GetDevicePosition(System.Int64@,System.Int64@)" /> converts the counter value to 100-nanosecond time units before writing it to
                QPCPosition.
            </param>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioMeterInformation">
            <summary>
                Represents a peak meter on an audio stream to or from an audio endpoint device.
                For more information, see
                <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd368227(v=vs.85).aspx" />.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioMeterInformation.#ctor(System.IntPtr)">
            <summary>
                Initializes a new instance of <see cref="T:CSCore.CoreAudioAPI.AudioMeterInformation" /> class.
            </summary>
            <param name="ptr">The native pointer.</param>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioMeterInformation.MeteringChannelCount">
            <summary>
                Gets the number of channels in the audio stream that are monitored by peak meters.
                <seealso cref="M:CSCore.CoreAudioAPI.AudioMeterInformation.GetMeteringChannelCount" />
                <seealso cref="M:CSCore.CoreAudioAPI.AudioMeterInformation.GetMeteringChannelCountNative(System.Int32@)" />
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioMeterInformation.Item(System.Int32)">
            <summary>
                Gets the peak sample value for the given <paramref name="channelIndex" />.
                <seealso cref="M:CSCore.CoreAudioAPI.AudioMeterInformation.GetChannelsPeakValues" />
                <seealso cref="M:CSCore.CoreAudioAPI.AudioMeterInformation.GetChannelsPeakValues(System.Int32)" />
                <seealso cref="M:CSCore.CoreAudioAPI.AudioMeterInformation.GetChannelsPeakValuesNative(System.Int32,System.Single[]@)" />
            </summary>
            <returns>The peak sample value for the given <paramref name="channelIndex" />.</returns>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioMeterInformation.HardwareSupport">
            <summary>
                Gets the hardware-supported functions.
                <seealso cref="M:CSCore.CoreAudioAPI.AudioMeterInformation.QueryHardwareSupport" />
                <seealso cref="M:CSCore.CoreAudioAPI.AudioMeterInformation.QueryHardwareSupportNative(CSCore.CoreAudioAPI.EndpointHardwareSupportFlags@)" />
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioMeterInformation.PeakValue">
            <summary>
                Gets the peak sample value for the channels in the audio stream.
                <seealso cref="M:CSCore.CoreAudioAPI.AudioMeterInformation.GetPeakValue" />
                <seealso cref="M:CSCore.CoreAudioAPI.AudioMeterInformation.GetPeakValueNative(System.Single@)" />
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioMeterInformation.FromDevice(CSCore.CoreAudioAPI.MMDevice)">
            <summary>
                Creates a new <see cref="T:CSCore.CoreAudioAPI.AudioMeterInformation" /> instance for the given <paramref name="device" />.
            </summary>
            <param name="device">The underlying device to create the audio meter instance for.</param>
            <returns>A new <see cref="T:CSCore.CoreAudioAPI.AudioMeterInformation" /> instance for the given <paramref name="device" />.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioMeterInformation.GetPeakValueNative(System.Single@)">
            <summary>
                Gets the peak sample value for the channels in the audio stream.
            </summary>
            <param name="peak">
                A variable into which the method writes the peak sample value for the audio stream. The peak value
                is a number in the normalized range from 0.0 to 1.0.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioMeterInformation.GetPeakValue">
            <summary>
                Gets the peak sample value for the channels in the audio stream.
            </summary>
            <returns>
                The peak sample value for the audio stream. The peak value is a number in the normalized range from 0.0 to
                1.0.
            </returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioMeterInformation.GetMeteringChannelCountNative(System.Int32@)">
            <summary>
                Gets the number of channels in the audio stream that
                are monitored by peak meters.
            </summary>
            <param name="channelCount">A variable into which the method writes the number of channels.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioMeterInformation.GetMeteringChannelCount">
            <summary>
                Gets the number of channels in the audio stream that
                are monitored by peak meters.
            </summary>
            <returns>The number of channels.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioMeterInformation.GetChannelsPeakValuesNative(System.Int32,System.Single[]@)">
            <summary>
                Gets the peak sample values for all the channels in the
                audio stream.
                <seealso cref="P:CSCore.CoreAudioAPI.AudioMeterInformation.MeteringChannelCount" />
            </summary>
            <param name="channelCount">
                The channel count. This parameter also specifies the number of elements in the
                <paramref name="peakValues" /> array. If the specified count does not match the number of channels in the stream,
                the method returns error code <see cref="F:CSCore.Win32.HResult.E_INVALIDARG" />.
            </param>
            <param name="peakValues">
                An array of peak sample values. The method writes the peak values for the channels into the
                array. The array contains one element for each channel in the stream. The peak values are numbers in the normalized
                range from 0.0 to 1.0. The array gets allocated by the <see cref="M:CSCore.CoreAudioAPI.AudioMeterInformation.GetChannelsPeakValuesNative(System.Int32,System.Single[]@)" /> method.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioMeterInformation.GetChannelsPeakValues(System.Int32)">
            <summary>
                Gets the peak sample values for all the channels in the
                audio stream.
                <seealso cref="P:CSCore.CoreAudioAPI.AudioMeterInformation.MeteringChannelCount" />
            </summary>
            <param name="channelCount">
                The channel count. This parameter also specifies the number of elements in the returned
                array. If the specified count does not match the number of channels in the stream, the method returns error code
                <see cref="F:CSCore.Win32.HResult.E_INVALIDARG" />.
            </param>
            <returns>
                An array of peak sample values. he array contains one element for each channel in the stream. The peak values
                are numbers in the normalized range from 0.0 to 1.0.
            </returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioMeterInformation.GetChannelsPeakValues">
            <summary>
                Gets the peak sample values for all the channels in the
                audio stream.
            </summary>
            <returns>
                An array of peak sample values. he array contains one element for each channel in the stream. The peak values
                are numbers in the normalized range from 0.0 to 1.0.
            </returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioMeterInformation.QueryHardwareSupportNative(CSCore.CoreAudioAPI.EndpointHardwareSupportFlags@)">
            <summary>
                Queries the audio endpoint device for its
                hardware-supported functions.
            </summary>
            <param name="hardwareSupportMask">
                A variable into which the method writes a hardware support mask that indicates the
                hardware capabilities of the audio endpoint device.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioMeterInformation.QueryHardwareSupport">
            <summary>
                Queries the audio endpoint device for its
                hardware-supported functions.
            </summary>
            <returns>A hardware support mask that indicates the hardware capabilities of the audio endpoint device.</returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioSessionChannelVolumeChangedEventArgs">
            <summary>
            Provides data for the <see cref="E:CSCore.CoreAudioAPI.AudioSessionEvents.ChannelVolumeChanged"/> event.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionChannelVolumeChangedEventArgs.ChannelCount">
            <summary>
            Gets the number of audio channels in the session submix.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionChannelVolumeChangedEventArgs.ChannelVolumes">
            <summary>
            Gets the volume level for each audio channel. Each volume level is a value in the range 0.0 to 1.0, where 0.0 is silence and 1.0 is full volume.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionChannelVolumeChangedEventArgs.ChangedChannel">
            <summary>
            Gets the index of the audio channel that changed. Use this value as an index into the <see cref="P:CSCore.CoreAudioAPI.AudioSessionChannelVolumeChangedEventArgs.ChannelVolumes"/>.
            If the session submix contains n channels, the channels are numbered from 0 to n– 1. If more than one channel might have changed, the value of ChangedChannel is (DWORD)(–1).
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionChannelVolumeChangedEventArgs.Item(System.Int32)">
            <summary>
            Gets the volume of the channel specified by the <paramref name="channelIndex"/>.
            </summary>
            <param name="channelIndex">The zero-based index of the channel.</param>
            <returns>Volume level of the specified channelIndex in the range 0.0 to 1.0, where 0.0 is silence and 1.0 is full volume.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionChannelVolumeChangedEventArgs.#ctor(System.Int32,System.Single[],System.Int32,System.Guid)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioSessionChannelVolumeChangedEventArgs"/> class.
            </summary>
            <param name="channelCount">The number of channels.</param>
            <param name="channelVolumes">Volumes of the channels.</param>
            <param name="changedChannel">Number of channel volumes changed.</param>
            <param name="eventContext">Userdefined event context.</param>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioSessionControl2">
            <summary>
            The <see cref="T:CSCore.CoreAudioAPI.AudioSessionControl2"/> class can be used by a client to get information about the audio session.
            For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd368248%28v=vs.85%29.aspx"/>.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionControl2.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioSessionControl2"/> class.
            </summary>
            <param name="ptr">The native pointer to the IAudioSessionControl2 object.</param>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionControl2.SessionIdentifier">
            <summary>
            Gets the session identifier.
            </summary>
            <remarks>For more information, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd368252(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionControl2.SessionInstanceIdentifier">
            <summary>
            Gets the identifier of the audio session instance.
            </summary>
            <remarks>For more information, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd368255(v=vs.85).aspx"/>.</remarks>        
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionControl2.ProcessID">
            <summary>
            Gets the process identifier of the audio session.
            In the case of that the session is no single-process-session (see <see cref="P:CSCore.CoreAudioAPI.AudioSessionControl2.IsSingleProcessSession"/>), the <see cref="P:CSCore.CoreAudioAPI.AudioSessionControl2.ProcessID"/> is the initial identifier of the process that created the session.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionControl2.IsSingleProcessSession">
            <summary>
            Gets a value indicating whether the session spans more than one process. If <c>True</c>, the session spans more than one process; If <c>False</c> otherwise. 
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionControl2.Process">
            <summary>
            Gets the process of the audio session.
            In the case of that the session is no SingleProcessSession (see <see cref="P:CSCore.CoreAudioAPI.AudioSessionControl2.IsSingleProcessSession"/>), the Process is the process that created the session.
            If the process that created the session is not available anymore, the value is null.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionControl2.IsSystemSoundSession">
            <summary>
            Gets a value indicating whether the session is a system sounds session. If <c>True</c>, the session is a system sound session; If <C>False</C> otherwise.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionControl2.GetSessionIdentifierNative(System.String@)">
            <summary>
            Gets the session identifier.
            </summary>
            <seealso cref="P:CSCore.CoreAudioAPI.AudioSessionControl2.SessionIdentifier"/>
            <param name="sessionId">A variable which retrieves the session identifier.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionControl2.GetSessionInstanceIdentifierNative(System.String@)">
            <summary>
            Gets the identifier of the audio session instance.
            <seealso cref="P:CSCore.CoreAudioAPI.AudioSessionControl2.SessionInstanceIdentifier"/>
            </summary>
            <param name="sessionInstanceId">A variable which retrieves the identifier of a particular instance of the audio session.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionControl2.GetProcessIdNative(System.Int32@)">
            <summary>
            Gets the process identifier of the audio session.
            <seealso cref="P:CSCore.CoreAudioAPI.AudioSessionControl2.ProcessID"/>
            </summary>
            <param name="processId">A variable which receives the process id of the audio session.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionControl2.IsSystemSoundSessionNative">
            <summary>
            Indicates whether the session is a system sounds session.
            <seealso cref="P:CSCore.CoreAudioAPI.AudioSessionControl2.IsSystemSoundSession"/>
            </summary>
            <returns>HRESULT; S_OK = true, S_FALSE = false</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionControl2.SetDuckingPreferenceNative(CSCore.Win32.NativeBool)">
            <summary>
            Enables or disables the default stream attenuation experience (auto-ducking) provided by the system.
            </summary>
            <param name="enableSystemAutoDucking">A <see cref="T:CSCore.Win32.NativeBool"/> variable that enables or disables system auto-ducking.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionControl2.SetDuckingPreference(System.Boolean)">
            <summary>
            Enables or disables the default stream attenuation experience (auto-ducking) provided by the system.
            </summary>
            <param name="enableSystemAutoDucking">A <see cref="T:CSCore.Win32.NativeBool"/> variable that enables or disables system auto-ducking.</param>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioSessionDisconnectedEventArgs">
            <summary>
            Provides data for the <see cref="E:CSCore.CoreAudioAPI.AudioSessionEvents.SessionDisconnected"/> event.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionDisconnectedEventArgs.DisconnectReason">
            <summary>
            Gets the reason that the audio session was disconnected.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionDisconnectedEventArgs.#ctor(CSCore.CoreAudioAPI.AudioSessionDisconnectReason)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioSessionDisconnectedEventArgs"/>  class.
            </summary>
            <param name="disconnectReason">The reason that the audio session was disconnected.</param>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioSessionDisconnectReason">
            <summary>
            Specifies reasons that a audio session was disconnected.
            </summary>
            <remarks>For more information about WTS sessions, see the Windows SDK documentation or <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370941(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioSessionDisconnectReason.DisconnectReasonDeviceRemoval">
            <summary>
            The user removed the audio endpoint device.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioSessionDisconnectReason.DisconnectReasonServerShutdown">
            <summary>
            The Windows audio service has stopped.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioSessionDisconnectReason.DisconnectReasonFormatChanged">
            <summary>
            The stream format changed for the device that the audio session is connected to.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioSessionDisconnectReason.DisconnectReasonSessionLogoff">
            <summary>
            The user logged off the Windows Terminal Services (WTS) session that the audio session was running in.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioSessionDisconnectReason.DisconnectReasonSessionDisconnected">
            <summary>
            The WTS session that the audio session was running in was disconnected.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioSessionDisconnectReason.DisconnectReasonExclusiveModeOverride">
            <summary>
            The (shared-mode) audio session was disconnected to make the audio endpoint device available for an exclusive-mode connection.
            </summary>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioSessionDisplayNameChangedEventArgs">
            <summary>
            Provides data for the <see cref="E:CSCore.CoreAudioAPI.AudioSessionEvents.DisplayNameChanged"/> event.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionDisplayNameChangedEventArgs.NewDisplayName">
            <summary>
            Gets the new display name the session.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionDisplayNameChangedEventArgs.#ctor(System.String,System.Guid)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioSessionDisplayNameChangedEventArgs"/> class.
            </summary>
            <param name="newDisplayName">Thew new display name of the session.</param>
            <param name="eventContext">The event context value.</param>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioSessionEnumerator">
            <summary>
            The <see cref="T:CSCore.CoreAudioAPI.AudioSessionEnumerator"/> object enumerates audio sessions on an audio device.
            For more information, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd368281(v=vs.85).aspx"/>. 
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionEnumerator.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioSessionEnumerator"/> class.
            </summary>
            <param name="ptr">The native pointer of the <see cref="T:CSCore.CoreAudioAPI.AudioSessionEnumerator"/> object.</param>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionEnumerator.Count">
            <summary>
            Gets the total number of audio sessions.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionEnumerator.Item(System.Int32)">
            <summary>
            Gets the audio session specified by an index.
            </summary>
            <param name="index">The session number. If there are n sessions, the sessions are numbered from 0 to n – 1. To get the number of sessions, call the GetCount method.</param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionEnumerator.GetCountNative(System.Int32@)">
            <summary>
            Gets the total number of audio sessions that are open on the audio device.
            <seealso cref="P:CSCore.CoreAudioAPI.AudioSessionEnumerator.Count"/>
            </summary>
            <param name="count">Receives the total number of audio sessions.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionEnumerator.GetSessionNative(System.Int32,CSCore.CoreAudioAPI.AudioSessionControl@)">
            <summary>
            Gets the audio session specified by an audio session number.
            <seealso cref="M:CSCore.CoreAudioAPI.AudioSessionEnumerator.GetSession(System.Int32)"/>
            </summary>
            <param name="index">The session number. If there are n sessions, the sessions are numbered from 0 to n – 1. To get the number of sessions, call the GetCount method.</param>
            <param name="session">The <see cref="T:CSCore.CoreAudioAPI.AudioSessionControl"/> of the specified session number.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionEnumerator.GetSession(System.Int32)">
            <summary>
            Gets the audio session specified by an audio session number.
            </summary>
            <param name="index">The session number. If there are n sessions, the sessions are numbered from 0 to n – 1. To get the number of sessions, call the GetCount method.</param>
            <returns>The <see cref="T:CSCore.CoreAudioAPI.AudioSessionControl"/> of the specified session number.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionEnumerator.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the audio sessions.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1" /> that can be used to iterate through the audio sessions.
            </returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionEnumerator.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the audio sessions.
            </summary>
            <returns>
            An <see cref="T:System.Collections.IEnumerator" /> object that can be used to iterate through the audio sessions.
            </returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioSessionEventContextEventArgs">
            <summary>
            A base class for all event-args classes which specify an <see cref="P:CSCore.CoreAudioAPI.AudioSessionEventContextEventArgs.EventContext"/> value.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionEventContextEventArgs.EventContext">
            <summary>
            Gets the event context value.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionEventContextEventArgs.#ctor(System.Guid)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioSessionEventContextEventArgs"/> class.
            </summary>
            <param name="eventContext">The event context value.</param>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioSessionEvents">
            <summary>
            Provides notifications of session-related events such as changes in the volume level, display name, and session state.
            For more information, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd368289(v=vs.85).aspx"/>.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.AudioSessionEvents.DisplayNameChanged">
            <summary>
            Occurs when the display name for the session has changed.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.AudioSessionEvents.IconPathChanged">
            <summary>
            Occurs when the display icon for the session has changed.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.AudioSessionEvents.SimpleVolumeChanged">
            <summary>
            Occurs when the volume level or muting state of the session has changed.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.AudioSessionEvents.ChannelVolumeChanged">
            <summary>
            Occurs when the volume level of an audio channel in the session submix has changed.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.AudioSessionEvents.GroupingParamChanged">
            <summary>
            Occurs when the grouping parameter for the session has changed.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.AudioSessionEvents.StateChanged">
            <summary>
            Occurs when the stream-activity state of the session has changed.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.AudioSessionEvents.SessionDisconnected">
            <summary>
            Occurs when the session has been disconnected.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionEvents.CSCore#CoreAudioAPI#IAudioSessionEvents#OnDisplayNameChanged(System.String,System.Guid@)">
            <summary>
            Notifies the client that the display name for the session has changed.
            </summary>
            <param name="newDisplayName">The new display name for the session. </param>
            <param name="eventContext">The event context value.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionEvents.CSCore#CoreAudioAPI#IAudioSessionEvents#OnIconPathChanged(System.String,System.Guid@)">
            <summary>
            Notifies the client that the display icon for the session has changed.
            </summary>
            <param name="newIconPath">The path for the new display icon for the session.</param>
            <param name="eventContext">The event context value.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionEvents.CSCore#CoreAudioAPI#IAudioSessionEvents#OnSimpleVolumeChanged(System.Single,System.Boolean,System.Guid@)">
            <summary>
            Notifies the client that the volume level or muting state of the audio session has changed.
            </summary>
            <param name="newVolume">
            The new volume level for the audio session. This parameter is a value in the range 0.0 to 1.0, 
            where 0.0 is silence and 1.0 is full volume (no attenuation).
            </param>
            <param name="newMute">The new muting state. If TRUE, muting is enabled. If FALSE, muting is disabled.</param>
            <param name="eventContext">The event context value.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionEvents.CSCore#CoreAudioAPI#IAudioSessionEvents#OnChannelVolumeChanged(System.Int32,System.Single[],System.Int32,System.Guid@)">
            <summary>
            Notifies the client that the volume level of an audio channel in the session submix has changed.
            </summary>
            <param name="channelCount">The number of channels in the session submix.</param>
            <param name="newChannelVolumeArray">An array of volume levels. Each element is a value of type float that specifies the volume level for a particular channel. Each volume level is a value in the range 0.0 to 1.0, where 0.0 is silence and 1.0 is full volume (no attenuation). The number of elements in the array is specified by the ChannelCount parameter.</param>
            <param name="changedChannel">The number of the channel whose volume level changed.</param>
            <param name="eventContext">The event context value.</param>
            <returns></returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionEvents.CSCore#CoreAudioAPI#IAudioSessionEvents#OnGroupingParamChanged(System.Guid@,System.Guid@)">
            <summary>
            Notifies the client that the grouping parameter for the session has changed.
            </summary>
            <param name="newGroupingParam">The new grouping parameter for the session. This parameter points to a grouping-parameter GUID.</param>
            <param name="eventContext">The event context value.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionEvents.CSCore#CoreAudioAPI#IAudioSessionEvents#OnStateChanged(CSCore.CoreAudioAPI.AudioSessionState)">
            <summary>
            Notifies the client that the stream-activity state of the session has changed.
            </summary>
            <param name="newState">The new session state.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionEvents.CSCore#CoreAudioAPI#IAudioSessionEvents#OnSessionDisconnected(CSCore.CoreAudioAPI.AudioSessionDisconnectReason)">
            <summary>
            Notifies the client that the audio session has been disconnected.
            </summary>
            <param name="disconnectReason">The reason that the audio session was disconnected.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioSessionGroupingParamChangedEventArgs">
            <summary>
            Provides data for the <see cref="E:CSCore.CoreAudioAPI.AudioSessionEvents.GroupingParamChanged"/> event.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionGroupingParamChangedEventArgs.NewGroupingParam">
            <summary>
            Gets the new grouping parameter for the session.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionGroupingParamChangedEventArgs.#ctor(System.Guid,System.Guid)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioSessionGroupingParamChangedEventArgs"/> class.
            </summary>
            <param name="newGroupingParam">The new grouping parameter for the session.</param>
            <param name="eventContext">The event context value.</param>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioSessionIconPathChangedEventArgs">
            <summary>
            Provides data for the <see cref="E:CSCore.CoreAudioAPI.AudioSessionEvents.IconPathChanged"/> event.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionIconPathChangedEventArgs.NewIconPath">
            <summary>
            Gets the path for the new display icon for the session.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionIconPathChangedEventArgs.#ctor(System.String,System.Guid)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioSessionIconPathChangedEventArgs"/> class.
            </summary>
            <param name="newIconPath">The path for the new display icon for the session.</param>
            <param name="eventContext">The event context value.</param>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioSessionManager">
            <summary>
            The <see cref="T:CSCore.CoreAudioAPI.AudioSessionManager"/> class enables a client to access the session controls and volume controls for both cross-process and process-specific audio sessions.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionManager.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioSessionManager"/> class.
            </summary>
            <param name="ptr">Native pointer to the <see cref="T:CSCore.CoreAudioAPI.AudioSessionManager"/> object.</param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionManager.GetAudioSessionControlNative(System.Guid,System.Int32,CSCore.CoreAudioAPI.AudioSessionControl@)">
            <summary>
            Retrieves an audio session control.
            </summary>
            <param name="audioSessionGuid">If the GUID does not identify a session that has been previously opened, the call opens a new but empty session. If the value is Guid.Empty, the method assigns the stream to the default session.</param>
            <param name="streamFlags">Specifies the status of the flags for the audio stream.</param>
            <param name="sessionControl">The <see cref="T:CSCore.CoreAudioAPI.AudioSessionControl"/> of the specified <paramref name="audioSessionGuid"/>.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionManager.GetAudioSessionControl(System.Guid,System.Int32)">
            <summary>
            Retrieves an audio session control.
            </summary>
            <param name="audioSessionGuid">If the GUID does not identify a session that has been previously opened, the call opens a new but empty session. If the value is Guid.Empty, the method assigns the stream to the default session.</param>
            <param name="streamFlags">Specifies the status of the flags for the audio stream.</param>
            <returns><see cref="T:CSCore.CoreAudioAPI.AudioSessionControl"/> instance.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionManager.GetSimpleAudioVolumeNative(System.Guid,CSCore.Win32.NativeBool,CSCore.CoreAudioAPI.SimpleAudioVolume@)">
            <summary>
            Retrieves a simple audio volume control.
            </summary>
            <param name="crossProcessSession">Specifies whether the request is for a cross-process session. Set to TRUE if the session is cross-process. Set to FALSE if the session is not cross-process.</param>
            <param name="audioSessionGuid">If the GUID does not identify a session that has been previously opened, the call opens a new but empty session. If the value is Guid.Empty, the method assigns the stream to the default session.</param>
            <param name="audioVolume"><see cref="T:CSCore.CoreAudioAPI.SimpleAudioVolume"/> of the audio volume control object.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionManager.GetSimpleAudioVolume(System.Guid,System.Boolean)">
            <summary>
            Retrieves a simple audio volume control.
            </summary>
            <param name="crossProcessSession">Specifies whether the request is for a cross-process session. Set to TRUE if the session is cross-process. Set to FALSE if the session is not cross-process.</param>
            <param name="audioSessionGuid">If the GUID does not identify a session that has been previously opened, the call opens a new but empty session. If the value is Guid.Empty, the method assigns the stream to the default session.</param>
            <returns><see cref="T:CSCore.CoreAudioAPI.SimpleAudioVolume"/> instance.</returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioSessionManager2">
            <summary>
            Enables an application to manage submixes for the audio device.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.AudioSessionManager2.SessionCreated">
            <summary>
            Occurs when the audio session has been created.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.AudioSessionManager2.VolumeDuckNotification">
            <summary>
            Occurs when a pending system ducking event gets fired.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.AudioSessionManager2.VolumeUnDuckNotification">
            <summary>
            Occurs when a pending system unducking event gets fired.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionManager2.FromMMDevice(CSCore.CoreAudioAPI.MMDevice)">
            <summary>
            Creates a new instance of <see cref="T:CSCore.CoreAudioAPI.AudioSessionManager2"/> based on a <see cref="T:CSCore.CoreAudioAPI.MMDevice"/>.
            </summary>
            <param name="device">Device to use to activate the <see cref="T:CSCore.CoreAudioAPI.AudioSessionManager2"/>.</param>
            <returns><see cref="T:CSCore.CoreAudioAPI.AudioSessionManager2"/> instance for the specified <paramref name="device"/>.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionManager2.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioSessionManager2"/> class.
            </summary>
            <param name="ptr">The native pointer.</param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionManager2.GetSessionEnumeratorNative(CSCore.CoreAudioAPI.AudioSessionEnumerator@)">
            <summary>
            Gets a pointer to the audio session enumerator object.
            <seealso cref="M:CSCore.CoreAudioAPI.AudioSessionManager2.RegisterDuckNotification(System.String,CSCore.CoreAudioAPI.IAudioVolumeDuckNotification)"/>
            </summary>
            <param name="sessionEnumerator">Retrieves a session enumerator object that the client can use to enumerate audio sessions on the audio device.</param>
            <returns>HRESULT</returns>
            <remarks>The client is responsible for releasing the <paramref name="sessionEnumerator"/>.</remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionManager2.GetSessionEnumerator">
            <summary>
            Gets a pointer to the audio session enumerator object.
            </summary>
            <returns>a session enumerator object that the client can use to enumerate audio sessions on the audio device.</returns>
            <remarks>The client is responsible for releasing the returned <see cref="T:CSCore.CoreAudioAPI.AudioSessionEnumerator"/>.</remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionManager2.RegisterSessionNotificationNative(CSCore.CoreAudioAPI.IAudioSessionNotification)">
            <summary>
            Registers the application to receive a notification when a session is created.
            <seealso cref="M:CSCore.CoreAudioAPI.AudioSessionManager2.RegisterSessionNotificationNative(CSCore.CoreAudioAPI.IAudioSessionNotification)"/>
            </summary>
            <param name="sessionNotification">The application's implementation of the <see cref="T:CSCore.CoreAudioAPI.IAudioSessionNotification"/> interface.</param>
            <returns>HRESULT</returns>
            <remarks>
            Use the <see cref="T:CSCore.CoreAudioAPI.AudioSessionNotification"/> class as the default implementation for the <paramref name="sessionNotification"/> parameter.
            
            <c>Note:</c> Make sure to call the <see cref="M:CSCore.CoreAudioAPI.AudioSessionManager2.RegisterSessionNotificationNative(CSCore.CoreAudioAPI.IAudioSessionNotification)"/> from an MTA-Thread. Also make sure to enumerate all sessions after calling this method. 
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionManager2.RegisterSessionNotification(CSCore.CoreAudioAPI.IAudioSessionNotification)">
            <summary>
            Registers the application to receive a notification when a session is created.
            </summary>
            <param name="sessionNotification">The application's implementation of the <see cref="T:CSCore.CoreAudioAPI.IAudioSessionNotification"/> interface.</param>
            <remarks>
            Use the <see cref="T:CSCore.CoreAudioAPI.AudioSessionNotification"/> class as the default implementation for the <paramref name="sessionNotification"/> parameter.
            
            <c>Note:</c> Make sure to call the <see cref="M:CSCore.CoreAudioAPI.AudioSessionManager2.RegisterSessionNotification(CSCore.CoreAudioAPI.IAudioSessionNotification)"/> from an MTA-Thread. Also make sure to enumerate all sessions after calling this method. 
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionManager2.UnregisterSessionNotificationNative(CSCore.CoreAudioAPI.IAudioSessionNotification)">
            <summary>
            Deletes the registration to receive a notification when a session is created.
            <seealso cref="M:CSCore.CoreAudioAPI.AudioSessionManager2.UnregisterSessionNotification(CSCore.CoreAudioAPI.IAudioSessionNotification)"/>
            </summary>
            <param name="sessionNotification">
            The application's implementation of the <see cref="T:CSCore.CoreAudioAPI.IAudioSessionNotification"/> interface. 
            Pass the same object that was specified to the session manager in a previous call <see cref="M:CSCore.CoreAudioAPI.AudioSessionManager2.RegisterSessionNotification(CSCore.CoreAudioAPI.IAudioSessionNotification)"/> to register for notification.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionManager2.UnregisterSessionNotification(CSCore.CoreAudioAPI.IAudioSessionNotification)">
            <summary>
            Deletes the registration to receive a notification when a session is created.
            </summary>
            <param name="sessionNotification">
            The application's implementation of the <see cref="T:CSCore.CoreAudioAPI.IAudioSessionNotification"/> interface. 
            Pass the same object that was specified to the session manager in a previous call <see cref="M:CSCore.CoreAudioAPI.AudioSessionManager2.RegisterSessionNotification(CSCore.CoreAudioAPI.IAudioSessionNotification)"/> to register for notification.</param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionManager2.RegisterDuckNotificationNative(System.String,CSCore.CoreAudioAPI.IAudioVolumeDuckNotification)">
            <summary>
            Registers the application to receive ducking notifications.
            <seealso cref="M:CSCore.CoreAudioAPI.AudioSessionManager2.RegisterDuckNotification(System.String,CSCore.CoreAudioAPI.IAudioVolumeDuckNotification)"/>
            </summary>
            <param name="sessionId">A string that contains a session instance identifier. Applications that are playing a media stream and want to provide custom stream attenuation or ducking behavior, pass their own session instance identifier.
            Other applications that do not want to alter their streams but want to get all the ducking notifications must pass NULL.</param>
            <param name="sessionNotification">Instance of any object which implements the <see cref="T:CSCore.CoreAudioAPI.IAudioVolumeDuckNotification"/> and which should receive duck notifications.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionManager2.RegisterDuckNotification(System.String,CSCore.CoreAudioAPI.IAudioVolumeDuckNotification)">
            <summary>
            Registers the application to receive ducking notifications.
            </summary>
            <param name="sessionId">A string that contains a session instance identifier. Applications that are playing a media stream and want to provide custom stream attenuation or ducking behavior, pass their own session instance identifier.
            Other applications that do not want to alter their streams but want to get all the ducking notifications must pass NULL.</param>
            <param name="sessionNotification">Instance of any object which implements the <see cref="T:CSCore.CoreAudioAPI.IAudioVolumeDuckNotification"/> and which should receive duck notifications.</param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionManager2.UnregisterDuckNotificationNative(CSCore.CoreAudioAPI.IAudioVolumeDuckNotification)">
            <summary>
            Deletes the registration to receive ducking notifications.
            <seealso cref="M:CSCore.CoreAudioAPI.AudioSessionManager2.UnregisterDuckNotification(CSCore.CoreAudioAPI.IAudioVolumeDuckNotification)"/>
            </summary>
            <param name="sessionNotification">
            The <see cref="T:CSCore.CoreAudioAPI.IAudioVolumeDuckNotification"/> interface that is implemented by the application. Pass the same interface pointer that was specified to the session manager in a previous call to the <see cref="M:CSCore.CoreAudioAPI.AudioSessionManager2.RegisterDuckNotification(System.String,CSCore.CoreAudioAPI.IAudioVolumeDuckNotification)"/> method.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionManager2.UnregisterDuckNotification(CSCore.CoreAudioAPI.IAudioVolumeDuckNotification)">
            <summary>
            Deletes the registration to receive ducking notifications.
            </summary>
            <param name="sessionNotification">
            The <see cref="T:CSCore.CoreAudioAPI.IAudioVolumeDuckNotification"/> interface that is implemented by the application. Pass the same interface pointer that was specified to the session manager in a previous call to the <see cref="M:CSCore.CoreAudioAPI.AudioSessionManager2.RegisterDuckNotification(System.String,CSCore.CoreAudioAPI.IAudioVolumeDuckNotification)"/> method.
            </param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionManager2.Dispose(System.Boolean)">
            <summary>
            Releases the COM object and unregisters all session notifications and all volume duck notifications.
            </summary>
            <param name="disposing">True to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioSessionNotification">
            <summary>
            The <see cref="T:CSCore.CoreAudioAPI.AudioSessionNotification"/> object provides notification when an audio session is created.
            For more information, <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd370969(v=vs.85).aspx"/>.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.AudioSessionNotification.SessionCreated">
            <summary>
            Occurs when the audio session has been created.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionNotification.CSCore#CoreAudioAPI#IAudioSessionNotification#OnSessionCreated(System.IntPtr)">
            <summary>
            Notifies the registered processes that the audio session has been created.
            </summary>
            <param name="newSession">Pointer to the <see cref="T:CSCore.CoreAudioAPI.AudioSessionControl"/> object of the audio session that was created.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioSessionSimpleVolumeChangedEventArgs">
            <summary>
            Provides data for the <see cref="E:CSCore.CoreAudioAPI.AudioSessionEvents.SimpleVolumeChanged"/> event.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionSimpleVolumeChangedEventArgs.NewVolume">
            <summary>
            Gets the new volume level for the audio session. 
            </summary>
            <remarks>The value is a value in the range 0.0 to 1.0, where 0.0 is silence and 1.0 is full volume (no attenuation).</remarks>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionSimpleVolumeChangedEventArgs.IsMuted">
            <summary>
            Gets the new muting state.
            </summary>
            <remarks>If true, muting is enabled. If false, muting is disabled.</remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionSimpleVolumeChangedEventArgs.#ctor(System.Single,System.Boolean,System.Guid)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioSessionSimpleVolumeChangedEventArgs"/> class.
            </summary>
            <param name="newVolume">The new volume level for the audio session. This parameter is a value in the range 0.0 to 1.0, where 0.0 is silence and 1.0 is full volume (no attenuation).</param>
            <param name="isMuted">The muting state. If true, muting is enabled. If false, muting is disabled.</param>
            <param name="eventContext">The event context value.</param>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioSessionState">
            <summary>
            Defines constants that indicate the current state of an audio session.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioSessionState.AudioSessionStateInactive">
            <summary>
            The session has no active audio streams.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioSessionState.AudioSessionStateActive">
            <summary>
            The session has active audio streams.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioSessionState.AudioSessionStateExpired">
            <summary>
            The session is dormant.
            </summary>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioSessionStateChangedEventArgs">
            <summary>
            Provides data for the <see cref="E:CSCore.CoreAudioAPI.AudioSessionEvents.StateChanged"/> event.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionStateChangedEventArgs.NewState">
            <summary>
            Gets the new session state.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionStateChangedEventArgs.#ctor(CSCore.CoreAudioAPI.AudioSessionState)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioSessionStateChangedEventArgs"/> class.
            </summary>
            <param name="newState"></param>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioVolumeDuckNotification">
            <summary>
            The default implementation of the <see cref="T:CSCore.CoreAudioAPI.IAudioVolumeDuckNotification"/> interface.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.AudioVolumeDuckNotification.VolumeDuckNotification">
            <summary>
            Occurs when a pending system ducking event gets fired.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.AudioVolumeDuckNotification.VolumeUnDuckNotification">
            <summary>
            Occurs when a pending system unducking event gets fired.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioVolumeDuckNotification.CSCore#CoreAudioAPI#IAudioVolumeDuckNotification#OnVolumeDuckNotification(System.String,System.Int32)">
            <summary>
            Sends a notification about a pending system ducking event.
            </summary>
            <param name="sessionId">A string containing the session instance identifier of the communications session that raises the the auto-ducking event.</param>
            <param name="countCommunicationSessions">The number of active communications sessions. If there are n sessions, the sessions are numbered from 0 to –1.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioVolumeDuckNotification.CSCore#CoreAudioAPI#IAudioVolumeDuckNotification#OnVolumeUnduckNotification(System.String,System.Int32)">
            <summary>
            Sends a notification about a pending system unducking event. 
            </summary>
            <param name="sessionId">A string containing the session instance identifier of the terminating communications session that intiated the ducking.</param>
            <param name="countCommunicationSessions">The number of active communications sessions. If there are n sessions, they are numbered from 0 to n-1.</param>
            <returns></returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.DefaultDeviceChangedEventArgs">
            <summary>
            Provides data for the <see cref="E:CSCore.CoreAudioAPI.MMNotificationClient.DefaultDeviceChanged"/> event.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.DefaultDeviceChangedEventArgs.DataFlow">
            <summary>
            Gets the data-flow direction of the endpoint device.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.DefaultDeviceChangedEventArgs.Role">
            <summary>
            Gets the device role of the audio endpoint device.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.DefaultDeviceChangedEventArgs.#ctor(System.String,CSCore.CoreAudioAPI.DataFlow,CSCore.CoreAudioAPI.Role)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.DefaultDeviceChangedEventArgs"/> class.
            </summary>
            <param name="deviceId">The device id that identifies the audio endpoint device.</param>
            <param name="dataFlow">The data-flow direction of the endpoint device.</param>
            <param name="role">The device role of the audio endpoint device.</param>
        </member>
        <member name="T:CSCore.CoreAudioAPI.DeviceNotificationEventArgs">
            <summary>
            Provides basic data for all device notification events.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.DeviceNotificationEventArgs.DeviceId">
            <summary>
            Gets the device id that identifies the audio endpoint device.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.DeviceNotificationEventArgs.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.DeviceNotificationEventArgs"/> class.
            </summary>
            <param name="deviceId">The device id that identifies the audio endpoint device.</param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.DeviceNotificationEventArgs.TryGetDevice(CSCore.CoreAudioAPI.MMDevice@)">
            <summary>
            Tries the get device associated with the <see cref="P:CSCore.CoreAudioAPI.DeviceNotificationEventArgs.DeviceId"/>.
            </summary>
            <param name="device">The device associated with the <see cref="P:CSCore.CoreAudioAPI.DeviceNotificationEventArgs.DeviceId"/>. If the return value is <c>false</c>, the <paramref name="device"/> will be null.</param>
            <returns><c>true</c> if the associated device be successfully retrieved; false otherwise.</returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.DevicePropertyChangedEventArgs">
            <summary>
            Provides data for the <see cref="E:CSCore.CoreAudioAPI.MMNotificationClient.DevicePropertyChanged"/> event.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.DevicePropertyChangedEventArgs.PropertyKey">
            <summary>
            Gets the <see cref="T:CSCore.Win32.PropertyKey"/> that specifies the changed property.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.DevicePropertyChangedEventArgs.#ctor(System.String,CSCore.Win32.PropertyKey)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.DevicePropertyChangedEventArgs"/> class.
            </summary>
            <param name="deviceId">The device id that identifies the audio endpoint device.</param>
            <param name="propertyKey">The <see cref="T:CSCore.Win32.PropertyKey"/> that specifies the changed property.</param>
        </member>
        <member name="T:CSCore.CoreAudioAPI.DeviceStateChangedEventArgs">
            <summary>
            Provides data for the <see cref="E:CSCore.CoreAudioAPI.MMNotificationClient.DeviceStateChanged"/> event.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.DeviceStateChangedEventArgs.DeviceState">
            <summary>
            Gets the new state of the endpoint device. 
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.DeviceStateChangedEventArgs.#ctor(System.String,CSCore.CoreAudioAPI.DeviceState)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.DeviceStateChangedEventArgs"/> class.
            </summary>
            <param name="deviceId">The device id that identifies the audio endpoint device.</param>
            <param name="deviceState">The new state of the endpoint device. </param>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioSessionControl">
            <summary>
            The <see cref="T:CSCore.CoreAudioAPI.AudioSessionControl"/> class enables a client to configure the control parameters for an audio session and to monitor events in the session.
            For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd368246(v=vs.85).aspx"/>.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.AudioSessionControl.DisplayNameChanged">
            <summary>
            Occurs when the display name for the session has changed.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.AudioSessionControl.IconPathChanged">
            <summary>
            Occurs when the display icon for the session has changed.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.AudioSessionControl.SimpleVolumeChanged">
            <summary>
            Occurs when the volume level or muting state of the session has changed.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.AudioSessionControl.ChannelVolumeChanged">
            <summary>
            Occurs when the volume level of an audio channel in the session submix has changed.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.AudioSessionControl.GroupingParamChanged">
            <summary>
            Occurs when the grouping parameter for the session has changed.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.AudioSessionControl.StateChanged">
            <summary>
            Occurs when the stream-activity state of the session has changed.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.AudioSessionControl.SessionDisconnected">
            <summary>
            Occurs when the session has been disconnected.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionControl.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioSessionControl"/> class.
            </summary>
            <param name="ptr">Native pointer of the <see cref="T:CSCore.CoreAudioAPI.AudioSessionControl"/> object.</param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionControl.#ctor(CSCore.CoreAudioAPI.AudioClient)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioSessionControl"/> class.
            </summary>
            <param name="audioClient">The audio client to create a <see cref="T:CSCore.CoreAudioAPI.AudioSessionControl"/> instance for.</param>
            <exception cref="T:System.ArgumentNullException">audioClient</exception>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionControl.SessionState">
            <summary>
            Gets the current state of the audio session.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionControl.DisplayName">
            <summary>
            Gets or sets the display name for the audio session.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionControl.IconPath">
            <summary>
            Gets or sets the path for the display icon for the audio session.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioSessionControl.GroupingParam">
            <summary>
            Gets or sets the grouping parameter of the audio session.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionControl.GetStateNative(CSCore.CoreAudioAPI.AudioSessionState@)">
            <summary>
            Retrieves the current state of the audio session.
            <seealso cref="P:CSCore.CoreAudioAPI.AudioSessionControl.SessionState"/>
            </summary>
            <param name="state">A variable into which the method writes the current session state.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionControl.GetDisplayNameNative(System.String@)">
            <summary>
            Retrieves the display name for the audio session.
            <seealso cref="P:CSCore.CoreAudioAPI.AudioSessionControl.DisplayName"/>
            </summary>
            <param name="displayName">A variable into which the method writes the display name of the session.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionControl.SetDisplayNameNative(System.String,System.Guid)">
            <summary>
            Assigns a display name to the current session.
            <seealso cref="P:CSCore.CoreAudioAPI.AudioSessionControl.DisplayName"/>
            </summary>
            <param name="displayName">The new display name of the audio session.</param>
            <param name="eventContext">EventContext which can be accessed in the event handler.</param>        
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionControl.GetIconPathNative(System.String@)">
            <summary>
            Retrieves the path for the display icon for the audio session.
            <seealso cref="P:CSCore.CoreAudioAPI.AudioSessionControl.IconPath"/>        
            </summary>
            <param name="iconPath">A variable into which the method writes the path and file name of an .ico, .dll, or .exe file that contains the icon.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionControl.SetIconPathNative(System.String,System.Guid)">
            <summary>
            Assigns a display icon to the current session.
            <seealso cref="P:CSCore.CoreAudioAPI.AudioSessionControl.IconPath"/>
            </summary>
            <param name="iconPath">A string that specifies the path and file name of an .ico, .dll, or .exe file that contains the icon.</param>        
            <param name="eventContext">EventContext which can be accessed in the event handler.</param>        
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionControl.GetGroupingParamNative(System.Guid@)">
            <summary>
            Retrieves the grouping parameter of the audio session.
            <seealso cref="P:CSCore.CoreAudioAPI.AudioSessionControl.GroupingParam"/>
            </summary>
            <param name="groupingParam">A variable into which the method writes the grouping parameter.</param>
            <returns>HRESULT</returns>
            <remarks>For some more information about grouping parameters, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd370848(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionControl.SetGroupingParamNative(System.Guid,System.Guid)">
            <summary>
            Assigns a session to a grouping of sessions.
            <seealso cref="P:CSCore.CoreAudioAPI.AudioSessionControl.GroupingParam"/>
            </summary>
            <param name="groupingParam"></param>
            <param name="eventContext"></param>
            <returns>HRESULT</returns>
            <remarks>For some more information about grouping parameters, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd370848(v=vs.85).aspx"/>.</remarks>        
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionControl.RegisterAudioSessionNotificationNative(CSCore.CoreAudioAPI.IAudioSessionEvents)">
            <summary>
            Registers the client to receive notifications of session events, including changes in the stream state.
            <seealso cref="M:CSCore.CoreAudioAPI.AudioSessionControl.RegisterAudioSessionNotification(CSCore.CoreAudioAPI.IAudioSessionEvents)"/>
            </summary>
            <param name="notifications">An instance of the <see cref="T:CSCore.CoreAudioAPI.IAudioSessionEvents"/> object which receives the notifications.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionControl.RegisterAudioSessionNotification(CSCore.CoreAudioAPI.IAudioSessionEvents)">
            <summary>
            Registers the client to receive notifications of session events, including changes in the stream state.
            </summary>
            <param name="notifications">An instance of the <see cref="T:CSCore.CoreAudioAPI.IAudioSessionEvents"/> object which receives the notifications.</param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionControl.UnregisterAudioSessionNotificationNative(CSCore.CoreAudioAPI.IAudioSessionEvents)">
            <summary>
            Deletes a previous registration by the client to receive notifications.
            </summary>
            <param name="notifications">The instance of the <see cref="T:CSCore.CoreAudioAPI.IAudioSessionEvents"/> object which got registered previously by the <see cref="M:CSCore.CoreAudioAPI.AudioSessionControl.RegisterAudioSessionNotification(CSCore.CoreAudioAPI.IAudioSessionEvents)"/> method.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionControl.UnregisterAudioSessionNotification(CSCore.CoreAudioAPI.IAudioSessionEvents)">
            <summary>
            Deletes a previous registration by the client to receive notifications.
            </summary>
            <param name="notifications">The instance of the <see cref="T:CSCore.CoreAudioAPI.IAudioSessionEvents"/> object which got registered previously by the <see cref="M:CSCore.CoreAudioAPI.AudioSessionControl.RegisterAudioSessionNotification(CSCore.CoreAudioAPI.IAudioSessionEvents)"/> method.</param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioSessionControl.Dispose(System.Boolean)">
            <summary>
            Releases the COM object.
            </summary>
            <param name="disposing">True to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
        </member>
        <member name="T:CSCore.CoreAudioAPI.IAudioSessionEvents">
            <summary>
            The <see cref="T:CSCore.CoreAudioAPI.IAudioSessionEvents"/> interface provides notifications of session-related events such as changes in the volume level, display name, and session state.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IAudioSessionEvents.OnDisplayNameChanged(System.String,System.Guid@)">
            <summary>
            Notifies the client that the display name for the session has changed.
            </summary>
            <param name="newDisplayName">The new display name for the session. </param>
            <param name="eventContext">The event context value.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IAudioSessionEvents.OnIconPathChanged(System.String,System.Guid@)">
            <summary>
            Notifies the client that the display icon for the session has changed.
            </summary>
            <param name="newIconPath">The path for the new display icon for the session.</param>
            <param name="eventContext">The event context value.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IAudioSessionEvents.OnSimpleVolumeChanged(System.Single,System.Boolean,System.Guid@)">
            <summary>
            Notifies the client that the volume level or muting state of the audio session has changed.
            </summary>
            <param name="newVolume">The new volume level for the audio session. This parameter is a value in the range 0.0 to 1.0, where 0.0 is silence and 1.0 is full volume (no attenuation).</param>
            <param name="newMute">The new muting state. If TRUE, muting is enabled. If FALSE, muting is disabled.</param>
            <param name="eventContext">The event context value.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IAudioSessionEvents.OnChannelVolumeChanged(System.Int32,System.Single[],System.Int32,System.Guid@)">
            <summary>
            Notifies the client that the volume level of an audio channel in the session submix has changed.
            </summary>
            <param name="channelCount">The number of channels in the session submix.</param>
            <param name="newChannelVolumeArray">An array of volume levels. Each element is a value of type float that specifies the volume level for a particular channel. Each volume level is a value in the range 0.0 to 1.0, where 0.0 is silence and 1.0 is full volume (no attenuation). The number of elements in the array is specified by the ChannelCount parameter.</param>
            <param name="changedChannel">The number of the channel whose volume level changed.</param>
            <param name="eventContext">The event context value.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IAudioSessionEvents.OnGroupingParamChanged(System.Guid@,System.Guid@)">
            <summary>
            Notifies the client that the grouping parameter for the session has changed.
            </summary>
            <param name="newGroupingParam">The new grouping parameter for the session. This parameter points to a grouping-parameter GUID.</param>
            <param name="eventContext">The event context value.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IAudioSessionEvents.OnStateChanged(CSCore.CoreAudioAPI.AudioSessionState)">
            <summary>
            Notifies the client that the stream-activity state of the session has changed.
            </summary>
            <param name="newState">The new session state.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IAudioSessionEvents.OnSessionDisconnected(CSCore.CoreAudioAPI.AudioSessionDisconnectReason)">
            <summary>
            Notifies the client that the audio session has been disconnected.
            </summary>
            <param name="disconnectReason">The reason that the audio session was disconnected.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.IAudioSessionNotification">
            <summary>
            The <see cref="T:CSCore.CoreAudioAPI.IAudioSessionNotification"/> interface provides notification when an audio session is created.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IAudioSessionNotification.OnSessionCreated(System.IntPtr)">
            <summary>
            Notifies the registered processes that the audio session has been created.
            </summary>
            <param name="newSession">Pointer to the <see cref="T:CSCore.CoreAudioAPI.AudioSessionControl"/> object of the audio session that was created.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.IAudioVolumeDuckNotification">
            <summary>
            The <see cref="T:CSCore.CoreAudioAPI.IAudioVolumeDuckNotification"/> interface is used to by the system to send notifications about stream attenuation changes.
            </summary>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd371012(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IAudioVolumeDuckNotification.OnVolumeDuckNotification(System.String,System.Int32)">
            <summary>
            Sends a notification about a pending system ducking event.
            </summary>
            <param name="sessionId">A string containing the session instance identifier of the communications session that raises the the auto-ducking event.</param>
            <param name="countCommunicationSessions">The number of active communications sessions. If there are n sessions, the sessions are numbered from 0 to –1.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IAudioVolumeDuckNotification.OnVolumeUnduckNotification(System.String,System.Int32)">
            <summary>
            Sends a notification about a pending system unducking event. 
            </summary>
            <param name="sessionId">A string containing the session instance identifier of the terminating communications session that intiated the ducking.</param>
            <param name="countCommunicationSessions">The number of active communications sessions. If there are n sessions, they are numbered from 0 to n-1.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.IMMNotificationClient">
            <summary>
            The <see cref="T:CSCore.CoreAudioAPI.IMMNotificationClient"/> interface provides notifications when an audio endpoint device is added or removed, when the state or properties of an endpoint device change, or when there is a change in the default role assigned to an endpoint device.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IMMNotificationClient.OnDeviceStateChanged(System.String,CSCore.CoreAudioAPI.DeviceState)">
            <summary>
            The OnDeviceStateChanged method indicates that the state of an audio endpoint device has
            changed.
            </summary>
            <param name="deviceId">The device id that identifies the audio endpoint device.</param>
            <param name="deviceState">Specifies the new state of the endpoint device.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IMMNotificationClient.OnDeviceAdded(System.String)">
            <summary>
            The OnDeviceAdded method indicates that a new audio endpoint device has been added.
            </summary>
            <param name="deviceId">The device id that identifies the audio endpoint device.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IMMNotificationClient.OnDeviceRemoved(System.String)">
            <summary>
            The OnDeviceRemoved method indicates that an audio endpoint device has been removed.
            </summary>
            <param name="deviceId">The device id that identifies the audio endpoint device.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IMMNotificationClient.OnDefaultDeviceChanged(CSCore.CoreAudioAPI.DataFlow,CSCore.CoreAudioAPI.Role,System.String)">
            <summary>
            The OnDefaultDeviceChanged method notifies the client that the default audio endpoint
            device for a particular device role has changed.
            </summary>
            <param name="dataFlow">The data-flow direction of the endpoint device.</param>
            <param name="role">The device role of the audio endpoint device.</param>
            <param name="deviceId">The device id that identifies the audio endpoint device.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IMMNotificationClient.OnPropertyValueChanged(System.String,CSCore.Win32.PropertyKey)">
            <summary>
            The OnPropertyValueChanged method indicates that the value of a property belonging to an
            audio endpoint device has changed.
            </summary>
            <param name="deviceId">The device id that identifies the audio endpoint device.</param>
            <param name="key">The <see cref="T:CSCore.Win32.PropertyKey"/> that specifies the changed property.</param>        
            <returns>HRESULT</returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.MMEndpoint">
            <summary>
            Represents an audio endpoint device
            (see also <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370793(v=vs.85).aspx"/>).
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMEndpoint.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.MMEndpoint"/> class.
            </summary>
            <param name="ptr">The native pointer of the COM object.</param>
            <remarks>Obtain an instance of the <see cref="T:CSCore.CoreAudioAPI.MMEndpoint"/> by using the <see cref="M:CSCore.CoreAudioAPI.MMEndpoint.#ctor(CSCore.CoreAudioAPI.MMDevice)"/> constructor.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMEndpoint.#ctor(CSCore.CoreAudioAPI.MMDevice)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.MMEndpoint"/> class based on an 
            <see cref="T:CSCore.CoreAudioAPI.MMDevice"/> by calling its <see cref="M:CSCore.Win32.ComObject.QueryInterface``1"/> method.
            </summary>
            <param name="device">The <see cref="T:CSCore.CoreAudioAPI.MMDevice"/> used to obtain an <see cref="T:CSCore.CoreAudioAPI.MMEndpoint"/> instance.</param>
            <exception cref="T:System.ArgumentNullException">device</exception>
        </member>
        <member name="P:CSCore.CoreAudioAPI.MMEndpoint.DataFlow">
            <summary>
            Gets the data flow of the associated device.
            </summary>
            <value>
            The data flow of the associated device.
            </value>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMEndpoint.GetDataFlowNative(CSCore.CoreAudioAPI.DataFlow@)">
            <summary>	
            Indicates whether the endpoint is associated with a rendering device or a capture device.
            </summary>
            <param name="dataFlow">A variable into which the method writes the data-flow direction of the endpoint device.</param>
            <returns>HRESULT</returns>
            <remarks>Use the <see cref="P:CSCore.CoreAudioAPI.MMEndpoint.DataFlow"/> property instead.</remarks>
        </member>
        <member name="T:CSCore.CoreAudioAPI.SessionCreatedEventArgs">
            <summary>
            Provides data for the <see cref="E:CSCore.CoreAudioAPI.AudioSessionNotification.SessionCreated"/> event.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.SessionCreatedEventArgs.NewSession">
            <summary>
            Gets the <see cref="T:CSCore.CoreAudioAPI.AudioSessionControl"/> object of the audio session that was created.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.SessionCreatedEventArgs.#ctor(CSCore.CoreAudioAPI.AudioSessionControl)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.SessionCreatedEventArgs"/> class.
            </summary>
            <param name="newSession">The <see cref="T:CSCore.CoreAudioAPI.AudioSessionControl"/> object of the audio session that was created.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="newSession"/> must not be null.</exception>
        </member>
        <member name="T:CSCore.CoreAudioAPI.VolumeDuckNotificationEventArgs">
            <summary>
            Provides data for the <see cref="E:CSCore.CoreAudioAPI.AudioVolumeDuckNotification.VolumeDuckNotification"/> and the <see cref="E:CSCore.CoreAudioAPI.AudioVolumeDuckNotification.VolumeUnDuckNotification"/> event. 
            For more information, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd371010(v=vs.85).aspx"/>.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.VolumeDuckNotificationEventArgs.SessionID">
            <summary>
            A string containing the session instance identifier of the communications session that raises the auto-ducking event.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.VolumeDuckNotificationEventArgs.CountCommunicationSessions">
            <summary>
            The number of active communications sessions. If there are n sessions, the sessions are numbered from 0 to –1.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.VolumeDuckNotificationEventArgs.#ctor(System.String,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.VolumeDuckNotificationEventArgs"/> class.
            </summary>
            <param name="sessionID">The session instance identifier of the communications session that raises the the auto-ducking event.</param>
            <param name="countCommunicationSessions">number of active communications sessions.</param>
            <exception cref="T:System.ArgumentNullException">sessionID is null or empty.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException">countCommunicationSessions is less than zero.</exception>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioEndpointVolume">
            <summary>
                The <see cref="T:CSCore.CoreAudioAPI.AudioEndpointVolume" /> interface represents the volume controls on the audio stream to or from an
                audio endpoint device.
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370892(v=vs.85).aspx" />.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.#ctor(System.IntPtr)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioEndpointVolume" /> class.
            </summary>
            <param name="ptr">Native pointer of the <see cref="T:CSCore.CoreAudioAPI.AudioEndpointVolume" /> object.</param>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioEndpointVolume.RegisteredCallbacks">
            <summary>
                Gets all registered <see cref="T:CSCore.CoreAudioAPI.IAudioEndpointVolumeCallback" />.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioEndpointVolume.ChannelCount">
            <summary>
                Gets the number of available channels.
                <seealso cref="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetChannelCount" />
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioEndpointVolume.MasterVolumeLevel">
            <summary>
                Gets or sets the MasterVolumeLevel in decibel.
                <seealso cref="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetMasterVolumeLevel" />
                <seealso cref="M:CSCore.CoreAudioAPI.AudioEndpointVolume.SetMasterVolumeLevel(System.Single,System.Guid)" />
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioEndpointVolume.MasterVolumeLevelScalar">
            <summary>
                Gets or sets the MasterVolumeLevel as a normalized value in the range from 0.0 to 1.0.
                <seealso cref="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetMasterVolumeLevelScalar" />
                <seealso cref="M:CSCore.CoreAudioAPI.AudioEndpointVolume.SetMasterVolumeLevelScalar(System.Single,System.Guid)" />
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioEndpointVolume.IsMuted">
            <summary>
                Gets or sets the muting state of the audio stream that enters or leaves the
                audio endpoint device. <c>True</c> indicates that the audio endpoint devie is muted. <c>False</c> indicates that the audio endpoint device is not muted.
                <seealso cref="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetMute"/>
                <seealso cref="M:CSCore.CoreAudioAPI.AudioEndpointVolume.SetMute(System.Boolean,System.Guid)"/>
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioEndpointVolume.Channels">
            <summary>
                Gets all available channels.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.FromDevice(CSCore.CoreAudioAPI.MMDevice)">
            <summary>
                Returns a new <see cref="T:CSCore.CoreAudioAPI.AudioEndpointVolume" /> instance based on a <see cref="T:CSCore.CoreAudioAPI.MMDevice" /> instance.
            </summary>
            <param name="device"><see cref="T:CSCore.CoreAudioAPI.MMDevice" /> instance to create the <see cref="T:CSCore.CoreAudioAPI.AudioEndpointVolume" /> for.</param>
            <returns>A new <see cref="T:CSCore.CoreAudioAPI.AudioEndpointVolume" /> instance based on the specified <paramref name="device" />.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.RegisterControlChangeNotifyNative(CSCore.CoreAudioAPI.IAudioEndpointVolumeCallback)">
            <summary>
                Registers a client's notification callback
                interface.
            </summary>
            <param name="notify">The callback instance that the client is registering for notification callbacks.</param>
            <returns>HRESULT</returns>
            <remarks>
                When notifications are no longer needed, the client can call the
                <see cref="M:CSCore.CoreAudioAPI.AudioEndpointVolume.UnregisterControlChangeNotify(CSCore.CoreAudioAPI.IAudioEndpointVolumeCallback)" /> method to terminate the
                notifications.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.RegisterControlChangeNotify(CSCore.CoreAudioAPI.IAudioEndpointVolumeCallback)">
            <summary>
                Registers a client's notification callback
                interface.
            </summary>
            <param name="notify">The callback instance that the client is registering for notification callbacks.</param>
            <remarks>
                When notifications are no longer needed, the client can call the
                <see cref="M:CSCore.CoreAudioAPI.AudioEndpointVolume.UnregisterControlChangeNotify(CSCore.CoreAudioAPI.IAudioEndpointVolumeCallback)" /> method to terminate the
                notifications.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.UnregisterControlChangeNotifyNative(CSCore.CoreAudioAPI.IAudioEndpointVolumeCallback)">
            <summary>
                Deletes the registration of a client's
                notification callback interface that the client registered in a previous call to the
                <see cref="M:CSCore.CoreAudioAPI.AudioEndpointVolume.RegisterControlChangeNotify(CSCore.CoreAudioAPI.IAudioEndpointVolumeCallback)" /> method.
            </summary>
            <param name="notify">
                The callback instance to unregister. The client passed this same object to the endpoint volume
                object in the previous call to the <see cref="M:CSCore.CoreAudioAPI.AudioEndpointVolume.RegisterControlChangeNotify(CSCore.CoreAudioAPI.IAudioEndpointVolumeCallback)" /> method.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.UnregisterControlChangeNotify(CSCore.CoreAudioAPI.IAudioEndpointVolumeCallback)">
            <summary>
                Deletes the registration of a client's
                notification callback interface that the client registered in a previous call to the
                <see cref="M:CSCore.CoreAudioAPI.AudioEndpointVolume.RegisterControlChangeNotify(CSCore.CoreAudioAPI.IAudioEndpointVolumeCallback)" /> method.
            </summary>
            <param name="notify">
                The callback instance to unregister. The client passed this same object to the endpoint volume
                object in the previous call to the <see cref="M:CSCore.CoreAudioAPI.AudioEndpointVolume.RegisterControlChangeNotify(CSCore.CoreAudioAPI.IAudioEndpointVolumeCallback)" /> method.
            </param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetChannelCountNative(System.Int32@)">
            <summary>
                Gets the number of channels in the audio stream that enters
                or leaves the audio endpoint device.
            </summary>
            <param name="channelCount">Retrieves the number of channels in the audio stream.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetChannelCount">
            <summary>
                Gets the number of channels in the audio stream that enters
                or leaves the audio endpoint device.
            </summary>
            <returns>The number of channels in the audio stream.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.SetMasterVolumeLevelNative(System.Single,System.Guid)">
            <summary>
                Sets the master volume level, in decibels, of the audio
                stream that enters or leaves the audio endpoint device.
            </summary>
            <param name="levelDB">
                The new master volume level in decibels. To obtain the range and
                granularity of the volume levels that can be set by this method, call the
                <see cref="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetVolumeRange(System.Single@,System.Single@,System.Single@)" /> method.
            </param>
            <param name="eventContext">EventContext which can be accessed in the event handler.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.SetMasterVolumeLevel(System.Single,System.Guid)">
            <summary>
                Sets the master volume level, in decibels, of the audio
                stream that enters or leaves the audio endpoint device.
            </summary>
            <param name="levelDB">
                The new master volume level in decibels. To obtain the range and
                granularity of the volume levels that can be set by this method, call the
                <see cref="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetVolumeRange(System.Single@,System.Single@,System.Single@)" /> method.
            </param>
            <param name="eventContext">EventContext which can be accessed in the event handler.</param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.SetMasterVolumeLevelScalarNative(System.Single,System.Guid)">
            <summary>
                Sets the master volume level of the audio stream
                that enters or leaves the audio endpoint device. The volume level is expressed as a
                normalized, audio-tapered value in the range from 0.0 to 1.0.
            </summary>
            <param name="level">
                The new master volume level. The level is expressed as a normalized
                value in the range from 0.0 to 1.0.
            </param>
            <param name="eventContext">EventContext which can be accessed in the event handler.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.SetMasterVolumeLevelScalar(System.Single,System.Guid)">
            <summary>
                Sets the master volume level of the audio stream
                that enters or leaves the audio endpoint device. The volume level is expressed as a
                normalized, audio-tapered value in the range from 0.0 to 1.0.
            </summary>
            <param name="level">
                The new master volume level. The level is expressed as a normalized
                value in the range from 0.0 to 1.0.
            </param>
            <param name="eventContext">EventContext which can be accessed in the event handler.</param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetMasterVolumeLevelNative(System.Single@)">
            <summary>
                Gets the master volume level, in decibels, of the audio
                stream that enters or leaves the audio endpoint device.
            </summary>
            <param name="levelDB">
                A
                float variable into which the method writes the volume level in decibels. To get the
                range of volume levels obtained from this method, call the
                <see cref="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetVolumeRange(System.Single@,System.Single@,System.Single@)" /> method.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetMasterVolumeLevel">
            <summary>
                Gets the master volume level, in decibels, of the audio
                stream that enters or leaves the audio endpoint device.
            </summary>
            <returns>
                Volume level in decibels. To get the range of volume levels obtained from this
                method, call the <see cref="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetVolumeRange(System.Single@,System.Single@,System.Single@)" /> method.
            </returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetMasterVolumeLevelScalarNative(System.Single@)">
            <summary>
                Gets the master volume level of the audio stream
                that enters or leaves the audio endpoint device. The volume level is expressed as a
                normalized, audio-tapered value in the range from 0.0 to 1.0.
            </summary>
            <param name="level">
                A float
                variable into which the method writes the volume level. The level is expressed as a
                normalized value in the range from 0.0 to 1.0.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetMasterVolumeLevelScalar">
            <summary>
                Gets the master volume level of the audio stream
                that enters or leaves the audio endpoint device. The volume level is expressed as a
                normalized, audio-tapered value in the range from 0.0 to 1.0.
            </summary>
            <returns>
                Volume level. The level is expressed as a normalized value in the range from
                0.0 to 1.0.
            </returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.SetChannelVolumeLevelNative(System.Int32,System.Single,System.Guid)">
            <summary>
                Sets the volume level, in decibels, of the specified
                channel of the audio stream that enters or leaves the audio endpoint device.
            </summary>
            <param name="levelDB">
                The new volume level in decibels. To obtain the range and
                granularity of the volume levels that can be set by this method, call the
                <see cref="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetVolumeRange(System.Single@,System.Single@,System.Single@)" /> method.
            </param>
            <param name="eventContext">EventContext which can be accessed in the event handler.</param>
            <param name="channel">
                The channel number. If the audio stream contains n channels, the channels are numbered from 0 to
                n–1.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.SetChannelVolumeLevel(System.Int32,System.Single,System.Guid)">
            <summary>
                Sets the volume level, in decibels, of the specified
                channel of the audio stream that enters or leaves the audio endpoint device.
            </summary>
            <param name="levelDB">
                The new volume level in decibels. To obtain the range and
                granularity of the volume levels that can be set by this method, call the
                <see cref="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetVolumeRange(System.Single@,System.Single@,System.Single@)" /> method.
            </param>
            <param name="eventContext">EventContext which can be accessed in the event handler.</param>
            <param name="channel">
                The channel number. If the audio stream contains n channels, the channels are numbered from 0 to
                n–1.
            </param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.SetChannelVolumeLevelScalarNative(System.Int32,System.Single,System.Guid)">
            <summary>
                Sets the normalized, audio-tapered volume level
                of the specified channel in the audio stream that enters or leaves the audio endpoint
                device.
            </summary>
            <param name="level">
                The volume level. The volume level is expressed as a normalized
                value in the range from 0.0 to 1.0.
            </param>
            <param name="eventContext">EventContext which can be accessed in the event handler.</param>
            <param name="channel">
                The channel number. If the audio stream contains n channels, the channels are numbered from 0 to
                n–1.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.SetChannelVolumeLevelScalar(System.Int32,System.Single,System.Guid)">
            <summary>
                Sets the normalized, audio-tapered volume level
                of the specified channel in the audio stream that enters or leaves the audio endpoint
                device.
            </summary>
            <param name="level">
                The volume level. The volume level is expressed as a normalized
                value in the range from 0.0 to 1.0.
            </param>
            <param name="eventContext">EventContext which can be accessed in the event handler.</param>
            <param name="channel">
                The channel number. If the audio stream contains n channels, the channels are numbered from 0 to
                n–1.
            </param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetChannelVolumeLevelNative(System.Int32,System.Single@)">
            <summary>
                Gets the volume level, in decibels, of the specified
                channel in the audio stream that enters or leaves the audio endpoint device.
            </summary>
            <param name="levelDB">
                A float variable into which the method writes the
                volume level in decibels. To get the range of volume levels obtained from this method,
                call the <see cref="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetVolumeRange(System.Single@,System.Single@,System.Single@)" /> method.
            </param>
            <param name="channel">
                The channel number. If the audio stream contains n channels, the channels are numbered from 0 to
                n–1.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetChannelVolumeLevel(System.Int32)">
            <summary>
                Gets the volume level, in decibels, of the specified
                channel in the audio stream that enters or leaves the audio endpoint device.
            </summary>
            <param name="channel">
                The channel number. If the audio stream contains n channels, the channels are numbered from 0 to
                n–1.
            </param>
            <returns>
                Volume level in decibels. To get the range of volume levels obtained from this
                method, call the <see cref="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetVolumeRange(System.Single@,System.Single@,System.Single@)" /> method.
            </returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetChannelVolumeLevelScalarNative(System.Int32,System.Single@)">
            <summary>
                Gets the normalized, audio-tapered volume level
                of the specified channel of the audio stream that enters or leaves the audio endpoint
                device.
            </summary>
            <param name="level">
                A float variable into which the method writes the volume
                level. The level is expressed as a normalized value in the range from 0.0 to
                1.0.
            </param>
            <param name="channel">
                The channel number. If the audio stream contains n channels, the channels are numbered from 0 to
                n–1.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetChannelVolumeLevelScalar(System.Int32)">
            <summary>
                Gets the normalized, audio-tapered volume level
                of the specified channel of the audio stream that enters or leaves the audio endpoint
                device.
            </summary>
            <param name="channel">
                The channel number. If the audio stream contains n channels, the channels are numbered from 0 to
                n–1.
            </param>
            <returns>
                Volume level of a specific channel. The level is expressed as a normalized
                value in the range from 0.0 to 1.0.
            </returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.SetMuteNative(CSCore.Win32.NativeBool,System.Guid)">
            <summary>
                Sets the muting state of the audio stream that enters or leaves the
                audio endpoint device.
            </summary>
            <param name="mute"><c>True</c> mutes the stream. <c>False</c> turns off muting.</param>
            <param name="eventContext">EventContext which can be accessed in the event handler.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.SetMute(System.Boolean,System.Guid)">
            <summary>
                Sets the muting state of the audio stream that enters or leaves the
                audio endpoint device.
            </summary>
            <param name="eventContext">EventContext which can be accessed in the event handler.</param>
            <param name="mute"><c>True</c> mutes the stream. <c>False</c> turns off muting.</param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetMuteNative(CSCore.Win32.NativeBool@)">
            <summary>
                Gets the muting state of the audio stream that enters or leaves the
                audio endpoint device.
            </summary>
            <param name="mute">
                A Variable into which the method writes the muting state.
                If <paramref name="mute" /> is <c>true</c>, the stream is muted. If <c>false</c>, the stream is not muted.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetMute">
            <summary>
                Gets the muting state of the audio stream that enters or leaves the
                audio endpoint device.
            </summary>
            <returns>If the method returns <c>true, the stream is muted. If <c>false</c>, the stream is not muted.</c></returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetVolumeStepInfoNative(System.Int32@,System.Int32@)">
            <summary>
                Gets information about the current step in the volume
                range.
            </summary>
            <param name="currentStep">
                A variable into which the method writes the current step index. This index is a value in the
                range from 0 to <paramref name="stepCount" />– 1, where 0 represents the minimum volume level and
                <paramref name="stepCount" />– 1 represents the maximum level.
            </param>
            <param name="stepCount">
                A variable into which the method writes the number of steps in the volume range. This number
                remains constant for the lifetime of the <see cref="T:CSCore.CoreAudioAPI.AudioEndpointVolume" /> object instance.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetVolumeStepInfo(System.Int32@,System.Int32@)">
            <summary>
                Gets information about the current step in the volume
                range.
            </summary>
            <param name="currentStep">
                A variable into which the method writes the current step index. This index is a value in the
                range from 0 to <paramref name="stepCount" />– 1, where 0 represents the minimum volume level and
                <paramref name="stepCount" />– 1 represents the maximum level.
            </param>
            <param name="stepCount">
                A variable into which the method writes the number of steps in the volume range. This number
                remains constant for the lifetime of the <see cref="T:CSCore.CoreAudioAPI.AudioEndpointVolume" /> object instance.
            </param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.VolumeStepUpNative(System.Guid)">
            <summary>
                Increments, by one step, the volume level of the audio stream
                that enters or leaves the audio endpoint device.
            </summary>
            <param name="eventContext">EventContext which can be accessed in the event handler.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.VolumeStepUp(System.Guid)">
            <summary>
                Increments, by one step, the volume level of the audio stream
                that enters or leaves the audio endpoint device.
            </summary>
            <param name="eventContext">EventContext which can be accessed in the event handler.</param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.VolumeStepDownNative(System.Guid)">
            <summary>
                Decrements, by one step, the volume level of the audio stream
                that enters or leaves the audio endpoint device.
            </summary>
            <param name="eventContext">EventContext which can be accessed in the event handler.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.VolumeStepDown(System.Guid)">
            <summary>
                Decrements, by one step, the volume level of the audio stream
                that enters or leaves the audio endpoint device.
            </summary>
            <param name="eventContext">EventContext which can be accessed in the event handler.</param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.QueryHardwareSupportNative(CSCore.CoreAudioAPI.EndpointHardwareSupportFlags@)">
            <summary>
                Queries the audio endpoint device for its
                hardware-supported functions.
            </summary>
            <param name="hardwareSupportMask">
                A variable into which the method writes a hardware support mask that indicates the
                hardware capabilities of the audio endpoint device.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.QueryHardwareSupport">
            <summary>
                Queries the audio endpoint device for its
                hardware-supported functions.
            </summary>
            <returns>A hardware support mask that indicates the hardware capabilities of the audio endpoint device.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetVolumeRangeNative(System.Single@,System.Single@,System.Single@)">
            <summary>
                Gets the volume range, in decibels, of the audio stream that
                enters or leaves the audio endpoint device.
            </summary>
            <param name="volumeMinDB">
                Minimum volume level in decibels. This value remains constant
                for the lifetime of the <see cref="T:CSCore.CoreAudioAPI.AudioEndpointVolume" /> object instance.
            </param>
            <param name="volumeMaxDB">
                Maximum volume level in decibels. This value remains constant
                for the lifetime of the <see cref="T:CSCore.CoreAudioAPI.AudioEndpointVolume" /> object instance.
            </param>
            <param name="volumeIncrementDB">
                Volume increment in decibels. This increment remains
                constant for the lifetime of the <see cref="T:CSCore.CoreAudioAPI.AudioEndpointVolume" /> object instance.
            </param>
            <returns>HREUSLT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolume.GetVolumeRange(System.Single@,System.Single@,System.Single@)">
            <summary>
                Gets the volume range, in decibels, of the audio stream that
                enters or leaves the audio endpoint device.
            </summary>
            <param name="volumeMinDB">
                Minimum volume level in decibels. This value remains constant
                for the lifetime of the <see cref="T:CSCore.CoreAudioAPI.AudioEndpointVolume" /> object instance.
            </param>
            <param name="volumeMaxDB">
                Maximum volume level in decibels. This value remains constant
                for the lifetime of the <see cref="T:CSCore.CoreAudioAPI.AudioEndpointVolume" /> object instance.
            </param>
            <param name="volumeIncrementDB">
                Volume increment in decibels. This increment remains
                constant for the lifetime of the <see cref="T:CSCore.CoreAudioAPI.AudioEndpointVolume" /> object instance.
            </param>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioEndpointVolumeCallback">
            <summary>
            Provides an implementation of the <see cref="T:CSCore.CoreAudioAPI.IAudioEndpointVolumeCallback"/> interface.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.AudioEndpointVolumeCallback.NotifyRecived">
            <summary>
            Occurs when the volume level or the muting state of the audio endpoint device has changed.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolumeCallback.CSCore#CoreAudioAPI#IAudioEndpointVolumeCallback#OnNotify(System.IntPtr)">
            <summary>
            The <see cref="M:CSCore.CoreAudioAPI.IAudioEndpointVolumeCallback.OnNotify(System.IntPtr)"/> method notifies the client that the volume level or muting state of the audio endpoint device has changed.
            </summary>
            <param name="notifyData">Pointer to the volume-notification data.</param>
            <returns>HRESULT; If the method succeeds, it returns <see cref="F:CSCore.Win32.HResult.S_OK"/>. If it fails, it returns an error code.</returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioEndpointVolumeCallbackEventArgs">
            <summary>
                Provides data for the <see cref="E:CSCore.CoreAudioAPI.AudioEndpointVolumeCallback.NotifyRecived" /> event.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolumeCallbackEventArgs.#ctor(CSCore.CoreAudioAPI.AudioVolumeNotificationData,System.IntPtr)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioEndpointVolumeCallbackEventArgs" /> class.
            </summary>
            <param name="data">The data which describes a change in the volume level or muting state of an audio endpoint device.</param>
            <param name="nativePtr">The native pointer to the <paramref name="data" />.</param>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioEndpointVolumeCallbackEventArgs.EventContext">
            <summary>
                Gets the event context value.
            </summary>
            <value>
                The event context value.
            </value>
            <remarks>
                Context value for the <see cref="M:CSCore.CoreAudioAPI.IAudioEndpointVolumeCallback.OnNotify(System.IntPtr)" /> method. This member is the value of the
                event-context GUID that was provided as an input parameter to the <see cref="T:CSCore.CoreAudioAPI.AudioEndpointVolume" /> method call
                that changed the endpoint volume level or muting state. For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370799(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioEndpointVolumeCallbackEventArgs.IsMuted">
            <summary>
                Gets a value indicating whether the audio stream is currently muted.
            </summary>
            <value>
                <c>true</c> if the audio stream is currently muted; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioEndpointVolumeCallbackEventArgs.MasterVolume">
            <summary>
                Gets the current master volume level of the audio stream. The volume level is
                normalized to the range from 0.0 to 1.0, where 0.0 is the minimum volume level and 1.0
                is the maximum level. Within this range, the relationship of the normalized volume level
                to the attenuation of signal amplitude is described by a nonlinear, audio-tapered curve.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioEndpointVolumeCallbackEventArgs.Channels">
            <summary>
                Gets the number of channels.
            </summary>
            <value>
                The number of channels.
            </value>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioEndpointVolumeCallbackEventArgs.ChannelVolumes">
            <summary>
                Gets the volume level for each channel is normalized to the range from 0.0 to 1.0, where 0.0
                is the minimum volume level and 1.0 is the maximum level. Within this range, the
                relationship of the normalized volume level to the attenuation of signal amplitude is
                described by a nonlinear, audio-tapered curve.
            </summary>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioEndpointVolumeChannel">
            <summary>
            Represents a single audio endpoint volume channel.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioEndpointVolumeChannel.AudioEndpointVolume">
            <summary>
            Gets the parent <see cref="T:CSCore.CoreAudioAPI.AudioEndpointVolume"/> instance.
            </summary>
            <value>
            The parent <see cref="T:CSCore.CoreAudioAPI.AudioEndpointVolume"/> instance.
            </value>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioEndpointVolumeChannel.ChannelIndex">
            <summary>
            Gets the index of the audio endpoint channel.
            </summary>
            <value>
            The index of the audio endpoint channel.
            </value>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioEndpointVolumeChannel.#ctor(CSCore.CoreAudioAPI.AudioEndpointVolume,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioEndpointVolumeChannel"/> class.
            </summary>
            <param name="audioEndpointVolume">The underlying <see cref="T:CSCore.CoreAudioAPI.AudioEndpointVolume"/> which provides access to the audio endpoint volume.</param>
            <param name="channelIndex">The zero-based index of the channel.</param>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioEndpointVolumeChannel.Volume">
            <summary>
            Gets or sets the volume in decibel.
            </summary>
            <value>
            The volume in decibel.
            </value>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioEndpointVolumeChannel.VolumeScalar">
            <summary>
            Gets or sets the volume as a normalized value in the range from 0.0 to 1.0.
            </summary>
            <value>
            The volume as a normalized value in the range from 0.0 to 1.0.
            </value>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioRenderClient">
            <summary>
                The <see cref="T:CSCore.CoreAudioAPI.AudioRenderClient" /> class enables a client to write output data to a rendering endpoint buffer.
            </summary>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd368242(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioRenderClient.#ctor(System.IntPtr)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioRenderClient" /> class.
            </summary>
            <param name="ptr">Pointer to the <see cref="T:CSCore.CoreAudioAPI.AudioRenderClient" /> instance.</param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioRenderClient.FromAudioClient(CSCore.CoreAudioAPI.AudioClient)">
            <summary>
                Returns a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioRenderClient" /> class. This is done by calling the
                <see cref="M:CSCore.CoreAudioAPI.AudioClient.GetService(System.Guid)" /> method of the <see cref="T:CSCore.CoreAudioAPI.AudioClient" /> class.
            </summary>
            <param name="audioClient">
                The <see cref="T:CSCore.CoreAudioAPI.AudioClient" /> instance which should be used to create the new
                <see cref="T:CSCore.CoreAudioAPI.AudioRenderClient" /> instance.
            </param>
            <returns>A new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioRenderClient" /> class.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioRenderClient.GetBuffer(System.Int32)">
            <summary>
                Retrieves a pointer to the next available space in the rendering endpoint buffer into
                which the caller can write a data packet.
            </summary>
            <param name="numFramesRequested">
                The number of audio frames in the data packet that the caller plans to write to the requested space in the buffer.
                If the call succeeds, the size of the buffer area pointed to by return value matches the size specified in
                <paramref name="numFramesRequested" />.
            </param>
            <returns>
                A pointer variable into which the method writes the starting address of the buffer area into which the caller
                will write the data packet.
            </returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioRenderClient.GetBufferNative(System.Int32,System.IntPtr@)">
            <summary>
                Retrieves a pointer to the next available space in the rendering endpoint buffer into
                which the caller can write a data packet.
            </summary>
            <param name="numFramesRequested">
                The number of audio frames in the data packet that the caller plans to write to the requested space in the buffer.
                If the call succeeds, the size of the buffer area pointed to by <paramref name="buffer" /> matches the size
                specified in <paramref name="numFramesRequested" />.
            </param>
            <param name="buffer">
                Pointer variable into which the method writes the starting address of the buffer area into which
                the caller will write the data packet.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioRenderClient.ReleaseBufferNative(System.Int32,CSCore.CoreAudioAPI.AudioClientBufferFlags)">
            <summary>
                Releases the buffer space acquired in the previous call to the
                <see cref="M:CSCore.CoreAudioAPI.AudioRenderClient.GetBuffer(System.Int32)" /> method.
            </summary>
            <param name="numFramesWritten">
                The number of audio frames written by the client to the data packet.
                The value of this parameter must be less than or equal to the size of the data packet, as specified in the
                <c>numFramesRequested</c> parameter passed to the <see cref="M:CSCore.CoreAudioAPI.AudioRenderClient.GetBuffer(System.Int32)" /> method.
            </param>
            <param name="flags">The buffer-configuration flags.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioRenderClient.ReleaseBuffer(System.Int32,CSCore.CoreAudioAPI.AudioClientBufferFlags)">
            <summary>
                Releases the buffer space acquired in the previous call to the
                <see cref="M:CSCore.CoreAudioAPI.AudioRenderClient.GetBuffer(System.Int32)" /> method.
            </summary>
            <param name="numFramesWritten">
                The number of audio frames written by the client to the data packet.
                The value of this parameter must be less than or equal to the size of the data packet, as specified in the
                <c>numFramesRequested</c> parameter passed to the <see cref="M:CSCore.CoreAudioAPI.AudioRenderClient.GetBuffer(System.Int32)" /> method.
            </param>
            <param name="flags">The buffer-configuration flags.</param>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioVolumeNotificationData">
            <summary>
            The <see cref="T:CSCore.CoreAudioAPI.AudioVolumeNotificationData"/> structure describes a change in the volume level or muting state of an audio endpoint device.
            For more information, see <see href="http://msdn.microsoft.com/en-us/library/dd370799(v=vs.85).aspx"/>.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioVolumeNotificationData.EventContext">
            <summary>
                The event context value.
            </summary>
            <remarks>
                Context value for the <see cref="M:CSCore.CoreAudioAPI.IAudioEndpointVolumeCallback.OnNotify(System.IntPtr)" /> method. This member is the value of the
                event-context GUID that was provided as an input parameter to the <see cref="T:CSCore.CoreAudioAPI.AudioEndpointVolume" /> method call
                that changed the endpoint volume level or muting state. For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370799(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioVolumeNotificationData.Muted">
            <summary>
                A value indicating whether the audio stream is currently muted. <c>true</c> if the audio stream is currently muted;
                otherwise, <c>false</c>.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioVolumeNotificationData.MasterVolume">
            <summary>
                Specifies the current master volume level of the audio stream. The volume level is
                normalized to the range from 0.0 to 1.0, where 0.0 is the minimum volume level and 1.0
                is the maximum level. Within this range, the relationship of the normalized volume level
                to the attenuation of signal amplitude is described by a nonlinear, audio-tapered curve.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioVolumeNotificationData.Channels">
            <summary>
                The number of channels.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioVolumeNotificationData.ChannelVolumes">
            <summary>
                The first element of an array which specifies the volume level of each channel. Use the
                <see cref="M:CSCore.CoreAudioAPI.AudioVolumeNotificationData.GetAllChannelVolumes" /> method to get all channel volumes.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioVolumeNotificationData.GetAllChannelVolumes">
            <summary>
                Gets all channel volumes.
            </summary>
            <returns>
                The volume level for each channel is normalized to the range from 0.0 to 1.0, where 0.0
                is the minimum volume level and 1.0 is the maximum level. Within this range, the
                relationship of the normalized volume level to the attenuation of signal amplitude is
                described by a nonlinear, audio-tapered curve.
            </returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.EndpointHardwareSupportFlags">
            <summary>
            The <see cref="T:CSCore.CoreAudioAPI.EndpointHardwareSupportFlags"/> are hardware support flags for an audio endpoint device.
            </summary>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370835(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="F:CSCore.CoreAudioAPI.EndpointHardwareSupportFlags.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.EndpointHardwareSupportFlags.Volume">
            <summary>
            The audio endpoint device supports a hardware volume control.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.EndpointHardwareSupportFlags.Mute">
            <summary>
            The audio endpoint device supports a hardware mute control.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.EndpointHardwareSupportFlags.Meter">
            <summary>
            The audio endpoint device supports a hardware peak meter.
            </summary>
        </member>
        <member name="T:CSCore.CoreAudioAPI.IAudioEndpointVolumeCallback">
            <summary>
            The <see cref="T:CSCore.CoreAudioAPI.IAudioEndpointVolumeCallback"/> interface provides notifications of changes in the volume level and muting state of an audio endpoint device. 
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IAudioEndpointVolumeCallback.OnNotify(System.IntPtr)">
            <summary>
            Notifies the client that the volume level or muting state of the audio endpoint device has changed.
            </summary>
            <param name="notifyData">Pointer to the volume-notification data.</param>
            <returns>HRESULT; If the method succeeds, it returns <see cref="F:CSCore.Win32.HResult.S_OK"/>. If it fails, it returns an error code.</returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioClient">
            <summary>
                Enables a client to create and initialize an audio stream between an audio application and the audio engine (for a
                shared-mode stream) or the hardware buffer of an audio endpoint device (for an exclusive-mode stream). For more
                information, see
                <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd370865(v=vs.85).aspx" />.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioClient.IID_IAudioClient">
            <summary>
                IID of the IAudioClient-interface.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.#ctor(System.IntPtr)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioClient" /> class.
            </summary>
            <param name="ptr">Native pointer.</param>
            <remarks>Use the <see cref="M:CSCore.CoreAudioAPI.AudioClient.FromMMDevice(CSCore.CoreAudioAPI.MMDevice)" /> method to create a new <see cref="T:CSCore.CoreAudioAPI.AudioClient" /> instance.</remarks>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioClient.DefaultDevicePeriod">
            <summary>
                Gets the default interval between periodic processing passes by the audio engine. The time is expressed in
                100-nanosecond units.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioClient.MinimumDevicePeriod">
            <summary>
                Gets the minimum interval between periodic processing passes by the audio endpoint device. The time is expressed in
                100-nanosecond units.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioClient.BufferSize">
            <summary>
                Gets the maximum capacity of the endpoint buffer.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioClient.CurrentPadding">
            <summary>
                Gets the number of frames of padding in the endpoint buffer.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioClient.MixFormat">
            <summary>
                Gets the stream format that the audio engine uses for its
                internal processing of shared-mode streams.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.AudioClient.StreamLatency">
            <summary>
                Gets the maximum latency for the current stream and can
                be called any time after the stream has been initialized.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.FromMMDevice(CSCore.CoreAudioAPI.MMDevice)">
            <summary>
                Returns a new instance of the <see cref="T:CSCore.CoreAudioAPI.AudioClient" /> class.
            </summary>
            <param name="device">Device which should be used to create the <see cref="T:CSCore.CoreAudioAPI.AudioClient" /> instance.</param>
            <returns><see cref="T:CSCore.CoreAudioAPI.AudioClient" /> instance.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.InitializeNative(CSCore.CoreAudioAPI.AudioClientShareMode,CSCore.CoreAudioAPI.AudioClientStreamFlags,System.Int64,System.Int64,CSCore.WaveFormat,System.Guid)">
            <summary>
                Initializes the audio stream.
            </summary>
            <param name="shareMode">
                The sharing mode for the connection. Through this parameter, the client tells the audio engine
                whether it wants to share the audio endpoint device with other clients.
            </param>
            <param name="streamFlags">Flags to control creation of the stream.</param>
            <param name="hnsBufferDuration">
                The buffer capacity as a time value (expressed in 100-nanosecond units). This parameter
                contains the buffer size that the caller requests for the buffer that the audio application will share with the
                audio engine (in shared mode) or with the endpoint device (in exclusive mode). If the call succeeds, the method
                allocates a buffer that is a least this large.
            </param>
            <param name="hnsPeriodicity">
                The device period. This parameter can be nonzero only in exclusive mode. In shared mode,
                always set this parameter to 0. In exclusive mode, this parameter specifies the requested scheduling period for
                successive buffer accesses by the audio endpoint device. If the requested device period lies outside the range that
                is set by the device's minimum period and the system's maximum period, then the method clamps the period to that
                range. If this parameter is 0, the method sets the device period to its default value. To obtain the default device
                period, call the <see cref="M:CSCore.CoreAudioAPI.AudioClient.GetDevicePeriodNative(System.Int64@,System.Int64@)" /> method. If the
                <see cref="F:CSCore.CoreAudioAPI.AudioClientStreamFlags.StreamFlagsEventCallback" /> stream flag is set and
                <see cref="F:CSCore.CoreAudioAPI.AudioClientShareMode.Exclusive" /> is set as the <paramref name="shareMode" />, then
                <paramref name="hnsPeriodicity" /> must be nonzero and equal to <paramref name="hnsBufferDuration" />.
            </param>
            <param name="waveFormat">
                The format descriptor. For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370875(v=vs.85).aspx" />.
            </param>
            <param name="audioSessionGuid">
                A value that identifies the audio session that the stream belongs to. If the
                <see cref="T:System.Guid" /> identifies a session that has been previously opened, the method adds the stream to that
                session. If the GUID does not identify an existing session, the method opens a new session and adds the stream to
                that session. The stream remains a member of the same session for its lifetime. Use <see cref="F:System.Guid.Empty" /> to
                use the default session.
            </param>
            <returns>HRESULT</returns>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370875(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.InitializeNative(CSCore.CoreAudioAPI.AudioClientShareMode,CSCore.CoreAudioAPI.AudioClientStreamFlags,System.Int64,System.Int64,System.IntPtr,System.Guid)">
            <summary>
                Initializes the audio stream.
            </summary>
            <param name="shareMode">
                The sharing mode for the connection. Through this parameter, the client tells the audio engine
                whether it wants to share the audio endpoint device with other clients.
            </param>
            <param name="streamFlags">Flags to control creation of the stream.</param>
            <param name="hnsBufferDuration">
                The buffer capacity as a time value (expressed in 100-nanosecond units). This parameter
                contains the buffer size that the caller requests for the buffer that the audio application will share with the
                audio engine (in shared mode) or with the endpoint device (in exclusive mode). If the call succeeds, the method
                allocates a buffer that is a least this large.
            </param>
            <param name="hnsPeriodicity">
                The device period. This parameter can be nonzero only in exclusive mode. In shared mode,
                always set this parameter to 0. In exclusive mode, this parameter specifies the requested scheduling period for
                successive buffer accesses by the audio endpoint device. If the requested device period lies outside the range that
                is set by the device's minimum period and the system's maximum period, then the method clamps the period to that
                range. If this parameter is 0, the method sets the device period to its default value. To obtain the default device
                period, call the <see cref="M:CSCore.CoreAudioAPI.AudioClient.GetDevicePeriodNative(System.Int64@,System.Int64@)" /> method. If the
                <see cref="F:CSCore.CoreAudioAPI.AudioClientStreamFlags.StreamFlagsEventCallback" /> stream flag is set and
                <see cref="F:CSCore.CoreAudioAPI.AudioClientShareMode.Exclusive" /> is set as the <paramref name="shareMode" />, then
                <paramref name="hnsPeriodicity" /> must be nonzero and equal to <paramref name="hnsBufferDuration" />.
            </param>
            <param name="waveFormat">
                Pointer to the format descriptor. For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370875(v=vs.85).aspx" />.
            </param>
            <param name="audioSessionGuid">
                A value that identifies the audio session that the stream belongs to. If the
                <see cref="T:System.Guid" /> identifies a session that has been previously opened, the method adds the stream to that
                session. If the GUID does not identify an existing session, the method opens a new session and adds the stream to
                that session. The stream remains a member of the same session for its lifetime. Use <see cref="F:System.Guid.Empty" /> to
                use the default session.
            </param>
            <returns>HRESULT</returns>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370875(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.Initialize(CSCore.CoreAudioAPI.AudioClientShareMode,CSCore.CoreAudioAPI.AudioClientStreamFlags,System.Int64,System.Int64,CSCore.WaveFormat,System.Guid)">
            <summary>
                Initializes the audio stream.
            </summary>
            <param name="shareMode">
                The sharing mode for the connection. Through this parameter, the client tells the audio engine
                whether it wants to share the audio endpoint device with other clients.
            </param>
            <param name="streamFlags">Flags to control creation of the stream.</param>
            <param name="hnsBufferDuration">
                The buffer capacity as a time value (expressed in 100-nanosecond units). This parameter
                contains the buffer size that the caller requests for the buffer that the audio application will share with the
                audio engine (in shared mode) or with the endpoint device (in exclusive mode). If the call succeeds, the method
                allocates a buffer that is a least this large.
            </param>
            <param name="hnsPeriodicity">
                The device period. This parameter can be nonzero only in exclusive mode. In shared mode,
                always set this parameter to 0. In exclusive mode, this parameter specifies the requested scheduling period for
                successive buffer accesses by the audio endpoint device. If the requested device period lies outside the range that
                is set by the device's minimum period and the system's maximum period, then the method clamps the period to that
                range. If this parameter is 0, the method sets the device period to its default value. To obtain the default device
                period, call the <see cref="M:CSCore.CoreAudioAPI.AudioClient.GetDevicePeriodNative(System.Int64@,System.Int64@)" /> method. If the
                <see cref="F:CSCore.CoreAudioAPI.AudioClientStreamFlags.StreamFlagsEventCallback" /> stream flag is set and
                <see cref="F:CSCore.CoreAudioAPI.AudioClientShareMode.Exclusive" /> is set as the <paramref name="shareMode" />, then
                <paramref name="hnsPeriodicity" /> must be nonzero and equal to <paramref name="hnsBufferDuration" />.
            </param>
            <param name="waveFormat">
                The format descriptor. For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370875(v=vs.85).aspx" />.
            </param>
            <param name="audioSessionGuid">
                A value that identifies the audio session that the stream belongs to. If the
                <see cref="T:System.Guid" /> identifies a session that has been previously opened, the method adds the stream to that
                session. If the GUID does not identify an existing session, the method opens a new session and adds the stream to
                that session. The stream remains a member of the same session for its lifetime. Use <see cref="F:System.Guid.Empty" /> to
                use the default session.
            </param>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370875(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.GetBufferSizeNative(System.Int32@)">
            <summary>
                Retrieves the size (maximum capacity) of the endpoint buffer.
            </summary>
            <param name="bufferFramesCount">Retrieves the number of audio frames that the buffer can hold.</param>
            <remarks>
                The size of one frame = <c>(number of bits per sample)/8 * (number of channels)</c>
            </remarks>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.GetBufferSize">
            <summary>
                Returns the size (maximum capacity) of the endpoint buffer.
            </summary>
            <returns>The number of audio frames that the buffer can hold.</returns>
            <remarks>
                The size of one frame = <c>(number of bits per sample)/8 * (number of channels)</c>
            </remarks>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.GetStreamLatencyNative(System.Int64@)">
            <summary>
                Retrieves the maximum latency for the current stream and can
                be called any time after the stream has been initialized.
            </summary>
            <param name="hnsLatency">Retrieves a value representing the latency. The time is expressed in 100-nanosecond units.</param>
            <remarks>
                Rendering clients can use this latency value to compute the minimum amount of data that
                they can write during any single processing pass. To write less than this minimum is to
                risk introducing glitches into the audio stream. For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370874(v=vs.85).aspx" />.
            </remarks>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.GetStreamLatency">
            <summary>
                Retrieves the maximum latency for the current stream and can
                be called any time after the stream has been initialized.
            </summary>
            <remarks>
                Rendering clients can use this latency value to compute the minimum amount of data that
                they can write during any single processing pass. To write less than this minimum is to
                risk introducing glitches into the audio stream. For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370874(v=vs.85).aspx" />.
            </remarks>
            <returns>A value representing the latency. The time is expressed in 100-nanosecond units.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.GetCurrentPaddingNative(System.Int32@)">
            <summary>
                Retrieves the number of frames of padding in the endpoint buffer.
            </summary>
            <param name="numPaddingFrames">Retrieves the frame count (the number of audio frames of padding in the buffer).</param>
            <returns>HRESULT</returns>
            <remarks>
                The size of one frame = <c>(number of bits per sample)/8 * (number of channels)</c>
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.GetCurrentPadding">
            <summary>
                Retrieves the number of frames of padding in the endpoint
                buffer.
            </summary>
            <returns>The frame count (the number of audio frames of padding in the buffer).</returns>
            <remarks>
                The size of one frame = <c>(number of bits per sample)/8 * (number of channels)</c>
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.IsFormatSupportedNative(CSCore.CoreAudioAPI.AudioClientShareMode,CSCore.WaveFormat,CSCore.WaveFormat@)">
            <summary>
                Indicates whether the audio endpoint device
                supports a particular stream format.
            </summary>
            <param name="shareMode">
                The sharing mode for the stream format. Through this parameter, the client indicates whether it
                wants to use the specified format in exclusive mode or shared mode.
            </param>
            <param name="waveFormat">The stream format to test whether it is supported by the <see cref="T:CSCore.CoreAudioAPI.AudioClient" /> or not.</param>
            <param name="closestMatch">
                Retrieves the supported format that is closest to the format that the client specified
                through the <paramref name="waveFormat" /> parameter. If <paramref name="shareMode" /> is
                <see cref="F:CSCore.CoreAudioAPI.AudioClientShareMode.Shared" />, the <paramref name="closestMatch" /> will be always null.
            </param>
            <returns>
                HRESULT code. If the method returns 0 (= <see cref="F:CSCore.Win32.HResult.S_OK" />), the endpoint device supports the specified
                <paramref name="waveFormat" />. If the method returns
                1 (= <see cref="F:CSCore.Win32.HResult.S_FALSE" />), the method succeeded with a <paramref name="closestMatch" /> to the specified
                <paramref name="waveFormat" />. If the method returns
                0x88890008 (= <see cref="F:CSCore.Win32.HResult.AUDCLNT_E_UNSUPPORTED_FORMAT" />), the method succeeded but the specified format
                is not supported in exclusive mode. If the method returns anything else, the method failed.
            </returns>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370876(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.IsFormatSupported(CSCore.CoreAudioAPI.AudioClientShareMode,CSCore.WaveFormat,CSCore.WaveFormat@)">
            <summary>
                Indicates whether the audio endpoint device
                supports a particular stream format.
            </summary>
            <param name="shareMode">
                The sharing mode for the stream format. Through this parameter, the client indicates whether it
                wants to use the specified format in exclusive mode or shared mode.
            </param>
            <param name="waveFormat">The stream format to test whether it is supported by the <see cref="T:CSCore.CoreAudioAPI.AudioClient" /> or not.</param>
            <param name="closestMatch">
                Retrieves the supported format that is closest to the format that the client specified
                through the <paramref name="waveFormat" /> parameter. If <paramref name="shareMode" /> is
                <see cref="F:CSCore.CoreAudioAPI.AudioClientShareMode.Shared" />, the <paramref name="closestMatch" /> will be always null.
            </param>
            <returns>
                <c>True</c> if the <paramref name="waveFormat" /> is supported. <c>False</c> if the
                <paramref name="waveFormat" /> is not supported.
            </returns>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370876(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.IsFormatSupported(CSCore.CoreAudioAPI.AudioClientShareMode,CSCore.WaveFormat)">
            <summary>
                Indicates whether the audio endpoint device
                supports a particular stream format.
            </summary>
            <param name="shareMode">
                The sharing mode for the stream format. Through this parameter, the client indicates whether it
                wants to use the specified format in exclusive mode or shared mode.
            </param>
            <param name="waveFormat">The stream format to test whether it is supported by the <see cref="T:CSCore.CoreAudioAPI.AudioClient" /> or not.</param>
            <returns>
                <c>True</c> if the <paramref name="waveFormat" /> is supported. <c>False</c> if the
                <paramref name="waveFormat" /> is not supported.
            </returns>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370876(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.GetMixFormatNative(CSCore.WaveFormat@)">
            <summary>
                Retrieves the stream format that the audio engine uses for its
                internal processing of shared-mode streams.
            </summary>
            <param name="deviceFormat">
                Retrieves the mix format that the audio engine uses for its internal processing of
                shared-mode streams.
            </param>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370872(v=vs.85).aspx" />.
            </remarks>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.GetMixFormat">
            <summary>
                Retrieves the stream format that the audio engine uses for its
                internal processing of shared-mode streams.
            </summary>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370872(v=vs.85).aspx" />.
            </remarks>
            <returns>The mix format that the audio engine uses for its internal processing of shared-mode streams.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.GetDevicePeriodNative(System.Int64@,System.Int64@)">
            <summary>
                Retrieves the length of the periodic interval separating
                successive processing passes by the audio engine on the data in the endpoint buffer.
            </summary>
            <param name="hnsDefaultDevicePeriod">
                Retrieves a time value specifying the default interval between periodic processing
                passes by the audio engine. The time is expressed in 100-nanosecond units.
            </param>
            <param name="hnsMinimumDevicePeriod">
                Retrieves a time value specifying the minimum interval between periodic processing
                passes by the audio endpoint device. The time is expressed in 100-nanosecond units.
            </param>
            <remarks>
                Use the <paramref name="hnsDefaultDevicePeriod" /> and the <paramref name="hnsMinimumDevicePeriod" /> properties instead of
                the <see cref="M:CSCore.CoreAudioAPI.AudioClient.GetDevicePeriodNative(System.Int64@,System.Int64@)" /> method.
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370871(v=vs.85).aspx" />.
            </remarks>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.StartNative">
            <summary>
                Starts the audio stream.
            </summary>
            <returns>HRESULT</returns>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370879(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.Start">
            <summary>
                Starts the audio stream.
            </summary>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370879(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.StopNative">
            <summary>
                Stops the audio stream.
            </summary>
            <returns>HRESULT</returns>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370880(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.Stop">
            <summary>
                Stops the audio stream.
            </summary>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370880(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.ResetNative">
            <summary>
                Resets the audio stream.
            </summary>
            <returns>HRESULT</returns>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370877(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.Reset">
            <summary>
                Resets the audio stream.
            </summary>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370877(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.SetEventHandleNative(System.IntPtr)">
            <summary>
                Sets the event handle that the system signals when an audio
                buffer is ready to be processed by the client.
            </summary>
            <param name="handle">The event handle.</param>
            <returns>
                HRESULT
            </returns>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370878(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.SetEventHandle(System.IntPtr)">
            <summary>
                Sets the event handle that the system signals when an audio
                buffer is ready to be processed by the client.
            </summary>
            <param name="handle">The event handle.</param>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370878(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.SetEventHandle(System.Threading.WaitHandle)">
            <summary>
                Sets the event handle that the system signals when an audio
                buffer is ready to be processed by the client.
            </summary>
            <param name="waitHandle">The event handle.</param>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370878(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.GetServiceNative(System.Guid,System.IntPtr@)">
            <summary>
                Accesses additional services from the audio client object.
            </summary>
            <param name="riid">
                The interface ID for the requested service. For a list of all available values, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370873(v=vs.85).aspx" />.
            </param>
            <param name="ppv">
                A pointer variable into which the method writes the address of an instance of the
                requested interface. Through this method, the caller obtains a counted reference to the interface. The caller is
                responsible for releasing the interface, when it is no longer needed, by calling the interface's Release method. If
                the GetService call fails, *ppv is <see cref="F:System.IntPtr.Zero" />.
            </param>
            <returns>HRESULT</returns>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370873(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.AudioClient.GetService(System.Guid)">
            <summary>
                Accesses additional services from the audio client object.
            </summary>
            <param name="riid">
                The interface ID for the requested service. For a list of all available values, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370873(v=vs.85).aspx" />.
            </param>
            <returns>
                A pointer into which the method writes the address of an instance of the requested interface.
                Through this method, the caller obtains a counted reference to the interface. The caller is responsible for
                releasing the interface, when it is no longer needed, by calling the interface's Release method.
            </returns>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd370873(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="T:CSCore.CoreAudioAPI.AudioClientShareMode">
            <summary>
            AudioClient share mode
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioClientShareMode.Shared">
            <summary>
            The device will be opened in shared mode and use the WAS format.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.AudioClientShareMode.Exclusive">
            <summary>
            The device will be opened in exclusive mode and use the application specified format.
            </summary>
        </member>
        <member name="T:CSCore.CoreAudioAPI.MMDeviceCollection">
            <summary>
            Represents a collection of multimedia device resources.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceCollection.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.MMDeviceCollection"/> class.
            </summary>
            <param name="ptr">The native pointer.</param>
            <remarks>Use the <see cref="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.EnumAudioEndpoints(CSCore.CoreAudioAPI.DataFlow,CSCore.CoreAudioAPI.DeviceState)"/> method to create an instance of the <see cref="T:CSCore.CoreAudioAPI.MMDeviceCollection"/> class.</remarks>
        </member>
        <member name="P:CSCore.CoreAudioAPI.MMDeviceCollection.Count">
            <summary>
            Gets the number of devices in the device collection.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.MMDeviceCollection.Item(System.Int32)">
            <summary>
            Gets the element at the specified index.
            </summary>
            <param name="index"></param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceCollection.GetCount">
            <summary>
            The <see cref="M:CSCore.CoreAudioAPI.MMDeviceCollection.GetCount"/> method retrieves a count of the devices in the device collection.
            </summary>
            <returns>The number of devices in the device collection.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceCollection.GetCountNative(System.Int32@)">
            <summary>
            The <see cref="M:CSCore.CoreAudioAPI.MMDeviceCollection.GetCount"/> method retrieves a count of the devices in the device collection.
            </summary>
            <param name="deviceCount">Variable into which the method writes the number of devices in the device collection.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceCollection.ItemAt(System.Int32)">
            <summary>
            The <see cref="M:CSCore.CoreAudioAPI.MMDeviceCollection.ItemAtNative(System.Int32,System.IntPtr@)"/> method retrieves a pointer to the specified item in the device collection.
            </summary>
            <param name="deviceIndex">The device number. If the collection contains n devices, the devices are numbered 0 to n– 1.</param>
            <returns>The <see cref="T:CSCore.CoreAudioAPI.MMDevice"/> object of the specified item in the device collection.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceCollection.ItemAtNative(System.Int32,System.IntPtr@)">
            <summary>
            The <see cref="M:CSCore.CoreAudioAPI.MMDeviceCollection.ItemAtNative(System.Int32,System.IntPtr@)"/> method retrieves a pointer to the specified item in the device collection.
            </summary>
            <param name="deviceIndex">The device number. If the collection contains n devices, the devices are numbered 0 to n– 1.</param>
            <param name="device">A pointer variable into which the method writes the address of the <see cref="T:CSCore.CoreAudioAPI.MMDevice"/> object of the specified item in the device collection.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceCollection.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the <see cref="T:CSCore.CoreAudioAPI.MMDeviceCollection"/>.
            </summary>
            <returns>Enumerator for the <see cref="T:CSCore.CoreAudioAPI.MMDeviceCollection"/>.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceCollection.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the <see cref="T:CSCore.CoreAudioAPI.MMDeviceCollection"/>.
            </summary>
            <returns>Enumerator for the <see cref="T:CSCore.CoreAudioAPI.MMDeviceCollection"/>.</returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.MMNotificationClient">
            <summary>
            The <see cref="T:CSCore.CoreAudioAPI.MMNotificationClient"/> object provides notifications when an audio endpoint device is added or removed, when the state or properties of an endpoint device change, or when there is a change in the default role assigned to an endpoint device.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.MMNotificationClient.DeviceStateChanged">
            <summary>
            Occurs when the state of an audio endpoint device has changed.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.MMNotificationClient.DeviceAdded">
            <summary>
            Occurs when a new audio endpoint device has been added.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.MMNotificationClient.DeviceRemoved">
            <summary>
            Occurs when an audio endpoint device has been removed.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.MMNotificationClient.DefaultDeviceChanged">
            <summary>
            Occurs when the default audio endpoint device for a particular device role has changed.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.MMNotificationClient.DevicePropertyChanged">
            <summary>
            Occurs when the value of a property belonging to an audio endpoint device has changed.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMNotificationClient.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.MMNotificationClient"/> class.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMNotificationClient.#ctor(CSCore.CoreAudioAPI.MMDeviceEnumerator)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.MMNotificationClient"/> class based on an existing <see cref="T:CSCore.CoreAudioAPI.MMDeviceEnumerator"/>.
            </summary>
            <param name="enumerator"></param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMNotificationClient.CSCore#CoreAudioAPI#IMMNotificationClient#OnDeviceStateChanged(System.String,CSCore.CoreAudioAPI.DeviceState)">
            <summary>
            The OnDeviceStateChanged method indicates that the state of an audio endpoint device has
            changed.
            </summary>
            <param name="deviceId">The device id that identifies the audio endpoint device.</param>
            <param name="deviceState">Specifies the new state of the endpoint device.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMNotificationClient.CSCore#CoreAudioAPI#IMMNotificationClient#OnDeviceAdded(System.String)">
            <summary>
            The OnDeviceAdded method indicates that a new audio endpoint device has been added.
            </summary>
            <param name="deviceId">The device id that identifies the audio endpoint device.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMNotificationClient.CSCore#CoreAudioAPI#IMMNotificationClient#OnDeviceRemoved(System.String)">
            <summary>
            The OnDeviceRemoved method indicates that an audio endpoint device has been removed.
            </summary>
            <param name="deviceId">The device id that identifies the audio endpoint device.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMNotificationClient.CSCore#CoreAudioAPI#IMMNotificationClient#OnDefaultDeviceChanged(CSCore.CoreAudioAPI.DataFlow,CSCore.CoreAudioAPI.Role,System.String)">
            <summary>
            The OnDefaultDeviceChanged method notifies the client that the default audio endpoint
            device for a particular device role has changed.
            </summary>
            <param name="dataFlow">The data-flow direction of the endpoint device.</param>
            <param name="role">The device role of the audio endpoint device.</param>
            <param name="deviceId">The device id that identifies the audio endpoint device.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMNotificationClient.CSCore#CoreAudioAPI#IMMNotificationClient#OnPropertyValueChanged(System.String,CSCore.Win32.PropertyKey)">
            <summary>
            The OnPropertyValueChanged method indicates that the value of a property belonging to an
            audio endpoint device has changed.
            </summary>
            <param name="deviceId">The device id that identifies the audio endpoint device.</param>
            <param name="key">The <see cref="T:CSCore.Win32.PropertyKey"/> that specifies the changed property.</param>        
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMNotificationClient.Dispose">
            <summary>
            Disposes und unregisters the <see cref="T:CSCore.CoreAudioAPI.MMNotificationClient"/>.
            </summary>
            <remarks>In order to unregister the <see cref="T:CSCore.CoreAudioAPI.MMNotificationClient"/>, this method calls the <see cref="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.UnregisterEndpointNotificationCallback(CSCore.CoreAudioAPI.IMMNotificationClient)"/> method.</remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMNotificationClient.Finalize">
            <summary>
            Finalizes an instance of the <see cref="T:CSCore.CoreAudioAPI.MMNotificationClient"/> class.
            </summary>
        </member>
        <member name="T:CSCore.CoreAudioAPI.SimpleAudioVolume">
            <summary>
            The <see cref="T:CSCore.CoreAudioAPI.SimpleAudioVolume"/> object enables a client to control the master volume level of an audio session. 
            For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd316535(v=vs.85).aspx"/>.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.SimpleAudioVolume.FromAudioClient(CSCore.CoreAudioAPI.AudioClient)">
            <summary>
                Creates a new <see cref="T:CSCore.CoreAudioAPI.SimpleAudioVolume" /> instance by calling the <see cref="M:CSCore.CoreAudioAPI.AudioClient.GetService(System.Guid)" /> method of the
                specified <paramref name="audioClient" />.
            </summary>
            <param name="audioClient">
                The <see cref="T:CSCore.CoreAudioAPI.AudioClient" /> which should be used to create the <see cref="T:CSCore.CoreAudioAPI.SimpleAudioVolume" />-instance
                with.
            </param>
            <returns>A new instance of the <see cref="T:CSCore.CoreAudioAPI.SimpleAudioVolume"/> class.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.SimpleAudioVolume.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.SimpleAudioVolume"/> class.
            </summary>
            <param name="nativePtr">The native pointer of the COM object.</param>
        </member>
        <member name="P:CSCore.CoreAudioAPI.SimpleAudioVolume.MasterVolume">
            <summary>
            Gets or sets the master volume level for the audio session. Valid volume levels are in the range 0.0 (=0%) to 1.0 (=100%).
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.SimpleAudioVolume.IsMuted">
            <summary>
            Gets or sets the muting state for the audio session. <c>True</c> indicates that muting is enabled. <c>False</c> indicates that it is disabled.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.SimpleAudioVolume.SetMasterVolumeNative(System.Single,System.Guid)">
            <summary>
            Sets the master volume level for the audio session.
            <seealso cref="P:CSCore.CoreAudioAPI.SimpleAudioVolume.MasterVolume"/>
            </summary>
            <param name="volume">The new master volume level. Valid volume levels are in the range 0.0 to 1.0.</param>
            <param name="eventContext">EventContext which can be accessed in the event handler.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.SimpleAudioVolume.GetMasterVolumeNative(System.Single@)">
            <summary>
            Retrieves the client volume level for the audio session.
            <seealso cref="P:CSCore.CoreAudioAPI.SimpleAudioVolume.MasterVolume"/>
            </summary>
            <param name="volume">A variable into which the method writes the client volume level. The volume level is a value in the range 0.0 to 1.0.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.SimpleAudioVolume.SetMuteNative(CSCore.Win32.NativeBool,System.Guid)">
            <summary>
            Sets the muting state for the audio session.
            <seealso cref="P:CSCore.CoreAudioAPI.SimpleAudioVolume.IsMuted"/>
            </summary>
            <param name="muted">The new muting state. TRUE enables muting. FALSE disables muting.</param>
            <param name="eventContext">EventContext which can be accessed in the event handler.</param>        
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.SimpleAudioVolume.GetMuteInternal(CSCore.Win32.NativeBool@)">
            <summary>
            The GetMute method retrieves the current muting state for the audio session.
            <seealso cref="P:CSCore.CoreAudioAPI.SimpleAudioVolume.IsMuted"/>
            </summary>
            <param name="isMuted">A variable into which the method writes the muting state. TRUE indicates that muting is enabled. FALSE indicates that it is disabled.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.MMDevice">
            <summary>
            Encapsulates the generic features of a multimedia device resource. 
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDevice.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.MMDevice"/> class. 
            </summary>
            <param name="ptr">Native pointer.</param>
            <remarks>Use the <see cref="T:CSCore.CoreAudioAPI.MMDeviceEnumerator"/> class to create a new <see cref="T:CSCore.CoreAudioAPI.MMDevice"/> instance.</remarks>
        </member>
        <member name="P:CSCore.CoreAudioAPI.MMDevice.PropertyStore">
            <summary>
            Gets the propertystore associated with the <see cref="T:CSCore.CoreAudioAPI.MMDevice"/>.
            </summary>
            <remarks>Warning: This PropertyStore is only <c>readable</c>. Use the OpenPropertyStore-Method to get
            writeable PropertyStore.</remarks>
        </member>
        <member name="P:CSCore.CoreAudioAPI.MMDevice.DeviceID">
            <summary>
            Gets the device id. For information, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd370837(v=vs.85).aspx"/>.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.MMDevice.FriendlyName">
            <summary>
            Gets the friendly name of the device.
            </summary>
            <remarks>This value is stored in the <see cref="P:CSCore.CoreAudioAPI.MMDevice.PropertyStore"/>.</remarks>
        </member>
        <member name="P:CSCore.CoreAudioAPI.MMDevice.DevicePath">
            <summary>
            Gets the AudioEndpointPath of the device.
            </summary>
            <remarks>
                This value is stored in the <see cref="P:CSCore.CoreAudioAPI.MMDevice.PropertyStore"/>.
                Use this value as the deviceid for XAudio2.8 device selection.
            </remarks>
        </member>
        <member name="P:CSCore.CoreAudioAPI.MMDevice.DeviceState">
            <summary>
            Gets the device state of the device.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.MMDevice.DataFlow">
            <summary>
            Gets the data flow of the device.
            </summary>
            <value>
            The data flow of the device.
            </value>
        </member>
        <member name="P:CSCore.CoreAudioAPI.MMDevice.DeviceFormat">
            <summary>
            Gets the device format.
            </summary>
            <remarks>Specifies the device format, which is the format that the user has selected for the stream that flows between the audio engine and the audio endpoint device when the device operates in shared mode.</remarks>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDevice.ActivateNative(System.Guid,CSCore.Win32.CLSCTX,System.IntPtr,System.IntPtr@)">
            <summary>
            Creates a COM object with the specified interface.
            </summary>
            <param name="iid">The interface identifier. This parameter is a reference to a GUID that identifies the interface that the caller requests be activated. The caller will use this interface to communicate with the COM object.</param>
            <param name="context">The execution context in which the code that manages the newly created object will run. </param>
            <param name="activationParams">Use <see cref="F:System.IntPtr.Zero"/> as the default value. See http://msdn.microsoft.com/en-us/library/windows/desktop/dd371405%28v=vs.85%29.aspx for more details.</param>
            <param name="pinterface">A pointer variable into which the method writes the address of the interface specified by parameter <paramref name="iid"/>.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDevice.Activate(System.Guid,CSCore.Win32.CLSCTX,System.IntPtr)">
            <summary>
            Creates a COM object with the specified interface.
            </summary>
            <param name="iid">The interface identifier. This parameter is a reference to a GUID that identifies the interface that the caller requests be activated. The caller will use this interface to communicate with the COM object.</param>
            <param name="context">The execution context in which the code that manages the newly created object will run. </param>
            <param name="activationParams">Use <see cref="F:System.IntPtr.Zero"/> as the default value. See http://msdn.microsoft.com/en-us/library/windows/desktop/dd371405%28v=vs.85%29.aspx for more details.</param>
            <returns>A pointer variable into which the method writes the address of the interface specified by parameter <paramref name="iid"/>.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDevice.OpenPropertyStore(CSCore.CoreAudioAPI.StorageAccess)">
            <summary>
            Retrieves an interface to the device's property store.
            </summary>
            <param name="storageAccess">The storage-access mode. This parameter specifies whether to open the property store in read mode, write mode, or read/write mode.</param>
            <returns><see cref="P:CSCore.CoreAudioAPI.MMDevice.PropertyStore"/> for the <see cref="T:CSCore.CoreAudioAPI.MMDevice"/>.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDevice.OpenPropertyStoreNative(CSCore.CoreAudioAPI.StorageAccess,System.IntPtr@)">
            <summary>
            Retrieves an interface to the device's property store.
            </summary>
            <param name="storageAccess">The storage-access mode. This parameter specifies whether to open the property store in read mode, write mode, or read/write mode.</param>
            <param name="propertyStore">A pointer variable into which the method writes the address of the IPropertyStore interface of the device's property store.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDevice.GetIdNative(System.String@)">
            <summary>
            Retrieves an endpoint ID string that identifies the audio endpoint device.
            </summary>
            <param name="deviceid">The variable which will receive the id of the device.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDevice.GetStateNative(CSCore.CoreAudioAPI.DeviceState@)">
            <summary>
            Retrieves the current device state.
            </summary>
            <param name="state">The variable which will receive the <see cref="T:CSCore.CoreAudioAPI.DeviceState"/> of the device.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDevice.Dispose(System.Boolean)">
            <summary>
            Disposes the <see cref="T:CSCore.CoreAudioAPI.MMDevice"/> and its default property store (see <see cref="P:CSCore.CoreAudioAPI.MMDevice.PropertyStore"/> property).
            </summary>
            <param name="disposing">True to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDevice.ToString">
            <summary>
            Returns the <see cref="P:CSCore.CoreAudioAPI.MMDevice.FriendlyName"/> of the <see cref="T:CSCore.CoreAudioAPI.MMDevice"/>.
            </summary>
            <returns>The <see cref="P:CSCore.CoreAudioAPI.MMDevice.FriendlyName"/>.</returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.CoreAudioAPIException">
            <summary>
            CoreAudioAPI COM Exception
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.CoreAudioAPIException.Try(System.Int32,System.String,System.String)">
            <summary>
            Throws an <see cref="T:CSCore.CoreAudioAPI.CoreAudioAPIException"/> if the <paramref name="result"/> represents an error.
            </summary>
            <param name="result">The error code.</param>
            <param name="interfaceName">Name of the interface which contains the COM-function which returned the specified <paramref name="result"/>.</param>
            <param name="member">Name of the COM-function which returned the specified <paramref name="result"/>.</param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.CoreAudioAPIException.#ctor(System.Int32,System.String,System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.CoreAudioAPIException"/> class.
            </summary>
            <param name="result">Errorcode.</param>
            <param name="interfaceName">Name of the interface which contains the COM-function which returned the specified <paramref name="result"/>.</param>
            <param name="member">Name of the COM-function which returned the specified <paramref name="result"/>.</param>
        </member>
        <member name="T:CSCore.CoreAudioAPI.DataFlow">
            <summary>
            Defines constants that indicate the direction in which audio data flows between an audio endpoint device and an application.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.DataFlow.Render">
            <summary>
            Audio rendering stream. Audio data flows from the application to the audio endpoint device, which renders the stream.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.DataFlow.Capture">
            <summary>
            Audio capture stream. Audio data flows from the audio endpoint device that captures the stream, to the application.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.DataFlow.All">
            <summary>
            Audio rendering or capture stream. Audio data can flow either from the application to the audio endpoint device, or from the audio endpoint device to the application.
            </summary>
        </member>
        <member name="T:CSCore.CoreAudioAPI.DeviceState">
            <summary>
            Indicates the current state of an audio endpoint device. 
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.DeviceState.Active">
            <summary>
            The audio endpoint device is active. That is, the audio adapter that connects to the endpoint device is present and enabled. In addition, if the endpoint device plugs into a jack on the adapter, then the endpoint device is plugged in.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.DeviceState.Disabled">
            <summary>
            The audio endpoint device is disabled. The user has disabled the device in the Windows multimedia control panel, Mmsys.cpl. For more information, see Remarks.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.DeviceState.NotPresent">
            <summary>
            he audio endpoint device is not present because the audio adapter that connects to the endpoint device has been removed from the system, or the user has disabled the adapter device in Device Manager.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.DeviceState.UnPlugged">
            <summary>
            The audio endpoint device is unplugged. The audio adapter that contains the jack for the endpoint device is present and enabled, but the endpoint device is not plugged into the jack. Only a device with jack-presence detection can be in this state.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.DeviceState.All">
            <summary>
            Includes audio endpoint devices in all states—active, disabled, not present, and unplugged.
            </summary>
        </member>
        <member name="T:CSCore.CoreAudioAPI.IMMDevice">
            <summary>
            Encapsulates the generic features of a multimedia device resource. 
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IMMDevice.Activate(System.Guid,CSCore.Win32.CLSCTX,System.IntPtr,System.IntPtr@)">
            <summary>
            Creates a COM object with the specified interface.
            </summary>
            <param name="iid">The interface identifier. This parameter is a reference to a GUID that identifies the interface that the caller requests be activated. The caller will use this interface to communicate with the COM object.</param>
            <param name="clsctx">The execution context in which the code that manages the newly created object will run. </param>
            <param name="activationParams">Use <see cref="F:System.IntPtr.Zero"/> as the default value. See http://msdn.microsoft.com/en-us/library/windows/desktop/dd371405%28v=vs.85%29.aspx for more details.</param>
            <param name="pinterface">Pointer to a pointer variable into which the method writes the address of the interface specified by parameter <paramref name="iid"/>.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IMMDevice.OpenPropertyStore(CSCore.CoreAudioAPI.StorageAccess,System.IntPtr@)">
            <summary>
            Retrieves an interface to the device's property store.
            </summary>
            <param name="access">The storage-access mode. This parameter specifies whether to open the property store in read mode, write mode, or read/write mode.</param>
            <param name="propertystore">Pointer to a pointer variable into which the method writes the address of the IPropertyStore interface of the device's property store.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IMMDevice.GetId(System.String@)">
            <summary>
            Retrieves an endpoint ID string that identifies the audio endpoint device.
            </summary>
            <param name="deviceId">The variable which will receive the id of the device.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IMMDevice.GetState(CSCore.CoreAudioAPI.DeviceState@)">
            <summary>
            Retrieves the current device state.
            </summary>
            <param name="state">The variable which will receive the <see cref="T:CSCore.CoreAudioAPI.DeviceState"/> of the device.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.IMMDeviceCollection">
            <summary>
            Represents a collection of multimedia device resources.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IMMDeviceCollection.GetCount(System.Int32@)">
            <summary>
            The <see cref="M:CSCore.CoreAudioAPI.IMMDeviceCollection.GetCount(System.Int32@)"/> method retrieves a count of the devices in the device collection.
            </summary>
            <param name="deviceCount">Variable into which the method writes the number of devices in the device collection.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IMMDeviceCollection.Item(System.Int32,CSCore.CoreAudioAPI.IMMDevice@)">
            <summary>
            The <see cref="M:CSCore.CoreAudioAPI.IMMDeviceCollection.Item(System.Int32,CSCore.CoreAudioAPI.IMMDevice@)"/> method retrieves a pointer to the specified item in the device collection.
            </summary>
            <param name="deviceIndex">The device number. If the collection contains n devices, the devices are numbered 0 to n– 1.</param>
            <param name="device">The <see cref="T:CSCore.CoreAudioAPI.IMMDevice"/> object of the specified item in the device collection.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.IMMDeviceEnumerator">
            <summary>
            Provides methods for enumerating multimedia device resources.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IMMDeviceEnumerator.EnumAudioEndpoints(CSCore.CoreAudioAPI.DataFlow,CSCore.CoreAudioAPI.DeviceState,CSCore.CoreAudioAPI.IMMDeviceCollection@)">
            <summary>
            Generates a collection of audio endpoint devices that meet the specified criteria.
            </summary>
            <param name="dataFlow">The data-flow direction for the endpoint device.</param>
            <param name="stateMask">The state or states of the endpoints that are to be included in the collection.</param>
            <param name="deviceCollection">Pointer to a pointer variable into which the method writes the address of the <see cref="T:CSCore.CoreAudioAPI.MMDeviceCollection"/> COM object of the device-collection object.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IMMDeviceEnumerator.GetDefaultAudioEndpoint(CSCore.CoreAudioAPI.DataFlow,CSCore.CoreAudioAPI.Role,CSCore.CoreAudioAPI.IMMDevice@)">
            <summary>
            The <see cref="M:CSCore.CoreAudioAPI.IMMDeviceEnumerator.GetDefaultAudioEndpoint(CSCore.CoreAudioAPI.DataFlow,CSCore.CoreAudioAPI.Role,CSCore.CoreAudioAPI.IMMDevice@)"/> method retrieves the default audio endpoint for the specified data-flow direction and role.
            </summary>
            <param name="dataFlow">The data-flow direction for the endpoint device.</param>
            <param name="role">The role of the endpoint device.</param>
            <param name="device">Pointer to a pointer variable into which the method writes the address of the <see cref="T:CSCore.CoreAudioAPI.MMDevice"/> COM object of the endpoint object for the default audio endpoint device. </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IMMDeviceEnumerator.GetDevice(System.String,CSCore.CoreAudioAPI.IMMDevice@)">
            <summary>
            Retrieves an audio endpoint device that is identified by an endpoint ID string.
            </summary>
            <param name="id">Endpoint ID. The caller typically obtains this string from the <see cref="P:CSCore.CoreAudioAPI.MMDevice.DeviceID"/> property or any method of the <see cref="T:CSCore.CoreAudioAPI.IMMNotificationClient"/>.</param>
            <param name="device">Pointer to a pointer variable into which the method writes the address of the IMMDevice interface for the specified device. Through this method, the caller obtains a counted reference to the interface.</param>
            <returns>HREUSLT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IMMDeviceEnumerator.RegisterEndpointNotificationCallback(CSCore.CoreAudioAPI.IMMNotificationClient)">
            <summary>
            Registers a client's notification callback interface.
            </summary>
            <param name="notificationClient">Implementation of the <see cref="T:CSCore.CoreAudioAPI.IMMNotificationClient"/> which is should receive the notificaitons.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.IMMDeviceEnumerator.UnregisterEndpointNotificationCallback(CSCore.CoreAudioAPI.IMMNotificationClient)">
            <summary>
            Deletes the registration of a notification interface that the client registered in a previous call to the <see cref="M:CSCore.CoreAudioAPI.IMMDeviceEnumerator.RegisterEndpointNotificationCallback(CSCore.CoreAudioAPI.IMMNotificationClient)"/> method.
            </summary>
            <param name="notificationClient">Implementation of the <see cref="T:CSCore.CoreAudioAPI.IMMNotificationClient"/> which should be unregistered from any notifications.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="T:CSCore.CoreAudioAPI.Role">
            <summary>
            Defines constants that indicate the role that the system has assigned to an audio endpoint device.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.Role.Console">
            <summary>
            Games, system notification sounds, and voice commands.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.Role.Multimedia">
            <summary>
            Music, movies, narration, and live music recording.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.Role.Communications">
            <summary>
            Voice communications (talking to another person).
            </summary>
        </member>
        <member name="T:CSCore.CoreAudioAPI.StorageAccess">
            <summary>
            Specifies how to open a property store.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.StorageAccess.Read">
            <summary>
            Readable only.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.StorageAccess.Write">
            <summary>
            Writeable but not readable.
            </summary>
        </member>
        <member name="F:CSCore.CoreAudioAPI.StorageAccess.ReadWrite">
            <summary>
            Read- and writeable.
            </summary>
        </member>
        <member name="T:CSCore.CoreAudioAPI.MMDeviceEnumerator">
            <summary>
            Provides methods for enumerating multimedia device resources.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.DefaultAudioEndpoint(CSCore.CoreAudioAPI.DataFlow,CSCore.CoreAudioAPI.Role)">
            <summary>
            Returns the default audio endpoint for the specified data-flow direction and role.
            </summary>
            <param name="dataFlow">The data-flow direction for the endpoint device.</param>
            <param name="role">The role of the endpoint device.</param>
            <returns><see cref="T:CSCore.CoreAudioAPI.MMDevice"/> instance of the endpoint object for the default audio endpoint device.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.TryGetDefaultAudioEndpoint(CSCore.CoreAudioAPI.DataFlow,CSCore.CoreAudioAPI.Role)">
            <summary>
            Returns the default audio endpoint for the specified data-flow direction and role. If no device is available the <see cref="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.TryGetDefaultAudioEndpoint(CSCore.CoreAudioAPI.DataFlow,CSCore.CoreAudioAPI.Role)"/> method returns null.
            </summary>
            <param name="dataFlow">The data-flow direction for the endpoint device.</param>
            <param name="role">The role of the endpoint device.</param>
            <returns><see cref="T:CSCore.CoreAudioAPI.MMDevice"/> instance of the endpoint object for the default audio endpoint device. If no device is available the <see cref="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.TryGetDefaultAudioEndpoint(CSCore.CoreAudioAPI.DataFlow,CSCore.CoreAudioAPI.Role)"/> method returns null.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.EnumerateDevices(CSCore.CoreAudioAPI.DataFlow)">
            <summary>
            Generates a collection of all active audio endpoint devices that meet the specified criteria.
            </summary>
            <param name="dataFlow">The data-flow direction for the endpoint device.</param>
            <returns><see cref="T:CSCore.CoreAudioAPI.MMDeviceCollection"/> which contains the enumerated devices.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.EnumerateDevices(CSCore.CoreAudioAPI.DataFlow,CSCore.CoreAudioAPI.DeviceState)">
            <summary>
            Generates a collection of audio endpoint devices that meet the specified criteria.
            </summary>
            <param name="dataFlow">The data-flow direction for the endpoint device.</param>
            <param name="stateMask">The state or states of the endpoints that are to be included in the collection.</param>
            <returns><see cref="T:CSCore.CoreAudioAPI.MMDeviceCollection"/> which contains the enumerated devices.</returns>
        </member>
        <member name="E:CSCore.CoreAudioAPI.MMDeviceEnumerator.DeviceStateChanged">
            <summary>
            Occurs when the state of an audio endpoint device has changed.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.MMDeviceEnumerator.DeviceAdded">
            <summary>
            Occurs when a new audio endpoint device has been added.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.MMDeviceEnumerator.DeviceRemoved">
            <summary>
            Occurs when an audio endpoint device has been removed.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.MMDeviceEnumerator.DefaultDeviceChanged">
            <summary>
            Occurs when the default audio endpoint device for a particular device role has changed.
            </summary>
        </member>
        <member name="E:CSCore.CoreAudioAPI.MMDeviceEnumerator.DevicePropertyChanged">
            <summary>
            Occurs when the value of a property belonging to an audio endpoint device has changed.
            </summary>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.CoreAudioAPI.MMDeviceEnumerator"/> class.
            </summary>
        </member>
        <member name="P:CSCore.CoreAudioAPI.MMDeviceEnumerator.Item(System.String)">
            <summary>
            Gets the <see cref="T:CSCore.CoreAudioAPI.MMDevice"/> with the specified device id.
            </summary>
            <value>
            The <see cref="T:CSCore.CoreAudioAPI.MMDevice"/>.
            </value>
            <param name="deviceId">The device identifier.</param>
            <returns></returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.GetDefaultAudioEndpoint(CSCore.CoreAudioAPI.DataFlow,CSCore.CoreAudioAPI.Role)">
            <summary>
            Returns the default audio endpoint for the specified data-flow direction and role.
            </summary>
            <param name="dataFlow">The data-flow direction for the endpoint device.</param>
            <param name="role">The role of the endpoint device.</param>
            <returns><see cref="T:CSCore.CoreAudioAPI.MMDevice"/> instance of the endpoint object for the default audio endpoint device.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.GetDefaultAudioEndpointNative(CSCore.CoreAudioAPI.DataFlow,CSCore.CoreAudioAPI.Role,System.IntPtr@)">
            <summary>
            The <see cref="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.GetDefaultAudioEndpoint(CSCore.CoreAudioAPI.DataFlow,CSCore.CoreAudioAPI.Role)"/> method retrieves the default audio endpoint for the specified data-flow direction and role.
            </summary>
            <param name="dataFlow">The data-flow direction for the endpoint device.</param>
            <param name="role">The role of the endpoint device.</param>
            <param name="device">A pointer variable into which the method writes the address of the <see cref="T:CSCore.CoreAudioAPI.MMDevice"/> COM object of the endpoint object for the default audio endpoint device. </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.EnumAudioEndpoints(CSCore.CoreAudioAPI.DataFlow,CSCore.CoreAudioAPI.DeviceState)">
            <summary>
            Generates a collection of audio endpoint devices that meet the specified criteria.
            </summary>
            <param name="dataFlow">The data-flow direction for the endpoint device.</param>
            <param name="stateMask">The state or states of the endpoints that are to be included in the collection.</param>
            <returns><see cref="T:CSCore.CoreAudioAPI.MMDeviceCollection"/> which contains the enumerated devices.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.EnumAudioEndpointsNative(CSCore.CoreAudioAPI.DataFlow,CSCore.CoreAudioAPI.DeviceState,System.IntPtr@)">
            <summary>
            Generates a collection of audio endpoint devices that meet the specified criteria.
            </summary>
            <param name="dataFlow">The data-flow direction for the endpoint device.</param>
            <param name="stateMask">The state or states of the endpoints that are to be included in the collection.</param>
            <param name="collection">A pointer variable into which the method writes the address of the <see cref="T:CSCore.CoreAudioAPI.MMDeviceCollection"/> COM object of the device-collection object.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.GetDevice(System.String)">
            <summary>
            Retrieves an audio endpoint device that is identified by an endpoint ID string.
            </summary>
            <param name="id">Endpoint ID. The caller typically obtains this string from the <see cref="P:CSCore.CoreAudioAPI.MMDevice.DeviceID"/> property or any method of the <see cref="T:CSCore.CoreAudioAPI.IMMNotificationClient"/>.</param>
            <returns><see cref="T:CSCore.CoreAudioAPI.MMDevice"/> instance for specified device.</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.GetDeviceNative(System.String,System.IntPtr@)">
            <summary>
            Retrieves an audio endpoint device that is identified by an endpoint ID string.
            </summary>
            <param name="id">Endpoint ID. The caller typically obtains this string from the <see cref="P:CSCore.CoreAudioAPI.MMDevice.DeviceID"/> property or any method of the <see cref="T:CSCore.CoreAudioAPI.IMMNotificationClient"/>.</param>
            <param name="device">A pointer variable into which the method writes the address of the IMMDevice interface for the specified device. Through this method, the caller obtains a counted reference to the interface.</param>
            <returns>HREUSLT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.RegisterEndpointNotificationCallback(CSCore.CoreAudioAPI.IMMNotificationClient)">
            <summary>
            Registers a client's notification callback interface.
            </summary>
            <param name="notificationClient">Implementation of the <see cref="T:CSCore.CoreAudioAPI.IMMNotificationClient"/> which is should receive the notificaitons.</param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.RegisterEndpointNotificationCallbackNative(CSCore.CoreAudioAPI.IMMNotificationClient)">
            <summary>
            Registers a client's notification callback interface.
            </summary>
            <param name="notificationClient">Implementation of the <see cref="T:CSCore.CoreAudioAPI.IMMNotificationClient"/> which is should receive the notificaitons.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.UnregisterEndpointNotificationCallback(CSCore.CoreAudioAPI.IMMNotificationClient)">
            <summary>
            Deletes the registration of a notification interface that the client registered in a previous call to the <see cref="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.RegisterEndpointNotificationCallback(CSCore.CoreAudioAPI.IMMNotificationClient)"/> method.
            </summary>
            <param name="notificationClient">Implementation of the <see cref="T:CSCore.CoreAudioAPI.IMMNotificationClient"/> which should be unregistered from any notifications.</param>
        </member>
        <member name="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.UnregisterEndpointNotificationCallbackNative(CSCore.CoreAudioAPI.IMMNotificationClient)">
            <summary>
            Deletes the registration of a notification interface that the client registered in a previous call to the <see cref="M:CSCore.CoreAudioAPI.MMDeviceEnumerator.RegisterEndpointNotificationCallback(CSCore.CoreAudioAPI.IMMNotificationClient)"/> method.
            </summary>
            <param name="notificationClient">Implementation of the <see cref="T:CSCore.CoreAudioAPI.IMMNotificationClient"/> which should be unregistered from any notifications.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="T:CSCore.DirectSound.DirectSound8">
            <summary>
            Is used to create buffer objects, manage devices, and set up the environment. This object supersedes <see cref="T:CSCore.DirectSound.DirectSoundBase"/> and adds new methods.
            Obtain a instance by calling the <see cref="M:CSCore.DirectSound.DirectSoundBase.Create8(System.Guid)"/> method.
            </summary>
        </member>
        <member name="M:CSCore.DirectSound.DirectSound8.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DirectSound.DirectSound8"/> class.
            </summary>
            <param name="directSound">The native pointer of the <see cref="T:CSCore.DirectSound.DirectSound8"/> COM object.</param>
        </member>
        <member name="M:CSCore.DirectSound.DirectSound8.VerifyCertificationNative(CSCore.DirectSound.DSCertification@)">
            <summary>
            Ascertains whether the device driver is certified for DirectX. 
            </summary>
            <param name="certified">Receives a value which indicates whether the device driver is certified for DirectX.</param>
            <returns>DSResult</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSound8.VerifyCertification">
            <summary>
            Ascertains whether the device driver is certified for DirectX. 
            </summary>
            <returns>A value which indicates whether the device driver is certified for DirectX. On emulated devices, the method returns <see cref="F:CSCore.DirectSound.DSCertification.Unsupported"/>.</returns>
        </member>
        <member name="T:CSCore.DirectSound.DirectSoundBase">
            <summary>
            Used to create buffer objects, manage devices, and set up the environment.
            </summary>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBase.Create(System.Guid)">
            <summary>
            Returns a new instance of the <see cref="N:CSCore.DirectSound"/> class.
            </summary>
            <param name="device">The device to use for the initialization.</param>
            <returns>The new instance of the <see cref="N:CSCore.DirectSound"/> class.</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBase.Create8(System.Guid)">
            <summary>
            Returns a new instance of the <see cref="T:CSCore.DirectSound.DirectSound8"/> class.
            </summary>
            <param name="device">The device to use for the initialization.</param>
            <returns>The new instance of the <see cref="T:CSCore.DirectSound.DirectSound8"/> class.</returns>
        </member>
        <member name="P:CSCore.DirectSound.DirectSoundBase.Caps">
            <summary>
            Gets the capabilities.
            </summary>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBase.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DirectSound.DirectSoundBase"/> class.
            </summary>
            <param name="directSound">The native pointer of the DirectSound COM object.</param>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBase.SupportsFormat(CSCore.WaveFormat)">
            <summary>
            Checks whether the specified <paramref name="format"/> is supported.
            </summary>
            <param name="format">The wave format.</param>
            <returns>A value indicating whether the specified <paramref name="format"/> is supported. If true, the <paramref name="format"/> is supported; Otherwise false.</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBase.SetCooperativeLevel(System.IntPtr,CSCore.DirectSound.DSCooperativeLevelType)">
            <summary>
            Sets the cooperative level of the application for this sound device. 
            </summary>
            <param name="hWnd">Handle to the application window.</param>
            <param name="level">The requested level.</param>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBase.SetCooperativeLevelNative(System.IntPtr,CSCore.DirectSound.DSCooperativeLevelType)">
            <summary>
            Sets the cooperative level of the application for this sound device. 
            </summary>
            <param name="hWnd">Handle to the application window.</param>
            <param name="level">The requested level.</param>
            <returns>DSResult</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBase.CreateSoundBuffer(CSCore.DirectSound.DSBufferDescription,System.IntPtr)">
            <summary>
            Creates a sound buffer object to manage audio samples. 
            </summary>
            <param name="bufferDesc">A <see cref="T:CSCore.DirectSound.DSBufferDescription"/> structure that describes the sound buffer to create.</param>
            <param name="pUnkOuter">Must be <see cref="F:System.IntPtr.Zero"/>.</param>
            <returns>A variable that receives the IDirectSoundBuffer interface of the new buffer object.</returns>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.idirectsound8.idirectsound8.createsoundbuffer%28v=vs.85%29.aspx"/>.</remarks>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBase.CreateSoundBufferNative(CSCore.DirectSound.DSBufferDescription,System.IntPtr@,System.IntPtr)">
            <summary>
            Creates a sound buffer object to manage audio samples. 
            </summary>
            <param name="bufferDesc">A <see cref="T:CSCore.DirectSound.DSBufferDescription"/> structure that describes the sound buffer to create.</param>
            <param name="pUnkOuter">Must be <see cref="F:System.IntPtr.Zero"/>.</param>
            <param name="soundBuffer">A variable that receives the IDirectSoundBuffer interface of the new buffer object.</param>
            <returns>DSResult</returns>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.idirectsound8.idirectsound8.createsoundbuffer%28v=vs.85%29.aspx"/>.</remarks>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBase.GetCapsNative(CSCore.DirectSound.DirectSoundCapabilities@)">
            <summary>
            Retrieves the capabilities of the hardware device that is represented by the device object. 
            <seealso cref="P:CSCore.DirectSound.DirectSoundBase.Caps"/>
            </summary>
            <param name="caps">Receives the capabilities of this sound device.</param>
            <returns>DSResult</returns>
            <remarks>Use the <see cref="P:CSCore.DirectSound.DirectSoundBase.Caps"/> property instead.</remarks>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBase.DuplicateSoundBuffer``1(``0)">
            <summary>
            Creates a new secondary buffer that shares the original buffer's memory.
            </summary>
            <typeparam name="T">Type of the buffer to duplicate.</typeparam>
            <param name="bufferOriginal">The buffer to duplicate.</param>
            <returns>The duplicated buffer.</returns>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.idirectsound8.idirectsound8.duplicatesoundbuffer(v=vs.85).aspx"/>.</remarks>        
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBase.DuplicateSoundBufferNative(System.IntPtr,System.IntPtr@)">
            <summary>
            Creates a new secondary buffer that shares the original buffer's memory. 
            </summary>
            <param name="bufferOriginal">Address of the IDirectSoundBuffer or IDirectSoundBuffer8 interface of the buffer to duplicate.</param>
            <param name="duplicatedBuffer">Address of a variable that receives the IDirectSoundBuffer interface pointer for the new buffer.</param>
            <returns>DSResult</returns>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.idirectsound8.idirectsound8.duplicatesoundbuffer(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBase.CompactNative">
            <summary>
            Has no effect. See remarks.
            </summary>
            <remarks>This method was formerly used for compacting the on-board memory of ISA sound cards.</remarks>
            <returns>DSResult</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBase.Compact">
            <summary>
            Has no effect. See remarks.
            </summary>
            <remarks>This method was formerly used for compacting the on-board memory of ISA sound cards.</remarks>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBase.GetSpeakerConfigNative(CSCore.DirectSound.DSSpeakerConfigurations@)">
            <summary>
            Retrieves the speaker configuration. 
            </summary>
            <param name="speakerConfig">Retrieves the speaker configuration.</param>
            <returns>DSResult</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBase.GetSpeakerConfig">
            <summary>
            Retrieves the speaker configuration. 
            </summary>
            <returns>The speaker configuration.</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBase.SetSpeakerConfigNative(CSCore.DirectSound.DSSpeakerConfigurations)">
            <summary>
            Specifies the speaker configuration of the device. 
            </summary>
            <param name="speakerConfig">The speaker configuration.</param>
            <returns>DSResult</returns>
            <remarks>
            In Windows Vista and later versions of Windows, <see cref="M:CSCore.DirectSound.DirectSoundBase.GetSpeakerConfig"/> is a NOP. For Windows Vista and later versions, the speaker configuration is a system setting that should not be modified by an application. End users can set the speaker configuration through control panels.
            For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.idirectsound8.idirectsound8.setspeakerconfig(v=vs.85).aspx"/>.
            </remarks>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBase.SetSpeakerConfig(CSCore.DirectSound.DSSpeakerConfigurations)">
            <summary>
            Specifies the speaker configuration of the device. 
            </summary>
            <param name="speakerConfig">The speaker configuration.</param>
            <remarks>
            In Windows Vista and later versions of Windows, <see cref="M:CSCore.DirectSound.DirectSoundBase.GetSpeakerConfig"/> is a NOP. For Windows Vista and later versions, the speaker configuration is a system setting that should not be modified by an application. End users can set the speaker configuration through control panels.
            For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.idirectsound8.idirectsound8.setspeakerconfig(v=vs.85).aspx"/>.
            </remarks>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBase.InitializeNative(System.Nullable{System.Guid})">
            <summary>
            Initializes a device object that was created by using the CoCreateInstance function. 
            </summary>
            <param name="device">The globally unique identifier (GUID) specifying the sound driver to which this device object binds. Pass null to select the primary sound driver.</param>
            <returns>DSResult</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBase.Initialize(System.Nullable{System.Guid})">
            <summary>
            Initializes a device object that was created by using the CoCreateInstance function. 
            </summary>
            <param name="device">The globally unique identifier (GUID) specifying the sound driver to which this device object binds. Pass null to select the primary sound driver.</param>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBase.CombineSpeakerConfiguration(CSCore.DirectSound.DSSpeakerConfigurations,CSCore.DirectSound.DSSpeakerGeometry)">
            <summary>
            Combines a <see cref="T:CSCore.DirectSound.DSSpeakerGeometry"/> value with a <see cref="T:CSCore.DirectSound.DSSpeakerConfigurations"/> value.
            </summary>
            <param name="speakerConfiguration">Must be <see cref="F:CSCore.DirectSound.DSSpeakerConfigurations.Stereo"/>.</param>
            <param name="speakerGeometry">The <see cref="T:CSCore.DirectSound.DSSpeakerGeometry"/> value to combine with the <paramref name="speakerConfiguration"/>.</param>
            <returns>Combination out of the <paramref name="speakerConfiguration"/> and the <paramref name="speakerGeometry"/> value.</returns>
            <exception cref="T:System.ArgumentException">Must be stereo.; speakerConfiguration</exception>
        </member>
        <member name="T:CSCore.DirectSound.DirectSoundBuffer">
            <summary>
            Used to manage sound buffers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundBuffer.PanLeft">
            <summary>
            Left only.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundBuffer.PanCenter">
            <summary>
            50% left, 50% right.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundBuffer.PanRight">
            <summary>
            Right only.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundBuffer.FrequencyOriginal">
            <summary>
            The default frequency. For more information, see <see cref="M:CSCore.DirectSound.DirectSoundBuffer.SetFrequency(System.Int32)"/>.
            </summary>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DirectSound.DirectSoundBuffer"/> class.
            </summary>
            <param name="ptr">The native pointer of the COM object.</param>
        </member>
        <member name="P:CSCore.DirectSound.DirectSoundBuffer.BufferCaps">
            <summary>
            Gets the capabilities of the buffer object.
            </summary>
        </member>
        <member name="P:CSCore.DirectSound.DirectSoundBuffer.Status">
            <summary>
            Gets the status of the sound buffer.
            </summary>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.GetCapsNative(CSCore.DirectSound.DSBufferCaps@)">
            <summary>
            Retrieves the capabilities of the buffer object. 
            </summary>
            <param name="bufferCaps">Receives the capabilities of this sound buffer.</param>
            <returns>DSResult</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.GetCaps">
            <summary>
            Retrieves the capabilities of the buffer object. 
            </summary>
            <returns>The capabilities of this sound buffer.</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.Play(CSCore.DirectSound.DSBPlayFlags)">
            <summary>
            Causes the sound buffer to play, starting at the play cursor. 
            </summary>
            <param name="flags">Flags specifying how to play the buffer.</param>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.Play(CSCore.DirectSound.DSBPlayFlags,System.Int32)">
            <summary>
            Causes the sound buffer to play, starting at the play cursor. 
            </summary>
            <param name="flags">Flags specifying how to play the buffer.</param>
            <param name="priority">Priority for the sound, used by the voice manager when assigning hardware mixing resources. The lowest priority is 0, and the highest priority is 0xFFFFFFFF. If the buffer was not created with the <see cref="F:CSCore.DirectSound.DSBufferCapsFlags.LocDefer"/> flag, this value must be 0.</param>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.PlayNative(CSCore.DirectSound.DSBPlayFlags,System.Int32)">
            <summary>
            Causes the sound buffer to play, starting at the play cursor. 
            </summary>
            <param name="flags">Flags specifying how to play the buffer.</param>
            <param name="priority">Priority for the sound, used by the voice manager when assigning hardware mixing resources. The lowest priority is 0, and the highest priority is 0xFFFFFFFF. If the buffer was not created with the <see cref="F:CSCore.DirectSound.DSBufferCapsFlags.LocDefer"/> flag, this value must be 0.</param>        
            <returns>DSResult</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.Stop">
            <summary>
            Causes the sound buffer to stop playing. 
            </summary>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.idirectsoundbuffer8.idirectsoundbuffer8.stop(v=vs.85).aspx"/>.</remarks>        
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.StopNative">
            <summary>
            Causes the sound buffer to stop playing. 
            </summary>
            <returns>DSResult</returns>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.idirectsoundbuffer8.idirectsoundbuffer8.stop(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.Restore">
            <summary>
            Restores the memory allocation for a lost sound buffer. 
            </summary>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.idirectsoundbuffer8.idirectsoundbuffer8.restore(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.RestoreNative">
            <summary>
            Restores the memory allocation for a lost sound buffer. 
            </summary>
            <returns>DSResult</returns>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.idirectsoundbuffer8.idirectsoundbuffer8.restore(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.LockNative(System.Int32,System.Int32,System.IntPtr@,System.Int32@,System.IntPtr@,System.Int32@,CSCore.DirectSound.DSBLock)">
            <summary>
            Readies all or part of the buffer for a data write and returns pointers to which data can be written. 
            </summary>
            <param name="offset">Offset, in bytes, from the start of the buffer to the point where the lock begins. This parameter is ignored if <see cref="F:CSCore.DirectSound.DSBLock.FromWriteCursor"/> is specified in the <paramref name="lockFlags"/> parameter.</param>
            <param name="bytes">Size, in bytes, of the portion of the buffer to lock. The buffer is conceptually circular, so this number can exceed the number of bytes between <paramref name="offset"/> and the end of the buffer.</param>
            <param name="audioPtr1">Receives a pointer to the first locked part of the buffer.</param>
            <param name="audioBytes1">Receives the number of bytes in the block at <paramref name="audioPtr1"/>. If this value is less than <paramref name="bytes"/>, the lock has wrapped and <paramref name="audioPtr2"/> points to a second block of data at the beginning of the buffer.</param>
            <param name="audioPtr2">Receives a pointer to the second locked part of the capture buffer. If <see cref="F:System.IntPtr.Zero"/> is returned, the <paramref name="audioPtr1"/> parameter points to the entire locked portion of the capture buffer.</param>
            <param name="audioBytes2">Receives the number of bytes in the block at <paramref name="audioPtr2"/>. If <paramref name="audioPtr2"/> is <see cref="F:System.IntPtr.Zero"/>, this value is zero.</param>
            <param name="lockFlags">Flags modifying the lock event.</param>
            <returns>DSResult</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.Lock(System.Int32,System.Int32,System.IntPtr@,System.Int32@,System.IntPtr@,System.Int32@,CSCore.DirectSound.DSBLock)">
            <summary>
            Readies all or part of the buffer for a data write and returns pointers to which data can be written. 
            </summary>
            <param name="offset">Offset, in bytes, from the start of the buffer to the point where the lock begins. This parameter is ignored if <see cref="F:CSCore.DirectSound.DSBLock.FromWriteCursor"/> is specified in the <paramref name="lockFlags"/> parameter.</param>
            <param name="bytes">Size, in bytes, of the portion of the buffer to lock. The buffer is conceptually circular, so this number can exceed the number of bytes between <paramref name="offset"/> and the end of the buffer.</param>
            <param name="audioPtr1">Receives a pointer to the first locked part of the buffer.</param>
            <param name="audioBytes1">Receives the number of bytes in the block at <paramref name="audioPtr1"/>. If this value is less than <paramref name="bytes"/>, the lock has wrapped and <paramref name="audioPtr2"/> points to a second block of data at the beginning of the buffer.</param>
            <param name="audioPtr2">Receives a pointer to the second locked part of the capture buffer. If <see cref="F:System.IntPtr.Zero"/> is returned, the <paramref name="audioPtr1"/> parameter points to the entire locked portion of the capture buffer.</param>
            <param name="audioBytes2">Receives the number of bytes in the block at <paramref name="audioPtr2"/>. If <paramref name="audioPtr2"/> is <see cref="F:System.IntPtr.Zero"/>, this value is zero.</param>
            <param name="lockFlags">Flags modifying the lock event.</param>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.UnlockNative(System.IntPtr,System.Int32,System.IntPtr,System.Int32)">
            <summary>
            Releases a locked sound buffer. 
            </summary>
            <param name="audioPtr1">Address of the value retrieved in the <c>audioPtr1</c> parameter of the <see cref="M:CSCore.DirectSound.DirectSoundBuffer.Lock(System.Int32,System.Int32,System.IntPtr@,System.Int32@,System.IntPtr@,System.Int32@,CSCore.DirectSound.DSBLock)"/> method.</param>
            <param name="audioBytes1">Number of bytes written to the portion of the buffer at <c>audioPtr1</c>.</param>
            <param name="audioPtr2">Address of the value retrieved in the <c>audioPtr2</c> parameter of the <see cref="M:CSCore.DirectSound.DirectSoundBuffer.Lock(System.Int32,System.Int32,System.IntPtr@,System.Int32@,System.IntPtr@,System.Int32@,CSCore.DirectSound.DSBLock)"/> method.</param>
            <param name="audioBytes2">Number of bytes written to the portion of the buffer at <c>audioPtr2</c>.</param>
            <returns>DSResult</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.Unlock(System.IntPtr,System.Int32,System.IntPtr,System.Int32)">
            <summary>
            Releases a locked sound buffer. 
            </summary>
            <param name="audioPtr1">Address of the value retrieved in the <c>audioPtr1</c> parameter of the <see cref="M:CSCore.DirectSound.DirectSoundBuffer.Lock(System.Int32,System.Int32,System.IntPtr@,System.Int32@,System.IntPtr@,System.Int32@,CSCore.DirectSound.DSBLock)"/> method.</param>
            <param name="audioBytes1">Number of bytes written to the portion of the buffer at <c>audioPtr1</c>.</param>
            <param name="audioPtr2">Address of the value retrieved in the <c>audioPtr2</c> parameter of the <see cref="M:CSCore.DirectSound.DirectSoundBuffer.Lock(System.Int32,System.Int32,System.IntPtr@,System.Int32@,System.IntPtr@,System.Int32@,CSCore.DirectSound.DSBLock)"/> method.</param>
            <param name="audioBytes2">Number of bytes written to the portion of the buffer at <c>audioPtr2</c>.</param>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.GetCurrentPositionNative(System.Int32@,System.Int32@)">
            <summary>
            Retrieves the position of the play and write cursors in the sound buffer. 
            </summary>
            <param name="playCursorPosition">Receives the offset, in bytes, of the play cursor.</param>
            <param name="writeCursorPosition">Receives the offset, in bytes, of the write cursor.</param>
            <returns>DSResult</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.GetCurrentPosition(System.Int32@,System.Int32@)">
            <summary>
            Retrieves the position of the play and write cursors in the sound buffer. 
            </summary>
            <param name="playCursorPosition">Receives the offset, in bytes, of the play cursor.</param>
            <param name="writeCursorPosition">Receives the offset, in bytes, of the write cursor.</param>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.SetCurrentPosition(System.Int32)">
            <summary>
            Sets the position of the play cursor, which is the point at which the next byte of data is read from the buffer. 
            </summary>
            <param name="playPosition">Offset of the play cursor, in bytes, from the beginning of the buffer.</param>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.SetCurrentPositionNative(System.Int32)">
            <summary>
            Sets the position of the play cursor, which is the point at which the next byte of data is read from the buffer. 
            </summary>
            <param name="playPosition">Offset of the play cursor, in bytes, from the beginning of the buffer.</param>
            <returns>DSResult</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.InitializeNative(CSCore.DirectSound.DirectSoundBase,CSCore.DirectSound.DSBufferDescription)">
            <summary>
            Initializes a sound buffer object if it has not yet been initialized. 
            </summary>
            <param name="directSound">The device object associated with this buffer.</param>
            <param name="bufferDescription">A <see cref="T:CSCore.DirectSound.DSBufferDescription"/> structure that contains the values used to initialize this sound buffer.</param>
            <returns>DSResult</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.Initialize(CSCore.DirectSound.DirectSoundBase,CSCore.DirectSound.DSBufferDescription)">
            <summary>
            Initializes a sound buffer object if it has not yet been initialized. 
            </summary>
            <param name="directSound">The device object associated with this buffer.</param>
            <param name="bufferDescription">A <see cref="T:CSCore.DirectSound.DSBufferDescription"/> structure that contains the values used to initialize this sound buffer.</param>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.GetStatusNative(CSCore.DirectSound.DSBStatusFlags@)">
            <summary>
            Retrieves the status of the sound buffer. 
            <seealso cref="P:CSCore.DirectSound.DirectSoundBuffer.Status"/>        
            </summary>
            <param name="status">Receives the status of the sound buffer.</param>
            <returns>DSResult</returns>
            <remarks>Use the <see cref="P:CSCore.DirectSound.DirectSoundBuffer.Status"/> property instead.</remarks>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.SetFrequencyNative(System.Int32)">
            <summary>
            Sets the frequency at which the audio samples are played. 
            </summary>
            <param name="frequency">Frequency, in hertz (Hz), at which to play the audio samples. A value of <see cref="F:CSCore.DirectSound.DirectSoundBuffer.FrequencyOriginal"/> resets the frequency to the default value of the buffer format.</param>
            <returns>DSResult</returns>
            <remarks>Before setting the frequency, you should ascertain whether the frequency is supported by checking the <see cref="F:CSCore.DirectSound.DirectSoundCapabilities.MinSecondarySampleRate"/> and <see cref="F:CSCore.DirectSound.DirectSoundCapabilities.MaxSecondarySampleRate"/> members of the <see cref="T:CSCore.DirectSound.DirectSoundCapabilities"/> structure for the device. Some operating systems do not support frequencies greater than 100,000 Hz.</remarks>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.SetFrequency(System.Int32)">
            <summary>
            Sets the frequency at which the audio samples are played. 
            </summary>
            <param name="frequency">Frequency, in hertz (Hz), at which to play the audio samples. A value of <see cref="F:CSCore.DirectSound.DirectSoundBuffer.FrequencyOriginal"/> resets the frequency to the default value of the buffer format.</param>
            <remarks>Before setting the frequency, you should ascertain whether the frequency is supported by checking the <see cref="F:CSCore.DirectSound.DirectSoundCapabilities.MinSecondarySampleRate"/> and <see cref="F:CSCore.DirectSound.DirectSoundCapabilities.MaxSecondarySampleRate"/> members of the <see cref="T:CSCore.DirectSound.DirectSoundCapabilities"/> structure for the device. Some operating systems do not support frequencies greater than 100,000 Hz.</remarks>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.GetFrequencyNative(System.Int32@)">
            <summary>
            Retrieves the frequency, in samples per second, at which the buffer is playing. 
            </summary>
            <param name="frequency">A variable that receives the frequency at which the audio buffer is being played, in hertz.</param>
            <returns>DSResult</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.GetFrequency">
            <summary>
            Gets the frequency, in samples per second, at which the buffer is playing. 
            </summary>
            <returns>The frequency at which the audio buffer is being played, in hertz.</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.SetPanNative(System.Int32)">
            <summary>
            Sets the relative volume of the left and right channels. 
            </summary>
            <param name="pan">Relative volume between the left and right channels. Must be between <see cref="F:CSCore.DirectSound.DirectSoundBuffer.PanLeft"/> and <see cref="F:CSCore.DirectSound.DirectSoundBuffer.PanRight"/>.</param>
            <returns>DSResult</returns>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.idirectsoundbuffer8.idirectsoundbuffer8.setpan(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.SetPan(System.Int32)">
            <summary>
            Sets the relative volume of the left and right channels. 
            </summary>
            <param name="pan">Relative volume between the left and right channels. Must be between <see cref="F:CSCore.DirectSound.DirectSoundBuffer.PanLeft"/> and <see cref="F:CSCore.DirectSound.DirectSoundBuffer.PanRight"/>.</param>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.idirectsoundbuffer8.idirectsoundbuffer8.setpan(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.SetPanScalar(System.Single)">
            <summary>
            Sets the relative volume of the left and right channels as a scalar value. 
            </summary>
            <param name="pan">Relative volume between the left and right channels. Must be between -1.0 and 1.0. 
            A value of -1.0 will set the volume of the left channel to 100% and the volume of the right channel to 0%. 
            A value of 1.0 will set the volume of the left channel to 0% and the volume of the right channel to 100%.</param>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.GetPanNative(System.Int32@)">
            <summary>
            Retrieves the relative volume of the left and right audio channels. 
            </summary>
            <param name="pan">A variable that receives the relative volume, in hundredths of a decibel.</param>
            <returns>DSResult</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.GetPan">
            <summary>
            Retrieves the relative volume of the left and right audio channels. 
            </summary>
            <returns>The relative volume, in hundredths of a decibel.</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.GetPanScalar">
            <summary>
            Gets the relative volume of the left and right channels as a scalar value.  
            </summary>
            <returns>The relative volume between the left and right channels. A value of -1.0 indicates that the volume of the left channel is set to 100% and the volume of the right channel to 0%.
            A value of 1.0 indicates that the volume of the left channel is set to 0% and the volume of the right channel is set to 100%.</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.SetVolumeNative(System.Int32)">
            <summary>
            Sets the attenuation of the sound. 
            </summary>
            <param name="volume">Attenuation, in hundredths of a decibel (dB).</param>
            <returns>DSResult</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.SetVolume(System.Int32)">
            <summary>
            Sets the attenuation of the sound. 
            </summary>
            <param name="volume">Attenuation, in hundredths of a decibel (dB).</param>        
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.SetVolumeScalar(System.Double)">
            <summary>
            Sets the attenuation of the sound. 
            </summary>
            <param name="volume">The attenuation of the sound. The attenuation is expressed as a normalized value in the range from 0.0 to 1.0.</param>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.GetVolumeNative(System.Int32@)">
            <summary>
            Retrieves the attenuation of the sound. 
            </summary>
            <param name="volume">A variable that receives the attenuation, in hundredths of a decibel.</param>
            <returns>DSResult</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.GetVolume">
            <summary>
            Returns the attenuation of the sound. 
            </summary>
            <returns>The attenuation, in hundredths of a decibel.</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.GetVolumeScalar">
            <summary>
            Returns the attenuation of the sound.
            </summary>
            <returns>The attenuation of the sound. The attenuation is expressed as a normalized value in the range from 0.0 to 1.0.</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.GetFormatNative(System.IntPtr,System.Int32,System.Int32@)">
            <summary>
            Retrieves a description of the format of the sound data in the buffer, or the buffer size needed to retrieve the format description. 
            </summary>
            <param name="format">Address of a <see cref="T:CSCore.WaveFormat"/> or <see cref="T:CSCore.WaveFormatExtensible"/> instance that receives a description of the sound data in the buffer. To retrieve the buffer size needed to contain the format description, specify <see cref="F:System.IntPtr.Zero"/>. In this case the variable at <paramref name="sizeWritten"/> receives the size of the structure needed to receive the data.</param>
            <param name="sizeAllocated">Size, in bytes, of the structure at <paramref name="format"/>. If <paramref name="format"/> is not <see cref="F:System.IntPtr.Zero"/>, this value must be equal to or greater than the size of the expected data.</param>
            <param name="sizeWritten">A variable that receives the number of bytes written to the structure at <paramref name="format"/>.</param>
            <returns>DSResult</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.GetWaveFormat">
            <summary>
            Returns a description of the format of the sound data in the buffer.
            </summary>
            <returns>A description of the format of the sound data in the buffer. The returned description is either of the type <see cref="T:CSCore.WaveFormat"/> or of the type <see cref="T:CSCore.WaveFormatExtensible"/>.</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.SetFormatNative(CSCore.WaveFormat)">
            <summary>
            Sets the format of the primary buffer. Whenever this application has the input focus, DirectSound will set the primary buffer to the specified format. 
            </summary>
            <param name="waveFormat">A waveformat that describes the new format for the primary sound buffer.</param>
            <returns>DSResult</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.SetFormat(CSCore.WaveFormat)">
            <summary>
            Sets the format of the primary buffer. Whenever this application has the input focus, DirectSound will set the primary buffer to the specified format. 
            </summary>
            <param name="waveFormat">A waveformat that describes the new format for the primary sound buffer.</param>        
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.SetFxNative(System.Int32,System.IntPtr,System.IntPtr)">
            <summary>
            Enables effects on a buffer. For this method to succeed, CoInitialize must have been called. Additionally, the buffer must not be playing or locked.
            </summary>
            <param name="effectsCount">Number of elements in the effectDescriptions and resultCodes arrays. If this value is 0, effectDescriptions and resultCodes must both be <see cref="F:System.IntPtr.Zero"/>. Set to 0 to remove all effects from the buffer.</param>
            <param name="effectDescriptions">Address of an array of DSEFFECTDESC structures, of size effectsCount, that specifies the effects wanted on the buffer. Must be <see cref="F:System.IntPtr.Zero"/> if effectsCount is 0.</param>
            <param name="resultCodes">Address of an array of DWORD elements, of size effectsCount.</param>
            <returns>DSResult</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.AcquireResourcesNative(System.Int32,System.Int32,System.IntPtr)">
            <summary>
            Allocates resources for a buffer that was created with the DSBCAPS_LOCDEFER flag in the DSBUFFERDESC structure. 
            </summary>
            <param name="flags">Flags specifying how resources are to be allocated for a buffer created with the DSBCAPS_LOCDEFER flag.</param>
            <param name="effectsCount">Number of elements in the resultCodes array, or 0 if resultCodes is <see cref="F:System.IntPtr.Zero"/>.</param>
            <param name="resultCodes">Address of an array of DWORD variables that receives information about the effects associated with the buffer. This array must contain one element for each effect that was assigned to the buffer by <see cref="M:CSCore.DirectSound.DirectSoundBuffer.SetFxNative(System.Int32,System.IntPtr,System.IntPtr)"/>.</param>
            <returns>DSResult</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.GetObjectInPathNative(System.Guid,System.Int32,System.Guid,System.IntPtr@)">
            <summary>
            Retrieves an interface for an effect object associated with the buffer. 
            </summary>
            <param name="guidObject">Unique class identifier of the object being searched for, such as GUID_DSFX_STANDARD_ECHO. Set this parameter to GUID_All_Objects to search for objects of any class.</param>
            <param name="index">Index of the object within objects of that class in the path.</param>
            <param name="guidInterface">Unique identifier of the desired interface.</param>
            <param name="object">Address of a variable that receives the desired interface pointer.</param>
            <returns>DSResult</returns>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.idirectsoundbuffer8.idirectsoundbuffer8.getobjectinpath%28v=vs.85%29.aspx"/>.</remarks>
        </member>
        <member name="P:CSCore.DirectSound.DirectSoundBuffer.IsBufferLost">
            <summary>
            Gets a value indicating whether the buffer is lost. <c>True</c> means that the buffer is lost; Otherwise <c>False</c>.
            </summary>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Writes data to the buffer by locking the buffer, copying data to the buffer and finally unlocking it.
            </summary>
            <param name="buffer">The data to write to the buffer.</param>
            <param name="offset">The zero-based offset in the <paramref name="buffer"/> at which to start copying data.</param>
            <param name="count">The number of bytes to write.</param>
            <returns>Returns <c>true</c> if writing data was successful; Otherwise <c>false</c>.</returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundBuffer.Write(System.Int16[],System.Int32,System.Int32)">
            <summary>
            Writes data to the buffer by locking the buffer, copying data to the buffer and finally unlocking it.
            </summary>
            <param name="buffer">The data to write to the buffer.</param>
            <param name="offset">The zero-based offset in the <paramref name="buffer"/> at which to start copying data.</param>
            <param name="count">The number of shorts to write.</param>
            <returns>Returns <c>true</c> if writing data was successful; Otherwise <c>false</c>.</returns>
        </member>
        <member name="T:CSCore.DirectSound.DirectSoundCapabilities">
            <summary>
            Describes the capabilities of a device.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.Size">
            <summary>
            Size of the structure, in bytes. This member must be initialized before the structure is used.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.Flags">
            <summary>
            Flags describing device capabilities.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.MinSecondarySampleRate">
            <summary>
            Minimum sample rate specification that is supported by this device's hardware secondary sound buffers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.MaxSecondarySampleRate">
            <summary>
            Maximum sample rate specification that is supported by this device's hardware secondary sound buffers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.PrimaryBuffers">
            <summary>
            Number of primary buffers supported. This value will always be 1.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.MaxHardwareMixingAllBuffers">
            <summary>
            Number of buffers that can be mixed in hardware. This member can be less than the sum of <see cref="F:CSCore.DirectSound.DirectSoundCapabilities.MaxHardwareMixingStaticBuffers"/> and <see cref="F:CSCore.DirectSound.DirectSoundCapabilities.MaxHardwareMixingStreamingBuffers"/>. Resource tradeoffs frequently occur.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.MaxHardwareMixingStaticBuffers">
            <summary>
            Maximum number of static buffers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.MaxHardwareMixingStreamingBuffers">
            <summary>
            Maximum number of streaming sound buffers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.FreeHardwareMixingAllBuffers">
            <summary>
            Number of unallocated buffers. On WDM drivers, this includes <see cref="F:CSCore.DirectSound.DirectSoundCapabilities.FreeHardware3DAllBuffers"/>.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.FreeHardwareMixingStaticBuffers">
            <summary>
            Number of unallocated static buffers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.FreeHardwareMixingStreamingBuffers">
            <summary>
            Number of unallocated streaming buffers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.MaxHardware3DAllBuffers">
            <summary>
            Maximum number of 3D buffers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.MaxHardware3DStaticBuffers">
            <summary>
            Maximum number of static 3D buffers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.MaxHardware3DStreamingBuffers">
            <summary>
            Maximum number of streaming 3D buffers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.FreeHardware3DAllBuffers">
            <summary>
            Number of unallocated 3D buffers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.FreeHardware3DStaticBuffers">
            <summary>
            Number of unallocated static 3D buffers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.FreeHardware3DStreamingBuffers">
            <summary>
            Number of unallocated streaming 3D buffers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.TotalHardwareMemBytes">
            <summary>
            Size, in bytes, of the amount of memory on the sound card that stores static sound buffers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.FreeHardwareMemBytes">
            <summary>
            Size, in bytes, of the free memory on the sound card.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.MaxContigFreeHardwareMemBytes">
            <summary>
            Size, in bytes, of the largest contiguous block of free memory on the sound card.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.UnlockTransferRateHardwareBuffers">
            <summary>
            The rate, in kilobytes per second, at which data can be transferred to hardware static sound buffers. This and the number of bytes transferred determines the duration of a call to the <see cref="M:CSCore.DirectSound.DirectSoundBuffer.Unlock(System.IntPtr,System.Int32,System.IntPtr,System.Int32)"/> method.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundCapabilities.PlayCpuOverheadSwBuffers">
            <summary>
            The processing overhead, as a percentage of main processor cycles, needed to mix software buffers. This varies according to the bus type, the processor type, and the clock speed.
            </summary>
        </member>
        <member name="T:CSCore.DirectSound.DirectSoundDevice">
            <summary>
            Represents a directsound-device.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DirectSoundDevice.DefaultPlaybackGuid">
            <summary>
            The guid of the default playback device.
            </summary>
        </member>
        <member name="P:CSCore.DirectSound.DirectSoundDevice.DefaultDevice">
            <summary>
            Gets the default playback device.
            </summary>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundDevice.EnumerateDevices">
            <summary>
            Enumerates all directsound-devices. Use the <see cref="M:CSCore.DirectSound.DirectSoundDeviceEnumerator.EnumerateDevices"/> method instead.
            </summary>
            <returns>A list, containing all enumerated directsound-devices.</returns>
        </member>
        <member name="P:CSCore.DirectSound.DirectSoundDevice.Description">
            <summary>
            Gets the textual description of the DirectSound device.
            </summary>
        </member>
        <member name="P:CSCore.DirectSound.DirectSoundDevice.Module">
            <summary>
            Gets the module name of the DirectSound driver corresponding to this device.
            </summary>
        </member>
        <member name="P:CSCore.DirectSound.DirectSoundDevice.Guid">
            <summary>
            The <see cref="T:System.Guid"/> that identifies the device being enumerated.
            </summary>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundDevice.#ctor(System.String,System.String,System.Guid)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DirectSound.DirectSoundDevice"/> class.
            </summary>
            <param name="description">The description.</param>
            <param name="module">The module.</param>
            <param name="guid">The unique identifier.</param>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundDevice.op_Explicit(CSCore.DirectSound.DirectSoundDevice)~System.Guid">
            <summary>
            Performs an explicit conversion from <see cref="T:CSCore.DirectSound.DirectSoundDevice"/> to <see cref="P:CSCore.DirectSound.DirectSoundDevice.Guid"/>.
            </summary>
            <param name="device">The device.</param>
            <returns>
            The <see cref="P:CSCore.DirectSound.DirectSoundDevice.Guid"/> of the <paramref name="device"/>.
            </returns>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundDevice.ToString">
            <summary>
            Returns a <see cref="T:System.String" /> that represents this instance.
            </summary>
            <returns>
            A <see cref="T:System.String" /> that represents this instance.
            </returns>
        </member>
        <member name="T:CSCore.DirectSound.DirectSoundDeviceEnumerator">
            <summary>
            Provides the functionality to enumerate directsound devices installed on the system.
            </summary>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundDeviceEnumerator.EnumerateDevices">
            <summary>
            Enumerates the directsound devices installed on the system.
            </summary>
            <returns>A readonly collection, containing all enumerated devices.</returns>
        </member>
        <member name="T:CSCore.DirectSound.DirectSoundException">
            <summary>
                Exception class which represents all DirectSound related exceptions.
            </summary>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundException.#ctor(CSCore.DirectSound.DSResult,System.String,System.String)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.DirectSound.DirectSoundException" /> class.
            </summary>
            <param name="result">The Errorcode.</param>
            <param name="interfaceName">
                Name of the interface which contains the COM-function which returned the specified
                <paramref name="result" />.
            </param>
            <param name="member">Name of the COM-function which returned the specified <paramref name="result" />.</param>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundException.#ctor(System.Int32,System.String,System.String)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Win32.Win32ComException" /> class.
            </summary>
            <param name="result">The Errorcode.</param>
            <param name="interfaceName">
                Name of the interface which contains the COM-function which returned the specified
                <paramref name="result" />.
            </param>
            <param name="member">Name of the COM-function which returned the specified <paramref name="result" />.</param>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.DirectSound.DirectSoundException" /> class from serialization data.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> object that holds the serialized object data.</param>
            <param name="context">
                The StreamingContext object that supplies the contextual information about the source or
                destination.
            </param>
        </member>
        <member name="P:CSCore.DirectSound.DirectSoundException.Result">
            <summary>
                Gets the <see cref="T:CSCore.DirectSound.DSResult" /> which got associated with the specified <see cref="P:System.Runtime.InteropServices.ExternalException.ErrorCode" />.
            </summary>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundException.Try(CSCore.DirectSound.DSResult,System.String,System.String)">
            <summary>
                Throws an <see cref="T:CSCore.DirectSound.DirectSoundException" /> if the <paramref name="result" /> is not
                <see cref="F:CSCore.DirectSound.DSResult.Ok" />.
            </summary>
            <param name="result">Errorcode.</param>
            <param name="interfaceName">
                Name of the interface which contains the COM-function which returned the specified
                <paramref name="result" />.
            </param>
            <param name="member">Name of the COM-function which returned the specified <paramref name="result" />.</param>
        </member>
        <member name="T:CSCore.DirectSound.DirectSoundNotify">
            <summary>
            Sets up notification events for a playback or capture buffer.
            </summary>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundNotify.FromBuffer(CSCore.DirectSound.DirectSoundBuffer)">
            <summary>
            Returns a new instance of the <see cref="T:CSCore.DirectSound.DirectSoundNotify"/> class for the specified <paramref name="directSoundBuffer"/>.
            </summary>
            <param name="directSoundBuffer">The <see cref="T:CSCore.DirectSound.DirectSoundBuffer"/> to create a <see cref="T:CSCore.DirectSound.DirectSoundNotify"/> instance for.</param>
            <returns>A new instance of the <see cref="T:CSCore.DirectSound.DirectSoundNotify"/> class for the specified <paramref name="directSoundBuffer"/></returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="directSoundBuffer"/> is null.</exception>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundNotify.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DirectSound.DirectSoundNotify"/> class based on the native pointer.
            </summary>
            <param name="ptr">The native pointer of the COM object.</param>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundNotify.SetNotificationPositions(CSCore.DirectSound.DSBPositionNotify[])">
            <summary>
            Sets the notification positions. During capture or playback, whenever the read or play cursor reaches one of the specified offsets, the associated event is signaled. 
            </summary>
            <param name="notifies">An array of <see cref="T:CSCore.DirectSound.DSBPositionNotify"/> structures.</param>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundNotify.SetNotificationPositionsNative(CSCore.DirectSound.DSBPositionNotify[])">
            <summary>
            Sets the notification positions. During capture or playback, whenever the read or play cursor reaches one of the specified offsets, the associated event is signaled. 
            </summary>
            <param name="notifies">An array of <see cref="T:CSCore.DirectSound.DSBPositionNotify"/> structures.</param>
            <returns>DSResult</returns>
        </member>
        <member name="T:CSCore.DirectSound.DirectSoundPrimaryBuffer">
            <summary>
            Represents a primary directsound buffer.
            </summary>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundPrimaryBuffer.#ctor(CSCore.DirectSound.DirectSoundBase)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DirectSound.DirectSoundPrimaryBuffer"/> class.
            </summary>
            <param name="directSound">A <see cref="T:CSCore.DirectSound.DirectSoundBase"/> instance which provides the <see cref="M:CSCore.DirectSound.DirectSoundBase.CreateSoundBuffer(CSCore.DirectSound.DSBufferDescription,System.IntPtr)"/> method.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="directSound"/></exception>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundPrimaryBuffer.#ctor(CSCore.DirectSound.DirectSoundBase,CSCore.DirectSound.DSBufferDescription)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DirectSound.DirectSoundPrimaryBuffer"/> class.
            </summary>
            <param name="directSound">A <see cref="T:CSCore.DirectSound.DirectSoundBase"/> instance which provides the <see cref="M:CSCore.DirectSound.DirectSoundBase.CreateSoundBuffer(CSCore.DirectSound.DSBufferDescription,System.IntPtr)"/> method.</param>
            <param name="bufferDescription">The buffer description which describes the buffer to create.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="directSound"/></exception>
            <exception cref="T:System.ArgumentException">The <paramref name="bufferDescription"/> is invalid.</exception>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundPrimaryBuffer.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DirectSound.DirectSoundPrimaryBuffer"/> class.
            </summary>
            <param name="ptr">The native pointer of the COM object.</param>
        </member>
        <member name="T:CSCore.DirectSound.DirectSoundSecondaryBuffer">
            <summary>
            Represents a secondary directsound buffer.
            </summary>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundSecondaryBuffer.#ctor(CSCore.DirectSound.DirectSoundBase,CSCore.WaveFormat,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DirectSound.DirectSoundSecondaryBuffer"/> class.
            </summary>
            <param name="directSound">A <see cref="T:CSCore.DirectSound.DirectSoundBase"/> instance which provides the <see cref="M:CSCore.DirectSound.DirectSoundBase.CreateSoundBuffer(CSCore.DirectSound.DSBufferDescription,System.IntPtr)"/> method.</param>
            <param name="waveFormat">The <see cref="T:CSCore.WaveFormat"/> of the sound buffer.</param>
            <param name="bufferSize">The buffer size. Internally, the <see cref="F:CSCore.DirectSound.DSBufferDescription.BufferBytes"/> will be set to <paramref name="bufferSize"/> * 2.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="directSound"/> or <paramref name="waveFormat"/></exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="bufferSize"/> must be a value between 4 and 0x0FFFFFFF.</exception>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundSecondaryBuffer.#ctor(CSCore.DirectSound.DirectSoundBase,CSCore.DirectSound.DSBufferDescription)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DirectSound.DirectSoundSecondaryBuffer"/> class.
            </summary>
            <param name="directSound">A <see cref="T:CSCore.DirectSound.DirectSoundBase"/> instance which provides the <see cref="M:CSCore.DirectSound.DirectSoundBase.CreateSoundBuffer(CSCore.DirectSound.DSBufferDescription,System.IntPtr)"/> method.</param>
            <param name="bufferDescription">The buffer description which describes the buffer to create.</param>        
            <exception cref="T:System.ArgumentNullException"><paramref name="directSound"/></exception>
            <exception cref="T:System.ArgumentException">
            The <paramref name="bufferDescription"/> is invalid.
            </exception>
        </member>
        <member name="M:CSCore.DirectSound.DirectSoundSecondaryBuffer.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DirectSound.DirectSoundSecondaryBuffer"/> class.
            </summary>
            <param name="ptr">The native pointer of the COM object.</param>
        </member>
        <member name="T:CSCore.DirectSound.DSBLock">
            <summary>
            Defines possible flags for the <see cref="M:CSCore.DirectSound.DirectSoundBuffer.Lock(System.Int32,System.Int32,System.IntPtr@,System.Int32@,System.IntPtr@,System.Int32@,CSCore.DirectSound.DSBLock)"/> method.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBLock.Default">
            <summary>
            The default value.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBLock.FromWriteCursor">
            <summary>
            Start the lock at the write cursor. The <c>offset</c> parameter is ignored.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBLock.EntireBuffer">
            <summary>
            Lock the entire buffer. The <c>bytes</c> parameter is ignored.
            </summary>
        </member>
        <member name="T:CSCore.DirectSound.DSBPlayFlags">
            <summary>
            Flags specifying how to play a <see cref="T:CSCore.DirectSound.DirectSoundBuffer"/>.
            </summary>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/microsoft.directx_sdk.idirectsoundbuffer8.idirectsoundbuffer8.play.aspx"/>.</remarks>
        </member>
        <member name="F:CSCore.DirectSound.DSBPlayFlags.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBPlayFlags.Looping">
            <summary>
            After the end of the audio buffer is reached, play restarts at the beginning of the buffer. Play continues until explicitly stopped. This flag must be set when playing a primary buffer.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBPlayFlags.LocHardware">
            <summary>
            Play this voice in a hardware buffer only. If the hardware has no available voices and no voice management flags are set, the call to <see cref="M:CSCore.DirectSound.DirectSoundBuffer.Play(CSCore.DirectSound.DSBPlayFlags)"/> fails. This flag cannot be combined with <see cref="F:CSCore.DirectSound.DSBPlayFlags.LocSoftware"/>.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBPlayFlags.LocSoftware">
            <summary>
            Play this voice in a software buffer only. This flag cannot be combined with <see cref="F:CSCore.DirectSound.DSBPlayFlags.LocHardware"/> or any voice management flag.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBPlayFlags.TerminateByTime">
            <summary>
            If the hardware has no available voices, a currently playing nonlooping buffer will be stopped to make room for the new buffer. The buffer prematurely terminated is the one with the least time left to play.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBPlayFlags.TerminateByDistance">
            <summary>
            If the hardware has no available voices, a currently playing buffer will be stopped to make room for the new buffer. The buffer prematurely terminated will be selected from buffers that have the buffer's <see cref="F:CSCore.DirectSound.DSBufferCapsFlags.Mute3DAtMaxDistance"/> flag set and are beyond their maximum distance. If there are no such buffers, the method fails.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBPlayFlags.TerminateByPriority">
            <summary>
            If the hardware has no available voices, a currently playing buffer will be stopped to make room for the new buffer. The buffer prematurely terminated will be the one with the lowest priority as set by the priority parameter passed to <see cref="M:CSCore.DirectSound.DirectSoundBuffer.Play(CSCore.DirectSound.DSBPlayFlags,System.Int32)"/> for the buffer.
            </summary>
        </member>
        <member name="T:CSCore.DirectSound.DSBPositionNotify">
            <summary>
            The <see cref="T:CSCore.DirectSound.DSBPositionNotify"/> structure describes a notification position. It is used by <see cref="M:CSCore.DirectSound.DirectSoundNotify.SetNotificationPositions(CSCore.DirectSound.DSBPositionNotify[])"/>. 
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBPositionNotify.OffsetZero">
            <summary>
            Zero offset.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBPositionNotify.OffsetStop">
            <summary>
            Causes the event to be signaled when playback or capture stops, either because the end of the buffer has been reached (and playback or capture is not looping) or because the application called the <see cref="M:CSCore.DirectSound.DirectSoundBuffer.Stop"/> or IDirectSoundCaptureBuffer8::Stop method.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBPositionNotify.Offset">
            <summary>
            Offset from the beginning of the buffer where the notify event is to be triggered, or <see cref="F:CSCore.DirectSound.DSBPositionNotify.OffsetStop"/>.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBPositionNotify.EventNotifyHandle">
            <summary>
            Handle to the event to be signaled when the offset has been reached.
            </summary>
        </member>
        <member name="M:CSCore.DirectSound.DSBPositionNotify.#ctor(System.Int32,System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DirectSound.DSBPositionNotify"/> struct.
            </summary>
            <param name="offset">The offset from the beginning of the buffer where the notify event is to be triggered.</param>
            <param name="eventNotifyHandle">Handle to the event to be signaled when the offset has been reached</param>
        </member>
        <member name="T:CSCore.DirectSound.DSBStatusFlags">
            <summary>
            Defines flags that describe the status of a <see cref="T:CSCore.DirectSound.DirectSoundBuffer"/>.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBStatusFlags.Playing">
            <summary>
            The buffer is playing. If this value is not set, the buffer is stopped.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBStatusFlags.BufferLost">
            <summary>
            The buffer is lost and must be restored before it can be played or locked.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBStatusFlags.Looping">
            <summary>
            The buffer is being looped. If this value is not set, the buffer will stop when it reaches the end of the sound data. This value is returned only in combination with <see cref="F:CSCore.DirectSound.DSBStatusFlags.Playing"/>.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBStatusFlags.LocHardware">
            <summary>
            The buffer is playing in hardware. Set only for buffers created with the <see cref="F:CSCore.DirectSound.DSBufferCapsFlags.LocDefer"/> flag.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBStatusFlags.LocSoftware">
            <summary>
            The buffer is playing in software. Set only for buffers created with the <see cref="F:CSCore.DirectSound.DSBufferCapsFlags.LocDefer"/> flag.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBStatusFlags.Terminated">
            <summary>
            The buffer was prematurely terminated by the voice manager and is not playing. Set only for buffers created with the <see cref="F:CSCore.DirectSound.DSBufferCapsFlags.LocDefer"/> flag.
            </summary>
        </member>
        <member name="T:CSCore.DirectSound.DSBufferCaps">
            <summary>
            Describes the capabilities of a DirectSound buffer object. It is used by the <see cref="P:CSCore.DirectSound.DirectSoundBuffer.BufferCaps"/> property. 
            </summary>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.reference.dsbcaps%28v=vs.85%29.aspx"/>.</remarks>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCaps.Size">
            <summary>
            Size of the structure, in bytes. This member must be initialized before the structure is used.
            </summary>
            <remarks>Use the <see cref="M:System.Runtime.InteropServices.Marshal.SizeOf(System.Object)"/> method to determine the size.</remarks>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCaps.Flags">
            <summary>
            Flags that specify buffer-object capabilities.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCaps.BufferBytes">
            <summary>
            Size of this buffer, in bytes.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCaps.UnlockTransferRate">
            <summary>
            The rate, in kilobytes per second, at which data is transferred to the buffer memory when <see cref="M:CSCore.DirectSound.DirectSoundBuffer.Unlock(System.IntPtr,System.Int32,System.IntPtr,System.Int32)"/> is called. High-performance applications can use this value to determine the time required for <see cref="M:CSCore.DirectSound.DirectSoundBuffer.Unlock(System.IntPtr,System.Int32,System.IntPtr,System.Int32)"/> to execute. For software buffers located in system memory, the rate will be very high because no processing is required. For hardware buffers, the rate might be slower because the buffer might have to be downloaded to the sound card, which might have a limited transfer rate.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCaps.PlayCpuOverhead">
            <summary>
            The processing overhead as a percentage of main processor cycles needed to mix this sound buffer. For hardware buffers, this member will be zero because the mixing is performed by the sound device. For software buffers, this member depends on the buffer format and the speed of the system processor.
            </summary>
        </member>
        <member name="T:CSCore.DirectSound.DSBufferCapsFlags">
            <summary>
            Flags that specify buffer-object capabilities.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCapsFlags.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCapsFlags.PrimaryBuffer">
            <summary>
            The buffer is a primary buffer.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCapsFlags.Static">
            <summary>
            The buffer is in on-board hardware memory.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCapsFlags.LocHardware">
            <summary>
            The buffer uses hardware mixing.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCapsFlags.LocSoftware">
            <summary>
            The buffer is in software memory and uses software mixing.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCapsFlags.Control3D">
            <summary>
            The buffer has 3D control capability.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCapsFlags.ControlFrequency">
            <summary>
            The buffer has frequency control capability.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCapsFlags.ControlPan">
            <summary>
            The buffer has pan control capability.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCapsFlags.ControlVolume">
            <summary>
            The buffer has volume control capability.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCapsFlags.ControlPositionNotify">
            <summary>
            The buffer has position notification capability.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCapsFlags.ControlEffect">
            <summary>
            The buffer supports effects processing.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCapsFlags.StickyFocus">
            <summary>
            The buffer has sticky focus. If the user switches to another application not using DirectSound, the buffer is still audible. However, if the user switches to another DirectSound application, the buffer is muted.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCapsFlags.GlobalFocus">
            <summary>
            The buffer is a global sound buffer. With this flag set, an application using DirectSound can continue to play its buffers if the user switches focus to another application, even if the new application uses DirectSound.
            For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.reference.dsbcaps%28v=vs.85%29.aspx"/>.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCapsFlags.GetCurrentPosition2">
            <summary>
            The buffer uses the new behavior of the play cursor when <see cref="M:CSCore.DirectSound.DirectSoundBuffer.GetCurrentPosition(System.Int32@,System.Int32@)"/> is called. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.reference.dsbcaps%28v=vs.85%29.aspx"/>.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCapsFlags.Mute3DAtMaxDistance">
            <summary>
            The sound is reduced to silence at the maximum distance. The buffer will stop playing when the maximum distance is exceeded, so that processor time is not wasted. Applies only to software buffers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCapsFlags.LocDefer">
            <summary>
            The buffer can be assigned to a hardware or software resource at play time, or when <see cref="M:CSCore.DirectSound.DirectSoundBuffer.AcquireResourcesNative(System.Int32,System.Int32,System.IntPtr)"/> is called.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferCapsFlags.TruePlayPosition">
            <summary>
            Force <see cref="M:CSCore.DirectSound.DirectSoundBuffer.GetCurrentPosition(System.Int32@,System.Int32@)"/> to return the buffer's true play position. This flag is only valid in Windows Vista.
            </summary>
        </member>
        <member name="T:CSCore.DirectSound.DSBufferDescription">
            <summary>
            Describes the characteristics of a new buffer object.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferDescription.Size">
            <summary>
            Size of the structure, in bytes. This member must be initialized before the structure is used.
            </summary>
            <remarks>Use the <see cref="M:System.Runtime.InteropServices.Marshal.SizeOf(System.Object)"/> or the <see cref="M:System.Runtime.InteropServices.Marshal.SizeOf(System.Type)"/> method to </remarks>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferDescription.Flags">
            <summary>
            Flags specifying the capabilities of the buffer.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferDescription.BufferBytes">
            <summary>
            Size of the new buffer, in bytes. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.reference.dsbufferdesc%28v=vs.85%29.aspx"/>.
            </summary>
            <remarks>Must be a value between 4 and 0x0FFFFFFF.</remarks>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferDescription.PtrFormat">
            <summary>
            Address of a <see cref="T:CSCore.WaveFormat"/> or <see cref="T:CSCore.WaveFormatExtensible"/> class specifying the waveform format for the buffer. This value must be <see cref="F:System.IntPtr.Zero"/> for primary buffers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSBufferDescription.Guid3DAlgorithm">
            <summary>
            Unique identifier of the two-speaker virtualization algorithm to be used by DirectSound3D hardware emulation. If <see cref="F:CSCore.DirectSound.DSBufferCapsFlags.Control3D"/> is not set in <see cref="F:CSCore.DirectSound.DSBufferDescription.Flags"/>, this member must be <see cref="F:System.Guid.Empty"/>.
            For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.reference.dsbufferdesc%28v=vs.85%29.aspx"/>.
            </summary>
        </member>
        <member name="T:CSCore.DirectSound.DSCapabilitiesFlags">
            <summary>
            Flags describing device capabilities.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSCapabilitiesFlags.Certified">
            <summary>
            The driver has been tested and certified by Microsoft. This flag is always set for WDM drivers. To test for certification, use <see cref="M:CSCore.DirectSound.DirectSound8.VerifyCertification"/>.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSCapabilitiesFlags.ContinousRate">
            <summary>
            The device supports all sample rates between the <see cref="F:CSCore.DirectSound.DirectSoundCapabilities.MinSecondarySampleRate"/> and <see cref="F:CSCore.DirectSound.DirectSoundCapabilities.MaxSecondarySampleRate"/> member values. Typically, this means that the actual output rate will be within +/- 10 hertz (Hz) of the requested frequency.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSCapabilitiesFlags.EmulatedDriver">
            <summary>
            The device does not have a DirectSound driver installed, so it is being emulated through the waveform-audio functions. Performance degradation should be expected.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSCapabilitiesFlags.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSCapabilitiesFlags.PrimaryBuffer16Bit">
            <summary>
            The device supports a primary buffer with 16-bit samples.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSCapabilitiesFlags.PrimaryBuffer8Bit">
            <summary>
            The device supports primary buffers with 8-bit samples.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSCapabilitiesFlags.PrimaryBufferMono">
            <summary>
            The device supports monophonic primary buffers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSCapabilitiesFlags.PrimaryBufferStereo">
            <summary>
            The device supports stereo primary buffers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSCapabilitiesFlags.SecondaryBuffer16Bit">
            <summary>
            The device supports hardware-mixed secondary sound buffers with 16-bit samples.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSCapabilitiesFlags.SecondaryBuffer8Bit">
            <summary>
            The device supports hardware-mixed secondary buffers with 8-bit samples.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSCapabilitiesFlags.SecondaryBufferMono">
            <summary>
            The device supports hardware-mixed monophonic secondary buffers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSCapabilitiesFlags.SecondaryBufferStereo">
            <summary>
            The device supports hardware-mixed stereo secondary buffers.
            </summary>
        </member>
        <member name="T:CSCore.DirectSound.DSCertification">
            <summary>
            Defines possible return values for the <see cref="M:CSCore.DirectSound.DirectSound8.VerifyCertification"/> method.
            </summary>
            <remarks>For more information, see <see cref="M:CSCore.DirectSound.DirectSound8.VerifyCertification"/> or <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.idirectsound8.idirectsound8.verifycertification(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="F:CSCore.DirectSound.DSCertification.Certified">
            <summary>
            Driver is certified for DirectSound.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSCertification.Uncertified">
            <summary>
            Driver is not certified for DirectSound.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSCertification.Unsupported">
            <summary>
            Not supported.
            </summary>
            <remarks>The <see cref="M:CSCore.DirectSound.DirectSound8.VerifyCertificationNative(CSCore.DirectSound.DSCertification@)"/> method returned DSERR_UNSUPPORTED.</remarks>
        </member>
        <member name="T:CSCore.DirectSound.DSCooperativeLevelType">
            <summary>
                Defines cooperative levels which can be set by calling the <see cref="M:CSCore.DirectSound.DirectSoundBase.SetCooperativeLevel(System.IntPtr,CSCore.DirectSound.DSCooperativeLevelType)" />
                method.
            </summary>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.idirectsound8.idirectsound8.setcooperativelevel(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="F:CSCore.DirectSound.DSCooperativeLevelType.Normal">
            <summary>
                Sets the normal level. This level has the smoothest multitasking and resource-sharing behavior, but because it does
                not allow the primary buffer format to change, output is restricted to the default 8-bit format.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSCooperativeLevelType.Priority">
            <summary>
                Sets the priority level. Applications with this cooperative level can call the SetFormat and Compact methods.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSCooperativeLevelType.Exclusive">
            <summary>
                For DirectX 8.0 and later, has the same effect as <see cref="F:CSCore.DirectSound.DSCooperativeLevelType.Priority" />. For previous versions, sets the
                application to the exclusive level. This means that when it has the input focus, the application will be the only
                one audible; sounds from applications with the GlobalFocus flag set will be muted. With this level, it also
                has all the privileges of the DSSCL_PRIORITY level. DirectSound will restore the hardware format, as specified by
                the most recent call to the SetFormat method, after the application gains the input focus.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSCooperativeLevelType.WritePrimary">
            <summary>
                Sets the write-primary level. The application has write access to the primary buffer. No secondary buffers can be
                played. This level cannot be set if the DirectSound driver is being emulated for the device; that is, if the
                GetCaps method returns the DSCAPS_EMULDRIVER flag in the DSCAPS structure.
            </summary>
        </member>
        <member name="T:CSCore.DirectSound.DSResult">
            <summary>
            Defines possible DirectSound return values.
            </summary>
            <remarks>For more information, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/ee416775%28v=vs.85%29.aspx"/>.</remarks>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.Ok">
            <summary>
            The method succeeded.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.OutOfMemory">
            <summary>
            The DirectSound subsystem could not allocate sufficient memory to complete the caller's request.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.NoInterface">
            <summary>
            The requested COM interface is not available.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.NoVirtualization">
            <summary>
            The buffer was created, but another 3D algorithm was substituted.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.Incomplete">
            <summary>
            The method succeeded, but not all the optional effects were obtained.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.Unsupported">
            <summary>
            The function called is not supported at this time.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.Generic">
            <summary>
            An undetermined error occurred inside the DirectSound subsystem.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.AccessDenied">
            <summary>
            The request failed because access was denied.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.InvalidParam">
            <summary>
            An invalid parameter was passed to the returning function.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.Allocated">
            <summary>
            The request failed because resources, such as a priority level, were already in use by another caller.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.ControlUnavail">
            <summary>
            The buffer control (volume, pan, and so on) requested by the caller is not available. Controls must be specified when the buffer is created, using the <see cref="F:CSCore.DirectSound.DSBufferDescription.Flags"/> member of <see cref="T:CSCore.DirectSound.DSBufferDescription"/>.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.InvalidCall">
            <summary>
            This function is not valid for the current state of this object.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.PrioLevelNeeded">
            <summary>
            A cooperative level of <see cref="F:CSCore.DirectSound.DSCooperativeLevelType.Priority"/> or higher is required.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.BadFormat">
            <summary>
            The specified wave format is not supported.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.NoDriver">
            <summary>
            No sound driver is available for use, or the given GUID is not a valid DirectSound device ID.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.AlreadyInitialized">
            <summary>
            The object is already initialized.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.BufferLost">
            <summary>
            The buffer memory has been lost and must be restored.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.OtherAppHasPrio">
            <summary>
            Another application has a higher priority level, preventing this call from succeeding.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.Uninitialized">
            <summary>
            The <see cref="M:CSCore.DirectSound.DirectSoundBase.Initialize(System.Nullable{System.Guid})"/> method has not been called or has not been called successfully before other methods were called.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.BufferTooSmall">
            <summary>
            The buffer size is not great enough to enable effects processing.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.DirectSound8Required">
            <summary>
            A DirectSound object of class CLSID_DirectSound8 or later is required for the requested functionality.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.SendLoop">
            <summary>
            A circular loop of send effects was detected.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.BadSendBufferGuid">
            <summary>
            The GUID specified in an audiopath file does not match a valid mix-in buffer.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.FxUnavailable">
            <summary>
            The effects requested could not be found on the system, or they are in the wrong order or in the wrong location; for example, an effect expected in hardware was found in software.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSResult.ObjectNotFound">
            <summary>
            The requested object was not found.
            </summary>
        </member>
        <member name="T:CSCore.DirectSound.DSSpeakerConfigurations">
            <summary>
            Defines possible speaker configurations.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSSpeakerConfigurations.DirectOut">
            <summary>
            The audio is passed through directly, without being configured for speakers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSSpeakerConfigurations.HeadPhone">
            <summary>
            The audio is played through headphones.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSSpeakerConfigurations.Mono">
            <summary>
            The audio is played through a single speaker.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSSpeakerConfigurations.Quad">
            <summary>
            The audio is played through quadraphonic speakers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSSpeakerConfigurations.Stereo">
            <summary>
            The audio is played through stereo speakers (default value).
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSSpeakerConfigurations.Surround">
            <summary>
            The audio is played through surround speakers.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSSpeakerConfigurations.FivePointOne">
            <summary>
            The audio is played through a home theater speaker arrangement of five surround speakers with a subwoofer.
            </summary>
            <remarks>Obsolete 5.1 setting. Use <see cref="F:CSCore.DirectSound.DSSpeakerConfigurations.FivePointOneSurround"/> instead.</remarks>
        </member>
        <member name="F:CSCore.DirectSound.DSSpeakerConfigurations.SevenPointOne">
            <summary>
            The audio is played through a home theater speaker arrangement of seven surround speakers with a subwoofer.
            </summary>
            <remarks>Obsolete 7.1 setting. Use <see cref="F:CSCore.DirectSound.DSSpeakerConfigurations.SevenPointOneSurround"/> instead.</remarks>
        </member>
        <member name="F:CSCore.DirectSound.DSSpeakerConfigurations.SevenPointOneSurround">
            <summary>
            The audio is played through a home theater speaker arrangement of seven surround speakers with a subwoofer. This value applies to Windows XP SP2 or later.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSSpeakerConfigurations.FivePointOneSurround">
            <summary>
            The audio is played through a home theater speaker arrangement of five surround speakers with a subwoofer. This value applies to Windows Vista or later.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSSpeakerConfigurations.SevenPointOneWide">
            <summary>
            The audio is played through a wide speaker arrangement of seven surround speakers with a subwoofer. (<see cref="F:CSCore.DirectSound.DSSpeakerConfigurations.SevenPointOne"/> is still defined, but is obsolete as of Windows XP SP 2. Use <see cref="F:CSCore.DirectSound.DSSpeakerConfigurations.SevenPointOneWide"/> instead.)
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSSpeakerConfigurations.FivePointOneBack">
            <summary>
            The audio is played through a speaker arrangement of five surround speakers with a subwoofer. (<see cref="F:CSCore.DirectSound.DSSpeakerConfigurations.FivePointOne"/> is still defined, but is obsolete as of Windows Vista. Use <see cref="F:CSCore.DirectSound.DSSpeakerConfigurations.FivePointOneBack"/> instead.)
            </summary>
        </member>
        <member name="T:CSCore.DirectSound.DSSpeakerGeometry">
            <summary>
            Defines values that can be combined with the <see cref="F:CSCore.DirectSound.DSSpeakerConfigurations.Stereo"/> value.
            </summary>
            <remarks>To combine the a <see cref="T:CSCore.DirectSound.DSSpeakerGeometry"/> value with the stereo value, use the <see cref="M:CSCore.DirectSound.DirectSoundBase.CombineSpeakerConfiguration(CSCore.DirectSound.DSSpeakerConfigurations,CSCore.DirectSound.DSSpeakerGeometry)"/> method.</remarks>
        </member>
        <member name="F:CSCore.DirectSound.DSSpeakerGeometry.Min">
            <summary>
            The speakers are directed over an arc of 5 degrees.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSSpeakerGeometry.Narrow">
            <summary>
            The speakers are directed over an arc of 10 degrees.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSSpeakerGeometry.Wide">
            <summary>
            The speakers are directed over an arc of 20 degrees.
            </summary>
        </member>
        <member name="F:CSCore.DirectSound.DSSpeakerGeometry.Max">
            <summary>
            The speakers are directed over an arc of 180 degrees.
            </summary>
        </member>
        <member name="T:CSCore.DMO.DmoAggregator">
            <summary>
                <see cref="T:CSCore.IWaveAggregator"/> implementation for Dmo based streams.
            </summary>
        </member>
        <member name="M:CSCore.DMO.DmoAggregator.#ctor(CSCore.IWaveSource)">
            <summary>
                Creates a new instance of the <see cref="T:CSCore.DMO.DmoAggregator" /> class.
            </summary>
            <param name="source">Base source of the <see cref="T:CSCore.DMO.DmoAggregator" />.</param>
        </member>
        <member name="P:CSCore.DMO.DmoAggregator.Position">
            <summary>
                Gets or sets the position of the stream in bytes.
            </summary>
        </member>
        <member name="P:CSCore.DMO.DmoAggregator.Length">
            <summary>
                Gets the length of the stream in bytes.
            </summary>
        </member>
        <member name="P:CSCore.DMO.DmoAggregator.CanSeek">
            <summary>
            Gets a value indicating whether the <see cref="T:CSCore.IAudioSource"/> supports seeking.
            </summary>
        </member>
        <member name="P:CSCore.DMO.DmoAggregator.BaseSource">
            <summary>
                Gets the <see cref="P:CSCore.DMO.DmoAggregator.BaseSource" /> of the <see cref="T:CSCore.DMO.DmoAggregator" />.
            </summary>
        </member>
        <member name="M:CSCore.DMO.DmoAggregator.GetInputData(System.Byte[]@,System.Int32)">
            <summary>
                Gets inputData to feed the Dmo MediaObject with.
            </summary>
            <param name="inputDataBuffer">
                InputDataBuffer which receives the inputData.
                If this parameter is null or the length is less than the amount of inputData, a new byte array will be applied.
            </param>
            <param name="requested">The requested number of bytes.</param>
            <returns>The number of bytes read. The number of actually read bytes does not have to be the number of requested bytes.</returns>
        </member>
        <member name="M:CSCore.DMO.DmoAggregator.GetInputFormat">
            <summary>
                Gets the input format to use.
            </summary>
            <returns>The input format.</returns>
            <remarks>Typically this is the <see cref="P:CSCore.IAudioSource.WaveFormat"/> of the <see cref="P:CSCore.DMO.DmoAggregator.BaseSource"/>.</remarks>
        </member>
        <member name="T:CSCore.DMO.DmoEnumeratorCategories">
            <summary>
                Defines DMO-Categories for enumerating DMOs.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoEnumeratorCategories.All">
            <summary>
                All DMOs.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoEnumeratorCategories.AudioEffect">
            <summary>
                AudioEffects
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoEnumeratorCategories.AudioCaptureEffects">
            <summary>
                AudioCaptureEffects
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoEnumeratorCategories.AudioDecoder">
            <summary>
                Category which includes audio decoder.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoEnumeratorCategories.AudioEncoder">
            <summary>
                Category which includes audio encoder.
            </summary>
        </member>
        <member name="T:CSCore.DMO.DmoEnumFlags">
            <summary>
                Defines flags that specify search criteria when enumerating Microsoft DirectX Media Objects.
                For more information, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd375497(v=vs.85).aspx"/>.
            </summary>
            <remarks>
                A software key enables the developer of a DMO to control who uses the DMO. If a DMO has a software key,
                applications must unlock the DMO to use it. The method for unlocking the DMO depends on the implementation. Consult
                the documentation for the particular DMO.
            </remarks>
        </member>
        <member name="F:CSCore.DMO.DmoEnumFlags.None">
            <summary>
                None
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoEnumFlags.IncludeKeyed">
            <summary>
                The enumeration should include DMOs whose use is restricted by a software key. If this flag is absent, keyed DMOs
                are omitted from the enumeration.
            </summary>
        </member>
        <member name="T:CSCore.DMO.DmoEnumItem">
            <summary>
            Encapsulates the properties of an enumerated dmo.
            </summary>
        </member>
        <member name="P:CSCore.DMO.DmoEnumItem.CLSID">
            <summary>
            Gets or sets the CLSID of the dmo.
            </summary>
        </member>
        <member name="P:CSCore.DMO.DmoEnumItem.Name">
            <summary>
            Gets or sets the friendly name of the dmo.
            </summary>
        </member>
        <member name="T:CSCore.DMO.DmoErrorCodes">
            <summary>
                Error codes that are specific to Microsoft DirectX Media Objects.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoErrorCodes.DMO_E_INVALIDSTREAMINDEX">
            <summary>
                Invalid stream index.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoErrorCodes.DMO_E_INVALIDTYPE">
            <summary>
                Invalid media type.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoErrorCodes.DMO_E_TYPE_NOT_SET">
            <summary>
                Media type was not set. One or more streams require a media type before this operation can be performed.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoErrorCodes.DMO_E_NOTACCEPTING">
            <summary>
                Data cannot be accepted on this stream. You might need to process more output data; see MediaObject::ProcessInput
                (-> http://msdn.microsoft.com/en-us/library/windows/desktop/dd406959(v=vs.85).aspx).
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoErrorCodes.DMO_E_TYPE_NOT_ACCEPTED">
            <summary>
                Media type was not accepted.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoErrorCodes.DMO_E_NO_MORE_ITEMS">
            <summary>
                Media-type index is out of range.
            </summary>
        </member>
        <member name="T:CSCore.DMO.DmoInputSizeInfo">
            <summary>
                Encapsulates the values retrieved by the <see cref="M:CSCore.DMO.MediaObject.GetInputSizeInfo(System.Int32)"/> method.
            </summary>
        </member>
        <member name="M:CSCore.DMO.DmoInputSizeInfo.#ctor(System.Int32,System.Int32,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DMO.DmoInputSizeInfo"/> class.
            </summary>
            <param name="minSize">The minimum size of an input buffer for the stream, in bytes.</param>
            <param name="alignment">The required buffer alignment, in bytes. If the stream has no alignment requirement, the value is 1</param>
            <param name="maxLookahead">The maximum amount of data that the DMO will hold for a lookahead, in bytes. If the DMO does not perform a lookahead on the stream, the value is zero.</param>
        </member>
        <member name="P:CSCore.DMO.DmoInputSizeInfo.MaxLookahead">
            <summary>
                Gets the maximum amount of data that the DMO will hold for a lookahead, in bytes. If the DMO does not perform a
                lookahead on the stream, the value is zero.
            </summary>
        </member>
        <member name="T:CSCore.DMO.DmoInputStreamInfoFlags">
            <summary>
                Defines flags that describe an input stream.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoInputStreamInfoFlags.None">
            <summary>
                None.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoInputStreamInfoFlags.WholeSamples">
            <summary>
                The stream requires whole samples. Samples must not span multiple buffers, and buffers must not contain partial
                samples.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoInputStreamInfoFlags.SingleSamplePerBuffer">
            <summary>
                Each buffer must contain exactly one sample.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoInputStreamInfoFlags.FixedSampleSize">
            <summary>
                All the samples in this stream must be the same size.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoInputStreamInfoFlags.HoldBuffers">
            <summary>
                The DMO performs lookahead on the incoming data, and may hold multiple input buffers for this stream.
            </summary>
        </member>
        <member name="T:CSCore.DMO.DmoOutputDataBuffer">
            <summary>
                Represents a Dmo output data buffer. For more details see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd375507(v=vs.85).aspx"/>.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoOutputDataBuffer.Buffer">
            <summary>
                Pointer to the <see cref="T:CSCore.DMO.IMediaBuffer"/> interface of a buffer allocated by the application.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoOutputDataBuffer.Status">
            <summary>
                Status flags. After processing output, the DMO sets this member to a bitwise combination
                of <see cref="F:CSCore.DMO.OutputDataBufferFlags.None"/> or more <see cref="T:CSCore.DMO.OutputDataBufferFlags"/> flags.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoOutputDataBuffer.Timestamp">
            <summary>
                Time stamp that specifies the start time of the data in the buffer. If the buffer has a
                valid time stamp, the DMO sets this member and also sets the
                <see cref="F:CSCore.DMO.OutputDataBufferFlags.Time"/> flag in the dwStatus member. Otherwise, ignore this member.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoOutputDataBuffer.TimeLength">
            <summary>
                Reference time specifying the length of the data in the buffer. If the DMO sets this
                member to a valid value, it also sets the <see cref="F:CSCore.DMO.OutputDataBufferFlags.TimeLength"/> flag in the
                dwStatus member. Otherwise, ignore this member.
            </summary>
        </member>
        <member name="M:CSCore.DMO.DmoOutputDataBuffer.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DMO.DmoOutputDataBuffer"/> struct.
            </summary>
            <param name="bufferSize">The maxlength (in bytes) of the internally used <see cref="T:CSCore.DMO.MediaBuffer"/>.</param>
        </member>
        <member name="P:CSCore.DMO.DmoOutputDataBuffer.Length">
            <summary>
                Gets the length of the <see cref="T:CSCore.DMO.MediaBuffer"/>.
            </summary>
        </member>
        <member name="M:CSCore.DMO.DmoOutputDataBuffer.Read(System.Byte[],System.Int32)">
            <summary>
                Reads a sequence of bytes from the <see cref="T:CSCore.DMO.MediaBuffer"/>.
            </summary>
            <param name="buffer">Array of bytes to store the read bytes in.</param>
            <param name="offset">
                Zero-based byte offset in the specified buffer at which to begin storing the data read from the
                buffer.
            </param>
            <returns>The number of read bytes.</returns>        
        </member>
        <member name="M:CSCore.DMO.DmoOutputDataBuffer.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from the <see cref="T:CSCore.DMO.MediaBuffer"/>.
            </summary>
            <param name="buffer">Array of bytes to store the read bytes in.</param>
            <param name="offset">
                Zero-based byte offset in the specified buffer at which to begin storing the data read from the
                buffer.
            </param>
            <param name="count">The maximum number of bytes to read from the buffer.</param>
            <returns>The number of read bytes.</returns>
        </member>
        <member name="M:CSCore.DMO.DmoOutputDataBuffer.Read(System.Byte[],System.Int32,System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from the <see cref="T:CSCore.DMO.MediaBuffer"/>.
            </summary>
            <param name="buffer">Array of bytes to store the read bytes in.</param>
            <param name="offset">
                Zero-based byte offset in the specified buffer at which to begin storing the data read from the
                buffer.
            </param>
            <param name="count">The maximum number of bytes to read from the buffer.</param>
            <param name="sourceOffset">Zero-based offset inside of the source buffer at which to begin copying data.</param>
            <returns>The number of read bytes.</returns>
        </member>
        <member name="M:CSCore.DMO.DmoOutputDataBuffer.Reset">
            <summary>
                Resets the Buffer. Sets the length of the <see cref="T:CSCore.DMO.MediaBuffer"/> to zero and sets the
                <see cref="F:CSCore.DMO.DmoOutputDataBuffer.Status" /> to <see cref="F:CSCore.DMO.OutputDataBufferFlags.None" />.
            </summary>
        </member>
        <member name="M:CSCore.DMO.DmoOutputDataBuffer.Dispose">
            <summary>
                Disposes the internally used <see cref="T:CSCore.DMO.MediaBuffer"/>.
            </summary>
        </member>
        <member name="T:CSCore.DMO.DmoOutputStreamInfoFlags">
            <summary>
            The <see cref="T:CSCore.DMO.DmoOutputStreamInfoFlags"/> enumeration defines flags that describe an output stream.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoOutputStreamInfoFlags.None">
            <summary>
                None
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoOutputStreamInfoFlags.WholeSamples">
            <summary>
                The stream contains whole samples. Samples do not span multiple buffers, and buffers do not contain partial
                samples.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoOutputStreamInfoFlags.SingleSamplePerBuffer">
            <summary>
                Each buffer contains exactly one sample.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoOutputStreamInfoFlags.FixedSampleSize">
            <summary>
                All the samples in this stream are the same size.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoOutputStreamInfoFlags.Discardable">
            <summary>
                The stream is discardable. Within calls to IMediaObject::ProcessOutput, the DMO can discard data for this stream
                without copying it to an output buffer.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoOutputStreamInfoFlags.Optional">
            <summary>
                The stream is optional. An optional stream is discardable. Also, the application can ignore this stream entirely;
                it does not have to set the media type for the stream. Optional streams generally contain additional information,
                or data not needed by all applications.
            </summary>
        </member>
        <member name="T:CSCore.DMO.DmoPartialMediaType">
            <summary>
                Describes a media type used by a Microsoft DirectX Media Object.
            </summary>
            <remarks>For more informatin, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd375510(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="F:CSCore.DMO.DmoPartialMediaType.Type">
            <summary>
                Major type GUID. Use <see cref="F:System.Guid.Empty"/> to match any major type.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoPartialMediaType.SubType">
            <summary>
                Subtype GUID. Use <see cref="F:System.Guid.Empty"/> to match any subtype.
            </summary>
        </member>
        <member name="T:CSCore.DMO.DmoSizeInfo">
            <summary>
                Encapsulates the values retrieved by the <see cref="M:CSCore.DMO.MediaObject.GetInputSizeInfo(System.Int32)"/>- and the <see cref="M:CSCore.DMO.MediaObject.GetOutputSizeInfo(System.Int32)"/>- method.
            </summary>
        </member>
        <member name="M:CSCore.DMO.DmoSizeInfo.#ctor(System.Int32,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DMO.DmoInputSizeInfo"/> class.
            </summary>
            <param name="minSize">The minimum size of an input buffer for the stream, in bytes.</param>
            <param name="alignment">The required buffer alignment, in bytes. If the stream has no alignment requirement, the value is 1.</param>
        </member>
        <member name="P:CSCore.DMO.DmoSizeInfo.MinSize">
            <summary>
                Gets the minimum size of an input buffer for this stream, in bytes.
            </summary>
        </member>
        <member name="P:CSCore.DMO.DmoSizeInfo.Alignment">
            <summary>
                Gets the required buffer alignment, in bytes. If the input stream has no alignment requirement, the value is 1.
            </summary>
        </member>
        <member name="T:CSCore.DMO.DmoStream">
            <summary>
                Base class for all Dmo based streams.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoStream.InputIndex">
            <summary>
                The default inputStreamIndex to use.
            </summary>
        </member>
        <member name="F:CSCore.DMO.DmoStream.OutputIndex">
            <summary>
                The default outputStreamIndex to use.
            </summary>
        </member>
        <member name="P:CSCore.DMO.DmoStream.InputFormat">
            <summary>
                Gets the input format of the <see cref="T:CSCore.DMO.DmoStream" />.
            </summary>
        </member>
        <member name="M:CSCore.DMO.DmoStream.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from the stream.
            </summary>
            <param name="buffer">An array of bytes. When this method returns, the buffer contains the read bytes.</param>
            <param name="offset">The zero-based byte offset in buffer at which to begin storing the data read from the stream.</param>
            <param name="count">The maximum number of bytes to be read from the stream</param>
            <returns>The actual number of read bytes.</returns>
        </member>
        <member name="P:CSCore.DMO.DmoStream.Position">
            <summary>
                Gets or sets the position of the stream.
            </summary>
        </member>
        <member name="P:CSCore.DMO.DmoStream.Length">
            <summary>
                Gets the length of the stream.
            </summary>
        </member>
        <member name="P:CSCore.DMO.DmoStream.CanSeek">
            <summary>
            Gets a value indicating whether the <see cref="T:CSCore.IAudioSource"/> supports seeking.
            </summary>
        </member>
        <member name="M:CSCore.DMO.DmoStream.Dispose">
            <summary>
                Disposes the <see cref="T:CSCore.DMO.DmoStream" />.
            </summary>
        </member>
        <member name="P:CSCore.DMO.DmoStream.WaveFormat">
            <summary>
                Gets the output format of the <see cref="T:CSCore.DMO.DmoStream" />.
            </summary>
        </member>
        <member name="M:CSCore.DMO.DmoStream.GetInputData(System.Byte[]@,System.Int32)">
            <summary>
                Gets inputData to feed the Dmo MediaObject with.
            </summary>
            <param name="inputDataBuffer">
                InputDataBuffer which receives the inputData.
                If this parameter is null or the length is less than the amount of inputData, a new byte array will be applied.
            </param>
            <param name="requested">The requested number of bytes.</param>
            <returns>The number of bytes read. The number of actually read bytes does not have to be the number of requested bytes.</returns>
        </member>
        <member name="M:CSCore.DMO.DmoStream.CreateMediaObject(CSCore.WaveFormat,CSCore.WaveFormat)">
            <summary>
                Creates and returns a new <see cref="T:CSCore.DMO.MediaObject"/> instance to use for processing audio data. This can be a decoder, effect, ...
            </summary>
            <param name="inputFormat">The input format of the <see cref="T:CSCore.DMO.MediaObject"/> to create.</param>
            <param name="outputFormat">The output format of the <see cref="T:CSCore.DMO.MediaObject"/> to create.</param>
            <returns>The created <see cref="T:CSCore.DMO.MediaObject"/> to use for processing audio data.</returns>
        </member>
        <member name="M:CSCore.DMO.DmoStream.GetInputFormat">
            <summary>
                Gets the input format to use.
            </summary>
            <returns>The input format.</returns>
        </member>
        <member name="M:CSCore.DMO.DmoStream.GetOutputFormat">
            <summary>
                Gets the output format to use.
            </summary>
            <returns>The output format.</returns>
        </member>
        <member name="M:CSCore.DMO.DmoStream.Initialize">
            <summary>
                Initializes the DmoStream. Important: This has to be called before using the DmoStream.
            </summary>
        </member>
        <member name="M:CSCore.DMO.DmoStream.InputToOutput(System.Int64)">
            <summary>
                Converts a position of the inputstream to the equal position in the outputstream.
            </summary>
            <param name="position">Any position/offset of the inputstream, in bytes.</param>
            <returns>Position in the outputstream, in bytes.</returns>
        </member>
        <member name="M:CSCore.DMO.DmoStream.OutputToInput(System.Int64)">
            <summary>
                Translates a position of the outputstream to the equal position in the inputstream.
            </summary>
            <param name="position">Any position/offset of the outputstream, in bytes.</param>
            <returns>Position in the inputstream, in bytes.</returns>
        </member>
        <member name="M:CSCore.DMO.DmoStream.ResetOverflowBuffer">
            <summary>
                Resets the overflowbuffer.
            </summary>
        </member>
        <member name="M:CSCore.DMO.DmoStream.Dispose(System.Boolean)">
            <summary>
            Releases the <see cref="T:CSCore.DMO.DmoStream"/>.
            </summary>
            <param name="disposing"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
        </member>
        <member name="M:CSCore.DMO.DmoStream.Finalize">
            <summary>
            Finalizes an instance of the <see cref="T:CSCore.DMO.DmoStream"/> class.
            </summary>
        </member>
        <member name="T:CSCore.DMO.Effects.ChorusParameters">
            <summary>
            Internal parameter structure for the <see cref="T:CSCore.DMO.Effects.DirectSoundFXChorus"/> effect.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.ChorusParameters.WetDryMix">
            <summary>
            The wet dry mix.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.ChorusParameters.Depth">
            <summary>
            The depth.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.ChorusParameters.Feedback">
            <summary>
            The feedback.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.ChorusParameters.Frequency">
            <summary>
            The frequency.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.ChorusParameters.Waveform">
            <summary>
            The waveform.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.ChorusParameters.Delay">
            <summary>
            The delay.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.ChorusParameters.Phase">
            <summary>
            The phase.
            </summary>
        </member>
        <member name="T:CSCore.DMO.Effects.CompressorParameters">
            <summary>
            Internal parameter structure for the <see cref="T:CSCore.DMO.Effects.DirectSoundFXCompressor"/> effect.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.CompressorParameters.Gain">
            <summary>
            The gain.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.CompressorParameters.Attack">
            <summary>
            The attack.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.CompressorParameters.Release">
            <summary>
            The release.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.CompressorParameters.Threshold">
            <summary>
            The threshold.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.CompressorParameters.Ratio">
            <summary>
            The ratio.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.CompressorParameters.Predelay">
            <summary>
            The predelay.
            </summary>
        </member>
        <member name="T:CSCore.DMO.Effects.DirectSoundFxBase`1">
            <summary>
                Base class for any DirectSoundEffect.
            </summary>
            <typeparam name="T">Parameters type. <seealso cref="P:CSCore.DMO.Effects.DirectSoundFxBase`1.Parameters"/></typeparam>
        </member>
        <member name="M:CSCore.DMO.Effects.DirectSoundFxBase`1.#ctor(System.IntPtr)">
            <summary>
                Default ctor for a ComObject.
            </summary>
            <param name="ptr">Pointer of a DirectSoundEffect interface.</param>
        </member>
        <member name="P:CSCore.DMO.Effects.DirectSoundFxBase`1.Parameters">
            <summary>
                Gets or sets the Parameters of the Effect.
            </summary>
        </member>
        <member name="P:CSCore.DMO.Effects.DirectSoundFxBase`1.InterfaceName">
            <summary>
                Gets the name of the COM interface. Used for generating error messages.
            </summary>
        </member>
        <member name="M:CSCore.DMO.Effects.DirectSoundFxBase`1.SetAllParametersNative(`0)">
            <summary>
                Sets the effects parameters.
            <seealso cref="P:CSCore.DMO.Effects.DirectSoundFxBase`1.Parameters"/>
            </summary>
            <param name="parameters">Object that contains the new parameters of the effect.</param>
            <returns>HRESULT</returns>
            <remarks>Use the <see cref="P:CSCore.DMO.Effects.DirectSoundFxBase`1.Parameters"/> property instead.</remarks>        
        </member>
        <member name="M:CSCore.DMO.Effects.DirectSoundFxBase`1.GetAllParametersNative(`0@)">
            <summary>
                Retrieves the effects parameters.
            <seealso cref="P:CSCore.DMO.Effects.DirectSoundFxBase`1.Parameters"/>
            </summary>
            <param name="parameters">A variable which retrieves the set parameters of the effect.</param>
            <returns>HRESULT</returns>
            <remarks>Use the <see cref="P:CSCore.DMO.Effects.DirectSoundFxBase`1.Parameters"/> property instead.</remarks>
        </member>
        <member name="T:CSCore.DMO.Effects.DirectSoundFXChorus">
            <summary>
                The IDirectSoundFXChorus interface is used to set and retrieve effect parameters.
            </summary>
        </member>
        <member name="M:CSCore.DMO.Effects.DirectSoundFXChorus.#ctor(System.IntPtr)">
            <summary>
                Creates a DirectSoundFXChorus wrapper based on a pointer to a IDirectSoundFXChorus cominterface.
            </summary>
            <param name="ptr">Pointer of a DirectSoundFXChorus interface.</param>
        </member>
        <member name="P:CSCore.DMO.Effects.DirectSoundFXChorus.InterfaceName">
            <summary>
                Interface name used for generating DmoExceptions.
            </summary>
        </member>
        <member name="T:CSCore.DMO.Effects.DirectSoundFXCompressor">
            <summary>
                The DirectSoundFXCompressor interface is used to set and retrieve effect parameters.
            </summary>
        </member>
        <member name="M:CSCore.DMO.Effects.DirectSoundFXCompressor.#ctor(System.IntPtr)">
            <summary>
                Creates a DirectSoundFXCompressor wrapper based on a pointer to a IDirectSoundFXCompressor cominterface.
            </summary>
            <param name="ptr">Pointer of a DirectSoundFXCompressor interface.</param>
        </member>
        <member name="P:CSCore.DMO.Effects.DirectSoundFXCompressor.InterfaceName">
            <summary>
                Interface name used for generating DmoExceptions.
            </summary>
        </member>
        <member name="T:CSCore.DMO.Effects.DirectSoundFXDistortion">
            <summary>
                The DirectSoundFXDistortion interface is used to set and retrieve effect parameters.
            </summary>
        </member>
        <member name="M:CSCore.DMO.Effects.DirectSoundFXDistortion.#ctor(System.IntPtr)">
            <summary>
                Creates a DirectSoundFXDistortion wrapper based on a pointer to a IDirectSoundFXDistortion cominterface.
            </summary>
            <param name="ptr">Pointer of a DirectSoundFXDistortion interface.</param>
        </member>
        <member name="P:CSCore.DMO.Effects.DirectSoundFXDistortion.InterfaceName">
            <summary>
                Interface name used for generating DmoExceptions.
            </summary>
        </member>
        <member name="T:CSCore.DMO.Effects.DirectSoundFXEcho">
            <summary>
                The IDirectSoundFXEcho interface is used to set and retrieve effect parameters.
            </summary>
        </member>
        <member name="M:CSCore.DMO.Effects.DirectSoundFXEcho.#ctor(System.IntPtr)">
            <summary>
                Creates a DirectSoundFXEcho wrapper based on a pointer to a IDirectSoundFXEcho cominterface.
            </summary>
            <param name="ptr">Pointer of a DirectSoundFXEcho interface.</param>
        </member>
        <member name="P:CSCore.DMO.Effects.DirectSoundFXEcho.InterfaceName">
            <summary>
                Interface name used for generating DmoExceptions.
            </summary>
        </member>
        <member name="T:CSCore.DMO.Effects.DirectSoundFXFlanger">
            <summary>
                The DirectSoundFXFlanger interface is used to set and retrieve effect parameters.
            </summary>
        </member>
        <member name="M:CSCore.DMO.Effects.DirectSoundFXFlanger.#ctor(System.IntPtr)">
            <summary>
                Creates a DirectSoundFXFlanger wrapper based on a pointer to a IDirectSoundFXFlanger cominterface.
            </summary>
            <param name="ptr">Pointer of a DirectSoundFXFlanger interface.</param>
        </member>
        <member name="P:CSCore.DMO.Effects.DirectSoundFXFlanger.InterfaceName">
            <summary>
                Interface name used for generating DmoExceptions.
            </summary>
        </member>
        <member name="T:CSCore.DMO.Effects.DirectSoundFXGargle">
            <summary>
                The IDirectSoundFXChorus interface is used to set and retrieve effect parameters.
            </summary>
        </member>
        <member name="M:CSCore.DMO.Effects.DirectSoundFXGargle.#ctor(System.IntPtr)">
            <summary>
                Creates a DirectSoundFXGargle wrapper based on a pointer to a IDirectSoundFXGargle cominterface.
            </summary>
            <param name="ptr">Pointer of a DirectSoundFXGargle interface.</param>
        </member>
        <member name="P:CSCore.DMO.Effects.DirectSoundFXGargle.InterfaceName">
            <summary>
                Interface name used for generating DmoExceptions.
            </summary>
        </member>
        <member name="T:CSCore.DMO.Effects.DirectSoundFXWavesReverb">
            <summary>
                The DirectSoundFXReverb interface is used to set and retrieve effect parameters.
            </summary>
        </member>
        <member name="M:CSCore.DMO.Effects.DirectSoundFXWavesReverb.#ctor(System.IntPtr)">
            <summary>
                Creates a DirectSoundFXWavesReverb wrapper based on a pointer to a IDirectSoundFXWavesReverb cominterface.
            </summary>
            <param name="ptr">Pointer of a DirectSoundFXWavesReverb interface.</param>
        </member>
        <member name="P:CSCore.DMO.Effects.DirectSoundFXWavesReverb.InterfaceName">
            <summary>
                Interface name used for generating DmoExceptions.
            </summary>
        </member>
        <member name="T:CSCore.DMO.Effects.DistortionParameters">
            <summary>
            Internal parameter structure for the <see cref="T:CSCore.DMO.Effects.DirectSoundFXDistortion"/> effect.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.DistortionParameters.Gain">
            <summary>
            The gain.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.DistortionParameters.Edge">
            <summary>
            The edge.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.DistortionParameters.PostEQCenterFrequency">
            <summary>
            The post eq center frequency.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.DistortionParameters.PostEQBandwidth">
            <summary>
            The post eq bandwidth.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.DistortionParameters.PreLowpassCutoff">
            <summary>
            The pre lowpass cutoff.
            </summary>
        </member>
        <member name="T:CSCore.DMO.Effects.EchoParameters">
            <summary>
            Internal parameter structure for the <see cref="T:CSCore.DMO.Effects.DirectSoundFXEcho"/> effect.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.EchoParameters.WetDryMix">
            <summary>
            The wet dry mix.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.EchoParameters.Feedback">
            <summary>
            The feedback.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.EchoParameters.LeftDelay">
            <summary>
            The left delay.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.EchoParameters.RightDelay">
            <summary>
            The right delay.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.EchoParameters.PanDelay">
            <summary>
            The pan delay.
            </summary>
        </member>
        <member name="T:CSCore.DMO.Effects.FlangerParameters">
            <summary>
            Internal parameter structure for the <see cref="T:CSCore.DMO.Effects.DirectSoundFXFlanger"/> effect.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.FlangerParameters.WetDryMix">
            <summary>
            The wet dry mix.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.FlangerParameters.Depth">
            <summary>
            The depth.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.FlangerParameters.Feedback">
            <summary>
            The feedback.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.FlangerParameters.Frequency">
            <summary>
            The frequency.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.FlangerParameters.Waveform">
            <summary>
            The waveform.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.FlangerParameters.Delay">
            <summary>
            The delay.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.FlangerParameters.Phase">
            <summary>
            The phase.
            </summary>
        </member>
        <member name="T:CSCore.DMO.Effects.GargleParameters">
            <summary>
            Internal parameter structure for the <see cref="T:CSCore.DMO.Effects.DirectSoundFXGargle"/> effect.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.GargleParameters.RateHz">
            <summary>
            The rate hz.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.GargleParameters.WaveShape">
            <summary>
            The wave shape.
            </summary>
        </member>
        <member name="T:CSCore.DMO.Effects.WavesReverbParameters">
            <summary>
            Internal parameter structure for the <see cref="T:CSCore.DMO.Effects.DirectSoundFXWavesReverb"/> effect.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.WavesReverbParameters.InGain">
            <summary>
            The in gain.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.WavesReverbParameters.ReverbMix">
            <summary>
            The reverb mix.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.WavesReverbParameters.ReverbTime">
            <summary>
            The reverb time.
            </summary>
        </member>
        <member name="F:CSCore.DMO.Effects.WavesReverbParameters.HighFreqRTRatio">
            <summary>
            The high freq rt ratio.
            </summary>
        </member>
        <member name="T:CSCore.DMO.EnumDmo">
            <summary>
                Provides methods for enumerating Microsoft DirectX Media Objects.
            </summary>
        </member>
        <member name="M:CSCore.DMO.EnumDmo.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DMO.EnumDmo"/> class.
            </summary>
            <param name="ptr">The native pointer of the COM object.</param>
        </member>
        <member name="M:CSCore.DMO.EnumDmo.EnumerateDMOs(System.Guid,CSCore.DMO.DmoEnumFlags,CSCore.DMO.DmoPartialMediaType[],CSCore.DMO.DmoPartialMediaType[])">
            <summary>
                Enumerates DMOs listed in the registry. The caller can search by category, media type, or both.
            </summary>
            <param name="category">
                GUID that specifies which category of DMO to search. Use Guid.Empty to search every category.
                See <see cref="T:CSCore.DMO.DmoEnumeratorCategories" /> for a list of category guids.
            </param>
            <param name="flags">Flags that specify search criteria.</param>
            <param name="inputTypes">Array of input-Mediatypes.</param>
            <param name="outputTypes">Array of output-Mediatypes.</param>
            <returns>EnumDMO</returns>
        </member>
        <member name="M:CSCore.DMO.EnumDmo.EnumerateDMOs(System.Guid,CSCore.DMO.DmoEnumFlags)">
            <summary>
                Enumerates DMOs listed in the registry.
            </summary>
            <param name="category">
                GUID that specifies which category of DMO to search. Use Guid.Empty to search every category.
                See <see cref="T:CSCore.DMO.DmoEnumeratorCategories" /> for a list of category guids.
            </param>
            <param name="flags">Flags that specify search criteria.</param>
            <returns>An <see cref="T:System.Collections.Generic.IEnumerable`1"/> that can be used to iterate through the enumerated DMOs.</returns>
        </member>
        <member name="M:CSCore.DMO.EnumDmo.NextNative(System.Int32,System.Guid[]@,System.String[]@,System.Int32@)">
            <summary>
                Retrieves a specified number of items in the enumeration sequence.
            </summary>
            <param name="itemsToFetch">Number of items to retrieve.</param>
            <param name="clsids">Array that is filled with the CLSIDs of the enumerated DMOs.</param>
            <param name="names">Array that is filled with the friendly names of the enumerated DMOs.</param>
            <param name="itemsFetched">Actual number of items retrieved.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.EnumDmo.Next(System.Int32)">
            <summary>
                Retrieves a specified number of items in the enumeration sequence.
            </summary>
            <param name="itemsToFetch">Number of items to retrieve.</param>
            <returns>Array of enumerated DMOs.</returns>
        </member>
        <member name="M:CSCore.DMO.EnumDmo.SkipNative(System.Int32)">
            <summary>
                Skips over a specified number of items in the enumeration sequence.
            </summary>
            <param name="itemsToSkip">Number of items to skip.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.EnumDmo.Skip(System.Int32)">
            <summary>
                Skips over a specified number of items in the enumeration sequence.
            </summary>
            <param name="itemsToSkip">Number of items to skip.</param>
        </member>
        <member name="M:CSCore.DMO.EnumDmo.ResetNative">
            <summary>
                Resets the enumeration sequence to the beginning.
            </summary>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.EnumDmo.Reset">
            <summary>
                Resets the enumeration sequence to the beginning.
            </summary>
        </member>
        <member name="M:CSCore.DMO.EnumDmo.CloneNative(System.IntPtr@)">
            <summary>
                This method is not implemented.
            </summary>
            <param name="pEnum">Reserved</param>
            <returns><see cref="F:CSCore.Win32.HResult.E_NOTIMPL"/></returns>
        </member>
        <member name="M:CSCore.DMO.EnumDmo.Clone">
            <summary>
                This method is not implemented.
            </summary>
            <returns>This method is not implemented an will throw an <see cref="T:CSCore.DMO.DmoException"/> with the error code <see cref="F:CSCore.Win32.HResult.E_NOTIMPL"/>.</returns>
        </member>
        <member name="T:CSCore.DMO.IMediaBuffer">
            <summary>
            The <see cref="T:CSCore.DMO.IMediaBuffer"/> interface provides methods for manipulating a data buffer.
            </summary>
            <remarks>For more information, <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd390166(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="M:CSCore.DMO.IMediaBuffer.SetLength(System.Int32)">
            <summary>
            The SetLength method specifies the length of the data currently in the buffer.
            </summary>
            <param name="length">Size of the data, in bytes. The value must not exceed the buffer's maximum size. Call the <see cref="M:CSCore.DMO.IMediaBuffer.GetMaxLength(System.Int32@)"/> method to obtain the maximum size.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.IMediaBuffer.GetMaxLength(System.Int32@)">
            <summary>
            The <see cref="M:CSCore.DMO.IMediaBuffer.GetMaxLength(System.Int32@)"/> method retrieves the maximum number of bytes this buffer can hold.
            </summary>
            <param name="length">A variable that receives the buffer's maximum size, in bytes.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.IMediaBuffer.GetBufferAndLength(System.IntPtr,System.IntPtr)">
            <summary>
            The <see cref="M:CSCore.DMO.IMediaBuffer.GetBufferAndLength(System.IntPtr,System.IntPtr)"/> method retrieves the buffer and the size of the valid data in the buffer.
            </summary>
            <param name="ppBuffer">Address of a pointer that receives the buffer array. Can be <see cref="F:System.IntPtr.Zero"/> if <paramref name="validDataByteLength"/> is not <see cref="F:System.IntPtr.Zero"/>.</param>
            <param name="validDataByteLength">Pointer to a variable that receives the size of the valid data, in bytes. Can be <see cref="F:System.IntPtr.Zero"/> if <paramref name="ppBuffer"/> is not <see cref="F:System.IntPtr.Zero"/>.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="T:CSCore.DMO.InputDataBufferFlags">
            <summary>
                Defines flags that describe an input buffer.
                See http://msdn.microsoft.com/en-us/library/windows/desktop/dd375501(v=vs.85).aspx
            </summary>
        </member>
        <member name="F:CSCore.DMO.InputDataBufferFlags.None">
            <summary>
                None
            </summary>
        </member>
        <member name="F:CSCore.DMO.InputDataBufferFlags.SyncPoint">
            <summary>
                The beginning of the data is a synchronization point.
            </summary>
        </member>
        <member name="F:CSCore.DMO.InputDataBufferFlags.Time">
            <summary>
                The buffer's time stamp is valid. The buffer's indicated time length is valid.
            </summary>
        </member>
        <member name="F:CSCore.DMO.InputDataBufferFlags.TimeLength">
            <summary>
                The buffer's indicated time length is valid.
            </summary>
        </member>
        <member name="T:CSCore.DMO.InputStatusFlags">
            <summary>
                InputStatusFlags.
                See also: http://msdn.microsoft.com/en-us/library/windows/desktop/dd406950(v=vs.85).aspx
            </summary>
        </member>
        <member name="F:CSCore.DMO.InputStatusFlags.None">
            <summary>
                None
            </summary>
        </member>
        <member name="F:CSCore.DMO.InputStatusFlags.AcceptData">
            <summary>
                The stream accepts data.
            </summary>
        </member>
        <member name="T:CSCore.DMO.InputStreamInfoFlags">
            <summary>
                Defines flags that describe an input stream.
                See http://msdn.microsoft.com/en-us/library/windows/desktop/dd375502(v=vs.85).aspx.
            </summary>
        </member>
        <member name="F:CSCore.DMO.InputStreamInfoFlags.None">
            <summary>
                None
            </summary>
        </member>
        <member name="F:CSCore.DMO.InputStreamInfoFlags.WholeSamples">
            <summary>
                The stream contains whole samples. Samples do not span multiple buffers, and buffers do
                not contain partial samples.
            </summary>
        </member>
        <member name="F:CSCore.DMO.InputStreamInfoFlags.SingleSamplePerBuffer">
            <summary>
                Each buffer contains exactly one sample.
            </summary>
        </member>
        <member name="F:CSCore.DMO.InputStreamInfoFlags.FixedSampleSize">
            <summary>
                The stream is discardable. Within calls to IMediaObject::ProcessOutput, the DMO can
                discard data for this stream without copying it to an output buffer.
            </summary>
        </member>
        <member name="F:CSCore.DMO.InputStreamInfoFlags.HoldsBuffers">
            <summary>
                The DMO performs lookahead on the incoming data, and may hold multiple input buffers for
                this stream.
            </summary>
        </member>
        <member name="T:CSCore.DMO.OutputDataBufferFlags">
            <summary>
                Defines flags that describe an output buffer.
                See http://msdn.microsoft.com/en-us/library/windows/desktop/dd375508(v=vs.85).aspx.
            </summary>
        </member>
        <member name="F:CSCore.DMO.OutputDataBufferFlags.None">
            <summary>
                None
            </summary>
        </member>
        <member name="F:CSCore.DMO.OutputDataBufferFlags.SyncPoint">
            <summary>
                The beginning of the data is a synchronization point. A synchronization point is a
                random access point. For encoded video, this a sample that can be used as a decoding
                start point (key frame). For uncompressed audio or video, every sample is a
                synchronization point.
            </summary>
        </member>
        <member name="F:CSCore.DMO.OutputDataBufferFlags.Time">
            <summary>
                The buffer's time stamp is valid. The buffer's indicated time length is valid.
            </summary>
        </member>
        <member name="F:CSCore.DMO.OutputDataBufferFlags.TimeLength">
            <summary>
                The buffer's indicated time length is valid.
            </summary>
        </member>
        <member name="F:CSCore.DMO.OutputDataBufferFlags.Incomplete">
            <summary>
                There is still input data available for processing, but the output buffer is full.
            </summary>
        </member>
        <member name="T:CSCore.DMO.OutputStreamInfoFlags">
            <summary>
                Flags that describe an output stream.
                See http://msdn.microsoft.com/en-us/library/windows/desktop/dd375509(v=vs.85).aspx.
            </summary>
        </member>
        <member name="F:CSCore.DMO.OutputStreamInfoFlags.None">
            <summary>
                None
            </summary>
        </member>
        <member name="F:CSCore.DMO.OutputStreamInfoFlags.WholeSamples">
            <summary>
                The stream contains whole samples. Samples do not span multiple buffers, and buffers do
                not contain partial samples.
            </summary>
        </member>
        <member name="F:CSCore.DMO.OutputStreamInfoFlags.SingleSamplePerBuffer">
            <summary>
                Each buffer contains exactly one sample.
            </summary>
        </member>
        <member name="F:CSCore.DMO.OutputStreamInfoFlags.FixedSampleSize">
            <summary>
                All the samples in this stream are the same size.
            </summary>
        </member>
        <member name="F:CSCore.DMO.OutputStreamInfoFlags.Discardable">
            <summary>
                The stream is discardable. Within calls to IMediaObject::ProcessOutput, the DMO can
                discard data for this stream without copying it to an output buffer.
            </summary>
        </member>
        <member name="F:CSCore.DMO.OutputStreamInfoFlags.Optional">
            <summary>
                The stream is optional. An optional stream is discardable. Also, the application can
                ignore this stream entirely; it does not have to set the media type for the stream.
                Optional streams generally contain additional information, or data not needed by all
                applications.
            </summary>
        </member>
        <member name="T:CSCore.DMO.ProcessOutputFlags">
            <summary>
                Defines flags that specify output processing requests.
                See http://msdn.microsoft.com/en-us/library/windows/desktop/dd375511(v=vs.85).aspx
            </summary>
        </member>
        <member name="F:CSCore.DMO.ProcessOutputFlags.None">
            <summary>
                None
            </summary>
        </member>
        <member name="F:CSCore.DMO.ProcessOutputFlags.DiscardWhenNoBuffer">
            <summary>
                Discard the output when the pointer to the output buffer is NULL.
            </summary>
        </member>
        <member name="T:CSCore.DMO.SetTypeFlags">
            <summary>
                Defines flags for setting the media type on a stream.
                See http://msdn.microsoft.com/en-us/library/windows/desktop/dd375514(v=vs.85).aspx.
            </summary>
        </member>
        <member name="F:CSCore.DMO.SetTypeFlags.None">
            <summary>
                None
            </summary>
        </member>
        <member name="F:CSCore.DMO.SetTypeFlags.TestOnly">
            <summary>
                Test the media type but do not set it.
            </summary>
        </member>
        <member name="F:CSCore.DMO.SetTypeFlags.Clear">
            <summary>
                Clear the media type that was set for the stream.
            </summary>
        </member>
        <member name="T:CSCore.DMO.MediaBuffer">
            <summary>
                Default-Implementation of the IMediaBuffer interface.
                For more information, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd376684(v=vs.85).aspx"/>.
            </summary>
        </member>
        <member name="M:CSCore.DMO.MediaBuffer.#ctor(System.Int32)">
            <summary>
                Creates a MediaBuffer and allocates the specified number of bytes in the memory.
            </summary>
            <param name="maxlength">The number of bytes which has to be allocated in the memory.</param>
        </member>
        <member name="P:CSCore.DMO.MediaBuffer.MaxLength">
            <summary>
                Gets the maximum number of bytes this buffer can hold.
            </summary>
        </member>
        <member name="P:CSCore.DMO.MediaBuffer.Length">
            <summary>
                Gets the length of the data currently in the buffer.
            </summary>
        </member>
        <member name="M:CSCore.DMO.MediaBuffer.Dispose">
            <summary>
                Frees the allocated memory of the internally used buffer.
            </summary>
        </member>
        <member name="M:CSCore.DMO.MediaBuffer.CSCore#DMO#IMediaBuffer#SetLength(System.Int32)">
            <summary>
            The SetLength method specifies the length of the data currently in the buffer.
            </summary>
            <param name="length">Size of the data, in bytes. The value must not exceed the buffer's maximum size. Call the <see cref="M:CSCore.DMO.IMediaBuffer.GetMaxLength(System.Int32@)"/> method to obtain the maximum size.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.MediaBuffer.CSCore#DMO#IMediaBuffer#GetMaxLength(System.Int32@)">
            <summary>
            The <see cref="M:CSCore.DMO.IMediaBuffer.GetMaxLength(System.Int32@)"/> method retrieves the maximum number of bytes this buffer can hold.
            </summary>
            <param name="length">A variable that receives the buffer's maximum size, in bytes.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.MediaBuffer.CSCore#DMO#IMediaBuffer#GetBufferAndLength(System.IntPtr,System.IntPtr)">
            <summary>
            The <see cref="M:CSCore.DMO.IMediaBuffer.GetBufferAndLength(System.IntPtr,System.IntPtr)"/> method retrieves the buffer and the size of the valid data in the buffer.
            </summary>
            <param name="ppBuffer">Address of a pointer that receives the buffer array. Can be <see cref="F:System.IntPtr.Zero"/> if <paramref name="validDataByteLength"/> is not <see cref="F:System.IntPtr.Zero"/>.</param>
            <param name="validDataByteLength">Pointer to a variable that receives the size of the valid data, in bytes. Can be <see cref="F:System.IntPtr.Zero"/> if <paramref name="ppBuffer"/> is not <see cref="F:System.IntPtr.Zero"/>.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.MediaBuffer.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Writes a sequence of bytes to the internally used buffer.
            </summary>
            <param name="buffer">
                Array of bytes. The Write method copies data from the specified array of bytes to the internally
                used buffer.
            </param>
            <param name="offset">
                Zero-based bytes offset in the specified buffer at which to begin copying bytes to the internally
                used buffer.
            </param>
            <param name="count">The number of bytes to be copied.</param>
        </member>
        <member name="M:CSCore.DMO.MediaBuffer.Read(System.Byte[],System.Int32)">
            <summary>
                Reads a sequence of bytes from the internally used buffer.
            </summary>
            <param name="buffer">Array of bytes to store the read bytes in.</param>
            <param name="offset">
                Zero-based byte offset in the specified buffer at which to begin storing the data read from the
                buffer.
            </param>
        </member>
        <member name="M:CSCore.DMO.MediaBuffer.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from the buffer.
            </summary>
            <param name="buffer">Array of bytes to store the read bytes in.</param>
            <param name="offset">
                Zero-based byte offset in the specified buffer at which to begin storing the data read from the
                buffer.
            </param>
            <param name="count">The maximum number of bytes to read from the buffer.</param>
        </member>
        <member name="M:CSCore.DMO.MediaBuffer.Read(System.Byte[],System.Int32,System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from the buffer.
            </summary>
            <param name="buffer">Array of bytes to store the read bytes in.</param>
            <param name="offset">
                Zero-based byte offset in the specified buffer at which to begin storing the data read from the
                buffer.
            </param>
            <param name="count">The maximum number of bytes to read from the buffer.</param>
            <param name="sourceOffset">Zero-based offset inside of the source buffer at which to begin copying data.</param>
        </member>
        <member name="M:CSCore.DMO.MediaBuffer.Dispose(System.Boolean)">
            <summary>
                Frees the allocated memory of the internally used buffer.
            </summary>
        </member>
        <member name="M:CSCore.DMO.MediaBuffer.Finalize">
            <summary>
                Frees the allocated memory of the internally used buffer.
            </summary>
        </member>
        <member name="T:CSCore.DMO.MediaObject">
            <summary>
                Represents a DMO MediaObject.
            </summary>
        </member>
        <member name="M:CSCore.DMO.MediaObject.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DMO.MediaObject"/> class.
            </summary>
            <param name="ptr">The native pointer of the COM object.</param>
        </member>
        <member name="P:CSCore.DMO.MediaObject.InputStreamCount">
            <summary>
                Gets the number of input streams.
            </summary>
        </member>
        <member name="P:CSCore.DMO.MediaObject.OutputStreamCount">
            <summary>
                Gets the number of output streams.
            </summary>
        </member>
        <member name="M:CSCore.DMO.MediaObject.FromComObject(CSCore.Win32.ComObject)">
            <summary>
                Creates a MediaObject from any ComObjects.
            </summary>
            <remarks>
                Internally the IUnknown::QueryInterface method of the specified COM Object gets called.
            </remarks>
            <param name="comObject">The COM Object to cast to a <see cref="T:CSCore.DMO.MediaObject"/>.</param>
            <returns>The <see cref="T:CSCore.DMO.MediaObject"/>.</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetStreamCountNative(System.Int32@,System.Int32@)">
            <summary>
                Retrieves the number of input and output streams.
            </summary>
            <param name="inputStreams">A variable that receives the number of input streams.</param>
            <param name="outputStreams">A variable that receives the number of output streams.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetStreamCount(System.Int32@,System.Int32@)">
            <summary>
                Retrieves the number of input and output streams.
            </summary>
            <param name="inputStreams">A variable that receives the number of input streams.</param>
            <param name="outputStreams">A variable that receives the number of output streams.</param>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetInputStreamInfoNative(System.Int32,CSCore.DMO.DmoInputStreamInfoFlags@)">
            <summary>
                Retrieves information about a specified input stream.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <param name="flags">Bitwise combination of zero or more <see cref="T:CSCore.DMO.DmoInputStreamInfoFlags" /> flags.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetInputStreamInfo(System.Int32)">
            <summary>
                Retrieves information about a specified input stream.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <returns>The retrieved information about the specified input stream.</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetOutputStreamInfoNative(System.Int32,CSCore.DMO.DmoOutputStreamInfoFlags@)">
            <summary>
                Retrieves information about a specified output stream.
            </summary>
            <param name="outputStreamIndex">Zero-based index of an output stream on the DMO.</param>
            <param name="flags">Bitwise combination of zero or more <see cref="T:CSCore.DMO.DmoOutputStreamInfoFlags" /> flags.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetOutputStreamInfo(System.Int32)">
            <summary>
                Retrieves information about a specified output stream.
            </summary>
            <param name="outputStreamIndex">Zero-based index of an output stream on the DMO.</param>
            <returns>The information about the specified output stream.</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetInputTypeNative(System.Int32,System.Int32,System.Nullable{CSCore.DMO.MediaType}@)">
            <summary>
                Retrieves a preferred media type for a specified input stream.
            </summary>
            <param name="typeIndex">Zero-based index on the set of acceptable media types.</param>
            <param name="mediaType">
                Can be null to check whether the typeIndex argument is in range. If not, the errorcode will be
                <see cref="F:CSCore.DMO.DmoErrorCodes.DMO_E_NO_MORE_ITEMS"/> (0x80040206).
            </param>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetInputType(System.Int32,System.Int32)">
            <summary>
                Retrieves a preferred media type for a specified input stream.
            </summary>
            <param name="typeIndex">Zero-based index on the set of acceptable media types.</param>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <returns>The preferred media type for the specified input stream.</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetOutputTypeNative(System.Int32,System.Int32,System.Nullable{CSCore.DMO.MediaType}@)">
            <summary>
                Retrieves a preferred media type for a specified output stream.
            </summary>
            <param name="typeIndex">Zero-based index on the set of acceptable media types.</param>
            <param name="mediaType">
                Can be null to check whether the typeIndex argument is in range. If not, the errorcode will be
                <see cref="F:CSCore.DMO.DmoErrorCodes.DMO_E_NO_MORE_ITEMS"/> (0x80040206).
            </param>
            <param name="outputStreamIndex">Zero-based index of an output stream on the DMO.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetOutputType(System.Int32,System.Int32)">
            <summary>
                Retrieves a preferred media type for a specified output stream.
            </summary>
            <param name="typeIndex">Zero-based index on the set of acceptable media types.</param>
            <param name="outputStreamIndex">Zero-based index of an output stream on the DMO.</param>
            <returns>The preferred media type for the specified output stream.</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.SetInputTypeNative(System.Int32,CSCore.DMO.MediaType,CSCore.DMO.SetTypeFlags)">
            <summary>
                Sets the media type on an input stream, or tests whether a media type is acceptable.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <param name="mediaType">The new mediatype.</param>
            <param name="flags">Bitwise combination of zero or more flags from the <see cref="T:CSCore.DMO.SetTypeFlags"/> enumeration.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.ClearInputType(System.Int32)">
            <summary>
                Clears the inputtype for a specific input stream.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
        </member>
        <member name="M:CSCore.DMO.MediaObject.SetInputType(System.Int32,CSCore.DMO.MediaType,CSCore.DMO.SetTypeFlags)">
            <summary>
                Sets the media type on an input stream.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <param name="mediaType">The new mediatype.</param>
            <param name="flags">Bitwise combination of zero or more flags from the <see cref="T:CSCore.DMO.SetTypeFlags"/> enumeration.</param>
        </member>
        <member name="M:CSCore.DMO.MediaObject.SetInputType(System.Int32,CSCore.WaveFormat)">
            <summary>
                Sets the media type on an input stream.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <param name="waveFormat">The format to set as the new <see cref="T:CSCore.DMO.MediaType"/> for the specified input stream.</param>
        </member>
        <member name="M:CSCore.DMO.MediaObject.SupportsInputFormat(System.Int32,CSCore.WaveFormat)">
            <summary>
                Tests whether the given <see cref="T:CSCore.WaveFormat"/> is supported.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <param name="waveFormat">The <see cref="T:CSCore.WaveFormat"/> to test whether it is supported.</param>
            <returns>True = supported, False = not supported</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.SupportsInputFormat(System.Int32,CSCore.DMO.MediaType)">
            <summary>
                Tests whether the given <see cref="T:CSCore.DMO.MediaType"/> is supported.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <param name="mediaType">The <see cref="T:CSCore.DMO.MediaType"/> to test whether it is supported.</param>
            <returns>True = supported, False = not supported</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.SetOutputTypeNative(System.Int32,CSCore.DMO.MediaType,CSCore.DMO.SetTypeFlags)">
            <summary>
                Sets the <see cref="T:CSCore.DMO.MediaType"/> on an output stream, or tests whether a <see cref="T:CSCore.DMO.MediaType"/> is acceptable.
            </summary>
            <param name="outputStreamIndex">Zero-based index of an output stream on the DMO.</param>
            <param name="mediaType">The new <see cref="T:CSCore.DMO.MediaType"/>.</param>
            <param name="flags">Bitwise combination of zero or more flags from the <see cref="T:CSCore.DMO.SetTypeFlags"/> enumeration.</param>        
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.ClearOutputType(System.Int32)">
            <summary>
                Clears the outputtype for a specific output stream.
            </summary>
            <param name="outputStreamIndex">Zero-based index of an output stream on the DMO.</param>
        </member>
        <member name="M:CSCore.DMO.MediaObject.SetOutputType(System.Int32,CSCore.DMO.MediaType,CSCore.DMO.SetTypeFlags)">
            <summary>
                Sets the <see cref="T:CSCore.DMO.MediaType"/> on an output stream, or tests whether a <see cref="T:CSCore.DMO.MediaType"/> is acceptable.
            </summary>
            <param name="outputStreamIndex">Zero-based index of an output stream on the DMO.</param>
            <param name="mediaType">The new <see cref="T:CSCore.DMO.MediaType"/>.</param>
            <param name="flags">Bitwise combination of zero or more flags from the <see cref="T:CSCore.DMO.SetTypeFlags"/> enumeration.</param>        
        </member>
        <member name="M:CSCore.DMO.MediaObject.SetOutputType(System.Int32,CSCore.WaveFormat)">
            <summary>
                Sets the <see cref="T:CSCore.DMO.MediaType"/> on an output stream, or tests whether a <see cref="T:CSCore.DMO.MediaType"/> is acceptable.
            </summary>
            <param name="outputStreamIndex">Zero-based index of an output stream on the DMO.</param>
            <param name="waveFormat">The format to set as the new <see cref="T:CSCore.DMO.MediaType"/> for the specified output stream.</param>        
        </member>
        <member name="M:CSCore.DMO.MediaObject.SupportsOutputFormat(System.Int32,CSCore.WaveFormat)">
            <summary>
                Tests whether the given <see cref="T:CSCore.WaveFormat"/> is supported as OutputFormat.
            </summary>
            <param name="outputStreamIndex">Zero-based index of an output stream on the DMO.</param>
            <param name="waveFormat">WaveFormat</param>
            <returns>True = supported, False = not supported</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.SupportsOutputFormat(System.Int32,CSCore.DMO.MediaType)">
            <summary>
                Tests whether the given <see cref="T:CSCore.WaveFormat"/> is supported.
            </summary>
            <param name="outputStreamIndex">Zero-based index of an output stream on the DMO.</param>
            <param name="mediaType">The <see cref="T:CSCore.DMO.MediaType"/> to test whether it is supported.</param>
            <returns>True = supported, False = not supported</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetInputCurrentType(System.Int32,CSCore.DMO.MediaType@)">
            <summary>
                Retrieves the media type that was set for an input stream, if any.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <param name="mediaType">A variable that receives the retrieved media type of the specified input stream.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetInputCurrentType(System.Int32)">
            <summary>
                Retrieves the media type that was set for an input stream, if any.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <returns>The retrieved media type of the specified input stream.</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetOutputCurrentType(System.Int32,CSCore.DMO.MediaType@)">
            <summary>
                Retrieves the media type that was set for an output stream, if any.
            </summary>
            <param name="outputStreamIndex">Zero-based index of an output stream on the DMO.</param>
            <param name="mediaType">A variable that receives the retrieved media type of the specified output stream.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetOutputCurrentType(System.Int32)">
            <summary>
                Retrieves the media type that was set for an output stream, if any.
            </summary>
            <param name="outputStreamIndex">Zero-based index of an output stream on the DMO.</param>
            <returns>The media type that was set for the specified output stream.</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetInputSizeInfoNative(System.Int32,System.Int32@,System.Int32@,System.Int32@)">
            <summary>
                Retrieves the buffer requirements for a specified input stream.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <param name="minSize">Minimum size of an input buffer for this stream, in bytes.</param>
            <param name="maxLookahead">
                The maximum amount of data that the DMO will hold for a lookahead, in bytes. If the DMO does
                not perform a lookahead on the stream, the value is zero.
            </param>
            <param name="alignment">
                The required buffer alignment, in bytes. If the input stream has no alignment requirement, the
                value is 1.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetInputSizeInfo(System.Int32)">
            <summary>
                This method retrieves the buffer requirements for a specified input stream.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <returns>The buffer requirements for the specified input stream.</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetOutputSizeInfoNative(System.Int32,System.Int32@,System.Int32@)">
            <summary>
                This method retrieves the buffer requirements for a specified output stream.
            </summary>
            <param name="outputStreamIndex">Zero-based index of an output stream on the DMO.</param>
            <param name="minSize">Minimum size of an output buffer for this stream, in bytes.</param>
            <param name="alignment">
                The required buffer alignment, in bytes. If the output stream has no alignment requirement, the
                value is 1.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetOutputSizeInfo(System.Int32)">
            <summary>
                This method retrieves the buffer requirements for a specified output stream.
            </summary>
            <param name="outputStreamIndex">Zero-based index of an output stream on the DMO.</param>
            <returns>The buffer requirements for the specified output stream.</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetInputMaxLatencyNative(System.Int32,System.Int64@)">
            <summary>
                Retrieves the maximum latency on a specified input stream.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <param name="maxLatency">Receives the maximum latency in reference type units. Unit = REFERENCE_TIME = 100 nanoseconds</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetInputMaxLatency(System.Int32)">
            <summary>
                Retrieves the maximum latency on a specified input stream.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <returns>The maximum latency in reference type units. Unit = REFERENCE_TIME = 100 nanoseconds</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.SetInputMaxLatencyNative(System.Int32,System.Int64)">
            <summary>
                Sets the maximum latency on a specified input stream.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <param name="maxLatency">Maximum latency in reference time units. Unit = REFERENCE_TIME = 100 nanoseconds</param>
            <returns>HRESULT</returns>
            <remarks>For the definition of maximum latency, see <see href="https://msdn.microsoft.com/en-us/Library/dd406948(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="M:CSCore.DMO.MediaObject.SetInputMaxLatency(System.Int32,System.Int64)">
            <summary>
                Sets the maximum latency on a specified input stream.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <param name="maxLatency">Maximum latency in reference time units. Unit = REFERENCE_TIME = 100 nanoseconds</param>
            <returns>HRESULT</returns>
            <remarks>For the definition of maximum latency, see <see href="https://msdn.microsoft.com/en-us/Library/dd406948(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="M:CSCore.DMO.MediaObject.FlushNative">
            <summary>
                This method flushes all internally buffered data.
            </summary>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.Flush">
            <summary>
                This method flushes all internally buffered data.
            </summary>
        </member>
        <member name="M:CSCore.DMO.MediaObject.DiscontinuityNative(System.Int32)">
            <summary>
                Signals a discontinuity on the specified input stream.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <returns>HRESULT</returns>
            <remarks>A discontinuity represents a break in the input. A discontinuity might occur because no more data is expected, the format is changing, or there is a gap in the data. 
            After a discontinuity, the DMO does not accept further input on that stream until all pending data has been processed. 
            The application should call the <see cref="M:CSCore.DMO.MediaObject.ProcessOutput(CSCore.DMO.ProcessOutputFlags,CSCore.DMO.DmoOutputDataBuffer[])"/> method until none of the streams returns the <see cref="F:CSCore.DMO.OutputDataBufferFlags.Incomplete"/> (see <see cref="F:CSCore.DMO.DmoOutputDataBuffer.Status"/>) flag. 
            This method might fail if it is called before the client sets the input and output types on the DMO.</remarks>
        </member>
        <member name="M:CSCore.DMO.MediaObject.Discontinuity(System.Int32)">
            <summary>
                Signals a discontinuity on the specified input stream.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <remarks>A discontinuity represents a break in the input. A discontinuity might occur because no more data is expected, the format is changing, or there is a gap in the data. 
            After a discontinuity, the DMO does not accept further input on that stream until all pending data has been processed. 
            The application should call the <see cref="M:CSCore.DMO.MediaObject.ProcessOutput(CSCore.DMO.ProcessOutputFlags,CSCore.DMO.DmoOutputDataBuffer[])"/> method until none of the streams returns the <see cref="F:CSCore.DMO.OutputDataBufferFlags.Incomplete"/> (see <see cref="F:CSCore.DMO.DmoOutputDataBuffer.Status"/>) flag. 
            This method might fail if it is called before the client sets the input and output types on the DMO.</remarks>
        </member>
        <member name="M:CSCore.DMO.MediaObject.AllocateStreamingResourcesNative">
            <summary>
                Allocates any resources needed by the DMO. Calling this method is always
                optional.
            </summary>
            <returns>HRESULT</returns>
            <remarks>
                For more information, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd406943(v=vs.85).aspx"/>.
            </remarks>
        </member>
        <member name="M:CSCore.DMO.MediaObject.AllocateStreamingResources">
            <summary>
                Allocates any resources needed by the DMO. Calling this method is always
                optional.
            </summary>
            <remarks>
                For more information, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd406943(v=vs.85).aspx"/>.
            </remarks>
        </member>
        <member name="M:CSCore.DMO.MediaObject.FreeStreamingResourcesNative">
            <summary>
                Frees resources allocated by the DMO. Calling this method is always optional.
            </summary>
            <returns>HREUSLT</returns>
            <remarks>
                For more information, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd406946(v=vs.85).aspx"/>.
            </remarks>
        </member>
        <member name="M:CSCore.DMO.MediaObject.FreeStreamingResources">
            <summary>
                Frees resources allocated by the DMO. Calling this method is always optional.
            </summary>
            <remarks>
                For more information, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd406946(v=vs.85).aspx"/>.
            </remarks>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetInputStatus(System.Int32)">
            <summary>
                Queries whether an input stream can accept more input data.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <returns>The queried input status.</returns>
            <remarks>
                For more information, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd406950(v=vs.85).aspx"/>.
            </remarks>
        </member>
        <member name="M:CSCore.DMO.MediaObject.GetInputStatusNative(System.Int32,CSCore.DMO.InputStatusFlags@)">
            <summary>
                Queries whether an input stream can accept more input data.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <param name="flags">A variable that receives either <see cref="F:CSCore.DMO.InputStatusFlags.None"/> or <see cref="F:CSCore.DMO.InputStatusFlags.AcceptData"/>.</param>
            <returns>HRESULT</returns>
            <remarks>
                For more information, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd406950(v=vs.85).aspx"/>.
            </remarks>
        </member>
        <member name="M:CSCore.DMO.MediaObject.IsReadyForInput(System.Int32)">
            <summary>
                Queries whether an input stream can accept more input data.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <returns>If the return value is True, the input stream can accept more input data. Otherwise false.</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.ProcessInput(System.Int32,CSCore.DMO.IMediaBuffer)">
            <summary>
                Delivers a buffer to the specified input stream.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <param name="mediaBuffer">The <see cref="T:CSCore.DMO.MediaBuffer"/> to process.</param>
        </member>
        <member name="M:CSCore.DMO.MediaObject.ProcessInput(System.Int32,CSCore.DMO.IMediaBuffer,CSCore.DMO.InputDataBufferFlags)">
            <summary>
                Delivers a buffer to the specified input stream.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <param name="mediaBuffer">The <see cref="T:CSCore.DMO.MediaBuffer"/> to process.</param>
            <param name="flags">Bitwise combination of <see cref="F:CSCore.DMO.InputDataBufferFlags.None"/> or more flags from the <see cref="T:CSCore.DMO.InputDataBufferFlags"/> enumeration.</param>
        </member>
        <member name="M:CSCore.DMO.MediaObject.ProcessInput(System.Int32,CSCore.DMO.IMediaBuffer,CSCore.DMO.InputDataBufferFlags,System.Int64,System.Int64)">
            <summary>
                Delivers a buffer to the specified input stream.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <param name="mediaBuffer">The <see cref="T:CSCore.DMO.MediaBuffer"/> to process.</param>
            <param name="flags">Bitwise combination of <see cref="F:CSCore.DMO.InputDataBufferFlags.None"/> or more flags from the <see cref="T:CSCore.DMO.InputDataBufferFlags"/> enumeration.</param>
            <param name="timestamp">
                Time stamp that specifies the start time of the data in the buffer. If the buffer has a valid
                time stamp, set the Time flag in the flags parameter.
            </param>
            <param name="timeduration">
                Reference time specifying the duration of the data in the buffer. If the buffer has a valid
                time stamp, set the TimeLength flag in the flags parameter.
            </param>
        </member>
        <member name="M:CSCore.DMO.MediaObject.ProcessInputNative(System.Int32,CSCore.DMO.IMediaBuffer,CSCore.DMO.InputDataBufferFlags,System.Int64,System.Int64)">
            <summary>
                Delivers a buffer to the specified input stream.
            </summary>
            <param name="inputStreamIndex">Zero-based index of an input stream on the DMO.</param>
            <param name="mediaBuffer">The <see cref="T:CSCore.DMO.MediaBuffer"/> to process.</param>
            <param name="flags">Bitwise combination of <see cref="F:CSCore.DMO.InputDataBufferFlags.None"/> or more flags from the <see cref="T:CSCore.DMO.InputDataBufferFlags"/> enumeration.</param>
            <param name="timestamp">
                Time stamp that specifies the start time of the data in the buffer. If the buffer has a valid
                time stamp, set the Time flag in the flags parameter.
            </param>
            <param name="timeduration">
                Reference time specifying the duration of the data in the buffer. If the buffer has a valid
                time stamp, set the TimeLength flag in the flags parameter.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.ProcessOutput(CSCore.DMO.ProcessOutputFlags,CSCore.DMO.DmoOutputDataBuffer[])">
            <summary>
                Generates output from the current input data.
            </summary>
            <param name="flags">Bitwise combination of <see cref="F:CSCore.DMO.ProcessOutputFlags.None"/> or more flags from the <see cref="T:CSCore.DMO.ProcessOutputFlags"/> enumeration.</param>
            <param name="buffers">An array of output buffers to process.</param>
        </member>
        <member name="M:CSCore.DMO.MediaObject.ProcessOutput(CSCore.DMO.ProcessOutputFlags,CSCore.DMO.DmoOutputDataBuffer[],System.Int32)">
            <summary>
                Generates output from the current input data.
            </summary>
            <param name="flags">Bitwise combination of <see cref="F:CSCore.DMO.ProcessOutputFlags.None"/> or more flags from the <see cref="T:CSCore.DMO.ProcessOutputFlags"/> enumeration.</param>
            <param name="buffers">An array of output buffers to process.</param>
            <param name="bufferCount">Number of output buffers.</param>
        </member>
        <member name="M:CSCore.DMO.MediaObject.ProcessOutputNative(CSCore.DMO.ProcessOutputFlags,System.Int32,CSCore.DMO.DmoOutputDataBuffer[],System.Int32@)">
            <summary>
                Generates output from the current input data.
            </summary>
            <param name="flags">Bitwise combination of <see cref="F:CSCore.DMO.ProcessOutputFlags.None"/> or more flags from the <see cref="T:CSCore.DMO.ProcessOutputFlags"/> enumeration.</param>
            <param name="buffers">An array of output buffers to process.</param>
            <param name="bufferCount">Number of output buffers.</param>
            <param name="status">Receives a reserved value (zero). The application should ignore this value.</param>
            <returns>HREUSLT</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.LockNative(System.Int64)">
            <summary>
                Acquires or releases a lock on the DMO. Call this method to keep the DMO serialized when performing multiple
                operations.
            </summary>
            <param name="bLock">
                Value that specifies whether to acquire or release the lock. If the value is non-zero, a lock is
                acquired. If the value is zero, the lock is released.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.MediaObject.Lock(System.Int64)">
            <summary>
                Acquires or releases a lock on the DMO. Call this method to keep the DMO serialized when performing multiple
                operations.
            </summary>
            <param name="bLock">
                Value that specifies whether to acquire or release the lock. If the value is non-zero, a lock is
                acquired. If the value is zero, the lock is released.
            </param>
        </member>
        <member name="M:CSCore.DMO.MediaObject.Lock">
            <summary>
                Acquires or releases a lock on the DMO. Call this method to keep the DMO serialized when performing multiple
                operations.
            </summary>
            <returns>A disposable object which can be used to unlock the <see cref="T:CSCore.DMO.MediaObject"/> by calling its <see cref="M:CSCore.DMO.MediaObject.LockDisposable.Dispose"/> method.</returns>
            <example>
            This example shows how to use the <see cref="M:CSCore.DMO.MediaObject.Lock"/> method:
            <code>
            partial class TestClass
            {
            	public void DoStuff(MediaObject mediaObject)
            	{
            		using(var lock = mediaObject.Lock())
            		{
            			//do some stuff
            		}
            		//the mediaObject gets automatically unlocked by the using statement after "doing your stuff"
            	}
            }
            </code>
            </example>
        </member>
        <member name="T:CSCore.DMO.MediaObject.LockDisposable">
            <summary>
            Used to unlock a <see cref="T:CSCore.DMO.MediaObject"/> after locking it by calling the <see cref="M:CSCore.DMO.MediaObject.Lock"/> method.
            </summary>
        </member>
        <member name="M:CSCore.DMO.MediaObject.LockDisposable.Dispose">
            <summary>
            Unlocks the locked <see cref="T:CSCore.DMO.MediaObject"/>.
            </summary>
        </member>
        <member name="T:CSCore.DMO.MediaType">
            <summary>
                The <see cref="T:CSCore.DMO.MediaType"/> structure describes the format of the data used by a stream in a Microsoft DirectX Media Object (DMO).
                For more information, <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd375504(v=vs.85).aspx"/>.
            </summary>
        </member>
        <member name="M:CSCore.DMO.MediaType.FromWaveFormat(CSCore.WaveFormat)">
            <summary>
                Creates a MediaType based on a given WaveFormat. Don't forget to call Free() for the returend MediaType.
            </summary>
            <param name="waveFormat">WaveFormat to create a MediaType from.</param>
            <returns>Dmo MediaType</returns>
        </member>
        <member name="F:CSCore.DMO.MediaType.MajorType">
            <summary>
                A GUID identifying the stream's major media type. This must be one of the DMO Media
                Types(see <see href="http://msdn.microsoft.com/en-us/library/aa924843.aspx"/>).
            </summary>
        </member>
        <member name="F:CSCore.DMO.MediaType.SubType">
            <summary>
                Subtype GUID of the stream.
            </summary>
        </member>
        <member name="F:CSCore.DMO.MediaType.FixedSizeSamples">
            <summary>
                If TRUE, samples are of a fixed size. This field is informational only. For audio, it is
                generally set to TRUE. For video, it is usually TRUE for uncompressed video and FALSE
                for compressed video.
            </summary>
        </member>
        <member name="F:CSCore.DMO.MediaType.TemporalCompression">
            <summary>
                If TRUE, samples are compressed using temporal (interframe) compression. A value of TRUE
                indicates that not all frames are key frames. This field is informational only.
            </summary>
        </member>
        <member name="F:CSCore.DMO.MediaType.SampleSize">
            <summary>
                Size of the sample, in bytes. For compressed data, the value can be zero.
            </summary>
        </member>
        <member name="F:CSCore.DMO.MediaType.FormatType">
            <summary>
                GUID specifying the format type. The pbFormat member points to the corresponding format
                structure. (see <see href="http://msdn.microsoft.com/en-us/library/aa929922.aspx"/>)
            </summary>
        </member>
        <member name="F:CSCore.DMO.MediaType.CbFormat">
            <summary>
                Size of the format block of the media type.
            </summary>
        </member>
        <member name="F:CSCore.DMO.MediaType.PtrFormat">
            <summary>
                Pointer to the format structure. The structure type is specified by the formattype
                member. The format structure must be present, unless formattype is GUID_NULL or
                FORMAT_None.
            </summary>
        </member>
        <member name="M:CSCore.DMO.MediaType.Dispose">
            <summary>
            Frees the allocated members of a media type structure by calling the <c>MoFreeMediaType</c> function.
            </summary>
        </member>
        <member name="T:CSCore.DMO.WMResamplerProps">
            <summary>
                Sets properties on the audio resampler DSP.
            </summary>
        </member>
        <member name="M:CSCore.DMO.WMResamplerProps.#ctor(System.IntPtr)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.DMO.WMResamplerProps" /> class.
            </summary>
            <param name="ptr">The native pointer of the COM object.</param>
        </member>
        <member name="M:CSCore.DMO.WMResamplerProps.SetHalfFilterLength(System.Int32)">
            <summary>
                Specifies the quality of the output.
            </summary>
            <param name="quality">
                Specifies the quality of the output. The valid range is 1 to 60,
                inclusive.
            </param>
        </member>
        <member name="M:CSCore.DMO.WMResamplerProps.SetUserChannelMtx(System.Single[])">
            <summary>
                Specifies the channel matrix.
            </summary>
            <param name="channelConversitionMatrix">An array of floating-point values that represents a channel conversion matrix.</param>
            <remarks>
                Use the <see cref="T:CSCore.DSP.ChannelMatrix" /> class to build the channel-conversation-matrix and its
                <see cref="M:CSCore.DSP.ChannelMatrix.GetOneDimensionalMatrix" /> method to convert the channel-conversation-matrix into a
                compatible array which can be passed as value for the <paramref name="channelConversitionMatrix" /> parameter.
                For more information,
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/ff819252(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.DMO.WMResamplerProps.SetHalfFilterLengthNative(System.Int32)">
            <summary>
                Specifies the quality of the output.
            </summary>
            <param name="quality">
                Specifies the quality of the output. The valid range is 1 to 60,
                inclusive.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.DMO.WMResamplerProps.SetUserChannelMtxNative(System.Single[])">
            <summary>
                Specifies the channel matrix.
            </summary>
            <param name="channelConversitionMatrix">An array of floating-point values that represents a channel conversion matrix.</param>
            <returns>HRESULT</returns>
            <remarks>
                Use the <see cref="T:CSCore.DSP.ChannelMatrix" /> class to build the channel-conversation-matrix and its
                <see cref="M:CSCore.DSP.ChannelMatrix.GetOneDimensionalMatrix" /> method to convert the channel-conversation-matrix into a
                compatible array which can be passed as value for the <paramref name="channelConversitionMatrix" /> parameter.
                For more information,
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/ff819252(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="T:CSCore.DMO.DmoException">
            <summary>
                DirectX Media Object COM Exception
            </summary>
        </member>
        <member name="M:CSCore.DMO.DmoException.#ctor(System.Int32,System.String,System.String)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.DMO.DmoException" /> class.
            </summary>
            <param name="result">Errorcode.</param>
            <param name="interfaceName">
                Name of the interface which contains the COM-function which returned the specified
                <paramref name="result" />.
            </param>
            <param name="member">Name of the COM-function which returned the specified <paramref name="result" />.</param>
        </member>
        <member name="M:CSCore.DMO.DmoException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.DMO.DmoException" /> class from serialization data.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> object that holds the serialized object data.</param>
            <param name="context">
                The StreamingContext object that supplies the contextual information about the source or
                destination.
            </param>
        </member>
        <member name="M:CSCore.DMO.DmoException.Try(System.Int32,System.String,System.String)">
            <summary>
                Throws an <see cref="T:CSCore.DMO.DmoException" /> if the <paramref name="result" /> is not <see cref="F:CSCore.Win32.HResult.S_OK" />.
            </summary>
            <param name="result">Errorcode.</param>
            <param name="interfaceName">
                Name of the interface which contains the COM-function which returned the specified
                <paramref name="result" />.
            </param>
            <param name="member">Name of the COM-function which returned the specified <paramref name="result" />.</param>
        </member>
        <member name="M:CSCore.DMO.IWMResamplerProps.SetHalfFilterLength(System.Int32)">
            <summary>
                Specifies the quality of the output.
            </summary>
            <param name="quality">
                Specifies the quality of the output. The valid range is 1 to 60,
                inclusive.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="T:CSCore.DSP.BandpassFilter">
            <summary>
            Used to apply a bandpass-filter to a signal.
            </summary>
        </member>
        <member name="M:CSCore.DSP.BandpassFilter.#ctor(System.Int32,System.Double)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DSP.BandpassFilter"/> class.
            </summary>
            <param name="sampleRate">The sample rate.</param>
            <param name="frequency">The filter's corner frequency.</param>
        </member>
        <member name="M:CSCore.DSP.BandpassFilter.CalculateBiQuadCoefficients">
            <summary>
            Calculates all coefficients.
            </summary>
        </member>
        <member name="T:CSCore.DSP.BiQuad">
            <summary>
            Represents a biquad-filter.
            </summary>
        </member>
        <member name="F:CSCore.DSP.BiQuad.A0">
            <summary>
            The a0 value.
            </summary>
        </member>
        <member name="F:CSCore.DSP.BiQuad.A1">
            <summary>
            The a1 value.
            </summary>
        </member>
        <member name="F:CSCore.DSP.BiQuad.A2">
            <summary>
            The a2 value.
            </summary>
        </member>
        <member name="F:CSCore.DSP.BiQuad.B1">
            <summary>
            The b1 value.
            </summary>
        </member>
        <member name="F:CSCore.DSP.BiQuad.B2">
            <summary>
            The b2 value.
            </summary>
        </member>
        <member name="F:CSCore.DSP.BiQuad._q">
            <summary>
            The q value.
            </summary>
        </member>
        <member name="F:CSCore.DSP.BiQuad._gainDB">
            <summary>
            The gain value in dB.
            </summary>
        </member>
        <member name="F:CSCore.DSP.BiQuad.Z1">
            <summary>
            The z1 value.
            </summary>
        </member>
        <member name="F:CSCore.DSP.BiQuad.Z2">
            <summary>
            The z2 value.
            </summary>
        </member>
        <member name="P:CSCore.DSP.BiQuad.Frequency">
            <summary>
            Gets or sets the frequency.
            </summary>
            <exception cref="T:System.ArgumentOutOfRangeException">value;The samplerate has to be bigger than 2 * frequency.</exception>
        </member>
        <member name="P:CSCore.DSP.BiQuad.SampleRate">
            <summary>
            Gets the sample rate.
            </summary>
        </member>
        <member name="P:CSCore.DSP.BiQuad.Q">
            <summary>
            The q value.
            </summary>
        </member>
        <member name="P:CSCore.DSP.BiQuad.GainDB">
            <summary>
            Gets or sets the gain value in dB.
            </summary>
        </member>
        <member name="M:CSCore.DSP.BiQuad.#ctor(System.Int32,System.Double)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DSP.BiQuad"/> class.
            </summary>
            <param name="sampleRate">The sample rate.</param>
            <param name="frequency">The frequency.</param>
            <exception cref="T:System.ArgumentOutOfRangeException">
            sampleRate
            or
            frequency
            or
            q
            </exception>
        </member>
        <member name="M:CSCore.DSP.BiQuad.#ctor(System.Int32,System.Double,System.Double)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DSP.BiQuad"/> class.
            </summary>
            <param name="sampleRate">The sample rate.</param>
            <param name="frequency">The frequency.</param>
            <param name="q">The q.</param>
            <exception cref="T:System.ArgumentOutOfRangeException">
            sampleRate
            or
            frequency
            or
            q
            </exception>
        </member>
        <member name="M:CSCore.DSP.BiQuad.Process(System.Single)">
            <summary>
            Processes a single <paramref name="input"/> sample and returns the result.
            </summary>
            <param name="input">The input sample to process.</param>
            <returns>The result of the processed <paramref name="input"/> sample.</returns>
        </member>
        <member name="M:CSCore.DSP.BiQuad.Process(System.Single[])">
            <summary>
            Processes multiple <paramref name="input"/> samples.
            </summary>
            <param name="input">The input samples to process.</param>
            <remarks>The result of the calculation gets stored within the <paramref name="input"/> array.</remarks>
        </member>
        <member name="M:CSCore.DSP.BiQuad.CalculateBiQuadCoefficients">
            <summary>
            Calculates all coefficients.
            </summary>
        </member>
        <member name="T:CSCore.DSP.ChannelMatrixElement">
            <summary>
            Represents an element inside of a <see cref="T:CSCore.DSP.ChannelMatrix"/>.
            </summary>
        </member>
        <member name="P:CSCore.DSP.ChannelMatrixElement.InputChannel">
            <summary>
            Gets the assigned input channel of the <see cref="T:CSCore.DSP.ChannelMatrixElement"/>.
            </summary>
        </member>
        <member name="P:CSCore.DSP.ChannelMatrixElement.OutputChannel">
            <summary>
            Gets the assigned output channel of the <see cref="T:CSCore.DSP.ChannelMatrixElement"/>.        
            </summary>
        </member>
        <member name="P:CSCore.DSP.ChannelMatrixElement.Value">
            <summary>
            Gets or sets the coefficient in the range from 0.0f to 1.0f.
            </summary>
        </member>
        <member name="M:CSCore.DSP.ChannelMatrixElement.#ctor(CSCore.ChannelMask,CSCore.ChannelMask)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DSP.ChannelMatrixElement"/> class.
            </summary>
            <param name="inputChannel">The input channel.</param>
            <param name="outputChannel">The output channel.</param>
        </member>
        <member name="T:CSCore.DSP.FastFourierTransformation">
            <summary>
            Provides an Fast Fourier Transform implementation including a few utils method which are commonly used in combination with FFT (e.g. the hamming window function).
            </summary>
        </member>
        <member name="M:CSCore.DSP.FastFourierTransformation.GetIntensity(CSCore.Utils.Complex)">
            <summary>
            Obsolete. Use the <see cref="P:CSCore.Utils.Complex.Value"/> property instead.
            <seealso cref="P:CSCore.Utils.Complex.Value"/>
            </summary>
            <param name="c"></param>
            <returns>The intensity of the complex value <paramref name="c"/>.</returns>
            <remarks>sqrt(r² + i²)</remarks>
        </member>
        <member name="M:CSCore.DSP.FastFourierTransformation.HammingWindow(System.Int32,System.Int32)">
            <summary>
            Implementation of the Hamming Window using double-precision floating-point numbers.
            </summary>
            <param name="n">Current index of the input signal.</param>
            <param name="N">Window width.</param>
            <returns>Hamming window multiplier.</returns>
        </member>
        <member name="M:CSCore.DSP.FastFourierTransformation.HammingWindowF(System.Int32,System.Int32)">
            <summary>
            Hamming window implementation using single-precision floating-point numbers.
            </summary>
            <param name="n">Current index of the input signal.</param>
            <param name="N">Window width.</param>
            <returns>Hamming Window multiplier.</returns>
        </member>
        <member name="M:CSCore.DSP.FastFourierTransformation.Fft(CSCore.Utils.Complex[],System.Int32,CSCore.DSP.FftMode)">
            <summary>
            Computes an Fast Fourier Transform.
            </summary>
            <param name="data">Array of complex numbers. This array provides the input data and is used to store the result of the FFT.</param>
            <param name="exponent">The exponent n.</param>
            <param name="mode">The <see cref="T:CSCore.DSP.FftMode"/> to use. Use <see cref="F:CSCore.DSP.FftMode.Forward"/> as the default value.</param>
        </member>
        <member name="M:CSCore.DSP.FastFourierTransformation.FFT1(CSCore.Utils.Complex[],System.Int32,CSCore.DSP.FftMode)">
            <summary>
            Computes an Fast Fourier Transform.
            </summary>
            <param name="data">Array of complex numbers. This array provides the input data and is used to store the result of the FFT.</param>
            <param name="exponent">The exponent n.</param>
            <param name="mode">The <see cref="T:CSCore.DSP.FftMode"/> to use. Use <see cref="F:CSCore.DSP.FftMode.Forward"/> as the default value.</param>
        </member>
        <member name="T:CSCore.DSP.FftProvider">
            <summary>
            Provides FFT calculations.
            </summary>
            <remarks>
            Usage: Use the <see cref="M:CSCore.DSP.FftProvider.Add(System.Single[],System.Int32)"/>-method to input samples to the <see cref="T:CSCore.DSP.FftProvider"/>. Use the <see cref="M:CSCore.DSP.FftProvider.GetFftData(System.Single[])"/> method to 
            calculate the Fast Fourier Transform.
            </remarks>
        </member>
        <member name="P:CSCore.DSP.FftProvider.FftSize">
            <summary>
            Gets the specified fft size.
            </summary>
        </member>
        <member name="P:CSCore.DSP.FftProvider.IsNewDataAvailable">
            <summary>
            Gets a value which indicates whether new data is available.
            </summary>
        </member>
        <member name="M:CSCore.DSP.FftProvider.#ctor(System.Int32,CSCore.DSP.FftSize)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DSP.FftProvider"/> class.
            </summary>
            <param name="channels">Number of channels of the input data.</param>
            <param name="fftSize">The number of bands to use.</param>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="channels"/> is less than zero.</exception>
        </member>
        <member name="M:CSCore.DSP.FftProvider.Add(System.Single,System.Single)">
            <summary>
            Adds a <paramref name="left"/> and a <paramref name="right"/> sample to the <see cref="T:CSCore.DSP.FftProvider"/>. The <paramref name="left"/> and the <paramref name="right"/> sample will be merged together.
            </summary>
            <param name="left">The sample of the left channel.</param>
            <param name="right">The sample of the right channel.</param>
        </member>
        <member name="M:CSCore.DSP.FftProvider.Add(System.Single[],System.Int32)">
            <summary>
            Adds multiple samples to the <see cref="T:CSCore.DSP.FftProvider"/>. 
            </summary>
            <param name="samples">Float Array which contains samples.</param>
            <param name="count">Number of samples to add to the <see cref="T:CSCore.DSP.FftProvider"/>.</param>
        </member>
        <member name="M:CSCore.DSP.FftProvider.GetFftData(CSCore.Utils.Complex[])">
            <summary>
            Calculates the Fast Fourier Transform and stores the result in the <paramref name="fftResultBuffer"/>.
            </summary>
            <param name="fftResultBuffer">The output buffer.</param>
            <returns>Returns a value which indicates whether the Fast Fourier Transform got calculated. If there have not been added any new samples since the last transform, the FFT won't be calculated. True means that the Fast Fourier Transform got calculated.</returns>
        </member>
        <member name="M:CSCore.DSP.FftProvider.GetFftData(System.Single[])">
            <summary>
            Calculates the Fast Fourier Transform and stores the result in the <paramref name="fftResultBuffer"/>.
            </summary>
            <param name="fftResultBuffer">The output buffer.</param>
            <returns>Returns a value which indicates whether the Fast Fourier Transform got calculated. If there have not been added any new samples since the last transform, the FFT won't be calculated. True means that the Fast Fourier Transform got calculated.</returns>
        </member>
        <member name="T:CSCore.DSP.FftMode">
            <summary>
            Fft mode.
            </summary>
        </member>
        <member name="F:CSCore.DSP.FftMode.Forward">
            <summary>
            Forward
            </summary>
        </member>
        <member name="F:CSCore.DSP.FftMode.Backward">
            <summary>
            Backward
            </summary>
        </member>
        <member name="T:CSCore.DSP.FftSize">
            <summary>
                Defines FFT data size constants that can be used for FFT calculations.
                Note that only the half of the specified size can be used for visualizations.
            </summary>
        </member>
        <member name="F:CSCore.DSP.FftSize.Fft64">
            <summary>
                64 bands.
            </summary>
        </member>
        <member name="F:CSCore.DSP.FftSize.Fft128">
            <summary>
                128 bands.
            </summary>
        </member>
        <member name="F:CSCore.DSP.FftSize.Fft256">
            <summary>
                256 bands.
            </summary>
        </member>
        <member name="F:CSCore.DSP.FftSize.Fft512">
            <summary>
                512 bands.
            </summary>
        </member>
        <member name="F:CSCore.DSP.FftSize.Fft1024">
            <summary>
                1024 bands.
            </summary>
        </member>
        <member name="F:CSCore.DSP.FftSize.Fft2048">
            <summary>
                2014 bands.
            </summary>
        </member>
        <member name="F:CSCore.DSP.FftSize.Fft4096">
            <summary>
                4096 bands.
            </summary>
        </member>
        <member name="F:CSCore.DSP.FftSize.Fft8192">
            <summary>
                8192 bands.
            </summary>
        </member>
        <member name="F:CSCore.DSP.FftSize.Fft16384">
            <summary>
                16384 bands.
            </summary>
        </member>
        <member name="T:CSCore.DSP.HighpassFilter">
            <summary>
            Used to apply a highpass-filter to a signal.
            </summary>
        </member>
        <member name="M:CSCore.DSP.HighpassFilter.#ctor(System.Int32,System.Double)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DSP.HighpassFilter"/> class.
            </summary>
            <param name="sampleRate">The sample rate.</param>
            <param name="frequency">The filter's corner frequency.</param>
        </member>
        <member name="M:CSCore.DSP.HighpassFilter.CalculateBiQuadCoefficients">
            <summary>
            Calculates all coefficients.
            </summary>
        </member>
        <member name="T:CSCore.DSP.HighShelfFilter">
            <summary>
            Used to apply a highshelf-filter to a signal.
            </summary>
        </member>
        <member name="M:CSCore.DSP.HighShelfFilter.#ctor(System.Int32,System.Double,System.Double)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DSP.HighShelfFilter"/> class.
            </summary>
            <param name="sampleRate">The sample rate.</param>
            <param name="frequency">The filter's corner frequency.</param>
            <param name="gainDB">Gain value in dB.</param>
        </member>
        <member name="M:CSCore.DSP.HighShelfFilter.CalculateBiQuadCoefficients">
            <summary>
            Calculates all coefficients.
            </summary>
        </member>
        <member name="T:CSCore.DSP.LowpassFilter">
            <summary>
            Used to apply a lowpass-filter to a signal.
            </summary>
        </member>
        <member name="M:CSCore.DSP.LowpassFilter.#ctor(System.Int32,System.Double)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DSP.LowpassFilter"/> class.
            </summary>
            <param name="sampleRate">The sample rate.</param>
            <param name="frequency">The filter's corner frequency.</param>
        </member>
        <member name="M:CSCore.DSP.LowpassFilter.CalculateBiQuadCoefficients">
            <summary>
            Calculates all coefficients.
            </summary>
        </member>
        <member name="T:CSCore.DSP.LowShelfFilter">
            <summary>
            Used to apply a lowshelf-filter to a signal.
            </summary>
        </member>
        <member name="M:CSCore.DSP.LowShelfFilter.#ctor(System.Int32,System.Double,System.Double)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DSP.LowShelfFilter"/> class.
            </summary>
            <param name="sampleRate">The sample rate.</param>
            <param name="frequency">The filter's corner frequency.</param>
            <param name="gainDB">Gain value in dB.</param>
        </member>
        <member name="M:CSCore.DSP.LowShelfFilter.CalculateBiQuadCoefficients">
            <summary>
            Calculates all coefficients.
            </summary>
        </member>
        <member name="T:CSCore.DSP.NotchFilter">
            <summary>
            Used to apply a notch-filter to a signal.
            </summary>
        </member>
        <member name="M:CSCore.DSP.NotchFilter.#ctor(System.Int32,System.Double)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DSP.NotchFilter"/> class.
            </summary>
            <param name="sampleRate">The sample rate.</param>
            <param name="frequency">The filter's corner frequency.</param>
        </member>
        <member name="M:CSCore.DSP.NotchFilter.CalculateBiQuadCoefficients">
            <summary>
            Calculates all coefficients.
            </summary>
        </member>
        <member name="T:CSCore.DSP.PeakFilter">
            <summary>
            Used to apply an peak-filter to a signal.
            </summary>
        </member>
        <member name="P:CSCore.DSP.PeakFilter.BandWidth">
            <summary>
            Gets or sets the bandwidth.
            </summary>
        </member>
        <member name="M:CSCore.DSP.PeakFilter.#ctor(System.Int32,System.Double,System.Double,System.Double)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DSP.PeakFilter"/> class.
            </summary>
            <param name="sampleRate">The sampleRate of the audio data to process.</param>
            <param name="frequency">The center frequency to adjust.</param>
            <param name="bandWidth">The bandWidth.</param>
            <param name="peakGainDB">The gain value in dB.</param>
        </member>
        <member name="M:CSCore.DSP.PeakFilter.CalculateBiQuadCoefficients">
            <summary>
            Calculates all coefficients.
            </summary>
        </member>
        <member name="T:CSCore.DSP.ChannelMatrix">
            <summary>
                Represents a channel conversion matrix. For more information, see
                <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/ff819070(v=vs.85).aspx" />.
            </summary>
        </member>
        <member name="F:CSCore.DSP.ChannelMatrix.StereoToFiveDotOneSurroundWithRear">
            <summary>
                Defines a stereo to 5.1 surround (with rear) channel conversion matrix.
            </summary>
        </member>
        <member name="F:CSCore.DSP.ChannelMatrix.FiveDotOneSurroundWithRearToStereo">
            <summary>
                Defines a 5.1 surround (with rear) to stereo channel conversion matrix.
            </summary>
        </member>
        <member name="F:CSCore.DSP.ChannelMatrix.StereoToFiveDotOneSurroundWithSide">
            <summary>
                Defines a stereo to 5.1 surround (with side) channel conversion matrix.
            </summary>
        </member>
        <member name="F:CSCore.DSP.ChannelMatrix.FiveDotOneSurroundWithSideToStereo">
            <summary>
                Defines a 5.1 surround (with side) to stereo channel conversion matrix.
            </summary>
        </member>
        <member name="F:CSCore.DSP.ChannelMatrix.StereoToSevenDotOneSurround">
            <summary>
                Defines a stereo to 7.1 surround channel conversion matrix.
            </summary>
        </member>
        <member name="F:CSCore.DSP.ChannelMatrix.SevenDotOneSurroundToStereo">
            <summary>
                Defines a 7.1 surround to stereo channel conversion matrix.
            </summary>
        </member>
        <member name="F:CSCore.DSP.ChannelMatrix.MonoToFiveDotOneSurroundWithRear">
            <summary>
                Defines a mono to 5.1 surround (with rear) channel conversion matrix.
            </summary>
        </member>
        <member name="F:CSCore.DSP.ChannelMatrix.FiveDotOneSurroundWithRearToMono">
            <summary>
                Defines a 5.1 surround (with rear) to mono channel conversion matrix.
            </summary>
        </member>
        <member name="F:CSCore.DSP.ChannelMatrix.MonoToFiveDotOneSurroundWithSide">
            <summary>
                Defines a mono to 5.1 surround (with side) channel conversion matrix.
            </summary>
        </member>
        <member name="F:CSCore.DSP.ChannelMatrix.FiveDotOneSurroundWithSideToMono">
            <summary>
                Defines a 5.1 surround (with side) to mono channel conversion matrix.
            </summary>
        </member>
        <member name="F:CSCore.DSP.ChannelMatrix.MonoToSevenDotOneSurround">
            <summary>
                Defines a mono to 7.1 surround channel conversion matrix.
            </summary>
        </member>
        <member name="F:CSCore.DSP.ChannelMatrix.SevenDotOneSurroundToMono">
            <summary>
                Defines a 7.1 surround channel to mono conversion matrix.
            </summary>
        </member>
        <member name="F:CSCore.DSP.ChannelMatrix.StereoToMonoMatrix">
            <summary>
                Defines a stereo to mono conversion matrix.
            </summary>
        </member>
        <member name="F:CSCore.DSP.ChannelMatrix.MonoToStereoMatrix">
            <summary>
                Defines a mono to stereo conversion matrix.
            </summary>
        </member>
        <member name="F:CSCore.DSP.ChannelMatrix.FiveDotOneSurroundWithRearToSevenDotOne">
            <summary>
            Defines a 5.1 surround (with rear) to 7.1 surround channel conversion matrix.
            </summary>
        </member>
        <member name="F:CSCore.DSP.ChannelMatrix.SevenDotOneSurroundToFiveDotOneSurroundWithRear">
            <summary>
            Defines a 7.1 surround to 5.1 surround (with rear) channel conversion matrix
            </summary>
        </member>
        <member name="F:CSCore.DSP.ChannelMatrix.FiveDotOneSurroundWithSideToSevenDotOne">
            <summary>
            Defines a 5.1 surround (with side) to 7.1 surround channel conversion matrix.
            </summary>
        </member>
        <member name="F:CSCore.DSP.ChannelMatrix.SevenDotOneSurroundToFiveDotOneSurroundWithSide">
            <summary>
            Defines a 7.1 surround to 5.1 surround (with side) channel conversion matrix
            </summary>
        </member>
        <member name="M:CSCore.DSP.ChannelMatrix.GetMatrix(CSCore.ChannelMask,CSCore.ChannelMask)">
            <summary>
            Gets a <see cref="T:CSCore.DSP.ChannelMatrix"/> to convert between the two specified <see cref="T:CSCore.ChannelMask"/>s.
            </summary>
            <param name="from">The <see cref="T:CSCore.ChannelMask"/> of the input stream.</param>
            <param name="to">The desired <see cref="T:CSCore.ChannelMask"/> of the output stream.</param>
            <returns>A <see cref="T:CSCore.DSP.ChannelMatrix"/> to convert between the two specified <see cref="T:CSCore.ChannelMask"/>s.</returns>
            <exception cref="T:System.ArgumentException"><paramref name="from"/> equals <paramref name="to"/></exception>
            <exception cref="T:System.Collections.Generic.KeyNotFoundException">No accurate <see cref="T:CSCore.DSP.ChannelMatrix"/> was found.</exception>
        </member>
        <member name="M:CSCore.DSP.ChannelMatrix.GetMatrix(CSCore.WaveFormat,CSCore.WaveFormat)">
            <summary>
            Gets a <see cref="T:CSCore.DSP.ChannelMatrix"/> to convert between the two specified formats.
            </summary>
            <param name="from">The input waveformat.</param>
            <param name="to">The output waveformat.</param>
            <returns>A <see cref="T:CSCore.DSP.ChannelMatrix"/> to convert between the two specified formats.
            If no channelmask could be found, the return value is <c>null</c>.
            </returns>
            <exception cref="T:System.ArgumentException">The channelmask of the input format equals the channelmask of the output format.</exception>
            <exception cref="T:System.Collections.Generic.KeyNotFoundException">No accurate <see cref="T:CSCore.DSP.ChannelMatrix"/> was found.</exception>
        </member>
        <member name="M:CSCore.DSP.ChannelMatrix.#ctor(CSCore.ChannelMask,CSCore.ChannelMask)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.DSP.ChannelMatrix" /> class.
            </summary>
            <param name="inputMask">The <see cref="T:CSCore.ChannelMask" /> of the input signal.</param>
            <param name="outputMask">The <see cref="T:CSCore.ChannelMask" /> of the output signal.</param>
            <exception cref="T:System.ArgumentException">Invalid <paramref name="inputMask" />/<paramref name="outputMask" />.</exception>
        </member>
        <member name="P:CSCore.DSP.ChannelMatrix.InputMask">
            <summary>
                Gets the <see cref="T:CSCore.ChannelMask" /> of the input signal.
            </summary>
        </member>
        <member name="P:CSCore.DSP.ChannelMatrix.OutputMask">
            <summary>
                Gets the <see cref="T:CSCore.ChannelMask" /> of the output signal.
            </summary>
        </member>
        <member name="P:CSCore.DSP.ChannelMatrix.Height">
            <summary>
                Gets the number of rows of the channel conversion matrix.
            </summary>
        </member>
        <member name="P:CSCore.DSP.ChannelMatrix.Width">
            <summary>
                Gets the number of columns of the channel conversion matrix.
            </summary>
        </member>
        <member name="P:CSCore.DSP.ChannelMatrix.InputChannelCount">
            <summary>
                Gets the input signals number of channels.
            </summary>
            <remarks>
                The <see cref="P:CSCore.DSP.ChannelMatrix.InputChannelCount" /> property always returns the same value as the <see cref="P:CSCore.DSP.ChannelMatrix.Height" />
                property.
            </remarks>
        </member>
        <member name="P:CSCore.DSP.ChannelMatrix.OutputChannelCount">
            <summary>
                Gets the output signals number of channels.
            </summary>
            <remarks>
                The <see cref="P:CSCore.DSP.ChannelMatrix.OutputChannelCount" /> property always returns the same value as the <see cref="P:CSCore.DSP.ChannelMatrix.Width" />
                property.
            </remarks>
        </member>
        <member name="P:CSCore.DSP.ChannelMatrix.Item(System.Int32,System.Int32)">
            <summary>
                Gets or sets a <see cref="T:CSCore.DSP.ChannelMatrixElement" /> of the <see cref="T:CSCore.DSP.ChannelMatrix" />.
            </summary>
            <param name="input">The zero-based index of the input channel.</param>
            <param name="output">The zero-based index of the output channel.</param>
            <returns>The <see cref="T:CSCore.DSP.ChannelMatrixElement" /> of the <see cref="T:CSCore.DSP.ChannelMatrix" /> at the specified position.</returns>
        </member>
        <member name="M:CSCore.DSP.ChannelMatrix.SetMatrix(System.Single[0:,0:])">
            <summary>
                Sets the channel conversion matrix.
                The x-axis of the <paramref name="matrix" /> specifies the output channels. The y-axis
                of the <paramref name="matrix" /> specifies the input channels.
            </summary>
            <param name="matrix">Channel conversion matrix to use.</param>
        </member>
        <member name="M:CSCore.DSP.ChannelMatrix.GetOneDimensionalMatrix">
            <summary>
                Returns a one dimensional array which contains the channel conversion matrix coefficients.
            </summary>
            <returns>A one dimensional array which contains the channel conversion matrix coefficients</returns>
            <remarks>
                This method is primarily used in combination with the <see cref="M:CSCore.DMO.WMResamplerProps.SetUserChannelMtx(System.Single[])" />
                method.
            </remarks>
        </member>
        <member name="M:CSCore.DSP.ChannelMatrix.Flip">
            <summary>
                Flips the axis of the matrix and returns the new matrix with the flipped axis.
            </summary>
            <returns>A matrix with flipped axis.</returns>
            <remarks>
                This could be typically used in the following scenario: There is a
                5.1 to stereo matrix. By using the <see cref="M:CSCore.DSP.ChannelMatrix.Flip" /> method the 5.1 to stereo matrix can be
                converted into a stereo to 5.1 matrix.
            </remarks>
        </member>
        <member name="T:CSCore.DSP.DmoChannelResampler">
            <summary>
                Resampler based on the <see cref="T:CSCore.DSP.DmoResampler" /> which can change the number of channels based on a
                <see cref="P:CSCore.DSP.DmoChannelResampler.ChannelMatrix" />. Supported since Windows XP.
            </summary>
        </member>
        <member name="M:CSCore.DSP.DmoChannelResampler.#ctor(CSCore.IWaveSource,CSCore.DSP.ChannelMatrix)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.DSP.DmoChannelResampler" /> class.
            </summary>
            <param name="source">Underlying source which has to get resampled.</param>
            <param name="channelMatrix"><see cref="P:CSCore.DSP.DmoChannelResampler.ChannelMatrix" /> which defines how to map each channel.</param>
        </member>
        <member name="M:CSCore.DSP.DmoChannelResampler.#ctor(CSCore.IWaveSource,CSCore.DSP.ChannelMatrix,CSCore.WaveFormat)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.DSP.DmoChannelResampler"/> class.
            </summary>
            <param name="source">Underlying source which has to get resampled.</param>
            <param name="channelMatrix"><see cref="P:CSCore.DSP.DmoChannelResampler.ChannelMatrix" /> which defines how to map each channel.</param>
            <param name="outputFormat">Waveformat, which specifies the new format. Note, that by far not all formats are supported.</param>
            <exception cref="T:System.ArgumentNullException">
            source
            or
            channelMatrix
            or
            outputFormat
            </exception>
            <exception cref="T:System.ArgumentException">The number of channels of the source has to be equal to the number of input channels specified by the channelMatrix.</exception>
        </member>
        <member name="M:CSCore.DSP.DmoChannelResampler.#ctor(CSCore.IWaveSource,CSCore.DSP.ChannelMatrix,System.Int32)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.DSP.DmoChannelResampler" /> class.
            </summary>
            <param name="source">Underlying source which has to get resampled.</param>
            <param name="channelMatrix"><see cref="P:CSCore.DSP.DmoChannelResampler.ChannelMatrix" /> which defines how to map each channel.</param>
            <param name="destinationSampleRate">The destination sample rate.</param>
        </member>
        <member name="P:CSCore.DSP.DmoChannelResampler.ChannelMatrix">
            <summary>
            Gets the channel matrix.
            </summary>
            <remarks>If any changes to the channel matrix are made, use the <see cref="M:CSCore.DSP.DmoChannelResampler.CommitChannelMatrixChanges"/> method to commit them.</remarks>
        </member>
        <member name="M:CSCore.DSP.DmoChannelResampler.CommitChannelMatrixChanges">
            <summary>
            Commits all channel-matrix-changes.
            </summary>
        </member>
        <member name="T:CSCore.DSP.DmoResampler">
            <summary>
                Resampler based on the DmoResampler. Supported since Windows XP.
            </summary>
        </member>
        <member name="M:CSCore.DSP.DmoResampler.#ctor(CSCore.IWaveSource,System.Int32)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.DSP.DmoResampler" /> class.
            </summary>
            <param name="source"><see cref="T:CSCore.IWaveSource" /> which has to get resampled.</param>
            <param name="destinationSampleRate">The new output samplerate specified in Hz.</param>
        </member>
        <member name="M:CSCore.DSP.DmoResampler.#ctor(CSCore.IWaveSource,CSCore.WaveFormat)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.DSP.DmoResampler" /> class.
            </summary>
            <param name="source"><see cref="T:CSCore.IWaveSource" /> which has to get resampled.</param>
            <param name="outputFormat">Waveformat, which specifies the new format. Note, that by far not all formats are supported.</param>
        </member>
        <member name="M:CSCore.DSP.DmoResampler.#ctor(CSCore.IWaveSource,CSCore.WaveFormat,System.Boolean)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.DSP.DmoResampler" /> class.
            </summary>
            <param name="source"><see cref="T:CSCore.IWaveSource" /> which has to get resampled.</param>
            <param name="outputFormat">Waveformat, which specifies the new format. Note, that by far not all formats are supported.</param>
            <param name="ignoreBaseStreamPosition">
            <b>True</b> to ignore the position of the <see cref="P:CSCore.WaveAggregatorBase.BaseSource"/> for more accurate seeking. The default value is <b>True</b>.
            For more details see remarks.
            </param>
            <remarks>Since the resampler transforms the audio data of the <see cref="P:CSCore.WaveAggregatorBase.BaseSource"/> to a different samplerate, 
            the position might differ from the actual amount of read data. In order to avoid that behavior set <paramref name="ignoreBaseStreamPosition"/>
            to <b>True</b>. This will cause the <see cref="P:CSCore.DSP.DmoResampler.Position"/> property to return the number of actually read bytes. 
            Note that seeking the <see cref="P:CSCore.WaveAggregatorBase.BaseSource"/> won't have any effect on the <see cref="P:CSCore.DSP.DmoResampler.Position"/> of the <see cref="T:CSCore.DSP.DmoResampler"/>.</remarks>
        </member>
        <member name="P:CSCore.DSP.DmoResampler.WaveFormat">
            <summary>
                Gets the new output format.
            </summary>
        </member>
        <member name="P:CSCore.DSP.DmoResampler.Position">
            <summary>
                Gets or sets the position of the source.
            </summary>
        </member>
        <member name="P:CSCore.DSP.DmoResampler.Length">
            <summary>
                Gets the length of the source.
            </summary>
        </member>
        <member name="P:CSCore.DSP.DmoResampler.Quality">
            <summary>
                Specifies the quality of the output. The valid range is from 1 to 60.
            </summary>
            <value>Specifies the quality of the resampled output. The valid range is: <code>1 &gt;= value &lt;= 60</code>.</value>
        </member>
        <member name="M:CSCore.DSP.DmoResampler.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a resampled sequence of bytes from the <see cref="T:CSCore.DSP.DmoResampler" /> and advances the position within the
                stream by the
                number of bytes read.
            </summary>
            <param name="buffer">
                An array of bytes. When this method returns, the <paramref name="buffer" /> contains the specified
                byte array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the bytes read from the current source.
            </param>
            <param name="offset">
                The zero-based byte offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of bytes to read from the current source.</param>
            <returns>The total number of bytes read into the buffer.</returns>
        </member>
        <member name="M:CSCore.DSP.DmoResampler.DisposeResamplerOnly">
            <summary>
                Disposes the allocated resources of the resampler but does not dispose the underlying source.
            </summary>
        </member>
        <member name="M:CSCore.DSP.DmoResampler.Dispose(System.Boolean)">
            <summary>
                Disposes the <see cref="T:CSCore.DSP.DmoResampler" />.
            </summary>
            <param name="disposing">
                True to release both managed and unmanaged resources; false to release only unmanaged
                resources.
            </param>
        </member>
        <member name="T:CSCore.FluentExtensions">
            <summary>
                Provides a basic fluent API for creating a source chain.
            </summary>
        </member>
        <member name="M:CSCore.FluentExtensions.AppendSource``2(``0,System.Func{``0,``1})">
            <summary>
                Appends a source to an already existing source.
            </summary>
            <typeparam name="TInput">Input</typeparam>
            <typeparam name="TResult">Output</typeparam>
            <param name="input">Already existing source.</param>
            <param name="func">Function which appends the new source to the already existing source.</param>
            <returns>The return value of the <paramref name="func" /> delegate.</returns>
        </member>
        <member name="M:CSCore.FluentExtensions.AppendSource``2(``0,System.Func{``0,``1},``1@)">
            <summary>
                Appends a source to an already existing source.
            </summary>
            <typeparam name="TInput">Input</typeparam>
            <typeparam name="TResult">Output</typeparam>
            <param name="input">Already existing source.</param>
            <param name="func">Function which appends the new source to the already existing source.</param>
            <param name="outputSource">Receives the return value.</param>
            <returns>The return value of the <paramref name="func" /> delegate.</returns>
        </member>
        <member name="M:CSCore.FluentExtensions.ChangeSampleRate(CSCore.IWaveSource,System.Int32)">
            <summary>
                Changes the SampleRate of an already existing wave source.
            </summary>
            <param name="input">Already existing wave source whose sample rate has to be changed.</param>
            <param name="destinationSampleRate">Destination sample rate.</param>
            <returns>Wave source with the specified <paramref name="destinationSampleRate" />.</returns>
        </member>
        <member name="M:CSCore.FluentExtensions.ChangeSampleRate(CSCore.ISampleSource,System.Int32)">
            <summary>
                Changes the SampleRate of an already existing sample source. Note: This extension has to convert the
                <paramref name="input" /> to a <see cref="T:CSCore.IWaveSource" /> and back to a <see cref="T:CSCore.ISampleSource" />.
            </summary>
            <param name="input">Already existing sample source whose sample rate has to be changed.</param>
            <param name="destinationSampleRate">Destination sample rate.</param>
            <returns>Sample source with the specified <paramref name="destinationSampleRate" />.</returns>
        </member>
        <member name="M:CSCore.FluentExtensions.ToStereo(CSCore.IWaveSource)">
            <summary>
                Converts the specified wave source with n channels to a wave source with two channels.
                Note: If the <paramref name="input" /> has only one channel, the <see cref="M:CSCore.FluentExtensions.ToStereo(CSCore.IWaveSource)" />
                extension has to convert the <paramref name="input" /> to a <see cref="T:CSCore.ISampleSource" /> and back to a
                <see cref="T:CSCore.IWaveSource" />.
            </summary>
            <param name="input">Already existing wave source.</param>
            <returns><see cref="T:CSCore.IWaveSource" /> instance with two channels.</returns>
        </member>
        <member name="M:CSCore.FluentExtensions.ToStereo(CSCore.ISampleSource)">
            <summary>
                Converts the specified sample source with n channels to a wave source with two channels.
                Note: If the <paramref name="input" /> has more than two channels, the
                <see cref="M:CSCore.FluentExtensions.ToStereo(CSCore.ISampleSource)" /> extension has to convert the <paramref name="input" /> to a
                <see cref="T:CSCore.IWaveSource" /> and back to a <see cref="T:CSCore.ISampleSource" />.
            </summary>
            <param name="input">Already existing sample source.</param>
            <returns><see cref="T:CSCore.ISampleSource" /> instance with two channels.</returns>
        </member>
        <member name="M:CSCore.FluentExtensions.ToMono(CSCore.IWaveSource)">
            <summary>
                Converts the specified wave source with n channels to a wave source with one channel.
                Note: If the <paramref name="input" /> has two channels, the <see cref="M:CSCore.FluentExtensions.ToMono(CSCore.IWaveSource)" /> extension
                has to convert the <paramref name="input" /> to a <see cref="T:CSCore.ISampleSource" /> and back to a
                <see cref="T:CSCore.IWaveSource" />.
            </summary>
            <param name="input">Already existing wave source.</param>
            <returns><see cref="T:CSCore.IWaveSource" /> instance with one channel.</returns>
        </member>
        <member name="M:CSCore.FluentExtensions.ToMono(CSCore.ISampleSource)">
            <summary>
                Converts the specified sample source with n channels to a wave source with one channel.
                Note: If the <paramref name="input" /> has only one channel, the <see cref="M:CSCore.FluentExtensions.ToMono(CSCore.ISampleSource)" />
                extension has to convert the <paramref name="input" /> to a <see cref="T:CSCore.IWaveSource" /> and back to a
                <see cref="T:CSCore.ISampleSource" />.
            </summary>
            <param name="input">Already existing sample source.</param>
            <returns><see cref="T:CSCore.ISampleSource" /> instance with one channels</returns>
        </member>
        <member name="M:CSCore.FluentExtensions.Loop(CSCore.IWaveSource)">
            <summary>
                Appends a new instance of the <see cref="T:CSCore.Streams.LoopStream" /> class to the audio chain.
            </summary>
            <param name="input">The underlying <see cref="T:CSCore.IWaveSource" /> which should be looped.</param>
            <returns>The new instance <see cref="T:CSCore.Streams.LoopStream" /> instance.</returns>
        </member>
        <member name="M:CSCore.FluentExtensions.ToWaveSource(CSCore.ISampleSource,System.Int32)">
            <summary>
                Converts a SampleSource to either a Pcm (8, 16, or 24 bit) or IeeeFloat (32 bit) WaveSource.
            </summary>
            <param name="sampleSource">Sample source to convert to a wave source.</param>
            <param name="bits">Bits per sample.</param>
            <returns>Wave source</returns>
        </member>
        <member name="M:CSCore.FluentExtensions.ToWaveSource(CSCore.ISampleSource)">
            <summary>
                Converts a <see cref="T:CSCore.IWaveSource"/> to IeeeFloat (32bit) <see cref="T:CSCore.IWaveSource"/>.
            </summary>
            <param name="sampleSource">The <see cref="T:CSCore.ISampleSource"/> to convert to a <see cref="T:CSCore.IWaveSource"/>.</param>
            <returns>The <see cref="T:CSCore.IWaveSource"/> wrapped around the specified <paramref name="sampleSource"/>.</returns>
        </member>
        <member name="M:CSCore.FluentExtensions.ToSampleSource(CSCore.IWaveSource)">
            <summary>
                Converts a <see cref="T:CSCore.IWaveSource"/> to a <see cref="T:CSCore.ISampleSource"/>.
            </summary>
            <param name="waveSource">The <see cref="T:CSCore.IWaveSource"/> to convert to a <see cref="T:CSCore.ISampleSource"/>.</param>
            <returns>The <see cref="T:CSCore.ISampleSource"/> wrapped around the specified <paramref name="waveSource"/>.</returns>        
        </member>
        <member name="M:CSCore.FluentExtensions.Synchronized``2(``0)">
            <summary>
                Returns a thread-safe (synchronized) wrapper around the specified <typeparamref name="TAudioSource" /> object.
            </summary>
            <param name="audioSource">The <typeparamref name="TAudioSource" /> object to synchronize.</param>
            <typeparam name="TAudioSource">Type of the <paramref name="audioSource" /> argument.</typeparam>
            <typeparam name="T">The type of the data read by the Read method of the <paramref name="audioSource"/> method.</typeparam>
            <returns>A thread-safe wrapper around the specified <typeparamref name="TAudioSource" /> object.</returns>
            <exception cref="T:System.ArgumentNullException">The <paramref name="audioSource" /> is null.</exception>
        </member>
        <member name="T:CSCore.IReadableAudioSource`1">
            <summary>
                Defines a generic base for all readable audio streams.
            </summary>
            <typeparam name="T">The type of the provided audio data.</typeparam>
        </member>
        <member name="M:CSCore.IReadableAudioSource`1.Read(`0[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of elements from the <see cref="T:CSCore.IReadableAudioSource`1" /> and advances the position within the
                stream by the
                number of elements read.
            </summary>
            <param name="buffer">
                An array of elements. When this method returns, the <paramref name="buffer" /> contains the specified
                array of elements with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the elements read from the current source.
            </param>
            <param name="offset">
                The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of elements to read from the current source.</param>
            <returns>The total number of elements read into the buffer.</returns>
        </member>
        <member name="T:CSCore.IWriteable">
            <summary>
                Provides the <see cref="M:CSCore.IWriteable.Write(System.Byte[],System.Int32,System.Int32)" /> method.
            </summary>
        </member>
        <member name="M:CSCore.IWriteable.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Used to write down raw byte data.
            </summary>
            <param name="buffer">Byte array which contains the data to write down.</param>
            <param name="offset">Zero-based offset in the <paramref name="buffer" />.</param>
            <param name="count">Number of bytes to write.</param>
        </member>
        <member name="T:CSCore.MediaFoundation.CommonAudioDecoderGuids">
            <summary>
            Defines the CLSID values for several common mediafoundation audio decoders.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.CommonAudioDecoderGuids.DolbyDigitalPlusDecoder">
            <summary>
            CLSID_CMSDDPlusDecMFT
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.CommonAudioDecoderGuids.MpegAudioDecoder">
            <summary>
            CLSID_CMSMPEGAudDecMFT
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.CommonAudioDecoderGuids.AacDecoder">
            <summary>
            CMSAACDecMFT
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.CommonAudioDecoderGuids.WmAudioDecoder">
            <summary>
            CWMADecMediaObject
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.CommonAudioDecoderGuids.ALawDecoder">
            <summary>
            CALawDecMediaObject
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.CommonAudioDecoderGuids.GsmDecoder">
            <summary>
            ACM Wrapper
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.CommonAudioDecoderGuids.WmaProDecoder">
            <summary>
            CWMAudioSpdTxDMO
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.CommonAudioDecoderGuids.WmSpeechDecoder">
            <summary>
            CWMSPDecMediaObject
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.CommonAudioDecoderGuids.G711Decoder">
            <summary>
            Wrapper
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.CommonAudioDecoderGuids.ImaAdPcmDecoder">
            <summary>
            IMA ADPCM ACM Wrapper
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.CommonAudioDecoderGuids.Mp3Decoder">
            <summary>
            CMP3DecMediaObject
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.CommonAudioDecoderGuids.AdPcmDecoder">
            <summary>
            ADPCM ACM Wrapper
            </summary>
        </member>
        <member name="T:CSCore.MediaFoundation.MediaFoundationAttributes">
            <summary>
            see http://msdn.microsoft.com/en-us/library/windows/desktop/ms696989%28v=vs.85%29.aspx
            </summary>
        </member>
        <member name="T:CSCore.MediaFoundation.MediaFoundationDecoder">
            <summary>
                The <see cref="T:CSCore.MediaFoundation.MediaFoundationDecoder" /> is a generic decoder for all installed Mediafoundation codecs.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationDecoder.#ctor(System.String)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.MediaFoundation.MediaFoundationDecoder" /> class.
            </summary>
            <param name="url">Uri which points to an audio source which can be decoded.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationDecoder.#ctor(System.IO.Stream)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.MediaFoundation.MediaFoundationDecoder" /> class.
            </summary>
            <param name="stream">Stream which provides the audio data to decode.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationDecoder.#ctor(CSCore.MediaFoundation.MFByteStream)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.MediaFoundation.MediaFoundationDecoder" /> class.
            </summary>
            <param name="byteStream">Stream which provides the audio data to decode.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationDecoder.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from the <see cref="T:CSCore.MediaFoundation.MediaFoundationDecoder" /> and advances the position within the
                stream by the
                number of bytes read.
            </summary>
            <param name="buffer">
                An array of bytes. When this method returns, the <paramref name="buffer" /> contains the specified
                byte array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the bytes read from the current source.
            </param>
            <param name="offset">
                The zero-based byte offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of bytes to read from the current source.</param>
            <returns>The total number of bytes read into the buffer.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationDecoder.Dispose">
            <summary>
                Disposes the <see cref="T:CSCore.MediaFoundation.MediaFoundationDecoder" />.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MediaFoundationDecoder.WaveFormat">
            <summary>
                Gets the format of the decoded audio data provided by the <see cref="M:CSCore.MediaFoundation.MediaFoundationDecoder.Read(System.Byte[],System.Int32,System.Int32)" /> method.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MediaFoundationDecoder.Position">
            <summary>
                Gets or sets the position of the output stream, in bytes.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MediaFoundationDecoder.Length">
            <summary>
                Gets the total length of the decoded audio, in bytes.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MediaFoundationDecoder.CanSeek">
            <summary>
                Gets a value which indicates whether the seeking is supported. True means that seeking is supported. False means
                that seeking is not supported.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationDecoder.Dispose(System.Boolean)">
            <summary>
                Disposes the <see cref="T:CSCore.MediaFoundation.MediaFoundationDecoder" /> and its internal resources.
            </summary>
            <param name="disposing">
                True to release both managed and unmanaged resources; false to release only unmanaged
                resources.
            </param>
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationDecoder.Finalize">
            <summary>
                Finalizes an instance of the <see cref="T:CSCore.MediaFoundation.MediaFoundationDecoder" /> class.
            </summary>
        </member>
        <member name="T:CSCore.MediaFoundation.MediaFoundationEncoder">
            <summary>
                A generic encoder for all installed Mediafoundation-Encoders.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationEncoder.#ctor(System.IO.Stream,CSCore.MediaFoundation.MFMediaType,CSCore.MediaFoundation.MFMediaType,System.Guid)">
            <summary>
                Creates an new instance of the <see cref="T:CSCore.MediaFoundation.MediaFoundationEncoder"/> class.
            </summary>
            <param name="inputMediaType">Mediatype of the source to encode.</param>
            <param name="stream">Stream which will be used to store the encoded data.</param>
            <param name="targetMediaType">The format of the encoded data.</param>
            <param name="containerType">See container type. For a list of all available container types, see <see cref="T:CSCore.MediaFoundation.TranscodeContainerTypes"/>.</param>
        </member>
        <member name="P:CSCore.MediaFoundation.MediaFoundationEncoder.EncodedDuration">
            <summary>
                Gets the total duration of all encoded data.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MediaFoundationEncoder.TargetBaseStream">
            <summary>
                Gets the underlying stream which operates as encoding target.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MediaFoundationEncoder.OutputMediaType">
            <summary>
                Gets the media type of the encoded data.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MediaFoundationEncoder.SinkWriter">
            <summary>
                Gets the <see cref="T:CSCore.MediaFoundation.MFSinkWriter" /> which is used to write to the <see cref="P:CSCore.MediaFoundation.MediaFoundationEncoder.TargetStream"/>.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MediaFoundationEncoder.TargetStream">
            <summary>
                Gets the destination stream which is used to store the encoded audio data.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationEncoder.Dispose">
            <summary>
                Releases all resources used by the encoder and finalizes encoding.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationEncoder.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Encodes raw audio data.
            </summary>
            <param name="buffer">A byte-array which contains raw data to encode.</param>
            <param name="offset">The zero-based byte offset in buffer at which to begin encoding bytes to the underlying stream.</param>
            <param name="count">The number of bytes to encode.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationEncoder.SetTargetStream(System.IO.Stream,CSCore.MediaFoundation.MFMediaType,CSCore.MediaFoundation.MFMediaType,System.Guid)">
            <summary>
                Sets and initializes the targetstream for the encoding process.
            </summary>
            <param name="stream">Stream which should be used as the targetstream.</param>
            <param name="inputMediaType">Mediatype of the raw input data to encode.</param>
            <param name="targetMediaType">Mediatype of the encoded data.</param>
            <param name="containerType">Container type which should be used.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationEncoder.Dispose(System.Boolean)">
            <summary>
                Disposes the <see cref="T:CSCore.MediaFoundation.MediaFoundationEncoder" />.
            </summary>
            <param name="disposing">
                True to release both managed and unmanaged resources; false to release only unmanaged
                resources.
            </param>
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationEncoder.Finalize">
            <summary>
            Finalizes an instance of the <see cref="T:CSCore.MediaFoundation.MediaFoundationEncoder"/> class.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationEncoder.EncodeWholeSource(CSCore.MediaFoundation.MediaFoundationEncoder,CSCore.IWaveSource)">
            <summary>
                Encodes the whole <paramref name="source" /> with the specified <paramref name="encoder" />. The encoding process
                stops as soon as the <see cref="M:CSCore.IReadableAudioSource`1.Read(`0[],System.Int32,System.Int32)" /> method of the specified <paramref name="source" />
                returns 0.
            </summary>
            <param name="encoder">The encoder which should be used to encode the audio data.</param>
            <param name="source">The <see cref="T:CSCore.IWaveSource" /> which provides the raw audio data to encode.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationEncoder.CreateMP3Encoder(CSCore.WaveFormat,System.String,System.Int32)">
            <summary>
                Returns a new instance of the <see cref="T:CSCore.MediaFoundation.MediaFoundationEncoder"/> class, configured as mp3 encoder.
            </summary>
            <param name="sourceFormat">The input format, of the data to encode.</param>
            <param name="bitRate">The bitrate to use. The final bitrate can differ from the specified value.</param>        
            <param name="targetFilename">The file to write to.</param>
            <remarks>For more information about supported input and output formats, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/hh162907(v=vs.85).aspx"/>.</remarks>
            <returns>A new instance of the <see cref="T:CSCore.MediaFoundation.MediaFoundationEncoder"/> class, configured as mp3 encoder.</returns>        
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationEncoder.CreateMP3Encoder(CSCore.WaveFormat,System.IO.Stream,System.Int32)">
            <summary>
                Returns a new instance of the <see cref="T:CSCore.MediaFoundation.MediaFoundationEncoder"/> class, configured as mp3 encoder.
            </summary>
            <param name="sourceFormat">The input format, of the data to encode.</param>
            <param name="bitRate">The bitrate to use. The final bitrate can differ from the specified value.</param>        
            <param name="targetStream">The stream to write to.</param>
            <remarks>For more information about supported input and output formats, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/hh162907(v=vs.85).aspx"/>.</remarks>
            <returns>A new instance of the <see cref="T:CSCore.MediaFoundation.MediaFoundationEncoder"/> class, configured as mp3 encoder.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationEncoder.CreateWMAEncoder(CSCore.WaveFormat,System.String,System.Int32)">
            <summary>
                Returns a new instance of the <see cref="T:CSCore.MediaFoundation.MediaFoundationEncoder"/> class, configured as wma encoder.
            </summary>
            <param name="sourceFormat">The input format, of the data to encode.</param>
            <param name="bitRate">The bitrate to use. The final bitrate can differ from the specified value.</param>        
            <param name="targetFilename">The file to write to.</param>
            <remarks>For more information about supported input and output formats, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/ff819498(v=vs.85).aspx"/>.</remarks>
            <returns>A new instance of the <see cref="T:CSCore.MediaFoundation.MediaFoundationEncoder"/> class, configured as wma encoder.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationEncoder.CreateWMAEncoder(CSCore.WaveFormat,System.IO.Stream,System.Int32)">
            <summary>
                Returns a new instance of the <see cref="T:CSCore.MediaFoundation.MediaFoundationEncoder"/> class, configured as wma encoder.
            </summary>
            <param name="sourceFormat">The input format, of the data to encode.</param>
            <param name="bitRate">The bitrate to use. The final bitrate can differ from the specified value.</param>        
            <param name="targetStream">The stream to write to.</param>
            <remarks>For more information about supported input and output formats, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/ff819498(v=vs.85).aspx"/>.</remarks>
            <returns>A new instance of the <see cref="T:CSCore.MediaFoundation.MediaFoundationEncoder"/> class, configured as wma encoder.</returns>        
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationEncoder.CreateAACEncoder(CSCore.WaveFormat,System.String,System.Int32)">
            <summary>
                Returns a new instance of the <see cref="T:CSCore.MediaFoundation.MediaFoundationEncoder"/> class, configured as aac encoder.
            </summary>
            <param name="sourceFormat">The input format, of the data to encode.</param>
            <param name="bitRate">The bitrate to use. The final bitrate can differ from the specified value.</param>        
            <param name="targetFilename">The file to write to.</param>
            <remarks>For more information about supported input and output formats, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd742785(v=vs.85).aspx"/>.</remarks>
            <returns>A new instance of the <see cref="T:CSCore.MediaFoundation.MediaFoundationEncoder"/> class, configured as aac encoder.</returns>        
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationEncoder.CreateAACEncoder(CSCore.WaveFormat,System.IO.Stream,System.Int32)">
            <summary>
                Returns a new instance of the <see cref="T:CSCore.MediaFoundation.MediaFoundationEncoder"/> class, configured as aac encoder.
            </summary>
            <param name="sourceFormat">The input format, of the data to encode.</param>
            <param name="bitRate">The bitrate to use. The final bitrate can differ from the specified value.</param>        
            <param name="targetStream">The stream to write to.</param>
            <remarks>For more information about supported input and output formats, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd742785(v=vs.85).aspx"/>.</remarks>
            <returns>A new instance of the <see cref="T:CSCore.MediaFoundation.MediaFoundationEncoder"/> class, configured as aac encoder.</returns>        
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationEncoder.FindBestMediaType(System.Guid,System.Int32,System.Int32,System.Int32)">
            <summary>
                Tries to find the <see cref="T:CSCore.DMO.MediaType" /> which fits best the requested format specified by the parameters:
                <paramref name="sampleRate" />, <paramref name="channels" />, <paramref name="bitRate" /> and
                <paramref name="audioSubType" />.
            </summary>
            <param name="audioSubType">The audio subtype. For more information, see the <see cref="T:CSCore.AudioSubTypes" /> class.</param>
            <param name="sampleRate">The requested sample rate.</param>
            <param name="channels">The requested number of channels.</param>
            <param name="bitRate">The requested bit rate.</param>
            <returns>
                A <see cref="T:CSCore.DMO.MediaType" /> which fits best the requested format. If no mediatype could be found the
                <see cref="M:CSCore.MediaFoundation.MediaFoundationEncoder.FindBestMediaType(System.Guid,System.Int32,System.Int32,System.Int32)" /> method returns null.
            </returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationEncoder.GetEncoderMediaTypes(System.Guid)">
            <summary>
            Returns all <see cref="T:CSCore.MediaFoundation.MFMediaType"/>s available for encoding the specified <paramref name="audioSubType"/>.
            </summary>
            <param name="audioSubType">The audio subtype to search available <see cref="T:CSCore.MediaFoundation.MFMediaType"/>s for.</param>
            <returns>Available <see cref="T:CSCore.MediaFoundation.MFMediaType"/>s for the specified <paramref name="audioSubType"/>. If the <see cref="M:CSCore.MediaFoundation.MediaFoundationEncoder.GetEncoderMediaTypes(System.Guid)"/> returns an empty array, no encoder for the specified <paramref name="audioSubType"/> was found.</returns>
        </member>
        <member name="T:CSCore.MediaFoundation.MFActivate">
            <summary>
            Enables the application to defer the creation of an object. This interface is exposed by activation objects.
            </summary>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/ms703039(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFActivate.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.MediaFoundation.MFActivate"/> class.
            </summary>
            <param name="ptr">The underlying native pointer.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFActivate.ActivateObjectNative(System.Guid,System.IntPtr@)">
            <summary>
            Creates the object associated with this activation object.
            </summary>
            <param name="riid">Interface identifier (IID) of the requested interface.</param>
            <param name="ptr">Receives a pointer to the requested interface. The caller must release the interface.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFActivate.ActivateObject``1(System.Guid)">
            <summary>
            Creates the object associated with this activation object.
            <seealso cref="M:CSCore.MediaFoundation.MFActivate.ActivateObject(System.Guid)"/>
            <seealso cref="M:CSCore.MediaFoundation.MFActivate.ActivateObject``1(System.Guid)"/>
            </summary>
            <typeparam name="T">The type of the com object to create.</typeparam>
            <param name="riid">Interface identifier (IID) of the requested interface.</param>
            <returns>An instance of the requested interface.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFActivate.ActivateObject(System.Guid)">
            <summary>
            Creates the object associated with this activation object.
            </summary>
            <param name="riid">Interface identifier (IID) of the requested interface.</param>
            <returns>A pointer to the requested interface. The caller must release the interface.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFActivate.ShutdownObjectNative">
            <summary>
            Shuts down the created object.
            <see cref="M:CSCore.MediaFoundation.MFActivate.ShutdownObject"/>
            </summary>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFActivate.ShutdownObject">
            <summary>
            Shuts down the created object.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFActivate.DetachObjectNative">
            <summary>
            Detaches the created object from the activation object.
            <see cref="M:CSCore.MediaFoundation.MFActivate.DetachObject"/>
            </summary>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFActivate.DetachObject">
            <summary>
            Detaches the created object from the activation object.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MFActivate.FriendlyName">
            <summary>
            Gets the name of the MFT.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MFActivate.InputTypes">
            <summary>
            Gets the available input types.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MFActivate.OutputTypes">
            <summary>
            Gets the available output types.
            </summary>
        </member>
        <member name="T:CSCore.MediaFoundation.MFActivate.RegisterTypeInfo">
            <summary>
            Contains media type information for registering a Media Foundation transform (MFT).
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MFActivate.RegisterTypeInfo.MajorType">
            <summary>
            The major media type.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MFActivate.RegisterTypeInfo.SubType">
            <summary>
            The media subtype.
            </summary>
        </member>
        <member name="T:CSCore.MediaFoundation.MFByteStream">
            <summary>
            Represents a byte stream from some data source, which might be a local file, a network file, or some other source. The <see cref="T:CSCore.MediaFoundation.MFByteStream"/> interface supports the typical stream operations, such as reading, writing, and seeking.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MFByteStream.Capabilities">
            <summary>
            Gets the characteristics of the <see cref="T:CSCore.MediaFoundation.MFByteStream"/>.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MFByteStream.Length">
            <summary>
            Gets or sets the length of the stream in bytes.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.MediaFoundation.MFByteStream"/> class.
            </summary>
            <param name="ptr">The native pointer of the COM object.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.#ctor(System.IO.Stream,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.MediaFoundation.MFByteStream"/> class which acts as a wrapper for the specified <paramref name="stream"/> to use it in a media foundation context.
            </summary>
            <param name="stream">The stream to wrap for media foundation usage.</param>
            <param name="closeStreamOnDispose">A value indicating whether the <paramref name="stream"/> should be closed when the 
            <see cref="M:CSCore.MediaFoundation.MFByteStream.Dispose(System.Boolean)"/> method is being called.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.GetCapabilitiesNative(CSCore.MediaFoundation.MFByteStreamCapsFlags@)">
            <summary>
            Retrieves the characteristics of the byte stream.
            </summary>
            <param name="capabilities">Receives a bitwise OR of zero or more flags.</param>
            <returns>HRESULT</returns>
            <remarks>Use the <see cref="P:CSCore.MediaFoundation.MFByteStream.Capabilities"/> property for easier usage with automated error handling.</remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.GetLengthNative(System.Int64@)">
            <summary>
            Retrieves the length of the stream.
            </summary>
            <param name="length">Receives the length of the stream, in bytes. If the length is unknown, this value is -1.</param>
            <returns>HRESULT</returns>
            <remarks>Use the <see cref="P:CSCore.MediaFoundation.MFByteStream.Length"/> property for easier usage with automated error handling.</remarks>        
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.SetLengthNative(System.Int64)">
            <summary>
            Sets the length of the stream.
            </summary>
            <param name="length">The length of the stream in bytes.</param>
            <returns>HRESULT</returns>
            <remarks>Use the <see cref="P:CSCore.MediaFoundation.MFByteStream.Length"/> property for easier usage with automated error handling.</remarks>        
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.GetCurrentPositionNative(System.Int64@)">
            <summary>
            Retrieves the current read or write position in the stream.
            </summary>
            <param name="position">The current position, in bytes.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.SetCurrentPositionNative(System.Int64)">
            <summary>
            Sets the current read or write position.
            </summary>
            <param name="position">New position in the stream, as a byte offset from the start of the stream.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="P:CSCore.MediaFoundation.MFByteStream.CurrentPosition">
            <summary>
            Gets or sets the current read/write position in bytes.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MFByteStream.IsEndOfStream">
            <summary>
            Gets a value indicating whether the <see cref="P:CSCore.MediaFoundation.MFByteStream.CurrentPosition"/> has reached the end of the stream.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.IsEndOfStreamNative(CSCore.Win32.NativeBool@)">
            <summary>
            Queries whether the current position has reached the end of the stream.
            </summary>
            <param name="isEndOfStream">Receives the value <see cref="F:CSCore.Win32.NativeBool.True"/> if the end of the stream has been reached, or <see cref="F:CSCore.Win32.NativeBool.False"/> otherwise.</param>
            <returns>HREUSLT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.ReadNative(System.IntPtr,System.Int32,System.Int32@)">
            <summary>
            Reads data from the stream.
            </summary>
            <param name="buffer">Pointer to a buffer that receives the data. The caller must allocate the buffer.</param>
            <param name="count">Size of the buffer in bytes.</param>
            <param name="read">Receives the number of bytes that are copied into the buffer.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.Read(System.Byte[],System.Int32)">
            <summary>
            Reads data from the stream.
            </summary>
            <param name="buffer">The buffer that receives the data.</param>
            <param name="count">The number of bytes to read.</param>
            <returns>HRESULT</returns>
            <exception cref="T:System.ArgumentNullException">buffer is null.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException">count is bigger than the length of the buffer.</exception>
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.BeginReadNative(System.IntPtr,System.Int32,System.IntPtr,System.IntPtr)">
            <summary>
            Begins an asynchronous read operation from the stream.
            </summary>
            <param name="buffer">Pointer to a buffer that receives the data. The caller must allocate the buffer.</param>
            <param name="count">Size of the buffer in bytes.</param>
            <param name="callback">Pointer to the IMFAsyncCallback interface of a callback object. The caller must implement this interface.</param>
            <param name="unkState">Pointer to the IUnknown interface of a state object, defined by the caller. Can be Zero.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.EndReadNative(System.IntPtr,System.Int32@)">
            <summary>
            Completes an asynchronous read operation.
            </summary>
            <param name="result">Pointer to the IMFAsyncResult interface. Pass in the same pointer that your callback object received in the IMFAsyncCallback::Invoke method.</param>
            <param name="read">Receives the number of bytes that were read.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.WriteNative(System.IntPtr,System.Int32,System.Int32@)">
            <summary>
            Writes data to the stream.
            </summary>
            <param name="buffer">Pointer to a buffer that contains the data to write.</param>
            <param name="count">Size of the buffer in bytes.</param>
            <param name="written">Receives the number of bytes that are written.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.Write(System.Byte[],System.Int32)">
            <summary>
            Writes data to the stream.
            </summary>
            <param name="buffer">Buffer that contains the data to write.</param>
            <param name="count">The number of bytes to write.</param>
            <returns>The number of bytes that were written.</returns>
            <exception cref="T:System.ArgumentNullException">buffer is null.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException">count is bigger than the length of the buffer.</exception>
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.BeginWriteNative(System.IntPtr,System.Int32,System.IntPtr,System.IntPtr)">
            <summary>
            Begins an asynchronous write operation to the stream.
            </summary>
            <param name="buffer">Pointer to a buffer containing the data to write.</param>
            <param name="count">Size of the buffer in bytes.</param>
            <param name="callback">Pointer to the IMFAsyncCallback interface of a callback object. The caller must implement this interface.</param>
            <param name="unkState">Pointer to the IUnknown interface of a state object, defined by the caller. Can be Zero.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.EndWriteNative(System.IntPtr,System.Int32@)">
            <summary>
            Completes an asynchronous write operation.
            </summary>
            <param name="result">Pointer to the IMFAsyncResult interface. Pass in the same pointer that your callback object received in the IMFAsyncCallback::Invoke method.</param>
            <param name="written">Receives the number of bytes that were written.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.SeekNative(CSCore.MediaFoundation.MFByteStreamSeekOrigin,System.Int64,System.Boolean,System.Int64@)">
            <summary>
            Moves the current position in the stream by a specified offset.
            </summary>
            <param name="seekOrigin">Specifies the origin of the seek as a member of the <see cref="T:CSCore.MediaFoundation.MFByteStreamSeekOrigin"/> enumeration. The offset is calculated relative to this position.</param>
            <param name="seekOffset">Specifies the new position, as a byte offset from the seek origin.</param>
            <param name="cancelPendingIO">Specifies whether all pending I/O requests are canceled after the seek request completes successfully.</param>
            <param name="currentPosition">Receives the new position after the seek.</param>
            <returns>The new position after the seek.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.Seek(CSCore.MediaFoundation.MFByteStreamSeekOrigin,System.Int64,System.Boolean)">
            <summary>
            Moves the current position in the stream by a specified offset.
            </summary>
            <param name="seekOrigin">Specifies the origin of the seek as a member of the <see cref="T:CSCore.MediaFoundation.MFByteStreamSeekOrigin"/> enumeration. The offset is calculated relative to this position.</param>
            <param name="seekOffset">Specifies the new position, as a byte offset from the seek origin.</param>
            <param name="cancelPendingIO">Specifies whether all pending I/O requests are canceled after the seek request completes successfully.</param>
            <returns>The new position after the seek.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.FlushNative">
            <summary>
            Clears any internal buffers used by the stream. If you are writing to the stream, the buffered data is written to the underlying file or device.
            </summary>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.Flush">
            <summary>
            Clears any internal buffers used by the stream. If you are writing to the stream, the buffered data is written to the underlying file or device.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.CloseNative">
            <summary>
            Closes the stream and releases any resources associated with the stream, such as sockets or file handles. This method also cancels any pending asynchronous I/O requests.
            </summary>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.Close">
            <summary>
            Closes the stream and releases any resources associated with the stream, such as sockets or file handles. This method also cancels any pending asynchronous I/O requests.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFByteStream.Dispose(System.Boolean)">
            <summary>
            Releases the COM object.
            </summary>
            <param name="disposing">True to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
        </member>
        <member name="T:CSCore.MediaFoundation.MFByteStreamCapsFlags">
            <summary>
            Defines the characteristics of a <see cref="T:CSCore.MediaFoundation.MFByteStream"/>.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFByteStreamCapsFlags.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFByteStreamCapsFlags.IsReadable">
            <summary>
            The byte stream can be read.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFByteStreamCapsFlags.IsWriteable">
            <summary>
            The byte stream can be written to.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFByteStreamCapsFlags.IsSeekable">
            <summary>
            The byte stream can be seeked.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFByteStreamCapsFlags.IsRemote">
            <summary>
            The byte stream is from a remote source, such as a network.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFByteStreamCapsFlags.IsDirectory">
            <summary>
            The byte stream represents a file directory.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFByteStreamCapsFlags.HasSlowSeek">
            <summary>
            Seeking within this stream might be slow. For example, the byte stream might download from a network.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFByteStreamCapsFlags.IsPartiallyDownloaded">
            <summary>
            The byte stream is currently downloading data to a local cache. Read operations on the byte stream might take longer until the data is completely downloaded.This flag is cleared after all of the data has been downloaded.
            If the <see cref="F:CSCore.MediaFoundation.MFByteStreamCapsFlags.HasSlowSeek"/> flag is also set, it means the byte stream must download the entire file sequentially. Otherwise, the byte stream can respond to seek requests by restarting the download from a new point in the stream.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFByteStreamCapsFlags.ShareWrite">
            <summary>
            Another thread or process can open this byte stream for writing. If this flag is present, the length of the byte stream could change while it is being read.
            </summary>
            <remarks>Requires Windows 7 or later.</remarks>
        </member>
        <member name="F:CSCore.MediaFoundation.MFByteStreamCapsFlags.DoesNotUseNetwork">
            <summary>
            The byte stream is not currently using the network to receive the content. Networking hardware may enter a power saving state when this bit is set.
            </summary>
            <remarks>Requires Windows 8 or later.</remarks>
        </member>
        <member name="T:CSCore.MediaFoundation.MFByteStreamSeekOrigin">
            <summary>
            Specifies the origin for a seek request.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFByteStreamSeekOrigin.Begin">
            <summary>
            The seek position is specified relative to the start of the stream.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFByteStreamSeekOrigin.Current">
            <summary>
            The seek position is specified relative to the current read/write position in the stream.
            </summary>
        </member>
        <member name="T:CSCore.MediaFoundation.MFTEnumerator">
            <summary>
            Provides the functionality to enumerate Mediafoundation-Transforms.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFTEnumerator.EnumerateTransformsEx(System.Guid,CSCore.MediaFoundation.MFTEnumFlags,CSCore.MediaFoundation.MFTRegisterTypeInfo,CSCore.MediaFoundation.MFTRegisterTypeInfo)">
            <summary>
            Enumerates Mediafoundation-Transforms that match the specified search criteria.
            </summary>
            <param name="category">A <see cref="T:System.Guid" /> that specifies the category of MFTs to enumerate.
            For a list of MFT categories, see <see cref="T:CSCore.MediaFoundation.MFTCategories" />.</param>
            <param name="flags">The bitwise OR of zero or more flags from the <see cref="T:CSCore.MediaFoundation.MFTEnumFlags" /> enumeration.</param>
            <param name="inputType">Specifies an input media type to match. This parameter can be <c>null</c>. If <c>null</c>, all input types are matched.</param>
            <param name="outputType">Specifies an output media type to match. This parameter can be <c>null</c>. If <c>null</c>, all output types are matched.</param>
            <returns> A <see cref="T:System.Collections.Generic.IEnumerator`1" /> that can be used to iterate through the MFTs.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFTEnumerator.EnumerateTransforms(System.Guid,CSCore.MediaFoundation.MFTRegisterTypeInfo,CSCore.MediaFoundation.MFTRegisterTypeInfo)">
            <summary>
            Enumerates Media Foundation transforms (MFTs) in the registry.
            </summary>
            <param name="category">A <see cref="T:System.Guid" /> that specifies the category of MFTs to enumerate.
            For a list of MFT categories, see <see cref="T:CSCore.MediaFoundation.MFTCategories" />.</param>
            <param name="inputType">Specifies an input media type to match. This parameter can be <c>null</c>. If <c>null</c>, all input types are matched.</param>
            <param name="outputType">Specifies an output media type to match. This parameter can be <c>null</c>. If <c>null</c>, all output types are matched.</param>
            <returns>An array of CLSIDs. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/ms701774%28v=vs.85%29.aspx"/>.</returns>
            <remarks>On Windows 7/Windows Server 2008 R2, use the <see cref="M:CSCore.MediaFoundation.MFTEnumerator.EnumerateTransformsEx(System.Guid,CSCore.MediaFoundation.MFTEnumFlags,CSCore.MediaFoundation.MFTRegisterTypeInfo,CSCore.MediaFoundation.MFTRegisterTypeInfo)"/> method instead.</remarks>
        </member>
        <member name="T:CSCore.MediaFoundation.MFMediaSourceCharacteristics">
            <summary>
            Defines the characteristics of a media source.
            </summary>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/ms694277(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaSourceCharacteristics.IsLive">
            <summary>
            This flag indicates a data source that runs constantly, such as a live presentation. If the source is stopped and then restarted, there will be a gap in the content.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaSourceCharacteristics.CanSeek">
            <summary>
            The media source supports seeking.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaSourceCharacteristics.CanPause">
            <summary>
            The source can pause.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaSourceCharacteristics.HasSlowSeek">
            <summary>
            The media source downloads content. It might take a long time to seek to parts of the content that have not been downloaded.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaSourceCharacteristics.HasMultiplePresentations">
            <summary>
            The media source delivers a playlist, which might contain more than one entry.
            </summary>
            <remarks>Requires Windows 7 or later.</remarks>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaSourceCharacteristics.CanSkipForward">
            <summary>
            The media source can skip forward in the playlist. Applies only if the <see cref="F:CSCore.MediaFoundation.MFMediaSourceCharacteristics.HasMultiplePresentations"/> flag is present.
            </summary>
            <remarks>Requires Windows 7 or later.</remarks>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaSourceCharacteristics.CanSkipBackward">
            <summary>
            The media source can skip backward in the playlist. Applies only if the <see cref="F:CSCore.MediaFoundation.MFMediaSourceCharacteristics.HasMultiplePresentations"/> flag is present.
            </summary>
            <remarks>Requires Windows 7 or later.</remarks>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaSourceCharacteristics.DoesNotUseNetwork">
            <summary>
            The media source is not currently using the network to receive the content. Networking hardware may enter a power saving state when this bit is set.
            </summary>
            <remarks>Requires Windows 8 or later.</remarks>
        </member>
        <member name="T:CSCore.MediaFoundation.MFMediaTypes">
            <summary>
            Defines common audio subtypes.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.MFAudioFormat_AAC">
            <summary>
            Advanced Audio Coding (AAC).
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.MFAudioFormat_ADTS">
            <summary>
            Not used
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.MFAudioFormat_Dolby_AC3_SPDIF">
            <summary>
            Dolby AC-3 audio over Sony/Philips Digital Interface (S/PDIF).
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.MFAudioFormat_DRM">
            <summary>
            Encrypted audio data used with secure audio path.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.MFAudioFormat_DTS">
            <summary>
            Digital Theater Systems (DTS) audio.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.MFAudioFormat_Float">
            <summary>
            Uncompressed IEEE floating-point audio.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.MFAudioFormat_MP3">
            <summary>
            MPEG Audio Layer-3 (MP3).
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.MFAudioFormat_MPEG">
            <summary>
            MPEG-1 audio payload.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.MFAudioFormat_MSP1">
            <summary>
            Windows Media Audio 9 Voice codec.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.MFAudioFormat_PCM">
            <summary>
            Uncompressed PCM audio.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.MFAudioFormat_WMASPDIF">
            <summary>
            Windows Media Audio 9 Professional codec over S/PDIF.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.MFAudioFormat_WMAudio_Lossless">
            <summary>
            Windows Media Audio 9 Lossless codec or Windows Media Audio 9.1 codec.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.MFAudioFormat_WMAudioV8">
            <summary>
            Windows Media Audio 8 codec, Windows Media Audio 9 codec, or Windows Media Audio 9.1 codec.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.MFAudioFormat_WMAudioV9">
            <summary>
            Windows Media Audio 9 Professional codec or Windows Media Audio 9.1 Professional codec.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.MFAudioFormat_Dolby_AC3">
            <summary>
            Dolby Digital (AC-3).
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.MEDIASUBTYPE_RAW_AAC1">
            <summary>
            MPEG-4 and AAC Audio Types
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.MEDIASUBTYPE_DVM">
            <summary>
            Dolby Audio Types
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.MEDIASUBTYPE_DOLBY_DDPLUS">
            <summary>
            Dolby Audio Types
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.KSDATAFORMAT_SUBTYPE_MULAW">
            <summary>
            μ-law coding
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.KSDATAFORMAT_SUBTYPE_ADPCM">
            <summary>
            Adaptive delta pulse code modulation (ADPCM)
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.KSDATAFORMAT_SUBTYPE_IEC61937_DOLBY_DIGITAL_PLUS">
            <summary>
            Dolby Digital Plus formatted for HDMI output.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.MEDIASUBTYPE_MSAUDIO1">
            <summary>
            MSAudio1 - unknown meaning
            Reference : wmcodecdsp.h
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.ImaAdpcm">
            <summary>
            IMA ADPCM ACM Wrapper
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFMediaTypes.WMMEDIASUBTYPE_WMSP2">
            <summary>
            WMSP2 - unknown meaning
            Reference: wmsdkidl.h
            </summary>
        </member>
        <member name="T:CSCore.MediaFoundation.MFSampleFlags">
            <summary>
            Currently no flags are defined.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFSampleFlags.None">
            <summary>
            None
            </summary>
        </member>
        <member name="T:CSCore.MediaFoundation.MFSinkWriter">
            <summary>
            Implemented by the Microsoft Media Foundation sink writer object.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFSinkWriter.MF_SINK_WRITER_ALL_STREAMS">
            <summary>
            Stream index to selected all streams.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFSinkWriter.MF_SINK_WRITER_MEDIASINK">
            <summary>
            MF_SINK_WRITER_MEDIASINK constant.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.MediaFoundation.MFSinkWriter"/> class.
            </summary>
            <param name="ptr">The native pointer of the COM object.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.#ctor(CSCore.MediaFoundation.MFByteStream,CSCore.MediaFoundation.MFAttributes)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.MediaFoundation.MFSinkWriter"/> class with a underlying <paramref name="byteStream"/>.
            </summary>
            <param name="byteStream">The underlying <see cref="T:CSCore.MediaFoundation.MFByteStream"/> to use.</param>
            <param name="attributes">Attributes to configure the <see cref="T:CSCore.MediaFoundation.MFSinkWriter"/>. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd389284(v=vs.85).aspx"/>. Use null/nothing as the default value.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.AddStreamNative(CSCore.MediaFoundation.MFMediaType,System.Int32@)">
            <summary>
            Adds a stream to the sink writer.
            <seealso cref="M:CSCore.MediaFoundation.MFSinkWriter.AddStream(CSCore.MediaFoundation.MFMediaType)"/>
            </summary>
            <param name="targetMediaType">The target mediatype which specifies the format of the samples that will be written to the file. It does not need to match the input format. To set the input format, call <see cref="M:CSCore.MediaFoundation.MFSinkWriter.SetInputMediaType(System.Int32,CSCore.MediaFoundation.MFMediaType,CSCore.MediaFoundation.MFAttributes)"/>.</param>
            <param name="streamIndex">Receives the zero-based index of the new stream.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.AddStream(CSCore.MediaFoundation.MFMediaType)">
            <summary>
            Adds a stream to the sink writer.
            </summary>
            <param name="targetMediaType">The target mediatype which specifies the format of the samples that will be written to the file. It does not need to match the input format. To set the input format, call <see cref="M:CSCore.MediaFoundation.MFSinkWriter.SetInputMediaType(System.Int32,CSCore.MediaFoundation.MFMediaType,CSCore.MediaFoundation.MFAttributes)"/>.</param>		
            <returns>The zero-based index of the new stream.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.SetInputMediaTypeNative(System.Int32,CSCore.MediaFoundation.MFMediaType,CSCore.MediaFoundation.MFAttributes)">
            <summary>
            Sets the input format for a stream on the sink writer.
            <seealso cref="M:CSCore.MediaFoundation.MFSinkWriter.SetInputMediaType(System.Int32,CSCore.MediaFoundation.MFMediaType,CSCore.MediaFoundation.MFAttributes)"/>
            </summary>
            <param name="streamIndex">The zero-based index of the stream. The index is returned by the <see cref="M:CSCore.MediaFoundation.MFSinkWriter.AddStream(CSCore.MediaFoundation.MFMediaType)"/> method.</param>
            <param name="inputMediaType">The input media type that specifies the input format.</param>
            <param name="encodingParameters">An attribute store. Use the attribute store to configure the encoder. This parameter can be NULL.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.SetInputMediaType(System.Int32,CSCore.MediaFoundation.MFMediaType,CSCore.MediaFoundation.MFAttributes)">
            <summary>
            Sets the input format for a stream on the sink writer.
            </summary>
            <param name="streamIndex">The zero-based index of the stream. The index is returned by the <see cref="M:CSCore.MediaFoundation.MFSinkWriter.AddStream(CSCore.MediaFoundation.MFMediaType)"/> method.</param>
            <param name="inputMediaType">The input media type that specifies the input format.</param>
            <param name="encodingParameters">An attribute store. Use the attribute store to configure the encoder. This parameter can be NULL.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.BeginWritingNative">
            <summary>
            Initializes the sink writer for writing.
            <seealso cref="M:CSCore.MediaFoundation.MFSinkWriter.BeginWritingNative"/>
            </summary>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.BeginWriting">
            <summary>
            Initializes the sink writer for writing.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.WriteSampleNative(System.Int32,CSCore.MediaFoundation.MFSample)">
            <summary>
            Delivers a sample to the sink writer.
            <seealso cref="M:CSCore.MediaFoundation.MFSinkWriter.WriteSample(System.Int32,CSCore.MediaFoundation.MFSample)"/>
            </summary>
            <param name="streamIndex">The zero-based index of the stream for this sample.</param>
            <param name="sample">The sample to write.</param>
            <returns>HRESULT</returns>
            <remarks>You must call <see cref="M:CSCore.MediaFoundation.MFSinkWriter.BeginWriting"/> before calling this method.</remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.WriteSample(System.Int32,CSCore.MediaFoundation.MFSample)">
            <summary>
            Delivers a sample to the sink writer.
            </summary>
            <param name="streamIndex">The zero-based index of the stream for this sample.</param>
            <param name="sample">The sample to write.</param>
            <remarks>You must call <see cref="M:CSCore.MediaFoundation.MFSinkWriter.BeginWriting"/> before calling this method.</remarks>        
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.SendStreamTickNative(System.Int32,System.Int64)">
            <summary>
            Indicates a gap in an input stream.
            <seealso cref="M:CSCore.MediaFoundation.MFSinkWriter.SendStreamTick(System.Int32,System.Int64)"/>
            </summary>
            <param name="streamIndex">The zero-based index of the stream.</param>
            <param name="timeStamp">The position in the stream where the gap in the data occurs. The value is given in 100-nanosecond units, relative to the start of the stream.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.SendStreamTick(System.Int32,System.Int64)">
            <summary>
            Indicates a gap in an input stream.
            </summary>
            <param name="streamIndex">The zero-based index of the stream.</param>		
            <param name="timeStamp">The position in the stream where the gap in the data occurs. The value is given in 100-nanosecond units, relative to the start of the stream.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.PlaceMarkerNative(System.Int32,System.IntPtr)">
            <summary>
            Places a marker in the specified stream.
            <seealso cref="M:CSCore.MediaFoundation.MFSinkWriter.PlaceMarker(System.Int32,System.IntPtr)"/>
            </summary>
            <param name="streamIndex">The zero-based index of the stream.</param>        
            <param name="context">Pointer to an application-defined value. The value of this parameter is returned to the caller in the pvContext parameter of the caller's IMFSinkWriterCallback::OnMarker callback method. The application is responsible for any memory allocation associated with this data. This parameter can be NULL.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.PlaceMarker(System.Int32,System.IntPtr)">
            <summary>
            Places a marker in the specified stream.
            </summary>
            <param name="streamIndex">The zero-based index of the stream.</param>
            <param name="context">Pointer to an application-defined value. The value of this parameter is returned to the caller in the pvContext parameter of the caller's IMFSinkWriterCallback::OnMarker callback method. The application is responsible for any memory allocation associated with this data. This parameter can be NULL.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.NotifyEndOfSegmentNative(System.Int32)">
            <summary>
            Notifies the media sink that a stream has reached the end of a segment.
            <seealso cref="M:CSCore.MediaFoundation.MFSinkWriter.NotifyEndOfSegment(System.Int32)"/>
            </summary>
            <param name="streamIndex">The zero-based index of a stream, or <see cref="F:CSCore.MediaFoundation.MFSinkWriter.MF_SINK_WRITER_ALL_STREAMS"/> to signal that all streams have reached the end of a segment.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.NotifyEndOfSegment(System.Int32)">
            <summary>
            Notifies the media sink that a stream has reached the end of a segment.
            </summary>
            <param name="streamIndex">The zero-based index of a stream, or <see cref="F:CSCore.MediaFoundation.MFSinkWriter.MF_SINK_WRITER_ALL_STREAMS"/> to signal that all streams have reached the end of a segment.</param>		
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.FlushNative(System.Int32)">
            <summary>
            Flushes one or more streams.
            <seealso cref="M:CSCore.MediaFoundation.MFSinkWriter.Flush(System.Int32)"/>
            </summary>
            <param name="streamIndex">The zero-based index of the stream to flush, or <see cref="F:CSCore.MediaFoundation.MFSinkWriter.MF_SINK_WRITER_ALL_STREAMS"/> to flush all of the streams.</param>		
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.Flush(System.Int32)">
            <summary>
            Flushes one or more streams.
            </summary>
            <param name="streamIndex">The zero-based index of the stream to flush, or <see cref="F:CSCore.MediaFoundation.MFSinkWriter.MF_SINK_WRITER_ALL_STREAMS"/> to flush all of the streams.</param>				
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.FinalizeWritingNative">
            <summary>
            Completes all writing operations on the sink writer.
            <seealso cref="M:CSCore.MediaFoundation.MFSinkWriter.FinalizeWriting"/>
            </summary>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.FinalizeWriting">
            <summary>
            Completes all writing operations on the sink writer.
            </summary>
            <remarks>Renamed from 'Finalize' to 'FinalizeWriting' to suppress "CS0465 warning".</remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.GetServiceForStreamNative(System.Int32,System.Guid,System.Guid,System.IntPtr@)">
            <summary>
            Queries the underlying media sink or encoder for an interface.
            <seealso cref="M:CSCore.MediaFoundation.MFSinkWriter.GetServiceForStream(System.Int32,System.Guid,System.Guid)"/>
            </summary>
            <param name="streamIndex">The zero-based index of a stream to query, or <see cref="F:CSCore.MediaFoundation.MFSinkWriter.MF_SINK_WRITER_MEDIASINK"/> to query the media sink itself.</param>		
            <param name="guidService">A service identifier GUID, or <see cref="F:System.Guid.Empty"/>. If the value is <see cref="F:System.Guid.Empty"/>, the method calls QueryInterface to get the requested interface. Otherwise, the method calls IMFGetService::GetService. 
            For a list of service identifiers, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/ms695350(v=vs.85).aspx"/>.</param>        
            <param name="riid">The interface identifier (IID) of the interface being requested.</param>
            <param name="pObject">Receives a pointer to the requested interface. The caller must release the interface.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.GetServiceForStream(System.Int32,System.Guid,System.Guid)">
            <summary>
            Queries the underlying media sink or encoder for an interface.
            </summary>
            <param name="streamIndex">The zero-based index of a stream to query, or <see cref="F:CSCore.MediaFoundation.MFSinkWriter.MF_SINK_WRITER_MEDIASINK"/> to query the media sink itself.</param>		
            <param name="guidService">A service identifier GUID, or <see cref="F:System.Guid.Empty"/>. If the value is <see cref="F:System.Guid.Empty"/>, the method calls QueryInterface to get the requested interface. Otherwise, the method calls IMFGetService::GetService. 
            For a list of service identifiers, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/ms695350(v=vs.85).aspx"/>.</param>        
            <param name="riid">The interface identifier (IID) of the interface being requested.</param>
            <returns>A pointer to the requested interface. The caller must release the interface.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.GetStatisticsNative(System.Int32,CSCore.MediaFoundation.MFSinkWriterStatistics@)">
            <summary>
            Gets statistics about the performance of the sink writer.
            </summary>
            <param name="streamIndex">The zero-based index of a stream to query, or <see cref="F:CSCore.MediaFoundation.MFSinkWriter.MF_SINK_WRITER_ALL_STREAMS"/> to query the media sink itself.</param>
            <param name="statistics">Receives statistics about the performance of the sink writer.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSinkWriter.GetStatistics(System.Int32)">
            <summary>
            Gets statistics about the performance of the sink writer.
            </summary>
            <param name="streamIndex">The zero-based index of a stream to query, or <see cref="F:CSCore.MediaFoundation.MFSinkWriter.MF_SINK_WRITER_ALL_STREAMS"/> to query the media sink itself.</param>
            <returns>Statistics about the performance of the sink writer.</returns>		
        </member>
        <member name="T:CSCore.MediaFoundation.MFSinkWriterStatistics">
            <summary>
            Contains statistics about the performance of the sink writer.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFSinkWriterStatistics.Cb">
            <summary>	
            The size of the structure, in bytes.
            </summary>	
        </member>
        <member name="F:CSCore.MediaFoundation.MFSinkWriterStatistics.LastTimestampReceived">
            <summary>	
            The time stamp of the most recent sample given to the sink writer. The sink writer updates this value each time the application calls <see cref="M:CSCore.MediaFoundation.MFSinkWriter.WriteSample(System.Int32,CSCore.MediaFoundation.MFSample)"/>.
            </summary>	
        </member>
        <member name="F:CSCore.MediaFoundation.MFSinkWriterStatistics.LastTimestampEncoded">
            <summary>	
            The time stamp of the most recent sample to be encoded. The sink writer updates this value whenever it calls IMFTransform::ProcessOutput on the encoder.
            </summary>	
        </member>
        <member name="F:CSCore.MediaFoundation.MFSinkWriterStatistics.LastTimestampProcessed">
            <summary>	
            The time stamp of the most recent sample given to the media sink. The sink writer updates this value whenever it calls IMFStreamSink::ProcessSample on the media sink.
            </summary>	
        </member>
        <member name="F:CSCore.MediaFoundation.MFSinkWriterStatistics.LastStreamTickReceived">
            <summary>	
            The time stamp of the most recent stream tick. The sink writer updates this value whenever the application calls <see cref="M:CSCore.MediaFoundation.MFSinkWriter.SendStreamTick(System.Int32,System.Int64)"/>.
            </summary>		
        </member>
        <member name="F:CSCore.MediaFoundation.MFSinkWriterStatistics.LastSinkSampleRequest">
            <summary>	
            The system time of the most recent sample request from the media sink. The sink writer updates this value whenever it receives an MEStreamSinkRequestSample event from the media sink. The value is the current system time.
            </summary>	
        </member>
        <member name="F:CSCore.MediaFoundation.MFSinkWriterStatistics.NumSamplesReceived">
            <summary>	
            The number of samples received.
            </summary>	
        </member>
        <member name="F:CSCore.MediaFoundation.MFSinkWriterStatistics.NumSamplesEncoded">
            <summary>	
            The number of samples encoded.
            </summary>	
        </member>
        <member name="F:CSCore.MediaFoundation.MFSinkWriterStatistics.NumSamplesProcessed">
            <summary>	
            The number of samples given to the media sink.
            </summary>	
        </member>
        <member name="F:CSCore.MediaFoundation.MFSinkWriterStatistics.NumStreamTicksReceived">
            <summary>	
            The number of stream ticks received.
            </summary>	
        </member>
        <member name="F:CSCore.MediaFoundation.MFSinkWriterStatistics.ByteCountQueued">
            <summary>	
            The amount of data, in bytes, currently waiting to be processed. 
            </summary>	
        </member>
        <member name="F:CSCore.MediaFoundation.MFSinkWriterStatistics.ByteCountProcessed">
            <summary>	
            The total amount of data, in bytes, that has been sent to the media sink.
            </summary>	
        </member>
        <member name="F:CSCore.MediaFoundation.MFSinkWriterStatistics.NumOutstandingSinkSampleRequests">
            <summary>	
            The number of pending sample requests.
            </summary>	
        </member>
        <member name="F:CSCore.MediaFoundation.MFSinkWriterStatistics.AverageSampleRateReceived">
            <summary>	
            The average rate, in media samples per 100-nanoseconds, at which the application sent samples to the sink writer.
            </summary>	
        </member>
        <member name="F:CSCore.MediaFoundation.MFSinkWriterStatistics.AverageSampleRateEncoded">
            <summary>	
            The average rate, in media samples per 100-nanoseconds, at which the sink writer sent samples to the encoder.
            </summary>		
        </member>
        <member name="F:CSCore.MediaFoundation.MFSinkWriterStatistics.AverageSampleRateProcessed">
            <summary>	
            The average rate, in media samples per 100-nanoseconds, at which the sink writer sent samples to the media sink.
            </summary>	
        </member>
        <member name="T:CSCore.MediaFoundation.MFSourceReaderFlags">
            <summary>
                Defines flags that indicate the status of the <see cref="M:CSCore.MediaFoundation.MFSourceReader.ReadSample(System.Int32,System.Int32,System.Int32@,CSCore.MediaFoundation.MFSourceReaderFlags@,System.Int64@)" /> method.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFSourceReaderFlags.None">
            <summary>
                None
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFSourceReaderFlags.Error">
            <summary>
                An error occurred. If you receive this flag, do not make any further calls to <see cref="T:CSCore.MediaFoundation.MFSourceReader" />
                methods.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFSourceReaderFlags.EndOfStream">
            <summary>
                The source reader reached the end of the stream.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFSourceReaderFlags.NewStream">
            <summary>
                One or more new streams were created.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFSourceReaderFlags.NativeMediaTypeChanged">
            <summary>
                The native format has changed for one or more streams. The native format is the format delivered by the media
                source before any decoders are inserted.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFSourceReaderFlags.CurrentMediaTypeChanged">
            <summary>
                The current media has type changed for one or more streams. To get the current media type, call the
                <see cref="M:CSCore.MediaFoundation.MFSourceReader.GetCurrentMediaType(System.Int32)" /> method.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFSourceReaderFlags.StreamTick">
            <summary>
                There is a gap in the stream. This flag corresponds to an MEStreamTick event from the media source.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFSourceReaderFlags.AllEffectsRemoved">
            <summary>
                All transforms inserted by the application have been removed for a particular stream. This could be due to a
                dynamic format change from a source or decoder that prevents custom transforms from being used because they cannot
                handle the new media type.
            </summary>
        </member>
        <member name="T:CSCore.MediaFoundation.MFTCategories">
            <summary>
            Defines categories for Media Foundation transforms (MFTs). These categories are used to register and enumerate MFTs.
            </summary>
            <remarks>For more information, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/dd388660(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="F:CSCore.MediaFoundation.MFTCategories.AudioDecoder">
            <summary>
            Audio decoders.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFTCategories.AudioEncoder">
            <summary>
            Audio encoders.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFTCategories.AudioEffect">
            <summary>
            Audio effects.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFTCategories.VideoEncoder">
            <summary>
            Video encoders.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFTCategories.VideoDecoder">
            <summary>
            Video decoders.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFTCategories.VideoEffect">
            <summary>
            Video effects.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFTCategories.VideoProcessor">
            <summary>
            Video processors.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFTCategories.Demultiplexer">
            <summary>
            Demultiplexers.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFTCategories.Multiplexer">
            <summary>
            Multiplexers.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFTCategories.Other">
            <summary>
            Miscellaneous MFTs.
            </summary>
        </member>
        <member name="T:CSCore.MediaFoundation.MFTEnumFlags">
            <summary>
            Defines flags for registering and enumeration Media Foundation transforms (MFTs).
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFTEnumFlags.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFTEnumFlags.SyncDataProcessing">
            <summary>
            The MFT performs synchronous data processing in software. 
            This flag does not apply to hardware transforms.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFTEnumFlags.AsyncDataProcessing">
            <summary>
            The MFT performs asynchronous data processing in software. See <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd317909(v=vs.85).aspx"/>.
            This flag does not apply to hardware transforms.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFTEnumFlags.Hardware">
            <summary>
            The MFT performs hardware-based data processing, using either the AVStream driver or a GPU-based proxy MFT. MFTs in this category always process data asynchronously.
            See <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd940330(v=vs.85).aspx"/>.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFTEnumFlags.FieldOfUse">
            <summary>
            Must be unlocked by the app before use. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd389302(v=vs.85).aspx"/>.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFTEnumFlags.LocalMFT">
            <summary>
            For enumeration, include MFTs that were registered in the caller's process.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFTEnumFlags.TranscodeOnly">
            <summary>
            The MFT is optimized for transcoding rather than playback.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFTEnumFlags.SortAndFilter">
            <summary>
            For enumeration, sort and filter the results. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd389302(v=vs.85).aspx"/>.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFTEnumFlags.All">
            <summary>
            Bitwise OR of all the flags, excluding <see cref="F:CSCore.MediaFoundation.MFTEnumFlags.SortAndFilter"/>.
            </summary>
        </member>
        <member name="T:CSCore.MediaFoundation.MFTRegisterTypeInfo">
            <summary>
            Contains media type information for registering a Media Foundation transform (MFT).
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFTRegisterTypeInfo.GuidMajorType">
            <summary>
            The major media type.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFTRegisterTypeInfo.GuidSubType">
            <summary>
            The media subtype.
            </summary>
        </member>
        <member name="T:CSCore.MediaFoundation.SourceReaderControlFlags">
            <summary>
            Defines flags for the <see cref="M:CSCore.MediaFoundation.MFSourceReader.ReadSample(System.Int32,System.Int32,System.Int32@,CSCore.MediaFoundation.MFSourceReaderFlags@,System.Int64@)"/> method.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.SourceReaderControlFlags.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.SourceReaderControlFlags.Drain">
            <summary>
            Retrieve any pending samples, but do not request any more samples from the media source. To get all of the pending samples, call <see cref="M:CSCore.MediaFoundation.MFSourceReader.ReadSample(System.Int32,System.Int32,System.Int32@,CSCore.MediaFoundation.MFSourceReaderFlags@,System.Int64@)"/> with this flag until the method returns a NULL media sample pointer.
            </summary>
        </member>
        <member name="T:CSCore.MediaFoundation.TranscodeContainerTypes">
            <summary>
            Defines the GUIDs for different types of container formats.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.TranscodeContainerTypes.MFTranscodeContainerType_MPEG2">
            <summary>
            MPEG2
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.TranscodeContainerTypes.MFTranscodeContainerType_ADTS">
            <summary>
            ADTS
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.TranscodeContainerTypes.MFTranscodeContainerType_AC3">
            <summary>
            AC3
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.TranscodeContainerTypes.MFTranscodeContainerType_3GP">
            <summary>
            3GP
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.TranscodeContainerTypes.MFTranscodeContainerType_MP3">
            <summary>
            MP3
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.TranscodeContainerTypes.MFTranscodeContainerType_MPEG4">
            <summary>
            MPEG4
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.TranscodeContainerTypes.MFTranscodeContainerType_ASF">
            <summary>
            ASF
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.TranscodeContainerTypes.MFTranscodeContainerType_FMPEG4">
            <summary>
            FMPEG4
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.TranscodeContainerTypes.MFTranscodeContainerType_AMR">
            <summary>
            AMR
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.TranscodeContainerTypes.MFTranscodeContainerType_WAVE">
            <summary>
            WAVE
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.TranscodeContainerTypes.MFTranscodeContainerType_AVI">
            <summary>
            AVI
            </summary>
        </member>
        <member name="T:CSCore.MediaFoundation.MediaFoundationException">
            <summary>
                Mediafoundation COM Exception
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationException.#ctor(System.Int32,System.String,System.String)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.MediaFoundation.MediaFoundationException" /> class.
            </summary>
            <param name="result">Errorcode.</param>
            <param name="interfaceName">
                Name of the interface which contains the COM-function which returned the specified
                <paramref name="result" />.
            </param>
            <param name="member">Name of the COM-function which returned the specified <paramref name="result" />.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.MediaFoundation.MediaFoundationException" /> class from serialization data.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> object that holds the serialized object data.</param>
            <param name="context">
                The StreamingContext object that supplies the contextual information about the source or
                destination.
            </param>
        </member>
        <member name="M:CSCore.MediaFoundation.MediaFoundationException.Try(System.Int32,System.String,System.String)">
            <summary>
                Throws an <see cref="T:CSCore.MediaFoundation.MediaFoundationException" /> if the <paramref name="result" /> is not
                <see cref="F:CSCore.Win32.HResult.S_OK" />.
            </summary>
            <param name="result">Errorcode.</param>
            <param name="interfaceName">
                Name of the interface which contains the COM-function which returned the specified
                <paramref name="result" />.
            </param>
            <param name="member">Name of the COM-function which returned the specified <paramref name="result" />.</param>
        </member>
        <member name="T:CSCore.MediaFoundation.MediaTypeEqualFlags">
            <summary>
                Indicates the degree of similarity between the two media types.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MediaTypeEqualFlags.None">
            <summary>
                None
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MediaTypeEqualFlags.MajorTypes">
            <summary>
                The major types are the same.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MediaTypeEqualFlags.FormatTypes">
            <summary>
                The subtypes are the same, or neither media type has a subtype.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MediaTypeEqualFlags.Data">
            <summary>
                The attributes in one of the media types are a subset of the attributes in the other, and the values of these
                attributes match, excluding the value of the MF_MT_USER_DATA, MF_MT_FRAME_RATE_RANGE_MIN, and
                MF_MT_FRAME_RATE_RANGE_MAX attributes.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MediaTypeEqualFlags.UserData">
            <summary>
                The user data is identical, or neither media type contains user data. User data is specified by the MF_MT_USER_DATA
                attribute.
            </summary>
        </member>
        <member name="T:CSCore.MediaFoundation.MFAttribute`1">
            <summary>
            Represents a MediaFoundation-attribute. 
            </summary>
            <typeparam name="TValue">The type of the value of the <see cref="T:CSCore.MediaFoundation.MFAttribute`1"/></typeparam>
        </member>
        <member name="P:CSCore.MediaFoundation.MFAttribute`1.Key">
            <summary>
            Gets the key of the attribute.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MFAttribute`1.Value">
            <summary>
            Gets the value of the attribute.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttribute`1.#ctor(System.Guid,`0)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.MediaFoundation.MFAttribute`1"/> class.
            </summary>
            <param name="key">The key.</param>
            <param name="value">The value.</param>
        </member>
        <member name="T:CSCore.MediaFoundation.MFAttributeMatchType">
            <summary>
                Specifies how to compare the attributes on two objects.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFAttributeMatchType.OurItems">
            <summary>
                Check whether all the attributes in pThis exist in pTheirs and have the same data, where pThis is the object whose
                <see cref="M:CSCore.MediaFoundation.MFAttributes.Compare(CSCore.MediaFoundation.MFAttributes,CSCore.MediaFoundation.MFAttributeMatchType)" /> method is being called and pTheirs is the object given in the pTheirs
                parameter.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFAttributeMatchType.TheirItems">
            <summary>
                Check whether all the attributes in pTheirs exist in pThis and have the same data, where pThis is the object whose
                <see cref="M:CSCore.MediaFoundation.MFAttributes.Compare(CSCore.MediaFoundation.MFAttributes,CSCore.MediaFoundation.MFAttributeMatchType)" /> method is being called and pTheirs is the object given in the pTheirs
                parameter.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFAttributeMatchType.AllItems">
            <summary>
                Check whether both objects have identical attributes with the same data.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFAttributeMatchType.Intersection">
            <summary>
                Check whether the attributes that exist in both objects have the same data.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFAttributeMatchType.Smaller">
            <summary>
                Find the object with the fewest number of attributes, and check if those attributes exist in the other object and
                have the same data.
            </summary>
        </member>
        <member name="T:CSCore.MediaFoundation.MFAttributes">
            <summary>
                Provides a generic way to store key/value pairs on an object.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.#ctor(System.IntPtr)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.MediaFoundation.MFAttributes" /> class.
            </summary>
            <param name="ptr">The native pointer of the COM object.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.#ctor">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.MediaFoundation.MFAttributes" /> class.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.#ctor(System.Int32)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.MediaFoundation.MFAttributes" /> class with a initial size.
            </summary>
            <param name="initialSize">The initial size in bytes.</param>
        </member>
        <member name="P:CSCore.MediaFoundation.MFAttributes.Item(System.Int32)">
            <summary>
                Gets or sets an item specified by its index.
            </summary>
            <param name="index">The index of the item.</param>
        </member>
        <member name="P:CSCore.MediaFoundation.MFAttributes.Item(System.Guid)">
            <summary>
                Gets or sets an item specified by its key.
            </summary>
            <param name="key">The key of the item.</param>
        </member>
        <member name="P:CSCore.MediaFoundation.MFAttributes.Count">
            <summary>
                Gets the number of attributes that are set on this object.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetItemNative(System.Guid,System.IntPtr)">
            <summary>
                Retrieves the value associated with a key.
            </summary>
            <param name="key">A <see cref="T:System.Guid"/> that identifies which value to retrieve.</param>
            <param name="valueRef">A pointer to a <see cref="T:CSCore.Win32.PropertyVariant" /> that receives the value.</param>
            <returns>HRESULT</returns>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/bb970450(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetItem(System.Guid)">
            <summary>
                Retrieves the value associated with a key.
            </summary>
            <param name="key">A <see cref="T:System.Guid"/> that identifies which value to retrieve.</param>
            <returns>A <see cref="T:CSCore.Win32.PropertyVariant" /> that receives the value.</returns>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/bb970450(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetItemTypeNative(System.Guid,CSCore.MediaFoundation.MFAttributeType@)">
            <summary>
                Retrieves the data type of the value associated with a key.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies which value to query.</param>
            <param name="attributeType">The type of the item, associated with the specified <paramref name="key" />.</param>
            <returns>HRESULT</returns>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/bb970369(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetItemType(System.Guid)">
            <summary>
                Retrieves the data type of the value associated with a key.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies which value to query.</param>
            <returns>The type of the item, associated with the specified <paramref name="key" />.</returns>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/bb970369(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.CompareItemNative(System.Guid,CSCore.Win32.PropertyVariant,CSCore.Win32.NativeBool@)">
            <summary>
                Queries whether a stored attribute value equals a specified <see cref="T:CSCore.Win32.PropertyVariant" />.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies which value to query.</param>
            <param name="value"><see cref="T:CSCore.Win32.PropertyVariant" /> that contains the value to compare.</param>
            <param name="result">
                Receives a boolean value indicating whether the attribute matches the value given in
                <paramref name="value" />.
            </param>
            <returns>HRESULT</returns>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/de-de/library/windows/desktop/bb970566(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.CompareItem(System.Guid,CSCore.Win32.PropertyVariant)">
            <summary>
                Queries whether a stored attribute value equals a specified <see cref="T:CSCore.Win32.PropertyVariant" />.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies which value to query.</param>
            <param name="value"><see cref="T:CSCore.Win32.PropertyVariant" /> that contains the value to compare.</param>
            <returns>A boolean value indicating whether the attribute matches the value given in <paramref name="value" />.</returns>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/de-de/library/windows/desktop/bb970566(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.CompareNative(CSCore.MediaFoundation.MFAttributes,CSCore.MediaFoundation.MFAttributeMatchType,CSCore.Win32.NativeBool@)">
            <summary>
                Compares the attributes on this object with the attributes on another object.
            </summary>
            <param name="theirs">The <see cref="T:CSCore.MediaFoundation.MFAttributes" /> interface of the object to compare with this object.</param>
            <param name="matchType">A value, specifying the type of comparison to make.</param>
            <param name="result">
                Receives a Boolean value. The value is <see cref="F:CSCore.Win32.NativeBool.True" /> if the two sets of
                attributes match in the way specified by the <paramref name="matchType" /> parameter. Otherwise, the value is
                <see cref="F:CSCore.Win32.NativeBool.False" />.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.Compare(CSCore.MediaFoundation.MFAttributes,CSCore.MediaFoundation.MFAttributeMatchType)">
            <summary>
                Compares the attributes on this object with the attributes on another object.
            </summary>
            <param name="theirs">The <see cref="T:CSCore.MediaFoundation.MFAttributes" /> interface of the object to compare with this object.</param>
            <param name="matchType">A value, specifying the type of comparison to make.</param>
            <returns>
                Returns <c>true</c> if the two sets of attributes match in the way specified by the
                <paramref name="matchType" /> parameter; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetUINT32Native(System.Guid,System.Int32@)">
            <summary>
                Retrieves a UINT32 value associated with a key.
            </summary>
            <param name="key">
                <see cref="T:System.Guid"/> that identifies which value to retrieve. The attribute type must be
                <see cref="F:CSCore.MediaFoundation.MFAttributeType.UInt32" />.
            </param>
            <param name="result">
                Receives a UINT32 value. If the key is found and the data type is <see cref="F:CSCore.MediaFoundation.MFAttributeType.UInt32" />, the method
                copies the
                value into this parameter.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetUINT32(System.Guid)">
            <summary>
                Retrieves a UINT32 value associated with a key.
            </summary>
            <param name="key">
                <see cref="T:System.Guid"/> that identifies which value to retrieve. The attribute type must be
                <see cref="F:CSCore.MediaFoundation.MFAttributeType.UInt32" />.
            </param>
            <returns>
                If the key is found and the data type is <see cref="F:CSCore.MediaFoundation.MFAttributeType.UInt32" />, the method returns the
                associated value.
            </returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetUINT64Native(System.Guid,System.Int64@)">
            <summary>
                Retrieves a UINT64 value associated with a key.
            </summary>
            <param name="key">
                <see cref="T:System.Guid"/> that identifies which value to retrieve. The attribute type must be
                <see cref="F:CSCore.MediaFoundation.MFAttributeType.UInt64" />.
            </param>
            <param name="result">
                Receives a UINT64 value. If the key is found and the data type is <see cref="F:CSCore.MediaFoundation.MFAttributeType.UInt64" />, the method
                copies the
                value into this parameter.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetUINT64(System.Guid)">
            <summary>
                Retrieves a UINT64 value associated with a key.
            </summary>
            <param name="key">
                <see cref="T:System.Guid"/> that identifies which value to retrieve. The attribute type must be
                <see cref="F:CSCore.MediaFoundation.MFAttributeType.UInt64" />.
            </param>
            <returns>
                If the key is found and the data type is <see cref="F:CSCore.MediaFoundation.MFAttributeType.UInt64" />, the method returns the
                associated value.
            </returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetDoubleNative(System.Guid,System.Double@)">
            <summary>
                Retrieves a Double value associated with a key.
            </summary>
            <param name="key">
                <see cref="T:System.Guid"/> that identifies which value to retrieve. The attribute type must be
                <see cref="F:CSCore.MediaFoundation.MFAttributeType.Double" />.
            </param>
            <param name="result">
                Receives a Double value. If the key is found and the data type is <see cref="F:CSCore.MediaFoundation.MFAttributeType.Double" />, the method
                copies the
                value into this parameter.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetDouble(System.Guid)">
            <summary>
                Retrieves a Double value associated with a key.
            </summary>
            <param name="key">
                <see cref="T:System.Guid"/> that identifies which value to retrieve. The attribute type must be
                <see cref="F:CSCore.MediaFoundation.MFAttributeType.Double" />.
            </param>
            <returns>
                If the key is found and the data type is <see cref="F:CSCore.MediaFoundation.MFAttributeType.Double" />, the method returns the
                associated value.
            </returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetGuidNative(System.Guid,System.Guid@)">
            <summary>
                Retrieves a Guid value associated with a key.
            </summary>
            <param name="key">
                <see cref="T:System.Guid"/> that identifies which value to retrieve. The attribute type must be
                <see cref="F:CSCore.MediaFoundation.MFAttributeType.Guid" />.
            </param>
            <param name="result">
                Receives a Guid value. If the key is found and the data type is <see cref="F:CSCore.MediaFoundation.MFAttributeType.Guid" />, the method
                copies the
                value into this parameter.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetGuid(System.Guid)">
            <summary>
                Retrieves a Guid value associated with a key.
            </summary>
            <param name="key">
                <see cref="T:System.Guid"/> that identifies which value to retrieve. The attribute type must be
                <see cref="F:CSCore.MediaFoundation.MFAttributeType.Guid" />.
            </param>
            <returns>
                If the key is found and the data type is <see cref="F:CSCore.MediaFoundation.MFAttributeType.Guid" />, the method returns the
                associated value.
            </returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetStringLengthNative(System.Guid,System.Int32@)">
            <summary>
                Retrieves the length of a string value associated with a key.
            </summary>
            <param name="key">
                <see cref="T:System.Guid"/> that identifies which value to retrieve. The attribute type must be
                <see cref="F:CSCore.MediaFoundation.MFAttributeType.String" />.
            </param>
            <param name="result">
                If the key is found and the data type is <see cref="F:CSCore.MediaFoundation.MFAttributeType.String" />, 
                this parameter receives the number of characters in the string, not including the terminating NULL character.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetStringLength(System.Guid)">
            <summary>
                Retrieves the length of a string value associated with a key.
            </summary>
            <param name="key">
                <see cref="T:System.Guid"/> that identifies which value to retrieve. The attribute type must be
                <see cref="F:CSCore.MediaFoundation.MFAttributeType.String" />.
            </param>
            <returns>If the key is found and the data type is <see cref="F:CSCore.MediaFoundation.MFAttributeType.String" />, 
                this method returns the number of characters in the string, not including the terminating NULL character.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetStringNative(System.Guid,System.IntPtr,System.Int32,System.IntPtr)">
            <summary>
                Retrieves a wide-character string associated with a key.
            </summary>
            <param name="key">
                <see cref="T:System.Guid"/> that identifies which value to retrieve. The attribute type must be
                <see cref="F:CSCore.MediaFoundation.MFAttributeType.String" />.
            </param>
            <param name="wszValue">
            Pointer to a wide-character array allocated by the caller. 
            The array must be large enough to hold the string, including the terminating NULL character. 
            If the key is found and the value is a string type, the method copies the string into this buffer.
            To find the length of the string, call <see cref="M:CSCore.MediaFoundation.MFAttributes.GetStringLength(System.Guid)"/>.
            </param>
            <param name="cchBufSize">The size of the pwszValue array, in characters. This value includes the terminating NULL character.</param>
            <param name="cchLength">Receives the number of characters in the string, excluding the terminating NULL character. This parameter can be NULL.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetString(System.Guid)">
            <summary>
                Retrieves a wide-character string associated with a key.
            </summary>
            <param name="key">
                <see cref="T:System.Guid"/> that identifies which value to retrieve. The attribute type must be
                <see cref="F:CSCore.MediaFoundation.MFAttributeType.String" />.
            </param>
            <returns>
                If the key is found and the data type is <see cref="F:CSCore.MediaFoundation.MFAttributeType.String" />, the method returns the
                associated value.
            </returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetAllocatedStringNative(System.Guid,System.IntPtr,System.Int32@)">
            <summary>
                Retrieves a wide-character string associated with a key. This method allocates the
                memory for the string.
            </summary>
            <param name="key">
                <see cref="T:System.Guid"/> that identifies which value to retrieve. The attribute type must be
                <see cref="F:CSCore.MediaFoundation.MFAttributeType.String" />.
            </param>
            <param name="wszValue">
            If the key is found and the value is a string type, this parameter receives a copy of the string. The caller must free the memory for the string by calling <see cref="M:System.Runtime.InteropServices.Marshal.FreeCoTaskMem(System.IntPtr)"/>.
            </param>
            <param name="cchLength">
            Receives the number of characters in the string, excluding the terminating NULL character.</param>
            <returns>HRESULT</returns>
            <remarks>
            Don't use the <see cref="M:CSCore.MediaFoundation.MFAttributes.GetAllocatedStringNative(System.Guid,System.IntPtr,System.Int32@)"/> method. Use the <see cref="M:CSCore.MediaFoundation.MFAttributes.GetString(System.Guid)"/> method instead.
            </remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetBlobSizeNative(System.Guid,System.Int32@)">
            <summary>
                Retrieves the length of a byte array associated with a key.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies which value to retrieve. The attribute type must be <see cref="F:CSCore.MediaFoundation.MFAttributeType.Blob"/>.</param>
            <param name="size">If the key is found and the value is a byte array, this parameter receives the size of the array, in bytes.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetBlobSize(System.Guid)">
            <summary>
                Retrieves the length of a byte array associated with a key.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies which value to retrieve. The attribute type must be <see cref="F:CSCore.MediaFoundation.MFAttributeType.Blob"/>.</param>
            <returns>If the key is found and the value is a byte array, this method returns the size of the array, in bytes.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetBlobNative(System.Guid,System.IntPtr,System.Int32,System.IntPtr)">
            <summary>
                Retrieves a byte array associated with a key.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies which value to retrieve. The attribute type must be <see cref="F:CSCore.MediaFoundation.MFAttributeType.Blob"/>.</param>
            <param name="bufferPtr">Pointer to a buffer allocated by the caller. If the key is found and the value is a byte array, the method copies the array into this buffer. To find the required size of the buffer, call <see cref="M:CSCore.MediaFoundation.MFAttributes.GetBlobSize(System.Guid)"/>.</param>
            <param name="cbBufSize">The size of the <paramref name="bufferPtr"/> buffer, in bytes.</param>
            <param name="cbBlobSize">Receives the size of the byte array. This parameter can be <see cref="F:System.IntPtr.Zero"/>.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetBlob(System.Guid)">
            <summary>
                Retrieves a byte array associated with a key.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies which value to retrieve. The attribute type must be <see cref="F:CSCore.MediaFoundation.MFAttributeType.Blob"/>.</param>
            <returns>The byte array associated with the <paramref name="key"/>.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetBlob(System.Guid,System.Type)">
            <summary>
            Retrieves an object associated with a key.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies which value to retrieve. The attribute type must be <see cref="F:CSCore.MediaFoundation.MFAttributeType.Blob"/>.</param>
            <param name="type">The type of the object (type of the returned object -> see return value).</param>
            <returns>The object associated with the <paramref name="key"/>.</returns>
            <exception cref="T:System.ArgumentNullException">Type is null.</exception>
            <remarks>Internally this method retrieves a byte-array with gets converted to a instance of the specified <paramref name="type"/>.</remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetAllocatedBlobNative(System.Guid,System.Byte[]@,System.Int32@)">
            <summary>
                Retrieves a byte array associated with a key. 
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies which value to retrieve. The attribute type must be <see cref="F:CSCore.MediaFoundation.MFAttributeType.Blob"/>.</param>
            <param name="buffer">If the key is found and the value is a byte array, this parameter receives a copy of the array.</param>        
            <param name="pcbSize">Receives the size of the array, in bytes.</param>
            <returns>HRESULT</returns>
            <remarks>
            Obsolete, use the <see cref="M:CSCore.MediaFoundation.MFAttributes.GetBlob(System.Guid)"/> method instead.
            </remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetUnknownNative(System.Guid,System.Guid,System.IntPtr@)">
            <summary>
                Retrieves an interface pointer associated with a key.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies which value to retrieve. The attribute type must be <see cref="F:CSCore.MediaFoundation.MFAttributeType.IUnknown"/>.</param>
            <param name="riid">Interface identifier (IID) of the interface to retrieve.</param>
            <param name="unknown">Receives a pointer to the requested interface. The caller must release the interface.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.SetItemNative(System.Guid,CSCore.Win32.PropertyVariant)">
            <summary>
                Associates an attribute value with a key.
            </summary>
            <param name="key">A <see cref="T:System.Guid"/> that identifies the value to set. If this key already exists, the method overwrites the old value.</param>
            <param name="value">A <see cref="T:CSCore.Win32.PropertyVariant"/> that contains the attribute value. The method copies the value. The <see cref="T:CSCore.Win32.PropertyVariant"/> type must be one of the types listed in the <see cref="T:CSCore.MediaFoundation.MFAttributeType"/> enumeration.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.SetItem(System.Guid,CSCore.Win32.PropertyVariant)">
            <summary>
                Associates an attribute value with a key.
            </summary>
            <param name="key">A <see cref="T:System.Guid"/> that identifies the value to set. If this key already exists, the method overwrites the old value.</param>
            <param name="value">A <see cref="T:CSCore.Win32.PropertyVariant"/> that contains the attribute value. The method copies the value. The <see cref="T:CSCore.Win32.PropertyVariant"/> type must be one of the types listed in the <see cref="T:CSCore.MediaFoundation.MFAttributeType"/> enumeration.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.DeleteItemNative(System.Guid)">
            <summary>
                Removes a key/value pair from the object's attribute list.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies the value to delete.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.DeleteItem(System.Guid)">
            <summary>
                Removes a key/value pair from the object's attribute list.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies the value to delete.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.DeleteAllItemsNative">
            <summary>
                Removes all key/value pairs from the object's attribute list.
            </summary>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.DeleteAllItems">
            <summary>
                Removes all key/value pairs from the object's attribute list.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.SetUINT32Native(System.Guid,System.Int32)">
            <summary>
                Associates a UINT32 value with a key.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies the value to set. If this key already exists, the method overwrites the old value.</param>
            <param name="value">New value for this key.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.SetUINT32(System.Guid,System.Int32)">
            <summary>
                Associates a UINT32 value with a key.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies the value to set. If this key already exists, the method overwrites the old value.</param>
            <param name="value">New value for this key.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.SetUINT64Native(System.Guid,System.Int64)">
            <summary>
                Associates a UINT64 value with a key.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies the value to set. If this key already exists, the method overwrites the old value.</param>
            <param name="value">New value for this key.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.SetUINT64(System.Guid,System.Int64)">
            <summary>
                Associates a UINT64 value with a key.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies the value to set. If this key already exists, the method overwrites the old value.</param>
            <param name="value">New value for this key.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.SetDoubleNative(System.Guid,System.Double)">
            <summary>
                Associates a Double value with a key.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies the value to set. If this key already exists, the method overwrites the old value.</param>
            <param name="value">New value for this key.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.SetDouble(System.Guid,System.Double)">
            <summary>
                Associates a Double value with a key.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies the value to set. If this key already exists, the method overwrites the old value.</param>
            <param name="value">New value for this key.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.SetGuidNative(System.Guid,System.Guid)">
            <summary>
                Associates a <see cref="T:System.Guid"/> value with a key.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies the value to set. If this key already exists, the method overwrites the old value.</param>
            <param name="value">New value for this key.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.SetGuid(System.Guid,System.Guid)">
            <summary>
                Associates a <see cref="T:System.Guid"/> value with a key.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies the value to set. If this key already exists, the method overwrites the old value.</param>
            <param name="value">New value for this key.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.SetStringNative(System.Guid,System.String)">
            <summary>
                Associates a wide-character string with a key.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies the value to set. If this key already exists, the method overwrites the old value.</param>
            <param name="value">New value for this key.</param>
            <returns>HRESULT</returns>
            <remarks>Internally this method stores a copy of the string specified by the <paramref name="value"/> parameter.</remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.SetString(System.Guid,System.String)">
            <summary>
                Associates a wide-character string with a key.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies the value to set. If this key already exists, the method overwrites the old value.</param>
            <param name="value">New value for this key.</param>
            <remarks>Internally this method stores a copy of the string specified by the <paramref name="value"/> parameter.</remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.SetBlobNative(System.Guid,System.IntPtr,System.Int32)">
            <summary>
                Associates a byte array with a key.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies the value to set. If this key already exists, the method overwrites the old value.</param>
            <param name="buf">Pointer to a byte array to associate with this key. The method stores a copy of the array.</param>
            <param name="cbBufSize">Size of the array, in bytes.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.SetBlob(System.Guid,System.Byte[])">
            <summary>
                Associates a byte array with a key.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies the value to set. If this key already exists, the method overwrites the old value.</param>
            <param name="buffer">The byte array to associate with the <paramref name="key"/></param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.SetUnknownNative(System.Guid,System.IntPtr)">
            <summary>
                Associates an IUnknown pointer with a key.
            </summary>
            <param name="key"><see cref="T:System.Guid"/> that identifies the value to set. If this key already exists, the method overwrites the old value.</param>
            <param name="unknown">IUnknown pointer to be associated with this key.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.LockStoreNative">
            <summary>
                Locks the attribute store so that no other thread can access it. If the attribute store is already locked by another thread, this method blocks until the other thread unlocks the object. After calling this method, call <see cref="M:CSCore.MediaFoundation.MFAttributes.UnlockStore"/> to unlock the object.
            </summary>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.LockStore">
            <summary>
                Locks the attribute store so that no other thread can access it. If the attribute store is already locked by another thread, this method blocks until the other thread unlocks the object. After calling this method, call <see cref="M:CSCore.MediaFoundation.MFAttributes.UnlockStore"/> to unlock the object.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.UnlockStoreNative">
            <summary>
                Unlocks the attribute store after a call to the <see cref="M:CSCore.MediaFoundation.MFAttributes.LockStore"/> method. While the object is unlocked, multiple threads can access the object's attributes.
            </summary>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.UnlockStore">
            <summary>
                Unlocks the attribute store after a call to the <see cref="M:CSCore.MediaFoundation.MFAttributes.LockStore"/> method. While the object is unlocked, multiple threads can access the object's attributes.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetCountNative(System.Int32@)">
            <summary>
                Retrieves the number of attributes that are set on this object.
            </summary>
            <param name="itemCount">Receives the number of attributes.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetCount">
            <summary>
                Retrieves the number of attributes that are set on this object.
            </summary>
            <returns>Returns the number of attributes.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetItemByIndexNative(System.Int32,System.Guid@,System.IntPtr)">
            <summary>
                Retrieves an attribute at the specified index.
            </summary>
            <param name="index">Index of the attribute to retrieve. To get the number of attributes, call <see cref="M:CSCore.MediaFoundation.MFAttributes.GetCount"/>.</param>
            <param name="key">Receives the <see cref="T:System.Guid"/> that identifies this attribute.</param>
            <param name="value">Pointer to a <see cref="T:CSCore.Win32.PropertyVariant"/> that receives the value. This parameter can be <see cref="F:System.IntPtr.Zero"/>. If it is not <see cref="F:System.IntPtr.Zero"/>, the method fills the <see cref="T:CSCore.Win32.PropertyVariant"/> with a copy of the attribute value. Call <see cref="M:CSCore.Win32.PropertyVariant.Dispose"/> to free the memory allocated by this method.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.GetItemByIndex(System.Int32,System.Guid@)">
            <summary>
                Retrieves an attribute at the specified index.
            </summary>
            <param name="index">Index of the attribute to retrieve. To get the number of attributes, call <see cref="M:CSCore.MediaFoundation.MFAttributes.GetCount"/>.</param>
            <param name="key">Receives the <see cref="T:System.Guid"/> that identifies this attribute.</param>
            <returns>Returns the value of the attribute specified by the <paramref name="index"/>.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.CopyAllItemsNative(CSCore.MediaFoundation.MFAttributes)">
            <summary>
                Copies all of the attributes from this object into another attribute store.
            </summary>
            <param name="destination">The attribute store that recevies the copy.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.CopyAllItems(CSCore.MediaFoundation.MFAttributes)">
            <summary>
                Copies all of the attributes from this object into another attribute store.
            </summary>
            <param name="destination">The attribute store that recevies the copy.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.Exists(System.Guid)">
            <summary>
            Determines whether the attribute store contains an attribute with the specified <paramref name="key"/>.
            </summary>
            <param name="key">The key of the attribute.</param>
            <returns><c>True</c> if the attribute exists; otherwise, <c>false</c></returns>
            <exception cref="T:CSCore.MediaFoundation.MediaFoundationException">An unexpected error occurred.</exception>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.Get(System.Guid)">
            <summary>
                Gets the item which got associated with the specified <paramref name="key" />.
            </summary>
            <param name="key">The key of the item.</param>
            <returns>The item which got associated with the specified <paramref name="key" />.</returns>
            <exception cref="T:System.NotSupportedException">The value type of the associated item is not supported.</exception>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.Get``1(System.Guid)">
            <summary>
                Gets the item which got associated with the specified <paramref name="key" />.
            </summary>
            <param name="key">The key of the item.</param>
            <typeparam name="TValueType">Type of the returned item.</typeparam>
            <returns>The item which got associated with the specified <paramref name="key" />.</returns>
            <exception cref="T:System.NotSupportedException">The specified <typeparamref name="TValueType" /> is not supported.</exception>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.Set``1(System.Guid,``0)">
            <summary>
                Sets the value of a property specified by its <paramref name="key" />.
            </summary>
            <param name="key">The key of the property.</param>
            <param name="value">The value to set.</param>
            <typeparam name="TValueType">The type of the property.</typeparam>
            <exception cref="T:System.NotSupportedException">The specified <typeparamref name="TValueType" /> is not supported.</exception>
        </member>
        <member name="M:CSCore.MediaFoundation.MFAttributes.Set``1(CSCore.MediaFoundation.MFAttribute{``0})">
            <summary>
                Sets the value of a property specified by the key of the <paramref name="keyValuePair" /> object.
            </summary>
            <typeparam name="T">The type of the property.</typeparam>
            <param name="keyValuePair">Specifies the key of the property and the new value to set.</param>
        </member>
        <member name="T:CSCore.MediaFoundation.MFAttributeType">
            <summary>
            Defines data types for <see cref="T:CSCore.MediaFoundation.MFAttribute`1"/> key/value pairs.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFAttributeType.UInt32">
            <summary>
            Unsigned 32-bit integer.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFAttributeType.UInt64">
            <summary>
            Unsigned 64-bit integer.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFAttributeType.Double">
            <summary>
            Floating-point number.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFAttributeType.Guid">
            <summary>
            <see cref="F:CSCore.MediaFoundation.MFAttributeType.Guid"/> value.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFAttributeType.String">
            <summary>
            Wide-character string.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFAttributeType.Blob">
            <summary>
            Byte array.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFAttributeType.IUnknown">
            <summary>
            <c>IUnknown</c> pointer.
            </summary>
        </member>
        <member name="T:CSCore.MediaFoundation.MFMediaBuffer">
            <summary>
            Represents a block of memory that contains media data. Use this interface to access the data in the buffer.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MFMediaBuffer.CurrentLength">
            <summary>
            Gets or sets the length of the valid data, in bytes. If the buffer does not contain any valid data, the value is zero.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MFMediaBuffer.MaxLength">
            <summary>
            Gets the allocated size of the buffer, in bytes.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaBuffer.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.MediaFoundation.MFMediaBuffer"/> class.
            </summary>
            <param name="ptr">The native pointer of the COM object.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaBuffer.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.MediaFoundation.MFMediaBuffer"/> class with the specified maximum <paramref name="size"/>.
            </summary>
            <param name="size">The size of the <see cref="T:CSCore.MediaFoundation.MFMediaBuffer"/> in bytes. The specified <paramref name="size"/> will be the <see cref="P:CSCore.MediaFoundation.MFMediaBuffer.MaxLength"/> of the constructed <see cref="T:CSCore.MediaFoundation.MFMediaBuffer"/>.</param>
            <remarks>The caller needs to release the allocated memory by disposing the <see cref="T:CSCore.MediaFoundation.MFMediaBuffer"/>.</remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaBuffer.LockNative(System.IntPtr@,System.Int32@,System.Int32@)">
            <summary>
            Gives the caller access to the memory in the buffer, for reading or writing.
            </summary>
            <param name="buffer">Receives a pointer to the start of the buffer.</param>
            <param name="maxLength">Receives the maximum amount of data that can be written to the buffer. The same value is returned by the <see cref="M:CSCore.MediaFoundation.MFMediaBuffer.GetMaxLength"/> method.</param>
            <param name="currentLength">Receives the length of the valid data in the buffer, in bytes. The same value is returned by the <see cref="M:CSCore.MediaFoundation.MFMediaBuffer.GetCurrentLength"/> method.</param>
            <returns>HRESULT</returns>
            <remarks>When you are done accessing the buffer, call <see cref="M:CSCore.MediaFoundation.MFMediaBuffer.Unlock"/> to unlock the buffer. You must call <see cref="M:CSCore.MediaFoundation.MFMediaBuffer.Unlock"/> once for each call to <see cref="M:CSCore.MediaFoundation.MFMediaBuffer.Lock"/>.</remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaBuffer.Lock(System.Int32@,System.Int32@)">
            <summary>
            Gives the caller access to the memory in the buffer, for reading or writing.
            </summary>
            <param name="maxLength">Receives the maximum amount of data that can be written to the buffer. The same value is returned by the <see cref="M:CSCore.MediaFoundation.MFMediaBuffer.GetMaxLength"/> method.</param>
            <param name="currentLength">Receives the length of the valid data in the buffer, in bytes. The same value is returned by the <see cref="M:CSCore.MediaFoundation.MFMediaBuffer.GetCurrentLength"/> method.</param>
            <returns>A pointer to the start of the buffer.</returns>
            <remarks>When you are done accessing the buffer, call <see cref="M:CSCore.MediaFoundation.MFMediaBuffer.Unlock"/> to unlock the buffer. You must call <see cref="M:CSCore.MediaFoundation.MFMediaBuffer.Unlock"/> once for each call to <see cref="M:CSCore.MediaFoundation.MFMediaBuffer.Lock"/>.</remarks>        
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaBuffer.Lock">
            <summary>
            Gives the caller access to the memory in the buffer, for reading or writing.
            </summary>
            <returns>A disposable object which provides the information returned by the <see cref="M:CSCore.MediaFoundation.MFMediaBuffer.Lock(System.Int32@,System.Int32@)"/> method. Call its <see cref="M:CSCore.MediaFoundation.MFMediaBuffer.LockDisposable.Dispose"/> method to unlock the <see cref="T:CSCore.MediaFoundation.MFMediaBuffer"/>.</returns>
            <example>
            This example shows how to use the <see cref="M:CSCore.MediaFoundation.MFMediaBuffer.Lock"/> method:
            <code>
            partial class TestClass
            {
            	public void DoStuff(MFMediaBuffer mediaBuffer)
            	{
            		using(var lock = mediaBuffer.Lock())
            		{
            			//do some stuff
            		}
            		//the mediaBuffer gets automatically unlocked by the using statement after "doing your stuff"
            	}
            }
            </code>
            </example>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaBuffer.UnlockNative">
            <summary>
            Unlocks a buffer that was previously locked. Call this method once for every call to <see cref="M:CSCore.MediaFoundation.MFMediaBuffer.Lock(System.Int32@,System.Int32@)"/>.
            </summary>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaBuffer.Unlock">
            <summary>
            Unlocks a buffer that was previously locked. Call this method once for every call to <see cref="M:CSCore.MediaFoundation.MFMediaBuffer.Lock(System.Int32@,System.Int32@)"/>.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaBuffer.GetCurrentLengthNative(System.Int32@)">
            <summary>
            Retrieves the length of the valid data in the buffer.
            <seealso cref="P:CSCore.MediaFoundation.MFMediaBuffer.CurrentLength"/>
            </summary>
            <param name="currentLength">Receives the length of the valid data, in bytes. If the buffer does not contain any valid data, the value is zero.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaBuffer.GetCurrentLength">
            <summary>
            Retrieves the length of the valid data in the buffer.
            <seealso cref="P:CSCore.MediaFoundation.MFMediaBuffer.CurrentLength"/>        
            </summary>
            <returns>The length of the valid data, in bytes. If the buffer does not contain any valid data, the value is zero.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaBuffer.SetCurrentLengthNative(System.Int32)">
            <summary>
            Sets the length of the valid data in the buffer.
            </summary>
            <seealso cref="P:CSCore.MediaFoundation.MFMediaBuffer.CurrentLength"/>        
            <param name="currentLength">Length of the valid data, in bytes. This value cannot be greater than the allocated size of the buffer, which is returned by the <see cref="M:CSCore.MediaFoundation.MFMediaBuffer.GetMaxLength"/> method.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaBuffer.SetCurrentLength(System.Int32)">
            <summary>
            Sets the length of the valid data in the buffer.
            </summary>
            <seealso cref="P:CSCore.MediaFoundation.MFMediaBuffer.CurrentLength"/>        
            <param name="currentLength">Length of the valid data, in bytes. This value cannot be greater than the allocated size of the buffer, which is returned by the <see cref="M:CSCore.MediaFoundation.MFMediaBuffer.GetMaxLength"/> method.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaBuffer.GetMaxLengthNative(System.Int32@)">
            <summary>
            Retrieves the allocated size of the buffer.
            <seealso cref="P:CSCore.MediaFoundation.MFMediaBuffer.MaxLength"/>
            </summary>
            <param name="maxlength">Receives the allocated size of the buffer, in bytes.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaBuffer.GetMaxLength">
            <summary>
            Retrieves the allocated size of the buffer.
            <seealso cref="P:CSCore.MediaFoundation.MFMediaBuffer.MaxLength"/>        
            </summary>
            <returns>The allocated size of the buffer, in bytes.</returns>
        </member>
        <member name="T:CSCore.MediaFoundation.MFMediaBuffer.LockDisposable">
            <summary>
            Used to unlock a <see cref="T:CSCore.MediaFoundation.MFMediaBuffer"/> after locking it by calling the <see cref="M:CSCore.MediaFoundation.MFMediaBuffer.Lock"/> method.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MFMediaBuffer.LockDisposable.Buffer">
            <summary>
            Gets a pointer to the start of the buffer.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MFMediaBuffer.LockDisposable.MaxLength">
            <summary>
            Gets the maximum amount of data that can be written to the buffer.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MFMediaBuffer.LockDisposable.CurrentLength">
            <summary>
            Gets the length of the valid data in the buffer, in bytes.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaBuffer.LockDisposable.Dispose">
            <summary>
            Unlocks the locked <see cref="T:CSCore.MediaFoundation.MFMediaBuffer"/>.
            </summary>
        </member>
        <member name="T:CSCore.MediaFoundation.MFMediaType">
            <summary>
            Represents a description of a media format. 
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaType.CreateEmpty">
            <summary>
            Creates an empty <see cref="T:CSCore.MediaFoundation.MFMediaType"/>.
            </summary>
            <returns>Returns an empty <see cref="T:CSCore.MediaFoundation.MFMediaType"/>.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaType.FromWaveFormat(CSCore.WaveFormat)">
            <summary>
            Creates a new <see cref="T:CSCore.MediaFoundation.MFMediaType"/> based on a specified <paramref name="waveFormat"/>.
            </summary>
            <param name="waveFormat"><see cref="T:CSCore.WaveFormat"/> which should be "converted" to a <see cref="T:CSCore.MediaFoundation.MFMediaType"/>.</param>
            <returns>Returns a new <see cref="T:CSCore.MediaFoundation.MFMediaType"/>.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaType.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.MediaFoundation.MFMediaType"/> class.
            </summary>
            <param name="ptr">The native pointer of the COM object.</param>
        </member>
        <member name="P:CSCore.MediaFoundation.MFMediaType.Channels">
            <summary>
            Gets or sets the number of channels.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MFMediaType.BitsPerSample">
            <summary>
            Gets or sets the number of bits per sample.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MFMediaType.SampleRate">
            <summary>
            Gets or sets the number of samples per second (for one channel each).
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MFMediaType.ChannelMask">
            <summary>
            Gets or sets the channelmask.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MFMediaType.AverageBytesPerSecond">
            <summary>
            Gets or sets the average number of bytes per second.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MFMediaType.SubType">
            <summary>
            Gets or sets the audio subtype.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MFMediaType.MajorType">
            <summary>
            Gets or sets the major type.
            </summary>
        </member>
        <member name="P:CSCore.MediaFoundation.MFMediaType.IsCompressed">
            <summary>
            Gets a value, indicating whether the media type is a temporally compressed format.
            Temporal compression uses information from previously decoded samples when 
            decompressing the current sample.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaType.GetMajorTypeNative(System.Guid@)">
            <summary>
            Gets the major type of the format.
            </summary>
            <param name="majorType">Receives the major type <see cref="T:System.Guid"/>. 
            The major type describes the broad category of the format, such as audio or video. For a list of possible values, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/aa367377(v=vs.85).aspx"/>.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaType.GetMajorType">
            <summary>
            Gets the major type of the format.
            </summary>
            <returns>The major type <see cref="T:System.Guid"/>. The major type describes the broad category of the format, such as audio or video. For a list of possible values, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/aa367377(v=vs.85).aspx"/>.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaType.IsCompressedFormatNative(CSCore.Win32.NativeBool@)">
            <summary>
            Queries whether the media type is a temporally compressed format. Temporal compression
            uses information from previously decoded samples when decompressing the current sample.
            </summary>
            <param name="iscompressed">Receives a Boolean value. The value is <c>TRUE</c> if the format uses temporal compression, or <c>FALSE</c> if the format does not use temporal compression.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaType.IsCompressedFormat">
            <summary>
            Queries whether the media type is a temporally compressed format. Temporal compression
            uses information from previously decoded samples when decompressing the current sample.
            </summary>
            <returns><see cref="F:CSCore.Win32.NativeBool.True"/> if the format uses temporal compression. <see cref="F:CSCore.Win32.NativeBool.False"/> if the format does not use temporal compression.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaType.IsEqualNative(CSCore.MediaFoundation.MFMediaType,CSCore.MediaFoundation.MediaTypeEqualFlags@)">
            <summary>
            Compares two media types and determines whether they are identical. If they are not
            identical, the method indicates how the two formats differ.
            </summary>
            <param name="mediaType">The <see cref="T:CSCore.MediaFoundation.MFMediaType"/> to compare.</param>
            <param name="flags">Receives a bitwise OR of zero or more flags, indicating the degree of similarity between the two media types.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaType.IsEqual(CSCore.MediaFoundation.MFMediaType)">
            <summary>
            Compares two media types and determines whether they are identical. If they are not
            identical, the method indicates how the two formats differ.
            </summary>
            <param name="mediaType">The <see cref="T:CSCore.MediaFoundation.MFMediaType"/> to compare.</param>
            <returns>A bitwise OR of zero or more flags, indicating the degree of similarity between the two media types.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaType.GetRepresentationNative(System.Guid,System.IntPtr@)">
            <summary>
            Retrieves an alternative representation of the media type. Currently only the DirectShow
            AM_MEDIA_TYPE structure is supported.
            </summary>
            <param name="guidRepresentation"><see cref="T:System.Guid"/> that specifies the representation to retrieve. The following values are defined.</param>
            <param name="representation">Receives a pointer to a structure that contains the representation. The method allocates the memory for the structure. The caller must release the memory by calling <see cref="M:CSCore.MediaFoundation.MFMediaType.FreeRepresentation(System.Guid,System.IntPtr)"/>.</param>
            <returns>HRESULT</returns>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/ms695248(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaType.GetRepresentation(System.Guid)">
            <summary>
            Retrieves an alternative representation of the media type. Currently only the DirectShow
            AM_MEDIA_TYPE structure is supported.
            </summary>
            <param name="guidRepresentation"><see cref="T:System.Guid"/> that specifies the representation to retrieve. The following values are defined.</param>
            <returns>A pointer to a structure that contains the representation. The method allocates the memory for the structure. The caller must release the memory by calling <see cref="M:CSCore.MediaFoundation.MFMediaType.FreeRepresentation(System.Guid,System.IntPtr)"/>.</returns>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/ms695248(v=vs.85).aspx"/>.</remarks>        
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaType.FreeRepresentationNative(System.Guid,System.IntPtr)">
            <summary>
            Frees memory that was allocated by the <see cref="M:CSCore.MediaFoundation.MFMediaType.GetRepresentation(System.Guid)"/> method.
            </summary>
            <param name="guidRepresentation"><see cref="T:System.Guid"/> that was passed to the <see cref="M:CSCore.MediaFoundation.MFMediaType.GetRepresentation(System.Guid)"/> method.</param>
            <param name="representation">Pointer to the buffer that was returned by the <see cref="M:CSCore.MediaFoundation.MFMediaType.GetRepresentation(System.Guid)"/> method.</param>
            <returns>HRESULT</returns>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/ms703846(v=vs.85).aspx"/>.</remarks>        
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaType.FreeRepresentation(System.Guid,System.IntPtr)">
            <summary>
            Frees memory that was allocated by the <see cref="M:CSCore.MediaFoundation.MFMediaType.GetRepresentation(System.Guid)"/> method.
            </summary>
            <param name="guidRepresentation"><see cref="T:System.Guid"/> that was passed to the <see cref="M:CSCore.MediaFoundation.MFMediaType.GetRepresentation(System.Guid)"/> method.</param>
            <param name="representation">Pointer to the buffer that was returned by the <see cref="M:CSCore.MediaFoundation.MFMediaType.GetRepresentation(System.Guid)"/> method.</param>
            <remarks>For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/ms703846(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFMediaType.ToWaveFormat(CSCore.MediaFoundation.MFWaveFormatExConvertFlags)">
            <summary>
            Converts the <see cref="T:CSCore.MediaFoundation.MFMediaType"/> to a <see cref="T:CSCore.WaveFormat"/>.
            </summary>
            <param name="flags">Contains a flag from the <see cref="T:CSCore.MediaFoundation.MFWaveFormatExConvertFlags"/> enumeration.</param>
            <returns>The <see cref="T:CSCore.WaveFormat"/> which got created based on the <see cref="T:CSCore.MediaFoundation.MFMediaType"/>.</returns>
        </member>
        <member name="T:CSCore.MediaFoundation.MFSample">
            <summary>
            Represents a media sample, which is a container object for media data. For video, a sample typically contains one video frame. For audio data, a sample typically contains multiple audio samples, rather than a single sample of audio.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.MediaFoundation.MFSample"/> class.
            </summary>
            <remarks>Calls the MFCreateSample function.</remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.MediaFoundation.MFSample"/> class.
            </summary>
            <param name="ptr">The native pointer of the COM object.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.GetSampleFlagsNative(CSCore.MediaFoundation.MFSampleFlags@)">
            <summary>
            Currently no flags are defined. Instead, metadata for samples is defined using
            attributes. To get attibutes from a sample, use the <see cref="T:CSCore.MediaFoundation.MFAttributes"/> object, which
            <see cref="T:CSCore.MediaFoundation.MFSample"/> inherits.
            </summary>
            <param name="sampleFlags">Receives the value <see cref="F:CSCore.MediaFoundation.MFSampleFlags.None"/>.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.GetSampleFlags">
            <summary>
            Currently no flags are defined. Instead, metadata for samples is defined using
            attributes. To get attibutes from a sample, use the <see cref="T:CSCore.MediaFoundation.MFAttributes"/> object, which
            <see cref="T:CSCore.MediaFoundation.MFSample"/> inherits.
            </summary>
            <returns>Returns the <see cref="F:CSCore.MediaFoundation.MFSampleFlags.None"/>.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.SetSampleFlagsNative(CSCore.MediaFoundation.MFSampleFlags)">
            <summary>
            Currently no flags are defined. Instead, metadata for samples is defined using
            attributes. To set attibutes on a sample, use the <see cref="T:CSCore.MediaFoundation.MFAttributes"/> object, which
            IMFSample inherits.
            </summary>
            <param name="flags">Must be <see cref="F:CSCore.MediaFoundation.MFSampleFlags.None"/>.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.SetSampleFlags(CSCore.MediaFoundation.MFSampleFlags)">
            <summary>
            Currently no flags are defined. Instead, metadata for samples is defined using
            attributes. To set attibutes on a sample, use the <see cref="T:CSCore.MediaFoundation.MFAttributes"/> object, which
            IMFSample inherits.
            </summary>
            <param name="flags">Must be <see cref="F:CSCore.MediaFoundation.MFSampleFlags.None"/>.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.GetSampleTimeNative(System.Int64@)">
            <summary>
            Retrieves the presentation time of the sample.
            </summary>
            <param name="hnsSampleTime">Presentation time, in 100-nanosecond units.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.GetSampleTime">
            <summary>
            Retrieves the presentation time of the sample.
            </summary>
            <returns>Presentation time, in 100-nanosecond units.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.SetSampleTimeNative(System.Int64)">
            <summary>
            Sets the presentation time of the sample.
            </summary>
            <param name="hnsSampleTime">The presentation time, in 100-nanosecond units.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.SetSampleTime(System.Int64)">
            <summary>
            Sets the presentation time of the sample.
            </summary>
            <param name="hnsSampleTime">The presentation time, in 100-nanosecond units.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.GetSampleDurationNative(System.Int64@)">
            <summary>
            Retrieves the presentation time of the sample.
            </summary>
            <param name="hnsSampleDuration">Receives the presentation time, in 100-nanosecond units.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.GetSampleDuration">
            <summary>
            Retrieves the presentation time of the sample.
            </summary>
            <returns>The presentation time, in 100-nanosecond units.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.SetSampleDurationNative(System.Int64)">
            <summary>
            Sets the duration of the sample.
            </summary>
            <param name="hnsSampleDuration">Duration of the sample, in 100-nanosecond units.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.SetSampleDuration(System.Int64)">
            <summary>
            Sets the duration of the sample.
            </summary>
            <param name="hnsSampleDuration">Duration of the sample, in 100-nanosecond units.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.GetBufferCountNative(System.Int32@)">
            <summary>
            Retrieves the number of buffers in the sample.
            </summary>
            <param name="bufferCount">Receives the number of buffers in the sample. A sample might contain zero buffers.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.GetBufferCount">
            <summary>
            Retrieves the number of buffers in the sample.
            </summary>
            <returns>The number of buffers in the sample. A sample might contain zero buffers.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.GetBufferByIndexNative(System.Int32,CSCore.MediaFoundation.MFMediaBuffer@)">
            <summary>
            Gets a buffer from the sample, by index.
            </summary>
            <param name="index">Index of the buffer. To find the number of buffers in the sample, call <see cref="M:CSCore.MediaFoundation.MFSample.GetBufferCount"/>. Buffers are indexed from zero. </param>
            <param name="buffer">Receives the <see cref="T:CSCore.MediaFoundation.MFMediaBuffer"/> instance. The caller must release the object. </param>
            <returns>HRESULT</returns>
            <remarks>
            Note: In most cases, it is safer to use the <see cref="M:CSCore.MediaFoundation.MFSample.ConvertToContiguousBuffer"/> method. 
            If the sample contains more than one buffer, the <see cref="M:CSCore.MediaFoundation.MFSample.ConvertToContiguousBuffer"/> method replaces them with a single buffer, copies the original data into that buffer, and returns the new buffer to the caller. 
            The copy operation occurs at most once. On subsequent calls, no data is copied.
            </remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.GetBufferByIndex(System.Int32)">
            <summary>
            Gets a buffer from the sample, by index.
            </summary>
            <param name="index">Index of the buffer. To find the number of buffers in the sample, call <see cref="M:CSCore.MediaFoundation.MFSample.GetBufferCount"/>. Buffers are indexed from zero. </param>
            <returns>The <see cref="T:CSCore.MediaFoundation.MFMediaBuffer"/> instance. The caller must release the object.</returns>
            <remarks>
            Note: In most cases, it is safer to use the <see cref="M:CSCore.MediaFoundation.MFSample.ConvertToContiguousBuffer"/> method. 
            If the sample contains more than one buffer, the <see cref="M:CSCore.MediaFoundation.MFSample.ConvertToContiguousBuffer"/> method replaces them with a single buffer, copies the original data into that buffer, and returns the new buffer to the caller. 
            The copy operation occurs at most once. On subsequent calls, no data is copied.
            </remarks>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.ConvertToContiguousBufferNative(CSCore.MediaFoundation.MFMediaBuffer@)">
            <summary>
            Converts a sample with multiple buffers into a sample with a single buffer. 
            </summary>
            <param name="buffer">Receives a <see cref="T:CSCore.MediaFoundation.MFMediaBuffer"/> instance. The caller must release the instance.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.ConvertToContiguousBuffer">
            <summary>
            Converts a sample with multiple buffers into a sample with a single buffer. 
            </summary>
            <returns>A <see cref="T:CSCore.MediaFoundation.MFMediaBuffer"/> instance. The caller must release the instance.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.AddBufferNative(CSCore.MediaFoundation.MFMediaBuffer)">
            <summary>
            Adds a buffer to the end of the list of buffers in the sample. 
            </summary>
            <param name="buffer">The <see cref="T:CSCore.MediaFoundation.MFMediaBuffer"/> to add.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.AddBuffer(CSCore.MediaFoundation.MFMediaBuffer)">
            <summary>
            Adds a buffer to the end of the list of buffers in the sample. 
            </summary>
            <param name="buffer">The <see cref="T:CSCore.MediaFoundation.MFMediaBuffer"/> to add.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.RemoveBufferByIndexNative(System.Int32)">
            <summary>
            Removes a buffer at a specified index from the sample.
            </summary>
            <param name="index">Index of the buffer. To find the number of buffers in the sample, call <see cref="M:CSCore.MediaFoundation.MFSample.GetBufferCount"/>. Buffers are indexed from zero.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.RemoveBufferByIndex(System.Int32)">
            <summary>
            Removes a buffer at a specified index from the sample.
            </summary>
            <param name="index">Index of the buffer. To find the number of buffers in the sample, call <see cref="M:CSCore.MediaFoundation.MFSample.GetBufferCount"/>. Buffers are indexed from zero.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.RemoveAllBuffersNative">
            <summary>
            Removes all of the buffers from the sample.
            </summary>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.RemoveAllBuffers">
            <summary>
            Removes all of the buffers from the sample.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.GetTotalLengthNative(System.Int32@)">
            <summary>
            Retrieves the total length of the valid data in all of the buffers in the sample. The length is calculated as the sum of the values retrieved by the <see cref="M:CSCore.MediaFoundation.MFMediaBuffer.GetCurrentLength"/> method.
            </summary>
            <param name="totalLength">Receives the total length of the valid data, in bytes.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.GetTotalLength">
            <summary>
            Retrieves the total length of the valid data in all of the buffers in the sample. The length is calculated as the sum of the values retrieved by the <see cref="M:CSCore.MediaFoundation.MFMediaBuffer.GetCurrentLength"/> method.
            </summary>
            <returns>The total length of the valid data, in bytes.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.CopyToBufferNative(CSCore.MediaFoundation.MFMediaBuffer)">
            <summary>
            Copies the sample data to a buffer. This method concatenates the valid data from all of the buffers of the sample, in order.
            </summary>
            <param name="buffer">The <see cref="T:CSCore.MediaFoundation.MFMediaBuffer"/> object of the destination buffer. 
            The buffer must be large enough to hold the valid data in the sample. 
            To get the size of the data in the sample, call <see cref="M:CSCore.MediaFoundation.MFSample.GetTotalLength"/>.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSample.CopyToBuffer(CSCore.MediaFoundation.MFMediaBuffer)">
            <summary>
            Copies the sample data to a buffer. This method concatenates the valid data from all of the buffers of the sample, in order.
            </summary>
            <param name="buffer">The <see cref="T:CSCore.MediaFoundation.MFMediaBuffer"/> object of the destination buffer. 
            The buffer must be large enough to hold the valid data in the sample. 
            To get the size of the data in the sample, call <see cref="M:CSCore.MediaFoundation.MFSample.GetTotalLength"/>.</param>
        </member>
        <member name="T:CSCore.MediaFoundation.MFSourceReader">
            <summary>
            Implemented by the Microsoft Media Foundation source reader object.
            </summary>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.MediaFoundation.MFSourceReader"/> class.
            </summary>
            <param name="ptr">The native pointer of the COM object.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.MediaFoundation.MFSourceReader"/> class based on a given <paramref name="url"/>.
            </summary>
            <param name="url">The URL.</param>
        </member>
        <member name="P:CSCore.MediaFoundation.MFSourceReader.CanSeek">
            <summary>
            Gets a value indicating whether this instance can seek.
            </summary>
            <value>
              <c>true</c> if this instance can seek; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:CSCore.MediaFoundation.MFSourceReader.MediaSourceCharacteristics">
            <summary>
            Gets the media source characteristics.
            </summary>
            <value>
            The media source characteristics.
            </value>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.GetStreamSelectionNative(System.Int32,CSCore.Win32.NativeBool@)">
            <summary>
            Queries whether a stream is selected.
            </summary>
            <param name="streamIndex">The stream to query. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd374664(v=vs.85).aspx"/>.</param>
            <param name="selectedRef">Receives <see cref="F:CSCore.Win32.NativeBool.True"/> if the stream is selected and will generate data. Receives <see cref="F:CSCore.Win32.NativeBool.False"/> if the stream is not selected and will not generate data.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.GetStreamSelection(System.Int32)">
            <summary>
            Queries whether a stream is selected. 
            </summary>
            <param name="streamIndex">The stream to query. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd374664(v=vs.85).aspx"/>.</param>
            <returns><see cref="F:CSCore.Win32.NativeBool.True"/> if the stream is selected and will generate data; <see cref="F:CSCore.Win32.NativeBool.False"/> if the stream is not selected and will not generate data.</returns>        
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.SetStreamSelectionNative(System.Int32,CSCore.Win32.NativeBool)">
            <summary>
            Selects or deselects one or more streams.
            </summary>
            <param name="streamIndex">The stream to set. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd374669(v=vs.85).aspx"/>.</param>
            <param name="selected">Specify <see cref="F:CSCore.Win32.NativeBool.True"/> to select streams or <see cref="F:CSCore.Win32.NativeBool.False"/> to deselect streams. If a stream is deselected, it will not generate data.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.SetStreamSelection(System.Int32,CSCore.Win32.NativeBool)">
            <summary>
            Selects or deselects one or more streams.
            </summary>
            <param name="streamIndex">The stream to set. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd374669(v=vs.85).aspx"/>.</param>
            <param name="selected">Specify <see cref="F:CSCore.Win32.NativeBool.True"/> to select streams or <see cref="F:CSCore.Win32.NativeBool.False"/> to deselect streams. If a stream is deselected, it will not generate data.</param>                
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.GetNativeMediaTypeNative(System.Int32,System.Int32,CSCore.MediaFoundation.MFMediaType@)">
            <summary>
            Gets a format that is supported natively by the media source.
            </summary>
            <param name="streamIndex">Specifies which stream to query. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd374661(v=vs.85).aspx"/>.</param>
            <param name="mediatypeIndex">The zero-based index of the media type to retrieve.</param>
            <param name="mediaType">Receives the <see cref="T:CSCore.MediaFoundation.MFMediaType"/>. The caller must dispose the object.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.GetNativeMediaType(System.Int32,System.Int32)">
            <summary>
            Gets a format that is supported natively by the media source.
            </summary>
            <param name="streamIndex">Specifies which stream to query. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd374661(v=vs.85).aspx"/>.</param>
            <param name="mediatypeIndex">The zero-based index of the media type to retrieve.</param>
            <returns>The <see cref="T:CSCore.MediaFoundation.MFMediaType"/>. The caller must dispose the <see cref="T:CSCore.MediaFoundation.MFMediaType"/>.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.GetCurrentMediaTypeNative(System.Int32,CSCore.MediaFoundation.MFMediaType@)">
            <summary>
            Gets the current media type for a stream.
            </summary>
            <param name="streamIndex">Specifies which stream to query. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd374660(v=vs.85).aspx"/>.</param>
            <param name="mediaType">Receives the <see cref="T:CSCore.MediaFoundation.MFMediaType"/>. The caller must dispose the <see cref="T:CSCore.MediaFoundation.MFMediaType"/>.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.GetCurrentMediaType(System.Int32)">
            <summary>
            Gets the current media type for a stream.
            </summary>
            <param name="streamIndex">Specifies which stream to query. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd374660(v=vs.85).aspx" />.</param>
            <returns>The <see cref="T:CSCore.MediaFoundation.MFMediaType"/>. The caller must dispose the <see cref="T:CSCore.MediaFoundation.MFMediaType"/>.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.SetCurrentMediaTypeNative(System.Int32,System.IntPtr,CSCore.MediaFoundation.MFMediaType)">
            <summary>
            Sets the media type for a stream.
            This media type defines the format that the <see cref="T:CSCore.MediaFoundation.MFSourceReader"/> produces as output. It can differ from the native format provided by the media source. See Remarks for more information.
            </summary>
            <param name="streamIndex">The stream to configure. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd374667(v=vs.85).aspx"/>.</param>
            <param name="reserved">Reserved. Set to <see cref="F:System.IntPtr.Zero"/>.</param>
            <param name="mediaType">The media type to set.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.SetCurrentMediaType(System.Int32,CSCore.MediaFoundation.MFMediaType)">
            <summary>
            Sets the media type for a stream.
            This media type defines the format that the <see cref="T:CSCore.MediaFoundation.MFSourceReader"/> produces as output. It can differ from the native format provided by the media source. See Remarks for more information.
            </summary>
            <param name="streamIndex">The stream to configure. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd374667(v=vs.85).aspx"/>.</param>
            <param name="mediaType">The media type to set.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.SetCurrentPositionNative(System.Guid,CSCore.Win32.PropertyVariant)">
            <summary>
            Seeks to a new position in the media source.
            </summary>
            <param name="guidTimeFormat">A GUID that specifies the time format. The time format defines the units for the varPosition parameter. Pass <see cref="F:System.Guid.Empty"/> for "100-nanosecond units". Some media sources might support additional values.</param>
            <param name="position">The position from which playback will be started. The units are specified by the <paramref name="guidTimeFormat"/> parameter. If the <paramref name="guidTimeFormat"/> parameter is <see cref="F:System.Guid.Empty"/>, set the variant type to <see cref="F:System.Runtime.InteropServices.VarEnum.VT_I8"/>.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.SetCurrentPosition(System.Guid,CSCore.Win32.PropertyVariant)">
            <summary>
            Seeks to a new position in the media source.
            </summary>
            <param name="guidTimeFormat">A GUID that specifies the time format. The time format defines the units for the varPosition parameter. Pass <see cref="F:System.Guid.Empty"/> for "100-nanosecond units". Some media sources might support additional values.</param>
            <param name="position">The position from which playback will be started. The units are specified by the <paramref name="guidTimeFormat"/> parameter. If the <paramref name="guidTimeFormat"/> parameter is <see cref="F:System.Guid.Empty"/>, set the variant type to <see cref="F:System.Runtime.InteropServices.VarEnum.VT_I8"/>.</param>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.ReadSampleNative(System.Int32,System.Int32,System.Int32@,CSCore.MediaFoundation.MFSourceReaderFlags@,System.Int64@,CSCore.MediaFoundation.MFSample@)">
            <summary>
            Reads the next sample from the media source.
            </summary>
            <param name="streamIndex">Index of the stream.The stream to pull data from. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd374665(v=vs.85).aspx"/>.</param>
            <param name="controlFlags">A bitwise OR of zero or more flags from the <see cref="T:CSCore.MediaFoundation.SourceReaderControlFlags"/> enumeration.</param>
            <param name="actualStreamIndex">Receives the zero-based index of the stream.</param>
            <param name="streamFlags">Receives a bitwise OR of zero or more flags from the <see cref="T:CSCore.MediaFoundation.MFSourceReaderFlags"/> enumeration.</param>
            <param name="timestamp">Receives the time stamp of the sample, or the time of the stream event indicated in <paramref name="streamFlags"/>. The time is given in 100-nanosecond units.</param>
            <param name="sample">Receives the <see cref="T:CSCore.MediaFoundation.MFSample"/> instance or null. If this parameter receives a non-null value, the caller must release the received <see cref="T:CSCore.MediaFoundation.MFSample"/>.</param>
            <returns>
            HRESULT
            </returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.ReadSample(System.Int32,System.Int32,System.Int32@,CSCore.MediaFoundation.MFSourceReaderFlags@,System.Int64@)">
            <summary>
            Reads the next sample from the media source.
            </summary>
            <param name="streamIndex">Index of the stream.The stream to pull data from. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd374665(v=vs.85).aspx"/>.</param>
            <param name="controlFlags">A bitwise OR of zero or more flags from the <see cref="T:CSCore.MediaFoundation.SourceReaderControlFlags"/> enumeration.</param>
            <param name="actualStreamIndex">Receives the zero-based index of the stream.</param>
            <param name="streamFlags">Receives a bitwise OR of zero or more flags from the <see cref="T:CSCore.MediaFoundation.MFSourceReaderFlags"/> enumeration.</param>
            <param name="timestamp">Receives the time stamp of the sample, or the time of the stream event indicated in <paramref name="streamFlags"/>. The time is given in 100-nanosecond units.</param>
            <returns>The <see cref="T:CSCore.MediaFoundation.MFSample"/> instance or null. If this parameter receives a non-null value, the caller must release the received <see cref="T:CSCore.MediaFoundation.MFSample"/>.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.FlushNative(System.Int32)">
            <summary>
            Flushes one or more streams.
            </summary>
            <param name="streamIndex">The stream to flush. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd374659(v=vs.85).aspx"/>.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.Flush(System.Int32)">
            <summary>
            Flushes one or more streams.
            </summary>
            <param name="streamIndex">The stream to flush. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd374659(v=vs.85).aspx"/>.</param>        
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.GetServiceForStreamNative(System.Int32,System.Guid,System.Guid,System.IntPtr@)">
            <summary>
            Queries the underlying media source or decoder for an interface.
            </summary>
            <param name="streamIndex">The stream or object to query. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd374663(v=vs.85).aspx"/>.</param>
            <param name="guidService">A service identifier <see cref="T:System.Guid"/>. If the value is <see cref="F:System.Guid.Empty"/>, the method calls <c>QueryInterface</c> to get the requested interface. Otherwise, the method calls the IMFGetService::GetService method. For a list of service identifiers, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/ms695350(v=vs.85).aspx"/>.</param>
            <param name="riid">The interface identifier (IID) of the interface being requested.</param>
            <param name="service">Receives a pointer to the requested interface. The caller must release the interface.</param>
            <returns>
            HRESULT
            </returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.GetServiceForStream(System.Int32,System.Guid,System.Guid)">
            <summary>
            Queries the underlying media source or decoder for an interface.
            </summary>
            <param name="streamIndex">The stream or object to query. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd374663(v=vs.85).aspx"/>.</param>
            <param name="guidService">A service identifier <see cref="T:System.Guid"/>. If the value is <see cref="F:System.Guid.Empty"/>, the method calls <c>QueryInterface</c> to get the requested interface. Otherwise, the method calls the IMFGetService::GetService method. For a list of service identifiers, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/ms695350(v=vs.85).aspx"/>.</param>
            <param name="riid">The interface identifier (IID) of the interface being requested.</param>
            <returns>A pointer to the requested interface. The caller must release the interface.</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.GetPresentationAttributeNative(System.Int32,System.Guid,CSCore.Win32.PropertyVariant@)">
            <summary>
            Gets an attribute from the underlying media source.
            </summary>
            <param name="streamIndex">The stream or object to query. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd374662(v=vs.85).aspx"/>.</param>
            <param name="guidAttribute">A <see cref="T:System.Guid"/> that identifies the attribute to retrieve. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd374662(v=vs.85).aspx"/>.</param>
            <param name="variant">Receives a <see cref="T:CSCore.Win32.PropertyVariant"/> that receives the value of the attribute. Call the <see cref="M:CSCore.Win32.PropertyVariant.Dispose"/> method to free the <see cref="T:CSCore.Win32.PropertyVariant"/>.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.MediaFoundation.MFSourceReader.GetPresentationAttribute(System.Int32,System.Guid)">
            <summary>
            Gets an attribute from the underlying media source.
            </summary>
            <param name="streamIndex">The stream or object to query. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd374662(v=vs.85).aspx"/>.</param>
            <param name="guidAttribute">A <see cref="T:System.Guid"/> that identifies the attribute to retrieve. For more information, see <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd374662(v=vs.85).aspx"/>.</param>
            <returns>A <see cref="T:CSCore.Win32.PropertyVariant"/> that receives the value of the attribute. Call the <see cref="M:CSCore.Win32.PropertyVariant.Dispose"/> method to free the <see cref="T:CSCore.Win32.PropertyVariant"/>.</returns>
        </member>
        <member name="T:CSCore.MediaFoundation.MFWaveFormatExConvertFlags">
            <summary>
            Defines flags that specify how to convert an audio media type.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFWaveFormatExConvertFlags.Normal">
            <summary>
            Convert the media type to a <see cref="T:CSCore.WaveFormat"/> class if possible, or a <see cref="T:CSCore.WaveFormatExtensible"/> class otherwise.
            </summary>
        </member>
        <member name="F:CSCore.MediaFoundation.MFWaveFormatExConvertFlags.ForceExtensible">
            <summary>
            Convert the media type to a <see cref="T:CSCore.WaveFormatExtensible"/> class..
            </summary>
        </member>
        <member name="T:CSCore.MmResult">
            <summary>
            Defines multi media error codes.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.NoError">
            <summary>
            No error.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.Error">
            <summary>
            Unspecified error.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.BadDevice">
            <summary>
            Invalid device id.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.NotEnabled">
            <summary>
            Driver failed enable.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.Allocated">
            <summary>
            Device already allocated.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.InvalidHandle">
            <summary>
            Device handle is invalid.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.NoDriver">
            <summary>
            No device driver present.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.NoMemory">
            <summary>
            Memory allocation error.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.NotSupported">
            <summary>
            Function isn't supported.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.BadErrorNumber">
            <summary>
            Error value out of range.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.InvalidFlag">
            <summary>
            Invalid flag passed.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.InvalidParameter">
            <summary>
            Invalid parameter passed.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.HandleBusy">
            <summary>
            Handle being used simultaneously on another thread (eg callback).
            </summary>
        </member>
        <member name="F:CSCore.MmResult.InvalidAlias">
            <summary>
            Specified alias not found.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.BadDatabase">
            <summary>
            Bad registry database.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.KeyNotFound">
            <summary>
            Registry key not found.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.ReadError">
            <summary>
            Registry read error.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.WriteError">
            <summary>
            Registry write error.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.DeleteError">
            <summary>
            Registry delete error.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.ValueNotFound">
            <summary>
            Registry value not found.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.NoDriverCallback">
            <summary>
            Driver does not call DriverCallback.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.MoreData">
            <summary>
            More data to be returned.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.BadFormat">
            <summary>
            Unsupported wave format.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.StillPlaying">
            <summary>
            Still something playing.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.Unprepared">
            <summary>
            Header not prepared.
            </summary>
        </member>
        <member name="F:CSCore.MmResult.Synchronous">
            <summary>
            Device is synchronous.
            </summary>
        </member>
        <member name="T:CSCore.SoundIn.RecordingState">
            <summary>
            Defines the states of a <see cref="T:CSCore.SoundIn.ISoundIn"/>.
            </summary>
        </member>
        <member name="F:CSCore.SoundIn.RecordingState.Recording">
            <summary>
            The <see cref="T:CSCore.SoundIn.ISoundIn"/> is currently recording.
            </summary>
        </member>
        <member name="F:CSCore.SoundIn.RecordingState.Stopped">
            <summary>
            The <see cref="T:CSCore.SoundIn.ISoundIn"/> is currently stopped.
            </summary>
        </member>
        <member name="T:CSCore.SoundIn.RecordingStoppedEventArgs">
            <summary>
                Provides data for the <see cref="E:CSCore.SoundIn.ISoundIn.Stopped" /> event.
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.RecordingStoppedEventArgs.#ctor">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.SoundIn.RecordingStoppedEventArgs" /> class.
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.RecordingStoppedEventArgs.#ctor(System.Exception)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.SoundIn.RecordingStoppedEventArgs" /> class.
            </summary>
            <param name="exception">The associated exception. Can be null.</param>
        </member>
        <member name="T:CSCore.SoundIn.WasapiCapture">
            <summary>
            Captures audio data from a audio device (through Wasapi Apis). To capture audio from an output device, use the <see cref="T:CSCore.SoundIn.WasapiLoopbackCapture"/> class.
            Minimum supported OS: Windows Vista (see <see cref="P:CSCore.SoundIn.WasapiCapture.IsSupportedOnCurrentPlatform"/> property).
            </summary>
        </member>
        <member name="P:CSCore.SoundIn.WasapiCapture.IsSupportedOnCurrentPlatform">
            <summary>
            Gets a value indicating whether the <see cref="T:CSCore.SoundIn.WasapiCapture"/> class is supported on the current platform.
            If <b>true</b>, it is supported; otherwise false.
            </summary>
        </member>
        <member name="F:CSCore.SoundIn.WasapiCapture.ReftimesPerMillisecond">
            <summary>
            Reference time units per millisecond.
            </summary>
        </member>
        <member name="F:CSCore.SoundIn.WasapiCapture.ReftimesPerSecond">
            <summary>
            Reference time units per second.
            </summary>
        </member>
        <member name="E:CSCore.SoundIn.WasapiCapture.DataAvailable">
            <summary>
            Occurs when new data got captured and is available. 
            </summary>
        </member>
        <member name="E:CSCore.SoundIn.WasapiCapture.Stopped">
            <summary>
            Occurs when <see cref="T:CSCore.SoundIn.WasapiCapture"/> stopped capturing audio.
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.WasapiCapture.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.SoundIn.WasapiCapture"/> class.
            CaptureThreadPriority = AboveNormal. 
            DefaultFormat = null. 
            Latency = 100ms. 
            EventSync = true.
            SharedMode = Shared.
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.WasapiCapture.#ctor(System.Boolean,CSCore.CoreAudioAPI.AudioClientShareMode)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.SoundIn.WasapiCapture"/> class.
            CaptureThreadPriority = AboveNormal. 
            DefaultFormat = null.
            Latency = 100ms.
            </summary>
            <param name="eventSync">True, to use eventsynchronization instead of a simple loop and sleep behavior. Don't use this in combination with exclusive mode.</param>
            <param name="shareMode">Specifies how to open the audio device. Note that if exclusive mode is used, the device can only be used once on the whole system. Don't use exclusive mode in combination with eventSync.</param>
        </member>
        <member name="M:CSCore.SoundIn.WasapiCapture.#ctor(System.Boolean,CSCore.CoreAudioAPI.AudioClientShareMode,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.SoundIn.WasapiCapture"/> class.
            CaptureThreadPriority = AboveNormal. 
            DefaultFormat = null.
            </summary>
            <param name="eventSync">True, to use eventsynchronization instead of a simple loop and sleep behavior. Don't use this in combination with exclusive mode.</param>
            <param name="shareMode">Specifies how to open the audio device. Note that if exclusive mode is used, the device can only be used once on the whole system. Don't use exclusive mode in combination with eventSync.</param>
            <param name="latency">Latency of the capture specified in milliseconds.</param>
        </member>
        <member name="M:CSCore.SoundIn.WasapiCapture.#ctor(System.Boolean,CSCore.CoreAudioAPI.AudioClientShareMode,System.Int32,CSCore.WaveFormat)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.SoundIn.WasapiCapture"/> class.
            CaptureThreadPriority = AboveNormal.
            </summary>
            <param name="eventSync">True, to use eventsynchronization instead of a simple loop and sleep behavior. Don't use this in combination with exclusive mode.</param>
            <param name="shareMode">Specifies how to open the audio device. Note that if exclusive mode is used, the device can only be used once on the whole system. Don't use exclusive mode in combination with eventSync.</param>
            <param name="latency">Latency of the capture specified in milliseconds.</param>
            <param name="defaultFormat">The default WaveFormat to use for the capture. If this parameter is set to null, the best available format will be chosen automatically.</param>
        </member>
        <member name="M:CSCore.SoundIn.WasapiCapture.#ctor(System.Boolean,CSCore.CoreAudioAPI.AudioClientShareMode,System.Int32,CSCore.WaveFormat,System.Threading.ThreadPriority)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.SoundIn.WasapiCapture"/> class. SynchronizationContext = null.
            </summary>
            <param name="eventSync">True, to use eventsynchronization instead of a simple loop and sleep behavior. Don't use this in combination with exclusive mode.</param>
            <param name="shareMode">Specifies how to open the audio device. Note that if exclusive mode is used, the device can only be used once on the whole system. Don't use exclusive mode in combination with eventSync.</param>
            <param name="latency">Latency of the capture specified in milliseconds.</param>
            <param name="captureThreadPriority">ThreadPriority of the capturethread which runs in background and provides the audiocapture itself.</param>
            <param name="defaultFormat">The default WaveFormat to use for the capture. If this parameter is set to null, the best available format will be chosen automatically.</param>
        </member>
        <member name="M:CSCore.SoundIn.WasapiCapture.#ctor(System.Boolean,CSCore.CoreAudioAPI.AudioClientShareMode,System.Int32,CSCore.WaveFormat,System.Threading.ThreadPriority,System.Threading.SynchronizationContext)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.SoundIn.WasapiCapture"/> class.
            </summary>
            <param name="eventSync">True, to use eventsynchronization instead of a simple loop and sleep behavior. Don't use this in combination with exclusive mode.</param>
            <param name="shareMode">Specifies how to open the audio device. Note that if exclusive mode is used, the device can only be used once on the whole system. Don't use exclusive mode in combination with eventSync.</param>
            <param name="latency">Latency of the capture specified in milliseconds.</param>
            <param name="captureThreadPriority">ThreadPriority of the capturethread which runs in background and provides the audiocapture itself.</param>
            <param name="defaultFormat">The default WaveFormat to use for the capture. If this parameter is set to null, the best available format will be chosen automatically.</param>
            <param name="synchronizationContext">The <see cref="T:System.Threading.SynchronizationContext"/> to use to fire events on.</param>
            <exception cref="T:System.PlatformNotSupportedException">The current platform does not support Wasapi. For more details see: <see cref="P:CSCore.SoundIn.WasapiCapture.IsSupportedOnCurrentPlatform"/>.</exception>
            <exception cref="T:System.ArgumentException">The <paramref name="eventSync"/> parameter is set to true while the <paramref name="shareMode"/> is set to <see cref="F:CSCore.CoreAudioAPI.AudioClientShareMode.Exclusive"/>.</exception>
        </member>
        <member name="M:CSCore.SoundIn.WasapiCapture.Initialize">
            <summary>
            Initializes WasapiCapture and prepares all resources for recording.
            Note that properties like Device, etc. won't affect WasapiCapture after calling Initialize.
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.WasapiCapture.Start">
            <summary>
            Start recording.
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.WasapiCapture.Stop">
            <summary>
            Stop recording.
            </summary>
        </member>
        <member name="P:CSCore.SoundIn.WasapiCapture.RecordingState">
            <summary>
            Gets the RecordingState.
            </summary>
        </member>
        <member name="P:CSCore.SoundIn.WasapiCapture.Device">
            <summary>
            Gets or sets the capture device to use.
            Set this property before calling Initialize.
            </summary>
        </member>
        <member name="P:CSCore.SoundIn.WasapiCapture.WaveFormat">
            <summary>
            Gets the OutputFormat.
            </summary>
        </member>
        <member name="P:CSCore.SoundIn.WasapiCapture.DebuggingId">
            <summary>
            Random ID based on internal audioclients memory address for debugging purposes. 
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.WasapiCapture.GetDefaultDevice">
            <summary>
            Returns the default device.
            </summary>
            <returns>The default device.</returns>
        </member>
        <member name="M:CSCore.SoundIn.WasapiCapture.GetStreamFlags">
            <summary>
            Returns the stream flags to use for the audioclient initialization.
            </summary>
            <returns>The stream flags to use for the audioclient initialization.</returns>
        </member>
        <member name="M:CSCore.SoundIn.WasapiCapture.Dispose">
            <summary>
            Stops the capture and frees all resources.
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.WasapiCapture.Dispose(System.Boolean)">
            <summary>
            Releases unmanaged and - optionally - managed resources.
            </summary>
            <param name="disposing"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
        </member>
        <member name="M:CSCore.SoundIn.WasapiCapture.Finalize">
            <summary>
            Finalizes an instance of the <see cref="T:CSCore.SoundIn.WasapiCapture"/> class.
            </summary>
        </member>
        <member name="T:CSCore.SoundIn.WasapiLoopbackCapture">
            <summary>
            Provides audio loopback capture through Wasapi. That enables a client to capture the audio stream that is being played by a rendering endpoint device (e.g. speakers, headset, etc.).
            Minimum supported OS: Windows Vista (see <see cref="P:CSCore.SoundIn.WasapiCapture.IsSupportedOnCurrentPlatform"/> property).
            Read more about loopback recording here: http://msdn.microsoft.com/en-us/library/windows/desktop/dd316551(v=vs.85).aspx.
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.WasapiLoopbackCapture.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.SoundIn.WasapiLoopbackCapture"/> class.
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.WasapiLoopbackCapture.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.SoundIn.WasapiLoopbackCapture"/> class with the <paramref name="latency"/> specified in milliseconds.
            </summary>
            <param name="latency">The latency specified in milliseconds. The default value is 100ms.</param>
        </member>
        <member name="M:CSCore.SoundIn.WasapiLoopbackCapture.#ctor(System.Int32,CSCore.WaveFormat)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.SoundIn.WasapiLoopbackCapture"/> class with the <paramref name="latency"/> specified in milliseconds
            and the <paramref name="defaultFormat"/> to use.
            </summary>
            <param name="latency">The latency specified in milliseconds. The default value is 100ms.</param>
            <param name="defaultFormat">The default <see cref="T:CSCore.WaveFormat"/> to use. 
            Note: The <paramref name="defaultFormat"/> is just a suggestion. If the driver does not support this format, 
            any other format will be picked. After calling <see cref="M:CSCore.SoundIn.WasapiCapture.Initialize"/>, the <see cref="P:CSCore.SoundIn.WasapiCapture.WaveFormat"/> 
            property will return the actually picked <see cref="T:CSCore.WaveFormat"/>.</param>
        </member>
        <member name="M:CSCore.SoundIn.WasapiLoopbackCapture.#ctor(System.Int32,CSCore.WaveFormat,System.Threading.ThreadPriority)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.SoundIn.WasapiLoopbackCapture"/> class with the <paramref name="latency"/> specified in milliseconds,
            the <paramref name="defaultFormat"/> to use and the <see cref="T:System.Threading.ThreadPriority"/> of the internal capture thread.
            </summary>
            <param name="latency">The latency specified in milliseconds. The default value is 100ms.</param>
            <param name="defaultFormat">The default <see cref="T:CSCore.WaveFormat"/> to use. 
            Note: The <paramref name="defaultFormat"/> is just a suggestion. If the driver does not support this format, 
            any other format will be picked. After calling <see cref="M:CSCore.SoundIn.WasapiCapture.Initialize"/>, the <see cref="P:CSCore.SoundIn.WasapiCapture.WaveFormat"/> 
            property will return the actually picked <see cref="T:CSCore.WaveFormat"/>.</param>
            <param name="captureThreadPriority">The <see cref="T:System.Threading.ThreadPriority"/>, the internal capture thread will run on.</param>
        </member>
        <member name="M:CSCore.SoundIn.WasapiLoopbackCapture.GetDefaultDevice">
            <summary>
            Returns the default rendering device.
            </summary>
            <returns>Default rendering device.</returns>
        </member>
        <member name="M:CSCore.SoundIn.WasapiLoopbackCapture.GetStreamFlags">
            <summary>
            Returns the stream flags to use for the audioclient initialization.
            </summary>
            <returns>
            The stream flags to use for the audioclient initialization.
            </returns>
        </member>
        <member name="T:CSCore.SoundIn.WaveIn">
            <summary>
            Captures audio from a audio device (through WaveIn Apis).
            </summary>
        </member>
        <member name="P:CSCore.SoundIn.WaveIn.Device">
            <summary>
                Gets or sets the <see cref="P:CSCore.SoundIn.WaveIn.Device" /> which should be used for capturing audio.
                The <see cref="P:CSCore.SoundIn.WaveIn.Device" /> property has to be set before initializing. The systems default recording device is used
                as default value
                of the <see cref="P:CSCore.SoundIn.WaveIn.Device" /> property.
            </summary>
            <exception cref="T:System.ArgumentNullException">The value must not be null.</exception>
        </member>
        <member name="P:CSCore.SoundIn.WaveIn.Latency">
            <summary>
                Gets or sets the latency of the wavein specified in milliseconds.
                The <see cref="P:CSCore.SoundIn.WaveIn.Latency" /> property has to be set before initializing.
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.WaveIn.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.SoundIn.WaveIn"/> class using the a default format (44.1kHz, 16 bit, 2 channels, pcm).
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.WaveIn.#ctor(CSCore.WaveFormat)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.SoundIn.WaveIn"/> class.
            </summary>
            <param name="waveFormat">The default format to use. The final format must not equal the specified <paramref name="waveFormat"/>.</param>
            <exception cref="T:System.ArgumentNullException">waveFormat</exception>
        </member>
        <member name="E:CSCore.SoundIn.WaveIn.DataAvailable">
            <summary>
            Occurs when new data got captured and is available.
            </summary>
        </member>
        <member name="E:CSCore.SoundIn.WaveIn.Stopped">
            <summary>
            Occurs when the recording stopped.
            </summary>
        </member>
        <member name="P:CSCore.SoundIn.WaveIn.WaveFormat">
            <summary>
            Gets the format of the captured audio data.
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.WaveIn.Initialize">
            <summary>
            Initializes the <see cref="T:CSCore.SoundIn.WaveIn" /> instance.
            </summary>
            <exception cref="T:System.InvalidOperationException"><see cref="P:CSCore.SoundIn.WaveIn.RecordingState"/> has to be <see cref="F:CSCore.SoundIn.RecordingState.Stopped"/>. Call <see cref="M:CSCore.SoundIn.WaveIn.Stop"/> to stop.</exception>
        </member>
        <member name="M:CSCore.SoundIn.WaveIn.Start">
            <summary>
            Starts recording.
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.WaveIn.Stop">
            <summary>
            Stops recording.
            </summary>
        </member>
        <member name="P:CSCore.SoundIn.WaveIn.RecordingState">
            <summary>
            Gets the current <see cref="T:CSCore.SoundIn.RecordingState" />.
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.WaveIn.CreateWaveInHandle(CSCore.WaveFormat)">
            <summary>
                Creates and returns the WaveOut handle.
            </summary>
            <param name="waveFormat">The waveformat to use.</param>
            <returns>A valid WaveOut handle.</returns>
        </member>
        <member name="M:CSCore.SoundIn.WaveIn.Dispose">
            <summary>
            Disposes and stops the <see cref="T:CSCore.SoundIn.WaveIn"/> instance.
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.WaveIn.Dispose(System.Boolean)">
            <summary>
            Disposes and stops the <see cref="T:CSCore.SoundIn.WaveIn"/> instance.
            </summary>
            <param name="disposing"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
        </member>
        <member name="M:CSCore.SoundIn.WaveIn.Finalize">
            <summary>
            Finalizes an instance of the <see cref="T:CSCore.SoundIn.WaveIn"/> class.
            </summary>
        </member>
        <member name="T:CSCore.SoundIn.WaveInDevice">
            <summary>
            Represents a <see cref="T:CSCore.SoundIn.WaveIn"/>-device.
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.WaveInDevice.EnumerateDevices">
            <summary>
            Enumerates the WaveIn devices installed on the system.
            </summary>
            <returns>A an iterator to iterate through all enumerated WaveIn devices.</returns>
        </member>
        <member name="P:CSCore.SoundIn.WaveInDevice.DefaultDevice">
            <summary>
            Gets the default WaveOut device.
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.WaveInDevice.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.SoundIn.WaveInDevice"/> class.
            </summary>
            <param name="deviceId">The device identifier.</param>
        </member>
        <member name="P:CSCore.SoundIn.WaveInDevice.DeviceId">
            <summary>
            Gets the device identifier.
            </summary>
        </member>
        <member name="P:CSCore.SoundIn.WaveInDevice.Name">
            <summary>
            Gets the name of the device.
            </summary>
        </member>
        <member name="P:CSCore.SoundIn.WaveInDevice.DriverVersion">
            <summary>
            Gets the version of the driver.
            </summary>
        </member>
        <member name="P:CSCore.SoundIn.WaveInDevice.SupportedFormatsFlags">
            <summary>
            Gets the standard formats that are supported.
            </summary>
        </member>
        <member name="P:CSCore.SoundIn.WaveInDevice.SupportedFormats">
            <summary>
            Gets the supported formats.
            </summary>
        </member>
        <member name="T:CSCore.SoundIn.DataAvailableEventArgs">
            <summary>
            Provides data for the <see cref="E:CSCore.SoundIn.ISoundIn.DataAvailable"/> event.
            </summary>
        </member>
        <member name="P:CSCore.SoundIn.DataAvailableEventArgs.Data">
            <summary>
            Gets the available data.
            </summary>
        </member>
        <member name="P:CSCore.SoundIn.DataAvailableEventArgs.ByteCount">
            <summary>
            Gets the number of available bytes.
            </summary>
        </member>
        <member name="P:CSCore.SoundIn.DataAvailableEventArgs.Offset">
            <summary>
            Gets the zero-based offset inside of the <see cref="P:CSCore.SoundIn.DataAvailableEventArgs.Data"/> array at which the available data starts.
            </summary>
        </member>
        <member name="P:CSCore.SoundIn.DataAvailableEventArgs.Format">
            <summary>
            Gets the format of the available <see cref="P:CSCore.SoundIn.DataAvailableEventArgs.Data"/>.
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.DataAvailableEventArgs.#ctor(System.Byte[],System.Int32,System.Int32,CSCore.WaveFormat)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.SoundIn.DataAvailableEventArgs"/> class.
            </summary>
            <param name="data">A byte array which contains the data.</param>
            <param name="offset">The offset inside of the <see cref="P:CSCore.SoundIn.DataAvailableEventArgs.Data"/> array at which the available data starts.</param>
            <param name="bytecount">The number of available bytes.</param>
            <param name="format">The format of the <paramref name="data"/>.</param>
            <exception cref="T:System.ArgumentNullException">
            data
            or
            format
            </exception>
            <exception cref="T:System.ArgumentOutOfRangeException">
            offset must not be less than zero. 
            bytecount must not be or equal to zero.
            </exception>
        </member>
        <member name="T:CSCore.SoundIn.ISoundIn">
            <summary>
            Defines a interface for capturing audio. 
            </summary>
        </member>
        <member name="E:CSCore.SoundIn.ISoundIn.DataAvailable">
            <summary>
            Occurs when new data got captured and is available. 
            </summary>
        </member>
        <member name="E:CSCore.SoundIn.ISoundIn.Stopped">
            <summary>
            Occurs when the recording stopped.
            </summary>
        </member>
        <member name="P:CSCore.SoundIn.ISoundIn.WaveFormat">
            <summary>
            Gets the format of the captured audio data.
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.ISoundIn.Initialize">
            <summary>
            Initializes the <see cref="T:CSCore.SoundIn.ISoundIn"/> instance.
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.ISoundIn.Start">
            <summary>
            Starts capturing.
            </summary>
        </member>
        <member name="M:CSCore.SoundIn.ISoundIn.Stop">
            <summary>
            Stops capturing. 
            </summary>
        </member>
        <member name="P:CSCore.SoundIn.ISoundIn.RecordingState">
            <summary>
            Gets the current <see cref="T:CSCore.SoundIn.RecordingState"/>.
            </summary>
        </member>
        <member name="T:CSCore.SoundOut.DirectSoundOut">
            <summary>
                Provides audioplayback through DirectSound.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.DirectSoundOut.#ctor">
            <summary>
                Initializes an new instance of <see cref="T:CSCore.SoundOut.DirectSoundOut" /> class.
                Latency = 100.
                EventSyncContext = SynchronizationContext.Current.
                PlaybackThreadPriority = AboveNormal.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.DirectSoundOut.#ctor(System.Int32)">
            <summary>
                Initializes an new instance of <see cref="T:CSCore.SoundOut.DirectSoundOut" /> class.
                EventSyncContext = SynchronizationContext.Current.
                PlaybackThreadPriority = AboveNormal.
            </summary>
            <param name="latency">Latency of the playback specified in milliseconds.</param>
        </member>
        <member name="M:CSCore.SoundOut.DirectSoundOut.#ctor(System.Int32,System.Threading.ThreadPriority)">
            <summary>
                Initializes an new instance of <see cref="T:CSCore.SoundOut.DirectSoundOut" /> class.
                EventSyncContext = SynchronizationContext.Current.
            </summary>
            <param name="latency">Latency of the playback specified in milliseconds.</param>
            <param name="playbackThreadPriority">
                ThreadPriority of the playbackthread which runs in background and feeds the device
                with data.
            </param>
        </member>
        <member name="M:CSCore.SoundOut.DirectSoundOut.#ctor(System.Int32,System.Threading.ThreadPriority,System.Threading.SynchronizationContext)">
            <summary>
                Initializes an new instance of <see cref="T:CSCore.SoundOut.DirectSoundOut" /> class.
            </summary>
            <param name="latency">Latency of the playback specified in milliseconds.</param>
            <param name="playbackThreadPriority">
                ThreadPriority of the playbackthread which runs in background and feeds the device
                with data.
            </param>
            <param name="eventSyncContext">
                The synchronizationcontext which is used to raise any events like the "Stopped"-event.
                If the passed value is not null, the events will be called async through the SynchronizationContext.Post() method.
            </param>
        </member>
        <member name="P:CSCore.SoundOut.DirectSoundOut.DebuggingId">
            <summary>
                Random ID based on the internal directsounds memory address for debugging purposes.
            </summary>
        </member>
        <member name="P:CSCore.SoundOut.DirectSoundOut.Latency">
            <summary>
                Latency of the playback specified in milliseconds.
            </summary>
        </member>
        <member name="P:CSCore.SoundOut.DirectSoundOut.Device">
            <summary>
                Gets or sets the device to use for the playing the waveform-audio data. Note that the <see cref="M:CSCore.SoundOut.DirectSoundOut.Initialize(CSCore.IWaveSource)" />
                method has to get called
            </summary>
        </member>
        <member name="E:CSCore.SoundOut.DirectSoundOut.Stopped">
            <summary>
                Occurs when the playback gets stopped.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.DirectSoundOut.Initialize(CSCore.IWaveSource)">
            <summary>
                Initializes <see cref="T:CSCore.SoundOut.DirectSoundOut" /> and prepares all resources for playback.
                Note that all properties like <see cref="P:CSCore.SoundOut.DirectSoundOut.Device" />, <see cref="P:CSCore.SoundOut.DirectSoundOut.Latency" />,... won't affect
                <see cref="T:CSCore.SoundOut.DirectSoundOut" /> after calling <see cref="M:CSCore.SoundOut.DirectSoundOut.Initialize(CSCore.IWaveSource)" />.
            </summary>
            <param name="source">The source to prepare for playback.</param>
        </member>
        <member name="M:CSCore.SoundOut.DirectSoundOut.Play">
            <summary>
                Starts the playback.
                Note: <see cref="M:CSCore.SoundOut.DirectSoundOut.Initialize(CSCore.IWaveSource)" /> has to get called before calling Play.
                If PlaybackState is Paused, Resume() will be called automatically.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.DirectSoundOut.Stop">
            <summary>
                Stops the playback and frees all allocated resources.
                After calling <see cref="M:CSCore.SoundOut.DirectSoundOut.Stop" /> the caller has to call <see cref="M:CSCore.SoundOut.DirectSoundOut.Initialize(CSCore.IWaveSource)" /> again before another playback
                can be started.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.DirectSoundOut.Resume">
            <summary>
                Resumes the paused playback.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.DirectSoundOut.Pause">
            <summary>
                Pauses the playback.
            </summary>
        </member>
        <member name="P:CSCore.SoundOut.DirectSoundOut.PlaybackState">
            <summary>
                Gets the current <see cref="T:CSCore.SoundOut.PlaybackState" /> of the playback.
            </summary>
        </member>
        <member name="P:CSCore.SoundOut.DirectSoundOut.Volume">
            <summary>
                The volume of the playback. Valid values are from 0.0 (0%) to 1.0 (100%).
            </summary>
            <remarks>
                Note that the if you for example set a volume of 33% => 0.33, the actual volume will be something like 0.33039999.
            </remarks>
        </member>
        <member name="P:CSCore.SoundOut.DirectSoundOut.WaveSource">
            <summary>
                The currently initialized source.
                To change the WaveSource property, call <see cref="M:CSCore.SoundOut.DirectSoundOut.Initialize(CSCore.IWaveSource)" />.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.DirectSoundOut.Dispose">
            <summary>
                Disposes the <see cref="T:CSCore.SoundOut.DirectSoundOut" /> instance and stops the playbacks.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.DirectSoundOut.Dispose(System.Boolean)">
            <summary>
                Disposes and stops the <see cref="T:CSCore.SoundOut.DirectSoundOut" /> instance.
            </summary>
            <param name="disposing">
                True to release both managed and unmanaged resources; false to release only unmanaged
                resources.
            </param>
        </member>
        <member name="M:CSCore.SoundOut.DirectSoundOut.Finalize">
            <summary>
                Destructor which calls the <see cref="M:CSCore.SoundOut.DirectSoundOut.Dispose(System.Boolean)" /> method.
            </summary>
        </member>
        <member name="T:CSCore.SoundOut.MMInterop.WaveCallback">
            <summary>
            http: //msdn.microsoft.com/en-us/library/dd743869%28VS.85%29.aspx
            </summary>
        </member>
        <member name="T:CSCore.SoundOut.MMInterop.WaveHeaderFlags">
            <summary>
            WaveHeaderFlags: http://msdn.microsoft.com/en-us/library/aa909814.aspx#1
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MMInterop.WaveHeader.dataBuffer">
            <summary>
            pointer to locked data buffer (lpData)
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MMInterop.WaveHeader.bufferLength">
            <summary>
            length of data buffer (dwBufferLength)
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MMInterop.WaveHeader.bytesRecorded">
            <summary>
            used for input only (dwBytesRecorded)
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MMInterop.WaveHeader.userData">
            <summary>
            for client's use (dwUser)
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MMInterop.WaveHeader.flags">
            <summary>
            assorted flags (dwFlags)
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MMInterop.WaveHeader.loops">
            <summary>
            loop control counter (dwLoops)
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MMInterop.WaveHeader.next">
            <summary>
            PWaveHdr, reserved for driver (lpNext)
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MMInterop.WaveHeader.reserved">
            <summary>
            reserved for driver
            </summary>
        </member>
        <member name="T:CSCore.SoundOut.MMInterop.WaveMsg">
            <summary>
            uMsg
            http: //msdn.microsoft.com/en-us/library/dd743869%28VS.85%29.aspx
            </summary>
        </member>
        <member name="T:CSCore.SoundOut.MmDeviceFormats">
            <summary>
            Defines standard formats for MmDevices.
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format1M08">
            <summary>
            11.025 kHz, Mono, 8-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format1S08">
            <summary>
            11.025 kHz, Stereo, 8-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format1M16">
            <summary>
            11.025 kHz, Mono, 16-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format1S16">
            <summary>
            11.025 kHz, Stereo, 16-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format2M08">
            <summary>
            22.05 kHz, Mono, 8-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format2S08">
            <summary>
            22.05 kHz, Stereo, 8-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format2M16">
            <summary>
            22.05 kHz, Mono, 16-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format2S16">
            <summary>
            22.05 kHz, Stereo, 16-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format4M08">
            <summary>
            44.1 kHz, Mono, 8-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format4S08">
            <summary>
            44.1 kHz, Stereo, 8-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format4M16">
            <summary>
            44.1 kHz, Mono, 16-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format4S16">
            <summary>
            44.1 kHz, Stereo, 16-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format44M08">
            <summary>
            44.1 kHz, Mono, 8-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format44S08">
            <summary>
            44.1 kHz, Stereo, 8-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format44M16">
            <summary>
            44.1 kHz, Mono, 16-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format44S16">
            <summary>
            44.1 kHz, Stereo, 16-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format48M08">
            <summary>
            48 kHz, Mono, 8-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format48S08">
            <summary>
            48 kHz, Stereo, 8-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format48M16">
            <summary>
            48 kHz, Mono, 16-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format48S16">
            <summary>
            48 kHz, Stereo, 16-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format96M08">
            <summary>
            96 kHz, Mono, 8-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format96S08">
            <summary>
            96 kHz, Stereo, 8-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format96M16">
            <summary>
            96 kHz, Mono, 16-bit
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceFormats.Format96S16">
            <summary>
            96 kHz, Stereo, 16-bit
            </summary>
        </member>
        <member name="T:CSCore.SoundOut.MmDeviceSupported">
            <summary>
            Defines functionalities supported by a device.
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceSupported.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceSupported.Pitch">
            <summary>
            Supports pitch control.
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceSupported.PlaybackRate">
            <summary>
            Supports playback rate control.
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceSupported.Volume">
            <summary>
            Supports volume control.
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceSupported.LeftRightVolume">
            <summary>
            Supports separate left and right volume control.
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceSupported.Synchronous">
            <summary>
            The driver is synchronous and will block while playing a buffer. 
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceSupported.SampleAccurate">
            <summary>
            Returns sample-accurate position information.
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.MmDeviceSupported.DirectSound">
            <summary>
            DirectSound
            </summary>
            <remarks>Not documented on msdn.</remarks>
        </member>
        <member name="T:CSCore.SoundOut.PlaybackStoppedEventArgs">
            <summary>
                Provides data for the <see cref="E:CSCore.SoundOut.ISoundOut.Stopped" /> event.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.PlaybackStoppedEventArgs.#ctor">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.SoundOut.PlaybackStoppedEventArgs" /> class.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.PlaybackStoppedEventArgs.#ctor(System.Exception)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.SoundOut.PlaybackStoppedEventArgs" /> class.
            </summary>
            <param name="exception">The associated exception. Can be null.</param>
        </member>
        <member name="T:CSCore.SoundOut.WasapiOut">
            <summary>
                Provides audioplayback through Wasapi.
                Minimum supported OS: Windows Vista (see <see cref="P:CSCore.SoundOut.WasapiOut.IsSupportedOnCurrentPlatform" /> property).
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.WasapiOut.#ctor">
            <summary>
                Initializes an new instance of <see cref="T:CSCore.SoundOut.WasapiOut" /> class.
                EventSyncContext = SynchronizationContext.Current.
                PlaybackThreadPriority = AboveNormal.
                Latency = 100ms.
                EventSync = False.
                ShareMode = Shared.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.WasapiOut.#ctor(System.Boolean,CSCore.CoreAudioAPI.AudioClientShareMode,System.Int32)">
            <summary>
                Initializes an new instance of <see cref="T:CSCore.SoundOut.WasapiOut" /> class.
                EventSyncContext = SynchronizationContext.Current.
                PlaybackThreadPriority = AboveNormal.
            </summary>
            <param name="eventSync">True, to use eventsynchronization instead of a simple loop and sleep behavior.</param>
            <param name="shareMode">
                Specifies how to open the audio device. Note that if exclusive mode is used, only one single
                playback for the specified device is possible at once.
            </param>
            <param name="latency">Latency of the playback specified in milliseconds.</param>
        </member>
        <member name="M:CSCore.SoundOut.WasapiOut.#ctor(System.Boolean,CSCore.CoreAudioAPI.AudioClientShareMode,System.Int32,System.Threading.ThreadPriority)">
            <summary>
                Initializes an new instance of <see cref="T:CSCore.SoundOut.WasapiOut" /> class.
                EventSyncContext = SynchronizationContext.Current.
            </summary>
            <param name="eventSync">True, to use eventsynchronization instead of a simple loop and sleep behavior.</param>
            <param name="shareMode">
                Specifies how to open the audio device. Note that if exclusive mode is used, only one single
                playback for the specified device is possible at once.
            </param>
            <param name="latency">Latency of the playback specified in milliseconds.</param>
            <param name="playbackThreadPriority">
                ThreadPriority of the playbackthread which runs in background and feeds the device
                with data.
            </param>
        </member>
        <member name="M:CSCore.SoundOut.WasapiOut.#ctor(System.Boolean,CSCore.CoreAudioAPI.AudioClientShareMode,System.Int32,System.Threading.ThreadPriority,System.Threading.SynchronizationContext)">
            <summary>
                Initializes an new instance of <see cref="T:CSCore.SoundOut.WasapiOut" /> class.
            </summary>
            <param name="eventSync">True, to use eventsynchronization instead of a simple loop and sleep behavior.</param>
            <param name="shareMode">
                Specifies how to open the audio device. Note that if exclusive mode is used, only one single
                playback for the specified device is possible at once.
            </param>
            <param name="latency">Latency of the playback specified in milliseconds.</param>
            <param name="playbackThreadPriority">
                <see cref="T:System.Threading.ThreadPriority"/> of the playbackthread which runs in background and feeds the device
                with data.
            </param>
            <param name="eventSyncContext">
                The <see cref="T:System.Threading.SynchronizationContext"/> which is used to raise any events like the <see cref="E:CSCore.SoundOut.WasapiOut.Stopped"/>-event.
                If the passed value is not null, the events will be called async through the <see cref="M:System.Threading.SynchronizationContext.Post(System.Threading.SendOrPostCallback,System.Object)"/> method.
            </param>
        </member>
        <member name="P:CSCore.SoundOut.WasapiOut.IsSupportedOnCurrentPlatform">
            <summary>
                Gets a value which indicates whether Wasapi is supported on the current Platform. True means that the current
                platform supports <see cref="T:CSCore.SoundOut.WasapiOut" />; False means that the current platform does not support
                <see cref="T:CSCore.SoundOut.WasapiOut" />.
            </summary>
        </member>
        <member name="P:CSCore.SoundOut.WasapiOut.EnableDwmMmcssScheduling">
            <summary>
            Sets a value indicating whether the Desktop Window Manager (DWM) has to opt in to or out of Multimedia Class Schedule Service (MMCSS)
            scheduling while the current process is alive.
            </summary>
            <value>
            <c>True</c> to instruct the Desktop Window Manager to participate in MMCSS scheduling; <c>False</c> to opt out or end participation in MMCSS scheduling.
            </value>
            <remarks>DWM will be scheduled by the MMCSS as long as any process that called DwmEnableMMCSS to enable MMCSS is active and has not previously called DwmEnableMMCSS to disable MMCSS.</remarks>
        </member>
        <member name="P:CSCore.SoundOut.WasapiOut.StreamRoutingOptions">
            <summary>
                Gets or sets the stream routing options.
            </summary>
            <value>
                The stream routing options. 
            </value>
            <remarks>
                The <see cref="F:CSCore.SoundOut.StreamRoutingOptions.OnDefaultDeviceChange"/> flag can only be used
                if the <see cref="P:CSCore.SoundOut.WasapiOut.Device"/> is the default device.
                That behavior can be changed by overriding the <see cref="M:CSCore.SoundOut.WasapiOut.UpdateStreamRoutingOptions"/> method.
            </remarks>
        </member>
        <member name="P:CSCore.SoundOut.WasapiOut.Device">
            <summary>
                Gets or sets the <see cref="P:CSCore.SoundOut.WasapiOut.Device" /> which should be used for playback.
                The <see cref="P:CSCore.SoundOut.WasapiOut.Device" /> property has to be set before initializing. The systems default playback device is used
                as default value
                of the <see cref="P:CSCore.SoundOut.WasapiOut.Device" /> property.
            </summary>
            <remarks>
                Make sure to set only activated render devices.
            </remarks>
        </member>
        <member name="P:CSCore.SoundOut.WasapiOut.DebuggingId">
            <summary>
                Gets a random ID based on internal audioclients memory address for debugging purposes.
            </summary>
        </member>
        <member name="P:CSCore.SoundOut.WasapiOut.Latency">
            <summary>
                Gets or sets the latency of the playback specified in milliseconds.
            The <see cref="P:CSCore.SoundOut.WasapiOut.Latency" /> property has to be set before initializing.
            </summary>
        </member>
        <member name="E:CSCore.SoundOut.WasapiOut.Stopped">
            <summary>
                Occurs when the playback stops.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.WasapiOut.Initialize(CSCore.IWaveSource)">
            <summary>
                Initializes WasapiOut instance and prepares all resources for playback.
                Note that properties like <see cref="P:CSCore.SoundOut.WasapiOut.Device" />, <see cref="P:CSCore.SoundOut.WasapiOut.Latency" />,... won't affect WasapiOut after calling
                <see cref="M:CSCore.SoundOut.WasapiOut.Initialize(CSCore.IWaveSource)" />.
            </summary>
            <param name="source">The source to prepare for playback.</param>
        </member>
        <member name="M:CSCore.SoundOut.WasapiOut.Play">
            <summary>
                Starts the playback.
                Note: <see cref="M:CSCore.SoundOut.WasapiOut.Initialize(CSCore.IWaveSource)" /> has to get called before calling Play.
                If <see cref="P:CSCore.SoundOut.WasapiOut.PlaybackState" /> is <see cref="F:CSCore.SoundOut.PlaybackState.Paused" />, <see cref="M:CSCore.SoundOut.WasapiOut.Resume" /> will be
                called automatically.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.WasapiOut.Stop">
            <summary>
                Stops the playback and frees most of allocated resources.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.WasapiOut.Resume">
            <summary>
                Resumes the paused playback.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.WasapiOut.Pause">
            <summary>
                Pauses the playback.
            </summary>
        </member>
        <member name="P:CSCore.SoundOut.WasapiOut.PlaybackState">
            <summary>
                Gets the current <see cref="T:CSCore.SoundOut.PlaybackState"/> of the playback.
            </summary>
        </member>
        <member name="P:CSCore.SoundOut.WasapiOut.Volume">
            <summary>
                Gets or sets the volume of the playback.
                Valid values are in the range from 0.0 (0%) to 1.0 (100%).
            </summary>
        </member>
        <member name="P:CSCore.SoundOut.WasapiOut.WaveSource">
            <summary>
                The currently initialized source.
                To change the WaveSource property, call <see cref="M:CSCore.SoundOut.WasapiOut.Initialize(CSCore.IWaveSource)"/>.
            </summary>
            <remarks>
                The value of the WaveSource might not be the value which was passed to the <see cref="M:CSCore.SoundOut.WasapiOut.Initialize(CSCore.IWaveSource)"/> method, because
                WasapiOut (depending on the waveformat of the source) has to use a DmoResampler.
            </remarks>
        </member>
        <member name="P:CSCore.SoundOut.WasapiOut.UseChannelMixingMatrices">
            <summary>
            Gets or sets a value indicating whether <see cref="T:CSCore.SoundOut.WasapiOut"/> should try to use all available channels.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.WasapiOut.Dispose">
            <summary>
                Stops the playback (if playing) and cleans up all used resources.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.WasapiOut.UpdateStreamRoutingOptions">
            <summary>
            Updates the stream routing options.
            </summary>
            <remarks>
            If the current <see cref="P:CSCore.SoundOut.WasapiOut.Device"/> is not the default device, 
            the <see cref="F:CSCore.SoundOut.StreamRoutingOptions.OnDefaultDeviceChange"/> flag will be removed.
            </remarks>
        </member>
        <member name="M:CSCore.SoundOut.WasapiOut.Dispose(System.Boolean)">
            <summary>
            Disposes and stops the <see cref="T:CSCore.SoundOut.WasapiOut"/> instance.
            </summary>
            <param name="disposing">True to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
        </member>
        <member name="M:CSCore.SoundOut.WasapiOut.Finalize">
            <summary>
            Finalizes an instance of the <see cref="T:CSCore.SoundOut.WasapiOut"/> class.
            </summary>
        </member>
        <member name="T:CSCore.SoundOut.StreamRoutingOptions">
            <summary>
            Defines options for wasapi-streamrouting.
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.StreamRoutingOptions.Disabled">
            <summary>
            Disable stream routing.
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.StreamRoutingOptions.OnFormatChange">
            <summary>
            Use stream routing when the device format has changed.
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.StreamRoutingOptions.OnDefaultDeviceChange">
            <summary>
            Use stream routing when the default device has changed.
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.StreamRoutingOptions.OnDeviceDisconnect">
            <summary>
            Use stream routing when the current device was disconnected.
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.StreamRoutingOptions.All">
            <summary>
            Combination of <see cref="F:CSCore.SoundOut.StreamRoutingOptions.OnFormatChange"/>, <see cref="F:CSCore.SoundOut.StreamRoutingOptions.OnDefaultDeviceChange"/> and <see cref="F:CSCore.SoundOut.StreamRoutingOptions.OnDeviceDisconnect"/>.
            </summary>
        </member>
        <member name="T:CSCore.SoundOut.WaveOut">
            <summary>
                Provides audioplayback through the WaveOut api.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.WaveOut.#ctor">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.SoundOut.WaveOut" /> class with a latency of 100 ms.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.WaveOut.#ctor(System.Int32)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.SoundOut.WaveOut" /> class.
            </summary>
            <param name="latency">Latency of the playback specified in milliseconds.</param>
            <exception cref="T:System.ArgumentOutOfRangeException">latency must not be less or equal to zero.</exception>
        </member>
        <member name="P:CSCore.SoundOut.WaveOut.Device">
            <summary>
                Gets or sets the <see cref="P:CSCore.SoundOut.WaveOut.Device" /> which should be used for playback.
                The <see cref="P:CSCore.SoundOut.WaveOut.Device" /> property has to be set before initializing. The systems default playback device is used
                as default value
                of the <see cref="P:CSCore.SoundOut.WaveOut.Device" /> property.
            </summary>
            <exception cref="T:System.ArgumentNullException">The value must not be null.</exception>
        </member>
        <member name="P:CSCore.SoundOut.WaveOut.Latency">
            <summary>
                Gets or sets the latency of the playback specified in milliseconds.
                The <see cref="P:CSCore.SoundOut.WaveOut.Latency" /> property has to be set before initializing.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.WaveOut.Play">
            <summary>
                Starts the playback.
                Note: <see cref="M:CSCore.SoundOut.WaveOut.Initialize(CSCore.IWaveSource)" /> has to get called before calling Play.
                If <see cref="P:CSCore.SoundOut.WaveOut.PlaybackState" /> is <see cref="F:CSCore.SoundOut.PlaybackState.Paused" />, <see cref="M:CSCore.SoundOut.WaveOut.Resume" /> will be
                called automatically.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.WaveOut.Pause">
            <summary>
                Pauses the playback.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.WaveOut.Resume">
            <summary>
                Resumes the paused playback.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.WaveOut.Stop">
            <summary>
                Stops the playback and frees most of allocated resources.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.WaveOut.Initialize(CSCore.IWaveSource)">
            <summary>
                Initializes WaveOut instance and prepares all resources for playback.
                Note that properties like <see cref="P:CSCore.SoundOut.WaveOut.Device" />, <see cref="P:CSCore.SoundOut.WaveOut.Latency" />,... won't affect WaveOut after calling
                <see cref="M:CSCore.SoundOut.WaveOut.Initialize(CSCore.IWaveSource)" />.
            </summary>
            <param name="source">The source to prepare for playback.</param>
        </member>
        <member name="P:CSCore.SoundOut.WaveOut.Volume">
            <summary>
                Gets or sets the volume of the playback.
                Valid values are in the range from 0.0 (0%) to 1.0 (100%).
            </summary>
        </member>
        <member name="P:CSCore.SoundOut.WaveOut.WaveSource">
            <summary>
                The currently initialized source.
                To change the WaveSource property, call <see cref="M:CSCore.SoundOut.WaveOut.Initialize(CSCore.IWaveSource)" />.
            </summary>
            <remarks>
                The value of the WaveSource might not be the value which was passed to the <see cref="M:CSCore.SoundOut.WaveOut.Initialize(CSCore.IWaveSource)" /> method,
                because
                WaveOut uses the <see cref="T:CSCore.Streams.VolumeSource" /> class to control the volume of the playback.
            </remarks>
        </member>
        <member name="P:CSCore.SoundOut.WaveOut.PlaybackState">
            <summary>
                Gets the current <see cref="T:CSCore.SoundOut.PlaybackState" /> of the playback.
            </summary>
        </member>
        <member name="E:CSCore.SoundOut.WaveOut.Stopped">
            <summary>
                Occurs when the playback stops.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.WaveOut.Dispose">
            <summary>
                Stops the playback (if playing) and cleans up all used resources.
            </summary>
        </member>
        <member name="P:CSCore.SoundOut.WaveOut.UseChannelMixingMatrices">
            <summary>
            Gets or sets a value indicating whether <see cref="T:CSCore.SoundOut.WaveOut"/> should try to use all available channels.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.WaveOut.CreateWaveOutHandle(CSCore.WaveFormat)">
            <summary>
                Creates and returns the WaveOut handle.
            </summary>
            <param name="waveFormat">The waveformat to use.</param>
            <returns>A valid WaveOut handle.</returns>
        </member>
        <member name="M:CSCore.SoundOut.WaveOut.Dispose(System.Boolean)">
            <summary>
                Disposes and stops the <see cref="T:CSCore.SoundOut.WaveOut" /> instance.
            </summary>
            <param name="disposing">
                True to release both managed and unmanaged resources; false to release only unmanaged
                resources.
            </param>
        </member>
        <member name="M:CSCore.SoundOut.WaveOut.Finalize">
            <summary>
                Finalizes an instance of the <see cref="T:CSCore.SoundOut.WaveOut" /> class.
            </summary>
        </member>
        <member name="T:CSCore.SoundOut.WaveOutDevice">
            <summary>
            Represents a <see cref="T:CSCore.SoundOut.WaveOut"/>-device.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.WaveOutDevice.EnumerateDevices">
            <summary>
            Enumerates the WaveOut devices installed on the system.
            </summary>
            <returns>A an iterator to iterate through all enumerated WaveOut devices.</returns>
        </member>
        <member name="P:CSCore.SoundOut.WaveOutDevice.DefaultDevice">
            <summary>
            Gets the default WaveOut device.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.WaveOutDevice.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.SoundOut.WaveOutDevice"/> class.
            </summary>
            <param name="deviceId">The device identifier.</param>
        </member>
        <member name="P:CSCore.SoundOut.WaveOutDevice.DeviceId">
            <summary>
            Gets the device identifier.
            </summary>
        </member>
        <member name="P:CSCore.SoundOut.WaveOutDevice.Name">
            <summary>
            Gets the name of the device.
            </summary>
        </member>
        <member name="P:CSCore.SoundOut.WaveOutDevice.DriverSupported">
            <summary>
            Gets the supported functionalities of the device.
            </summary>
        </member>
        <member name="P:CSCore.SoundOut.WaveOutDevice.DriverVersion">
            <summary>
            Gets the version of the driver.
            </summary>
        </member>
        <member name="P:CSCore.SoundOut.WaveOutDevice.SupportedFormatsFlags">
            <summary>
            Gets the standard formats that are supported.
            </summary>
        </member>
        <member name="P:CSCore.SoundOut.WaveOutDevice.SupportedFormats">
            <summary>
            Gets the supported formats.
            </summary>
        </member>
        <member name="T:CSCore.SoundOut.ISoundOut">
            <summary>
            Defines a interface for audio playbacks.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.ISoundOut.Play">
            <summary>
            Starts the audio playback.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.ISoundOut.Pause">
            <summary>
            Pauses the audio playback.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.ISoundOut.Resume">
            <summary>
            Resumes the audio playback.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.ISoundOut.Stop">
            <summary>
            Stops the audio playback.
            </summary>
        </member>
        <member name="M:CSCore.SoundOut.ISoundOut.Initialize(CSCore.IWaveSource)">
            <summary>
            Initializes the <see cref="T:CSCore.SoundOut.ISoundOut"/> for playing a <paramref name="source"/>.
            </summary>
            <param name="source"><see cref="T:CSCore.IWaveSource"/> which provides waveform-audio data to play.</param>
        </member>
        <member name="P:CSCore.SoundOut.ISoundOut.Volume">
            <summary>
            Gets or sets the volume of the playback. The value of this property must be within the range from 0.0 to 1.0 where 0.0 equals 0% (muted) and 1.0 equals 100%.
            </summary>
        </member>
        <member name="P:CSCore.SoundOut.ISoundOut.WaveSource">
            <summary>
            Gets the <see cref="T:CSCore.IWaveSource"/> which provides the waveform-audio data and was used to <see cref="M:CSCore.SoundOut.ISoundOut.Initialize(CSCore.IWaveSource)"/> the <see cref="T:CSCore.SoundOut.ISoundOut"/>.
            </summary>
        </member>
        <member name="P:CSCore.SoundOut.ISoundOut.PlaybackState">
            <summary>
            Gets the <see cref="T:CSCore.SoundOut.PlaybackState"/> of the <see cref="T:CSCore.SoundOut.ISoundOut"/>. The playback state indicates whether the playback is currently playing, paused or stopped.
            </summary>
        </member>
        <member name="E:CSCore.SoundOut.ISoundOut.Stopped">
            <summary>
            Occurs when the playback stops. 
            </summary>
        </member>
        <member name="T:CSCore.SoundOut.PlaybackState">
            <summary>
                Defines playback states.
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.PlaybackState.Stopped">
            <summary>
                Playback is stopped.
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.PlaybackState.Playing">
            <summary>
                Playback is playing.
            </summary>
        </member>
        <member name="F:CSCore.SoundOut.PlaybackState.Paused">
            <summary>
                Playback is paused.
            </summary>
        </member>
        <member name="T:CSCore.StoppedEventArgs">
            <summary>
                Provides data for any stopped operations.
            </summary>
        </member>
        <member name="M:CSCore.StoppedEventArgs.#ctor">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.StoppedEventArgs" /> class.
            </summary>
        </member>
        <member name="M:CSCore.StoppedEventArgs.#ctor(System.Exception)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.StoppedEventArgs" /> class.
            </summary>
            <param name="exception">The associated exception. Can be null.</param>
        </member>
        <member name="P:CSCore.StoppedEventArgs.HasError">
            <summary>
                Gets a value which indicates whether the operation stopped due to an error. True means that that the operation
                stopped due to an error. False means that the operation did not stop due to an error.
            </summary>
        </member>
        <member name="P:CSCore.StoppedEventArgs.Exception">
            <summary>
                Gets the associated <see cref="P:CSCore.StoppedEventArgs.Exception" /> which caused the operation to stop.
            </summary>
            <value>Can be null.</value>
        </member>
        <member name="T:CSCore.Streams.CachedSoundSource">
            <summary>
            Cached wave source.
            </summary>
        </member>
        <member name="M:CSCore.Streams.CachedSoundSource.#ctor(CSCore.IWaveSource)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.CachedSoundSource"/> class.
            </summary>
            <param name="source">Source which will be copied to a cache.</param>
        </member>
        <member name="M:CSCore.Streams.CachedSoundSource.CreateStream">
            <summary>
            Creates a stream to buffer data in.
            </summary>
            <returns>An empty stream to use as buffer.</returns>
        </member>
        <member name="M:CSCore.Streams.CachedSoundSource.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from the cache and advances the position within the cache by the
                number of bytes read.
            </summary>
            <param name="buffer">
                An array of bytes. When this method returns, the <paramref name="buffer" /> contains the specified
                byte array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the bytes read from the cache.
            </param>
            <param name="offset">
                The zero-based byte offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the cache.
            </param>
            <param name="count">The maximum number of bytes to read from the cache.</param>
            <returns>The total number of bytes read into the <paramref name="buffer"/>.</returns>
        </member>
        <member name="P:CSCore.Streams.CachedSoundSource.WaveFormat">
            <summary>
            Gets the Waveformat of the data stored in the cache.
            </summary>
        </member>
        <member name="P:CSCore.Streams.CachedSoundSource.Position">
            <summary>
            Gets or sets the position.
            </summary>
        </member>
        <member name="P:CSCore.Streams.CachedSoundSource.CanSeek">
            <summary>
            Gets a value indicating whether the <see cref="T:CSCore.IAudioSource"/> supports seeking.
            </summary>
        </member>
        <member name="P:CSCore.Streams.CachedSoundSource.Length">
            <summary>
            Gets the amount of bytes stored in the cache.
            </summary>
        </member>
        <member name="M:CSCore.Streams.CachedSoundSource.Dispose">
            <summary>
            Disposes the cache.
            </summary>
        </member>
        <member name="M:CSCore.Streams.CachedSoundSource.Dispose(System.Boolean)">
            <summary>
            Disposes the internal used cache. 
            </summary>
            <param name="disposing"></param>
        </member>
        <member name="M:CSCore.Streams.CachedSoundSource.Finalize">
            <summary>
            Finalizes an instance of the <see cref="T:CSCore.Streams.CachedSoundSource"/> class.
            </summary>
        </member>
        <member name="T:CSCore.Streams.ChannelConversionSource">
            <summary>
            NOT RELEASED YET! Provides conversion between a set of input and output channels using a <see cref="T:CSCore.DSP.ChannelMatrix"/>.
            </summary>
        </member>
        <member name="M:CSCore.Streams.ChannelConversionSource.#ctor(CSCore.ISampleSource,CSCore.DSP.ChannelMatrix)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.ChannelConversionSource"/> class.
            </summary>
            <param name="source">The <see cref="T:CSCore.ISampleSource"/> which provides input data.</param>
            <param name="channelMatrix">The <see cref="T:CSCore.DSP.ChannelMatrix"/> which defines the mapping of the input channels to the output channels.</param>
        </member>
        <member name="M:CSCore.Streams.ChannelConversionSource.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of samples from the <see cref="T:CSCore.Streams.ChannelConversionSource" /> and advances the position within the stream by
                the number of samples read.
            </summary>
            <param name="buffer">
                An array of floats. When this method returns, the <paramref name="buffer" /> contains the specified
                float array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the floats read from the current source.
            </param>
            <param name="offset">
                The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of samples to read from the current source.</param>
            <returns>The total number of samples read into the buffer.</returns>
        </member>
        <member name="P:CSCore.Streams.ChannelConversionSource.WaveFormat">
            <summary>
            Gets the output format.
            </summary>
        </member>
        <member name="P:CSCore.Streams.ChannelConversionSource.Position">
            <summary>
            Gets or sets the position in samples.
            </summary>
        </member>
        <member name="P:CSCore.Streams.ChannelConversionSource.Length">
            <summary>
            Gets the length in samples.
            </summary>
        </member>
        <member name="T:CSCore.Streams.Effects.ChorusPhase">
            <summary>
            Defines possible values for the <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.Phase"/> property.
            Default value is <see cref="F:CSCore.Streams.Effects.ChorusPhase.Phase90"/>.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.ChorusPhase.Phase180">
            <summary>
            180° Phase.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.ChorusPhase.Phase90">
            <summary>
            90° Phase. 
            Default value for <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.Phase"/>. 
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.ChorusPhase.PhaseZero">
            <summary>
            0° Phase.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.ChorusPhase.PhaseNegative90">
            <summary>
            -90° Phase.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.ChorusPhase.PhaseNegative180">
            <summary>
            -180° Phase.
            </summary>
        </member>
        <member name="T:CSCore.Streams.Effects.ChorusWaveform">
            <summary>
            Defines possible values for the <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.Waveform"/> property.
            Default value is WaveformSin (used for <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.Waveform"/>).
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.ChorusWaveform.WaveformSin">
            <summary>
            Sine 
            Default value for <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.Waveform"/>.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.ChorusWaveform.WaveformTriangle">
            <summary>
            Trinagle
            </summary>
        </member>
        <member name="T:CSCore.Streams.Effects.DmoChorusEffect">
            <summary>
            Represents the dmo chorus effect in form of an <see cref="T:CSCore.IWaveSource"/> implementation.
            </summary>
        </member>
        <member name="M:CSCore.Streams.Effects.DmoChorusEffect.#ctor(CSCore.IWaveSource)">
            <summary>
            Creates a new instance of the <see cref="T:CSCore.Streams.Effects.DmoChorusEffect"/> class.
            </summary>
            <param name="source">The base source, which feeds the effect with data.</param>
        </member>
        <member name="M:CSCore.Streams.Effects.DmoChorusEffect.CreateComObject">
            <summary>
            Creates and returns a new instance of the native COM object.
            </summary>
            <returns>A new instance of the native COM object.</returns>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoChorusEffect.Delay">
            <summary>
            Gets or sets the number of milliseconds the input is delayed before it is played back, in the range from 0 to 20. The default value is 16 ms.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoChorusEffect.Depth">
            <summary>
            Gets or sets the percentage by which the delay time is modulated by the low-frequency oscillator, in hundredths of a percentage point. Must be in the range from 0 through 100. The default value is 10.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoChorusEffect.Feedback">
            <summary>
            Gets or sets the percentage of output signal to feed back into the effect's input, in the range from -99 to 99. The default value is 25.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoChorusEffect.Frequency">
            <summary>
            Gets or sets the frequency of the LFO, in the range from 0 to 10. The default value is 1.1.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoChorusEffect.Waveform">
            <summary>
            Gets or sets the waveform shape of the LFO. By default, the waveform is a sine.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoChorusEffect.Phase">
            <summary>
            Gets or sets the phase differential between left and right LFOs. The default value is Phase90.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoChorusEffect.WetDryMix">
            <summary>
            Gets or sets the ratio of wet (processed) signal to dry (unprocessed) signal. Must be in the range from 0 through 100 (all wet). The default value is 50.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.DelayDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.Delay"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.DelayMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.Delay"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.DelayMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.Delay"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.DepthDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.Depth"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.DepthMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.Depth"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.DepthMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.Depth"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.FeedbackDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.Feedback"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.FeedbackMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.Feedback"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.FeedbackMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.Feedback"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.FrequencyDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.Frequency"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.FrequencyMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.Frequency"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.FrequencyMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.Frequency"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.Phase180">
            <summary>
            180° Phase
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.Phase90">
            <summary>
            90° Phase
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.PhaseDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.Phase"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.PhaseMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.Phase"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.PhaseMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.Phase"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.PhaseNegative180">
            <summary>
            -180° Phase
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.PhaseNegative90">
            <summary>
            -90° Phase
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.PhaseZero">
            <summary>
            0° Phase
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.WaveformDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.Waveform"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.WaveformSin">
            <summary>
            Sine waveform
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.WaveformTriangle">
            <summary>
            Triangle waveform
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.WetDryMixDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.WetDryMix"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.WetDryMixMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.WetDryMix"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoChorusEffect.WetDryMixMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoChorusEffect.WetDryMix"/> property.
            </summary>
        </member>
        <member name="T:CSCore.Streams.Effects.DmoCompressorEffect">
            <summary>
            Represents the dmo compressor effect in form of an <see cref="T:CSCore.IWaveSource"/> implementation.
            </summary>
        </member>
        <member name="M:CSCore.Streams.Effects.DmoCompressorEffect.#ctor(CSCore.IWaveSource)">
            <summary>
            Creates a new instance of the <see cref="T:CSCore.Streams.Effects.DmoCompressorEffect"/> class.
            </summary>
            <param name="source">The base source, which feeds the effect with data.</param>
        </member>
        <member name="M:CSCore.Streams.Effects.DmoCompressorEffect.CreateComObject">
            <summary>
            Creates and returns a new instance of the native COM object.
            </summary>
            <returns>A new instance of the native COM object.</returns>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoCompressorEffect.Attack">
            <summary>
            Gets or sets the time before compression reaches its full value, in the range from 0.01 ms to 500 ms. The default value is 10 ms.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoCompressorEffect.Gain">
            <summary>
            Gets or sets the output gain of signal after compression, in the range from -60 dB to 60 dB. The default value is 0 dB.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoCompressorEffect.Predelay">
            <summary>
            Gets or sets the time after <see cref="P:CSCore.Streams.Effects.DmoCompressorEffect.Threshold"/> is reached before attack phase is started, in milliseconds, in the range from 0 ms to 4 ms. The default value is 4 ms.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoCompressorEffect.Ratio">
            <summary>
            Gets or sets the compression ratio, in the range from 1 to 100. The default value is 3, which means 3:1 compression.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoCompressorEffect.Release">
            <summary>
            Gets or sets the speed at which compression is stopped after input drops below fThreshold, in the range from 50 ms to 3000 ms. The default value is 200 ms.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoCompressorEffect.Threshold">
            <summary>
            Gets or sets the point at which compression begins, in decibels, in the range from -60 dB to 0 dB. The default value is -20 dB.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoCompressorEffect.AttackDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoCompressorEffect.Attack"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoCompressorEffect.AttackMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoCompressorEffect.Attack"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoCompressorEffect.AttackMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoCompressorEffect.Attack"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoCompressorEffect.GainDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoCompressorEffect.Gain"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoCompressorEffect.GainMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoCompressorEffect.Gain"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoCompressorEffect.GainMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoCompressorEffect.Gain"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoCompressorEffect.PredelayDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoCompressorEffect.Predelay"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoCompressorEffect.PredelayMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoCompressorEffect.Predelay"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoCompressorEffect.PredelayMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoCompressorEffect.Predelay"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoCompressorEffect.RatioDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoCompressorEffect.Ratio"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoCompressorEffect.RatioMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoCompressorEffect.Ratio"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoCompressorEffect.RatioMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoCompressorEffect.Ratio"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoCompressorEffect.ReleaseDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoCompressorEffect.Release"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoCompressorEffect.ReleaseMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoCompressorEffect.Release"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoCompressorEffect.ReleaseMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoCompressorEffect.Release"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoCompressorEffect.ThresholdDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoCompressorEffect.Threshold"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoCompressorEffect.ThresholdMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoCompressorEffect.Threshold"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoCompressorEffect.ThresholdMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoCompressorEffect.Threshold"/> property.
            </summary>
        </member>
        <member name="T:CSCore.Streams.Effects.DmoDistortionEffect">
            <summary>
            Represents the dmo distortion effect in form of an <see cref="T:CSCore.IWaveSource"/> implementation.
            </summary>
        </member>
        <member name="M:CSCore.Streams.Effects.DmoDistortionEffect.#ctor(CSCore.IWaveSource)">
            <summary>
            Creates a new instance of the <see cref="T:CSCore.Streams.Effects.DmoDistortionEffect"/> class.
            </summary>
            <param name="source">The base source, which feeds the effect with data.</param>
        </member>
        <member name="M:CSCore.Streams.Effects.DmoDistortionEffect.CreateComObject">
            <summary>
            Creates and returns a new instance of the native COM object.
            </summary>
            <returns>A new instance of the native COM object.</returns>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoDistortionEffect.Gain">
            <summary>
            Gets or sets the amount of signal change after distortion, in the range from -60 dB through 0 dB. The default value is -18 dB.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoDistortionEffect.Edge">
            <summary>
            Gets or sets the percentage of distortion intensity, in the range in the range from 0 % through 100 %. The default value is 15 percent.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoDistortionEffect.PostEQCenterFrequency">
            <summary>
            Gets or sets the center frequency of harmonic content addition, in the range from 100 Hz through 8000 Hz. The default value is 2400 Hz.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoDistortionEffect.PostEQBandwidth">
            <summary>
            Gets or sets the width of frequency band that determines range of harmonic content addition, in the range from 100 Hz through 8000 Hz. The default value is 2400 Hz.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoDistortionEffect.PreLowpassCutoff">
            <summary>
            Gets or sets the filter cutoff for high-frequency harmonics attenuation, in the range from 100 Hz through 8000 Hz. The default value is 8000 Hz.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoDistortionEffect.EdgeDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoDistortionEffect.Edge"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoDistortionEffect.EdgeMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoDistortionEffect.Edge"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoDistortionEffect.EdgeMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoDistortionEffect.Edge"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoDistortionEffect.GainDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoDistortionEffect.Gain"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoDistortionEffect.GainMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoDistortionEffect.Gain"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoDistortionEffect.GainMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoDistortionEffect.Gain"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoDistortionEffect.PostEQBandwidthDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoDistortionEffect.PostEQBandwidth"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoDistortionEffect.PostEQBandwidthMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoDistortionEffect.PostEQBandwidth"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoDistortionEffect.PostEQBandwidthMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoDistortionEffect.PostEQBandwidth"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoDistortionEffect.PostEQCenterFrequencyDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoDistortionEffect.PostEQCenterFrequency"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoDistortionEffect.PostEQCenterFrequencyMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoDistortionEffect.PostEQCenterFrequency"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoDistortionEffect.PostEQCenterFrequencyMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoDistortionEffect.PostEQCenterFrequency"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoDistortionEffect.PreLowPassCutoffDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoDistortionEffect.PreLowpassCutoff"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoDistortionEffect.PreLowPassCutoffMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoDistortionEffect.PreLowpassCutoff"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoDistortionEffect.PreLowPassCutoffMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoDistortionEffect.PreLowpassCutoff"/> property.
            </summary>
        </member>
        <member name="T:CSCore.Streams.Effects.DmoEchoEffect">
            <summary>
            Represents the dmo echo effect in form of an <see cref="T:CSCore.IWaveSource"/> implementation.
            </summary>
        </member>
        <member name="M:CSCore.Streams.Effects.DmoEchoEffect.#ctor(CSCore.IWaveSource)">
            <summary>
            Creates a new instance of the <see cref="T:CSCore.Streams.Effects.DmoEchoEffect"/> class.
            </summary>
            <param name="source">The base source, which feeds the effect with data.</param>
        </member>
        <member name="M:CSCore.Streams.Effects.DmoEchoEffect.CreateComObject">
            <summary>
            Creates and returns a new instance of the native COM object.
            </summary>
            <returns>A new instance of the native COM object.</returns>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoEchoEffect.WetDryMix">
            <summary>
            Gets or sets the ratio of wet (processed) signal to dry (unprocessed) signal. Must be in the range from
            0 through 100 (all wet). The default value is 50.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoEchoEffect.Feedback">
            <summary>
            Gets or sets the percentage of output fed back into input, in the range from 0
            through 100. The default value is 50.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoEchoEffect.LeftDelay">
            <summary>
            Gets or sets the delay for left channel, in milliseconds, in the range from 1
            through 2000. The default value is 500 ms.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoEchoEffect.RightDelay">
            <summary>
            Gets or sets the delay for right channel, in milliseconds, in the range from 1
            through 2000. The default value is 500 ms.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoEchoEffect.PanDelay">
            <summary>
            Gets or sets the value that specifies whether to swap left and right delays with each successive echo.
            The default value is false, meaning no swap.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoEchoEffect.FeedbackDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoEchoEffect.Feedback"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoEchoEffect.FeedbackMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoEchoEffect.Feedback"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoEchoEffect.FeedbackMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoEchoEffect.Feedback"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoEchoEffect.LeftDelayDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoEchoEffect.LeftDelay"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoEchoEffect.LeftDelayMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoEchoEffect.LeftDelay"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoEchoEffect.LeftDelayMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoEchoEffect.LeftDelay"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoEchoEffect.PanDelayDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoEchoEffect.PanDelay"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoEchoEffect.PanDelayMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoEchoEffect.PanDelay"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoEchoEffect.PanDelayMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoEchoEffect.PanDelay"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoEchoEffect.RightDelayDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoEchoEffect.RightDelay"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoEchoEffect.RightDelayMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoEchoEffect.RightDelay"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoEchoEffect.RightDelayMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoEchoEffect.RightDelay"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoEchoEffect.WetDryMixDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoEchoEffect.WetDryMix"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoEchoEffect.WetDryMixMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoEchoEffect.WetDryMix"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoEchoEffect.WetDryMixMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoEchoEffect.WetDryMix"/> property.
            </summary>
        </member>
        <member name="T:CSCore.Streams.Effects.DmoEffectBase`2">
            <summary>
            Base class for all DMO effects.
            </summary>
            <typeparam name="TDXEffect">DMO effect itself.</typeparam>
            <typeparam name="TDXEffectStruct">Parameter struct of the DMO effect.</typeparam>
        </member>
        <member name="M:CSCore.Streams.Effects.DmoEffectBase`2.#ctor(CSCore.IWaveSource)">
            <summary>
            Creates a new instance of <see cref="T:CSCore.Streams.Effects.DmoEffectBase`2"/> class.
            </summary>
            <param name="source">The base source, which feeds the effect with data.</param>
        </member>
        <member name="M:CSCore.Streams.Effects.DmoEffectBase`2.CreateComObject">
            <summary>
            Creates and returns a new instance of the native COM object.
            </summary>
            <returns>A new instance of the native COM object.</returns>
        </member>
        <member name="M:CSCore.Streams.Effects.DmoEffectBase`2.CreateMediaObject(CSCore.WaveFormat,CSCore.WaveFormat)">
            <summary>
            Creates an MediaObject from the effect DMO.
            </summary>
            <param name="inputFormat">The input format of the <see cref="T:CSCore.DMO.MediaObject" /> to create.</param>
            <param name="outputFormat">The output format of the <see cref="T:CSCore.DMO.MediaObject" /> to create.</param>
            <returns>
            The created <see cref="T:CSCore.DMO.MediaObject" /> to use for processing audio data.
            </returns>
        </member>
        <member name="M:CSCore.Streams.Effects.DmoEffectBase`2.GetOutputFormat">
            <summary>
            Gets the output format of the effect.
            </summary>
            <returns>The output format of the effect.</returns>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoEffectBase`2.Effect">
            <summary>
            Gets the underlying effect.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoEffectBase`2.IsEnabled">
            <summary>
            Gets or sets whether the effect is enabled.
            </summary>
        </member>
        <member name="M:CSCore.Streams.Effects.DmoEffectBase`2.SetValue``1(System.String,``0)">
            <summary>
            Sets the value for one of the effects parameter and updates the effect.
            </summary>
            <typeparam name="T">Type of the <paramref name="value"/>.</typeparam>
            <param name="fieldname">Name of the field to set the value for.</param>
            <param name="value">Value to set.</param>
        </member>
        <member name="M:CSCore.Streams.Effects.DmoEffectBase`2.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from the stream and applies the Dmo effect to them (only if the <see cref="P:CSCore.Streams.Effects.DmoEffectBase`2.IsEnabled"/> property is set to true).
            </summary>
            <param name="buffer">An array of bytes. When this method returns, the buffer contains the read bytes.</param>
            <param name="offset">The zero-based byte offset in buffer at which to begin storing the data read from the stream.</param>
            <param name="count">The maximum number of bytes to be read from the stream</param>
            <returns>The actual number of read bytes.</returns>
        </member>
        <member name="T:CSCore.Streams.Effects.DmoFlangerEffect">
            <summary>
            Represents the dmo flanger effect in form of an <see cref="T:CSCore.IWaveSource"/> implementation.
            </summary>
        </member>
        <member name="M:CSCore.Streams.Effects.DmoFlangerEffect.#ctor(CSCore.IWaveSource)">
            <summary>
            Creates a new instance of the <see cref="T:CSCore.Streams.Effects.DmoFlangerEffect"/> class.
            </summary>
            <param name="source">The base source, which feeds the effect with data.</param>
        </member>
        <member name="M:CSCore.Streams.Effects.DmoFlangerEffect.CreateComObject">
            <summary>
            Creates and returns a new instance of the native COM object.
            </summary>
            <returns>A new instance of the native COM object.</returns>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoFlangerEffect.WetDryMix">
            <summary>
            Gets or sets the ratio of wet (processed) signal to dry (unprocessed) signal. Must be in the range from 0 through 100 (all wet). The default value is 50.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoFlangerEffect.Depth">
            <summary>
            Gets or sets the percentage by which the delay time is modulated by the low-frequency oscillator (LFO), in hundredths of a percentage point. Must be in the range from 0 through 100. The default value is 100.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoFlangerEffect.Feedback">
            <summary>
            Gets or sets the percentage of output signal to feed back into the effect's input, in the range from -99 to 99. The default value is -50.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoFlangerEffect.Frequency">
            <summary>
            Gets or sets the frequency of the LFO, in the range from 0 to 10. The default value is 0.25.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoFlangerEffect.Waveform">
            <summary>
            Gets or sets the waveform shape of the LFO. By default, the waveform is a sine.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoFlangerEffect.Delay">
            <summary>
            Gets or sets the number of milliseconds the input is delayed before it is played back, in the range from 0ms to 4ms. The default value is 2 ms.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoFlangerEffect.Phase">
            <summary>
            Gets or sets the phase differential between left and right LFOs. The default value is <see cref="F:CSCore.Streams.Effects.FlangerPhase.PhaseZero"/>.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoFlangerEffect.DelayDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoFlangerEffect.Delay"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoFlangerEffect.DelayMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoFlangerEffect.Delay"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoFlangerEffect.DelayMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoFlangerEffect.Delay"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoFlangerEffect.DepthDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoFlangerEffect.Depth"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoFlangerEffect.DepthMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoFlangerEffect.Depth"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoFlangerEffect.DepthMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoFlangerEffect.Depth"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoFlangerEffect.FeedbackDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoFlangerEffect.Feedback"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoFlangerEffect.FeedbackMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoFlangerEffect.Feedback"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoFlangerEffect.FeedbackMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoFlangerEffect.Feedback"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoFlangerEffect.FrequencyDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoFlangerEffect.Frequency"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoFlangerEffect.FrequencyMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoFlangerEffect.Frequency"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoFlangerEffect.FrequencyMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoFlangerEffect.Frequency"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoFlangerEffect.WetDryMixDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoFlangerEffect.WetDryMix"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoFlangerEffect.WetDryMixMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoFlangerEffect.WetDryMix"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoFlangerEffect.WetDryMixMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoFlangerEffect.WetDryMix"/> property.
            </summary>
        </member>
        <member name="T:CSCore.Streams.Effects.DmoGargleEffect">
            <summary>
            Represents the dmo gargle effect in form of an <see cref="T:CSCore.IWaveSource"/> implementation.
            </summary>
        </member>
        <member name="M:CSCore.Streams.Effects.DmoGargleEffect.#ctor(CSCore.IWaveSource)">
            <summary>
            Creates a new instance of the <see cref="T:CSCore.Streams.Effects.DmoGargleEffect"/> class.
            </summary>
            <param name="source">The base source, which feeds the effect with data.</param>
        </member>
        <member name="M:CSCore.Streams.Effects.DmoGargleEffect.CreateComObject">
            <summary>
            Creates and returns a new instance of the native COM object.
            </summary>
            <returns>A new instance of the native COM object.</returns>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoGargleEffect.RateHz">
            <summary>
            Gets or sets the rate of modulation, in Hertz. Must be in the range from 20Hz through 1000Hz. The default value is 20Hz.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoGargleEffect.WaveShape">
            <summary>
            Gets or sets the shape of the modulation waveform.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoGargleEffect.RateDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoGargleEffect.RateHz"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoGargleEffect.RateMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoGargleEffect.RateHz"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoGargleEffect.RateMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoGargleEffect.RateHz"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoGargleEffect.WaveShapeDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoGargleEffect.WaveShape"/> property.
            </summary>
            <remarks>Use the <see cref="T:CSCore.Streams.Effects.GargleWaveShape"/> enumeration instead.</remarks>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoGargleEffect.WaveShapeSquare">
            <summary>
            Square Waveform.
            </summary>
            <remarks>Use the <see cref="T:CSCore.Streams.Effects.GargleWaveShape"/> enumeration instead.</remarks>        
        </member>
        <member name="F:CSCore.Streams.Effects.DmoGargleEffect.WaveShapeTriangle">
            <summary>
            Triangle Waveform
            </summary>
            <remarks>Use the <see cref="T:CSCore.Streams.Effects.GargleWaveShape"/> enumeration instead.</remarks>        
        </member>
        <member name="T:CSCore.Streams.Effects.DmoWavesReverbEffect">
            <summary>
            Represents the dmo waves reverb effect in form of an <see cref="T:CSCore.IWaveSource"/> implementation.
            </summary>
        </member>
        <member name="M:CSCore.Streams.Effects.DmoWavesReverbEffect.#ctor(CSCore.IWaveSource)">
            <summary>
            Creates a new instance of the <see cref="T:CSCore.Streams.Effects.DmoWavesReverbEffect"/> class.
            </summary>
            <param name="source">The base source, which feeds the effect with data.</param>
        </member>
        <member name="M:CSCore.Streams.Effects.DmoWavesReverbEffect.CreateComObject">
            <summary>
            Creates and returns a new instance of the native COM object.
            </summary>
            <returns>A new instance of the native COM object.</returns>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoWavesReverbEffect.InGain">
            <summary>
            Gets or sets the input gain of signal, in decibels (dB), in the range from -96 dB through 0 dB. The default value is 0 dB.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoWavesReverbEffect.ReverbMix">
            <summary>
            Gets or sets the reverb mix, in dB, in the range from -96 dB through 0 dB. The default value is 0 dB.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoWavesReverbEffect.ReverbTime">
            <summary>
            Gets or sets the reverb time, in milliseconds, in the range from 0.001 through 3000. The default value is 1000.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.DmoWavesReverbEffect.HighFrequencyRTRatio">
            <summary>
            Gets or sets the high-frequency reverb time ratio, in the range from 0.001 through 0.999. The default value is 0.001.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoWavesReverbEffect.HighFrequencyRTRatioDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoWavesReverbEffect.HighFrequencyRTRatio"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoWavesReverbEffect.HighFrequencyRTRatioMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoWavesReverbEffect.HighFrequencyRTRatio"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoWavesReverbEffect.HighFrequencyRTRatioMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoWavesReverbEffect.HighFrequencyRTRatio"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoWavesReverbEffect.InGainDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoWavesReverbEffect.InGain"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoWavesReverbEffect.InGainMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoWavesReverbEffect.InGain"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoWavesReverbEffect.InGainMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoWavesReverbEffect.InGain"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoWavesReverbEffect.ReverbMixDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoWavesReverbEffect.ReverbMix"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoWavesReverbEffect.ReverbMixMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoWavesReverbEffect.ReverbMix"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoWavesReverbEffect.ReverbMixMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoWavesReverbEffect.ReverbMix"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoWavesReverbEffect.ReverbTimeDefault">
            <summary>
            Default value for the <see cref="P:CSCore.Streams.Effects.DmoWavesReverbEffect.ReverbTime"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoWavesReverbEffect.ReverbTimeMax">
            <summary>
            Maximum value for the <see cref="P:CSCore.Streams.Effects.DmoWavesReverbEffect.ReverbTime"/> property.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.DmoWavesReverbEffect.ReverbTimeMin">
            <summary>
            Minimum value for the <see cref="P:CSCore.Streams.Effects.DmoWavesReverbEffect.ReverbTime"/> property.
            </summary>
        </member>
        <member name="T:CSCore.Streams.Effects.Equalizer">
            <summary>
                Represents an equalizer which can be dynamically modified by adding, removing or modifying
                <see cref="T:CSCore.Streams.Effects.EqualizerFilter" />.
            </summary>
        </member>
        <member name="M:CSCore.Streams.Effects.Equalizer.#ctor(CSCore.ISampleSource)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Streams.Effects.Equalizer" /> class based on an underlying wave stream.
            </summary>
            <param name="source">The underlying wave stream.</param>
        </member>
        <member name="P:CSCore.Streams.Effects.Equalizer.SampleFilters">
            <summary>
                Gets a list which contains all <see cref="T:CSCore.Streams.Effects.EqualizerFilter" /> used by the equalizer.
            </summary>
            <remarks>
                None of the <see cref="T:CSCore.Streams.Effects.EqualizerFilter" />
            </remarks>
        </member>
        <member name="M:CSCore.Streams.Effects.Equalizer.Create10BandEqualizer(CSCore.ISampleSource)">
            <summary>
                Returns a new instance of the <see cref="T:CSCore.Streams.Effects.Equalizer" /> class with 10 preset <see cref="T:CSCore.Streams.Effects.EqualizerFilter" />.
            </summary>
            <param name="source">The underlying sample source which provides the data for the equalizer.</param>
            <returns>A new instance of the <see cref="T:CSCore.Streams.Effects.Equalizer" /> class with 10 preset <see cref="T:CSCore.Streams.Effects.EqualizerFilter" />.</returns>
        </member>
        <member name="M:CSCore.Streams.Effects.Equalizer.Create10BandEqualizer(CSCore.ISampleSource,System.Int32,System.Int32)">
            <summary>
                Returns a new instance of the <see cref="T:CSCore.Streams.Effects.Equalizer" /> class with 10 preset <see cref="T:CSCore.Streams.Effects.EqualizerFilter" />.
            </summary>
            <param name="source">The underlying sample source which provides the data for the equalizer.</param>
            <param name="bandWidth">The bandwidth to use for the 10 <see cref="T:CSCore.Streams.Effects.EqualizerFilter" />. The default value is 18.</param>
            <param name="defaultGain">
                The default gain to use for the 10 <see cref="T:CSCore.Streams.Effects.EqualizerFilter" />. The default value is zero
                which means that the data, passed through the equalizer won't be affected by the <see cref="T:CSCore.Streams.Effects.EqualizerFilter" />.
            </param>
            <returns>A new instance of the <see cref="T:CSCore.Streams.Effects.Equalizer" /> class with 10 preset <see cref="T:CSCore.Streams.Effects.EqualizerFilter" />.</returns>
        </member>
        <member name="M:CSCore.Streams.Effects.Equalizer.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of samples from the underlying <see cref="P:CSCore.SampleAggregatorBase.BaseSource" />, applies the equalizer
                effect and advances the position within the stream by
                the number of samples read.
            </summary>
            <param name="buffer">
                An array of floats. When this method returns, the <paramref name="buffer" /> contains the specified
                float array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the floats read from the current source.
            </param>
            <param name="offset">
                The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of samples to read from the current source.</param>
            <returns>The total number of samples read into the buffer.</returns>
        </member>
        <member name="T:CSCore.Streams.Effects.EqualizerChannelFilter">
            <summary>
                Represents an EqualizerFilter for a single channel.
            </summary>
        </member>
        <member name="M:CSCore.Streams.Effects.EqualizerChannelFilter.#ctor(System.Int32,System.Double,System.Double,System.Double)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Streams.Effects.EqualizerChannelFilter" /> class.
            </summary>
            <param name="sampleRate">The sampleRate of the audio data to process.</param>
            <param name="centerFrequency">The center frequency to adjust.</param>
            <param name="bandWidth">The bandWidth.</param>
            <param name="gain">The gain value in dB.</param>
        </member>
        <member name="P:CSCore.Streams.Effects.EqualizerChannelFilter.GainDB">
            <summary>
                Gets or sets the gain value in dB.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.EqualizerChannelFilter.BandWidth">
            <summary>
                Gets or sets the bandwidth.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.EqualizerChannelFilter.Frequency">
            <summary>
                Gets the frequency.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.EqualizerChannelFilter.SampleRate">
            <summary>
                Gets the samplerate.
            </summary>
        </member>
        <member name="M:CSCore.Streams.Effects.EqualizerChannelFilter.Clone">
            <summary>
                Returns a copy of the <see cref="T:CSCore.Streams.Effects.EqualizerChannelFilter" />.
            </summary>
            <returns>A copy of the <see cref="T:CSCore.Streams.Effects.EqualizerChannelFilter" /></returns>
        </member>
        <member name="M:CSCore.Streams.Effects.EqualizerChannelFilter.Process(System.Single[],System.Int32,System.Int32,System.Int32,System.Int32)">
            <summary>
                Processes an array of input samples.
            </summary>
            <param name="input">The input samples to process.</param>
            <param name="offset">The zero-based offset in the <paramref name="input" /> buffer to start at.</param>
            <param name="count">The number of samples to process.</param>
            <param name="channelIndex">Specifies the channel to process as a zero-based index.</param>
            <param name="channelCount">The total number of channels.</param>
        </member>
        <member name="T:CSCore.Streams.Effects.EqualizerFilter">
            <summary>
                Represents an EqualizerFilter which holds an <see cref="T:CSCore.Streams.Effects.EqualizerChannelFilter" /> for each channel.
            </summary>
        </member>
        <member name="M:CSCore.Streams.Effects.EqualizerFilter.#ctor">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Streams.Effects.EqualizerFilter" /> class.
            </summary>
        </member>
        <member name="M:CSCore.Streams.Effects.EqualizerFilter.#ctor(System.Int32,CSCore.Streams.Effects.EqualizerChannelFilter)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Streams.Effects.EqualizerFilter" /> class.
            </summary>
            <param name="channels">The number of channels to use.</param>
            <param name="filter">The channel filter which should be used for all channels.</param>
        </member>
        <member name="P:CSCore.Streams.Effects.EqualizerFilter.Filters">
            <summary>
                Gets all underlying <see cref="T:CSCore.Streams.Effects.EqualizerChannelFilter" /> as a dictionary where the key represents the channel
                index and the value to <see cref="T:CSCore.Streams.Effects.EqualizerChannelFilter" /> itself.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.EqualizerFilter.AverageFrequency">
            <summary>
                Gets the average frequency of all <see cref="P:CSCore.Streams.Effects.EqualizerFilter.Filters" />.
            </summary>
        </member>
        <member name="P:CSCore.Streams.Effects.EqualizerFilter.AverageGainDB">
            <summary>
                Gets or sets the average gain value of all <see cref="P:CSCore.Streams.Effects.EqualizerFilter.Filters" />.
            </summary>
            <remarks>
                When using the setter of the <see cref="P:CSCore.Streams.Effects.EqualizerFilter.AverageGainDB" /> property, the new gain value will be applied to all
                <see cref="P:CSCore.Streams.Effects.EqualizerFilter.Filters" />.
            </remarks>
        </member>
        <member name="M:CSCore.Streams.Effects.EqualizerFilter.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the <see cref="P:CSCore.Streams.Effects.EqualizerFilter.Filters"/>.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1" /> that can be used to iterate through the <see cref="P:CSCore.Streams.Effects.EqualizerFilter.Filters"/>.
            </returns>
        </member>
        <member name="M:CSCore.Streams.Effects.EqualizerFilter.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Returns an enumerator that iterates through a <see cref="P:CSCore.Streams.Effects.EqualizerFilter.Filters"/>.
            </summary>
            <returns>
            An <see cref="T:System.Collections.IEnumerator" /> object that can be used to iterate through the <see cref="P:CSCore.Streams.Effects.EqualizerFilter.Filters"/>.
            </returns>
        </member>
        <member name="M:CSCore.Streams.Effects.EqualizerFilter.CreateFilter(System.Int32,System.Int32,System.Double,System.Int32,System.Single)">
            <summary>
                Returns a new instance of the <see cref="T:CSCore.Streams.Effects.EqualizerFilter" /> class.
            </summary>
            <param name="channels">The number of channels to use.</param>
            <param name="sampleRate">The samplerate of the data to process.</param>
            <param name="frequency">The frequency of the filter.</param>
            <param name="bandWidth">The bandwidth.</param>
            <param name="gain">The gain value.</param>
            <returns>A new instance of the <see cref="T:CSCore.Streams.Effects.EqualizerFilter" /> class.</returns>
        </member>
        <member name="T:CSCore.Streams.Effects.FlangerPhase">
            <summary>
            Defines possible values for the <see cref="P:CSCore.Streams.Effects.DmoFlangerEffect.Phase"/> property.
            The default value is <see cref="F:CSCore.Streams.Effects.FlangerPhase.Phase90"/>.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.FlangerPhase.Phase180">
            <summary>
            180° Phase.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.FlangerPhase.Phase90">
            <summary>
            90° Phase. 
            Default value for <see cref="P:CSCore.Streams.Effects.DmoFlangerEffect.Phase"/>. 
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.FlangerPhase.PhaseZero">
            <summary>
            0° Phase.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.FlangerPhase.PhaseNegative90">
            <summary>
            -90° Phase.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.FlangerPhase.PhaseNegative180">
            <summary>
            -180° Phase.
            </summary>
        </member>
        <member name="T:CSCore.Streams.Effects.FlangerWaveform">
            <summary>
            Defines possible values for the <see cref="P:CSCore.Streams.Effects.DmoFlangerEffect.Waveform"/> property.
            The default value is <see cref="F:CSCore.Streams.Effects.FlangerWaveform.Sin"/>.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.FlangerWaveform.Triangle">
            <summary>
            Triangle.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.FlangerWaveform.Sin">
            <summary>
            Sine. Default value.
            </summary>
        </member>
        <member name="T:CSCore.Streams.Effects.GargleWaveShape">
            <summary>
            Defines possible values for the <see cref="P:CSCore.Streams.Effects.DmoGargleEffect.WaveShape"/> property.
            The default value is <see cref="F:CSCore.Streams.Effects.GargleWaveShape.Triangle"/>.
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.GargleWaveShape.Triangle">
            <summary>
            Triangle - Default value. 
            </summary>
        </member>
        <member name="F:CSCore.Streams.Effects.GargleWaveShape.Square">
            <summary>
            Square
            </summary>
        </member>
        <member name="T:CSCore.Streams.Effects.PitchShifter">
            <summary>
            A pitch shifting effect. 
            </summary>
            <remarks>
            The internal pitch shifting code is based on the implementation of
            Stephan M. Bernsee smb@dspdimension.com (see http://www.dspdimension.com) and 
            Michael Knight madmik3@gmail.com (http://sites.google.com/site/mikescoderama/) who 
            translated Stephan's code to C#.
            
            Both gave the explicit permission to republish the code as part of CSCore under the MS-PL.
            Big thanks!
            </remarks>
        </member>
        <member name="P:CSCore.Streams.Effects.PitchShifter.PitchShiftFactor">
            <summary>
            Gets or sets the pitch shift factor.
            </summary>
            <value>
            A pitch shift factor value which is between 0.5
            (one octave down) and 2. (one octave up). A value of exactly 1 does not change
            the pitch.
            </value>
        </member>
        <member name="M:CSCore.Streams.Effects.PitchShifter.#ctor(CSCore.ISampleSource)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.Effects.PitchShifter"/> class.
            </summary>
            <param name="source">Underlying base source which provides audio data.</param>
        </member>
        <member name="M:CSCore.Streams.Effects.PitchShifter.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads a sequence of samples from the <see cref="T:CSCore.SampleAggregatorBase" />, applies the pitch shifting to them 
            and advances the position within the stream by the number of samples read.
            </summary>
            <param name="buffer">An array of floats. When this method returns, the <paramref name="buffer" /> contains the specified
            float array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
            <paramref name="count" /> - 1) replaced by the floats read from the current source including the applied pitch shift.</param>
            <param name="offset">The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
            read from the current stream.</param>
            <param name="count">The maximum number of samples to read from the current source.</param>
            <returns>
            The total number of samples read into the buffer.
            </returns>
        </member>
        <member name="T:CSCore.Streams.FadeInOut">
            <summary>
                Provides the ability use an implementation of the <see cref="T:CSCore.Streams.IFadeStrategy" /> interface fade waveform-audio data.
            </summary>
        </member>
        <member name="M:CSCore.Streams.FadeInOut.#ctor(CSCore.ISampleSource)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Streams.FadeInOut" /> class.
            </summary>
            <param name="source">The underlying source to use.</param>
        </member>
        <member name="P:CSCore.Streams.FadeInOut.FadeStrategy">
            <summary>
                Gets or sets the fade strategy to use.
            </summary>
        </member>
        <member name="M:CSCore.Streams.FadeInOut.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of samples from the <see cref="T:CSCore.Streams.FadeInOut" /> class and advances the position within the stream by
                the number of samples read.
            </summary>
            <param name="buffer">
                An array of floats. When this method returns, the <paramref name="buffer" /> contains the specified
                float array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the floats read from the current source.
            </param>
            <param name="offset">
                The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of samples to read from the current source.</param>
            <returns>The total number of samples read into the buffer.</returns>
        </member>
        <member name="T:CSCore.Streams.GainSource">
            <summary>
            Compared to the <see cref="T:CSCore.Streams.VolumeSource"/>, the <see cref="P:CSCore.Streams.GainSource.Volume"/> property of the <see cref="T:CSCore.Streams.GainSource"/> accepts any value.
            </summary>
        </member>
        <member name="M:CSCore.Streams.GainSource.#ctor(CSCore.ISampleSource)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.GainSource"/> class.
            </summary>
            <param name="source">The underlying base source.</param>
        </member>
        <member name="P:CSCore.Streams.GainSource.Volume">
            <summary>
            Gets or sets the volume. A value of 1.0 will set the volume to 100%. A value of 0.0 will set the volume to 0%.
            </summary>
            <remarks>Since there is no validation of the value, this property can be used to set the gain value to any value.</remarks>
        </member>
        <member name="P:CSCore.Streams.GainSource.ClipOverflows">
            <summary>
            Gets or sets a value indicating whether the <see cref="M:CSCore.Streams.GainSource.Read(System.Single[],System.Int32,System.Int32)"/> method should clip overflows. The default value is <c>true</c>.
            </summary>
            <value>
              <c>true</c> if the <see cref="M:CSCore.Streams.GainSource.Read(System.Single[],System.Int32,System.Int32)"/> method should clip overflows; otherwise, <c>false</c>.
            </value>
            <remarks>Clipping the overflows means, that all samples which are not in the range from -1 to 1, will be clipped to that range.
            For example if a sample has a value of 1.3, it will be clipped to a value of 1.0.</remarks>
        </member>
        <member name="M:CSCore.Streams.GainSource.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads a sequence of samples from the <see cref="T:CSCore.Streams.VolumeSource" /> and advances the position within the stream by
            the number of samples read. After reading the samples, the specified gain value will get applied and the overflows will be clipped (optionally).
            </summary>
            <param name="buffer">An array of floats. When this method returns, the <paramref name="buffer" /> contains the specified
            float array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
            <paramref name="count" /> - 1) replaced by the floats read from the current source.</param>
            <param name="offset">The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
            read from the current stream.</param>
            <param name="count">The maximum number of samples to read from the current source.</param>
            <returns>
            The total number of samples read into the buffer.
            </returns>
        </member>
        <member name="T:CSCore.Streams.IFadeStrategy">
            <summary>
                Provides a mechanism for fading in/out audio.
            </summary>
            <remarks>
                The <see cref="P:CSCore.Streams.IFadeStrategy.SampleRate" />- and the <see cref="P:CSCore.Streams.IFadeStrategy.Channels" />-property must be set before the
                <see cref="T:CSCore.Streams.IFadeStrategy" /> can be used.
            </remarks>
        </member>
        <member name="P:CSCore.Streams.IFadeStrategy.IsFading">
            <summary>
                Gets a value which indicates whether the current volume equals the target volume. If not, the
                <see cref="P:CSCore.Streams.IFadeStrategy.IsFading" /> property returns false.
            </summary>
        </member>
        <member name="P:CSCore.Streams.IFadeStrategy.SampleRate">
            <summary>
                Gets or sets the sample rate to use.
            </summary>
        </member>
        <member name="P:CSCore.Streams.IFadeStrategy.Channels">
            <summary>
                Gets or sets the number of channels.
            </summary>
        </member>
        <member name="E:CSCore.Streams.IFadeStrategy.FadingFinished">
            <summary>
                Occurs when the fading process has reached its target volume.
            </summary>
        </member>
        <member name="M:CSCore.Streams.IFadeStrategy.ApplyFading(System.Single[],System.Int32,System.Int32)">
            <summary>
                Applies the fading algorithm to the waveform-audio data.
            </summary>
            <param name="buffer">Float-array which contains IEEE-Float samples.</param>
            <param name="offset">Zero-based offset of the <paramref name="buffer" />.</param>
            <param name="count">The number of samples, the fading algorithm has to be applied on.</param>
        </member>
        <member name="M:CSCore.Streams.IFadeStrategy.StartFading(System.Nullable{System.Single},System.Single,System.TimeSpan)">
            <summary>
                Starts fading <paramref name="from" /> a specified volume <paramref name="to" /> another volume.
            </summary>
            <param name="from">
                The start volume in the range from 0.0 to 1.0. If no value gets specified, the default volume will be used.
                The default volume is typically 100% or the current volume.
            </param>
            <param name="to">The target volume in the range from 0.0 to 1.0.</param>
            <param name="duration">The duration.</param>
        </member>
        <member name="M:CSCore.Streams.IFadeStrategy.StartFading(System.Nullable{System.Single},System.Single,System.Double)">
            <summary>
                Starts fading <paramref name="from" /> a specified volume <paramref name="to" /> another volume.
            </summary>
            <param name="from">
                The start volume in the range from 0.0 to 1.0. If no value gets specified, the default volume will be used.
                The default volume is typically 100% or the current volume.
            </param>
            <param name="to">The target volume in the range from 0.0 to 1.0.</param>
            <param name="duration">The duration in milliseconds.</param>
        </member>
        <member name="M:CSCore.Streams.IFadeStrategy.StopFading">
            <summary>
                Stops the fading.
            </summary>
        </member>
        <member name="T:CSCore.Streams.LinearFadeStrategy">
            <summary>
                Provides a linear fading algorithm.
            </summary>
        </member>
        <member name="P:CSCore.Streams.LinearFadeStrategy.CurrentVolume">
            <summary>
                Gets the current volume.
            </summary>
        </member>
        <member name="P:CSCore.Streams.LinearFadeStrategy.TargetVolume">
            <summary>
                Gets the target volume.
            </summary>
        </member>
        <member name="E:CSCore.Streams.LinearFadeStrategy.FadingFinished">
            <summary>
                Occurs when the fading process has reached its target volume.
            </summary>
        </member>
        <member name="P:CSCore.Streams.LinearFadeStrategy.IsFading">
            <summary>
                Gets a value which indicates whether the <see cref="T:CSCore.Streams.LinearFadeStrategy" /> class is fading.
                True means that the <see cref="T:CSCore.Streams.LinearFadeStrategy" /> class is fading audio data.
                False means that the <see cref="P:CSCore.Streams.LinearFadeStrategy.CurrentVolume" /> equals the <see cref="P:CSCore.Streams.LinearFadeStrategy.TargetVolume" />.
            </summary>
        </member>
        <member name="P:CSCore.Streams.LinearFadeStrategy.SampleRate">
            <summary>
                Gets or sets the sample rate to use.
            </summary>
        </member>
        <member name="P:CSCore.Streams.LinearFadeStrategy.Channels">
            <summary>
                Gets or sets the number of channels.
            </summary>
        </member>
        <member name="M:CSCore.Streams.LinearFadeStrategy.StartFading(System.Nullable{System.Single},System.Single,System.TimeSpan)">
            <summary>
                Starts fading <paramref name="from" /> a specified volume <paramref name="to" /> another volume.
            </summary>
            <param name="from">
                The start volume in the range from 0.0 to 1.0. If no value gets specified, the default volume will be used.
                The default volume is typically 100% or the current volume.
            </param>
            <param name="to">The target volume in the range from 0.0 to 1.0.</param>
            <param name="duration">The duration.</param>
        </member>
        <member name="M:CSCore.Streams.LinearFadeStrategy.StartFading(System.Nullable{System.Single},System.Single,System.Double)">
            <summary>
                Starts fading <paramref name="from" /> a specified volume <paramref name="to" /> another volume.
            </summary>
            <param name="from">
                The start volume in the range from 0.0 to 1.0. If no value gets specified, the default volume will be used.
                The default volume is typically 100% or the current volume.
            </param>
            <param name="to">The target volume in the range from 0.0 to 1.0.</param>
            <param name="duration">The duration in milliseconds.</param>
        </member>
        <member name="M:CSCore.Streams.LinearFadeStrategy.StopFading">
            <summary>
                Stops the fading.
            </summary>
        </member>
        <member name="M:CSCore.Streams.LinearFadeStrategy.ApplyFading(System.Single[],System.Int32,System.Int32)">
            <summary>
                Applies the fading algorithm to the <paramref name="buffer" />.
            </summary>
            <param name="buffer">Float-array which contains IEEE-Float samples.</param>
            <param name="offset">Zero-based offset of the <paramref name="buffer"/>.</param>
            <param name="count">The number of samples, the fading algorithm has to be applied on.</param>
        </member>
        <member name="T:CSCore.Streams.PeakEventArgs">
            <summary>
            Provides data for the <see cref="E:CSCore.Streams.PeakMeter.PeakCalculated"/> event.
            </summary>
        </member>
        <member name="P:CSCore.Streams.PeakEventArgs.ChannelPeakValues">
            <summary>
            Gets the individual peak value for each channel.
            </summary>
        </member>
        <member name="P:CSCore.Streams.PeakEventArgs.PeakValue">
            <summary>
            Gets the master peak value.
            </summary>
        </member>
        <member name="M:CSCore.Streams.PeakEventArgs.#ctor(System.Single[],System.Single)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.PeakEventArgs"/> class.
            </summary>
            <param name="channelPeakValues">The channel peak values.</param>
            <param name="peakValue">The master peak value.</param>
            <exception cref="T:System.ArgumentException"><paramref name="channelPeakValues"/> is null or empty.</exception>
        </member>
        <member name="T:CSCore.Streams.PeakMeter">
            <summary>
            Represents a peak meter.
            </summary>
        </member>
        <member name="P:CSCore.Streams.PeakMeter.PeakValue">
            <summary>
            Gets the average value of all <see cref="P:CSCore.Streams.PeakMeter.ChannelPeakValues"/>.
            </summary>
        </member>
        <member name="P:CSCore.Streams.PeakMeter.ChannelPeakValues">
            <summary>
            Gets the peak values for all channels. 
            </summary>
        </member>
        <member name="P:CSCore.Streams.PeakMeter.BlocksToProcess">
            <summary>
            Obsolete
            </summary>
        </member>
        <member name="P:CSCore.Streams.PeakMeter.Interval">
            <summary>
            Gets or sets the interval at which to raise the <see cref="E:CSCore.Streams.PeakMeter.PeakCalculated"/> event. 
            The interval is specified in milliseconds. 
            </summary>
        </member>
        <member name="E:CSCore.Streams.PeakMeter.PeakCalculated">
            <summary>
            Event which gets raised when a new peak value is available. 
            </summary>
        </member>
        <member name="M:CSCore.Streams.PeakMeter.#ctor(CSCore.ISampleSource)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.PeakMeter"/> class.
            </summary>
            <param name="source">Underlying base source which provides audio data.</param>
            <exception cref="T:System.ArgumentNullException">source</exception>
        </member>
        <member name="M:CSCore.Streams.PeakMeter.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of samples from the <see cref="T:CSCore.SampleAggregatorBase" /> and advances the position within the stream by the
                number of samples read.
            </summary>
            <param name="buffer">
                An array of floats. When this method returns, the <paramref name="buffer" /> contains the specified
                float array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the floats read from the current source.
            </param>
            <param name="offset">
                The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of samples to read from the current source.</param>
            <returns>The total number of samples read into the buffer.</returns>
        </member>
        <member name="M:CSCore.Streams.PeakMeter.Reset">
            <summary>
            Sets all ChannelPeakValues to zero and resets the amount of processed blocks.
            </summary>
        </member>
        <member name="T:CSCore.Streams.SampleConverter.Pcm32BitToSample">
            <summary>
            Converts a 32-bit PCM <see cref="T:CSCore.IWaveSource"/> to a <see cref="T:CSCore.ISampleSource"/>.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.Pcm32BitToSample.#ctor(CSCore.IWaveSource)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.SampleConverter.Pcm32BitToSample"/> class.
            </summary>
            <param name="source">The underlying 32-bit POCM <see cref="T:CSCore.IWaveSource"/> instance which has to get converted to a <see cref="T:CSCore.ISampleSource"/>.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null.</exception>
            <exception cref="T:System.ArgumentException">The format of the <paramref name="source"/> is not 32-bit PCM.</exception>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.Pcm32BitToSample.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of samples from the <see cref="T:CSCore.Streams.SampleConverter.Pcm32BitToSample" /> and advances the position within the stream by the
                number of samples read.
            </summary>
            <param name="buffer">
                An array of floats. When this method returns, the <paramref name="buffer" /> contains the specified
                float array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the floats read from the current source.
            </param>
            <param name="offset">
                The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of samples to read from the current source.</param>
            <returns>The total number of samples read into the buffer.</returns>
        </member>
        <member name="T:CSCore.Streams.SampleConverter.SampleToPcm32">
            <summary>
            Converts a <see cref="T:CSCore.ISampleSource"/> to a 32-bit PCM <see cref="T:CSCore.IWaveSource"/>.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.SampleToPcm32.#ctor(CSCore.ISampleSource)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.SampleConverter.SampleToPcm32"/> class.
            </summary>
            <param name="source">The underlying <see cref="T:CSCore.ISampleSource"/> which has to get converted to a 32-bit PCM <see cref="T:CSCore.IWaveSource"/>.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null.</exception>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.SampleToPcm32.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from the <see cref="T:CSCore.Streams.SampleConverter.SampleToPcm32" /> and advances the position within the stream by the
                number of bytes read.
            </summary>
            <param name="buffer">
                An array of bytes. When this method returns, the <paramref name="buffer" /> contains the specified
                byte array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the bytes read from the current source.
            </param>
            <param name="offset">
                The zero-based byte offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of bytes to read from the current source.</param>
            <returns>The total number of bytes read into the buffer.</returns>
        </member>
        <member name="T:CSCore.Streams.SampleConverter.SampleToIeeeFloat32">
            <summary>
            Converts a <see cref="T:CSCore.ISampleSource"/> to a 32-bit IeeeFloat <see cref="T:CSCore.IWaveSource"/>.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.SampleToIeeeFloat32.#ctor(CSCore.ISampleSource)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.SampleConverter.SampleToIeeeFloat32"/> class.
            </summary>
            <param name="source">The underlying <see cref="T:CSCore.ISampleSource"/> which has to get converted to a 32-bit IeeeFloat <see cref="T:CSCore.IWaveSource"/>.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null.</exception>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.SampleToIeeeFloat32.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from the <see cref="T:CSCore.Streams.SampleConverter.SampleToIeeeFloat32" /> and advances the position within the stream by the
                number of bytes read.
            </summary>
            <param name="buffer">
                An array of bytes. When this method returns, the <paramref name="buffer" /> contains the specified
                byte array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the bytes read from the current source.
            </param>
            <param name="offset">
                The zero-based byte offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of bytes to read from the current source.</param>
            <returns>The total number of bytes read into the buffer.</returns>
        </member>
        <member name="T:CSCore.Streams.SampleConverter.SampleToPcm24">
            <summary>
            Converts a <see cref="T:CSCore.ISampleSource"/> to a 24-bit PCM <see cref="T:CSCore.IWaveSource"/>.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.SampleToPcm24.#ctor(CSCore.ISampleSource)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.SampleConverter.SampleToPcm24"/> class.
            </summary>
            <param name="source">The underlying <see cref="T:CSCore.ISampleSource"/> which has to get converted to a 24-bit PCM <see cref="T:CSCore.IWaveSource"/>.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null.</exception>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.SampleToPcm24.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from the <see cref="T:CSCore.Streams.SampleConverter.SampleToPcm24" /> and advances the position within the stream by the
                number of bytes read.
            </summary>
            <param name="buffer">
                An array of bytes. When this method returns, the <paramref name="buffer" /> contains the specified
                byte array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the bytes read from the current source.
            </param>
            <param name="offset">
                The zero-based byte offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of bytes to read from the current source.</param>
            <returns>The total number of bytes read into the buffer.</returns>
        </member>
        <member name="T:CSCore.Streams.SampleConverter.SampleToPcm8">
            <summary>
            Converts a <see cref="T:CSCore.ISampleSource"/> to a 8-bit PCM <see cref="T:CSCore.IWaveSource"/>.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.SampleToPcm8.#ctor(CSCore.ISampleSource)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.SampleConverter.SampleToPcm8"/> class.
            </summary>
            <param name="source">The underlying <see cref="T:CSCore.ISampleSource"/> which has to get converted to a 8-bit PCM <see cref="T:CSCore.IWaveSource"/>.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null.</exception>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.SampleToPcm8.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from the <see cref="T:CSCore.Streams.SampleConverter.SampleToPcm8" /> and advances the position within the stream by the
                number of bytes read.
            </summary>
            <param name="buffer">
                An array of bytes. When this method returns, the <paramref name="buffer" /> contains the specified
                byte array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the bytes read from the current source.
            </param>
            <param name="offset">
                The zero-based byte offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of bytes to read from the current source.</param>
            <returns>The total number of bytes read into the buffer.</returns>
        </member>
        <member name="T:CSCore.Streams.SampleConverter.IeeeFloatToSample">
            <summary>
            Converts a 32-bit IeeeFloat <see cref="T:CSCore.IWaveSource"/> to a <see cref="T:CSCore.ISampleSource"/>.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.IeeeFloatToSample.#ctor(CSCore.IWaveSource)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.SampleConverter.IeeeFloatToSample"/> class.
            </summary>
            <param name="source">The underlying 32-bit IeeeFloat <see cref="T:CSCore.IWaveSource"/> instance which has to get converted to a <see cref="T:CSCore.ISampleSource"/>.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null.</exception>
            <exception cref="T:System.ArgumentException">The format of the <paramref name="source"/> is not 32-bit IeeeFloat.</exception>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.IeeeFloatToSample.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of samples from the <see cref="T:CSCore.Streams.SampleConverter.IeeeFloatToSample" /> and advances the position within the stream by the
                number of samples read.
            </summary>
            <param name="buffer">
                An array of floats. When this method returns, the <paramref name="buffer" /> contains the specified
                float array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the floats read from the current source.
            </param>
            <param name="offset">
                The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of samples to read from the current source.</param>
            <returns>The total number of samples read into the buffer.</returns>
        </member>
        <member name="T:CSCore.Streams.SampleConverter.SampleToPcm16">
            <summary>
            Converts a <see cref="T:CSCore.ISampleSource"/> to a 16-bit PCM <see cref="T:CSCore.IWaveSource"/>.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.SampleToPcm16.#ctor(CSCore.ISampleSource)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.SampleConverter.SampleToPcm16"/> class.
            </summary>
            <param name="source">The underlying <see cref="T:CSCore.ISampleSource"/> which has to get converted to a 16-bit PCM <see cref="T:CSCore.IWaveSource"/>.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null.</exception>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.SampleToPcm16.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from the <see cref="T:CSCore.Streams.SampleConverter.SampleToPcm16" /> and advances the position within the stream by the
                number of bytes read.
            </summary>
            <param name="buffer">
                An array of bytes. When this method returns, the <paramref name="buffer" /> contains the specified
                byte array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the bytes read from the current source.
            </param>
            <param name="offset">
                The zero-based byte offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of bytes to read from the current source.</param>
            <returns>The total number of bytes read into the buffer.</returns>
        </member>
        <member name="T:CSCore.Streams.SampleConverter.SampleToWaveBase">
            <summary>
            Converts a <see cref="T:CSCore.ISampleSource"/> to a <see cref="T:CSCore.IWaveSource"/>.
            </summary>
        </member>
        <member name="F:CSCore.Streams.SampleConverter.SampleToWaveBase.Source">
            <summary>
            The underlying source which provides samples.
            </summary>
        </member>
        <member name="F:CSCore.Streams.SampleConverter.SampleToWaveBase.Buffer">
            <summary>
            The buffer to use for reading from the <see cref="F:CSCore.Streams.SampleConverter.SampleToWaveBase.Source"/>.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.SampleToWaveBase.#ctor(CSCore.ISampleSource,System.Int32,CSCore.AudioEncoding)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.SampleConverter.SampleToWaveBase"/> class.
            </summary>
            <param name="source">The underlying <see cref="T:CSCore.ISampleSource"/> which has to get converted to a <see cref="T:CSCore.IWaveSource"/>.</param>
            <param name="bits">The <see cref="P:CSCore.WaveFormat.BitsPerSample"/> of the Output-<see cref="P:CSCore.Streams.SampleConverter.SampleToWaveBase.WaveFormat"/>.</param>
            <param name="encoding">The <see cref="P:CSCore.WaveFormat.WaveFormatTag"/> of the Output-<see cref="P:CSCore.Streams.SampleConverter.SampleToWaveBase.WaveFormat"/>.</param>
            <exception cref="T:System.ArgumentNullException">The <paramref name="source"/> is null.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException">Invalid number of bits per sample specified by the <paramref name="bits"/> argument.</exception>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.SampleToWaveBase.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from the <see cref="T:CSCore.Streams.SampleConverter.SampleToWaveBase" /> and advances the position within the stream by the
                number of bytes read.
            </summary>
            <param name="buffer">
                An array of bytes. When this method returns, the <paramref name="buffer" /> contains the specified
                byte array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the bytes read from the current source.
            </param>
            <param name="offset">
                The zero-based byte offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of bytes to read from the current source.</param>
            <returns>The total number of bytes read into the buffer.</returns>
        </member>
        <member name="P:CSCore.Streams.SampleConverter.SampleToWaveBase.WaveFormat">
            <summary>
                Gets the <see cref="T:CSCore.WaveFormat"/> of the output waveform-audio data.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SampleConverter.SampleToWaveBase.Position">
            <summary>
                Gets or sets the current position.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SampleConverter.SampleToWaveBase.Length">
            <summary>
                Gets the length of the waveform-audio data.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SampleConverter.SampleToWaveBase.CanSeek">
            <summary>
            Gets a value indicating whether the <see cref="T:CSCore.IAudioSource"/> supports seeking.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.SampleToWaveBase.Dispose">
            <summary>
            Disposes the <see cref="T:CSCore.Streams.SampleConverter.SampleToWaveBase"/> instance.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.SampleToWaveBase.Dispose(System.Boolean)">
            <summary>
            Disposes the underlying <see cref="F:CSCore.Streams.SampleConverter.SampleToWaveBase.Source"/>.
            </summary>
            <param name="disposing">Not used.</param>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.SampleToWaveBase.Finalize">
            <summary>
            Calls <see cref="M:CSCore.Streams.SampleConverter.SampleToWaveBase.Dispose(System.Boolean)"/>.
            </summary>
        </member>
        <member name="T:CSCore.Streams.SampleConverter.Pcm16BitToSample">
            <summary>
            Converts a 16-bit PCM <see cref="T:CSCore.IWaveSource"/> to a <see cref="T:CSCore.ISampleSource"/>.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.Pcm16BitToSample.#ctor(CSCore.IWaveSource)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.SampleConverter.Pcm16BitToSample"/> class.
            </summary>
            <param name="source">The underlying 16-bit POCM <see cref="T:CSCore.IWaveSource"/> instance which has to get converted to a <see cref="T:CSCore.ISampleSource"/>.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null.</exception>
            <exception cref="T:System.ArgumentException">The format of the <paramref name="source"/> is not 16-bit PCM.</exception>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.Pcm16BitToSample.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of samples from the <see cref="T:CSCore.Streams.SampleConverter.Pcm16BitToSample" /> and advances the position within the stream by the
                number of samples read.
            </summary>
            <param name="buffer">
                An array of floats. When this method returns, the <paramref name="buffer" /> contains the specified
                float array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the floats read from the current source.
            </param>
            <param name="offset">
                The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of samples to read from the current source.</param>
            <returns>The total number of samples read into the buffer.</returns>
        </member>
        <member name="T:CSCore.Streams.SampleConverter.Pcm24BitToSample">
            <summary>
            Converts a 24-bit PCM <see cref="T:CSCore.IWaveSource"/> to a <see cref="T:CSCore.ISampleSource"/>.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.Pcm24BitToSample.#ctor(CSCore.IWaveSource)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.SampleConverter.Pcm24BitToSample"/> class.
            </summary>
            <param name="source">The underlying 24-bit POCM <see cref="T:CSCore.IWaveSource"/> instance which has to get converted to a <see cref="T:CSCore.ISampleSource"/>.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null.</exception>
            <exception cref="T:System.ArgumentException">The format of the <paramref name="source"/> is not 24-bit PCM.</exception>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.Pcm24BitToSample.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of samples from the <see cref="T:CSCore.Streams.SampleConverter.Pcm24BitToSample" /> and advances the position within the stream by the
                number of samples read.
            </summary>
            <param name="buffer">
                An array of floats. When this method returns, the <paramref name="buffer" /> contains the specified
                float array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the floats read from the current source.
            </param>
            <param name="offset">
                The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of samples to read from the current source.</param>
            <returns>The total number of samples read into the buffer.</returns>
        </member>
        <member name="T:CSCore.Streams.SampleConverter.Pcm8BitToSample">
            <summary>
            Converts a 8-bit PCM <see cref="T:CSCore.IWaveSource"/> to a <see cref="T:CSCore.ISampleSource"/>.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.Pcm8BitToSample.#ctor(CSCore.IWaveSource)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.SampleConverter.Pcm8BitToSample"/> class.
            </summary>
            <param name="source">The underlying 8-bit POCM <see cref="T:CSCore.IWaveSource"/> instance which has to get converted to a <see cref="T:CSCore.ISampleSource"/>.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null.</exception>
            <exception cref="T:System.ArgumentException">The format of the <paramref name="source"/> is not 8-bit PCM.</exception>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.Pcm8BitToSample.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of samples from the <see cref="T:CSCore.Streams.SampleConverter.Pcm8BitToSample" /> and advances the position within the stream by the
                number of samples read.
            </summary>
            <param name="buffer">
                An array of floats. When this method returns, the <paramref name="buffer" /> contains the specified
                float array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the floats read from the current source.
            </param>
            <param name="offset">
                The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of samples to read from the current source.</param>
            <returns>The total number of samples read into the buffer.</returns>
        </member>
        <member name="T:CSCore.Streams.SampleConverter.WaveToSampleBase">
            <summary>
            Converts a <see cref="T:CSCore.ISampleSource"/> to a <see cref="T:CSCore.IWaveSource"/>.
            </summary>
        </member>
        <member name="F:CSCore.Streams.SampleConverter.WaveToSampleBase.Source">
            <summary>
            The underlying source which provides the raw data.
            </summary>
        </member>
        <member name="F:CSCore.Streams.SampleConverter.WaveToSampleBase.Buffer">
            <summary>
            The buffer to use for reading from the <see cref="F:CSCore.Streams.SampleConverter.WaveToSampleBase.Source"/>.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.WaveToSampleBase.#ctor(CSCore.IWaveSource)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.SampleConverter.WaveToSampleBase"/> class.
            </summary>
            <param name="source">The underlying <see cref="T:CSCore.IWaveSource"/> instance which has to get converted to a <see cref="T:CSCore.ISampleSource"/>.</param>
            <exception cref="T:System.ArgumentNullException">The <paramref name="source"/> argument is null.</exception>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.WaveToSampleBase.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of samples from the <see cref="T:CSCore.Streams.SampleConverter.WaveToSampleBase" /> and advances the position within the stream by the
                number of samples read.
            </summary>
            <param name="buffer">
                An array of floats. When this method returns, the <paramref name="buffer" /> contains the specified
                float array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the floats read from the current source.
            </param>
            <param name="offset">
                The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of samples to read from the current source.</param>
            <returns>The total number of samples read into the buffer.</returns>
        </member>
        <member name="P:CSCore.Streams.SampleConverter.WaveToSampleBase.WaveFormat">
            <summary>
                Gets the <see cref="T:CSCore.WaveFormat" /> of the waveform-audio data.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SampleConverter.WaveToSampleBase.Position">
            <summary>
                Gets or sets the current position in samples.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SampleConverter.WaveToSampleBase.Length">
            <summary>
                Gets the length of the waveform-audio data in samples.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SampleConverter.WaveToSampleBase.CanSeek">
            <summary>
            Gets a value indicating whether the <see cref="T:CSCore.IAudioSource"/> supports seeking.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.WaveToSampleBase.Dispose">
            <summary>
            Disposes the <see cref="T:CSCore.Streams.SampleConverter.WaveToSampleBase"/>.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.WaveToSampleBase.Dispose(System.Boolean)">
            <summary>
            Disposes the <see cref="F:CSCore.Streams.SampleConverter.WaveToSampleBase.Source"/>.
            </summary>
            <param name="disposing">Not used.</param>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.WaveToSampleBase.Finalize">
            <summary>
            Finalizes an instance of the <see cref="T:CSCore.Streams.SampleConverter.WaveToSampleBase"/> class.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SampleConverter.WaveToSampleBase.CreateConverter(CSCore.IWaveSource)">
            <summary>
            Returns an implementation of the <see cref="T:CSCore.ISampleSource"/> interface which converts the specified <paramref name="source"/> to a <see cref="T:CSCore.ISampleSource"/>.
            </summary>
            <param name="source">The <see cref="T:CSCore.IWaveSource"/> instance to convert.</param>
            <returns>Returns an implementation of the <see cref="T:CSCore.ISampleSource"/> interface which converts the specified <paramref name="source"/> to a <see cref="T:CSCore.ISampleSource"/>.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="source"/> is null.</exception>
            <exception cref="T:System.NotSupportedException">The <see cref="P:CSCore.IAudioSource.WaveFormat"/> of the <paramref name="source"/> is not supported.</exception>
        </member>
        <member name="T:CSCore.Streams.SynchronizedWaveSource`2">
            <summary>
                A thread-safe (synchronized) wrapper around the specified a <see cref="T:CSCore.IReadableAudioSource`1"/>.
            </summary>
            <typeparam name="TBaseSource">The type of the underlying <see cref="T:CSCore.IReadableAudioSource`1"/>.</typeparam>
            <typeparam name="T">The type of the data read by the <see cref="M:CSCore.Streams.SynchronizedWaveSource`2.Read(`1[],System.Int32,System.Int32)"/> method.</typeparam>
        </member>
        <member name="M:CSCore.Streams.SynchronizedWaveSource`2.#ctor(`0)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.SynchronizedWaveSource`2"/> class.
            </summary>
            <param name="baseWaveSource">The underlying source to synchronize.</param>
        </member>
        <member name="P:CSCore.Streams.SynchronizedWaveSource`2.WaveFormat">
            <summary>
                Gets the output <see cref="T:CSCore.WaveFormat"/> of the <see cref="P:CSCore.Streams.SynchronizedWaveSource`2.BaseSource" />.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SynchronizedWaveSource`2.Position">
            <summary>
                Gets or sets the position of the <see cref="P:CSCore.Streams.SynchronizedWaveSource`2.BaseSource" />.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SynchronizedWaveSource`2.Length">
            <summary>
                Gets the length of the <see cref="P:CSCore.Streams.SynchronizedWaveSource`2.BaseSource" />.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SynchronizedWaveSource`2.CanSeek">
            <summary>
            Gets a value indicating whether the <see cref="P:CSCore.Streams.SynchronizedWaveSource`2.BaseSource" /> supports seeking.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SynchronizedWaveSource`2.BaseSource">
            <summary>
                Gets or sets the <see cref="P:CSCore.Streams.SynchronizedWaveSource`2.BaseSource" />.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SynchronizedWaveSource`2.Read(`1[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of elements from the <see cref="P:CSCore.Streams.SynchronizedWaveSource`2.BaseSource" /> and advances its position by the
                number of elements read.
            </summary>
            <param name="buffer">
                An array of elements. When this method returns, the <paramref name="buffer" /> contains the specified
                array of elements with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the elements read from the current source.
            </param>
            <param name="offset">
                The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of elements to read from the current source.</param>
            <returns>The total number of elements read into the buffer.</returns>
        </member>
        <member name="M:CSCore.Streams.SynchronizedWaveSource`2.op_Explicit(CSCore.Streams.SynchronizedWaveSource{`0,`1})~`0">
            <summary>
                Defines an explicit conversation of a <see cref="T:CSCore.Streams.SynchronizedWaveSource`2" /> to its
                <see cref="P:CSCore.Streams.SynchronizedWaveSource`2.BaseSource" />.
            </summary>
            <param name="synchronizedWaveSource">Instance of the <see cref="T:CSCore.Streams.SynchronizedWaveSource`2" />.</param>
            <returns>The <see cref="P:CSCore.Streams.SynchronizedWaveSource`2.BaseSource" /> of the <paramref name="synchronizedWaveSource" />.</returns>
        </member>
        <member name="M:CSCore.Streams.SynchronizedWaveSource`2.Dispose(System.Boolean)">
            <summary>
                Disposes the <see cref="P:CSCore.Streams.SynchronizedWaveSource`2.BaseSource" /> and releases all allocated resources.
            </summary>
            <param name="disposing">
                True to release both managed and unmanaged resources; false to release only unmanaged
                resources.
            </param>
        </member>
        <member name="M:CSCore.Streams.SynchronizedWaveSource`2.Dispose">
            <summary>
                Disposes the <see cref="P:CSCore.Streams.SynchronizedWaveSource`2.BaseSource" /> and releases all allocated resources.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SynchronizedWaveSource`2.Finalize">
            <summary>
            Finalizes an instance of the <see cref="T:CSCore.Streams.SynchronizedWaveSource`2"/> class.
            </summary>
        </member>
        <member name="T:CSCore.Streams.WriteableBufferingSource">
            <summary>
            Buffered WaveSource which overrides the allocated memory after the internal buffer got full. 
            </summary>
        </member>
        <member name="P:CSCore.Streams.WriteableBufferingSource.FillWithZeros">
            <summary>
            Gets or sets a value which specifies whether the <see cref="M:CSCore.Streams.WriteableBufferingSource.Read(System.Byte[],System.Int32,System.Int32)"/> method should clear the specified buffer with zeros before reading any data.
            </summary>
        </member>
        <member name="P:CSCore.Streams.WriteableBufferingSource.MaxBufferSize">
            <summary>
            Gets the maximum size of the buffer in bytes.
            </summary>
            <value>
            The maximum size of the buffer in bytes.
            </value>
        </member>
        <member name="M:CSCore.Streams.WriteableBufferingSource.#ctor(CSCore.WaveFormat)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.WriteableBufferingSource"/> class with a default buffersize of 5 seconds.
            </summary>
            <param name="waveFormat">The WaveFormat of the source.</param>
        </member>
        <member name="M:CSCore.Streams.WriteableBufferingSource.#ctor(CSCore.WaveFormat,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.WriteableBufferingSource"/> class.
            </summary>
            <param name="waveFormat">The WaveFormat of the source.</param>
            <param name="bufferSize">Buffersize in bytes.</param>
        </member>
        <member name="M:CSCore.Streams.WriteableBufferingSource.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Adds new data to the internal buffer.
            </summary>
            <param name="buffer">A byte-array which contains the data.</param>
            <param name="offset">Zero-based offset in the <paramref name="buffer"/> (specified in bytes).</param>
            <param name="count">Number of bytes to add to the internal buffer.</param>
            <returns>Number of added bytes.</returns>
        </member>
        <member name="M:CSCore.Streams.WriteableBufferingSource.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from the internal buffer of the <see cref="T:CSCore.Streams.WriteableBufferingSource" /> and advances the position within the internal buffer by the
                number of bytes read.
            </summary>
            <param name="buffer">
                An array of bytes. When this method returns, the <paramref name="buffer" /> contains the specified
                byte array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the bytes read from the internal buffer.
            </param>
            <param name="offset">
                The zero-based byte offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the internal buffer.
            </param>
            <param name="count">The maximum number of bytes to read from the internal buffer.</param>
            <returns>The total number of bytes read into the <paramref name="buffer"/>.</returns>
        </member>
        <member name="P:CSCore.Streams.WriteableBufferingSource.WaveFormat">
            <summary>
                Gets the <see cref="P:CSCore.IAudioSource.WaveFormat" /> of the waveform-audio data.
            </summary>
        </member>
        <member name="P:CSCore.Streams.WriteableBufferingSource.Position">
            <summary>
                Not supported.
            </summary>
        </member>
        <member name="P:CSCore.Streams.WriteableBufferingSource.Length">
            <summary>
                Gets the number of stored bytes inside of the internal buffer.
            </summary>
        </member>
        <member name="P:CSCore.Streams.WriteableBufferingSource.CanSeek">
            <summary>
            Gets a value indicating whether the <see cref="T:CSCore.IAudioSource"/> supports seeking.
            </summary>
        </member>
        <member name="M:CSCore.Streams.WriteableBufferingSource.Dispose">
            <summary>
            Disposes the <see cref="T:CSCore.Streams.WriteableBufferingSource"/> and its internal buffer.
            </summary>
        </member>
        <member name="M:CSCore.Streams.WriteableBufferingSource.Dispose(System.Boolean)">
            <summary>
            Disposes the <see cref="T:CSCore.Streams.WriteableBufferingSource"/> and its internal buffer.
            </summary>
            <param name="disposing">True to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
        </member>
        <member name="M:CSCore.Streams.WriteableBufferingSource.Finalize">
            <summary>
            Default destructor which calls <see cref="M:CSCore.Streams.WriteableBufferingSource.Dispose(System.Boolean)"/>.
            </summary>
        </member>
        <member name="T:CSCore.Streams.BufferSource">
            <summary>
            Reads data from the <see cref="P:CSCore.WaveAggregatorBase.BaseSource"/> and stores the read data in a buffer.
            </summary>
        </member>
        <member name="M:CSCore.Streams.BufferSource.#ctor(CSCore.IWaveSource,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.BufferSource"/> class.
            </summary>
            <param name="source">The <see cref="T:CSCore.IWaveSource"/> to buffer.</param>
            <param name="bufferSize">Size of the buffer.</param>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="bufferSize"/> is out of range.</exception>
        </member>
        <member name="M:CSCore.Streams.BufferSource.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from internal buffer and advances the position by the
                number of bytes read.
            </summary>
            <param name="buffer">
                An array of bytes. When this method returns, the <paramref name="buffer" /> contains the specified
                byte array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the bytes read from the <see cref="T:CSCore.Streams.BufferSource"/>.
            </param>
            <param name="offset">
                The zero-based byte offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of bytes to read from the <see cref="T:CSCore.Streams.BufferSource"/>.</param>
            <returns>The total number of bytes read into the buffer.</returns>
            <exception cref="T:System.ObjectDisposedException">BufferSource</exception>
        </member>
        <member name="M:CSCore.Streams.BufferSource.ResetBuffer">
            <summary>
            Resets/Clears the buffer.
            </summary>
            <exception cref="T:System.ObjectDisposedException">BufferSource</exception>
        </member>
        <member name="P:CSCore.Streams.BufferSource.Position">
            <summary>
            Gets or sets the position of the source.
            </summary>
            <exception cref="T:System.ObjectDisposedException">
            BufferSource
            </exception>
        </member>
        <member name="P:CSCore.Streams.BufferSource.Length">
            <summary>
                Gets the length of the source.
            </summary>
        </member>
        <member name="M:CSCore.Streams.BufferSource.Dispose(System.Boolean)">
            <summary>
                Disposes the <see cref="P:CSCore.WaveAggregatorBase.BaseSource" /> and releases all allocated resources.
            </summary>
            <param name="disposing">True to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
        </member>
        <member name="T:CSCore.Streams.SingleBlockNotificationStream">
            <summary>
            Fire the <see cref="E:CSCore.Streams.SingleBlockNotificationStream.SingleBlockRead"/> event after every block read.
            </summary>
        </member>
        <member name="E:CSCore.Streams.SingleBlockNotificationStream.SingleBlockRead">
            <summary>
            Occurs when the <see cref="M:CSCore.Streams.SingleBlockNotificationStream.Read(System.Single[],System.Int32,System.Int32)"/> method reads a block.
            </summary>
            <remarks>If the <see cref="M:CSCore.Streams.SingleBlockNotificationStream.Read(System.Single[],System.Int32,System.Int32)"/> method reads <c>n</c> during a single call, the <see cref="E:CSCore.Streams.SingleBlockNotificationStream.SingleBlockRead"/> event will get fired <c>n</c> times.</remarks>
        </member>
        <member name="M:CSCore.Streams.SingleBlockNotificationStream.#ctor(CSCore.ISampleSource)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.SingleBlockNotificationStream"/> class.
            </summary>
            <param name="source">Underlying base source which provides audio data.</param>
            <exception cref="T:System.ArgumentNullException">source</exception>
        </member>
        <member name="M:CSCore.Streams.SingleBlockNotificationStream.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads a sequence of samples from the <see cref="T:CSCore.SampleAggregatorBase" /> and advances the position within the stream by
            the number of samples read. Fires the <see cref="E:CSCore.Streams.SingleBlockNotificationStream.SingleBlockRead"/> event for each block it reads (one block = (number of channels) samples).
            </summary>
            <param name="buffer">An array of floats. When this method returns, the <paramref name="buffer" /> contains the specified
            float array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
            <paramref name="count" /> - 1) replaced by the floats read from the current source.</param>
            <param name="offset">The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
            read from the current stream.</param>
            <param name="count">The maximum number of samples to read from the current source.</param>
            <returns>
            The total number of samples read into the buffer.
            </returns>
        </member>
        <member name="T:CSCore.Streams.SingleBlockReadEventArgs">
            <summary>
            Provides data for the <see cref="E:CSCore.Streams.SingleBlockNotificationStream.SingleBlockRead"/> event.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SingleBlockReadEventArgs.Left">
            <summary>
            Gets the sample of the left channel.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SingleBlockReadEventArgs.Right">
            <summary>
            Gets the sample of the right channel.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SingleBlockReadEventArgs.Samples">
            <summary>
            Gets the samples of all channels if the number of <see cref="P:CSCore.Streams.SingleBlockReadEventArgs.Channels"/> is greater or equal to three.
            </summary>
            <remarks>If the number of <see cref="P:CSCore.Streams.SingleBlockReadEventArgs.Channels"/> is less than three, the value of the <see cref="P:CSCore.Streams.SingleBlockReadEventArgs.Samples"/> property is null.</remarks>
        </member>
        <member name="P:CSCore.Streams.SingleBlockReadEventArgs.Channels">
            <summary>
            Gets the number of channels.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SingleBlockReadEventArgs.#ctor(System.Single[],System.Int32,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.SingleBlockReadEventArgs"/> class.
            </summary>
            <param name="samples">The samples.</param>
            <param name="index">The index inside of the <paramref name="samples"/>-array.</param>
            <param name="channels">The number of channels.</param>
        </member>
        <member name="T:CSCore.Streams.BlockReadEventArgs`1">
            <summary>
            Provides data for the <see cref="E:CSCore.Streams.NotificationSource.BlockRead"/> event.
            </summary>
            <typeparam name="T">Type of the <see cref="P:CSCore.Streams.BlockReadEventArgs`1.Data"/> array.</typeparam>
        </member>
        <member name="P:CSCore.Streams.BlockReadEventArgs`1.Length">
            <summary>
            Gets the number of read elements.
            </summary>
        </member>
        <member name="P:CSCore.Streams.BlockReadEventArgs`1.Data">
            <summary>
            Gets the array which contains the read data.
            </summary>
        </member>
        <member name="M:CSCore.Streams.BlockReadEventArgs`1.#ctor(`0[],System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.BlockReadEventArgs`1"/> class.
            </summary>
            <param name="data">The read data.</param>
            <param name="length">The number of read elements.</param>
        </member>
        <member name="T:CSCore.Streams.MonoToStereoSource">
            <summary>
            Converts a mono source to a stereo source.
            </summary>
        </member>
        <member name="M:CSCore.Streams.MonoToStereoSource.#ctor(CSCore.ISampleSource)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.MonoToStereoSource"/> class.
            </summary>
            <param name="source">The underlying mono source.</param>
            <exception cref="T:System.ArgumentException">The <paramref name="source"/> has more or less than one channel.</exception>
        </member>
        <member name="M:CSCore.Streams.MonoToStereoSource.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of samples from the <see cref="T:CSCore.Streams.MonoToStereoSource" /> and advances the position within the stream by
                the number of samples read.
            </summary>
            <param name="buffer">
                An array of floats. When this method returns, the <paramref name="buffer" /> contains the specified
                float array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the floats read from the current source.
            </param>
            <param name="offset">
                The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of samples to read from the current source.</param>
            <returns>The total number of samples read into the buffer.</returns>
        </member>
        <member name="P:CSCore.Streams.MonoToStereoSource.Position">
            <summary>
                Gets or sets the position in samples.
            </summary>
        </member>
        <member name="P:CSCore.Streams.MonoToStereoSource.Length">
            <summary>
                Gets the length in samples.
            </summary>
        </member>
        <member name="P:CSCore.Streams.MonoToStereoSource.WaveFormat">
            <summary>
                Gets the <see cref="P:CSCore.IAudioSource.WaveFormat" /> of the waveform-audio data.
            </summary>
        </member>
        <member name="M:CSCore.Streams.MonoToStereoSource.Dispose(System.Boolean)">
            <summary>
                Disposes the <see cref="T:CSCore.Streams.MonoToStereoSource" /> and the underlying <see cref="P:CSCore.SampleAggregatorBase.BaseSource" />.
            </summary>
            <param name="disposing">
                True to release both managed and unmanaged resources; false to release only unmanaged
                resources.
            </param>
        </member>
        <member name="T:CSCore.Streams.NotificationSource">
            <summary>
            Notifies the client when a certain amount of data got read.
            </summary>
            <remarks>Can be used as some kind of a timer for playbacks,...</remarks>
        </member>
        <member name="M:CSCore.Streams.NotificationSource.#ctor(CSCore.ISampleSource)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Streams.NotificationSource" /> class.
            </summary>
            <param name="source">Underlying base source which provides audio data.</param>
            <exception cref="T:System.ArgumentNullException">source is null.</exception>
        </member>
        <member name="P:CSCore.Streams.NotificationSource.BlockCount">
            <summary>
                Gets or sets the interval in blocks. One block equals one sample for each channel.
            </summary>
        </member>
        <member name="P:CSCore.Streams.NotificationSource.Interval">
            <summary>
                Gets or sets the interval in milliseconds.
            </summary>
        </member>
        <member name="E:CSCore.Streams.NotificationSource.BlockRead">
            <summary>
                Occurs when a specified amount of data got read.
            </summary>
            <remarks>
                The <see cref="P:CSCore.Streams.NotificationSource.Interval" />- or the <see cref="P:CSCore.Streams.NotificationSource.BlockCount" />-property specifies how many samples have to get
                read to trigger the <see cref="E:CSCore.Streams.NotificationSource.BlockRead" /> event.
            </remarks>
        </member>
        <member name="M:CSCore.Streams.NotificationSource.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of samples from the <see cref="T:CSCore.SampleAggregatorBase" /> and advances the position within the
                stream by
                the number of samples read. When the [(number of total samples read) / (number of channels)] %
                <see cref="P:CSCore.Streams.NotificationSource.BlockCount" /> = 0, the <see cref="E:CSCore.Streams.NotificationSource.BlockRead" /> event gets triggered.
            </summary>
            <param name="buffer">
                An array of floats. When this method returns, the <paramref name="buffer" /> contains the specified
                float array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the floats read from the current source.
            </param>
            <param name="offset">
                The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of samples to read from the current source.</param>
            <returns>
                The total number of samples read into the buffer.
            </returns>
        </member>
        <member name="T:CSCore.Streams.PanSource">
            <summary>
            Provides control over the balance between the left and the right channel of an audio source.
            </summary>
        </member>
        <member name="P:CSCore.Streams.PanSource.Pan">
            <summary>
            Gets or sets the balance. The valid range is from -1 to 1. -1 will mute the right channel, 1 will mute left channel.
            </summary>
            <exception cref="T:System.ArgumentOutOfRangeException">The value is not within the specified range.</exception>
        </member>
        <member name="M:CSCore.Streams.PanSource.#ctor(CSCore.ISampleSource)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.PanSource"/> class.
            </summary>
            <param name="source">Underlying base source which provides audio data.</param>
            <exception cref="T:System.ArgumentException">Source has to be stereo.</exception>
        </member>
        <member name="M:CSCore.Streams.PanSource.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads a sequence of samples from the <see cref="T:CSCore.SampleAggregatorBase" /> and advances the position within the stream by
            the number of samples read.
            </summary>
            <param name="buffer">An array of floats. When this method returns, the <paramref name="buffer" /> contains the specified
            float array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
            <paramref name="count" /> - 1) replaced by the floats read from the current source.</param>
            <param name="offset">The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
            read from the current stream.</param>
            <param name="count">The maximum number of samples to read from the current source.</param>
            <returns>
            The total number of samples read into the buffer.
            </returns>
            <exception cref="T:System.InvalidOperationException">Read samples has to be a multiple of two.</exception>
        </member>
        <member name="T:CSCore.Streams.SimpleNotificationSource">
            <summary>
                Notifies the client when a specific number of samples got read and when the <see cref="M:CSCore.Streams.SimpleNotificationSource.Read(System.Single[],System.Int32,System.Int32)" /> method got called.
            </summary>
            <remarks>Compared to the <see cref="T:CSCore.Streams.NotificationSource" />, none of both events won't provide the read data.</remarks>
        </member>
        <member name="M:CSCore.Streams.SimpleNotificationSource.#ctor(CSCore.ISampleSource)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Streams.SimpleNotificationSource" /> class.
            </summary>
            <param name="source">Underlying base source which provides audio data.</param>
            <exception cref="T:System.ArgumentNullException">source</exception>
        </member>
        <member name="P:CSCore.Streams.SimpleNotificationSource.BlockCount">
            <summary>
                Gets or sets the interval (in which to fire the <see cref="E:CSCore.Streams.SimpleNotificationSource.BlockRead" /> event) in blocks. One block equals one
                sample for each channel.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SimpleNotificationSource.Interval">
            <summary>
                Gets or sets the interval (in which to fire the <see cref="E:CSCore.Streams.SimpleNotificationSource.BlockRead" /> event) in milliseconds.
            </summary>
        </member>
        <member name="E:CSCore.Streams.SimpleNotificationSource.DataRead">
            <summary>
                Occurs when the <see cref="M:CSCore.Streams.SimpleNotificationSource.Read(System.Single[],System.Int32,System.Int32)" /> method got called.
            </summary>
        </member>
        <member name="E:CSCore.Streams.SimpleNotificationSource.BlockRead">
            <summary>
                Occurs when a specified amount of data got read.
            </summary>
            <remarks>
                The <see cref="P:CSCore.Streams.SimpleNotificationSource.Interval" />- or the <see cref="P:CSCore.Streams.SimpleNotificationSource.BlockCount" />-property specifies how many samples have to get
                read to trigger the <see cref="E:CSCore.Streams.SimpleNotificationSource.BlockRead" /> event.
            </remarks>
        </member>
        <member name="M:CSCore.Streams.SimpleNotificationSource.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of samples from the <see cref="T:CSCore.SampleAggregatorBase" /> and advances the position within the
                stream by
                the number of samples read. Triggers the <see cref="E:CSCore.Streams.SimpleNotificationSource.DataRead" /> event and if the [(number of total samples read) /
                (number of channels)] %
                <see cref="P:CSCore.Streams.SimpleNotificationSource.BlockCount" /> = 0, the <see cref="E:CSCore.Streams.SimpleNotificationSource.BlockRead" /> event gets triggered.
            </summary>
            <param name="buffer">
                An array of floats. When this method returns, the <paramref name="buffer" /> contains the specified
                float array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the floats read from the current source.
            </param>
            <param name="offset">
                The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of samples to read from the current source.</param>
            <returns>
                The total number of samples read into the buffer.
            </returns>
        </member>
        <member name="T:CSCore.Streams.VolumeSource">
            <summary>
            Provides the ability to adjust the volume of an audio stream.
            </summary>
        </member>
        <member name="F:CSCore.Streams.VolumeSource.Epsilon">
            <summary>
            The epsilon which is used to compare for almost-equality of the volume in <see cref="M:CSCore.Streams.VolumeSource.Read(System.Single[],System.Int32,System.Int32)"/>.
            </summary>
        </member>
        <member name="P:CSCore.Streams.VolumeSource.Volume">
            <summary>
            Gets or sets the volume specified by a value in the range from 0.0 to 1.0.
            </summary>
        </member>
        <member name="M:CSCore.Streams.VolumeSource.#ctor(CSCore.ISampleSource)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.VolumeSource"/> class.
            </summary>
            <param name="source">The underlying base source.</param>
        </member>
        <member name="M:CSCore.Streams.VolumeSource.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of samples from the <see cref="T:CSCore.Streams.VolumeSource" /> and advances the position within the stream by
                the number of samples read. After reading the samples, the volume of the read samples gets manipulated.
            </summary>
            <param name="buffer">
                An array of floats. When this method returns, the <paramref name="buffer" /> contains the specified
                float array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the floats read from the current source.
            </param>
            <param name="offset">
                The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of samples to read from the current source.</param>
            <returns>The total number of samples read into the buffer.</returns>
        </member>
        <member name="T:CSCore.Streams.SoundInSource">
            <summary>
            Represents an implementation of the <see cref="T:CSCore.IWaveSource"/> interface which provides the data provided by a specified <see cref="T:CSCore.SoundIn.ISoundIn"/> object.
            </summary>
        </member>
        <member name="E:CSCore.Streams.SoundInSource.DataAvailable">
            <summary>
            Occurs when new data is available.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SoundInSource.SoundIn">
            <summary>
            Gets the underlying <see cref="T:CSCore.SoundIn.ISoundIn"/> instance.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SoundInSource.#ctor(CSCore.SoundIn.ISoundIn)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.SoundInSource"/> class with a default bufferSize of 5 seconds.
            </summary>
            <param name="soundIn">The soundIn which provides recorded data.</param>
            <remarks>
            Note that soundIn has to be already initialized.
            Note that old data ("old" gets specified by the bufferSize) gets overridden. 
            For example, if the bufferSize is about 5 seconds big, data which got recorded 6 seconds ago, won't be available anymore.
            </remarks>
        </member>
        <member name="M:CSCore.Streams.SoundInSource.#ctor(CSCore.SoundIn.ISoundIn,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.SoundInSource"/> class.
            </summary>
            <param name="soundIn">The soundIn which provides recorded data.</param>
            <param name="bufferSize">Size of the internal buffer in bytes.</param>
            <remarks>
            Note that soundIn has to be already initialized.
            Note that old data ("old" gets specified by the bufferSize) gets overridden. 
            For example, if the bufferSize is about 5 seconds big, data which got recorded 6 seconds ago, won't be available anymore.
            </remarks>
        </member>
        <member name="M:CSCore.Streams.SoundInSource.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from the internal stream which holds recorded data and advances the position within the stream by the
                number of bytes read.
            </summary>
            <param name="buffer">
                An array of bytes. When this method returns, the <paramref name="buffer" /> contains the specified
                byte array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the bytes read from the current source.
            </param>
            <param name="offset">
                The zero-based byte offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of bytes to read from the current source.</param>
            <returns>The total number of bytes read into the buffer.</returns>
        </member>
        <member name="P:CSCore.Streams.SoundInSource.WaveFormat">
            <summary>
                Gets the <see cref="P:CSCore.IAudioSource.WaveFormat" /> of the recorded data.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SoundInSource.Position">
            <summary>
                Gets or sets the current position in bytes. This property is currently not supported. 
            </summary>
        </member>
        <member name="P:CSCore.Streams.SoundInSource.Length">
            <summary>
            Gets the length in bytes. This property is currently not supported.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SoundInSource.CanSeek">
            <summary>
            Gets a value indicating whether the <see cref="T:CSCore.IAudioSource"/> supports seeking.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SoundInSource.FillWithZeros">
            <summary>
            Gets or sets a value which indicates whether the <see cref="M:CSCore.Streams.SoundInSource.Read(System.Byte[],System.Int32,System.Int32)"/> method should always provide the requested amount of data.
            For the case that the internal buffer can't offer the requested amount of data, the rest of the requested bytes will be filled up with zeros.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SoundInSource.Dispose">
            <summary>
            Disposes the <see cref="T:CSCore.Streams.SoundInSource"/>.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SoundInSource.Dispose(System.Boolean)">
            <summary>
            Disposes the <see cref="T:CSCore.Streams.SoundInSource"/>.
            </summary>
            <param name="disposing">Not used.</param>
        </member>
        <member name="M:CSCore.Streams.SoundInSource.Finalize">
            <summary>
            Destructor of the <see cref="T:CSCore.Streams.SoundInSource"/> class which calls the <see cref="M:CSCore.Streams.SoundInSource.Dispose(System.Boolean)"/> method.
            </summary>
        </member>
        <member name="T:CSCore.Streams.StereoToMonoSource">
            <summary>
            Converts a stereo source to a mono source.
            </summary>
        </member>
        <member name="M:CSCore.Streams.StereoToMonoSource.#ctor(CSCore.ISampleSource)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.StereoToMonoSource"/> class.
            </summary>
            <param name="source">The underlying stereo source.</param>
            <exception cref="T:System.ArgumentException">The <paramref name="source"/> has more or less than two channels.</exception>
        </member>
        <member name="M:CSCore.Streams.StereoToMonoSource.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of samples from the <see cref="T:CSCore.Streams.StereoToMonoSource" /> and advances the position within the stream by
                the number of samples read.
            </summary>
            <param name="buffer">
                An array of floats. When this method returns, the <paramref name="buffer" /> contains the specified
                float array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the floats read from the current source.
            </param>
            <param name="offset">
                The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of samples to read from the current source.</param>
            <returns>The total number of samples read into the buffer.</returns>
        </member>
        <member name="P:CSCore.Streams.StereoToMonoSource.Position">
            <summary>
                Gets or sets the position in samples.
            </summary>
        </member>
        <member name="P:CSCore.Streams.StereoToMonoSource.Length">
            <summary>
                Gets the length in samples.
            </summary>
        </member>
        <member name="P:CSCore.Streams.StereoToMonoSource.WaveFormat">
            <summary>
                Gets the <see cref="P:CSCore.IAudioSource.WaveFormat" /> of the waveform-audio data.
            </summary>
        </member>
        <member name="M:CSCore.Streams.StereoToMonoSource.Dispose(System.Boolean)">
            <summary>
                Disposes the <see cref="T:CSCore.Streams.StereoToMonoSource" /> and the underlying <see cref="P:CSCore.SampleAggregatorBase.BaseSource" />.
            </summary>
            <param name="disposing">
                True to release both managed and unmanaged resources; false to release only unmanaged
                resources.
            </param>
        </member>
        <member name="T:CSCore.Streams.LoopStream">
            <summary>
                A Stream which can be used for endless looping.
            </summary>
        </member>
        <member name="M:CSCore.Streams.LoopStream.#ctor(CSCore.IWaveSource)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Streams.LoopStream" /> class.
            </summary>
            <param name="source">The underlying <see cref="T:CSCore.IWaveSource" />.</param>
        </member>
        <member name="P:CSCore.Streams.LoopStream.EnableLoop">
            <summary>
                Gets or sets whether looping is enabled.
            </summary>
        </member>
        <member name="E:CSCore.Streams.LoopStream.StreamFinished">
            <summary>
                Occurs when the underlying <see cref="P:CSCore.WaveAggregatorBase.BaseSource" /> reaches its end.
                If the <see cref="P:CSCore.Streams.LoopStream.EnableLoop" /> property is set to true, the Position of the
                <see cref="P:CSCore.WaveAggregatorBase.BaseSource" /> will be reseted to zero.
            </summary>
        </member>
        <member name="M:CSCore.Streams.LoopStream.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads from the underlying <see cref="P:CSCore.WaveAggregatorBase.BaseSource" />. If the
                <see cref="P:CSCore.WaveAggregatorBase.BaseSource" /> does not provide any more data, its position gets reseted to zero.
            </summary>
            <param name="buffer">Buffer which receives the read data.</param>
            <param name="offset">Zero-based offset offset in the <paramref name="buffer" /> at which to begin storing data.</param>
            <param name="count">The maximum number of bytes to read.</param>
            <returns>Actual number of read bytes.</returns>
        </member>
        <member name="T:CSCore.Streams.SineGenerator">
            <summary>
            Generates a sine wave.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SineGenerator.Frequency">
            <summary>
            Gets or sets the frequency of the sine wave.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SineGenerator.Amplitude">
            <summary>
            Gets or sets the amplitude of the sine wave.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SineGenerator.Phase">
            <summary>
            Gets or sets the phase of the sine wave.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SineGenerator.#ctor">
            <summary>
            1000Hz, 0.5 amplitude, 0.0 phase
            </summary>
        </member>
        <member name="M:CSCore.Streams.SineGenerator.#ctor(System.Double,System.Double,System.Double)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Streams.SineGenerator"/> class.
            </summary>
            <param name="frequency">Specifies the frequency of the sine wave in Hz.</param>
            <param name="amplitude">Specifies the amplitude of the sine wave. Use a value between 0 and 1.</param>
            <param name="phase">Specifies the initial phase. Use a value between 0 and 1.</param>
        </member>
        <member name="M:CSCore.Streams.SineGenerator.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of samples from the <see cref="T:CSCore.Streams.SineGenerator" />.
            </summary>
            <param name="buffer">
                An array of floats. When this method returns, the <paramref name="buffer" /> contains the specified
                float array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the floats read from the current source.
            </param>
            <param name="offset">
                The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of samples to read from the current source.</param>
            <returns>The total number of samples read into the buffer.</returns>
        </member>
        <member name="P:CSCore.Streams.SineGenerator.WaveFormat">
            <summary>
                Gets the <see cref="P:CSCore.IAudioSource.WaveFormat" /> of the waveform-audio data.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SineGenerator.Position">
            <summary>
            Not supported.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SineGenerator.Length">
            <summary>
            Not supported.
            </summary>
        </member>
        <member name="P:CSCore.Streams.SineGenerator.CanSeek">
            <summary>
            Gets a value indicating whether the <see cref="T:CSCore.IAudioSource"/> supports seeking.
            </summary>
        </member>
        <member name="M:CSCore.Streams.SineGenerator.Dispose">
            <summary>
            Not used.
            </summary>
        </member>
        <member name="T:CSCore.AudioEncoding">
            <summary>
                Defines all known encoding types. Primary used in the <see cref="T:CSCore.WaveFormat" /> class. See
                <see cref="P:CSCore.WaveFormat.WaveFormatTag" />.
            </summary>
        </member>
        <member name="F:CSCore.AudioEncoding.Unknown">
            <summary>WAVE_FORMAT_UNKNOWN,	Microsoft Corporation</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.Pcm">
            <summary>WAVE_FORMAT_PCM		Microsoft Corporation</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.Adpcm">
            <summary>WAVE_FORMAT_ADPCM		Microsoft Corporation</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.IeeeFloat">
            <summary>WAVE_FORMAT_IEEE_FLOAT Microsoft Corporation</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.Vselp">
            <summary>WAVE_FORMAT_VSELP		Compaq Computer Corp.</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.IbmCvsd">
            <summary>WAVE_FORMAT_IBM_CVSD	IBM Corporation</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.ALaw">
            <summary>WAVE_FORMAT_ALAW		Microsoft Corporation</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.MuLaw">
            <summary>WAVE_FORMAT_MULAW		Microsoft Corporation</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.Dts">
            <summary>WAVE_FORMAT_DTS		Microsoft Corporation</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.Drm">
            <summary>WAVE_FORMAT_DRM		Microsoft Corporation</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WmaVoice9">
            <summary>WAVE_FORMAT_WMAVOICE9 </summary>
        </member>
        <member name="F:CSCore.AudioEncoding.OkiAdpcm">
            <summary>WAVE_FORMAT_OKI_ADPCM	OKI</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.DviAdpcm">
            <summary>WAVE_FORMAT_DVI_ADPCM	Intel Corporation</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.ImaAdpcm">
            <summary>WAVE_FORMAT_IMA_ADPCM  Intel Corporation</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.MediaspaceAdpcm">
            <summary>WAVE_FORMAT_MEDIASPACE_ADPCM Videologic</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.SierraAdpcm">
            <summary>WAVE_FORMAT_SIERRA_ADPCM Sierra Semiconductor Corp </summary>
        </member>
        <member name="F:CSCore.AudioEncoding.G723Adpcm">
            <summary>WAVE_FORMAT_G723_ADPCM Antex Electronics Corporation </summary>
        </member>
        <member name="F:CSCore.AudioEncoding.DigiStd">
            <summary>WAVE_FORMAT_DIGISTD DSP Solutions, Inc.</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.DigiFix">
            <summary>WAVE_FORMAT_DIGIFIX DSP Solutions, Inc.</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.DialogicOkiAdpcm">
            <summary>WAVE_FORMAT_DIALOGIC_OKI_ADPCM Dialogic Corporation</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.MediaVisionAdpcm">
            <summary>WAVE_FORMAT_MEDIAVISION_ADPCM Media Vision, Inc.</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.CUCodec">
            <summary>WAVE_FORMAT_CU_CODEC Hewlett-Packard Company </summary>
        </member>
        <member name="F:CSCore.AudioEncoding.YamahaAdpcm">
            <summary>WAVE_FORMAT_YAMAHA_ADPCM Yamaha Corporation of America</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.SonarC">
            <summary>WAVE_FORMAT_SONARC Speech Compression</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.DspGroupTrueSpeech">
            <summary>WAVE_FORMAT_DSPGROUP_TRUESPEECH DSP Group, Inc </summary>
        </member>
        <member name="F:CSCore.AudioEncoding.EchoSpeechCorporation1">
            <summary>WAVE_FORMAT_ECHOSC1 Echo Speech Corporation</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.AudioFileAf36">
            <summary>WAVE_FORMAT_AUDIOFILE_AF36, Virtual Music, Inc.</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.Aptx">
            <summary>WAVE_FORMAT_APTX Audio Processing Technology</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.AudioFileAf10">
            <summary>WAVE_FORMAT_AUDIOFILE_AF10, Virtual Music, Inc.</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.Prosody1612">
            <summary>WAVE_FORMAT_PROSODY_1612, Aculab plc</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.Lrc">
            <summary>WAVE_FORMAT_LRC, Merging Technologies S.A. </summary>
        </member>
        <member name="F:CSCore.AudioEncoding.DolbyAc2">
            <summary>WAVE_FORMAT_DOLBY_AC2, Dolby Laboratories</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.Gsm610">
            <summary>WAVE_FORMAT_GSM610, Microsoft Corporation</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.MsnAudio">
            <summary>WAVE_FORMAT_MSNAUDIO, Microsoft Corporation</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.AntexAdpcme">
            <summary>WAVE_FORMAT_ANTEX_ADPCME, Antex Electronics Corporation</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.ControlResVqlpc">
            <summary>WAVE_FORMAT_CONTROL_RES_VQLPC, Control Resources Limited </summary>
        </member>
        <member name="F:CSCore.AudioEncoding.DigiReal">
            <summary>WAVE_FORMAT_DIGIREAL, DSP Solutions, Inc. </summary>
        </member>
        <member name="F:CSCore.AudioEncoding.DigiAdpcm">
            <summary>WAVE_FORMAT_DIGIADPCM, DSP Solutions, Inc.</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.ControlResCr10">
            <summary>WAVE_FORMAT_CONTROL_RES_CR10, Control Resources Limited</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_NMS_VBXADPCM">
            <summary>WAVE_FORMAT_NMS_VBXADPCM</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_CS_IMAADPCM">
            <summary>WAVE_FORMAT_CS_IMAADPCM</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_ECHOSC3">
            <summary>WAVE_FORMAT_ECHOSC3</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_ROCKWELL_ADPCM">
            <summary>WAVE_FORMAT_ROCKWELL_ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_ROCKWELL_DIGITALK">
            <summary>WAVE_FORMAT_ROCKWELL_DIGITALK</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_XEBEC">
            <summary>WAVE_FORMAT_XEBEC</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_G721_ADPCM">
            <summary>WAVE_FORMAT_G721_ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_G728_CELP">
            <summary>WAVE_FORMAT_G728_CELP</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_MSG723">
            <summary>WAVE_FORMAT_MSG723</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.Mpeg">
            <summary>WAVE_FORMAT_MPEG, Microsoft Corporation </summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_RT24">
            <summary>WAVE_FORMAT_RT24</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_PAC">
            <summary>WAVE_FORMAT_PAC</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.MpegLayer3">
            <summary>WAVE_FORMAT_MPEGLAYER3, ISO/MPEG Layer3 Format Tag </summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_LUCENT_G723">
            <summary>WAVE_FORMAT_LUCENT_G723</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_CIRRUS">
            <summary>WAVE_FORMAT_CIRRUS</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_ESPCM">
            <summary>WAVE_FORMAT_ESPCM</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_VOXWARE">
            <summary>WAVE_FORMAT_VOXWARE</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_CANOPUS_ATRAC">
            <summary>WAVE_FORMAT_CANOPUS_ATRAC</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_G726_ADPCM">
            <summary>WAVE_FORMAT_G726_ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_G722_ADPCM">
            <summary>WAVE_FORMAT_G722_ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_DSAT_DISPLAY">
            <summary>WAVE_FORMAT_DSAT_DISPLAY</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_VOXWARE_BYTE_ALIGNED">
            <summary>WAVE_FORMAT_VOXWARE_BYTE_ALIGNED</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_VOXWARE_AC8">
            <summary>WAVE_FORMAT_VOXWARE_AC8</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_VOXWARE_AC10">
            <summary>WAVE_FORMAT_VOXWARE_AC10</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_VOXWARE_AC16">
            <summary>WAVE_FORMAT_VOXWARE_AC16</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_VOXWARE_AC20">
            <summary>WAVE_FORMAT_VOXWARE_AC20</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_VOXWARE_RT24">
            <summary>WAVE_FORMAT_VOXWARE_RT24</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_VOXWARE_RT29">
            <summary>WAVE_FORMAT_VOXWARE_RT29</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_VOXWARE_RT29HW">
            <summary>WAVE_FORMAT_VOXWARE_RT29HW</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_VOXWARE_VR12">
            <summary>WAVE_FORMAT_VOXWARE_VR12</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_VOXWARE_VR18">
            <summary>WAVE_FORMAT_VOXWARE_VR18</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_VOXWARE_TQ40">
            <summary>WAVE_FORMAT_VOXWARE_TQ40</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_SOFTSOUND">
            <summary>WAVE_FORMAT_SOFTSOUND</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_VOXWARE_TQ60">
            <summary>WAVE_FORMAT_VOXWARE_TQ60</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_MSRT24">
            <summary>WAVE_FORMAT_MSRT24</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_G729A">
            <summary>WAVE_FORMAT_G729A</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_MVI_MVI2">
            <summary>WAVE_FORMAT_MVI_MVI2</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_DF_G726">
            <summary>WAVE_FORMAT_DF_G726</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_DF_GSM610">
            <summary>WAVE_FORMAT_DF_GSM610</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_ISIAUDIO">
            <summary>WAVE_FORMAT_ISIAUDIO</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_ONLIVE">
            <summary>WAVE_FORMAT_ONLIVE</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_SBC24">
            <summary>WAVE_FORMAT_SBC24</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_DOLBY_AC3_SPDIF">
            <summary>WAVE_FORMAT_DOLBY_AC3_SPDIF</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_MEDIASONIC_G723">
            <summary>WAVE_FORMAT_MEDIASONIC_G723</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_PROSODY_8KBPS">
            <summary>WAVE_FORMAT_PROSODY_8KBPS</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_ZYXEL_ADPCM">
            <summary>WAVE_FORMAT_ZYXEL_ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_PHILIPS_LPCBB">
            <summary>WAVE_FORMAT_PHILIPS_LPCBB</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_PACKED">
            <summary>WAVE_FORMAT_PACKED</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_MALDEN_PHONYTALK">
            <summary>WAVE_FORMAT_MALDEN_PHONYTALK</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.Gsm">
            <summary>WAVE_FORMAT_GSM</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.G729">
            <summary>WAVE_FORMAT_G729</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.G723">
            <summary>WAVE_FORMAT_G723</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.Acelp">
            <summary>WAVE_FORMAT_ACELP</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.RawAac">
            <summary>
                WAVE_FORMAT_RAW_AAC1
            </summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_RHETOREX_ADPCM">
            <summary>WAVE_FORMAT_RHETOREX_ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_IRAT">
            <summary>WAVE_FORMAT_IRAT</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_VIVO_G723">
            <summary>WAVE_FORMAT_VIVO_G723</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_VIVO_SIREN">
            <summary>WAVE_FORMAT_VIVO_SIREN</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_DIGITAL_G723">
            <summary>WAVE_FORMAT_DIGITAL_G723</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_SANYO_LD_ADPCM">
            <summary>WAVE_FORMAT_SANYO_LD_ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_SIPROLAB_ACEPLNET">
            <summary>WAVE_FORMAT_SIPROLAB_ACEPLNET</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_SIPROLAB_ACELP4800">
            <summary>WAVE_FORMAT_SIPROLAB_ACELP4800</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_SIPROLAB_ACELP8V3">
            <summary>WAVE_FORMAT_SIPROLAB_ACELP8V3</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_SIPROLAB_G729">
            <summary>WAVE_FORMAT_SIPROLAB_G729</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_SIPROLAB_G729A">
            <summary>WAVE_FORMAT_SIPROLAB_G729A</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_SIPROLAB_KELVIN">
            <summary>WAVE_FORMAT_SIPROLAB_KELVIN</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_G726ADPCM">
            <summary>WAVE_FORMAT_G726ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_QUALCOMM_PUREVOICE">
            <summary>WAVE_FORMAT_QUALCOMM_PUREVOICE</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_QUALCOMM_HALFRATE">
            <summary>WAVE_FORMAT_QUALCOMM_HALFRATE</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_TUBGSM">
            <summary>WAVE_FORMAT_TUBGSM</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_MSAUDIO1">
            <summary>WAVE_FORMAT_MSAUDIO1</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WindowsMediaAudio">
            <summary>
                Windows Media Audio, WAVE_FORMAT_WMAUDIO2, Microsoft Corporation
            </summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WindowsMediaAudioProfessional">
            <summary>
                Windows Media Audio Professional WAVE_FORMAT_WMAUDIO3, Microsoft Corporation
            </summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WindowsMediaAudioLosseless">
            <summary>
                Windows Media Audio Lossless, WAVE_FORMAT_WMAUDIO_LOSSLESS
            </summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WindowsMediaAudioSpdif">
            <summary>
                Windows Media Audio Professional over SPDIF WAVE_FORMAT_WMASPDIF (0x0164)
            </summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_UNISYS_NAP_ADPCM">
            <summary>WAVE_FORMAT_UNISYS_NAP_ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_UNISYS_NAP_ULAW">
            <summary>WAVE_FORMAT_UNISYS_NAP_ULAW</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_UNISYS_NAP_ALAW">
            <summary>WAVE_FORMAT_UNISYS_NAP_ALAW</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_UNISYS_NAP_16K">
            <summary>WAVE_FORMAT_UNISYS_NAP_16K</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_CREATIVE_ADPCM">
            <summary>WAVE_FORMAT_CREATIVE_ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_CREATIVE_FASTSPEECH8">
            <summary>WAVE_FORMAT_CREATIVE_FASTSPEECH8</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_CREATIVE_FASTSPEECH10">
            <summary>WAVE_FORMAT_CREATIVE_FASTSPEECH10</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_UHER_ADPCM">
            <summary>WAVE_FORMAT_UHER_ADPCM</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_QUARTERDECK">
            <summary>WAVE_FORMAT_QUARTERDECK</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_ILINK_VC">
            <summary>WAVE_FORMAT_ILINK_VC</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_RAW_SPORT">
            <summary>WAVE_FORMAT_RAW_SPORT</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_ESST_AC3">
            <summary>WAVE_FORMAT_ESST_AC3</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_IPI_HSX">
            <summary>WAVE_FORMAT_IPI_HSX</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_IPI_RPELP">
            <summary>WAVE_FORMAT_IPI_RPELP</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_CS2">
            <summary>WAVE_FORMAT_CS2</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_SONY_SCX">
            <summary>WAVE_FORMAT_SONY_SCX</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_FM_TOWNS_SND">
            <summary>WAVE_FORMAT_FM_TOWNS_SND</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_BTV_DIGITAL">
            <summary>WAVE_FORMAT_BTV_DIGITAL</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_QDESIGN_MUSIC">
            <summary>WAVE_FORMAT_QDESIGN_MUSIC</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_VME_VMPCM">
            <summary>WAVE_FORMAT_VME_VMPCM</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_TPC">
            <summary>WAVE_FORMAT_TPC</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_OLIGSM">
            <summary>WAVE_FORMAT_OLIGSM</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_OLIADPCM">
            <summary>WAVE_FORMAT_OLIADPCM</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_OLICELP">
            <summary>WAVE_FORMAT_OLICELP</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_OLISBC">
            <summary>WAVE_FORMAT_OLISBC</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_OLIOPR">
            <summary>WAVE_FORMAT_OLIOPR</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_LH_CODEC">
            <summary>WAVE_FORMAT_LH_CODEC</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_NORRIS">
            <summary>WAVE_FORMAT_NORRIS</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_SOUNDSPACE_MUSICOMPRESS">
            <summary>WAVE_FORMAT_SOUNDSPACE_MUSICOMPRESS</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.MPEG_ADTS_AAC">
            <summary>
                Advanced Audio Coding (AAC) audio in Audio Data Transport Stream (ADTS) format.
                The format block is a WAVEFORMATEX structure with wFormatTag equal to WAVE_FORMAT_MPEG_ADTS_AAC.
            </summary>
            <remarks>
                The WAVEFORMATEX structure specifies the core AAC-LC sample rate and number of channels,
                prior to applying spectral band replication (SBR) or parametric stereo (PS) tools, if present.
                No additional data is required after the WAVEFORMATEX structure.
            </remarks>
            <see>http://msdn.microsoft.com/en-us/library/dd317599%28VS.85%29.aspx</see>
        </member>
        <member name="F:CSCore.AudioEncoding.MPEG_RAW_AAC">
            <summary>MPEG_RAW_AAC</summary>
            <remarks>Source wmCodec.h</remarks>
        </member>
        <member name="F:CSCore.AudioEncoding.MPEG_LOAS">
            <summary>
                MPEG-4 audio transport stream with a synchronization layer (LOAS) and a multiplex layer (LATM).
                The format block is a WAVEFORMATEX structure with wFormatTag equal to WAVE_FORMAT_MPEG_LOAS.
                See <see href="http://msdn.microsoft.com/en-us/library/dd317599%28VS.85%29.aspx"/>.
            </summary>
            <remarks>
                The WAVEFORMATEX structure specifies the core AAC-LC sample rate and number of channels,
                prior to applying spectral SBR or PS tools, if present.
                No additional data is required after the WAVEFORMATEX structure.
            </remarks>
        </member>
        <member name="F:CSCore.AudioEncoding.NOKIA_MPEG_ADTS_AAC">
            <summary>NOKIA_MPEG_ADTS_AAC</summary>
            <remarks>Source wmCodec.h</remarks>
        </member>
        <member name="F:CSCore.AudioEncoding.NOKIA_MPEG_RAW_AAC">
            <summary>NOKIA_MPEG_RAW_AAC</summary>
            <remarks>Source wmCodec.h</remarks>
        </member>
        <member name="F:CSCore.AudioEncoding.VODAFONE_MPEG_ADTS_AAC">
            <summary>VODAFONE_MPEG_ADTS_AAC</summary>
            <remarks>Source wmCodec.h</remarks>
        </member>
        <member name="F:CSCore.AudioEncoding.VODAFONE_MPEG_RAW_AAC">
            <summary>VODAFONE_MPEG_RAW_AAC</summary>
            <remarks>Source wmCodec.h</remarks>
        </member>
        <member name="F:CSCore.AudioEncoding.MPEG_HEAAC">
            <summary>
                High-Efficiency Advanced Audio Coding (HE-AAC) stream.
                The format block is an HEAACWAVEFORMAT structure. See <see href="http://msdn.microsoft.com/en-us/library/dd317599%28VS.85%29.aspx"/>.
            </summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_DVM">
            <summary>WAVE_FORMAT_DVM</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.Vorbis1">
            <summary>WAVE_FORMAT_VORBIS1 "Og" Original stream compatible</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.Vorbis2">
            <summary>WAVE_FORMAT_VORBIS2 "Pg" Have independent header</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.Vorbis3">
            <summary>WAVE_FORMAT_VORBIS3 "Qg" Have no codebook header</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.Vorbis1P">
            <summary>WAVE_FORMAT_VORBIS1P "og" Original stream compatible</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.Vorbis2P">
            <summary>WAVE_FORMAT_VORBIS2P "pg" Have independent headere</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.Vorbis3P">
            <summary>WAVE_FORMAT_VORBIS3P "qg" Have no codebook header</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_RAW_AAC1">
            <summary>
                Raw AAC1
            </summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_WMAVOICE9">
            <summary>
                Windows Media Audio Voice (WMA Voice)
            </summary>
        </member>
        <member name="F:CSCore.AudioEncoding.Extensible">
            <summary>Extensible</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_DEVELOPMENT">
            <summary>WAVE_FORMAT_DEVELOPMENT</summary>
        </member>
        <member name="F:CSCore.AudioEncoding.WAVE_FORMAT_FLAC">
            <summary>
            FLAC
            </summary>
        </member>
        <member name="P:CSCore.Tags.ID3.Frames.PictureFrame.Image">
            <summary>
            WARNING: If MimeType equals "-->" the picture will be downloaded from the web.
            Use GetURL() the get the url to the picture. If not, data, contained by the frame will
            be used.
            </summary>
        </member>
        <member name="P:CSCore.Tags.ID3.Frames.Popularimeter.Rating">
            <summary>
            Range from 1(worst) to 255(best). Zero -> Rating disabled.
            </summary>
        </member>
        <member name="P:CSCore.Tags.ID3.Frames.Popularimeter.PlayedCounter">
            <summary>
            - 1 -> ommit the counter. Default length is 4 byte. If 4 byte is not enough to hold the
              number, a byte will be added(up to 8 bytes total).
            </summary>
        </member>
        <member name="M:CSCore.Tags.ID3.Frames.TimestampTextFrame.GetFormatString(System.Int32)">
            <summary>
            Gets the formatstring of the timestamp
            </summary>
            <param name="length">length of the string which has to be parsed</param>
            <returns></returns>
        </member>
        <member name="T:CSCore.Tags.ID3.ID3Exception">
            <summary>
            Exception class for all ID3-Tag related Exceptions.
            </summary>
        </member>
        <member name="F:CSCore.Tags.ID3.ID3v2TextEncodingRestriction.IsoOrUTF8">
            <summary>
            encoded with ISO-8859-1 [ISO-8859-1] or UTF-8 [UTF-8]
            </summary>
        </member>
        <member name="T:CSCore.TimeConverter">
            <summary>
            Defines a base class for all time converts. A time converter can be used to convert raw positions (depending on the implementation i.e. bytes or samples) to a human
            readable <see cref="T:System.TimeSpan"/>.
            </summary>
        </member>
        <member name="F:CSCore.TimeConverter.SampleSourceTimeConverter">
            <summary>
            A <see cref="T:CSCore.TimeConverter"/> for <see cref="T:CSCore.ISampleSource"/> objects.
            </summary>
        </member>
        <member name="F:CSCore.TimeConverter.WaveSourceTimeConverter">
            <summary>
            A <see cref="T:CSCore.TimeConverter"/> for <see cref="T:CSCore.IWaveSource"/> objects.
            </summary>
        </member>
        <member name="M:CSCore.TimeConverter.ToRawElements(CSCore.WaveFormat,System.TimeSpan)">
            <summary>
            Converts a <see cref="T:System.TimeSpan"/> back to raw elements, a source works with. The unit of these raw elements depends on the implementation. For more information, see <see cref="T:CSCore.TimeConverter"/>.
            </summary>
            <param name="waveFormat">The <see cref="T:CSCore.WaveFormat"/> of the source which gets used to convert the <paramref name="timeSpan"/>.</param>
            <param name="timeSpan">The <see cref="T:System.TimeSpan"/> to convert to raw elements.</param>
            <returns>The converted <see cref="T:System.TimeSpan"/> in raw elements.</returns>
        </member>
        <member name="M:CSCore.TimeConverter.ToTimeSpan(CSCore.WaveFormat,System.Int64)">
            <summary>
            Converts raw elements to a <see cref="T:System.TimeSpan"/> value. The unit of these raw elements depends on the implementation. For more information, see <see cref="T:CSCore.TimeConverter"/>.
            </summary>
            <param name="waveFormat">The <see cref="T:CSCore.WaveFormat"/> of the source which gets used to convert the <paramref name="rawElements"/>. </param>
            <param name="rawElements">The raw elements to convert to a <see cref="T:System.TimeSpan"/>.</param>
            <returns>The <see cref="T:System.TimeSpan"/>.</returns>
        </member>
        <member name="T:CSCore.TimeConverterAttribute">
            <summary>
            Specifies which <see cref="T:CSCore.TimeConverter"/> to use.
            </summary>
        </member>
        <member name="P:CSCore.TimeConverterAttribute.TimeConverterType">
            <summary>
            Gets the type of the <see cref="T:CSCore.TimeConverter"/> to use.
            </summary>
        </member>
        <member name="P:CSCore.TimeConverterAttribute.Args">
            <summary>
            Gets or sets the arguments to pass to the constructor of the <see cref="T:CSCore.TimeConverter"/>. For more information, see <see cref="M:System.Activator.CreateInstance(System.Type,System.Object[])"/>.
            </summary>
        </member>
        <member name="P:CSCore.TimeConverterAttribute.ForceNewInstance">
            <summary>
            Gets or sets a value indicating whether a new instance of the specified <see cref="T:CSCore.TimeConverter"/> should be created each time the <see cref="T:CSCore.TimeConverterFactory"/> queries the <see cref="T:CSCore.TimeConverter"/>.
            The default value is false.
            </summary>
        </member>
        <member name="M:CSCore.TimeConverterAttribute.#ctor(System.Type)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.TimeConverterAttribute"/> class based on the type of the <see cref="T:CSCore.TimeConverter"/> to use.
            </summary>
            <param name="timeConverterType">Type of the <see cref="T:CSCore.TimeConverter"/> to use.</param>
            <exception cref="T:System.ArgumentNullException">timeConverterType</exception>
            <exception cref="T:System.ArgumentException">Specified type is no time converter.;timeConverterType</exception>
        </member>
        <member name="T:CSCore.TimeConverterFactory">
            <summary>
            Provides <see cref="T:CSCore.TimeConverter"/>s for converting raw time values (e.g. bytes, samples,...) to a <see cref="T:System.TimeSpan"/> and back.
            </summary>
        </member>
        <member name="P:CSCore.TimeConverterFactory.Instance">
            <summary>
            Gets the default instance of the factory.
            </summary>
        </member>
        <member name="M:CSCore.TimeConverterFactory.RegisterTimeConverterForSourceType``1(CSCore.TimeConverter)">
            <summary>
            Registers a new <see cref="T:CSCore.TimeConverter"/> for a specific source type.
            </summary>
            <param name="timeConverter">The <see cref="T:CSCore.TimeConverter"/> to register.</param>
            <typeparam name="TSource">The source type.</typeparam>
            <exception cref="T:System.ArgumentNullException">timeConverter is null.</exception>
            <exception cref="T:System.ArgumentException">There is already a <see cref="T:CSCore.TimeConverter"/> registered for the specified <typeparamref name="TSource"/>.</exception>
            <remarks>The <see cref="T:CSCore.TimeConverterFactory"/> class uses the source type to find choose the best <see cref="T:CSCore.TimeConverter"/> for an <see cref="T:CSCore.IAudioSource"/>. For more information, see <see cref="M:CSCore.TimeConverterFactory.GetTimeConverterForSourceType(System.Type)"/>.</remarks>
        </member>
        <member name="M:CSCore.TimeConverterFactory.UnregisterTimeConverter``1">
            <summary>
            Unregisters a previously registered <see cref="T:CSCore.TimeConverter"/>.
            </summary>
            <typeparam name="TSource">The source type, that got passed to the <see cref="M:CSCore.TimeConverterFactory.RegisterTimeConverterForSourceType``1(CSCore.TimeConverter)"/> method previously.</typeparam>
            <exception cref="T:System.ArgumentException">The specified source type could not be found.</exception>
        </member>
        <member name="M:CSCore.TimeConverterFactory.GetTimeConverterForSource``1(``0)">
            <summary>
            Gets the <see cref="T:CSCore.TimeConverter"/> for the specified <paramref name="source"/>.
            </summary>
            <param name="source">The <see cref="T:CSCore.IAudioSource"/> object to get the <see cref="T:CSCore.TimeConverter"/> for.</param>
            <typeparam name="TSource">The type of the <paramref name="source"/>.</typeparam>
            <returns>The best <see cref="T:CSCore.TimeConverter"/> for the specified <paramref name="source"/>.</returns>
            <exception cref="T:System.ArgumentNullException">The specified <paramref name="source"/> is null.</exception>
            <exception cref="T:System.ArgumentException">
            Specified type is no AudioSource.;type
            or
            No registered time converter for the specified source type was found.
            or
            Multiple possible time converters, for the specified source type, were found. Specify which time converter to use, through the <see cref="T:CSCore.TimeConverterAttribute"/>.
            </exception>
            <remarks>
            The <see cref="M:CSCore.TimeConverterFactory.GetTimeConverterForSource``1(``0)"/> chooses the best <see cref="T:CSCore.TimeConverter"/> for the specified <paramref name="source"/>.
            If there is no <see cref="T:CSCore.TimeConverterAttribute"/> applied to the <see cref="T:CSCore.IAudioSource"/> object (the <paramref name="source"/>), it looks up the inheritance hierarchy (interfaces included) of the <see cref="T:CSCore.IAudioSource"/> object
            and searches for all registered source types. If there is a match it returns the associated <see cref="T:CSCore.TimeConverter"/>. If there are more or less than one match BUT no <see cref="T:CSCore.TimeConverterAttribute"/>
            it throws an exception.</remarks>
        </member>
        <member name="M:CSCore.TimeConverterFactory.GetTimeConverterForSource``1">
            <summary>
            Gets the <see cref="T:CSCore.TimeConverter"/> for the specified source type.
            </summary>
            <typeparam name="TSource">The type of the source.</typeparam>
            <returns>The best <see cref="T:CSCore.TimeConverter"/> for the specified source type.</returns>
            <exception cref="T:System.ArgumentException">
            Specified type is no AudioSource.;type
            or
            No registered time converter for the specified source type was found.
            or
            Multiple possible time converters, for the specified source type, were found. Specify which time converter to use, through the <see cref="T:CSCore.TimeConverterAttribute"/>.
            </exception>
            <remarks>
            The <see cref="M:CSCore.TimeConverterFactory.GetTimeConverterForSource``1"/> chooses the best <see cref="T:CSCore.TimeConverter"/> for the specified source type.
            If there is no <see cref="T:CSCore.TimeConverterAttribute"/> applied to the <see cref="T:CSCore.IAudioSource"/> object, it looks up the inheritance hierarchy (interfaces included) of the <see cref="T:CSCore.IAudioSource"/> object
            and searches for all registered source types. If there is a match it returns the associated <see cref="T:CSCore.TimeConverter"/>. If there are more or less than one match BUT no <see cref="T:CSCore.TimeConverterAttribute"/>
            it throws an exception.</remarks>
        </member>
        <member name="M:CSCore.TimeConverterFactory.GetTimeConverterForSourceType(System.Type)">
            <summary>
            Gets the <see cref="T:CSCore.TimeConverter"/> for the specified <paramref name="sourceType"/>.
            </summary>
            <param name="sourceType">The <see cref="T:System.Type"/> to get the associated <see cref="T:CSCore.TimeConverter"/> for.</param>
            <returns>The best <see cref="T:CSCore.TimeConverter"/> for the specified <paramref name="sourceType"/>.</returns>
            <exception cref="T:System.ArgumentException">
            Specified type is no AudioSource.;type
            or
            No registered time converter for the specified source type was found.
            or
            Multiple possible time converters, for the specified source type, were found. Specify which time converter to use, through the <see cref="T:CSCore.TimeConverterAttribute"/>.
            </exception>
            <remarks>
            The <see cref="M:CSCore.TimeConverterFactory.GetTimeConverterForSourceType(System.Type)"/> chooses the best <see cref="T:CSCore.TimeConverter"/> for the specified <paramref name="sourceType"/>.
            If there is no <see cref="T:CSCore.TimeConverterAttribute"/> applied to the <see cref="T:CSCore.IAudioSource"/> object (the <paramref name="sourceType"/>), it looks up the inheritance hierarchy (interfaces included) of the <see cref="T:CSCore.IAudioSource"/> object
            and searches for all registered source types. If there is a match it returns the associated <see cref="T:CSCore.TimeConverter"/>. If there are more or less than one match BUT no <see cref="T:CSCore.TimeConverterAttribute"/>
            it throws an exception.</remarks>
        </member>
        <member name="M:CSCore.TimeConverterFactory.ClearCache">
            <summary>
            Clears the internal cache.
            </summary>
        </member>
        <member name="T:CSCore.Utils.Vector3">
            <summary>
            Defines a 3D vector.
            </summary>
        </member>
        <member name="F:CSCore.Utils.Vector3.X">
            <summary>
            Retrieves or sets the x component of the 3D vector.
            </summary>
        </member>
        <member name="F:CSCore.Utils.Vector3.Y">
            <summary>
            Retrieves or sets the y component of the 3D vector.
            </summary>
        </member>
        <member name="F:CSCore.Utils.Vector3.Z">
            <summary>
            Retrieves or sets the z component of the 3D vector.
            </summary>
        </member>
        <member name="M:CSCore.Utils.Vector3.#ctor(System.Single)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Utils.Vector3"/> structure.
            </summary>
            <param name="value">The value to use for the x, y and z component of the 3D vector.</param>
        </member>
        <member name="M:CSCore.Utils.Vector3.#ctor(System.Single,System.Single,System.Single)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Utils.Vector3"/> structure.
            </summary>
            <param name="x">The x component of the 3D vector.</param>
            <param name="y">The y component of the 3D vector..</param>
            <param name="z">The z component of the 3D vector.</param>
        </member>
        <member name="M:CSCore.Utils.Vector3.ToString">
            <summary>
            Returns a string that represents the 3D vector.
            </summary>
            <returns>A string that represents the 3D vector.</returns>
        </member>
        <member name="T:CSCore.Utils.BitReader">
            <summary>
            This class is based on the CUETools.NET BitReader (see http://sourceforge.net/p/cuetoolsnet/code/ci/default/tree/CUETools.Codecs/BitReader.cs)
            The author "Grigory Chudov" explicitly gave the permission to use the source as part of the cscore source code which got licensed under the ms-pl.
            </summary>
        </member>
        <member name="T:CSCore.Utils.Buffer.FixedSizeBuffer`1">
            <summary>
            Represents a read- and writeable buffer which can hold a specified number of elements. 
            </summary>
            <typeparam name="T">Specifies the type of the elements to store.</typeparam>
        </member>
        <member name="M:CSCore.Utils.Buffer.FixedSizeBuffer`1.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Utils.Buffer.FixedSizeBuffer`1"/> class.
            </summary>
            <param name="bufferSize">Size of the buffer.</param>
        </member>
        <member name="M:CSCore.Utils.Buffer.FixedSizeBuffer`1.Write(`0[],System.Int32,System.Int32)">
            <summary>
            Adds new data to the internal buffer.
            </summary>
            <param name="buffer">Array which contains the data.</param>
            <param name="offset">Zero-based offset in the <paramref name="buffer"/> (specified in "elements").</param>
            <param name="count">Number of elements to add to the internal buffer.</param>
            <returns>Number of added elements.</returns>
        </member>
        <member name="M:CSCore.Utils.Buffer.FixedSizeBuffer`1.Read(`0[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of elements from the internal buffer of the <see cref="T:CSCore.Utils.Buffer.FixedSizeBuffer`1" />.
            </summary>
            <param name="buffer">
                An array of elements. When this method returns, the <paramref name="buffer" /> contains the specified
                array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the elements read from the internal buffer.
            </param>
            <param name="offset">
                The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the internal buffer.
            </param>
            <param name="count">The maximum number of elements to read from the internal buffer.</param>
            <returns>The total number of elements read into the <paramref name="buffer"/>.</returns>
        </member>
        <member name="P:CSCore.Utils.Buffer.FixedSizeBuffer`1.Length">
            <summary>
            Gets the size of the internal buffer.
            </summary>
        </member>
        <member name="P:CSCore.Utils.Buffer.FixedSizeBuffer`1.Buffered">
            <summary>
            Gets the number of buffered elements.
            </summary>
        </member>
        <member name="M:CSCore.Utils.Buffer.FixedSizeBuffer`1.Clear">
            <summary>
            Clears the internal buffer.
            </summary>
        </member>
        <member name="M:CSCore.Utils.Buffer.FixedSizeBuffer`1.Dispose">
            <summary>
            Disposes the <see cref="T:CSCore.Utils.Buffer.FixedSizeBuffer`1"/> and releases the internal used buffer.
            </summary>
        </member>
        <member name="M:CSCore.Utils.Buffer.FixedSizeBuffer`1.Dispose(System.Boolean)">
            <summary>
            Disposes the <see cref="T:CSCore.Utils.Buffer.FixedSizeBuffer`1"/> and releases the internal used buffer.
            </summary>
            <param name="disposing">True to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
        </member>
        <member name="M:CSCore.Utils.Buffer.FixedSizeBuffer`1.Finalize">
            <summary>
            Default destructor which calls the <see cref="M:CSCore.Utils.Buffer.FixedSizeBuffer`1.Dispose(System.Boolean)"/> method.
            </summary>
        </member>
        <member name="T:CSCore.Utils.Complex">
            <summary>
                Represents a complex number.
            </summary>
        </member>
        <member name="F:CSCore.Utils.Complex.Zero">
            <summary>
                A complex number with a total length of zero.
            </summary>
        </member>
        <member name="F:CSCore.Utils.Complex.Imaginary">
            <summary>
                Imaginary component of the complex number.
            </summary>
        </member>
        <member name="F:CSCore.Utils.Complex.Real">
            <summary>
                Real component of the complex number.
            </summary>
        </member>
        <member name="M:CSCore.Utils.Complex.#ctor(System.Single)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Utils.Complex" /> structure.
            </summary>
            <param name="real">The real component of the complex number.</param>
            <remarks>The imaginary component of the complex number will be set to zero.</remarks>
        </member>
        <member name="M:CSCore.Utils.Complex.#ctor(System.Single,System.Single)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Utils.Complex" /> structure.
            </summary>
            <param name="real">The real component of the complex number.</param>
            <param name="img">The imaginary component of the complex number.</param>
        </member>
        <member name="P:CSCore.Utils.Complex.Value">
            <summary>
                Gets the absolute value of the complex number.
            </summary>
        </member>
        <member name="M:CSCore.Utils.Complex.op_Implicit(CSCore.Utils.Complex)~System.Single">
            <summary>
                Defines an implicit conversion of a complex number to a single-precision floating-point number.
            </summary>
            <param name="complex">Complex number.</param>
            <returns>The absolute value of the <paramref name="complex" />.</returns>
        </member>
        <member name="M:CSCore.Utils.Complex.op_Implicit(CSCore.Utils.Complex)~System.Double">
            <summary>
                Defines an implicit conversion of a complex number to a double-precision floating-point number.
            </summary>
            <param name="complex">Complex number.</param>
            <returns>The absolute value of the <paramref name="complex" />.</returns>
        </member>
        <member name="M:CSCore.Utils.Complex.op_Equality(CSCore.Utils.Complex,CSCore.Utils.Complex)">
            <summary>
            Implements the operator ==.
            </summary>
            <param name="complex1">The complex1.</param>
            <param name="complex2">The complex2.</param>
            <returns>
            The result of the operator.
            </returns>
        </member>
        <member name="M:CSCore.Utils.Complex.op_Inequality(CSCore.Utils.Complex,CSCore.Utils.Complex)">
            <summary>
            Implements the operator !=.
            </summary>
            <param name="complex1">The complex1.</param>
            <param name="complex2">The complex2.</param>
            <returns>
            The result of the operator.
            </returns>
        </member>
        <member name="M:CSCore.Utils.Complex.Equals(CSCore.Utils.Complex)">
            <summary>
            Indicates whether the current complex value is equal to another complex value.
            </summary>
            <param name="other">A complex value to compare with this complex value.</param>
            <returns>
            true if the current complex value is equal to the <paramref name="other" /> complex value; otherwise, false.
            </returns>
        </member>
        <member name="M:CSCore.Utils.Complex.Equals(System.Object)">
            <summary>
            Determines whether the specified <see cref="T:System.Object" />, is equal to this instance.
            </summary>
            <param name="obj">The <see cref="T:System.Object" /> to compare with this instance.</param>
            <returns>
              <c>true</c> if the specified <see cref="T:System.Object" /> is equal to this instance; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:CSCore.Utils.Complex.GetHashCode">
            <summary>
            Returns a hash code for this instance.
            </summary>
            <returns>
            A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. 
            </returns>
        </member>
        <member name="T:CSCore.Utils.CRC16">
            <summary>
            This class is based on the CUETools.NET project (see http://sourceforge.net/p/cuetoolsnet/)
            The author "Grigory Chudov" explicitly gave the permission to use the source as part of the cscore source code which got licensed under the ms-pl.
            </summary>
        </member>
        <member name="T:CSCore.Utils.CRC8">
            <summary>
            This class is based on the CUETools.NET project (see http://sourceforge.net/p/cuetoolsnet/)
            The author "Grigory Chudov" explicitly gave the permission to use the source as part of the cscore source code which got licensed under the ms-pl.
            </summary>
        </member>
        <member name="T:CSCore.Utils.CRCBase`1">
            <summary>
            This class is based on the CUETools.NET project (see http://sourceforge.net/p/cuetoolsnet/)
            The author "Grigory Chudov" explicitly gave the permission to use the source as part of the cscore source code which got licensed under the ms-pl.
            </summary>
        </member>
        <member name="T:CSCore.Win32.CLSCTX">
            <summary>
            Values that are used in activation calls to indicate the execution contexts in which an object is to be run.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_INPROC_SERVER">
            <summary>
            The code that creates and manages objects of this class is a DLL that runs in the same process as the caller of the function specifying the class context.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_INPROC_HANDLER">
            <summary>
            Indicates a handler dll, which runs on the same process as the caller.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_LOCAL_SERVER">
            <summary>
            Indicates a server executable, which runs on the same machine but on a different process than the caller. 
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_INPROC_SERVER16">
            <summary>
            Obsolete.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_REMOTE_SERVER">
            <summary>
            Indicates a server executable, which runs on a different machine than the caller.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_INPROC_HANDLER16">
            <summary>
            Obsolete.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_RESERVED1">
            <summary>
            Reserved.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_RESERVED2">
            <summary>
            Reserved.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_RESERVED3">
            <summary>
            Reserved.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_RESERVED4">
            <summary>
            Reserved.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_NO_CODE_DOWNLOAD">
            <summary>
            Indicates that code should not be allowed to be downloaded from the Directory Service (if any) or the Internet.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_RESERVED5">
            <summary>
            Reserved.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_NO_CUSTOM_MARSHAL">
            <summary>
            Specify if you want the activation to fail if it uses custom marshalling.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_ENABLE_CODE_DOWNLOAD">
            <summary>
            Enables the downloading of code from the directory service or the Internet.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_NO_FAILURE_LOG">
            <summary>
            Indicates that no log messages about activation failure should be written to the Event Log.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_DISABLE_AAA">
            <summary>
            Indicates that activate-as-activator capability is disabled for this activation only.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_ENABLE_AAA">
            <summary>
            Indicates that activate-as-activator capability is enabled for this activation only.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_FROM_DEFAULT_CONTEXT">
            <summary>
            Indicates that activation should begin from the default context of the current apartment.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_ACTIVATE_32_BIT_SERVER">
            <summary>
            Activate or connect to a 32-bit version of the server; fail if one is not registered.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_ACTIVATE_64_BIT_SERVER">
            <summary>
            Activate or connect to a 64 bit version of the server; fail if one is not registered. 
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_ENABLE_CLOAKING">
            <summary>
            When this flag is specified, COM uses the impersonation token of the thread, if one is present, for the activation request made by the thread. When this flag is not specified or if the thread does not have an impersonation token, COM uses the process token of the thread's process for the activation request made by the thread. 
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_APPCONTAINER">
            <summary>
            Indicates activation is for an app container. Reserved for internal use.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_ACTIVATE_AAA_AS_IU">
            <summary>
            Specify this flag for Interactive User activation behavior for As-Activator servers.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_PS_DLL">
            <summary>
            Used for loading Proxy/Stub DLLs.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_INPROC">
            <summary>
            Bitwise combination of the <see cref="F:CSCore.Win32.CLSCTX.CLSCTX_INPROC_SERVER"/> and the <see cref="F:CSCore.Win32.CLSCTX.CLSCTX_INPROC_HANDLER"/> constants.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_SERVER">
            <summary>
            Bitwise combination of the <see cref="F:CSCore.Win32.CLSCTX.CLSCTX_INPROC_SERVER"/>, the <see cref="F:CSCore.Win32.CLSCTX.CLSCTX_LOCAL_SERVER"/> and the <see cref="F:CSCore.Win32.CLSCTX.CLSCTX_REMOTE_SERVER"/> constants.
            </summary>
        </member>
        <member name="F:CSCore.Win32.CLSCTX.CLSCTX_ALL">
            <summary>
            Bitwise combination of the <see cref="F:CSCore.Win32.CLSCTX.CLSCTX_INPROC"/> and the <see cref="F:CSCore.Win32.CLSCTX.CLSCTX_SERVER"/> constants.
            </summary>
        </member>
        <member name="T:CSCore.Win32.ComStream">
            <summary>
            Managed implementation of the <see cref="T:CSCore.Win32.IStream"/> interface. See <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/ms752876(v=vs.85).aspx"/>.
            </summary>
        </member>
        <member name="M:CSCore.Win32.ComStream.#ctor(System.IO.Stream)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Win32.ComStream"/> class.
            </summary>
            <param name="stream">Underlying <see cref="T:System.IO.Stream"/>.</param>
        </member>
        <member name="M:CSCore.Win32.ComStream.#ctor(System.IO.Stream,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Win32.ComStream"/> class.
            </summary>
            <param name="stream">Underlying <see cref="T:System.IO.Stream"/>.</param>
            <param name="disposeBaseStream">Indicates whether the underlying stream should be disposed on <see cref="M:CSCore.Win32.ComStream.Dispose(System.Boolean)"/>.</param>
        </member>
        <member name="M:CSCore.Win32.ComStream.CSCore#Win32#IStream#Clone(CSCore.Win32.IStream@)">
            <summary>
            Creates a new stream object with its own seek pointer that references the same bytes as the original stream.
            </summary>
            <param name="ppstm">When this method returns, contains the new stream object. This parameter is passed uninitialized.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.Win32.ComStream.CSCore#Win32#IStream#Commit(System.Int32)">
            <summary>
            Ensures that any changes made to a stream object that is open in transacted mode are reflected in the parent storage.
            </summary>
            <param name="grfCommitFlags">A value that controls how the changes for the stream object are committed. </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.Win32.ComStream.CSCore#Win32#IStream#CopyTo(CSCore.Win32.IStream,System.Int64,System.IntPtr,System.IntPtr)">
            <summary>
            Copies a specified number of bytes from the current seek pointer in the stream to the current seek pointer in another stream.
            </summary>
            <param name="pstm">A reference to the destination stream. </param>
            <param name="cb">The number of bytes to copy from the source stream. </param>
            <param name="pcbRead">On successful return, contains the actual number of bytes read from the source. </param>
            <param name="pcbWritten">On successful return, contains the actual number of bytes written to the destination. </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.Win32.ComStream.CSCore#Win32#IStream#LockRegion(System.Int64,System.Int64,System.Int32)">
            <summary>
            Restricts access to a specified range of bytes in the stream.
            </summary>
            <param name="libOffset">The byte offset for the beginning of the range. </param>
            <param name="cb">The length of the range, in bytes, to restrict. </param>
            <param name="dwLockType">The requested restrictions on accessing the range. </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.Win32.ComStream.CSCore#Win32#IStream#Read(System.Byte[],System.Int32,System.IntPtr)">
            <summary>
            Reads a specified number of bytes from the stream object into memory starting at the current seek pointer.
            </summary>
            <param name="pv">When this method returns, contains the data read from the stream. This parameter is passed uninitialized.</param>
            <param name="cb">The number of bytes to read from the stream object. </param>
            <param name="pcbRead">A pointer to a ULONG variable that receives the actual number of bytes read from the stream object. </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.Win32.ComStream.CSCore#Win32#IStream#Revert">
            <summary>
            Discards all changes that have been made to a transacted stream since the last Commit call.
            </summary>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.Win32.ComStream.CSCore#Win32#IStream#Seek(System.Int64,System.Int32,System.IntPtr)">
            <summary>
            Changes the seek pointer to a new location relative to the beginning of the stream, to the end of the stream, or to the current seek pointer.
            </summary>
            <param name="dlibMove">The displacement to add to dwOrigin. </param>
            <param name="dwOrigin">The origin of the seek. The origin can be the beginning of the file, the current seek pointer, or the end of the file. </param>
            <param name="plibNewPosition">On successful return, contains the offset of the seek pointer from the beginning of the stream. </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.Win32.ComStream.CSCore#Win32#IStream#SetSize(System.Int64)">
            <summary>
            Changes the size of the stream object.
            </summary>
            <param name="libNewSize">The new size of the stream as a number of bytes. </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.Win32.ComStream.CSCore#Win32#IStream#Stat(System.Runtime.InteropServices.ComTypes.STATSTG@,System.Int32)">
            <summary>
            Retrieves the STATSTG structure for this stream.
            </summary>
            <param name="pstatstg">When this method returns, contains a STATSTG structure that describes this stream object. This parameter is passed uninitialized.</param>
            <param name="grfStatFlag">Members in the STATSTG structure that this method does not return, thus saving some memory allocation operations. </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.Win32.ComStream.CSCore#Win32#IStream#UnlockRegion(System.Int64,System.Int64,System.Int32)">
            <summary>
            Removes the access restriction on a range of bytes previously restricted with the LockRegion method.
            </summary>
            <param name="libOffset">The byte offset for the beginning of the range. </param>
            <param name="cb">The length, in bytes, of the range to restrict. </param>
            <param name="dwLockType">The access restrictions previously placed on the range. </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.Win32.ComStream.CSCore#Win32#IStream#Write(System.Byte[],System.Int32,System.IntPtr)">
            <summary>
            Writes a specified number of bytes into the stream object starting at the current seek pointer.
            </summary>
            <param name="pv">The buffer to write this stream to. </param>
            <param name="cb">he number of bytes to write to the stream. </param>
            <param name="pcbWritten">On successful return, contains the actual number of bytes written to the stream object. If the caller sets this pointer to Zero, this method does not provide the actual number of bytes written. </param>
            <returns>HRESULT</returns>
        </member>
        <member name="P:CSCore.Win32.ComStream.CanRead">
            <summary>
            Gets a value indicating whether the current stream supports reading.
            </summary>
        </member>
        <member name="P:CSCore.Win32.ComStream.CanSeek">
            <summary>
            Gets a value indicating whether the current stream supports seeking.
            </summary>
        </member>
        <member name="P:CSCore.Win32.ComStream.CanWrite">
            <summary>
            Gets a value indicating whether the current stream supports writing.
            </summary>
        </member>
        <member name="M:CSCore.Win32.ComStream.Flush">
            <summary>
            Clears all buffers for this stream and causes any buffered data to be written to the underlying device.
            </summary>
        </member>
        <member name="P:CSCore.Win32.ComStream.Length">
            <summary>
            Gets the length in bytes of the stream.
            </summary>
        </member>
        <member name="P:CSCore.Win32.ComStream.Position">
            <summary>
            Gets or sets the position within the current stream.
            </summary>
        </member>
        <member name="M:CSCore.Win32.ComStream.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads a sequence of bytes from the current stream and advances the position within the stream by the number of bytes read.
            </summary>
            <param name="buffer">An array of bytes. When this method returns, the buffer contains the specified byte array with the values between offset and (offset + count - 1) replaced by the bytes read from the current source. </param>
            <param name="offset">The zero-based byte offset in buffer at which to begin storing the data read from the current stream. </param>
            <param name="count">The maximum number of bytes to be read from the current stream. </param>
            <returns>The total number of bytes read into the buffer. This can be less than the number of bytes requested if that many bytes are not currently available, or zero (0) if the end of the stream has been reached.</returns>
        </member>
        <member name="M:CSCore.Win32.ComStream.Seek(System.Int64,System.IO.SeekOrigin)">
            <summary>
            Sets the position within the current stream.
            </summary>
            <param name="offset">A byte offset relative to the origin parameter. </param>
            <param name="origin">A value of type <see cref="T:System.IO.SeekOrigin"/> indicating the reference point used to obtain the new position. </param>
            <returns>The new position within the current stream.</returns>
        </member>
        <member name="M:CSCore.Win32.ComStream.SetLength(System.Int64)">
            <summary>
            Sets the length of the current stream.
            </summary>
            <param name="value">The desired length of the current stream in bytes. </param>
        </member>
        <member name="M:CSCore.Win32.ComStream.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Writes a sequence of bytes to the current stream and advances the current position within this stream by the number of bytes written.
            </summary>
            <param name="buffer">An array of bytes. This method copies count bytes from buffer to the current stream. </param>
            <param name="offset">The zero-based byte offset in buffer at which to begin copying bytes to the current stream. </param>
            <param name="count">The number of bytes to be written to the current stream. </param>
        </member>
        <member name="M:CSCore.Win32.ComStream.Dispose(System.Boolean)">
            <summary>
            Releases the unmanaged resources used by the Stream and optionally releases the managed resources.
            </summary>
            <param name="disposing">True to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
        </member>
        <member name="M:CSCore.Win32.ComStream.Close">
            <summary>
            Closes the current stream and releases any resources (such as sockets and file handles) associated with the current stream.
            </summary>
        </member>
        <member name="T:CSCore.Win32.IStream">
            <summary>
            Provides the managed definition of the IStream interface.
            </summary>
        </member>
        <member name="M:CSCore.Win32.IStream.Read(System.Byte[],System.Int32,System.IntPtr)">
            <summary>
            Reads a specified number of bytes from the stream object into memory starting at the current seek pointer.
            </summary>
            <param name="pv">When this method returns, contains the data read from the stream. This parameter is passed uninitialized.</param>
            <param name="cb">The number of bytes to read from the stream object. </param>
            <param name="pcbRead">A pointer to a ULONG variable that receives the actual number of bytes read from the stream object. </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.Win32.IStream.Write(System.Byte[],System.Int32,System.IntPtr)">
            <summary>
            Writes a specified number of bytes into the stream object starting at the current seek pointer.
            </summary>
            <param name="pv">The buffer to write this stream to. </param>
            <param name="cb">he number of bytes to write to the stream. </param>
            <param name="pcbWritten">On successful return, contains the actual number of bytes written to the stream object. If the caller sets this pointer to Zero, this method does not provide the actual number of bytes written. </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.Win32.IStream.Seek(System.Int64,System.Int32,System.IntPtr)">
            <summary>
            Changes the seek pointer to a new location relative to the beginning of the stream, to the end of the stream, or to the current seek pointer.
            </summary>
            <param name="dlibMove">The displacement to add to dwOrigin. </param>
            <param name="dwOrigin">The origin of the seek. The origin can be the beginning of the file, the current seek pointer, or the end of the file. </param>
            <param name="plibNewPosition">On successful return, contains the offset of the seek pointer from the beginning of the stream. </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.Win32.IStream.SetSize(System.Int64)">
            <summary>
            Changes the size of the stream object.
            </summary>
            <param name="libNewSize">The new size of the stream as a number of bytes. </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.Win32.IStream.CopyTo(CSCore.Win32.IStream,System.Int64,System.IntPtr,System.IntPtr)">
            <summary>
            Copies a specified number of bytes from the current seek pointer in the stream to the current seek pointer in another stream.
            </summary>
            <param name="pstm">A reference to the destination stream. </param>
            <param name="cb">The number of bytes to copy from the source stream. </param>
            <param name="pcbRead">On successful return, contains the actual number of bytes read from the source. </param>
            <param name="pcbWritten">On successful return, contains the actual number of bytes written to the destination. </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.Win32.IStream.Commit(System.Int32)">
            <summary>
            Ensures that any changes made to a stream object that is open in transacted mode are reflected in the parent storage.
            </summary>
            <param name="grfCommitFlags">A value that controls how the changes for the stream object are committed. </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.Win32.IStream.Revert">
            <summary>
            Discards all changes that have been made to a transacted stream since the last Commit call.
            </summary>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.Win32.IStream.LockRegion(System.Int64,System.Int64,System.Int32)">
            <summary>
            Restricts access to a specified range of bytes in the stream.
            </summary>
            <param name="libOffset">The byte offset for the beginning of the range. </param>
            <param name="cb">The length of the range, in bytes, to restrict. </param>
            <param name="dwLockType">The requested restrictions on accessing the range. </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.Win32.IStream.UnlockRegion(System.Int64,System.Int64,System.Int32)">
            <summary>
            Removes the access restriction on a range of bytes previously restricted with the LockRegion method.
            </summary>
            <param name="libOffset">The byte offset for the beginning of the range. </param>
            <param name="cb">The length, in bytes, of the range to restrict. </param>
            <param name="dwLockType">The access restrictions previously placed on the range. </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.Win32.IStream.Stat(System.Runtime.InteropServices.ComTypes.STATSTG@,System.Int32)">
            <summary>
            Retrieves the STATSTG structure for this stream.
            </summary>
            <param name="pstatstg">When this method returns, contains a STATSTG structure that describes this stream object. This parameter is passed uninitialized.</param>
            <param name="grfStatFlag">Members in the STATSTG structure that this method does not return, thus saving some memory allocation operations. </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.Win32.IStream.Clone(CSCore.Win32.IStream@)">
            <summary>
            Creates a new stream object with its own seek pointer that references the same bytes as the original stream.
            </summary>
            <param name="ppstm">When this method returns, contains the new stream object. This parameter is passed uninitialized.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="T:CSCore.Win32.Win32ComException">
            <summary>
            Exception for Com Exceptions.
            </summary>
        </member>
        <member name="M:CSCore.Win32.Win32ComException.Try(System.Int32,System.String,System.String)">
            <summary>
            Throws an <see cref="T:CSCore.Win32.Win32ComException"/> if the <paramref name="result"/> is not <see cref="F:CSCore.Win32.HResult.S_OK"/>.
            </summary>
            <param name="result">Errorcode.</param>
            <param name="interfaceName">Name of the interface which contains the COM-function which returned the specified <paramref name="result"/>.</param>
            <param name="member">Name of the COM-function which returned the specified <paramref name="result"/>.</param>
        </member>
        <member name="P:CSCore.Win32.Win32ComException.InterfaceName">
            <summary>
            Name of the Cominterface which caused the error.
            </summary>
        </member>
        <member name="P:CSCore.Win32.Win32ComException.Member">
            <summary>
            Name of the member of the Cominterface which caused the error.
            </summary>
        </member>
        <member name="M:CSCore.Win32.Win32ComException.#ctor(System.Int32,System.String,System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Win32.Win32ComException"/> class.
            </summary>
            <param name="result">Errorcode.</param>
            <param name="interfaceName">Name of the interface which contains the COM-function which returned the specified <paramref name="result"/>.</param>
            <param name="member">Name of the COM-function which returned the specified <paramref name="result"/>.</param>
        </member>
        <member name="M:CSCore.Win32.Win32ComException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Win32.Win32ComException"/> class from serialization data.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> object that holds the serialized object data.</param>
            <param name="context">The StreamingContext object that supplies the contextual information about the source or destination.</param>
        </member>
        <member name="M:CSCore.Win32.Win32ComException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Populates a <see cref="T:System.Runtime.Serialization.SerializationInfo"/> with the data needed to serialize the target object.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> to populate with data.</param>
            <param name="context">The destination (see StreamingContext) for this serialization.</param>
        </member>
        <member name="T:CSCore.Win32.PropertyStore">
            <summary>
                Exposes methods for enumerating, getting, and setting property values.
            </summary>
            <remarks>
                For more information,
                <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/bb761474(v=vs.85).aspx" />.
            </remarks>
        </member>
        <member name="F:CSCore.Win32.PropertyStore.DeviceDesc">
            <summary>
            Device description - key
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyStore.DeviceInterfaceEnabled">
            <summary>
            Device interface enabled - key
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyStore.DeviceInterfaceClassGuid">
            <summary>
            Device interface CLSID - key
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyStore.FriendlyName">
            <summary>
            Device friendly name - key
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyStore.AudioEndpointPath">
            <summary>
            Audio Endpoint Path - key
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyStore.AudioEngineDeviceFormat">
            <summary>
            Audio Engine Device Format
            </summary>
        </member>
        <member name="M:CSCore.Win32.PropertyStore.#ctor(System.IntPtr)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Win32.PropertyStore" /> class.
            </summary>
            <param name="ptr">The native pointer of the COM object.</param>
        </member>
        <member name="P:CSCore.Win32.PropertyStore.Count">
            <summary>
            Gets the number of properties available.
            </summary>
        </member>
        <member name="P:CSCore.Win32.PropertyStore.Item(System.Int32)">
            <summary>
            Gets or sets the <see cref="T:CSCore.Win32.PropertyVariant"/> at the specified index.
            </summary>
            <value>
            The <see cref="T:CSCore.Win32.PropertyVariant"/>.
            </value>
            <param name="index">The index.</param>
            <returns>The <see cref="T:CSCore.Win32.PropertyVariant"/> at the specified index.</returns>
        </member>
        <member name="P:CSCore.Win32.PropertyStore.Item(CSCore.Win32.PropertyKey)">
            <summary>
            Gets or sets the <see cref="T:CSCore.Win32.PropertyVariant"/> for the specified <paramref name="key"/>.
            </summary>
            <param name="key">The key.</param>
        </member>
        <member name="M:CSCore.Win32.PropertyStore.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the <see cref="T:CSCore.Win32.PropertyStore"/>.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1" /> that can be used to iterate through the <see cref="T:CSCore.Win32.PropertyStore"/>.
            </returns>
        </member>
        <member name="M:CSCore.Win32.PropertyStore.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the <see cref="T:CSCore.Win32.PropertyStore"/>.
            </summary>
            <returns>
            An <see cref="T:System.Collections.IEnumerator" /> object that can be used to iterate through the <see cref="T:CSCore.Win32.PropertyStore"/>.
            </returns>
        </member>
        <member name="M:CSCore.Win32.PropertyStore.GetValue(System.Int32)">
            <summary>
            Gets data for a specific property.
            </summary>
            <param name="index">The zero-based index of the property.</param>
            <returns>The data of the specified property.</returns>
            <exception cref="T:System.ArgumentOutOfRangeException">The <paramref name="index"/> is bigger or equal to <see cref="P:CSCore.Win32.PropertyStore.Count"/>.</exception>
        </member>
        <member name="M:CSCore.Win32.PropertyStore.GetValue(CSCore.Win32.PropertyKey)">
            <summary>
            Gets data for a specific property.
            </summary>
            <param name="key">The <see cref="T:CSCore.Win32.PropertyKey"/> of the property. The key can be obtained by calling the <see cref="M:CSCore.Win32.PropertyStore.GetKey(System.Int32)"/> method.</param>
            <returns>The data of the specified property.</returns>
        </member>
        <member name="M:CSCore.Win32.PropertyStore.GetKey(System.Int32)">
            <summary>
            Gets a property key from an item's array of properties.
            </summary>
            <param name="index">The zero-based index of the property key in the array of <see cref="T:CSCore.Win32.PropertyKey"/> structures.</param>
            <returns>The <see cref="T:CSCore.Win32.PropertyKey"/>.</returns>
        </member>
        <member name="M:CSCore.Win32.PropertyStore.SetValue(System.Int32,CSCore.Win32.PropertyVariant)">
            <summary>
            Sets a new property value, or replaces or removes an existing value.
            </summary>
            <param name="index">The index of the property.</param>
            <param name="value">The new property data.</param>
            <exception cref="T:System.ArgumentOutOfRangeException">The <paramref name="index"/> is bigger or equal to <see cref="P:CSCore.Win32.PropertyStore.Count"/>.</exception>
        </member>
        <member name="M:CSCore.Win32.PropertyStore.SetValue(CSCore.Win32.PropertyKey,CSCore.Win32.PropertyVariant)">
            <summary>
            Sets a new property value, or replaces or removes an existing value.
            </summary>
            <param name="key">The <see cref="T:CSCore.Win32.PropertyKey"/> of the property. The key can be obtained by calling the <see cref="M:CSCore.Win32.PropertyStore.GetKey(System.Int32)"/> method.</param>
            <param name="value">The new property data.</param>
        </member>
        <member name="M:CSCore.Win32.PropertyStore.Commit">
            <summary>
                Saves a property change.
            </summary>
            <remarks>
                For more information see
                <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/bb761470%28v=vs.85%29.aspx" />.
            </remarks>
        </member>
        <member name="T:CSCore.Win32.NativeBool">
            <summary>
            Represents a native 4 byte boolean value.
            </summary>
        </member>
        <member name="F:CSCore.Win32.NativeBool.True">
            <summary>
            Represents the boolean value true as a <see cref="T:CSCore.Win32.NativeBool"/>.
            </summary>
        </member>
        <member name="F:CSCore.Win32.NativeBool.False">
            <summary>
            Represents the boolean value false as a <see cref="T:CSCore.Win32.NativeBool"/>.
            </summary>
        </member>
        <member name="M:CSCore.Win32.NativeBool.#ctor(System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Win32.NativeBool"/> structure based on a boolean value.
            </summary>
            <param name="value">The boolean value.</param>
        </member>
        <member name="M:CSCore.Win32.NativeBool.Equals(CSCore.Win32.NativeBool)">
            <summary>
            Returns a value indicating whether this instance is equal to a <see cref="T:CSCore.Win32.NativeBool"/> object.
            </summary>
            <param name="obj">A <see cref="T:CSCore.Win32.NativeBool"/> value to compare to this instance.</param>
            <returns>true if obj has the same value as this instance; otherwise, false.</returns>
        </member>
        <member name="M:CSCore.Win32.NativeBool.Equals(System.Object)">
            <summary>
            Returns a value indicating whether this instance is equal to a specified object.
            </summary>
            <param name="obj">An object to compare to this instance.</param>
            <returns>true if obj is a <see cref="T:CSCore.Win32.NativeBool"/> and has the same value as this instance; otherwise, false.</returns>
        </member>
        <member name="M:CSCore.Win32.NativeBool.GetHashCode">
            <summary>
            Returns the hash code for this instance.
            </summary>
            <returns>A hash code for the current <see cref="T:CSCore.Win32.NativeBool"/>.</returns>
        </member>
        <member name="M:CSCore.Win32.NativeBool.op_Equality(CSCore.Win32.NativeBool,CSCore.Win32.NativeBool)">
            <summary>
            Implements the operator ==.
            </summary>
            <param name="left">The left.</param>
            <param name="right">The right.</param>
            <returns>
            The result of the operator.
            </returns>
        </member>
        <member name="M:CSCore.Win32.NativeBool.op_Inequality(CSCore.Win32.NativeBool,CSCore.Win32.NativeBool)">
            <summary>
            Implements the operator !=.
            </summary>
            <param name="left">The left.</param>
            <param name="right">The right.</param>
            <returns>
            The result of the operator.
            </returns>
        </member>
        <member name="M:CSCore.Win32.NativeBool.op_Implicit(CSCore.Win32.NativeBool)~System.Boolean">
            <summary>
            Performs an implicit conversion from <see cref="T:CSCore.Win32.NativeBool"/> to <see cref="T:System.Boolean"/>.
            </summary>
            <param name="value">The value.</param>
            <returns>
            The result of the conversion.
            </returns>
        </member>
        <member name="M:CSCore.Win32.NativeBool.op_Implicit(System.Boolean)~CSCore.Win32.NativeBool">
            <summary>
            Performs an implicit conversion from <see cref="T:System.Boolean"/> to <see cref="T:CSCore.Win32.NativeBool"/>.
            </summary>
            <param name="value">if set to <c>true</c> [value].</param>
            <returns>
            The result of the conversion.
            </returns>
        </member>
        <member name="M:CSCore.Win32.NativeBool.ToString">
            <summary>
            Converts the value of this instance to its equivalent string representation (either "True" or "False").
            </summary>
            <returns>The string representation of this instance.</returns>
        </member>
        <member name="T:CSCore.Win32.HResult">
            <summary>
            Defines common HRESULT error codes.
            </summary>
        </member>
        <member name="F:CSCore.Win32.HResult.S_OK">
            <summary>
            S_OK
            </summary>
        </member>
        <member name="F:CSCore.Win32.HResult.S_FALSE">
            <summary>
            S_FALSE
            </summary>
        </member>
        <member name="F:CSCore.Win32.HResult.E_ABORT">
            <summary>
            E_ABORT
            </summary>
        </member>
        <member name="F:CSCore.Win32.HResult.E_ACCESSDENIED">
            <summary>
            E_ACCESSDENIED
            </summary>
        </member>
        <member name="F:CSCore.Win32.HResult.E_NOINTERFACE">
            <summary>
            E_NOINTERFACE
            </summary>
        </member>
        <member name="F:CSCore.Win32.HResult.E_FAIL">
            <summary>
            E_FAIL
            </summary>
        </member>
        <member name="F:CSCore.Win32.HResult.E_INVALIDARG">
            <summary>
            E_INVALIDARG
            </summary>
        </member>
        <member name="F:CSCore.Win32.HResult.E_POINTER">
            <summary>
            E_POINTER
            </summary>
        </member>
        <member name="F:CSCore.Win32.HResult.E_NOTIMPL">
            <summary>
            E_NOTIMPL
            </summary>
        </member>
        <member name="F:CSCore.Win32.HResult.E_NOTFOUND">
            <summary>
            E_NOTFOUND
            </summary>
        </member>
        <member name="F:CSCore.Win32.HResult.MF_E_ATTRIBUTENOTFOUND">
            <summary>
            MF_E_ATTRIBUTENOTFOUND
            </summary>
        </member>
        <member name="F:CSCore.Win32.HResult.MF_E_SHUTDOWN">
            <summary>
            MF_E_SHUTDOWN
            </summary>
        </member>
        <member name="F:CSCore.Win32.HResult.AUDCLNT_E_UNSUPPORTED_FORMAT">
            <summary>
            AUDCLNT_E_UNSUPPORTED_FORMAT 
            </summary>
        </member>
        <member name="F:CSCore.Win32.HResult.AUDCLNT_E_DEVICE_INVALIDATED">
            <summary>
            AUDCLNT_E_DEVICE_INVALIDATED
            </summary>
        </member>
        <member name="F:CSCore.Win32.HResult.AUDCLNT_S_BUFFER_EMPTY">
            <summary>
            AUDCLNT_S_BUFFER_EMPTY
            </summary>
        </member>
        <member name="T:CSCore.Win32.Blob">
            <summary>
            Blob
            </summary>
        </member>
        <member name="F:CSCore.Win32.Blob.Length">
            <summary>
            Number of bytes stored in the blob.
            </summary>
        </member>
        <member name="F:CSCore.Win32.Blob.Data">
            <summary>
            Pointer to a byte array which stores the data.
            </summary>
        </member>
        <member name="M:CSCore.Win32.Blob.GetData">
            <summary>
            Returns the data stored in the <see cref="T:CSCore.Win32.Blob"/>.
            </summary>
            <returns>The data stored in the <see cref="T:CSCore.Win32.Blob"/></returns>
        </member>
        <member name="M:CSCore.Win32.Blob.GetString(System.Text.Encoding)">
            <summary>
            Converts the data stored in the <see cref="T:CSCore.Win32.Blob"/> based on an <paramref name="encoding"/> to a string and returns the string.
            </summary>
            <param name="encoding">Encoding used to convert the data to a string.</param>
            <returns>String of the stored data.</returns>
        </member>
        <member name="M:CSCore.Win32.Blob.ToString">
            <summary>
            Returns a <see cref="T:System.String" /> that represents the data stored in the <see cref="T:CSCore.Win32.Blob"/> as hex string.
            </summary>
            <returns>
            A <see cref="T:System.String" /> that represents the data stored in the <see cref="T:CSCore.Win32.Blob"/> as hex string.
            </returns>
        </member>
        <member name="T:CSCore.Win32.PropertyKey">
            <summary>
                Specifies the FMTID/PID identifier that programmatically identifies a property.
            </summary>
            <remarks>
                For more information, see
                <see href="https://msdn.microsoft.com/en-us/library/windows/desktop/bb773381%28v=vs.85%29.aspx" />.
            </remarks>
        </member>
        <member name="F:CSCore.Win32.PropertyKey.ID">
            <summary>
                A unique GUID for the property.
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyKey.PropertyID">
            <summary>
                A property identifier (PID).
            </summary>
        </member>
        <member name="M:CSCore.Win32.PropertyKey.#ctor(System.Guid,System.Int32)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.Win32.PropertyKey" /> struct.
            </summary>
            <param name="id">The unique GUID for the property.</param>
            <param name="propertyid">The property identifier (PID).</param>
        </member>
        <member name="M:CSCore.Win32.PropertyKey.ToString">
            <summary>
                Returns a <see cref="T:System.String" /> that represents this instance.
            </summary>
            <returns>
                A <see cref="T:System.String" /> that represents this instance.
            </returns>
        </member>
        <member name="T:CSCore.Win32.PropertyVariant">
            <summary>
            The <see cref="T:CSCore.Win32.PropertyVariant"/> structure is used to store data.
            </summary>
            <remarks>For more information, see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/aa380072(v=vs.85).aspx"/>.</remarks>
        </member>
        <member name="F:CSCore.Win32.PropertyVariant.Vartype">
            <summary>
            Value type tag.
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyVariant.Reserved1">
            <summary>
            Reserved for future use.
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyVariant.Reserved2">
            <summary>
            Reserved for future use.
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyVariant.Reserved3">
            <summary>
            Reserved for future use.
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyVariant.CValue">
            <summary>
            VT_I1, Version 1
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyVariant.BValue">
            <summary>
            VT_UI1
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyVariant.IValue">
            <summary>
            VT_I2
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyVariant.UIValue">
            <summary>
            VT_UI2
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyVariant.LValue">
            <summary>
            VT_I4
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyVariant.ULValue">
            <summary>
            VT_UI4
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyVariant.IntValue">
            <summary>
            VT_INT, Version 1
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyVariant.UIntValue">
            <summary>
            VT_UINT, Version 1
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyVariant.HValue">
            <summary>
            VT_I8
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyVariant.UHValue">
            <summary>
            VT_UI8
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyVariant.FloatValue">
            <summary>
            VT_R4
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyVariant.DoubleValue">
            <summary>
            VT_R8
            </summary>
        </member>
        <member name="P:CSCore.Win32.PropertyVariant.BoolValue">
            <summary>
            VT_BOOL
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyVariant.SCode">
            <summary>
            VT_ERROR
            </summary>
        </member>
        <member name="P:CSCore.Win32.PropertyVariant.Date">
            <summary>
            VT_DATE
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyVariant.FileTime">
            <summary>
            VT_FILETIME
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyVariant.BlobValue">
            <summary>
            VT_BLOB
            </summary>
        </member>
        <member name="F:CSCore.Win32.PropertyVariant.PointerValue">
            <summary>
            VT_PTR
            </summary>
        </member>
        <member name="P:CSCore.Win32.PropertyVariant.DataType">
            <summary>
            Gets or sets the datatype of the <see cref="T:CSCore.Win32.PropertyVariant"/>.
            </summary>
        </member>
        <member name="M:CSCore.Win32.PropertyVariant.GetValue">
            <summary>
            Returns the associated value of the <see cref="T:CSCore.Win32.PropertyVariant"/>. The type of the returned value is defined through the <see cref="P:CSCore.Win32.PropertyVariant.DataType"/> property.
            </summary>
            <returns>The associated value of the <see cref="T:CSCore.Win32.PropertyVariant"/>. If the datatype is not supported, the <see cref="M:CSCore.Win32.PropertyVariant.GetValue"/> method will return null.</returns>
            <remarks>Not all datatypes are supported.</remarks>
        </member>
        <member name="M:CSCore.Win32.PropertyVariant.Dispose">
            <summary>
            Releases the associated memory by calling the PropVariantClear function.
            </summary>
        </member>
        <member name="M:CSCore.Win32.PropertyVariant.ToString">
            <summary>
            Returns a <see cref="T:System.String" /> that represents the value of this instance.
            </summary>
            <returns>
            A <see cref="T:System.String" /> that represents the value of this instance.
            </returns>
        </member>
        <member name="T:CSCore.Win32.ComObject">
            <summary>
            Represents a native COM object.
            </summary>
        </member>
        <member name="F:CSCore.Win32.ComObject.UnsafeBasePtr">
            <summary>
            Unsafe native pointer to the COM object.
            </summary>
        </member>
        <member name="P:CSCore.Win32.ComObject.IsDisposed">
            <summary>
            Gets a value which indicates whether the <see cref="T:CSCore.Win32.ComObject"/> got already disposed.
            </summary>
        </member>
        <member name="P:CSCore.Win32.ComObject.BasePtr">
            <summary>
            Native pointer to the COM object.
            </summary>
        </member>
        <member name="M:CSCore.Win32.ComObject.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Win32.ComObject"/> class.
            </summary>
        </member>
        <member name="M:CSCore.Win32.ComObject.#ctor(System.IntPtr)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.Win32.ComObject"/> class.
            </summary>
            <param name="ptr">The native pointer of the COM object.</param>
        </member>
        <member name="M:CSCore.Win32.ComObject.QueryInterface``1">
            <summary>
            Queries supported interfaces/objects on a <see cref="T:CSCore.Win32.ComObject"/>.
            </summary>
            <typeparam name="T">The <see cref="T:CSCore.Win32.ComObject"/> being requested.</typeparam>
            <returns>The queried com interface/object.</returns>
        </member>
        <member name="M:CSCore.Win32.ComObject.QueryInterface(System.Type)">
            <summary>
            Retrieves a pointer to the supported interface on an object.
            </summary>
            <param name="type">Type of the requested <see cref="T:CSCore.Win32.ComObject"/>.</param>
            <returns>A pointer to the requested interface.</returns>
        </member>
        <member name="M:CSCore.Win32.ComObject.CSCore#Win32#IUnknown#QueryInterface(System.Guid@,System.IntPtr@)">
            <summary>
            Retrieves pointers to the supported interfaces on an object.
            </summary>
            <param name="riid">The identifier of the interface being requested.</param>
            <param name="ppvObject">The address of a pointer variable that receives the interface pointer requested in the <paramref name="riid"/> parameter.</param>
            <returns>This method returns S_OK if the interface is supported, and E_NOINTERFACE otherwise. If ppvObject is NULL, this method returns E_POINTER.</returns>
        </member>
        <member name="M:CSCore.Win32.ComObject.QueryInterface(System.Guid@,System.IntPtr@)">
            <summary>
            Retrieves pointers to the supported interfaces on an object.
            </summary>
            <param name="riid">The identifier of the interface being requested.</param>
            <param name="ppvObject">The address of a pointer variable that receives the interface pointer requested in the <paramref name="riid"/> parameter.</param>
            <returns>This method returns S_OK if the interface is supported, and E_NOINTERFACE otherwise. If ppvObject is NULL, this method returns E_POINTER.</returns>
        </member>
        <member name="M:CSCore.Win32.ComObject.CSCore#Win32#IUnknown#AddRef">
            <summary>
            Increments the reference count for an interface on an object. This method should be called for every new copy of a pointer to an interface on an object.
            </summary>
            <returns>The method returns the new reference count. This value is intended to be used only for test purposes.</returns>
        </member>
        <member name="M:CSCore.Win32.ComObject.AddRef">
            <summary>
            Increments the reference count for an interface on an object. This method should be called for every new copy of a pointer to an interface on an object.
            </summary>
            <returns>The method returns the new reference count. This value is intended to be used only for test purposes.</returns>
        </member>
        <member name="M:CSCore.Win32.ComObject.CSCore#Win32#IUnknown#Release">
            <summary>
            Decrements the reference count for an interface on an object.
            </summary>
            <returns>The method returns the new reference count. This value is intended to be used only for test purposes.</returns>
        </member>
        <member name="M:CSCore.Win32.ComObject.Release">
            <summary>
            Decrements the reference count for an interface on an object.
            </summary>
            <returns>The method returns the new reference count. This value is intended to be used only for test purposes.</returns>
        </member>
        <member name="M:CSCore.Win32.ComObject.Dispose">
            <summary>
            Releases the COM object.
            </summary>
        </member>
        <member name="M:CSCore.Win32.ComObject.Dispose(System.Boolean)">
            <summary>
            Releases the COM object.
            </summary>
            <param name="disposing">True to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
        </member>
        <member name="M:CSCore.Win32.ComObject.Finalize">
            <summary>
            Finalizes an instance of the <see cref="T:CSCore.Win32.ComObject"/> class.
            </summary>
        </member>
        <member name="T:CSCore.Win32.IUnknown">
            <summary>
            Enables clients to get pointers to other interfaces on a given object through the <see cref="M:CSCore.Win32.IUnknown.QueryInterface(System.Guid@,System.IntPtr@)"/> method, and manage the existence of the object through the <see cref="M:CSCore.Win32.IUnknown.AddRef"/> and <see cref="M:CSCore.Win32.IUnknown.Release"/> methods.
            </summary>
        </member>
        <member name="M:CSCore.Win32.IUnknown.QueryInterface(System.Guid@,System.IntPtr@)">
            <summary>
            Retrieves pointers to the supported interfaces on an object.
            </summary>
            <param name="riid">The identifier of the interface being requested.</param>
            <param name="ppvObject">The address of a pointer variable that receives the interface pointer requested in the <paramref name="riid"/> parameter.</param>
            <returns>This method returns S_OK if the interface is supported, and E_NOINTERFACE otherwise. If ppvObject is NULL, this method returns E_POINTER.</returns>
        </member>
        <member name="M:CSCore.Win32.IUnknown.AddRef">
            <summary>
            Increments the reference count for an interface on an object. This method should be called for every new copy of a pointer to an interface on an object.
            </summary>
            <returns>The method returns the new reference count. This value is intended to be used only for test purposes.</returns>
        </member>
        <member name="M:CSCore.Win32.IUnknown.Release">
            <summary>
            Decrements the reference count for an interface on an object.
            </summary>
            <returns>The method returns the new reference count. This value is intended to be used only for test purposes.</returns>
        </member>
        <member name="T:CSCore.XAudio2.AudioStreamCategory">
            <summary>
                Specifies the category of an audio stream.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.AudioStreamCategory.Other">
            <summary>
                Other audio stream.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.AudioStreamCategory.ForegroundOnlyMedia">
            <summary>
                Media that will only stream when the app is in the foreground.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.AudioStreamCategory.BackgroundCapableMedia">
            <summary>
                Media that can be streamed when the app is in the background.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.AudioStreamCategory.Communications">
            <summary>
                Real-time communications, such as VOIP or chat.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.AudioStreamCategory.Alerts">
            <summary>
                Alert sounds.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.AudioStreamCategory.SoundEffects">
            <summary>
                Sound effects.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.AudioStreamCategory.GameEffects">
            <summary>
                Game sound effects.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.AudioStreamCategory.GameMedia">
            <summary>
                Background audio for games.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.DebugConfiguration">
            <summary>
                Contains the new global debug configuration for XAudio2. Used with the <see cref="M:CSCore.XAudio2.XAudio2.SetDebugConfiguration(CSCore.XAudio2.DebugConfiguration)" />
                function.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.DebugConfiguration.TraceMask">
            <summary>
                Bitmask of enabled debug message types. For a list of possible values take look at:
                http://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.xaudio2.xaudio2_debug_configuration(v=vs.85).aspx.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.DebugConfiguration.BreakMask">
            <summary>
                Message types that will cause an immediate break. For a list of possible values take look at:
                http://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.xaudio2.xaudio2_debug_configuration(v=vs.85).aspx.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.DebugConfiguration.LogThreadId">
            <summary>
                Indicates whether to log the thread ID with each message.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.DebugConfiguration.LogFileline">
            <summary>
                Indicates whether to log source files and line numbers.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.DebugConfiguration.LogFunctionName">
            <summary>
                Indicates whether to log function names.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.DebugConfiguration.LogTiming">
            <summary>
                Indicates whether to log message timestamps.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.DeviceDetails">
            <summary>
                Provides information about an audio device.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.DeviceDetails.DeviceId">
            <summary>
                Gets the <see cref="P:CSCore.XAudio2.DeviceDetails.DeviceId" /> of the Device.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.DeviceDetails.DisplayName">
            <summary>
                Gets the <see cref="P:CSCore.XAudio2.DeviceDetails.DisplayName" /> of the Device.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.DeviceDetails.Role">
            <summary>
                Gets the <see cref="T:CSCore.XAudio2.XAudio2DeviceRole" /> of the Device.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.DeviceDetails.OutputFormat">
            <summary>
                Gets the <see cref="P:CSCore.XAudio2.DeviceDetails.OutputFormat" /> of the Device.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.EffectChain">
            <summary>
                Defines an effect chain.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.EffectChain.EffectCount">
            <summary>
                Number of effects in the effect chain for the voice.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.EffectChain.EffectDescriptorsPtr">
            <summary>
                Pointer to an array of <see cref="T:CSCore.XAudio2.EffectDescriptor" /> structures containing pointers to XAPO instances.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.EffectDescriptor">
            <summary>
                Contains information about an XAPO for use in an effect chain.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.EffectDescriptor.IUnknownEffect">
            <summary>
                Pointer to the IUnknown interface of the XAPO object.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.EffectDescriptor.InitialState">
            <summary>
                TRUE if the effect should begin in the enabled state. Otherwise, FALSE.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.EffectDescriptor.OutputChannels">
            <summary>
                Number of output channels the effect should produce.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.FilterParameters">
            <summary>
                Defines filter parameters for a source voice.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.FilterParameters.Type">
            <summary>
                The <see cref="T:CSCore.XAudio2.FilterType" />.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.FilterParameters.Frequency">
            <summary>
                Filter radian frequency calculated as (2 * sin(pi * (desired filter cutoff frequency) / sampleRate)).
                The frequency must be greater than or equal to 0 and less than or equal to 1.0f.
                The maximum frequency allowable is equal to the source sound's sample rate divided by
                six which corresponds to the maximum filter radian frequency of 1.
                For example, if a sound's sample rate is 48000 and the desired cutoff frequency is the maximum
                allowable value for that sample rate, 8000, the value for Frequency will be 1.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.FilterParameters.OneOverQ">
            <summary>
                Reciprocal of Q factor. Controls how quickly frequencies beyond Frequency are dampened. Larger values
                result in quicker dampening while smaller values cause dampening to occur more gradually.
                Must be greater than 0 and less than or equal to 1.5f.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.FilterType">
            <summary>
                Indicates the filter type.
            </summary>
            <remarks>
                Note  Note that the DirectX SDK versions of XAUDIO2 do not support the LowPassOnePoleFilter or the
                HighPassOnePoleFilter.
            </remarks>
        </member>
        <member name="F:CSCore.XAudio2.FilterType.LowPassFilter">
            <summary>
                Attenuates (reduces) frequencies above the cutoff frequency.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.FilterType.BandPassFilter">
            <summary>
                Attenuates frequencies outside a given range.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.FilterType.HighPassFilter">
            <summary>
                Attenuates frequencies below the cutoff frequency.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.FilterType.NotchFilter">
            <summary>
                Attenuates frequencies inside a given range.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.FilterType.LowPassOnePoleFilter">
            <summary>
                <b>XAudio2.8 only:</b> Attenuates frequencies above the cutoff frequency. This is a one-pole filter, and
                <see cref="F:CSCore.XAudio2.FilterParameters.OneOverQ" /> has no effect.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.FilterType.HighPassOnePoleFilter">
            <summary>
                <b>XAudio2.8 only:</b> Attenuates frequencies below the cutoff frequency. This is a one-pole filter, and
                <see cref="F:CSCore.XAudio2.FilterParameters.OneOverQ" /> has no effect.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.GetVoiceStateFlags">
            <summary>
                Flags controlling which voice state data should be returned.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.GetVoiceStateFlags.Default">
            <summary>
                Calculate all values.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.GetVoiceStateFlags.NoSamplesPlayed">
            <summary>
                Calculate all values except <see cref="F:CSCore.XAudio2.VoiceState.SamplesPlayed" />.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.IXAudio2EngineCallback">
            <summary>
                Internal used IXAudio2EngineCallback-wrapper. The default implementation of this interface is
                <see cref="T:CSCore.XAudio2.XAudio2EngineCallback" />.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.IXAudio2EngineCallback.OnProcessingPassStart">
            <summary>
                OnProcessingPassStart
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.IXAudio2EngineCallback.OnProcessingPassEnd">
            <summary>
                OnProcessingPassEnd
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.IXAudio2EngineCallback.OnCriticalError(System.Int32)">
            <summary>
                OnCriticalError
            </summary>
            <param name="error">Errorcode</param>
        </member>
        <member name="T:CSCore.XAudio2.IXAudio2VoiceCallback">
            <summary>
                The IXAudio2VoiceCallback interface contains methods that notify the client when certain events happen in a given
                <see cref="T:CSCore.XAudio2.XAudio2SourceVoice" />.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.IXAudio2VoiceCallback.OnVoiceProcessingPassStart(System.Int32)">
            <summary>
                Called during each processing pass for each voice, just before XAudio2 reads data from the voice's buffer queue.
            </summary>
            <param name="bytesRequired">
                The number of bytes that must be submitted immediately to avoid starvation. This allows the implementation of
                just-in-time streaming scenarios; the client can keep the absolute minimum data queued on the voice at all times,
                and pass it fresh data just before the data is required. This model provides the lowest possible latency attainable
                with XAudio2. For xWMA and XMA data BytesRequired will always be zero, since the concept of a frame of xWMA or XMA
                data is meaningless.
                Note: In a situation where there is always plenty of data available on the source voice, BytesRequired should
                always report zero, because it doesn't need any samples immediately to avoid glitching.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.IXAudio2VoiceCallback.OnVoiceProcessingPassEnd">
            <summary>
                Called just after the processing pass for the voice ends.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.IXAudio2VoiceCallback.OnStreamEnd">
            <summary>
                Called when the voice has just finished playing a contiguous audio stream.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.IXAudio2VoiceCallback.OnBufferStart(System.IntPtr)">
            <summary>
                Called when the voice is about to start processing a new audio buffer.
            </summary>
            <param name="bufferContextPtr">
                Context pointer that was assigned to the pContext member of the
                <see cref="T:CSCore.XAudio2.XAudio2Buffer" /> structure when the buffer was submitted.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.IXAudio2VoiceCallback.OnBufferEnd(System.IntPtr)">
            <summary>
                Called when the voice finishes processing a buffer.
            </summary>
            <param name="bufferContextPtr">
                Context pointer that was assigned to the pContext member of the
                <see cref="T:CSCore.XAudio2.XAudio2Buffer" /> structure when the buffer was submitted.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.IXAudio2VoiceCallback.OnLoopEnd(System.IntPtr)">
            <summary>
                Called when the voice reaches the end position of a loop.
            </summary>
            <param name="bufferContextPtr">
                Context pointer that was assigned to the pContext member of the
                <see cref="T:CSCore.XAudio2.XAudio2Buffer" /> structure when the buffer was submitted.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.IXAudio2VoiceCallback.OnVoiceError(System.IntPtr,System.Int32)">
            <summary>
                Called when a critical error occurs during voice processing.
            </summary>
            <param name="bufferContextPtr">
                Context pointer that was assigned to the pContext member of the
                <see cref="T:CSCore.XAudio2.XAudio2Buffer" /> structure when the buffer was submitted.
            </param>
            <param name="error">The HRESULT code of the error encountered.</param>
        </member>
        <member name="T:CSCore.XAudio2.LogMask">
            <summary>
                Specifies values for the <see cref="F:CSCore.XAudio2.DebugConfiguration.TraceMask" /> and
                <see cref="F:CSCore.XAudio2.DebugConfiguration.BreakMask" />.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.LogMask.LogNothing">
            <summary>
                Log nothing.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.LogMask.LogErrors">
            <summary>
                Log error messages.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.LogMask.LogWarnings">
            <summary>
                Log warning messages. Note: Enabling <see cref="F:CSCore.XAudio2.LogMask.LogWarnings" /> also enables <see cref="F:CSCore.XAudio2.LogMask.LogErrors" />.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.LogMask.LogInfo">
            <summary>
                Log informational messages.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.LogMask.LogDetail">
            <summary>
                Log detailed informational messages. Note: Enabling <see cref="F:CSCore.XAudio2.LogMask.LogDetail" /> also enables <see cref="F:CSCore.XAudio2.LogMask.LogInfo" />.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.LogMask.LogApiCalls">
            <summary>
                Log public API function entries and exits.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.LogMask.LogFuncCalls">
            <summary>
                Log internal function entries and exits. Note: Enabling <see cref="F:CSCore.XAudio2.LogMask.LogFuncCalls" /> also enables
                <see cref="F:CSCore.XAudio2.LogMask.LogApiCalls" />.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.LogMask.LogTiming">
            <summary>
                Log delays detected and other timing data.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.LogMask.LogLocks">
            <summary>
                Log usage of critical sections and mutexes.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.LogMask.LogMemory">
            <summary>
                Log memory heap usage information.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.LogMask.LogStreaming">
            <summary>
                Log audio streaming information.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.LogMask.All">
            <summary>
            All
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.PerformanceData">
            <summary>
                Contains performance information. Used by <see cref="P:CSCore.XAudio2.XAudio2.PerformanceData" />.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.PerformanceData.AudioCyclesSinceLastQuery">
            <summary>
                CPU cycles spent on audio processing since the last call to the <see cref="M:CSCore.XAudio2.XAudio2.StartEngine" /> or
                <see cref="P:CSCore.XAudio2.XAudio2.PerformanceData" /> function.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.PerformanceData.TotalCyclesSinceLastQuery">
            <summary>
                Total CPU cycles elapsed since the last call. Note: This only counts cycles on the CPU on which XAudio2 is running.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.PerformanceData.MinimumCyclesPerQuantum">
            <summary>
                Fewest CPU cycles spent on processing any single audio quantum since the last call.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.PerformanceData.MaximumCyclesPerQuantum">
            <summary>
                Most CPU cycles spent on processing any single audio quantum since the last call.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.PerformanceData.MemoryUsageInBytes">
            <summary>
                Total memory currently in use.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.PerformanceData.CurrentLatencyInSamples">
            <summary>
                Minimum delay that occurs between the time a sample is read from a source buffer and the time it reaches the
                speakers.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.PerformanceData.GlitchesSinceEngineStarted">
            <summary>
                Total audio dropouts since the engine started.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.PerformanceData.ActiveSourceVoiceCount">
            <summary>
                Number of source voices currently playing.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.PerformanceData.TotalSourceVoiceCount">
            <summary>
                Total number of source voices currently in existence.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.PerformanceData.ActiveSubmixVoiceCount">
            <summary>
                Number of submix voices currently playing.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.PerformanceData.ActiveResamplerCount">
            <summary>
                Number of resampler xAPOs currently active.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.PerformanceData.ActiveMatrixMixCount">
            <summary>
                Number of matrix mix xAPOs currently active.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.PerformanceData.ActiveXmaSourceVoices">
            <summary>
                Not supported on Windows. Xbox 360. Number of source voices decoding XMA data.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.PerformanceData.ActiveXmaStreams">
            <summary>
                Not supported on Windows. A voice can use more than one XMA stream.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.SourceVoiceStopFlags">
            <summary>
                Flags that specify how a <see cref="T:CSCore.XAudio2.XAudio2SourceVoice" /> is stopped.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.SourceVoiceStopFlags.None">
            <summary>
                None
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.SourceVoiceStopFlags.PlayTails">
            <summary>
                Continue emitting effect output after the voice is stopped.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.StreamingSourceVoice">
            <summary>
                Extends the the <see cref="T:CSCore.XAudio2.XAudio2SourceVoice" /> to enable real-time audio streaming.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.StreamingSourceVoice.#ctor(CSCore.XAudio2.XAudio2,CSCore.IWaveSource)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.XAudio2.StreamingSourceVoice"/> class with a default buffer size of 100ms.
            </summary>
            <param name="xaudio2">Instance of the <see cref="T:CSCore.XAudio2.XAudio2" /> class, used to create the <see cref="T:CSCore.XAudio2.XAudio2SourceVoice"/>.</param>
            <param name="waveSource">The <see cref="T:CSCore.IWaveSource" /> instance which provides audio data to play.</param>
        </member>
        <member name="M:CSCore.XAudio2.StreamingSourceVoice.#ctor(CSCore.XAudio2.XAudio2,CSCore.IWaveSource,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.XAudio2.StreamingSourceVoice"/> class.
            </summary>
            <param name="xaudio2">Instance of the <see cref="T:CSCore.XAudio2.XAudio2" /> class, used to create the <see cref="T:CSCore.XAudio2.XAudio2SourceVoice"/>.</param>
            <param name="waveSource">The <see cref="T:CSCore.IWaveSource" /> instance which provides audio data to play.</param>
            <param name="bufferSize">
                Buffersize of the internal buffers, in milliseconds. Values in the range from 70ms to
                200ms are recommended.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.StreamingSourceVoice.#ctor(System.IntPtr,CSCore.XAudio2.VoiceCallback,CSCore.IWaveSource,System.Int32)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.XAudio2.StreamingSourceVoice" /> class.
            </summary>
            <param name="ptr">Pointer to a <see cref="T:CSCore.XAudio2.XAudio2SourceVoice" /> object.</param>
            <param name="voiceCallback">
                <see cref="T:CSCore.XAudio2.VoiceCallback" /> instance which receives notifications from the
                <see cref="T:CSCore.XAudio2.XAudio2SourceVoice" /> which got passed as a pointer (see the <paramref name="ptr" /> argument).
            </param>
            <param name="waveSource"><see cref="T:CSCore.IWaveSource" /> which provides the audio data to stream.</param>
            <param name="bufferSize">
                Buffersize of the internal used buffers in milliseconds. Values in the range from 70ms to
                200ms are recommended.
            </param>
            <remarks>It is recommended to use the <see cref="M:CSCore.XAudio2.StreamingSourceVoice.Create(CSCore.XAudio2.XAudio2,CSCore.IWaveSource,System.Int32)" /> method instead of the this constructor.</remarks>
        </member>
        <member name="M:CSCore.XAudio2.StreamingSourceVoice.Create(CSCore.XAudio2.XAudio2,CSCore.IWaveSource,System.Int32)">
            <summary>
                Creates an instance of the <see cref="T:CSCore.XAudio2.StreamingSourceVoice" /> class.
            </summary>
            <param name="xaudio2">Instance of the <see cref="T:CSCore.XAudio2.XAudio2" /> class.</param>
            <param name="waveSource"><see cref="T:CSCore.IWaveSource" /> which provides the audio data to stream.</param>
            <param name="bufferSize">
                Buffersize of the internal used buffers in milliseconds. Values in the range from 70ms to
                200ms are recommended.
            </param>
            <returns>Configured <see cref="T:CSCore.XAudio2.StreamingSourceVoice" /> instance.</returns>
        </member>
        <member name="E:CSCore.XAudio2.StreamingSourceVoice.Stopped">
            <summary>
                Occurs when the playback stops and no more data is available.
            </summary>
            <remarks>This event occurs whenever the <see cref="E:CSCore.XAudio2.VoiceCallback.StreamEnd" /> event occurs.</remarks>
        </member>
        <member name="M:CSCore.XAudio2.StreamingSourceVoice.Refill">
            <summary>
                Notifies the <see cref="T:CSCore.XAudio2.StreamingSourceVoice" /> class that new data got requested. If there are any buffers which
                are currently not queued and the underlying <see cref="T:CSCore.IWaveSource" /> holds any more data, this data refills the
                internal used buffers and provides audio data to play.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.StreamingSourceVoice.Dispose(System.Boolean)">
            <summary>
                Stops and disposes the <see cref="T:CSCore.XAudio2.XAudio2SourceVoice" />, closes the internal used waithandle and frees the
                allocated memory of all used buffers.
            </summary>
            <param name="disposing">
                True to release both managed and unmanaged resources; false to release only unmanaged
                resources.
            </param>
        </member>
        <member name="T:CSCore.XAudio2.StreamingSourceVoiceListener">
            <summary>
                Provides a mechanism for playing <see cref="T:CSCore.XAudio2.StreamingSourceVoice" /> instances.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.StreamingSourceVoiceListener.MaxItems">
            <summary>
                Maximum amount of <see cref="T:CSCore.XAudio2.StreamingSourceVoice" /> instances a <see cref="T:CSCore.XAudio2.StreamingSourceVoiceListener" /> can
                contain.
            </summary>
            <remarks>Limited by the <see cref="M:System.Threading.WaitHandle.WaitAny(System.Threading.WaitHandle[],System.Int32,System.Boolean)" /> method.</remarks>
        </member>
        <member name="P:CSCore.XAudio2.StreamingSourceVoiceListener.Default">
            <summary>
                Gets the default <see cref="T:CSCore.XAudio2.StreamingSourceVoiceListener" /> singleton instance.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.StreamingSourceVoiceListener.Count">
            <summary>
                Gets the number of items which got added to the <see cref="T:CSCore.XAudio2.StreamingSourceVoiceListener" />.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.StreamingSourceVoiceListener.Dispose">
            <summary>
                Disposes the <see cref="T:CSCore.XAudio2.StreamingSourceVoiceListener" />.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.StreamingSourceVoiceListener.Add(CSCore.XAudio2.StreamingSourceVoice)">
            <summary>
                Adds a <see cref="T:CSCore.XAudio2.StreamingSourceVoice" /> to the <see cref="T:CSCore.XAudio2.StreamingSourceVoiceListener" />.
            </summary>
            <param name="streamingSourceVoice">
                The <see cref="T:CSCore.XAudio2.StreamingSourceVoice" /> instance to add to the
                <see cref="T:CSCore.XAudio2.StreamingSourceVoiceListener" />.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.StreamingSourceVoiceListener.Remove(CSCore.XAudio2.StreamingSourceVoice)">
            <summary>
                Removes a <see cref="T:CSCore.XAudio2.StreamingSourceVoice" /> from the <see cref="T:CSCore.XAudio2.StreamingSourceVoiceListener" />.
            </summary>
            <param name="streamingSourceVoice">
                The <see cref="T:CSCore.XAudio2.StreamingSourceVoice" /> instance to remove from the
                <see cref="T:CSCore.XAudio2.StreamingSourceVoiceListener" />.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.StreamingSourceVoiceListener.Dispose(System.Boolean)">
            <summary>
                Disposes the <see cref="T:CSCore.XAudio2.StreamingSourceVoiceListener" /> and stops the internal playback thread.
            </summary>
            <param name="disposing">
                True to release both managed and unmanaged resources; false to release only unmanaged
                resources.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.StreamingSourceVoiceListener.Finalize">
            <summary>
            Destructor which calls the <see cref="M:CSCore.XAudio2.StreamingSourceVoiceListener.Dispose(System.Boolean)"/> method.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.VoiceCallback">
            <summary>
                Default implementation of the <see cref="T:CSCore.XAudio2.IXAudio2VoiceCallback" /> interface.
            </summary>
        </member>
        <member name="E:CSCore.XAudio2.VoiceCallback.ProcessingPassStart">
            <summary>
                Called during each processing pass for each voice, just before XAudio2 reads data from the voice's buffer queue.
                The only argument passed to the eventhandler is the number of required bytes:
                The number of bytes that must be submitted immediately to avoid starvation. This allows the implementation of
                just-in-time streaming scenarios; the client can keep the absolute minimum data queued on the voice at all times,
                and pass it fresh data just before the data is required. This model provides the lowest possible latency attainable
                with XAudio2. For xWMA and XMA data BytesRequired will always be zero, since the concept of a frame of xWMA or XMA
                data is meaningless.
                Note: In a situation where there is always plenty of data available on the source voice, BytesRequired should
                always report zero, because it doesn't need any samples immediately to avoid glitching.
            </summary>
        </member>
        <member name="E:CSCore.XAudio2.VoiceCallback.ProcessingPassEnd">
            <summary>
                Called just after the processing pass for the voice ends.
            </summary>
        </member>
        <member name="E:CSCore.XAudio2.VoiceCallback.StreamEnd">
            <summary>
                Called when the voice has just finished playing a contiguous audio stream.
            </summary>
        </member>
        <member name="E:CSCore.XAudio2.VoiceCallback.BufferStart">
            <summary>
                Called when the voice is about to start processing a new audio buffer.
                The only argument passed to the eventhandler is a context pointer that was assigned to the pContext member of the
                <see cref="T:CSCore.XAudio2.XAudio2Buffer" /> structure when the buffer was submitted.
            </summary>
        </member>
        <member name="E:CSCore.XAudio2.VoiceCallback.BufferEnd">
            <summary>
                Called when the voice finishes processing a buffer.
                The only argument passed to the eventhandler is a context pointer that was assigned to the pContext member of the
                <see cref="T:CSCore.XAudio2.XAudio2Buffer" /> structure when the buffer was submitted.
            </summary>
        </member>
        <member name="E:CSCore.XAudio2.VoiceCallback.LoopEnd">
            <summary>
                Called when the voice reaches the end position of a loop.
                The only argument passed to the eventhandler is a context pointer that was assigned to the pContext member of the
                <see cref="T:CSCore.XAudio2.XAudio2Buffer" /> structure when the buffer was submitted.
            </summary>
        </member>
        <member name="E:CSCore.XAudio2.VoiceCallback.VoiceError">
            <summary>
                Called when a critical error occurs during voice processing.
                The first argument passed to the eventhandler is a context pointer that was assigned to the pContext member of the
                <see cref="T:CSCore.XAudio2.XAudio2Buffer" /> structure when the buffer was submitted.
                The second argument passed to the eventhandler is the HRESULT error code of the critical error.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.VoiceCallback.Dispose">
            <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
            </summary>
            <filterpriority>2</filterpriority>
        </member>
        <member name="T:CSCore.XAudio2.VoiceDetails">
            <summary>
                Contains information about the creation flags, input channels, and sample rate of a voice.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.VoiceDetails.CreationFlags">
            <summary>
                Flags used to create the voice; see the individual voice interfaces for more information.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.VoiceDetails.ActiveFlags">
            <summary>
                Flags that are currently set on the voice.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.VoiceDetails.InputChannels">
            <summary>
                The number of input channels the voice expects.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.VoiceDetails.InputSampleRate">
            <summary>
                The input sample rate the voice expects.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.VoiceFlags">
            <summary>
                VoiceFlags
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.VoiceFlags.None">
            <summary>
                None
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.VoiceFlags.NoPitch">
            <summary>
                No pitch control is available on the voice.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.VoiceFlags.NoSampleRateConversition">
            <summary>
                No sample rate conversion is available on the voice. The voice's outputs must have the same sample rate.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.VoiceFlags.UseFilter">
            <summary>
                The filter effect should be available on this voice.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.VoiceFlags.Music">
            <summary>
                <b>XAudio2.8 only:</b> Not supported on Windows.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.VoiceFlags.NoSamplesPlayed">
            <summary>
                <b>XAudio2.7 only:</b> Indicates that no samples were played.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.VoiceSendDescriptor">
            <summary>
                Defines a destination voice that is the target of a send from another voice and specifies whether a filter should
                be used.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.VoiceSendDescriptor.Flags">
            <summary>
                Either <see cref="F:CSCore.XAudio2.VoiceSendFlags.None"/> or <see cref="F:CSCore.XAudio2.VoiceSendFlags.UseFilter"/>.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.VoiceSendDescriptor.OutputVoicePtr">
            <summary>
                The destination voice.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.VoiceSendDescriptor.#ctor(CSCore.XAudio2.VoiceSendFlags,CSCore.XAudio2.XAudio2Voice)">
            <summary>
                Creates a new instance of the <see cref="T:CSCore.XAudio2.VoiceSendDescriptor" /> structure.
            </summary>
            <param name="flags">The <see cref="T:CSCore.XAudio2.VoiceSendFlags"/>. Must be either <see cref="F:CSCore.XAudio2.VoiceSendFlags.None"/> or <see cref="F:CSCore.XAudio2.VoiceSendFlags.UseFilter"/>.</param>
            <param name="outputVoice">The destination voice. Must not be null.</param>
        </member>
        <member name="M:CSCore.XAudio2.VoiceSendDescriptor.#ctor(CSCore.XAudio2.VoiceSendFlags,System.IntPtr)">
            <summary>
                Creates a new instance of the <see cref="T:CSCore.XAudio2.VoiceSendDescriptor" /> structure.
            </summary>
            <param name="flags">The <see cref="T:CSCore.XAudio2.VoiceSendFlags"/>. Must be either <see cref="F:CSCore.XAudio2.VoiceSendFlags.None"/> or <see cref="F:CSCore.XAudio2.VoiceSendFlags.UseFilter"/>.</param>
            <param name="outputVoicePtr">Pointer to the destination voice. Must not be <see cref="F:System.IntPtr.Zero"/>.</param>
        </member>
        <member name="T:CSCore.XAudio2.VoiceSendFlags">
            <summary>
                VoiceSendFlags
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.VoiceSendFlags.None">
            <summary>
                None.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.VoiceSendFlags.UseFilter">
            <summary>
                Indicates a filter should be used on a voice send.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.VoiceSends">
            <summary>
                Defines a set of voices to receive data from a single output voice.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.VoiceSends.SendCount">
            <summary>
                Number of voices to receive the output of the voice. An OutputCount value of 0 indicates the voice should not send
                output to any voices.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.VoiceSends.SendsPtr">
            <summary>
                Array of <see cref="T:CSCore.XAudio2.VoiceSendDescriptor" />s.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.VoiceState">
            <summary>
                Returns the voice's current state and cursor position data.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.VoiceState.CurrentBufferContextPtr">
            <summary>
                Pointer to a buffer context provided in the <see cref="T:CSCore.XAudio2.XAudio2Buffer" /> that is processed currently, or,
                if the voice is stopped currently, to the next buffer due to be processed.
                <see cref="F:CSCore.XAudio2.VoiceState.CurrentBufferContextPtr" /> is NULL if there are no buffers in the queue.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.VoiceState.BuffersQueued">
            <summary>
                Number of audio buffers currently queued on the voice, including the one that is processed currently.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.VoiceState.SamplesPlayed">
            <summary>
                Total number of samples processed by this voice since it last started, or since the last audio stream ended (as
                marked with the <see cref="F:CSCore.XAudio2.XAudio2BufferFlags.EndOfStream" /> flag).
                This total includes samples played multiple times due to looping.
                Theoretically, if all audio emitted by the voice up to this time is captured, this parameter would be the length of
                the audio stream in samples.
                If you specify <see cref="F:CSCore.XAudio2.GetVoiceStateFlags.NoSamplesPlayed" /> when you call
                <see cref="M:CSCore.XAudio2.XAudio2SourceVoice.GetState(CSCore.XAudio2.GetVoiceStateFlags)" />,
                this member won't be calculated, and its value is unspecified on return from
                <see cref="M:CSCore.XAudio2.XAudio2SourceVoice.GetState(CSCore.XAudio2.GetVoiceStateFlags)" />.
                <see cref="M:CSCore.XAudio2.XAudio2SourceVoice.GetState(CSCore.XAudio2.GetVoiceStateFlags)" /> takes about one-third as much time to
                complete when you specify <see cref="F:CSCore.XAudio2.GetVoiceStateFlags.NoSamplesPlayed" />.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.X3DAudio.CalculateFlags">
            <summary>
            Flags which define calculate flags for calculating the 3D audio parameters.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.CalculateFlags.Matrix">
            <summary>
            Enables matrix coefficient table calculation. 
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.CalculateFlags.Delay">
            <summary>
            	Enables delay time array calculation (stereo only). 
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.CalculateFlags.LpfDirect">
            <summary>
            Enables low pass filter (LPF) direct-path coefficient calculation. 
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.CalculateFlags.LpfReverb">
            <summary>
            Enables LPF reverb-path coefficient calculation. 
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.CalculateFlags.Reverb">
            <summary>
            Enables reverb send level calculation. 
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.CalculateFlags.Doppler">
            <summary>
            Enables Doppler shift factor calculation. 
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.CalculateFlags.EmitterAngle">
            <summary>
            Enables emitter-to-listener interior angle calculation. 
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.CalculateFlags.ZeroCenter">
            <summary>
            Fills the center channel with silence. This flag allows you to keep a 6-channel matrix so you do not have to remap the channels, but the center channel will be silent. This flag is only valid if you also set <see cref="F:CSCore.XAudio2.X3DAudio.CalculateFlags.Matrix"/>. 
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.CalculateFlags.RedirectToLfe">
            <summary>
            Applies an equal mix of all source channels to a low frequency effect (LFE) destination channel. It only applies to matrix calculations with a source that does not have an LFE channel and a destination that does have an LFE channel. This flag is only valid if you also set <see cref="F:CSCore.XAudio2.X3DAudio.CalculateFlags.Matrix"/>.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.X3DAudio.Cone">
            <summary>
            Specifies directionality for a single-channel non-Low-Frequency-Effect emitter by scaling DSP behavior with respect to the emitter's orientation.
            </summary>
            <remarks>
            For a detailed explanation of sound cones see <see href="http://msdn.microsoft.com/en-us/library/windows/desktop/ee418803(v=vs.85).aspx"/>.
            </remarks>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.Cone.X3DAUDIO_2PI">
            <summary>
            X3DAUDIO_2PI
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.Cone.InnerAngle">
            <summary>
            Inner cone angle in radians. This value must be within 0.0f to <see cref="F:CSCore.XAudio2.X3DAudio.Cone.X3DAUDIO_2PI"/>.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.Cone.OuterAngle">
            <summary>
            Outer cone angle in radians. This value must be within InnerAngle to <see cref="F:CSCore.XAudio2.X3DAudio.Cone.X3DAUDIO_2PI"/>.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.Cone.InnerVolume">
            <summary>
            Volume scaler on/within inner cone. This value must be within 0.0f to 2.0f.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.Cone.OuterVolume">
            <summary>
            Volume scaler on/beyond outer cone. This value must be within 0.0f to 2.0f.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.Cone.InnerLPF">
            <summary>
            LPF direct-path or reverb-path coefficient scaler on/within inner cone. This value is only used for LPF calculations and must be within 0.0f to 1.0f.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.Cone.OuterLPF">
            <summary>
            LPF direct-path or reverb-path coefficient scaler on or beyond outer cone. This value is only used for LPF calculations and must be within 0.0f to 1.0f.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.Cone.InnerReverb">
            <summary>
            Reverb send level scaler on or within inner cone. This must be within 0.0f to 2.0f.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.Cone.OuterReverb">
            <summary>
            Reverb send level scaler on/beyond outer cone. This must be within 0.0f to 2.0f.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.X3DAudio.CurvePoint">
            <summary>
            Defines a DSP setting at a given normalized distance.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.CurvePoint.Distance">
            <summary>
            Normalized distance. This must be within 0.0f to 1.0f.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.CurvePoint.DspSetting">
            <summary>
            DSP control setting.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.X3DAudio.DspSettings">
            <summary>
            Receives the results from a call to <see cref="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.X3DAudioCalculate(CSCore.XAudio2.X3DAudio.Listener,CSCore.XAudio2.X3DAudio.Emitter,CSCore.XAudio2.X3DAudio.CalculateFlags,CSCore.XAudio2.X3DAudio.DspSettings)"/>. 
            See http://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.x3daudio.x3daudio_dsp_settings%28v=vs.85%29.aspx for more details.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.DspSettings.DspSettingsNative.MatrixCoefficientsPtr">
            <summary>
                Caller provided array that will be initialized with the volume level of each source channel present in each
                destination channel. The array must have at least (<see cref="F:CSCore.XAudio2.X3DAudio.DspSettings.DspSettingsNative.SrcChannelCount" /> × <see cref="F:CSCore.XAudio2.X3DAudio.DspSettings.DspSettingsNative.DstChannelCount" />)
                elements. The array is arranged with the source channels as the column index of the array and the destination
                channels as the row index of the array.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.DspSettings.DspSettingsNative.DelayTimesPtr">
            <summary>
                Caller provided delay time array, which receives delays for each destination channel in milliseconds. This array
                must have at least <see cref="F:CSCore.XAudio2.X3DAudio.DspSettings.DspSettingsNative.DstChannelCount" /> elements. X3DAudio doesn't actually perform the delay. It simply
                returns the
                coefficients that may be used to adjust a delay DSP effect placed in the effect chain. The
                <see cref="F:CSCore.XAudio2.X3DAudio.DspSettings.DspSettingsNative.DelayTimesPtr" /> member can
                be NULL if the <see cref="F:CSCore.XAudio2.X3DAudio.CalculateFlags.Delay" /> flag is not specified when calling
                <see cref="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.X3DAudioCalculate(CSCore.XAudio2.X3DAudio.Listener,CSCore.XAudio2.X3DAudio.Emitter,CSCore.XAudio2.X3DAudio.CalculateFlags,CSCore.XAudio2.X3DAudio.DspSettings)"/>.
                Note  This member is only returned when X3DAudio is initialized for stereo output. For typical Xbox 360 usage, it
                will not return any data at all.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.DspSettings.DspSettingsNative.SrcChannelCount">
            <summary>
                Number of source channels. This must be initialized to the number of emitter channels before calling
                <see cref="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.X3DAudioCalculate(CSCore.XAudio2.X3DAudio.Listener,CSCore.XAudio2.X3DAudio.Emitter,CSCore.XAudio2.X3DAudio.CalculateFlags,CSCore.XAudio2.X3DAudio.DspSettings)" />.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.DspSettings.DspSettingsNative.DstChannelCount">
            <summary>
                Number of source channels. This must be initialized to the number of emitter channels before calling
                <see cref="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.X3DAudioCalculate(CSCore.XAudio2.X3DAudio.Listener,CSCore.XAudio2.X3DAudio.Emitter,CSCore.XAudio2.X3DAudio.CalculateFlags,CSCore.XAudio2.X3DAudio.DspSettings)" />.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.DspSettings.DspSettingsNative.LPFDirectCoefficient">
            <summary>
                LPF direct-path coefficient. Only calculated if the <see cref="F:CSCore.XAudio2.X3DAudio.CalculateFlags.LpfDirect" /> flag is specified when
                calling <see cref="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.X3DAudioCalculate(CSCore.XAudio2.X3DAudio.Listener,CSCore.XAudio2.X3DAudio.Emitter,CSCore.XAudio2.X3DAudio.CalculateFlags,CSCore.XAudio2.X3DAudio.DspSettings)" />.
                When using X3DAudio with XAudio2 the value returned in the LPFDirectCoefficient member would be applied to a low
                pass filter on a source voice with <see cref="M:CSCore.XAudio2.XAudio2Voice.SetFilterParameters(CSCore.XAudio2.FilterParameters,System.Int32)" />.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.DspSettings.DspSettingsNative.LPFReverbCoefficient">
            <summary>
                LPF reverb-path coefficient. Only calculated if the <see cref="F:CSCore.XAudio2.X3DAudio.CalculateFlags.LpfReverb" /> flag is specified when
                calling <see cref="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.X3DAudioCalculate(CSCore.XAudio2.X3DAudio.Listener,CSCore.XAudio2.X3DAudio.Emitter,CSCore.XAudio2.X3DAudio.CalculateFlags,CSCore.XAudio2.X3DAudio.DspSettings)" />.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.DspSettings.DspSettingsNative.ReverbLevel">
            <summary>
                Reverb send level. Only calculated if the <see cref="F:CSCore.XAudio2.X3DAudio.CalculateFlags.Reverb" /> flag is specified when calling
                <see cref="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.X3DAudioCalculate(CSCore.XAudio2.X3DAudio.Listener,CSCore.XAudio2.X3DAudio.Emitter,CSCore.XAudio2.X3DAudio.CalculateFlags,CSCore.XAudio2.X3DAudio.DspSettings)" />.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.DspSettings.DspSettingsNative.DopplerFactor">
            <summary>
                Doppler shift factor. Scales the resampler ratio for Doppler shift effect, where:
                <code>effective_frequency = DopplerFactor × original_frequency</code>.
                Only calculated if the <see cref="F:CSCore.XAudio2.X3DAudio.CalculateFlags.Doppler" /> flag is specified when calling
                <see cref="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.X3DAudioCalculate(CSCore.XAudio2.X3DAudio.Listener,CSCore.XAudio2.X3DAudio.Emitter,CSCore.XAudio2.X3DAudio.CalculateFlags,CSCore.XAudio2.X3DAudio.DspSettings)" />.
                When using X3DAudio with XAudio2 the value returned in the DopplerFactor would be applied to a source voice with
                <see cref="M:CSCore.XAudio2.XAudio2SourceVoice.SetFrequencyRatio(System.Single)" />.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.DspSettings.DspSettingsNative.EmitterToListenerAngle">
            <summary>
                Emitter-to-listener interior angle, expressed in radians with respect to the emitter's front orientation.
                Only calculated if the <see cref="F:CSCore.XAudio2.X3DAudio.CalculateFlags.EmitterAngle" /> flag is specified when calling
                <see cref="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.X3DAudioCalculate(CSCore.XAudio2.X3DAudio.Listener,CSCore.XAudio2.X3DAudio.Emitter,CSCore.XAudio2.X3DAudio.CalculateFlags,CSCore.XAudio2.X3DAudio.DspSettings)" />.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.DspSettings.DspSettingsNative.EmitterToListenerDistance">
            <summary>
                Distance in user-defined world units from the listener to the emitter base position.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.DspSettings.DspSettingsNative.EmitterVelocityComponent">
            <summary>
                Component of emitter velocity vector projected onto emitter-to-listener vector in user-defined world units per
                second.
                Only calculated if the <see cref="F:CSCore.XAudio2.X3DAudio.CalculateFlags.Doppler" /> flag is specified when calling
                <see cref="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.X3DAudioCalculate(CSCore.XAudio2.X3DAudio.Listener,CSCore.XAudio2.X3DAudio.Emitter,CSCore.XAudio2.X3DAudio.CalculateFlags,CSCore.XAudio2.X3DAudio.DspSettings)" />.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.DspSettings.DspSettingsNative.ListenerVelocityComponent">
            <summary>
                Component of listener velocity vector projected onto the emitter->listener vector in user-defined world units per
                second. Only calculated if the <see cref="F:CSCore.XAudio2.X3DAudio.CalculateFlags.Doppler" /> flag is specified when calling
                <see cref="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.X3DAudioCalculate(CSCore.XAudio2.X3DAudio.Listener,CSCore.XAudio2.X3DAudio.Emitter,CSCore.XAudio2.X3DAudio.CalculateFlags,CSCore.XAudio2.X3DAudio.DspSettings)" />.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.DspSettings.MatrixCoefficients">
            <summary>
                Gets the caller provided array that will be initialized with the volume level of each source channel present in each
                destination channel. The array must have at least (<see cref="P:CSCore.XAudio2.X3DAudio.DspSettings.SrcChannelCount" /> × <see cref="P:CSCore.XAudio2.X3DAudio.DspSettings.DstChannelCount" />)
                elements. The array is arranged with the source channels as the column index of the array and the destination
                channels as the row index of the array.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.DspSettings.DelayTimes">
            <summary>
                Gets the caller provided delay time array, which receives delays for each destination channel in milliseconds. This array
                must have at least <see cref="P:CSCore.XAudio2.X3DAudio.DspSettings.DstChannelCount" /> elements. X3DAudio doesn't actually perform the delay. It simply
                returns the
                coefficients that may be used to adjust a delay DSP effect placed in the effect chain. This won't be calculated if the <see cref="F:CSCore.XAudio2.X3DAudio.CalculateFlags.Delay" /> flag is not specified when calling
                <see cref="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.X3DAudioCalculate(CSCore.XAudio2.X3DAudio.Listener,CSCore.XAudio2.X3DAudio.Emitter,CSCore.XAudio2.X3DAudio.CalculateFlags,CSCore.XAudio2.X3DAudio.DspSettings)" />.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.DspSettings.SrcChannelCount">
            <summary>
                Gets the number of source channels.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.DspSettings.DstChannelCount">
            <summary>
                Gets the number of source channels. 
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.DspSettings.LPFDirectCoefficient">
            <summary>
                Gets the LPF direct-path coefficient. Only calculated if the <see cref="F:CSCore.XAudio2.X3DAudio.CalculateFlags.LpfDirect" /> flag is specified when
                calling <see cref="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.X3DAudioCalculate(CSCore.XAudio2.X3DAudio.Listener,CSCore.XAudio2.X3DAudio.Emitter,CSCore.XAudio2.X3DAudio.CalculateFlags,CSCore.XAudio2.X3DAudio.DspSettings)" />.
                When using X3DAudio with XAudio2 the value returned in the LPFDirectCoefficient member would be applied to a low
                pass filter on a source voice with <see cref="M:CSCore.XAudio2.XAudio2Voice.SetFilterParameters(CSCore.XAudio2.FilterParameters,System.Int32)" />.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.DspSettings.LPFReverbCoefficient">
            <summary>
                Gets the LPF reverb-path coefficient. Only calculated if the <see cref="F:CSCore.XAudio2.X3DAudio.CalculateFlags.LpfReverb" /> flag is specified when
                calling <see cref="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.X3DAudioCalculate(CSCore.XAudio2.X3DAudio.Listener,CSCore.XAudio2.X3DAudio.Emitter,CSCore.XAudio2.X3DAudio.CalculateFlags,CSCore.XAudio2.X3DAudio.DspSettings)" />.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.DspSettings.ReverbLevel">
            <summary>
                Gets the reverb send level. Only calculated if the <see cref="F:CSCore.XAudio2.X3DAudio.CalculateFlags.Reverb" /> flag is specified when calling
                <see cref="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.X3DAudioCalculate(CSCore.XAudio2.X3DAudio.Listener,CSCore.XAudio2.X3DAudio.Emitter,CSCore.XAudio2.X3DAudio.CalculateFlags,CSCore.XAudio2.X3DAudio.DspSettings)" />.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.DspSettings.DopplerFactor">
            <summary>
                Gets the doppler shift factor. Scales the resampler ratio for Doppler shift effect, where:
                <code>effective_frequency = DopplerFactor × original_frequency</code>.
                Only calculated if the <see cref="F:CSCore.XAudio2.X3DAudio.CalculateFlags.Doppler" /> flag is specified when calling
                <see cref="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.X3DAudioCalculate(CSCore.XAudio2.X3DAudio.Listener,CSCore.XAudio2.X3DAudio.Emitter,CSCore.XAudio2.X3DAudio.CalculateFlags,CSCore.XAudio2.X3DAudio.DspSettings)" />.
                When using X3DAudio with XAudio2 the value returned in the DopplerFactor would be applied to a source voice with
                <see cref="M:CSCore.XAudio2.XAudio2SourceVoice.SetFrequencyRatio(System.Single)" />.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.DspSettings.EmitterToListenerAngle">
            <summary>
                Gets the emitter-to-listener interior angle, expressed in radians with respect to the emitter's front orientation.
                Only calculated if the <see cref="F:CSCore.XAudio2.X3DAudio.CalculateFlags.EmitterAngle" /> flag is specified when calling
                <see cref="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.X3DAudioCalculate(CSCore.XAudio2.X3DAudio.Listener,CSCore.XAudio2.X3DAudio.Emitter,CSCore.XAudio2.X3DAudio.CalculateFlags,CSCore.XAudio2.X3DAudio.DspSettings)" />.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.DspSettings.EmitterToListenerDistance">
            <summary>
                Gets the distance in user-defined world units from the listener to the emitter base position.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.DspSettings.EmitterVelocityComponent">
            <summary>
                Gets the component of emitter velocity vector projected onto emitter-to-listener vector in user-defined world units per
                second.
                Only calculated if the <see cref="F:CSCore.XAudio2.X3DAudio.CalculateFlags.Doppler" /> flag is specified when calling
                <see cref="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.X3DAudioCalculate(CSCore.XAudio2.X3DAudio.Listener,CSCore.XAudio2.X3DAudio.Emitter,CSCore.XAudio2.X3DAudio.CalculateFlags,CSCore.XAudio2.X3DAudio.DspSettings)" />.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.DspSettings.ListenerVelocityComponent">
            <summary>
                Gets the component of listener velocity vector projected onto the emitter->listener vector in user-defined world units per
                second. Only calculated if the <see cref="F:CSCore.XAudio2.X3DAudio.CalculateFlags.Doppler" /> flag is specified when calling
                <see cref="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.X3DAudioCalculate(CSCore.XAudio2.X3DAudio.Listener,CSCore.XAudio2.X3DAudio.Emitter,CSCore.XAudio2.X3DAudio.CalculateFlags,CSCore.XAudio2.X3DAudio.DspSettings)" />.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.X3DAudio.DspSettings.#ctor(System.Int32,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.XAudio2.X3DAudio.DspSettings"/> class.
            </summary>
            <param name="sourceChannelCount">The number of source channels.</param>
            <param name="destinationChannelCount">The number of destination channels.</param>
        </member>
        <member name="T:CSCore.XAudio2.X3DAudio.Emitter">
            <summary>
            Defines a single-point or multiple-point 3D audio source that is used with an arbitrary number of sound channels.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.Emitter.Cone">
            <summary>
            Gets or sets the sound cone. Used only with single-channel emitters for matrix, LPF (both direct and reverb paths), and reverb calculations. NULL specifies the emitter is omnidirectional.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.Emitter.OrientFront">
            <summary>
            Gets or sets the orientation of the front direction. This value must be orthonormal with <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.OrientTop"/>. <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.OrientFront"/> must be normalized when used. For single-channel emitters without cones <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.OrientFront"/> is only used for emitter angle calculations. For multi channel emitters or single-channel with cones <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.OrientFront"/> is used for matrix, LPF (both direct and reverb paths), and reverb calculations.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.Emitter.OrientTop">
            <summary>
            Gets or sets the orientation of the top direction. This value must be orthonormal with <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.OrientFront"/>. <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.OrientTop"/> is only used with multi-channel emitters for matrix calculations.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.Emitter.Position">
            <summary>
            Gets or sets the position in user-defined world units. This value does not affect <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.Velocity"/>.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.Emitter.Velocity">
            <summary>
            Gets or sets the velocity vector in user-defined world units/second. This value is used only for doppler calculations. It does not affect <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.Position"/>.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.Emitter.InnerRadius">
            <summary>
            Gets or sets the value to be used for the inner radius calculations. If <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.InnerRadius"/> is 0, then no inner radius is used, but <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.InnerRadiusAngle"/> may still be used. This value must be between 0.0f and FLT_MAX.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.Emitter.InnerRadiusAngle">
            <summary>
            Gets or sets the value to be used for the inner radius angle calculations. This value must be between 0.0f and <see cref="F:System.Math.PI"/>/4.0 (which equals 45°).
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.Emitter.ChannelCount">
            <summary>
            Gets or sets the number of emitters defined by the <see cref="T:CSCore.XAudio2.X3DAudio.Emitter"/> class. Must be greater than 0.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.Emitter.ChannelRadius">
            <summary>
            Gets or sets the distance from <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.Position"/> that channels will be placed if <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.ChannelCount"/> is greater than 1. <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.ChannelRadius"/> is only used with multi-channel emitters for matrix calculations. Must be greater than or equal to 0.0f.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.Emitter.ChannelAzimuths">
            <summary>
            Gets or sets the table of channel positions, expressed as an azimuth in radians along the channel radius with respect to the front orientation vector in the plane orthogonal to the top orientation vector. An azimuth of 2*<see cref="F:System.Math.PI"/> specifies a channel is a low-frequency effects (LFE) channel. LFE channels are positioned at the emitter base and are calculated with respect to <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.LowFrequencyEffectCurve"/> only, never <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.VolumeCurve"/>. <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.ChannelAzimuths"/> must have at least <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.ChannelCount"/> elements, but can be NULL if <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.ChannelCount"/> = 1. The table values must be within 0.0f to 2*<see cref="F:System.Math.PI"/>. <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.ChannelAzimuths"/> is used with multi-channel emitters for matrix calculations.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.Emitter.VolumeCurve">
            <summary>
            Gets or sets the volume-level distance curve, which is used only for matrix calculations. NULL specifies a specialized default curve that conforms to the inverse square law, such that when distance is between 0.0f and <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.CurveDistanceScaler" />× 1.0f, no attenuation is applied. When distance is greater than <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.CurveDistanceScaler" />× 1.0f, the amplification factor is (<see cref="P:CSCore.XAudio2.X3DAudio.Emitter.CurveDistanceScaler" />× 1.0f)/distance. At a distance of <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.CurveDistanceScaler" />× 2.0f, the sound will be at half volume or -6 dB, at a distance of <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.CurveDistanceScaler" />× 4.0f, the sound will be at one quarter volume or -12 dB, and so on. <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.VolumeCurve" /> and <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.LowFrequencyEffectCurve"/> are independent of each other. <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.VolumeCurve" /> does not affect LFE channel volume.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.Emitter.LowFrequencyEffectCurve">
            <summary>
            Gets or sets the LFE roll-off distance curve, or NULL to use default curve: [0.0f, <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.CurveDistanceScaler" /> ×1.0f], [<see cref="P:CSCore.XAudio2.X3DAudio.Emitter.CurveDistanceScaler" /> ×1.0f, 0.0f]. A NULL value for <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.LowFrequencyEffectCurve"/> specifies a default curve that conforms to the inverse square law with distances &lt;= <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.CurveDistanceScaler" /> clamped to no attenuation. <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.VolumeCurve" /> and <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.LowFrequencyEffectCurve"/> are independent of each other. <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.LowFrequencyEffectCurve"/> does not affect non LFE channel volume.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.Emitter.LowPassFilterDirectCurve">
            <summary>
            Gets or sets the low-pass filter (LPF) direct-path coefficient distance curve, or NULL to use the default curve: [0.0f, 1.0f], [1.0f, 0.75f]. <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.LowPassFilterDirectCurve"/> is only used for LPF direct-path calculations.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.Emitter.LowPassFilterReverbCurve">
            <summary>
            Gets or sets the LPF reverb-path coefficient distance curve, or NULL to use default curve: [0.0f, 0.75f], [1.0f, 0.75f]. <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.LowPassFilterReverbCurve"/> is only used for LPF reverb path calculations.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.X3DAudio.Emitter.ReverbCurve">
            <summary>
            Gets or sets the reverb send level distance curve, or NULL to use default curve: [0.0f, 1.0f], [1.0f, 0.0f].
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.Emitter.CurveDistanceScaler">
            <summary>
            Gets or sets the curve distance scaler that is used to scale normalized distance curves to user-defined world units, and/or to exaggerate their effect. This does not affect any other calculations. The value must be within the range FLT_MIN to FLT_MAX. <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.CurveDistanceScaler"/> is only used for matrix, LPF (both direct and reverb paths), and reverb calculations.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.Emitter.DopplerScaler">
            <summary>
            Doppler shift scaler that is used to exaggerate Doppler shift effect. <see cref="P:CSCore.XAudio2.X3DAudio.Emitter.DopplerScaler"/> is only used for Doppler calculations and does not affect any other calculations. The value must be within the range 0.0f to FLT_MAX.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.X3DAudio.Listener">
            <summary>
                Defines a point of 3D audio reception.
            </summary>
            <remarks>
                A listener's front and top vectors must be orthonormal. To be considered orthonormal, a pair of vectors must
                have a magnitude of 1 +- 1x10-5 and a dot product of 0 +- 1x10-5.
            </remarks>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.Listener.OrientFront">
            <summary>
                Gets or sets the orientation of front direction. When <see cref="P:CSCore.XAudio2.X3DAudio.Listener.Cone" /> is NULL OrientFront is used only for
                matrix and delay calculations. When <see cref="P:CSCore.XAudio2.X3DAudio.Listener.Cone" /> is not NULL OrientFront is used for matrix, LPF (both
                direct and reverb paths), and reverb calculations. This value must be orthonormal with <see cref="P:CSCore.XAudio2.X3DAudio.Listener.OrientTop" />
                when used.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.Listener.OrientTop">
            <summary>
                Gets or sets the orientation of top direction, used only for matrix and delay calculations. This value must be
                orthonormal with <see cref="P:CSCore.XAudio2.X3DAudio.Listener.OrientFront" /> when used.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.Listener.Position">
            <summary>
                Gets or sets the position in user-defined world units. This value does not affect <see cref="P:CSCore.XAudio2.X3DAudio.Listener.Velocity" />.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.Listener.Velocity">
            <summary>
                Gets or sets the velocity vector in user-defined world units per second, used only for doppler calculations. This
                value does not affect <see cref="P:CSCore.XAudio2.X3DAudio.Listener.Position" />.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.X3DAudio.Listener.Cone">
            <summary>
                Gets or sets the <see cref="P:CSCore.XAudio2.X3DAudio.Listener.Cone" /> to use. Providing a listener cone will specify that additional calculations
                are performed when determining the volume and filter DSP parameters for individual sound sources. A NULL
                <see cref="P:CSCore.XAudio2.X3DAudio.Listener.Cone" /> value specifies an omnidirectional sound and no cone processing is applied. <see cref="P:CSCore.XAudio2.X3DAudio.Listener.Cone" />
                is only used for matrix, LPF (both direct and reverb paths), and reverb calculations.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.X3DAudio.X3DAudioCore">
            <summary>
            Provides access to the X3DAudio functions.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.#ctor(CSCore.ChannelMask)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.XAudio2.X3DAudio.X3DAudioCore" /> class.
            </summary>
            <param name="channelMask">Assignment of channels to speaker positions. This value must not be zero.</param>
        </member>
        <member name="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.#ctor(CSCore.ChannelMask,System.Single)">
            <summary>
                Initializes a new instance of <see cref="T:CSCore.XAudio2.X3DAudio.X3DAudioCore" /> class.
            </summary>
            <param name="speedOfSound">
                Speed of sound, in user-defined world units per second. Use this value only for doppler
                calculations. It must be greater than or equal to zero.
            </param>
            <param name="channelMask">Assignment of channels to speaker positions. This value must not be zero.</param>
        </member>
        <member name="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.X3DAudioCalculate(CSCore.XAudio2.X3DAudio.Listener,CSCore.XAudio2.X3DAudio.Emitter,CSCore.XAudio2.X3DAudio.CalculateFlags,CSCore.XAudio2.X3DAudio.DspSettings)">
            <summary>
                Calculates DSP settings with respect to 3D parameters.
            </summary>
            <param name="listener">Represents the point of reception.</param>
            <param name="emitter">Represents the sound source.</param>
            <param name="flags">Bitwise combination of <see cref="T:CSCore.XAudio2.X3DAudio.CalculateFlags" /> specifying which 3D parameters to calculate.</param>
            <param name="settings">
                Instance of the <see cref="T:CSCore.XAudio2.X3DAudio.DspSettings" /> class that receives the calculation results.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.Dispose">
            <summary>
                Disposes the <see cref="T:CSCore.XAudio2.X3DAudio.X3DAudioCore" /> instance.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.Finalize">
            <summary>
            Destructor which calls <see cref="M:CSCore.XAudio2.X3DAudio.X3DAudioCore.Dispose"/>.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.X3DAudio.X3DAudioCore.X3DAudioHandle">
            <summary>
                X3DAUDIO_HANDLE is an opaque data structure. Because the operating system doesn't allocate any additional storage
                for the 3D audio instance handle, you don't need to free or close it.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.XAudio2">
            <summary>
                <see cref="T:CSCore.XAudio2.XAudio2" /> is the class for the XAudio2 object that manages all audio engine states, the audio
                processing thread, the voice graph, and so forth.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2.QuantumDenominator">
            <summary>
                The denominator of a quantum unit. In 10ms chunks (= 1/100 seconds).
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2.MinimumSampleRate">
            <summary>
                Minimum sample rate is 1000 Hz.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2.MaximumSampleRate">
            <summary>
                Maximum sample rate is 200 kHz.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2.MinFrequencyRatio">
            <summary>
                The minimum frequency ratio is 1/1024.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2.MaxFrequencyRatio">
            <summary>
                Maximum frequency ratio is 1024.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2.DefaultFrequencyRatio">
            <summary>
                The default value for the frequency ratio is 4.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2.MaxAudioChannels">
            <summary>
                The maximum number of supported channels is 64.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2.DefaultChannels">
            <summary>
                Value which indicates that the default number of channels should be used.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2.DefaultSampleRate">
            <summary>
                Values which indicates that the default sample rate should be used.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2.CommitAll">
            <summary>
                Value which can be used in combination with the <see cref="M:CSCore.XAudio2.XAudio2.CommitChanges(System.Int32)" /> method to commit all
                changes.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2.CommitNow">
            <summary>
                Values which indicates that the made changes should be commited instantly.
            </summary>
        </member>
        <member name="E:CSCore.XAudio2.XAudio2.ProcessingPassStart">
            <summary>
                Fired by XAudio2 just before an audio processing pass begins.
            </summary>
        </member>
        <member name="E:CSCore.XAudio2.XAudio2.ProcessingPassEnd">
            <summary>
                Fired by XAudio2 just after an audio processing pass ends.
            </summary>
        </member>
        <member name="E:CSCore.XAudio2.XAudio2.CriticalError">
            <summary>
                Fired if a critical system error occurs that requires XAudio2 to be closed down and restarted.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.#ctor">
            <summary>
                Internal default ctor.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.#ctor(System.IntPtr,CSCore.XAudio2.XAudio2Version)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.XAudio2.XAudio2" /> class.
            </summary>
            <param name="ptr">Native pointer of the <see cref="T:CSCore.XAudio2.XAudio2Voice" /> object.</param>
            <param name="version">The XAudio2 subversion to use.</param>
        </member>
        <member name="P:CSCore.XAudio2.XAudio2.PerformanceData">
            <summary>
                Gets current resource usage details, such as available memory or CPU usage.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.XAudio2.DefaultDevice">
            <summary>
            Gets the default device which can be used to create a mastering voice.
            </summary>
            <value>Using XAudio2.7 the default device is 0 (as an integer). Using XAudio2.8 the default device is null.</value>
        </member>
        <member name="P:CSCore.XAudio2.XAudio2.Version">
            <summary>
            Gets the <see cref="T:CSCore.XAudio2.XAudio2Version"/> of the XAudio2 object.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.CreateXAudio2">
            <summary>
                Creates a new instance of the <see cref="T:CSCore.XAudio2.XAudio2" /> class.
                If no supported XAudio2 version is available, the CreateXAudio2 method throws an
                <see cref="T:System.NotSupportedException" />.
            </summary>
            <returns>A new <see cref="T:CSCore.XAudio2.XAudio2" /> instance.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.CreateXAudio2(System.Nullable{CSCore.XAudio2.XAudio2Processor})">
            <summary>
                Creates a new instance of the <see cref="T:CSCore.XAudio2.XAudio2" /> class.
                If no supported XAudio2 version is available, the CreateXAudio2 method throws an
                <see cref="T:System.NotSupportedException" />.
            </summary>
            <param name="processor">The <see cref="T:CSCore.XAudio2.XAudio2Processor" /> to use.</param>
            <returns>A new <see cref="T:CSCore.XAudio2.XAudio2" /> instance.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.RegisterForCallbacksNative(CSCore.XAudio2.IXAudio2EngineCallback)">
            <summary>
                Adds an <see cref="T:CSCore.XAudio2.IXAudio2EngineCallback" /> from the <see cref="T:CSCore.XAudio2.XAudio2" /> engine callback list.
            </summary>
            <param name="callback">
                <see cref="T:CSCore.XAudio2.IXAudio2EngineCallback" /> object to add to the <see cref="T:CSCore.XAudio2.XAudio2" /> engine
                callback list.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.RegisterForCallbacks(CSCore.XAudio2.IXAudio2EngineCallback)">
            <summary>
                Adds an <see cref="T:CSCore.XAudio2.IXAudio2EngineCallback" /> from the <see cref="T:CSCore.XAudio2.XAudio2" /> engine callback list.
            </summary>
            <param name="callback">
                <see cref="T:CSCore.XAudio2.IXAudio2EngineCallback" /> object to add to the <see cref="T:CSCore.XAudio2.XAudio2" /> engine
                callback list.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.UnregisterForCallbacks(CSCore.XAudio2.IXAudio2EngineCallback)">
            <summary>
                Removes an <see cref="T:CSCore.XAudio2.IXAudio2EngineCallback" /> from the <see cref="T:CSCore.XAudio2.XAudio2" /> engine callback list.
            </summary>
            <param name="callback">
                <see cref="T:CSCore.XAudio2.IXAudio2EngineCallback" /> object to remove from the <see cref="T:CSCore.XAudio2.XAudio2" /> engine
                callback list. If the given interface is present more than once in the list, only the first instance in the list
                will be removed.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.CreateSourceVoiceNative(System.IntPtr@,System.IntPtr,CSCore.XAudio2.VoiceFlags,System.Single,CSCore.XAudio2.IXAudio2VoiceCallback,System.Nullable{CSCore.XAudio2.VoiceSends},System.Nullable{CSCore.XAudio2.EffectChain})">
            <summary>
                Creates and configures a source voice. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.ixaudio2.ixaudio2.createsourcevoice(v=vs.85).aspx.
            </summary>
            <param name="pSourceVoice">If successful, returns a pointer to the new <see cref="T:CSCore.XAudio2.XAudio2SourceVoice" /> object.</param>
            <param name="sourceFormat">
                Pointer to a <see cref="T:CSCore.WaveFormat" />. The following formats are supported:
                <ul>
                    <li>8-bit (unsigned) integer PCM</li><li>16-bit integer PCM (optimal format for XAudio2)</li>
                    <li>20-bit integer PCM (either in 24 or 32 bit containers)</li>
                    <li>24-bit integer PCM (either in 24 or 32 bit containers)</li><li>32-bit integer PCM</li>
                    <li>32-bit float PCM (preferred format after 16-bit integer)</li>
                </ul>
                The number of channels in a source voice must be less than or equal to <see cref="F:CSCore.XAudio2.XAudio2.MaxAudioChannels" />. The sample
                rate of a source voice must be between <see cref="F:CSCore.XAudio2.XAudio2.MinimumSampleRate" /> and <see cref="F:CSCore.XAudio2.XAudio2.MaximumSampleRate" />.
            </param>
            <param name="flags">
                <see cref="T:CSCore.XAudio2.VoiceFlags" /> that specify the behavior of the source voice. A flag can be
                <see cref="F:CSCore.XAudio2.VoiceFlags.None" /> or a combination of one or more of the following.
                Possible values are <see cref="F:CSCore.XAudio2.VoiceFlags.NoPitch" />, <see cref="F:CSCore.XAudio2.VoiceFlags.NoSampleRateConversition" /> and
                <see cref="F:CSCore.XAudio2.VoiceFlags.UseFilter" />. <see cref="F:CSCore.XAudio2.VoiceFlags.Music" /> is not supported on Windows.
            </param>
            <param name="maxFrequencyRatio">
                Highest allowable frequency ratio that can be set on this voice. The value for this
                argument must be between <see cref="F:CSCore.XAudio2.XAudio2.MinFrequencyRatio" /> and <see cref="F:CSCore.XAudio2.XAudio2.MaxFrequencyRatio" />.
            </param>
            <param name="voiceCallback">
                Client-provided callback interface, <see cref="T:CSCore.XAudio2.IXAudio2VoiceCallback" />. This parameter is
                optional and can be null.
            </param>
            <param name="sendList">
                List of <see cref="T:CSCore.XAudio2.VoiceSends" /> structures that describe the set of destination voices for the
                source voice. If <paramref name="sendList" /> is NULL, the send list defaults to a single output to the first
                mastering
                voice created.
            </param>
            <param name="effectChain">
                List of <see cref="T:CSCore.XAudio2.EffectChain" /> structures that describe an effect chain to use in the
                source voice. This parameter is optional and can be null.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.CreateSourceVoicePtr(CSCore.WaveFormat,CSCore.XAudio2.VoiceFlags,System.Single,CSCore.XAudio2.IXAudio2VoiceCallback,System.Nullable{CSCore.XAudio2.VoiceSends},System.Nullable{CSCore.XAudio2.EffectChain})">
            <summary>
                Creates and configures a source voice. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.ixaudio2.ixaudio2.createsourcevoice(v=vs.85).aspx.
            </summary>
            <param name="sourceFormat">
                Pointer to a <see cref="T:CSCore.WaveFormat" />. The following formats are supported:
                <ul>
                    <li>8-bit (unsigned) integer PCM</li><li>16-bit integer PCM (optimal format for XAudio2)</li>
                    <li>20-bit integer PCM (either in 24 or 32 bit containers)</li>
                    <li>24-bit integer PCM (either in 24 or 32 bit containers)</li><li>32-bit integer PCM</li>
                    <li>32-bit float PCM (preferred format after 16-bit integer)</li>
                </ul>
                The number of channels in a source voice must be less than or equal to <see cref="F:CSCore.XAudio2.XAudio2.MaxAudioChannels" />. The
                sample rate of a source voice must be between <see cref="F:CSCore.XAudio2.XAudio2.MinimumSampleRate" /> and <see cref="F:CSCore.XAudio2.XAudio2.MaximumSampleRate" />
                .
            </param>
            <param name="flags">
                <see cref="T:CSCore.XAudio2.VoiceFlags" /> that specify the behavior of the source voice. A flag can be
                <see cref="F:CSCore.XAudio2.VoiceFlags.None" /> or a combination of one or more of the following.
                Possible values are <see cref="F:CSCore.XAudio2.VoiceFlags.NoPitch" />, <see cref="F:CSCore.XAudio2.VoiceFlags.NoSampleRateConversition" /> and
                <see cref="F:CSCore.XAudio2.VoiceFlags.UseFilter" />. <see cref="F:CSCore.XAudio2.VoiceFlags.Music" /> is not supported on Windows.
            </param>
            <param name="maxFrequencyRatio">
                Highest allowable frequency ratio that can be set on this voice. The value for this
                argument must be between <see cref="F:CSCore.XAudio2.XAudio2.MinFrequencyRatio" /> and <see cref="F:CSCore.XAudio2.XAudio2.MaxFrequencyRatio" />.
            </param>
            <param name="voiceCallback">
                Client-provided callback interface, <see cref="T:CSCore.XAudio2.IXAudio2VoiceCallback" />. This parameter is
                optional and can be null.
            </param>
            <param name="sendList">
                List of <see cref="T:CSCore.XAudio2.VoiceSends" /> structures that describe the set of destination voices for the
                source voice. If <paramref name="sendList" /> is NULL, the send list defaults to a single output to the first
                mastering
                voice created.
            </param>
            <param name="effectChain">
                List of <see cref="T:CSCore.XAudio2.EffectChain" /> structures that describe an effect chain to use in the
                source voice. This parameter is optional and can be null.
            </param>
            <returns>If successful, returns a pointer to the new <see cref="T:CSCore.XAudio2.XAudio2SourceVoice" /> object.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.CreateSourceVoice(CSCore.WaveFormat,CSCore.XAudio2.VoiceFlags,System.Single,CSCore.XAudio2.IXAudio2VoiceCallback,System.Nullable{CSCore.XAudio2.VoiceSends},System.Nullable{CSCore.XAudio2.EffectChain})">
            <summary>
                Creates and configures a source voice. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.ixaudio2.ixaudio2.createsourcevoice(v=vs.85).aspx.
            </summary>
            <param name="sourceFormat">
                Pointer to a <see cref="T:CSCore.WaveFormat" />. The following formats are supported:
                <ul>
                    <li>8-bit (unsigned) integer PCM</li><li>16-bit integer PCM (optimal format for XAudio2)</li>
                    <li>20-bit integer PCM (either in 24 or 32 bit containers)</li>
                    <li>24-bit integer PCM (either in 24 or 32 bit containers)</li><li>32-bit integer PCM</li>
                    <li>32-bit float PCM (preferred format after 16-bit integer)</li>
                </ul>
                The number of channels in a source voice must be less than or equal to <see cref="F:CSCore.XAudio2.XAudio2.MaxAudioChannels" />. The
                sample rate of a source voice must be between <see cref="F:CSCore.XAudio2.XAudio2.MinimumSampleRate" /> and <see cref="F:CSCore.XAudio2.XAudio2.MaximumSampleRate" />
                .
            </param>
            <param name="flags">
                <see cref="T:CSCore.XAudio2.VoiceFlags" /> that specify the behavior of the source voice. A flag can be
                <see cref="F:CSCore.XAudio2.VoiceFlags.None" /> or a combination of one or more of the following.
                Possible values are <see cref="F:CSCore.XAudio2.VoiceFlags.NoPitch" />, <see cref="F:CSCore.XAudio2.VoiceFlags.NoSampleRateConversition" /> and
                <see cref="F:CSCore.XAudio2.VoiceFlags.UseFilter" />. <see cref="F:CSCore.XAudio2.VoiceFlags.Music" /> is not supported on Windows.
            </param>
            <param name="maxFrequencyRatio">
                Highest allowable frequency ratio that can be set on this voice. The value for this
                argument must be between <see cref="F:CSCore.XAudio2.XAudio2.MinFrequencyRatio" /> and <see cref="F:CSCore.XAudio2.XAudio2.MaxFrequencyRatio" />.
            </param>
            <param name="voiceCallback">
                Client-provided callback interface, <see cref="T:CSCore.XAudio2.IXAudio2VoiceCallback" />. This parameter is
                optional and can be null.
            </param>
            <param name="sendList">
                List of <see cref="T:CSCore.XAudio2.VoiceSends" /> structures that describe the set of destination voices for the
                source voice. If <paramref name="sendList" /> is NULL, the send list defaults to a single output to the first
                mastering
                voice created.
            </param>
            <param name="effectChain">
                List of <see cref="T:CSCore.XAudio2.EffectChain" /> structures that describe an effect chain to use in the
                source voice. This parameter is optional and can be null.
            </param>
            <returns>If successful, returns a new <see cref="T:CSCore.XAudio2.XAudio2SourceVoice" /> object.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.CreateSourceVoice(CSCore.WaveFormat,CSCore.XAudio2.VoiceFlags)">
            <summary>
                Creates and configures a source voice.
            </summary>
            <param name="sourceFormat">
                Pointer to a <see cref="T:CSCore.WaveFormat" />. The following formats are supported:
                <ul>
                    <li>8-bit (unsigned) integer PCM</li><li>16-bit integer PCM (optimal format for XAudio2)</li>
                    <li>20-bit integer PCM (either in 24 or 32 bit containers)</li>
                    <li>24-bit integer PCM (either in 24 or 32 bit containers)</li><li>32-bit integer PCM</li>
                    <li>32-bit float PCM (preferred format after 16-bit integer)</li>
                </ul>
                The number of channels in a source voice must be less than or equal to <see cref="F:CSCore.XAudio2.XAudio2.MaxAudioChannels" />. The
                sample rate of a source voice must be between <see cref="F:CSCore.XAudio2.XAudio2.MinimumSampleRate" /> and <see cref="F:CSCore.XAudio2.XAudio2.MaximumSampleRate" />
                .
            </param>
            <param name="flags">
                <see cref="T:CSCore.XAudio2.VoiceFlags" /> that specify the behavior of the source voice. A flag can be
                <see cref="F:CSCore.XAudio2.VoiceFlags.None" /> or a combination of one or more of the following.
                Possible values are <see cref="F:CSCore.XAudio2.VoiceFlags.NoPitch" />, <see cref="F:CSCore.XAudio2.VoiceFlags.NoSampleRateConversition" /> and
                <see cref="F:CSCore.XAudio2.VoiceFlags.UseFilter" />. <see cref="F:CSCore.XAudio2.VoiceFlags.Music" /> is not supported on Windows.
            </param>
            <returns>If successful, returns a new <see cref="T:CSCore.XAudio2.XAudio2SourceVoice" /> object.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.CreateSourceVoice(CSCore.WaveFormat)">
            <summary>
                Creates and configures a source voice.
            </summary>
            <param name="sourceFormat">
                Pointer to a <see cref="T:CSCore.WaveFormat" />. The following formats are supported:
                <ul>
                    <li>8-bit (unsigned) integer PCM</li><li>16-bit integer PCM (optimal format for XAudio2)</li>
                    <li>20-bit integer PCM (either in 24 or 32 bit containers)</li>
                    <li>24-bit integer PCM (either in 24 or 32 bit containers)</li><li>32-bit integer PCM</li>
                    <li>32-bit float PCM (preferred format after 16-bit integer)</li>
                </ul>
                The number of channels in a source voice must be less than or equal to <see cref="F:CSCore.XAudio2.XAudio2.MaxAudioChannels" />. The
                sample rate of a source voice must be between <see cref="F:CSCore.XAudio2.XAudio2.MinimumSampleRate" /> and <see cref="F:CSCore.XAudio2.XAudio2.MaximumSampleRate" />
                .
            </param>
            <returns>If successful, returns a new <see cref="T:CSCore.XAudio2.XAudio2SourceVoice" /> object.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.CreateSubmixVoiceNative(System.IntPtr@,System.Int32,System.Int32,CSCore.XAudio2.VoiceFlags,System.Int32,System.Nullable{CSCore.XAudio2.VoiceSends},System.Nullable{CSCore.XAudio2.EffectChain})">
            <summary>
                Creates and configures a submix voice.
            </summary>
            <param name="pSubmixVoice">On success, returns a pointer to the new <see cref="T:CSCore.XAudio2.XAudio2SubmixVoice" /> object.</param>
            <param name="inputChannels">
                Number of channels in the input audio data of the submix voice. The
                <paramref name="inputChannels" /> must be less than or equal to <see cref="F:CSCore.XAudio2.XAudio2.MaxAudioChannels" />.
            </param>
            <param name="inputSampleRate">
                Sample rate of the input audio data of submix voice. This rate must be a multiple of
                <see cref="F:CSCore.XAudio2.XAudio2.QuantumDenominator" />. InputSampleRate must be between <see cref="F:CSCore.XAudio2.XAudio2.MinimumSampleRate" /> and
                <see cref="F:CSCore.XAudio2.XAudio2.MaximumSampleRate" />.
            </param>
            <param name="flags">
                Flags that specify the behavior of the submix voice. It can be <see cref="F:CSCore.XAudio2.VoiceFlags.None" /> or
                <see cref="F:CSCore.XAudio2.VoiceFlags.UseFilter" />.
            </param>
            <param name="processingStage">
                An arbitrary number that specifies when this voice is processed with respect to other
                submix voices, if the XAudio2 engine is running other submix voices. The voice is processed after all other voices
                that include a smaller <paramref name="processingStage" /> value and before all other voices that include a larger
                <paramref name="processingStage" /> value. Voices that include the same <paramref name="processingStage" /> value
                are
                processed in any order. A submix voice cannot send to another submix voice with a lower or equal
                <paramref name="processingStage" /> value. This prevents audio being lost due to a submix cycle.
            </param>
            <param name="sendList">
                List of <see cref="T:CSCore.XAudio2.VoiceSends" /> structures that describe the set of destination voices for the
                submix voice. If <paramref name="sendList" /> is NULL, the send list will default to a single output to the first
                mastering voice created.
            </param>
            <param name="effectChain">
                List of <see cref="T:CSCore.XAudio2.EffectChain" /> structures that describe an effect chain to use in the
                submix voice. This parameter is optional and can be null.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.CreateSubmixVoicePtr(System.Int32,System.Int32,CSCore.XAudio2.VoiceFlags,System.Int32,System.Nullable{CSCore.XAudio2.VoiceSends},System.Nullable{CSCore.XAudio2.EffectChain})">
            <summary>
                Creates and configures a submix voice.
            </summary>
            <param name="inputChannels">
                Number of channels in the input audio data of the submix voice. The
                <paramref name="inputChannels" /> must be less than or equal to <see cref="F:CSCore.XAudio2.XAudio2.MaxAudioChannels" />.
            </param>
            <param name="inputSampleRate">
                Sample rate of the input audio data of submix voice. This rate must be a multiple of
                <see cref="F:CSCore.XAudio2.XAudio2.QuantumDenominator" />. InputSampleRate must be between <see cref="F:CSCore.XAudio2.XAudio2.MinimumSampleRate" /> and
                <see cref="F:CSCore.XAudio2.XAudio2.MaximumSampleRate" />.
            </param>
            <param name="flags">
                Flags that specify the behavior of the submix voice. It can be <see cref="F:CSCore.XAudio2.VoiceFlags.None" /> or
                <see cref="F:CSCore.XAudio2.VoiceFlags.UseFilter" />.
            </param>
            <param name="processingStage">
                An arbitrary number that specifies when this voice is processed with respect to other
                submix voices, if the XAudio2 engine is running other submix voices. The voice is processed after all other voices
                that include a smaller <paramref name="processingStage" /> value and before all other voices that include a larger
                <paramref name="processingStage" /> value. Voices that include the same <paramref name="processingStage" /> value
                are
                processed in any order. A submix voice cannot send to another submix voice with a lower or equal
                <paramref name="processingStage" /> value. This prevents audio being lost due to a submix cycle.
            </param>
            <param name="sendList">
                List of <see cref="T:CSCore.XAudio2.VoiceSends" /> structures that describe the set of destination voices for the
                submix voice. If <paramref name="sendList" /> is NULL, the send list will default to a single output to the first
                mastering voice created.
            </param>
            <param name="effectChain">
                List of <see cref="T:CSCore.XAudio2.EffectChain" /> structures that describe an effect chain to use in the
                submix voice. This parameter is optional and can be null.
            </param>
            <returns>On success, returns a pointer to the new <see cref="T:CSCore.XAudio2.XAudio2SubmixVoice" /> object.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.CreateSubmixVoice(System.Int32,System.Int32,CSCore.XAudio2.VoiceFlags,System.Int32,System.Nullable{CSCore.XAudio2.VoiceSends},System.Nullable{CSCore.XAudio2.EffectChain})">
            <summary>
                Creates and configures a submix voice.
            </summary>
            <param name="inputChannels">
                Number of channels in the input audio data of the submix voice. The
                <paramref name="inputChannels" /> must be less than or equal to <see cref="F:CSCore.XAudio2.XAudio2.MaxAudioChannels" />.
            </param>
            <param name="inputSampleRate">
                Sample rate of the input audio data of submix voice. This rate must be a multiple of
                <see cref="F:CSCore.XAudio2.XAudio2.QuantumDenominator" />. InputSampleRate must be between <see cref="F:CSCore.XAudio2.XAudio2.MinimumSampleRate" /> and
                <see cref="F:CSCore.XAudio2.XAudio2.MaximumSampleRate" />.
            </param>
            <param name="flags">
                Flags that specify the behavior of the submix voice. It can be <see cref="F:CSCore.XAudio2.VoiceFlags.None" /> or
                <see cref="F:CSCore.XAudio2.VoiceFlags.UseFilter" />.
            </param>
            <param name="processingStage">
                An arbitrary number that specifies when this voice is processed with respect to other
                submix voices, if the XAudio2 engine is running other submix voices. The voice is processed after all other voices
                that include a smaller <paramref name="processingStage" /> value and before all other voices that include a larger
                <paramref name="processingStage" /> value. Voices that include the same <paramref name="processingStage" /> value
                are
                processed in any order. A submix voice cannot send to another submix voice with a lower or equal
                <paramref name="processingStage" /> value. This prevents audio being lost due to a submix cycle.
            </param>
            <param name="sendList">
                List of <see cref="T:CSCore.XAudio2.VoiceSends" /> structures that describe the set of destination voices for the
                submix voice. If <paramref name="sendList" /> is NULL, the send list will default to a single output to the first
                mastering voice created.
            </param>
            <param name="effectChain">
                List of <see cref="T:CSCore.XAudio2.EffectChain" /> structures that describe an effect chain to use in the
                submix voice. This parameter is optional and can be null.
            </param>
            <returns>On success, returns a new <see cref="T:CSCore.XAudio2.XAudio2SubmixVoice" /> object.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.CreateSubmixVoice(System.Int32,System.Int32,CSCore.XAudio2.VoiceFlags)">
            <summary>
                Creates and configures a submix voice.
            </summary>
            <param name="inputChannels">
                Number of channels in the input audio data of the submix voice. The
                <paramref name="inputChannels" /> must be less than or equal to <see cref="F:CSCore.XAudio2.XAudio2.MaxAudioChannels" />.
            </param>
            <param name="inputSampleRate">
                Sample rate of the input audio data of submix voice. This rate must be a multiple of
                <see cref="F:CSCore.XAudio2.XAudio2.QuantumDenominator" />. InputSampleRate must be between <see cref="F:CSCore.XAudio2.XAudio2.MinimumSampleRate" /> and
                <see cref="F:CSCore.XAudio2.XAudio2.MaximumSampleRate" />.
            </param>
            <param name="flags">
                Flags that specify the behavior of the submix voice. It can be <see cref="F:CSCore.XAudio2.VoiceFlags.None" /> or
                <see cref="F:CSCore.XAudio2.VoiceFlags.UseFilter" />.
            </param>
            <returns>On success, returns a new <see cref="T:CSCore.XAudio2.XAudio2SubmixVoice" /> object.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.CreateMasteringVoiceNative(System.IntPtr@,System.Int32,System.Int32,System.Int32,System.Object,System.Nullable{CSCore.XAudio2.EffectChain},CSCore.XAudio2.AudioStreamCategory)">
            <summary>
                Creates and configures a mastering voice.
            </summary>
            <param name="pMasteringVoice">If successful, returns a pointer to the new <see cref="T:CSCore.XAudio2.XAudio2MasteringVoice" /> object.</param>
            <param name="inputChannels">
                Number of channels the mastering voice expects in its input audio. <paramref name="inputChannels" /> must be less
                than
                or equal to <see cref="F:CSCore.XAudio2.XAudio2.MaxAudioChannels" />.
                You can set InputChannels to <see cref="F:CSCore.XAudio2.XAudio2.DefaultChannels" />, which causes XAudio2 to try to detect the system
                speaker configuration setup.
            </param>
            <param name="inputSampleRate">
                Sample rate of the input audio data of the mastering voice. This rate must be a multiple of
                <see cref="F:CSCore.XAudio2.XAudio2.QuantumDenominator" />. <paramref name="inputSampleRate" /> must be between
                <see cref="F:CSCore.XAudio2.XAudio2.MinimumSampleRate" />
                and <see cref="F:CSCore.XAudio2.XAudio2.MaximumSampleRate" />.
                You can set InputSampleRate to <see cref="F:CSCore.XAudio2.XAudio2.DefaultSampleRate" />, with the default being determined by the current
                platform.
            </param>
            <param name="flags">Flags that specify the behavior of the mastering voice. Must be 0.</param>
            <param name="device">
                Identifier of the device to receive the output audio. 
                Specifying the default value of NULL (for XAudio2.8) or 0 (for XAudio2.7) causes
                XAudio2 to select the global default audio device.
                
                On XAudio2.7: Use the <see cref="M:CSCore.XAudio2.XAudio2_7.GetDeviceCount"/> and the <see cref="M:CSCore.XAudio2.XAudio2_7.GetDeviceDetails(System.Int32)"/> method to enumerate device. Pass its index (valid range from 0 to <see cref="M:CSCore.XAudio2.XAudio2_7.GetDeviceCount"/>) to the <paramref name="device"/> argument.
                On XAudio2.8: Use the <see cref="T:CSCore.CoreAudioAPI.MMDeviceEnumerator"/> class to enumerate <see cref="T:CSCore.CoreAudioAPI.MMDevice"/> objects. Pass its <see cref="P:CSCore.CoreAudioAPI.MMDevice.DevicePath"/> to the <paramref name="device"/> argument.
            </param>
            <param name="effectChain">
                <see cref="T:CSCore.XAudio2.EffectChain" /> structure that describes an effect chain to use in the mastering
                voice, or NULL to use no effects.
            </param>
            <param name="streamCategory">The audio stream category to use for this mastering voice.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.CreateMasteringVoicePtr(System.Int32,System.Int32,System.Int32,System.Object,System.Nullable{CSCore.XAudio2.EffectChain},CSCore.XAudio2.AudioStreamCategory)">
            <summary>
                Creates and configures a mastering voice.
            </summary>
            <param name="inputChannels">
                Number of channels the mastering voice expects in its input audio. <paramref name="inputChannels" /> must be less
                than
                or equal to <see cref="F:CSCore.XAudio2.XAudio2.MaxAudioChannels" />.
                You can set InputChannels to <see cref="F:CSCore.XAudio2.XAudio2.DefaultChannels" />, which causes XAudio2 to try to detect the system
                speaker configuration setup.
            </param>
            <param name="inputSampleRate">
                Sample rate of the input audio data of the mastering voice. This rate must be a multiple of
                <see cref="F:CSCore.XAudio2.XAudio2.QuantumDenominator" />. <paramref name="inputSampleRate" /> must be between
                <see cref="F:CSCore.XAudio2.XAudio2.MinimumSampleRate" />
                and <see cref="F:CSCore.XAudio2.XAudio2.MaximumSampleRate" />.
                You can set InputSampleRate to <see cref="F:CSCore.XAudio2.XAudio2.DefaultSampleRate" />, with the default being determined by the current
                platform.
            </param>
            <param name="flags">Flags that specify the behavior of the mastering voice. Must be 0.</param>
            <param name="device">
                Identifier of the device to receive the output audio. 
                Specifying the default value of NULL (for XAudio2.8) or 0 (for XAudio2.7) causes
                XAudio2 to select the global default audio device.
                
                On XAudio2.7: Use the <see cref="M:CSCore.XAudio2.XAudio2_7.GetDeviceCount"/> and the <see cref="M:CSCore.XAudio2.XAudio2_7.GetDeviceDetails(System.Int32)"/> method to enumerate device. Pass its index (valid range from 0 to <see cref="M:CSCore.XAudio2.XAudio2_7.GetDeviceCount"/>) to the <paramref name="device"/> argument.
                On XAudio2.8: Use the <see cref="T:CSCore.CoreAudioAPI.MMDeviceEnumerator"/> class to enumerate <see cref="T:CSCore.CoreAudioAPI.MMDevice"/> objects. Pass its <see cref="P:CSCore.CoreAudioAPI.MMDevice.DevicePath"/> to the <paramref name="device"/> argument.
            </param>
            <param name="effectChain">
                <see cref="T:CSCore.XAudio2.EffectChain" /> structure that describes an effect chain to use in the mastering
                voice, or NULL to use no effects.
            </param>
            <param name="streamCategory">The audio stream category to use for this mastering voice.</param>
            <returns>If successful, returns a pointer to the new <see cref="T:CSCore.XAudio2.XAudio2MasteringVoice" /> object.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.CreateMasteringVoice(System.Int32,System.Int32,System.Object,System.Nullable{CSCore.XAudio2.EffectChain},CSCore.XAudio2.AudioStreamCategory)">
            <summary>
                Creates and configures a mastering voice.
            </summary>
            <param name="inputChannels">
                Number of channels the mastering voice expects in its input audio. <paramref name="inputChannels" /> must be less
                than
                or equal to <see cref="F:CSCore.XAudio2.XAudio2.MaxAudioChannels" />.
                You can set InputChannels to <see cref="F:CSCore.XAudio2.XAudio2.DefaultChannels" />, which causes XAudio2 to try to detect the system
                speaker configuration setup.
            </param>
            <param name="inputSampleRate">
                Sample rate of the input audio data of the mastering voice. This rate must be a multiple of
                <see cref="F:CSCore.XAudio2.XAudio2.QuantumDenominator" />. <paramref name="inputSampleRate" /> must be between
                <see cref="F:CSCore.XAudio2.XAudio2.MinimumSampleRate" />
                and <see cref="F:CSCore.XAudio2.XAudio2.MaximumSampleRate" />.
                You can set InputSampleRate to <see cref="F:CSCore.XAudio2.XAudio2.DefaultSampleRate" />, with the default being determined by the current
                platform.
            </param>
            <param name="device">
                Identifier of the device to receive the output audio. 
                Specifying the default value of NULL (for XAudio2.8) or 0 (for XAudio2.7) causes
                XAudio2 to select the global default audio device.
                
                On XAudio2.7: Use the <see cref="M:CSCore.XAudio2.XAudio2_7.GetDeviceCount"/> and the <see cref="M:CSCore.XAudio2.XAudio2_7.GetDeviceDetails(System.Int32)"/> method to enumerate device. Pass its index (valid range from 0 to <see cref="M:CSCore.XAudio2.XAudio2_7.GetDeviceCount"/>) to the <paramref name="device"/> argument.
                On XAudio2.8: Use the <see cref="T:CSCore.CoreAudioAPI.MMDeviceEnumerator"/> class to enumerate <see cref="T:CSCore.CoreAudioAPI.MMDevice"/> objects. Pass its <see cref="P:CSCore.CoreAudioAPI.MMDevice.DevicePath"/> to the <paramref name="device"/> argument.
            </param>
            <param name="effectChain">
                <see cref="T:CSCore.XAudio2.EffectChain" /> structure that describes an effect chain to use in the mastering
                voice, or NULL to use no effects.
            </param>
            <param name="streamCategory"><b>XAudio2.8 only:</b> The audio stream category to use for this mastering voice.</param>
            <returns>If successful, returns a new <see cref="T:CSCore.XAudio2.XAudio2MasteringVoice" /> object.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.CreateMasteringVoice(System.Int32,System.Int32,System.Object)">
            <summary>
                Creates and configures a mastering voice.
            </summary>
            <param name="inputChannels">
                Number of channels the mastering voice expects in its input audio. <paramref name="inputChannels" /> must be less
                than
                or equal to <see cref="F:CSCore.XAudio2.XAudio2.MaxAudioChannels" />.
                You can set InputChannels to <see cref="F:CSCore.XAudio2.XAudio2.DefaultChannels" />, which causes XAudio2 to try to detect the system
                speaker configuration setup.
            </param>
            <param name="inputSampleRate">
                Sample rate of the input audio data of the mastering voice. This rate must be a multiple of
                <see cref="F:CSCore.XAudio2.XAudio2.QuantumDenominator" />. <paramref name="inputSampleRate" /> must be between
                <see cref="F:CSCore.XAudio2.XAudio2.MinimumSampleRate" />
                and <see cref="F:CSCore.XAudio2.XAudio2.MaximumSampleRate" />.
                You can set InputSampleRate to <see cref="F:CSCore.XAudio2.XAudio2.DefaultSampleRate" />, with the default being determined by the current
                platform.
            </param>
            <param name="device">
                Identifier of the device to receive the output audio. 
                Specifying the default value of NULL (for XAudio2.8) or 0 (for XAudio2.7) causes
                XAudio2 to select the global default audio device.
                
                On XAudio2.7: Use the <see cref="M:CSCore.XAudio2.XAudio2_7.GetDeviceCount"/> and the <see cref="M:CSCore.XAudio2.XAudio2_7.GetDeviceDetails(System.Int32)"/> method to enumerate device. Pass its index (valid range from 0 to <see cref="M:CSCore.XAudio2.XAudio2_7.GetDeviceCount"/>) to the <paramref name="device"/> argument.
                On XAudio2.8: Use the <see cref="T:CSCore.CoreAudioAPI.MMDeviceEnumerator"/> class to enumerate <see cref="T:CSCore.CoreAudioAPI.MMDevice"/> objects. Pass its <see cref="P:CSCore.CoreAudioAPI.MMDevice.DevicePath"/> to the <paramref name="device"/> argument.
            </param>
            <returns>If successful, returns a new <see cref="T:CSCore.XAudio2.XAudio2MasteringVoice" /> object.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.CreateMasteringVoice(System.Int32,System.Int32)">
            <summary>
                Creates and configures a mastering voice.
            </summary>
            <param name="inputChannels">
                Number of channels the mastering voice expects in its input audio. <paramref name="inputChannels" /> must be less
                than
                or equal to <see cref="F:CSCore.XAudio2.XAudio2.MaxAudioChannels" />.
                You can set InputChannels to <see cref="F:CSCore.XAudio2.XAudio2.DefaultChannels" />, which causes XAudio2 to try to detect the system
                speaker configuration setup.
            </param>
            <param name="inputSampleRate">
                Sample rate of the input audio data of the mastering voice. This rate must be a multiple of
                <see cref="F:CSCore.XAudio2.XAudio2.QuantumDenominator" />. <paramref name="inputSampleRate" /> must be between
                <see cref="F:CSCore.XAudio2.XAudio2.MinimumSampleRate" />
                and <see cref="F:CSCore.XAudio2.XAudio2.MaximumSampleRate" />.
                You can set InputSampleRate to <see cref="F:CSCore.XAudio2.XAudio2.DefaultSampleRate" />, with the default being determined by the current
                platform.
            </param>
            <returns>If successful, returns a new <see cref="T:CSCore.XAudio2.XAudio2MasteringVoice" /> object.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.CreateMasteringVoice">
            <summary>
                Creates and configures a mastering voice.
            </summary>
            <returns>If successful, returns a new <see cref="T:CSCore.XAudio2.XAudio2MasteringVoice" /> object.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.StartEngineNative">
            <summary>
                Starts the audio processing thread.
            </summary>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.StartEngine">
            <summary>
                Starts the audio processing thread.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.StopEngine">
            <summary>
                Stops the audio processing thread.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.CommitChangesNative(System.Int32)">
            <summary>
                Atomically applies a set of operations that are tagged with a given identifier.
            </summary>
            <param name="operationSet">
                Identifier of the set of operations to be applied. To commit all pending operations, pass
                <see cref="F:CSCore.XAudio2.XAudio2.CommitAll" />.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.CommitChanges(System.Int32)">
            <summary>
                Atomically applies a set of operations that are tagged with a given identifier.
            </summary>
            <param name="operationSet">
                Identifier of the set of operations to be applied. To commit all pending operations, pass
                <see cref="F:CSCore.XAudio2.XAudio2.CommitAll" />.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.CommitChanges">
            <summary>
                Atomically applies a set of operations that are tagged with a given identifier.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.GetPerformanceDataNative(CSCore.XAudio2.PerformanceData@)">
            <summary>
                Returns current resource usage details, such as available memory or CPU usage.
            </summary>
            <param name="performanceData">
                On success, pointer to an <see cref="T:CSCore.XAudio2.PerformanceData" /> structure that is
                returned.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.SetDebugConfigurationNative(CSCore.XAudio2.DebugConfiguration,System.IntPtr)">
            <summary>
                Changes <b>global</b> debug logging options for XAudio2.
            </summary>
            <param name="debugConfiguration"><see cref="T:CSCore.XAudio2.DebugConfiguration" /> structure that contains the new debug configuration.</param>
            <param name="reserved">Reserved parameter. Must me NULL.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.SetDebugConfiguration(CSCore.XAudio2.DebugConfiguration)">
            <summary>
                Changes <b>global</b> debug logging options for XAudio2.
            </summary>
            <param name="debugConfiguration"><see cref="T:CSCore.XAudio2.DebugConfiguration" /> structure that contains the new debug configuration.</param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.GetDefaultDevice">
            <summary>
                Returns the default device.
            </summary>
            <returns>The default device.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2.InitializeEngineCallback">
            <summary>
            Initializes the engine callback.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.XAudio2Buffer">
            <summary>
                Represents an audio data buffer.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Buffer.MaxLoopCount">
            <summary>
                Maximum non-infinite LoopCount.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Buffer.LoopInfinite">
            <summary>
                Infinite Loop.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Buffer.MaxBufferBytes">
            <summary>
                MaxBufferBytes. See <see cref="F:CSCore.XAudio2.XAudio2Buffer.AudioBytes" />.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Buffer.Flags">
            <summary>
                Flags that provide additional information about the audio buffer.
                May be <see cref="F:CSCore.XAudio2.XAudio2BufferFlags.None" /> or <see cref="F:CSCore.XAudio2.XAudio2BufferFlags.EndOfStream" />.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Buffer.AudioBytes">
            <summary>
                Size of the audio data, in bytes. Must be no larger than <see cref="F:CSCore.XAudio2.XAudio2Buffer.MaxBufferBytes" /> for PCM data.
                For more details see
                http://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.xaudio2.xaudio2_buffer(v=vs.85).aspx.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Buffer.AudioDataPtr">
            <summary>
                Pointer to the audio data.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Buffer.PlayBegin">
            <summary>
                First sample in the buffer that should be played.
                For XMA buffers this value must be a multiple of 128 samples.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Buffer.PlayLength">
            <summary>
                Length of the region to be played, in samples.
                A value of zero means to play the entire buffer, and, in this case, <see cref="F:CSCore.XAudio2.XAudio2Buffer.PlayBegin" /> must be zero as well.
                For more details see
                http://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.xaudio2.xaudio2_buffer(v=vs.85).aspx.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Buffer.LoopBegin">
            <summary>
                First sample of the region to be looped. The value of <see cref="F:CSCore.XAudio2.XAudio2Buffer.LoopBegin" /> must be less than
                <see cref="F:CSCore.XAudio2.XAudio2Buffer.PlayBegin" /> + <see cref="F:CSCore.XAudio2.XAudio2Buffer.PlayLength" />.
                <see cref="F:CSCore.XAudio2.XAudio2Buffer.LoopBegin" /> can be less than <see cref="F:CSCore.XAudio2.XAudio2Buffer.PlayBegin" />. <see cref="F:CSCore.XAudio2.XAudio2Buffer.LoopBegin" /> must be 0 if
                <see cref="F:CSCore.XAudio2.XAudio2Buffer.LoopCount" /> is 0.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Buffer.LoopLength">
            <summary>
                Length of the loop region, in samples.
                The value of <see cref="F:CSCore.XAudio2.XAudio2Buffer.LoopBegin" /> + <see cref="F:CSCore.XAudio2.XAudio2Buffer.LoopLength" /> must be greater than <see cref="F:CSCore.XAudio2.XAudio2Buffer.PlayBegin" /> and
                less than <see cref="F:CSCore.XAudio2.XAudio2Buffer.PlayBegin" /> + <see cref="F:CSCore.XAudio2.XAudio2Buffer.PlayLength" />.
                <see cref="F:CSCore.XAudio2.XAudio2Buffer.LoopLength" /> must be zero if <see cref="F:CSCore.XAudio2.XAudio2Buffer.LoopLength" /> is 0.
                If <see cref="F:CSCore.XAudio2.XAudio2Buffer.LoopLength" /> is not 0 then a loop length of zero indicates the entire sample should be looped.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Buffer.LoopCount">
            <summary>
                Number of times to loop through the loop region.
                This value can be between 0 and <see cref="F:CSCore.XAudio2.XAudio2Buffer.MaxLoopCount" />.
                If LoopCount is zero no looping is performed and <see cref="F:CSCore.XAudio2.XAudio2Buffer.LoopBegin" /> and <see cref="F:CSCore.XAudio2.XAudio2Buffer.LoopLength" /> must be 0.
                To loop forever, set <see cref="F:CSCore.XAudio2.XAudio2Buffer.LoopCount" /> to <see cref="F:CSCore.XAudio2.XAudio2Buffer.LoopInfinite" />.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Buffer.ContextPtr">
            <summary>
                Context value to be passed back in callbacks to the client. This may be <see cref="F:System.IntPtr.Zero" />.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Buffer.#ctor(System.Int32)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.XAudio2.XAudio2Buffer" /> structure.
            </summary>
            <param name="bufferSize"></param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Buffer.GetStream">
            <summary>
                Returns a <see cref="T:System.IO.UnmanagedMemoryStream" /> instance for the underlying <see cref="F:CSCore.XAudio2.XAudio2Buffer.AudioDataPtr" />.
            </summary>
            <remarks>Call </remarks>
            <returns>
                <see cref="T:System.IO.UnmanagedMemoryStream" />
            </returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Buffer.Free">
            <summary>
                Frees the allocated memory.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Buffer.Dispose">
            <summary>
            Frees the allocated memory.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.XAudio2BufferEventArgs">
            <summary>
                Provides data for the <see cref="E:CSCore.XAudio2.VoiceCallback.BufferStart" />, the <see cref="E:CSCore.XAudio2.VoiceCallback.BufferEnd" /> and the
                <see cref="E:CSCore.XAudio2.VoiceCallback.LoopEnd" /> event.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2BufferEventArgs.#ctor(System.IntPtr)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.XAudio2.XAudio2BufferEventArgs" /> class.
            </summary>
            <param name="bufferContext">
                The context pointer that was assigned to the <see cref="F:CSCore.XAudio2.XAudio2Buffer.ContextPtr" /> member
                of the <see cref="T:CSCore.XAudio2.XAudio2Buffer" /> structure when the buffer was submitted.
            </param>
        </member>
        <member name="P:CSCore.XAudio2.XAudio2BufferEventArgs.BufferContext">
            <summary>
                Gets the context pointer that was assigned to the <see cref="F:CSCore.XAudio2.XAudio2Buffer.ContextPtr" /> member of the
                <see cref="T:CSCore.XAudio2.XAudio2Buffer" /> structure when the buffer was submitted.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.XAudio2BufferFlags">
            <summary>
                Flags that provide additional information about the audio buffer.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2BufferFlags.None">
            <summary>
                None
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2BufferFlags.EndOfStream">
            <summary>
                Indicates that there cannot be any buffers in the queue after this buffer. The only effect of this flag is to
                suppress debug output warnings caused by starvation of the buffer queue.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.XAudio2CriticalErrorEventArgs">
            <summary>
                XAudio2CriticalErrorEventArgs
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2CriticalErrorEventArgs.#ctor(System.Int32)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.XAudio2.XAudio2CriticalErrorEventArgs" /> class.
            </summary>
            <param name="hresult">Errorcode</param>
        </member>
        <member name="P:CSCore.XAudio2.XAudio2CriticalErrorEventArgs.HResult">
            <summary>
                Errorcode
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.XAudio2DeviceRole">
            <summary>
                Describes device roles of an XAudio2 Device. Used in <see cref="T:CSCore.XAudio2.DeviceDetails" />.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2DeviceRole.NotDefaultDevice">
            <summary>
                Device is not used as the default device for any applications.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2DeviceRole.DefaultConsoleDevice">
            <summary>
                Device is used in audio console applications.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2DeviceRole.DefaultMultimediaDevice">
            <summary>
                Device is used to play multimedia.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2DeviceRole.DefaultCommunicationsDevice">
            <summary>
                Device is used for voice communication.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2DeviceRole.DefaultGameDevice">
            <summary>
                Device is used in for games.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2DeviceRole.GlobalDefaultDevice">
            <summary>
                Devices is the default device for all applications.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2DeviceRole.InvalidDeviceRole">
            <summary>
                The role of the device is not valid.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.XAudio2EngineCallback">
            <summary>
                XAudio2EngineCallback
            </summary>
        </member>
        <member name="E:CSCore.XAudio2.XAudio2EngineCallback.ProcessingPassStart">
            <summary>
                Fired by XAudio2 just before an audio processing pass begins.
            </summary>
        </member>
        <member name="E:CSCore.XAudio2.XAudio2EngineCallback.ProcessingPassEnd">
            <summary>
                Fired by XAudio2 just after an audio processing pass ends.
            </summary>
        </member>
        <member name="E:CSCore.XAudio2.XAudio2EngineCallback.CriticalError">
            <summary>
                Fired if a critical system error occurs that requires XAudio2 to be closed down and restarted.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.XAudio2Exception">
            <summary>
                XAudio2-COMException.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Exception.#ctor(System.Int32,System.String,System.String)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.XAudio2.XAudio2Exception" /> class.
            </summary>
            <param name="result">Errorcode.</param>
            <param name="interfaceName">
                Name of the interface which contains the COM-function which returned the specified
                <paramref name="result" />.
            </param>
            <param name="member">Name of the COM-function which returned the specified <paramref name="result" />.</param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Exception.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.XAudio2.XAudio2Exception" /> class from serialization data.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> object that holds the serialized object data.</param>
            <param name="context">
                The StreamingContext object that supplies the contextual information about the source or
                destination.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Exception.Try(System.Int32,System.String,System.String)">
            <summary>
                Throws an <see cref="T:CSCore.XAudio2.XAudio2Exception" /> if the <paramref name="result" /> is not <see cref="F:CSCore.Win32.HResult.S_OK" />.
            </summary>
            <param name="result">Errorcode.</param>
            <param name="interfaceName">
                Name of the interface which contains the COM-function which returned the specified
                <paramref name="result" />.
            </param>
            <param name="member">Name of the COM-function which returned the specified <paramref name="result" />.</param>
        </member>
        <member name="T:CSCore.XAudio2.XAudio2MasteringVoice">
            <summary>
                A mastering voice is used to represent the audio output device.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2MasteringVoice.#ctor(System.IntPtr,CSCore.XAudio2.XAudio2Version)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.XAudio2.XAudio2MasteringVoice" /> class.
            </summary>
            <param name="ptr">Native pointer of the <see cref="T:CSCore.XAudio2.XAudio2MasteringVoice" /> object.</param>
            <param name="version">The <see cref="T:CSCore.XAudio2.XAudio2Version"/> to use.</param>        
        </member>
        <member name="P:CSCore.XAudio2.XAudio2MasteringVoice.ChannelMask">
            <summary>
                <b>XAudio2.8 only:</b> Gets the channel mask for this voice.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2MasteringVoice.GetChannelMaskNative(CSCore.ChannelMask@)">
            <summary>
                <b>XAudio2.8 only:</b> Returns the channel mask for this voice.
            </summary>
            <param name="channelMask">
                Returns the channel mask for this voice. This corresponds to the
                <see cref="P:CSCore.WaveFormatExtensible.ChannelMask" /> member of the <see cref="T:CSCore.WaveFormatExtensible" /> class.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="T:CSCore.XAudio2.XAudio2ProcessingPassStartEventArgs">
            <summary>
                Provides data for the <see cref="E:CSCore.XAudio2.VoiceCallback.ProcessingPassStart" /> event.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2ProcessingPassStartEventArgs.#ctor(System.Int32)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.XAudio2.XAudio2ProcessingPassStartEventArgs" /> class.
            </summary>
            <param name="bytesRequired">The number of bytes that must be submitted immediately to avoid starvation.</param>
        </member>
        <member name="P:CSCore.XAudio2.XAudio2ProcessingPassStartEventArgs.BytesRequired">
            <summary>
                Gets the number of bytes that must be submitted immediately to avoid starvation.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.XAudio2Processor">
            <summary>
                Defines values to use with XAudio2Create to specify available processors.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor1">
            <summary>
                Processor 1
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor2">
            <summary>
                Processor 2
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor3">
            <summary>
                Processor 3
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor4">
            <summary>
                Processor 4
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor5">
            <summary>
                Processor 5
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor6">
            <summary>
                Processor 6
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor7">
            <summary>
                Processor 7
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor8">
            <summary>
                Processor 8
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor9">
            <summary>
                Processor 9
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor10">
            <summary>
                Processor 10
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor11">
            <summary>
                Processor 11
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor12">
            <summary>
                Processor 12
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor13">
            <summary>
                Processor 13
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor14">
            <summary>
                Processor 14
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor15">
            <summary>
                Processor 15
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor16">
            <summary>
                Processor 16
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor17">
            <summary>
                Processor 17
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor18">
            <summary>
                Processor 18
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor19">
            <summary>
                Processor 19
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor20">
            <summary>
                Processor 20
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor21">
            <summary>
                Processor 21
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor22">
            <summary>
                Processor 22
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor23">
            <summary>
                Processor 23
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor24">
            <summary>
                Processor 24
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor25">
            <summary>
                Processor 25
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor26">
            <summary>
                Processor 26
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor27">
            <summary>
                Processor 27
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor28">
            <summary>
                Processor 28
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor29">
            <summary>
                Processor 29
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor30">
            <summary>
                Processor 30
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor31">
            <summary>
                Processor 31
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Processor32">
            <summary>
                Processor 32
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Xaudio2AnyProcessor">
            <summary>
                Any processor
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.XAudio27DefaultProcessor">
            <summary>
                Default processor for XAudio2.7, which is defined as <see cref="F:CSCore.XAudio2.XAudio2Processor.Xaudio2AnyProcessor"/>.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Processor.Xaudio28DefaultProcessor">
            <summary>
                Default processor for XAudio2.8, which is defined as <see cref="F:CSCore.XAudio2.XAudio2Processor.Processor1"/>.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.XAudio2SourceVoice">
            <summary>
                Use a source voice to submit audio data to the XAudio2 processing pipeline.You must send voice data to a mastering
                voice to be heard, either directly or through intermediate submix voices.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.XAudio2SourceVoice.State">
            <summary>
            Gets the <see cref="T:CSCore.XAudio2.VoiceState"/> of the source voice.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.#ctor(System.IntPtr,CSCore.XAudio2.XAudio2Version)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.XAudio2.XAudio2SourceVoice" /> class.
            </summary>
            <param name="ptr">Native pointer of the <see cref="T:CSCore.XAudio2.XAudio2SourceVoice" /> object.</param>
            <param name="version">The <see cref="T:CSCore.XAudio2.XAudio2Version"/> to use.</param>        
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.StartNative(System.Int32,System.Int32)">
            <summary>
                Starts consumption and processing of audio by the voice. Delivers the result to any connected submix or mastering
                voices, or to the output device.
            </summary>
            <param name="flags">Flags that control how the voice is started. Must be 0.</param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more details see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.Start(System.Int32,System.Int32)">
            <summary>
                Starts consumption and processing of audio by the voice. Delivers the result to any connected submix or mastering
                voices, or to the output device.
            </summary>
            <param name="flags">Flags that control how the voice is started. Must be 0.</param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more details see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.Start">
            <summary>
                Starts consumption and processing of audio by the voice. Delivers the result to any connected submix or mastering
                voices, or to the output device.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.StopNative(CSCore.XAudio2.SourceVoiceStopFlags,System.Int32)">
            <summary>
                Stops consumption of audio by the current voice.
            </summary>
            <param name="flags">
                Flags that control how the voice is stopped. Can be <see cref="F:CSCore.XAudio2.SourceVoiceStopFlags.None" /> or
                <see cref="F:CSCore.XAudio2.SourceVoiceStopFlags.PlayTails" />.
            </param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more details see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.Stop">
            <summary>
                Stops consumption of audio by the current voice.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.Stop(CSCore.XAudio2.SourceVoiceStopFlags,System.Int32)">
            <summary>
                Stops consumption of audio by the current voice.
            </summary>
            <param name="flags">
                Flags that control how the voice is stopped. Can be <see cref="F:CSCore.XAudio2.SourceVoiceStopFlags.None" /> or
                <see cref="F:CSCore.XAudio2.SourceVoiceStopFlags.PlayTails" />.
            </param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more details see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.SubmitSourceBufferNative(System.IntPtr,System.IntPtr)">
            <summary>
                Adds a new audio buffer to the voice queue.
            </summary>
            <param name="buffer">Pointer to an <see cref="T:CSCore.XAudio2.XAudio2Buffer" /> structure to queue.</param>
            <param name="bufferWma">Pointer to an additional XAudio2BufferWma structure used when submitting WMA data.</param>
            <returns>HRESULT</returns>
            <remarks>
                See
                http://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.ixaudio2sourcevoice.ixaudio2sourcevoice.submitsourcebuffer(v=vs.85).aspx.
            </remarks>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.SubmitSourceBuffer(CSCore.XAudio2.XAudio2Buffer)">
            <summary>
                Adds a new audio buffer to the voice queue.
            </summary>
            <param name="buffer"><see cref="T:CSCore.XAudio2.XAudio2Buffer" /> structure to queue.</param>
            <remarks>
                See
                http://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.ixaudio2sourcevoice.ixaudio2sourcevoice.submitsourcebuffer(v=vs.85).aspx.
            </remarks>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.FlushSourceBuffersNative">
            <summary>
                Removes all pending audio buffers from the voice queue. If the voice is started, the buffer that is currently
                playing is not removed from the queue.
            </summary>
            <returns>HRESULT</returns>
            <remarks>
                See
                http://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.ixaudio2sourcevoice.ixaudio2sourcevoice.flushsourcebuffers(v=vs.85).aspx.
            </remarks>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.FlushSourceBuffers">
            <summary>
                Removes all pending audio buffers from the voice queue. If the voice is started, the buffer that is currently
                playing is not removed from the queue.
            </summary>
            <remarks>
                See
                http://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.ixaudio2sourcevoice.ixaudio2sourcevoice.flushsourcebuffers(v=vs.85).aspx.
            </remarks>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.DiscontinuityNative">
            <summary>
                Notifies an XAudio2 voice that no more buffers are coming after the last one that is currently in its queue.
            </summary>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.Discontinuity">
            <summary>
                Notifies an XAudio2 voice that no more buffers are coming after the last one that is currently in its queue.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.ExitLoopNative(System.Int32)">
            <summary>
                Stops looping the voice when it reaches the end of the current loop region.
            </summary>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more details see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.ExitLoop(System.Int32)">
            <summary>
                Stops looping the voice when it reaches the end of the current loop region.
            </summary>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more details see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.ExitLoop">
            <summary>
                Stops looping the voice when it reaches the end of the current loop region.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.GetState">
            <summary>
                Returns the voice's current cursor position data.
            </summary>
            <returns><see cref="T:CSCore.XAudio2.VoiceState" /> structure containing the state of the voice.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.GetState(CSCore.XAudio2.GetVoiceStateFlags)">
            <summary>
                Returns the voice's current cursor position data.
            </summary>
            <param name="flags">
                <b>XAudio2.8 only:</b> Flags controlling which voice state data should be returned.
                Valid values are <see cref="F:CSCore.XAudio2.GetVoiceStateFlags.Default" /> or <see cref="F:CSCore.XAudio2.GetVoiceStateFlags.NoSamplesPlayed" />.
                The default value is <see cref="F:CSCore.XAudio2.GetVoiceStateFlags.Default" />. If you specify
                <see cref="F:CSCore.XAudio2.GetVoiceStateFlags.NoSamplesPlayed" />, GetState
                returns only the buffer state, not the sampler state.
                GetState takes roughly one-third as much time to complete when you specify
                <see cref="F:CSCore.XAudio2.GetVoiceStateFlags.NoSamplesPlayed" />.
            </param>
            <returns><see cref="T:CSCore.XAudio2.VoiceState" /> structure containing the state of the voice.</returns>
            <remarks>If the <see cref="P:CSCore.XAudio2.XAudio2Voice.Version"/> is not <see cref="F:CSCore.XAudio2.XAudio2Version.XAudio2_8"/> the <paramref name="flags"/> parameter will be ignored.</remarks>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.SetFrequencyRatioNative(System.Single,System.Int32)">
            <summary>
                Sets the frequency adjustment ratio of the voice.
            </summary>
            <param name="ratio">
                Frequency adjustment ratio. This value must be between <see cref="F:CSCore.XAudio2.XAudio2.MinFrequencyRatio" /> and
                the MaxFrequencyRatio parameter specified when the voice was created
                <see
                    cref="M:CSCore.XAudio2.XAudio2.CreateSourceVoice(CSCore.WaveFormat,CSCore.XAudio2.VoiceFlags,System.Single,CSCore.XAudio2.IXAudio2VoiceCallback,System.Nullable{CSCore.XAudio2.VoiceSends},System.Nullable{CSCore.XAudio2.EffectChain})" />
                .
            </param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more details see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.SetFrequencyRatio(System.Single,System.Int32)">
            <summary>
                Sets the frequency adjustment ratio of the voice.
            </summary>
            <param name="ratio">
                Frequency adjustment ratio. This value must be between <see cref="F:CSCore.XAudio2.XAudio2.MinFrequencyRatio" /> and
                the MaxFrequencyRatio parameter specified when the voice was created
                <see
                    cref="M:CSCore.XAudio2.XAudio2.CreateSourceVoice(CSCore.WaveFormat,CSCore.XAudio2.VoiceFlags,System.Single,CSCore.XAudio2.IXAudio2VoiceCallback,System.Nullable{CSCore.XAudio2.VoiceSends},System.Nullable{CSCore.XAudio2.EffectChain})" />
                .
            </param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more details see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.SetFrequencyRatio(System.Single)">
            <summary>
                Sets the frequency adjustment ratio of the voice.
            </summary>
            <param name="ratio">
                Frequency adjustment ratio. This value must be between <see cref="F:CSCore.XAudio2.XAudio2.MinFrequencyRatio" /> and
                the MaxFrequencyRatio parameter specified when the voice was created
                <see
                    cref="M:CSCore.XAudio2.XAudio2.CreateSourceVoice(CSCore.WaveFormat,CSCore.XAudio2.VoiceFlags,System.Single,CSCore.XAudio2.IXAudio2VoiceCallback,System.Nullable{CSCore.XAudio2.VoiceSends},System.Nullable{CSCore.XAudio2.EffectChain})" />
                .
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.GetFrequencyRatio">
            <summary>
                Returns the frequency adjustment ratio of the voi
            </summary>
            <returns>Current frequency adjustment ratio if successful.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.SetSourceSampleRateNative(System.Int32)">
            <summary>
                Reconfigures the voice to consume source data at a different sample rate than the rate specified when the voice was
                created.
            </summary>
            <param name="newSourceSampleRate">
                The new sample rate the voice should process submitted data at. Valid sample rates
                are 1kHz to 200kHz.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SourceVoice.SetSourceSampleRate(System.Int32)">
            <summary>
                Reconfigures the voice to consume source data at a different sample rate than the rate specified when the voice was
                created.
            </summary>
            <param name="newSourceSampleRate">
                The new sample rate the voice should process submitted data at. Valid sample rates
                are 1kHz to 200kHz.
            </param>
        </member>
        <member name="T:CSCore.XAudio2.XAudio2SubmixVoice">
            <summary>
                A submix voice is used primarily for performance improvements and effects processing.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2SubmixVoice.#ctor(System.IntPtr,CSCore.XAudio2.XAudio2Version)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.XAudio2.XAudio2SubmixVoice" /> class.
            </summary>
            <param name="ptr">Native pointer of the <see cref="T:CSCore.XAudio2.XAudio2SubmixVoice" /> object.</param>
            <param name="version">The <see cref="T:CSCore.XAudio2.XAudio2Version"/> to use.</param>
        </member>
        <member name="T:CSCore.XAudio2.XAudio2Version">
            <summary>
            Defines supported XAudio2 subversions.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Version.XAudio2_7">
            <summary>
            XAudio2.7
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2Version.XAudio2_8">
            <summary>
            XAudio2.8
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.XAudio2Voice">
            <summary>
                Represents the base class from which <see cref="T:CSCore.XAudio2.XAudio2SourceVoice" />, <see cref="T:CSCore.XAudio2.XAudio2SubmixVoice" /> and
                <see cref="T:CSCore.XAudio2.XAudio2MasteringVoice" /> are derived.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.XAudio2Voice.Version">
            <summary>
            Gets the XAudio2 Version.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.#ctor(System.IntPtr,CSCore.XAudio2.XAudio2Version)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.XAudio2.XAudio2Voice" /> class.
            </summary>
            <param name="ptr">Native pointer of the <see cref="T:CSCore.XAudio2.XAudio2Voice" /> object.</param>
            <param name="version">The <see cref="T:CSCore.XAudio2.XAudio2Version"/> to use.</param>
        </member>
        <member name="P:CSCore.XAudio2.XAudio2Voice.VoiceDetails">
            <summary>
                Gets the <see cref="T:CSCore.XAudio2.VoiceDetails" /> of the <see cref="T:CSCore.XAudio2.XAudio2Voice" />.
                These details include information about the number of input channels, the sample rate and the
                <see cref="T:CSCore.XAudio2.VoiceFlags" />.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.XAudio2Voice.FilterParameters">
            <summary>
                Gets or sets the <see cref="T:CSCore.XAudio2.FilterParameters" /> of the <see cref="T:CSCore.XAudio2.XAudio2Voice" />.
            </summary>
        </member>
        <member name="P:CSCore.XAudio2.XAudio2Voice.Volume">
            <summary>
                Gets or sets the volume of the <see cref="T:CSCore.XAudio2.XAudio2Voice" />. The default value is 1.0.
            </summary>
            <remarks>
                The master volume level is applied at different times depending on the type of voice.
                For submix and mastering voices the volume level is applied just before the voice's built in filter and effect
                chain is applied.
                For source voices the master volume level is applied after the voice's filter and effect
                chain is applied. Volume levels are expressed as floating-point amplitude multipliers
                between -2^24 and 2^24, with a maximum
                gain of 144.5 dB. A volume level of 1.0 means there is no attenuation or gain and 0 means silence.
                Negative levels can be used to invert the audio's phase.
            </remarks>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.GetVoiceDetailsNative(CSCore.XAudio2.VoiceDetails@)">
            <summary>
                Returns information about the creation flags, input channels, and sample rate of a voice.
            </summary>
            <param name="voiceDetails"><see cref="T:CSCore.XAudio2.VoiceDetails" /> object containing information about the voice.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.SetOutputVoicesNative(System.Nullable{CSCore.XAudio2.VoiceSends})">
            <summary>
                Designates a new set of submix or mastering voices to receive the output of the voice.
            </summary>
            <param name="voiceSends">
                VoiceSends structure which contains Output voices. If <paramref name="voiceSends" /> is null, the voice will send
                its output to the current mastering voice. All of the voices in a send list must have the same input sample rate.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.SetOutputVoices(CSCore.XAudio2.VoiceSendDescriptor[])">
            <summary>
                Designates a new set of submix or mastering voices to receive the output of the voice.
            </summary>
            <param name="voiceSendDescriptors">
                Array of <see cref="T:CSCore.XAudio2.VoiceSendDescriptor" />s. if <paramref name="voiceSendDescriptors" /> is null, the voice will send
                its output to the current mastering voice.
                All voices in the <paramref name="voiceSendDescriptors" /> must have the same input sample rate.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.SetEffectChainNative(System.Nullable{CSCore.XAudio2.EffectChain})">
            <summary>
                Replaces the effect chain of the voice.
            </summary>
            <param name="effectChain">
                Describes the new effect chain to use.
                If null is passed, the current effect chain is removed.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.SetEffectChain(CSCore.XAudio2.EffectDescriptor[])">
            <summary>
                Replaces the effect chain of the voice.
            </summary>
            <param name="effectDescriptors">
                Describes the new effect chain to use.
                If null is passed, the current effect chain is removed.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.EnableEffectNative(System.Int32,System.Int32)">
            <summary>
                Enables the effect at a given position in the effect chain of the voice.
            </summary>
            <param name="effectIndex">Zero-based index of an effect in the effect chain of the voice.</param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.EnableEffect(System.Int32,System.Int32)">
            <summary>
                Enables the effect at a given position in the effect chain of the voice.
            </summary>
            <param name="effectIndex">Zero-based index of an effect in the effect chain of the voice.</param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.EnableEffect(System.Int32)">
            <summary>
                Enables the effect at a given position in the effect chain of the voice.
            </summary>
            <param name="effectIndex">Zero-based index of an effect in the effect chain of the voice.</param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.DisableEffectNative(System.Int32,System.Int32)">
            <summary>
                Disables the effect at a given position in the effect chain of the voice.
            </summary>
            <param name="effectIndex">Zero-based index of an effect in the effect chain of the voice.</param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.DisableEffect(System.Int32,System.Int32)">
            <summary>
                Disables the effect at a given position in the effect chain of the voice.
            </summary>
            <param name="effectIndex">Zero-based index of an effect in the effect chain of the voice.</param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.DisableEffect(System.Int32)">
            <summary>
                Disables the effect at a given position in the effect chain of the voice.
            </summary>
            <param name="effectIndex">Zero-based index of an effect in the effect chain of the voice.</param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.GetEffectStateNative(System.Int32,CSCore.Win32.NativeBool@)">
            <summary>
                Returns the running state of the effect at a specified position in the effect chain of the voice.
            </summary>
            <param name="effectIndex">Zero-based index of an effect in the effect chain of the voice.</param>
            <param name="enabled">Returns true if the effect is enabled. If the effect is disabled, returns false.</param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.IsEffectEnabled(System.Int32)">
            <summary>
                Returns whether the effect at the specified position in the effect chain is enabled.
            </summary>
            <param name="effectIndex">Zero-based index of an effect in the effect chain of the voice.</param>
            <returns>Returns true if the effect is enabled. If the effect is disabled, returns false.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.SetEffectParametersNative(System.Int32,System.IntPtr,System.Int32,System.Int32)">
            <summary>
                Sets parameters for a given effect in the voice's effect chain.
            </summary>
            <param name="effectIndex">Zero-based index of an effect within the voice's effect chain.</param>
            <param name="effectParameters"> New values of the effect-specific parameters. </param>
            <param name="parametersByteSize">Size of the <paramref name="effectParameters" /> array in bytes.</param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.SetEffectParameters``1(System.Int32,``0)">
            <summary>
                Sets parameters for a given effect in the voice's effect chain.
            </summary>
            <typeparam name="T">Effect parameter.</typeparam>
            <param name="effectIndex">Zero-based index of an effect within the voice's effect chain.</param>
            <param name="effectParameters">New values of the effect-specific parameters.</param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.SetEffectParameters``1(System.Int32,``0,System.Int32)">
            <summary>
                Sets parameters for a given effect in the voice's effect chain.
            </summary>
            <typeparam name="T">Effect parameter.</typeparam>
            <param name="effectIndex">Zero-based index of an effect within the voice's effect chain.</param>
            <param name="effectParameters">New values of the effect-specific parameters.</param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.GetEffectParametersNative(System.Int32,System.IntPtr,System.Int32)">
            <summary>
                Returns the current effect-specific parameters of a given effect in the voice's effect chain.
            </summary>
            <param name="effectIndex">Zero-based index of an effect within the voice's effect chain.</param>
            <param name="effectParameters">Returns the current values of the effect-specific parameters.</param>
            <param name="parametersByteSize">Size of the <paramref name="effectParameters" /> array in bytes.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.GetEffectParameters``1(System.Int32)">
            <summary>
                Returns the current effect-specific parameters of a given effect in the voice's effect chain.
            </summary>
            <typeparam name="T">Effect parameters.</typeparam>
            <param name="effectIndex">Zero-based index of an effect within the voice's effect chain.</param>
            <returns>Effect parameters value.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.SetFilterParametersNative(CSCore.XAudio2.FilterParameters,System.Int32)">
            <summary>
                Sets the voice's filter parameters.
            </summary>
            <param name="filterParameters">
                <see cref="T:CSCore.XAudio2.FilterParameters" /> structure containing the filter
                information.
            </param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.SetFilterParameters(CSCore.XAudio2.FilterParameters,System.Int32)">
            <summary>
                Sets the voice's filter parameters.
            </summary>
            <param name="filterParameters">
                <see cref="T:CSCore.XAudio2.FilterParameters" /> structure containing the filter
                information.
            </param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.GetFilterParametersNative(CSCore.XAudio2.FilterParameters@)">
            <summary>
                Gets the voice's filter parameters.
            </summary>
            <param name="filterParameters">
                <see cref="T:CSCore.XAudio2.FilterParameters" /> structure containing the filter
                information.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.GetFilterParameters">
            <summary>
                Gets the voice's filter parameters.
            </summary>
            <returns><see cref="T:CSCore.XAudio2.FilterParameters" /> structure containing the filter information.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.SetOutputFilterParametersNative(CSCore.XAudio2.XAudio2Voice,CSCore.XAudio2.FilterParameters,System.Int32)">
            <summary>
                Sets the filter parameters on one of this voice's sends.
            </summary>
            <param name="destinationVoice">The destination voice of the send whose filter parameters will be set.</param>
            <param name="filterParameters">
                <see cref="T:CSCore.XAudio2.FilterParameters" /> structure containing the filter
                information.
            </param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.SetOutputFilterParameters(CSCore.XAudio2.XAudio2Voice,CSCore.XAudio2.FilterParameters,System.Int32)">
            <summary>
                Sets the filter parameters on one of this voice's sends.
            </summary>
            <param name="destinationVoice">The destination voice of the send whose filter parameters will be set.</param>
            <param name="filterParameters">
                <see cref="T:CSCore.XAudio2.FilterParameters" /> structure containing the filter
                information.
            </param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.SetOutputFilterParameters(CSCore.XAudio2.XAudio2Voice,CSCore.XAudio2.FilterParameters)">
            <summary>
                Sets the filter parameters on one of this voice's sends.
            </summary>
            <param name="destinationVoice">The destination voice of the send whose filter parameters will be set.</param>
            <param name="filterParameters">
                <see cref="T:CSCore.XAudio2.FilterParameters" /> structure containing the filter
                information.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.GetOutputFilterParametersNative(CSCore.XAudio2.XAudio2Voice,CSCore.XAudio2.FilterParameters@)">
            <summary>
                Returns the filter parameters from one of this voice's sends.
            </summary>
            <param name="destinationVoice">The destination voice of the send whose filter parameters will be read.</param>
            <param name="filterParameters">
                <see cref="T:CSCore.XAudio2.FilterParameters" /> structure containing the filter
                information.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.GetOutputFilterParameters(CSCore.XAudio2.XAudio2Voice)">
            <summary>
                Returns the filter parameters from one of this voice's sends.
            </summary>
            <param name="destinationVoice">The destination voice of the send whose filter parameters will be read.</param>
            <returns><see cref="T:CSCore.XAudio2.FilterParameters" /> structure containing the filter information.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.SetVolumeNative(System.Single,System.Int32)">
            <summary>
                Sets the overall volume level for the voice.
            </summary>
            <param name="volume">Overall volume level to use. See Remarks for more information on volume levels.</param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
            <returns>HRESULT</returns>
            <remarks>
                The master volume level is applied at different times depending on the type of voice.
                For submix and mastering voices the volume level is applied just before the voice's built in filter and effect
                chain is applied.
                For source voices the master volume level is applied after the voice's filter and effect
                chain is applied. Volume levels are expressed as floating-point amplitude multipliers
                between -2^24 and 2^24, with a maximum
                gain of 144.5 dB. A volume level of 1.0 means there is no attenuation or gain and 0 means silence.
                Negative levels can be used to invert the audio's phase.
            </remarks>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.SetVolume(System.Single,System.Int32)">
            <summary>
                Sets the overall volume level for the voice.
            </summary>
            <param name="volume">Overall volume level to use. See Remarks for more information on volume levels.</param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
            <remarks>
                The master volume level is applied at different times depending on the type of voice.
                For submix and mastering voices the volume level is applied just before the voice's built in filter and effect
                chain is applied.
                For source voices the master volume level is applied after the voice's filter and effect
                chain is applied. Volume levels are expressed as floating-point amplitude multipliers
                between -2^24 and 2^24, with a maximum
                gain of 144.5 dB. A volume level of 1.0 means there is no attenuation or gain and 0 means silence.
                Negative levels can be used to invert the audio's phase.
            </remarks>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.GetVolumeNative(System.Single@)">
            <summary>
                Gets the current overall volume level of the voice.
            </summary>
            <param name="volume">
                Returns the current overall volume level of the voice. See Remarks for more information on volume
                levels.
            </param>
            <returns>HRESULT</returns>
            <remarks>
                The master volume level is applied at different times depending on the type of voice.
                For submix and mastering voices the volume level is applied just before the voice's built in filter and effect
                chain is applied.
                For source voices the master volume level is applied after the voice's filter and effect
                chain is applied. Volume levels are expressed as floating-point amplitude multipliers
                between -2^24 and 2^24, with a maximum
                gain of 144.5 dB. A volume level of 1.0 means there is no attenuation or gain and 0 means silence.
                Negative levels can be used to invert the audio's phase.
            </remarks>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.GetVolume">
            <summary>
                Gets the current overall volume level of the voice.
            </summary>
            <returns>The current overall volume level of the voice. See Remarks for more information on volume levels.</returns>
            <remarks>
                The master volume level is applied at different times depending on the type of voice.
                For submix and mastering voices the volume level is applied just before the voice's built in filter and effect
                chain is applied.
                For source voices the master volume level is applied after the voice's filter and effect
                chain is applied. Volume levels are expressed as floating-point amplitude multipliers
                between -2^24 and 2^24, with a maximum
                gain of 144.5 dB. A volume level of 1.0 means there is no attenuation or gain and 0 means silence.
                Negative levels can be used to invert the audio's phase.
            </remarks>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.SetChannelVolumesNative(System.Int32,System.Single[],System.Int32)">
            <summary>
                Sets the volume levels for the voice, per channel. This method is valid only for source and submix voices, because
                mastering voices do not specify volume per channel.
            </summary>
            <param name="channelCount">Number of channels in the voice.</param>
            <param name="volumes">
                Array containing the new volumes of each channel in the voice. The array must have
                <paramref name="channelCount" /> elements. See Remarks for more information on volume levels.
            </param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
            <returns>HRESULT</returns>
            <remarks>
                The master volume level is applied at different times depending on the type of voice.
                For submix and mastering voices the volume level is applied just before the voice's built in filter and effect
                chain is applied.
                For source voices the master volume level is applied after the voice's filter and effect
                chain is applied. Volume levels are expressed as floating-point amplitude multipliers
                between -2^24 and 2^24, with a maximum
                gain of 144.5 dB. A volume level of 1.0 means there is no attenuation or gain and 0 means silence.
                Negative levels can be used to invert the audio's phase.
            </remarks>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.SetChannelVolumes(System.Int32,System.Single[],System.Int32)">
            <summary>
                Sets the volume levels for the voice, per channel. This method is valid only for source and submix voices, because
                mastering voices do not specify volume per channel.
            </summary>
            <param name="channelCount">Number of channels in the voice.</param>
            <param name="volumes">
                Array containing the new volumes of each channel in the voice. The array must have
                <paramref name="channelCount" /> elements. See Remarks for more information on volume levels.
            </param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
            <remarks>
                The master volume level is applied at different times depending on the type of voice.
                For submix and mastering voices the volume level is applied just before the voice's built in filter and effect
                chain is applied.
                For source voices the master volume level is applied after the voice's filter and effect
                chain is applied. Volume levels are expressed as floating-point amplitude multipliers
                between -2^24 and 2^24, with a maximum
                gain of 144.5 dB. A volume level of 1.0 means there is no attenuation or gain and 0 means silence.
                Negative levels can be used to invert the audio's phase.
            </remarks>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.SetChannelVolumes(System.Int32,System.Single[])">
            <summary>
                Sets the volume levels for the voice, per channel. This method is valid only for source and submix voices, because
                mastering voices do not specify volume per channel.
            </summary>
            <param name="channelCount">Number of channels in the voice.</param>
            <param name="volumes">
                Array containing the new volumes of each channel in the voice. The array must have
                <paramref name="channelCount" /> elements. See Remarks for more information on volume levels.
            </param>
            <remarks>
                The master volume level is applied at different times depending on the type of voice.
                For submix and mastering voices the volume level is applied just before the voice's built in filter and effect
                chain is applied.
                For source voices the master volume level is applied after the voice's filter and effect
                chain is applied. Volume levels are expressed as floating-point amplitude multipliers
                between -2^24 and 2^24, with a maximum
                gain of 144.5 dB. A volume level of 1.0 means there is no attenuation or gain and 0 means silence.
                Negative levels can be used to invert the audio's phase.
            </remarks>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.GetChannelVolumesNative(System.Int32,System.Single[])">
            <summary>
                Returns the volume levels for the voice, per channel.
                These settings are applied after the effect chain is applied.
                This method is valid only for source and submix voices, because mastering voices do not specify volume per channel.
            </summary>
            <param name="channelCount">Confirms the channel count of the voice.</param>
            <param name="volumes">
                Returns the current volume level of each channel in the voice. The array must have at least
                <paramref name="channelCount" /> elements.
                See remarks for more information on volume levels.
            </param>
            <returns>HRESULT</returns>
            <remarks>
                The master volume level is applied at different times depending on the type of voice.
                For submix and mastering voices the volume level is applied just before the voice's built in filter and effect
                chain is applied.
                For source voices the master volume level is applied after the voice's filter and effect
                chain is applied. Volume levels are expressed as floating-point amplitude multipliers
                between -2^24 and 2^24, with a maximum
                gain of 144.5 dB. A volume level of 1.0 means there is no attenuation or gain and 0 means silence.
                Negative levels can be used to invert the audio's phase.
            </remarks>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.GetChannelVolumes(System.Int32)">
            <summary>
                Returns the volume levels for the voice, per channel.
                These settings are applied after the effect chain is applied.
                This method is valid only for source and submix voices, because mastering voices do not specify volume per channel.
            </summary>
            <param name="channelCount">Confirms the channel count of the voice.</param>
            <returns>
                Returns the current volume level of each channel in the voice. The has at least <paramref name="channelCount" />
                elements.
            </returns>
            <remarks>
                The master volume level is applied at different times depending on the type of voice.
                For submix and mastering voices the volume level is applied just before the voice's built in filter and effect
                chain is applied.
                For source voices the master volume level is applied after the voice's filter and effect
                chain is applied. Volume levels are expressed as floating-point amplitude multipliers
                between -2^24 and 2^24, with a maximum
                gain of 144.5 dB. A volume level of 1.0 means there is no attenuation or gain and 0 means silence.
                Negative levels can be used to invert the audio's phase.
            </remarks>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.SetOutputMatrixNative(CSCore.XAudio2.XAudio2Voice,System.Int32,System.Int32,System.Single[],System.Int32)">
            <summary>
                Sets the volume level of each channel of the final output for the voice. These channels are mapped to the input
                channels of a specified destination voice.
            </summary>
            <param name="destinationVoice">
                Destination <see cref="T:CSCore.XAudio2.XAudio2Voice" /> for which to set volume levels.
                If the voice sends to a single target voice then specifying null will cause SetOutputMatrix to operate on that
                target voice.
            </param>
            <param name="sourceChannels">
                Confirms the output channel count of the voice. This is the number of channels that are
                produced by the last effect in the chain.
            </param>
            <param name="destinationChannels">Confirms the input channel count of the destination voice.</param>
            <param name="levelMatrix">
                Array of [SourceChannels × DestinationChannels] volume levels sent to the destination voice.
                The level sent from source channel S to destination channel D is specified in the form levelMatrix[SourceChannels ×
                D + S].
                For more details see
                http://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.setoutputmatrix(v=vs.85).aspx.
            </param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.SetOutputMatrix(CSCore.XAudio2.XAudio2Voice,System.Int32,System.Int32,System.Single[],System.Int32)">
            <summary>
                Sets the volume level of each channel of the final output for the voice. These channels are mapped to the input
                channels of a specified destination voice.
            </summary>
            <param name="destinationVoice">
                Destination <see cref="T:CSCore.XAudio2.XAudio2Voice" /> for which to set volume levels.
                If the voice sends to a single target voice then specifying null will cause SetOutputMatrix to operate on that
                target voice.
            </param>
            <param name="sourceChannels">
                Confirms the output channel count of the voice. This is the number of channels that are
                produced by the last effect in the chain.
            </param>
            <param name="destinationChannels">Confirms the input channel count of the destination voice.</param>
            <param name="levelMatrix">
                Array of [SourceChannels × DestinationChannels] volume levels sent to the destination voice.
                The level sent from source channel S to destination channel D is specified in the form levelMatrix[SourceChannels ×
                D + S].
                For more details see
                http://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.setoutputmatrix(v=vs.85).aspx.
            </param>
            <param name="operationSet">
                Identifies this call as part of a deferred batch. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/ee415807(v=vs.85).aspx.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.SetOutputMatrix(CSCore.XAudio2.XAudio2Voice,System.Int32,System.Int32,System.Single[])">
            <summary>
                Sets the volume level of each channel of the final output for the voice. These channels are mapped to the input
                channels of a specified destination voice.
            </summary>
            <param name="destinationVoice">
                Destination <see cref="T:CSCore.XAudio2.XAudio2Voice" /> for which to set volume levels.
                If the voice sends to a single target voice then specifying null will cause SetOutputMatrix to operate on that
                target voice.
            </param>
            <param name="sourceChannels">
                Confirms the output channel count of the voice. This is the number of channels that are
                produced by the last effect in the chain.
            </param>
            <param name="destinationChannels">Confirms the input channel count of the destination voice.</param>
            <param name="levelMatrix">
                Array of [SourceChannels × DestinationChannels] volume levels sent to the destination voice.
                The level sent from source channel S to destination channel D is specified in the form levelMatrix[SourceChannels ×
                D + S].
                For more details see
                http://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.setoutputmatrix(v=vs.85).aspx.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.GetOutputMatrixNative(CSCore.XAudio2.XAudio2Voice,System.Int32,System.Int32,System.Single[])">
            <summary>
                Gets the volume level of each channel of the final output for the voice. These channels are mapped to the input
                channels of a specified destination voice.
            </summary>
            <param name="destinationVoice">The destination <see cref="T:CSCore.XAudio2.XAudio2Voice" /> to retrieve the output matrix for.</param>
            <param name="sourceChannels">
                Confirms the output channel count of the voice. This is the number of channels that are
                produced by the last effect in the chain.
            </param>
            <param name="destinationChannels">Confirms the input channel count of the destination voice.</param>
            <param name="levelMatrix">
                Array of [SourceChannels × DestinationChannels] volume levels sent to the destination voice.
                The level sent from source channel S to destination channel D is specified in the form levelMatrix[SourceChannels ×
                D + S].
                For more details see
                http://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.getoutputmatrix(v=vs.85).aspx.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.GetOutputMatrix(CSCore.XAudio2.XAudio2Voice,System.Int32,System.Int32,System.Single[])">
            <summary>
                Gets the volume level of each channel of the final output for the voice. These channels are mapped to the input
                channels of a specified destination voice.
            </summary>
            <param name="destinationVoice">The destination <see cref="T:CSCore.XAudio2.XAudio2Voice" /> to retrieve the output matrix for.</param>
            <param name="sourceChannels">
                Confirms the output channel count of the voice. This is the number of channels that are
                produced by the last effect in the chain.
            </param>
            <param name="destinationChannels">Confirms the input channel count of the destination voice.</param>
            <param name="levelMatrix">
                Array of [SourceChannels × DestinationChannels] volume levels sent to the destination voice.
                The level sent from source channel S to destination channel D is specified in the form levelMatrix[SourceChannels ×
                D + S].
                For more details see
                http://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.getoutputmatrix(v=vs.85).aspx.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.DestroyVoice">
            <summary>
                Destroys the voice. If necessary, stops the voice and removes it from the XAudio2 graph.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2Voice.Dispose(System.Boolean)">
            <summary>
            Disposes the <see cref="T:CSCore.XAudio2.XAudio2Voice"/> and calls the <see cref="M:CSCore.XAudio2.XAudio2Voice.DestroyVoice"/> method..
            </summary>
            <param name="disposing">True to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
        </member>
        <member name="T:CSCore.XAudio2.XAudio2VoiceErrorEventArgs">
            <summary>
                Provides data for the <see cref="E:CSCore.XAudio2.VoiceCallback.VoiceError" /> event.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2VoiceErrorEventArgs.#ctor(System.IntPtr,System.Int32)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.XAudio2.XAudio2VoiceErrorEventArgs" /> class.
            </summary>
            <param name="bufferContext">
                The context pointer that was assigned to the <see cref="F:CSCore.XAudio2.XAudio2Buffer.ContextPtr" /> member
                of the <see cref="T:CSCore.XAudio2.XAudio2Buffer" /> structure when the buffer was submitted.
            </param>
            <param name="error">The HRESULT code of the error encountered</param>
        </member>
        <member name="P:CSCore.XAudio2.XAudio2VoiceErrorEventArgs.Error">
            <summary>
                Gets the HRESULT code of the error encountered.
            </summary>
        </member>
        <member name="T:CSCore.XAudio2.XAudio2_7">
            <summary>
                <see cref="T:CSCore.XAudio2.XAudio2" /> is the class for the XAudio2 object that manages all audio engine states, the audio
                processing thread, the voice graph, and so forth.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_7.QuantumDenominator">
            <summary>
            The denominator of a quantum unit. In 10ms chunks (= 1/100 seconds). 
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_7.MinimumSampleRate">
            <summary>
            Minimum sample rate is 1000 Hz.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_7.MaximumSampleRate">
            <summary>
            Maximum sample rate is 200 kHz.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_7.MinFrequencyRatio">
            <summary>
            The minimum frequency ratio is 1/1024.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_7.MaxFrequencyRatio">
            <summary>
            Maximum frequency ratio is 1024.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_7.DefaultFrequencyRatio">
            <summary>
            The default value for the frequency ratio is 4.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_7.MaxAudioChannels">
            <summary>
            The maximum number of supported channels is 64.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_7.DefaultChannels">
            <summary>
            Value which indicates that the default number of channels should be used.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_7.DefaultSampleRate">
            <summary>
            Values which indicates that the default sample rate should be used.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_7.CommitAll">
            <summary>
            Value which can be used in combination with the <see cref="M:CSCore.XAudio2.XAudio2.CommitChanges(System.Int32)"/> method to commit all changes.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_7.CommitNow">
            <summary>
            Values which indicates that the made changes should be commited instantly.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_7.#ctor(System.IntPtr)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.XAudio2.XAudio2_7" /> class.
            </summary>
            <param name="ptr">Native pointer of the <see cref="T:CSCore.XAudio2.XAudio2_7" /> object.</param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_7.#ctor">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.XAudio2.XAudio2_7" /> class.
            </summary>
            <remarks>This constructor already calls <see cref="M:CSCore.XAudio2.XAudio2_7.Initialize(System.Int32,CSCore.XAudio2.XAudio2Processor)" />. Don't call it a second time.</remarks>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_7.#ctor(System.Boolean,CSCore.XAudio2.XAudio2Processor)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.XAudio2.XAudio2_7" /> class.
            </summary>
            <param name="debug">
                Specifies whether the XAudio2 engine should be created in debug mode. Pass true to enable the debug
                mode.
            </param>
            <param name="processor">
                Specifies which CPU to use. Use <see cref="F:CSCore.XAudio2.XAudio2Processor.XAudio27DefaultProcessor" /> as
                default value.
            </param>
            <remarks>This constructor already calls <see cref="M:CSCore.XAudio2.XAudio2_7.Initialize(System.Int32,CSCore.XAudio2.XAudio2Processor)" />. Don't call it a second time.</remarks>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_7.GetDeviceCountNative(System.Int32@)">
            <summary>
                Returns the number of available audio output devices.
            </summary>
            <param name="deviceCount">Number of available audio output devices.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_7.GetDeviceCount">
            <summary>
                Returns the number of available audio output devices.
            </summary>
            <returns>Number of available audio output devices.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_7.GetDeviceDetailsNative(System.Int32,CSCore.XAudio2.DeviceDetails@)">
            <summary>
                Returns information about an audio output device.
            </summary>
            <param name="deviceIndex">
                Index of the device to be queried. This value must be less than the count returned by
                <see cref="M:CSCore.XAudio2.XAudio2_7.GetDeviceCount" />.
            </param>
            <param name="deviceDetails"><see cref="T:CSCore.XAudio2.DeviceDetails" /> structure.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_7.GetDeviceDetails(System.Int32)">
            <summary>
                Returns information about an audio output device.
            </summary>
            <param name="deviceIndex">
                Index of the device to be queried. This value must be less than the count returned by
                <see cref="M:CSCore.XAudio2.XAudio2_7.GetDeviceCount" />.
            </param>
            <returns><see cref="T:CSCore.XAudio2.DeviceDetails" /> structure.</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_7.InitializeNative(System.Int32,CSCore.XAudio2.XAudio2Processor)">
            <summary>
                Sets XAudio2 parameters and prepares XAudio2 for use.
            </summary>
            <param name="flags">Flags that specify the behavior of the XAudio2 object. This value must be 0.</param>
            <param name="processor">
                Specifies which CPU to use. Use <see cref="F:CSCore.XAudio2.XAudio2Processor.XAudio27DefaultProcessor" /> as default value.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_7.Initialize(System.Int32,CSCore.XAudio2.XAudio2Processor)">
            <summary>
                Sets XAudio2 parameters and prepares XAudio2 for use.
            </summary>
            <param name="flags">Flags that specify the behavior of the XAudio2 object. This value must be 0.</param>
            <param name="processor">
                Specifies which CPU to use. Use <see cref="F:CSCore.XAudio2.XAudio2Processor.XAudio27DefaultProcessor" /> as default value.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_7.RegisterForCallbacksNative(CSCore.XAudio2.IXAudio2EngineCallback)">
            <summary>
                Adds an <see cref="T:CSCore.XAudio2.IXAudio2EngineCallback" /> from the <see cref="T:CSCore.XAudio2.XAudio2" /> engine callback list.
            </summary>
            <param name="callback">
                <see cref="T:CSCore.XAudio2.IXAudio2EngineCallback" /> object to add to the <see cref="T:CSCore.XAudio2.XAudio2" /> engine
                callback list.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_7.UnregisterForCallbacks(CSCore.XAudio2.IXAudio2EngineCallback)">
            <summary>
                Removes an <see cref="T:CSCore.XAudio2.IXAudio2EngineCallback" /> from the <see cref="T:CSCore.XAudio2.XAudio2" /> engine callback list.
            </summary>
            <param name="callback">
                <see cref="T:CSCore.XAudio2.IXAudio2EngineCallback" /> object to remove from the <see cref="T:CSCore.XAudio2.XAudio2" /> engine
                callback list. If the given interface is present more than once in the list, only the first instance in the list
                will be removed.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_7.CreateSourceVoiceNative(System.IntPtr@,System.IntPtr,CSCore.XAudio2.VoiceFlags,System.Single,CSCore.XAudio2.IXAudio2VoiceCallback,System.Nullable{CSCore.XAudio2.VoiceSends},System.Nullable{CSCore.XAudio2.EffectChain})">
            <summary>
                Creates and configures a source voice. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.ixaudio2.ixaudio2.createsourcevoice(v=vs.85).aspx.
            </summary>
            <param name="pSourceVoice">If successful, returns a pointer to the new <see cref="T:CSCore.XAudio2.XAudio2SourceVoice" /> object.</param>
            <param name="sourceFormat">
                Pointer to a <see cref="T:CSCore.WaveFormat" />. The following formats are supported:
                <ul>
                    <li>8-bit (unsigned) integer PCM</li><li>16-bit integer PCM (optimal format for XAudio2)</li>
                    <li>20-bit integer PCM (either in 24 or 32 bit containers)</li>
                    <li>24-bit integer PCM (either in 24 or 32 bit containers)</li><li>32-bit integer PCM</li>
                    <li>32-bit float PCM (preferred format after 16-bit integer)</li>
                </ul>
                The number of channels in a source voice must be less than or equal to <see cref="F:CSCore.XAudio2.XAudio2_7.MaxAudioChannels" />. The sample
                rate of a source voice must be between <see cref="F:CSCore.XAudio2.XAudio2_7.MinimumSampleRate" /> and <see cref="F:CSCore.XAudio2.XAudio2_7.MaximumSampleRate" />.
            </param>
            <param name="flags">
                <see cref="T:CSCore.XAudio2.VoiceFlags" /> that specify the behavior of the source voice. A flag can be
                <see cref="F:CSCore.XAudio2.VoiceFlags.None" /> or a combination of one or more of the following.
                Possible values are <see cref="F:CSCore.XAudio2.VoiceFlags.NoPitch" />, <see cref="F:CSCore.XAudio2.VoiceFlags.NoSampleRateConversition" /> and
                <see cref="F:CSCore.XAudio2.VoiceFlags.UseFilter" />. <see cref="F:CSCore.XAudio2.VoiceFlags.Music" /> is not supported on Windows.
            </param>
            <param name="maxFrequencyRatio">
                Highest allowable frequency ratio that can be set on this voice. The value for this
                argument must be between <see cref="F:CSCore.XAudio2.XAudio2_7.MinFrequencyRatio" /> and <see cref="F:CSCore.XAudio2.XAudio2_7.MaxFrequencyRatio" />.
            </param>
            <param name="voiceCallback">
                Client-provided callback interface, <see cref="T:CSCore.XAudio2.IXAudio2VoiceCallback" />. This parameter is
                optional and can be null.
            </param>
            <param name="sendList">
                List of <see cref="T:CSCore.XAudio2.VoiceSends" /> structures that describe the set of destination voices for the
                source voice. If <paramref name="sendList" /> is NULL, the send list defaults to a single output to the first mastering
                voice created.
            </param>
            <param name="effectChain">
                List of <see cref="T:CSCore.XAudio2.EffectChain" /> structures that describe an effect chain to use in the
                source voice. This parameter is optional and can be null.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_7.CreateSubmixVoiceNative(System.IntPtr@,System.Int32,System.Int32,CSCore.XAudio2.VoiceFlags,System.Int32,System.Nullable{CSCore.XAudio2.VoiceSends},System.Nullable{CSCore.XAudio2.EffectChain})">
            <summary>
                Creates and configures a submix voice.
            </summary>
            <param name="pSubmixVoice">On success, returns a pointer to the new <see cref="T:CSCore.XAudio2.XAudio2SubmixVoice" /> object.</param>
            <param name="inputChannels">
                Number of channels in the input audio data of the submix voice. The
                <paramref name="inputChannels" /> must be less than or equal to <see cref="F:CSCore.XAudio2.XAudio2_7.MaxAudioChannels" />.
            </param>
            <param name="inputSampleRate">
                Sample rate of the input audio data of submix voice. This rate must be a multiple of
                <see cref="F:CSCore.XAudio2.XAudio2_7.QuantumDenominator" />. InputSampleRate must be between <see cref="F:CSCore.XAudio2.XAudio2_7.MinimumSampleRate" /> and
                <see cref="F:CSCore.XAudio2.XAudio2_7.MaximumSampleRate" />.
            </param>
            <param name="flags">
                Flags that specify the behavior of the submix voice. It can be <see cref="F:CSCore.XAudio2.VoiceFlags.None" /> or
                <see cref="F:CSCore.XAudio2.VoiceFlags.UseFilter" />.
            </param>
            <param name="processingStage">
                An arbitrary number that specifies when this voice is processed with respect to other
                submix voices, if the XAudio2 engine is running other submix voices. The voice is processed after all other voices
                that include a smaller <paramref name="processingStage" /> value and before all other voices that include a larger
                <paramref name="processingStage" /> value. Voices that include the same <paramref name="processingStage" /> value are
                processed in any order. A submix voice cannot send to another submix voice with a lower or equal
                <paramref name="processingStage" /> value. This prevents audio being lost due to a submix cycle.
            </param>
            <param name="sendList">
                List of <see cref="T:CSCore.XAudio2.VoiceSends" /> structures that describe the set of destination voices for the
                submix voice. If <paramref name="sendList" /> is NULL, the send list will default to a single output to the first
                mastering voice created.
            </param>
            <param name="effectChain">
                List of <see cref="T:CSCore.XAudio2.EffectChain" /> structures that describe an effect chain to use in the
                submix voice. This parameter is optional and can be null.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_7.CreateMasteringVoiceNative(System.IntPtr@,System.Int32,System.Int32,System.Int32,System.Object,System.Nullable{CSCore.XAudio2.EffectChain},CSCore.XAudio2.AudioStreamCategory)">
            <summary>
                Creates and configures a mastering voice.
            </summary>
            <param name="pMasteringVoice">If successful, returns a pointer to the new <see cref="T:CSCore.XAudio2.XAudio2MasteringVoice" /> object.</param>
            <param name="inputChannels">
                Number of channels the mastering voice expects in its input audio. <paramref name="inputChannels" /> must be less than
                or equal to <see cref="F:CSCore.XAudio2.XAudio2_7.MaxAudioChannels" />.
                You can set InputChannels to <see cref="F:CSCore.XAudio2.XAudio2_7.DefaultChannels" />, which causes XAudio2 to try to detect the system
                speaker configuration setup.
            </param>
            <param name="inputSampleRate">
                Sample rate of the input audio data of the mastering voice. This rate must be a multiple of
                <see cref="F:CSCore.XAudio2.XAudio2_7.QuantumDenominator" />. <paramref name="inputSampleRate" /> must be between <see cref="F:CSCore.XAudio2.XAudio2_7.MinimumSampleRate" />
                and <see cref="F:CSCore.XAudio2.XAudio2_7.MaximumSampleRate" />.
                You can set InputSampleRate to <see cref="F:CSCore.XAudio2.XAudio2_7.DefaultSampleRate" />, with the default being determined by the current
                platform.
            </param>
            <param name="flags">Flags that specify the behavior of the mastering voice. Must be 0.</param>
            <param name="deviceId">
                Identifier of the device to receive the output audio. Specifying the default value of 0 (zero)
                causes XAudio2 to select the global default audio device.
            </param>
            <param name="effectChain">
                <see cref="T:CSCore.XAudio2.EffectChain" /> structure that describes an effect chain to use in the mastering
                voice, or NULL to use no effects.
            </param>
            <param name="streamCategory"><b>Not valid for XAudio 2.7.</b></param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_7.StartEngineNative">
            <summary>
                Starts the audio processing thread.
            </summary>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_7.StopEngine">
            <summary>
                Stops the audio processing thread.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_7.CommitChangesNative(System.Int32)">
            <summary>
                Atomically applies a set of operations that are tagged with a given identifier.
            </summary>
            <param name="operationSet">
                Identifier of the set of operations to be applied. To commit all pending operations, pass
                <see cref="F:CSCore.XAudio2.XAudio2_7.CommitAll" />.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_7.GetPerformanceDataNative(CSCore.XAudio2.PerformanceData@)">
            <summary>
                Returns current resource usage details, such as available memory or CPU usage.
            </summary>
            <param name="performanceData">
                On success, pointer to an <see cref="T:CSCore.XAudio2.PerformanceData" /> structure that is
                returned.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_7.SetDebugConfigurationNative(CSCore.XAudio2.DebugConfiguration,System.IntPtr)">
            <summary>
                Changes <b>global</b> debug logging options for XAudio2.
            </summary>
            <param name="debugConfiguration"><see cref="T:CSCore.XAudio2.DebugConfiguration" /> structure that contains the new debug configuration.</param>
            <param name="reserved">Reserved parameter. Must me NULL.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_7.GetDefaultDevice">
            <summary>
            Returns the default device.
            </summary>
            <returns>The default device.</returns>
        </member>
        <member name="T:CSCore.XAudio2.XAudio2_8">
            <summary>
                <see cref="T:CSCore.XAudio2.XAudio2" /> is the class for the XAudio2 object that manages all audio engine states, the audio
                processing thread, the voice graph, and so forth.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_8.QuantumDenominator">
            <summary>
            The denominator of a quantum unit. In 10ms chunks (= 1/100 seconds). 
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_8.MinimumSampleRate">
            <summary>
            Minimum sample rate is 1000 Hz.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_8.MaximumSampleRate">
            <summary>
            Maximum sample rate is 200 kHz.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_8.MinFrequencyRatio">
            <summary>
            The minimum frequency ratio is 1/1024.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_8.MaxFrequencyRatio">
            <summary>
            Maximum frequency ratio is 1024.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_8.DefaultFrequencyRatio">
            <summary>
            The default value for the frequency ratio is 4.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_8.MaxAudioChannels">
            <summary>
            The maximum number of supported channels is 64.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_8.DefaultChannels">
            <summary>
            Value which indicates that the default number of channels should be used.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_8.DefaultSampleRate">
            <summary>
            Values which indicates that the default sample rate should be used.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_8.CommitAll">
            <summary>
            Value which can be used in combination with the <see cref="M:CSCore.XAudio2.XAudio2.CommitChanges(System.Int32)"/> method to commit all changes.
            </summary>
        </member>
        <member name="F:CSCore.XAudio2.XAudio2_8.CommitNow">
            <summary>
            Values which indicates that the made changes should be commited instantly.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_8.#ctor(System.IntPtr)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.XAudio2.XAudio2_8" /> class.
            </summary>
            <param name="ptr">Native pointer of the <see cref="T:CSCore.XAudio2.XAudio2_8" /> object.</param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_8.#ctor">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.XAudio2.XAudio2_8" /> class.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_8.#ctor(CSCore.XAudio2.XAudio2Processor)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.XAudio2.XAudio2_8" /> class.
            </summary>
            <param name="processor">
                Specifies which CPU to use. Use <see cref="F:CSCore.XAudio2.XAudio2Processor.Xaudio28DefaultProcessor" /> as
                default value.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_8.RegisterForCallbacksNative(CSCore.XAudio2.IXAudio2EngineCallback)">
            <summary>
                Adds an <see cref="T:CSCore.XAudio2.IXAudio2EngineCallback" /> from the <see cref="T:CSCore.XAudio2.XAudio2" /> engine callback list.
            </summary>
            <param name="callback">
                <see cref="T:CSCore.XAudio2.IXAudio2EngineCallback" /> object to add to the <see cref="T:CSCore.XAudio2.XAudio2" /> engine
                callback list.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_8.UnregisterForCallbacks(CSCore.XAudio2.IXAudio2EngineCallback)">
            <summary>
                Removes an <see cref="T:CSCore.XAudio2.IXAudio2EngineCallback" /> from the <see cref="T:CSCore.XAudio2.XAudio2" /> engine callback list.
            </summary>
            <param name="callback">
                <see cref="T:CSCore.XAudio2.IXAudio2EngineCallback" /> object to remove from the <see cref="T:CSCore.XAudio2.XAudio2" /> engine
                callback list. If the given interface is present more than once in the list, only the first instance in the list
                will be removed.
            </param>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_8.CreateSourceVoiceNative(System.IntPtr@,System.IntPtr,CSCore.XAudio2.VoiceFlags,System.Single,CSCore.XAudio2.IXAudio2VoiceCallback,System.Nullable{CSCore.XAudio2.VoiceSends},System.Nullable{CSCore.XAudio2.EffectChain})">
            <summary>
                Creates and configures a source voice. For more information see
                http://msdn.microsoft.com/en-us/library/windows/desktop/microsoft.directx_sdk.ixaudio2.ixaudio2.createsourcevoice(v=vs.85).aspx.
            </summary>
            <param name="pSourceVoice">If successful, returns a pointer to the new <see cref="T:CSCore.XAudio2.XAudio2SourceVoice" /> object.</param>
            <param name="sourceFormat">
                Pointer to a <see cref="T:CSCore.WaveFormat" />. The following formats are supported:
                <ul>
                    <li>8-bit (unsigned) integer PCM</li><li>16-bit integer PCM (optimal format for XAudio2)</li>
                    <li>20-bit integer PCM (either in 24 or 32 bit containers)</li>
                    <li>24-bit integer PCM (either in 24 or 32 bit containers)</li><li>32-bit integer PCM</li>
                    <li>32-bit float PCM (preferred format after 16-bit integer)</li>
                </ul>
                The number of channels in a source voice must be less than or equal to <see cref="F:CSCore.XAudio2.XAudio2_8.MaxAudioChannels" />. The sample
                rate of a source voice must be between <see cref="F:CSCore.XAudio2.XAudio2_8.MinimumSampleRate" /> and <see cref="F:CSCore.XAudio2.XAudio2_8.MaximumSampleRate" />.
            </param>
            <param name="flags">
                <see cref="T:CSCore.XAudio2.VoiceFlags" /> that specify the behavior of the source voice. A flag can be
                <see cref="F:CSCore.XAudio2.VoiceFlags.None" /> or a combination of one or more of the following.
                Possible values are <see cref="F:CSCore.XAudio2.VoiceFlags.NoPitch" />, <see cref="F:CSCore.XAudio2.VoiceFlags.NoSampleRateConversition" /> and
                <see cref="F:CSCore.XAudio2.VoiceFlags.UseFilter" />. <see cref="F:CSCore.XAudio2.VoiceFlags.Music" /> is not supported on Windows.
            </param>
            <param name="maxFrequencyRatio">
                Highest allowable frequency ratio that can be set on this voice. The value for this
                argument must be between <see cref="F:CSCore.XAudio2.XAudio2_8.MinFrequencyRatio" /> and <see cref="F:CSCore.XAudio2.XAudio2_8.MaxFrequencyRatio" />.
            </param>
            <param name="voiceCallback">
                Client-provided callback interface, <see cref="T:CSCore.XAudio2.IXAudio2VoiceCallback" />. This parameter is
                optional and can be null.
            </param>
            <param name="sendList">
                List of <see cref="T:CSCore.XAudio2.VoiceSends" /> structures that describe the set of destination voices for the
                source voice. If <paramref name="sendList" /> is NULL, the send list defaults to a single output to the first mastering
                voice created.
            </param>
            <param name="effectChain">
                List of <see cref="T:CSCore.XAudio2.EffectChain" /> structures that describe an effect chain to use in the
                source voice. This parameter is optional and can be null.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_8.CreateSubmixVoiceNative(System.IntPtr@,System.Int32,System.Int32,CSCore.XAudio2.VoiceFlags,System.Int32,System.Nullable{CSCore.XAudio2.VoiceSends},System.Nullable{CSCore.XAudio2.EffectChain})">
            <summary>
                Creates and configures a submix voice.
            </summary>
            <param name="pSubmixVoice">On success, returns a pointer to the new <see cref="T:CSCore.XAudio2.XAudio2SubmixVoice" /> object.</param>
            <param name="inputChannels">
                Number of channels in the input audio data of the submix voice. The
                <paramref name="inputChannels" /> must be less than or equal to <see cref="F:CSCore.XAudio2.XAudio2_8.MaxAudioChannels" />.
            </param>
            <param name="inputSampleRate">
                Sample rate of the input audio data of submix voice. This rate must be a multiple of
                <see cref="F:CSCore.XAudio2.XAudio2_8.QuantumDenominator" />. InputSampleRate must be between <see cref="F:CSCore.XAudio2.XAudio2_8.MinimumSampleRate" /> and
                <see cref="F:CSCore.XAudio2.XAudio2_8.MaximumSampleRate" />.
            </param>
            <param name="flags">
                Flags that specify the behavior of the submix voice. It can be <see cref="F:CSCore.XAudio2.VoiceFlags.None" /> or
                <see cref="F:CSCore.XAudio2.VoiceFlags.UseFilter" />.
            </param>
            <param name="processingStage">
                An arbitrary number that specifies when this voice is processed with respect to other
                submix voices, if the XAudio2 engine is running other submix voices. The voice is processed after all other voices
                that include a smaller <paramref name="processingStage" /> value and before all other voices that include a larger
                <paramref name="processingStage" /> value. Voices that include the same <paramref name="processingStage" /> value are
                processed in any order. A submix voice cannot send to another submix voice with a lower or equal
                <paramref name="processingStage" /> value. This prevents audio being lost due to a submix cycle.
            </param>
            <param name="sendList">
                List of <see cref="T:CSCore.XAudio2.VoiceSends" /> structures that describe the set of destination voices for the
                submix voice. If <paramref name="sendList" /> is NULL, the send list will default to a single output to the first
                mastering voice created.
            </param>
            <param name="effectChain">
                List of <see cref="T:CSCore.XAudio2.EffectChain" /> structures that describe an effect chain to use in the
                submix voice. This parameter is optional and can be null.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_8.CreateMasteringVoiceNative(System.IntPtr@,System.Int32,System.Int32,System.Int32,System.Object,System.Nullable{CSCore.XAudio2.EffectChain},CSCore.XAudio2.AudioStreamCategory)">
            <summary>
                Creates and configures a mastering voice.
            </summary>
            <param name="pMasteringVoice">If successful, returns a pointer to the new <see cref="T:CSCore.XAudio2.XAudio2MasteringVoice" /> object.</param>
            <param name="inputChannels">
                Number of channels the mastering voice expects in its input audio. <paramref name="inputChannels" /> must be less than
                or equal to <see cref="F:CSCore.XAudio2.XAudio2_8.MaxAudioChannels" />.
                You can set InputChannels to <see cref="F:CSCore.XAudio2.XAudio2_8.DefaultChannels" />, which causes XAudio2 to try to detect the system
                speaker configuration setup.
            </param>
            <param name="inputSampleRate">
                Sample rate of the input audio data of the mastering voice. This rate must be a multiple of
                <see cref="F:CSCore.XAudio2.XAudio2_8.QuantumDenominator" />. <paramref name="inputSampleRate" /> must be between <see cref="F:CSCore.XAudio2.XAudio2_8.MinimumSampleRate" />
                and <see cref="F:CSCore.XAudio2.XAudio2_8.MaximumSampleRate" />.
                You can set InputSampleRate to <see cref="F:CSCore.XAudio2.XAudio2_8.DefaultSampleRate" />, with the default being determined by the current
                platform.
            </param>
            <param name="flags">Flags that specify the behavior of the mastering voice. Must be 0.</param>
            <param name="deviceId">
                Identifier of the device to receive the output audio. Specifying the default value of NULL
                causes XAudio2 to select the global default audio device.
            </param>
            <param name="effectChain">
                <see cref="T:CSCore.XAudio2.EffectChain" /> structure that describes an effect chain to use in the mastering
                voice, or NULL to use no effects.
            </param>
            <param name="streamCategory">The audio stream category to use for this mastering voice.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_8.StartEngineNative">
            <summary>
                Starts the audio processing thread.
            </summary>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_8.StopEngine">
            <summary>
                Stops the audio processing thread.
            </summary>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_8.CommitChangesNative(System.Int32)">
            <summary>
                Atomically applies a set of operations that are tagged with a given identifier.
            </summary>
            <param name="operationSet">
                Identifier of the set of operations to be applied. To commit all pending operations, pass
                <see cref="F:CSCore.XAudio2.XAudio2_8.CommitAll" />.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_8.GetPerformanceDataNative(CSCore.XAudio2.PerformanceData@)">
            <summary>
                Returns current resource usage details, such as available memory or CPU usage.
            </summary>
            <param name="performanceData">
                On success, pointer to an <see cref="T:CSCore.XAudio2.PerformanceData" /> structure that is
                returned.
            </param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_8.SetDebugConfigurationNative(CSCore.XAudio2.DebugConfiguration,System.IntPtr)">
            <summary>
                Changes <b>global</b> debug logging options for XAudio2.
            </summary>
            <param name="debugConfiguration"><see cref="T:CSCore.XAudio2.DebugConfiguration" /> structure that contains the new debug configuration.</param>
            <param name="reserved">Reserved parameter. Must me NULL.</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:CSCore.XAudio2.XAudio2_8.GetDefaultDevice">
            <summary>
            Returns the default device.
            </summary>
            <returns>The default device.</returns>
        </member>
        <member name="T:CSCore.WaveFormatExtensible">
            <summary>
                Defines the format of waveform-audio data for formats having more than two channels or higher sample resolutions
                than allowed by <see cref="T:CSCore.WaveFormat" />.
                Can be used to define any format that can be defined by <see cref="T:CSCore.WaveFormat" />.
                For more information see <see href="http://msdn.microsoft.com/en-us/library/windows/hardware/gg463006.aspx" /> and
                <see href="http://msdn.microsoft.com/en-us/library/windows/hardware/ff536383(v=vs.85).aspx" />.
            </summary>
        </member>
        <member name="M:CSCore.WaveFormatExtensible.SubTypeFromWaveFormat(CSCore.WaveFormat)">
            <summary>
                Returns the SubType-Guid of a <paramref name="waveFormat" />. If the specified <paramref name="waveFormat" /> does
                not contain a SubType-Guid, the <see cref="P:CSCore.WaveFormat.WaveFormatTag" /> gets converted to the equal SubType-Guid
                using the <see cref="M:CSCore.AudioSubTypes.SubTypeFromEncoding(CSCore.AudioEncoding)" /> method.
            </summary>
            <param name="waveFormat"><see cref="T:CSCore.WaveFormat" /> which gets used to determine the SubType-Guid.</param>
            <returns>SubType-Guid of the specified <paramref name="waveFormat" />.</returns>
        </member>
        <member name="P:CSCore.WaveFormatExtensible.ValidBitsPerSample">
            <summary>
                Gets the number of bits of precision in the signal.
                Usually equal to <see cref="P:CSCore.WaveFormat.BitsPerSample" />. However, <see cref="P:CSCore.WaveFormat.BitsPerSample" /> is the
                container size and must be a multiple of 8, whereas <see cref="P:CSCore.WaveFormatExtensible.ValidBitsPerSample" /> can be any value not
                exceeding the container size. For example, if the format uses 20-bit samples,
                <see cref="P:CSCore.WaveFormat.BitsPerSample" /> must be at least 24, but <see cref="P:CSCore.WaveFormatExtensible.ValidBitsPerSample" /> is 20.
            </summary>
        </member>
        <member name="P:CSCore.WaveFormatExtensible.SamplesPerBlock">
            <summary>
                Gets the number of samples contained in one compressed block of audio data. This value is used in buffer
                estimation. This value is used with compressed formats that have a fixed number of samples within each block. This
                value can be set to 0 if a variable number of samples is contained in each block of compressed audio data. In this
                case, buffer estimation and position information needs to be obtained in other ways.
            </summary>
        </member>
        <member name="P:CSCore.WaveFormatExtensible.ChannelMask">
            <summary>
                Gets a bitmask specifying the assignment of channels in the stream to speaker positions.
            </summary>
        </member>
        <member name="P:CSCore.WaveFormatExtensible.SubFormat">
            <summary>
                Subformat of the data, such as <see cref="F:CSCore.AudioSubTypes.Pcm" />. The subformat information is similar to
                that provided by the tag in the <see cref="T:CSCore.WaveFormat" /> class's <see cref="P:CSCore.WaveFormat.WaveFormatTag" /> member.
            </summary>
        </member>
        <member name="M:CSCore.WaveFormatExtensible.#ctor(System.Int32,System.Int32,System.Int32,System.Guid)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.WaveFormatExtensible" /> class.
            </summary>
            <param name="sampleRate">
                Samplerate of the waveform-audio. This value will get applied to the
                <see cref="P:CSCore.WaveFormat.SampleRate" /> property.
            </param>
            <param name="bits">
                Bits per sample of the waveform-audio. This value will get applied to the
                <see cref="P:CSCore.WaveFormat.BitsPerSample" /> property and the <see cref="P:CSCore.WaveFormatExtensible.ValidBitsPerSample" /> property.
            </param>
            <param name="channels">
                Number of channels of the waveform-audio. This value will get applied to the
                <see cref="P:CSCore.WaveFormat.Channels" /> property.
            </param>
            <param name="subFormat">Subformat of the data. This value will get applied to the <see cref="P:CSCore.WaveFormatExtensible.SubFormat" /> property.</param>
        </member>
        <member name="M:CSCore.WaveFormatExtensible.#ctor(System.Int32,System.Int32,System.Int32,System.Guid,CSCore.ChannelMask)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.WaveFormatExtensible" /> class.
            </summary>
            <param name="sampleRate">
                Samplerate of the waveform-audio. This value will get applied to the
                <see cref="P:CSCore.WaveFormat.SampleRate" /> property.
            </param>
            <param name="bits">
                Bits per sample of the waveform-audio. This value will get applied to the
                <see cref="P:CSCore.WaveFormat.BitsPerSample" /> property and the <see cref="P:CSCore.WaveFormatExtensible.ValidBitsPerSample" /> property.
            </param>
            <param name="channels">
                Number of channels of the waveform-audio. This value will get applied to the
                <see cref="P:CSCore.WaveFormat.Channels" /> property.
            </param>
            <param name="subFormat">Subformat of the data. This value will get applied to the <see cref="P:CSCore.WaveFormatExtensible.SubFormat" /> property.</param>
            <param name="channelMask">
                Bitmask specifying the assignment of channels in the stream to speaker positions. Thie value
                will get applied to the <see cref="P:CSCore.WaveFormatExtensible.ChannelMask" /> property.
            </param>
        </member>
        <member name="M:CSCore.WaveFormatExtensible.ToWaveFormat">
            <summary>
                Converts the <see cref="T:CSCore.WaveFormatExtensible" /> instance to a raw <see cref="T:CSCore.WaveFormat" /> instance by converting
                the <see cref="P:CSCore.WaveFormatExtensible.SubFormat" /> to the equal <see cref="P:CSCore.WaveFormat.WaveFormatTag" />.
            </summary>
            <returns>A simple <see cref="T:CSCore.WaveFormat"/> instance.</returns>
        </member>
        <member name="M:CSCore.WaveFormatExtensible.Clone">
            <summary>
            Creates a new <see cref="T:CSCore.WaveFormat" /> object that is a copy of the current instance.
            </summary>
            <returns>
            A copy of the current instance.
            </returns>
        </member>
        <member name="M:CSCore.WaveFormatExtensible.ToString">
            <summary>
                Returns a string which describes the <see cref="T:CSCore.WaveFormatExtensible" />.
            </summary>
            <returns>A string which describes the <see cref="T:CSCore.WaveFormatExtensible" />.</returns>
        </member>
        <member name="T:CSCore.ISampleSource">
            <summary>
                Defines the base for all audio streams which provide samples instead of raw byte data.
            </summary>
            <remarks>
                Compared to the <see cref="T:CSCore.IWaveSource" />, the <see cref="T:CSCore.ISampleSource" /> provides samples instead of raw bytes.
                That means that the <see cref="P:CSCore.IAudioSource.Length" /> and the <see cref="P:CSCore.IAudioSource.Position" /> properties
                are expressed in samples.
                Also the <see cref="M:CSCore.IReadableAudioSource`1.Read(`0[],System.Int32,System.Int32)" /> method provides samples instead of raw bytes.
            </remarks>
        </member>
        <member name="T:CSCore.ISampleAggregator">
            <summary>
                Defines the base for all <see cref="T:CSCore.ISampleSource" /> aggregators.
            </summary>
        </member>
        <member name="T:CSCore.IWaveAggregator">
            <summary>
                Defines the base for all <see cref="T:CSCore.IWaveSource" /> aggregators.
            </summary>
        </member>
        <member name="T:CSCore.IAggregator`2">
            <summary>
                Defines the base for all aggregators.
            </summary>
            <typeparam name="T">The type of data, the aggregator provides.</typeparam>
            <typeparam name="TAggregator">The type of the aggreator type.</typeparam>
        </member>
        <member name="P:CSCore.IAggregator`2.BaseSource">
            <summary>
                Gets the underlying <see cref="T:CSCore.IReadableAudioSource`1" />.
            </summary>
            <value>
                The underlying <see cref="T:CSCore.IReadableAudioSource`1" />.
            </value>
        </member>
        <member name="T:CSCore.IWaveSource">
            <summary>
                Defines the base for all audio streams which provide raw byte data.
            </summary>
            <remarks>
                Compared to the <see cref="T:CSCore.ISampleSource" />, the <see cref="T:CSCore.IWaveSource" /> provides raw bytes instead of samples.
                That means that the <see cref="P:CSCore.IAudioSource.Position" /> and the <see cref="P:CSCore.IAudioSource.Position" /> properties are
                expressed in bytes.
                Also the <see cref="M:CSCore.IReadableAudioSource`1.Read(`0[],System.Int32,System.Int32)" /> method provides samples instead of raw bytes.
            </remarks>
        </member>
        <member name="T:CSCore.IAudioSource">
            <summary>
                Defines the base for all audio streams.
            </summary>
        </member>
        <member name="P:CSCore.IAudioSource.CanSeek">
            <summary>
                Gets a value indicating whether the <see cref="T:CSCore.IAudioSource" /> supports seeking.
            </summary>
        </member>
        <member name="P:CSCore.IAudioSource.WaveFormat">
            <summary>
                Gets the <see cref="P:CSCore.IAudioSource.WaveFormat" /> of the waveform-audio data.
            </summary>
        </member>
        <member name="P:CSCore.IAudioSource.Position">
            <summary>
                Gets or sets the current position. The unit of this property depends on the implementation of this interface. Some
                implementations may not support this property.
            </summary>
        </member>
        <member name="P:CSCore.IAudioSource.Length">
            <summary>
                Gets the length of the waveform-audio data. The unit of this property depends on the implementation of this
                interface. Some implementations may not support this property.
            </summary>
        </member>
        <member name="T:CSCore.MmException">
            <summary>
                Exception class for all MM-APIs like waveOut or ACM.
            </summary>
        </member>
        <member name="M:CSCore.MmException.Try(CSCore.MmResult,System.String)">
            <summary>
                Throws an <see cref="T:CSCore.MmException" /> if the <paramref name="result" /> is not
                <see cref="F:CSCore.MmResult.NoError" />.
            </summary>
            <param name="result">Errorcode.</param>
            <param name="function">Name of the function which returned the specified <paramref name="result" />.</param>
        </member>
        <member name="P:CSCore.MmException.Result">
            <summary>
                Gets the <see cref="T:CSCore.MmResult" /> which describes the error.
            </summary>
        </member>
        <member name="P:CSCore.MmException.Target">
            <summary>
                Gets the name of the function which caused the error.
            </summary>
        </member>
        <member name="P:CSCore.MmException.Function">
            <summary>
                Gets the name of the function which caused the error.
            </summary>
        </member>
        <member name="M:CSCore.MmException.#ctor(CSCore.MmResult,System.String)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.MmException" /> class.
            </summary>
            <param name="result">Errorcode.</param>
            <param name="function">Name of the function which returned the specified <paramref name="result" />.</param>
        </member>
        <member name="M:CSCore.MmException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:CSCore.MmException"/> class from serialization data.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> object that holds the serialized object data.</param>
            <param name="context">The StreamingContext object that supplies the contextual information about the source or destination.</param>
        </member>
        <member name="M:CSCore.MmException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Populates a <see cref="T:System.Runtime.Serialization.SerializationInfo"/> with the data needed to serialize the target object.
            </summary>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> to populate with data.</param>
            <param name="context">The destination (see StreamingContext) for this serialization.</param>
        </member>
        <member name="T:CSCore.SampleAggregatorBase">
            <summary>
                Base class for most of the sample sources.
            </summary>
        </member>
        <member name="M:CSCore.SampleAggregatorBase.#ctor(CSCore.ISampleSource)">
            <summary>
                Creates a new instance of the <see cref="T:CSCore.SampleAggregatorBase" /> class.
            </summary>
            <param name="source">Underlying base source which provides audio data.</param>
        </member>
        <member name="M:CSCore.SampleAggregatorBase.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of samples from the <see cref="T:CSCore.SampleAggregatorBase" /> and advances the position within the stream by
                the number of samples read.
            </summary>
            <param name="buffer">
                An array of floats. When this method returns, the <paramref name="buffer" /> contains the specified
                float array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the floats read from the current source.
            </param>
            <param name="offset">
                The zero-based offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of samples to read from the current source.</param>
            <returns>The total number of samples read into the buffer.</returns>
        </member>
        <member name="P:CSCore.SampleAggregatorBase.WaveFormat">
            <summary>
                Gets the <see cref="P:CSCore.IAudioSource.WaveFormat" /> of the waveform-audio data.
            </summary>
        </member>
        <member name="P:CSCore.SampleAggregatorBase.Position">
            <summary>
                Gets or sets the position in samples.
            </summary>
        </member>
        <member name="P:CSCore.SampleAggregatorBase.Length">
            <summary>
                Gets the length in samples.
            </summary>
        </member>
        <member name="P:CSCore.SampleAggregatorBase.CanSeek">
            <summary>
            Gets a value indicating whether the <see cref="T:CSCore.IAudioSource"/> supports seeking.
            </summary>
        </member>
        <member name="P:CSCore.SampleAggregatorBase.BaseSource">
            <summary>
                Gets or sets the underlying sample source.
            </summary>
        </member>
        <member name="P:CSCore.SampleAggregatorBase.DisposeBaseSource">
            <summary>
                Gets or sets a value which indicates whether to dispose the <see cref="P:CSCore.SampleAggregatorBase.BaseSource" />
                on calling <see cref="M:CSCore.SampleAggregatorBase.Dispose(System.Boolean)" />.
            </summary>
        </member>
        <member name="M:CSCore.SampleAggregatorBase.Dispose">
            <summary>
                Disposes the <see cref="T:CSCore.SampleAggregatorBase" /> and the underlying <see cref="P:CSCore.SampleAggregatorBase.BaseSource" />.
            </summary>
        </member>
        <member name="M:CSCore.SampleAggregatorBase.Dispose(System.Boolean)">
            <summary>
                Disposes the <see cref="T:CSCore.SampleAggregatorBase" /> and the underlying <see cref="P:CSCore.SampleAggregatorBase.BaseSource" />.
            </summary>
            <param name="disposing">
                True to release both managed and unmanaged resources; false to release only unmanaged
                resources.
            </param>
        </member>
        <member name="M:CSCore.SampleAggregatorBase.Finalize">
            <summary>
                Destructor which calls <see cref="M:CSCore.SampleAggregatorBase.Dispose(System.Boolean)" />.
            </summary>
        </member>
        <member name="T:CSCore.Extensions">
            <summary>
                Provides a few basic extensions.
            </summary>
        </member>
        <member name="M:CSCore.Extensions.GetLength(CSCore.IAudioSource)">
            <summary>
                Gets the length of a <see cref="T:CSCore.IAudioSource"/> as a <see cref="T:System.TimeSpan"/>.
            </summary>
            <param name="source">The source to get the length for.</param>
            <returns>The length of the specified <paramref name="source"/> as a <see cref="T:System.TimeSpan"/> value.</returns>
        </member>
        <member name="M:CSCore.Extensions.GetPosition(CSCore.IAudioSource)">
            <summary>
                Gets the position of a <see cref="T:CSCore.IAudioSource"/> as a <see cref="T:System.TimeSpan"/> value.
            </summary>
            <param name="source">The source to get the position of.</param>
            <returns>The position of the specified <paramref name="source"/> as a <see cref="T:System.TimeSpan"/> value.</returns>
            <remarks>The source must support seeking to get or set the position. 
            Use the <see cref="P:CSCore.IAudioSource.CanSeek"/> property to determine whether the stream supports seeking.
            Otherwise a call to this method may result in an exception.</remarks>
        </member>
        <member name="M:CSCore.Extensions.SetPosition(CSCore.IAudioSource,System.TimeSpan)">
            <summary>
                Sets the position of a <see cref="T:CSCore.IAudioSource"/> as a <see cref="T:System.TimeSpan"/> value.
            </summary>
            <param name="source">The source to set the new position for.</param>
            <param name="position">The new position as a <see cref="T:System.TimeSpan"/> value.</param>
            <remarks>
            The source must support seeking to get or set the position. 
            Use the <see cref="P:CSCore.IAudioSource.CanSeek"/> property to determine whether the stream supports seeking.
            Otherwise a call to this method may result in an exception.
            </remarks>
        </member>
        <member name="M:CSCore.Extensions.GetTime(CSCore.IAudioSource,System.Int64)">
            <summary>
            Converts a duration in raw elements to a <see cref="T:System.TimeSpan"/> value. For more information about "raw elements" see remarks.
            </summary>
            <param name="source">The <see cref="T:CSCore.IAudioSource"/> instance which provides the <see cref="T:CSCore.WaveFormat"/> used 
            to convert the duration in "raw elements" to a <see cref="T:System.TimeSpan"/> value.</param>
            <param name="elementCount">The duration in "raw elements" to convert to a <see cref="T:System.TimeSpan"/> value.</param>
            <returns>The duration as a <see cref="T:System.TimeSpan"/> value.</returns>
            <exception cref="T:System.ArgumentNullException">
            source
            or
            elementCount
            </exception>
            <remarks>
            The term "raw elements" describes the elements, an audio source uses. 
            What type of unit an implementation of the <see cref="T:CSCore.IAudioSource"/> interface uses, depends on the implementation itself.
            For example, a <see cref="T:CSCore.IWaveSource"/> uses bytes while a <see cref="T:CSCore.ISampleSource"/> uses samples. 
            That means that a <see cref="T:CSCore.IWaveSource"/> provides its position, length,... in bytes 
            while a <see cref="T:CSCore.ISampleSource"/> provides its position, length,... in samples.
            <para></para>
            To get the length or the position of a <see cref="T:CSCore.IAudioSource"/> as a <see cref="T:System.TimeSpan"/> value, use the 
            <see cref="M:CSCore.Extensions.GetLength(CSCore.IAudioSource)"/> or the <see cref="M:CSCore.Extensions.GetPosition(CSCore.IAudioSource)"/> property.
            <para></para><para></para>
            Internally this method uses the <see cref="T:CSCore.TimeConverterFactory"/> class.
            </remarks>
        </member>
        <member name="M:CSCore.Extensions.GetMilliseconds(CSCore.IAudioSource,System.Int64)">
            <summary>
            Converts a duration in raw elements to a duration in milliseconds. For more information about "raw elements" see remarks.
            </summary>
            <param name="source">The <see cref="T:CSCore.IAudioSource"/> instance which provides the <see cref="T:CSCore.WaveFormat"/> used 
            to convert the duration in "raw elements" to a duration in milliseconds.</param>
            <param name="elementCount">The duration in "raw elements" to convert to duration in milliseconds.</param>
            <returns>The duration in milliseconds.</returns>
            <exception cref="T:System.ArgumentNullException">
            source
            or
            elementCount
            </exception>
            <remarks>
            The term "raw elements" describes the elements, an audio source uses. 
            What type of unit an implementation of the <see cref="T:CSCore.IAudioSource"/> interface uses, depends on the implementation itself.
            For example, a <see cref="T:CSCore.IWaveSource"/> uses bytes while a <see cref="T:CSCore.ISampleSource"/> uses samples. 
            That means that a <see cref="T:CSCore.IWaveSource"/> provides its position, length,... in bytes 
            while a <see cref="T:CSCore.ISampleSource"/> provides its position, length,... in samples.
            <para></para>
            To get the length or the position of a <see cref="T:CSCore.IAudioSource"/> as a <see cref="T:System.TimeSpan"/> value, use the 
            <see cref="M:CSCore.Extensions.GetLength(CSCore.IAudioSource)"/> or the <see cref="M:CSCore.Extensions.GetPosition(CSCore.IAudioSource)"/> property.
            <para></para><para></para>
            Internally this method uses the <see cref="T:CSCore.TimeConverterFactory"/> class.
            </remarks>
        </member>
        <member name="M:CSCore.Extensions.GetRawElements(CSCore.IAudioSource,System.TimeSpan)">
            <summary>
                Converts a duration as a <see cref="T:System.TimeSpan" /> to a duration in "raw elements". For more information about "raw elements" see remarks.
            </summary>
            <param name="source">
                <see cref="T:CSCore.IWaveSource" /> instance which provides the <see cref="T:CSCore.WaveFormat" /> used to convert
                the duration as a <see cref="T:System.TimeSpan" /> to a duration in "raw elements".
            </param>
            <param name="timespan">Duration as a <see cref="T:System.TimeSpan" /> to convert to a duration in "raw elements".</param>
            <returns>Duration in "raw elements".</returns>
            <exception cref="T:System.ArgumentNullException">source</exception>
            <remarks>
            The term "raw elements" describes the elements, an audio source uses. 
            What type of unit an implementation of the <see cref="T:CSCore.IAudioSource"/> interface uses, depends on the implementation itself.
            For example, a <see cref="T:CSCore.IWaveSource"/> uses bytes while a <see cref="T:CSCore.ISampleSource"/> uses samples. 
            That means that a <see cref="T:CSCore.IWaveSource"/> provides its position, length,... in bytes 
            while a <see cref="T:CSCore.ISampleSource"/> provides its position, length,... in samples.
            <para></para>
            To get the length or the position of a <see cref="T:CSCore.IAudioSource"/> as a <see cref="T:System.TimeSpan"/> value, use the 
            <see cref="M:CSCore.Extensions.GetLength(CSCore.IAudioSource)"/> or the <see cref="M:CSCore.Extensions.GetPosition(CSCore.IAudioSource)"/> property.
            <para></para><para></para>
            Internally this method uses the <see cref="T:CSCore.TimeConverterFactory"/> class.
            </remarks>
        </member>
        <member name="M:CSCore.Extensions.GetRawElements(CSCore.IAudioSource,System.Int64)">
            <summary>
            Converts a duration in milliseconds to a duration in "raw elements". For more information about "raw elements" see remarks.
            </summary>
            <param name="source"><see cref="T:CSCore.IWaveSource" /> instance which provides the <see cref="T:CSCore.WaveFormat" /> used to convert
            the duration in milliseconds to a duration in "raw elements".</param>
            <param name="milliseconds">Duration in milliseconds to convert to a duration in "raw elements".</param>
            <returns>
            Duration in "raw elements".
            </returns>
            <remarks>
            The term "raw elements" describes the elements, an audio source uses. 
            What type of unit an implementation of the <see cref="T:CSCore.IAudioSource"/> interface uses, depends on the implementation itself.
            For example, a <see cref="T:CSCore.IWaveSource"/> uses bytes while a <see cref="T:CSCore.ISampleSource"/> uses samples. 
            That means that a <see cref="T:CSCore.IWaveSource"/> provides its position, length,... in bytes 
            while a <see cref="T:CSCore.ISampleSource"/> provides its position, length,... in samples.
            <para></para>
            To get the length or the position of a <see cref="T:CSCore.IAudioSource"/> as a <see cref="T:System.TimeSpan"/> value, use the 
            <see cref="M:CSCore.Extensions.GetLength(CSCore.IAudioSource)"/> or the <see cref="M:CSCore.Extensions.GetPosition(CSCore.IAudioSource)"/> property.
            <para></para><para></para>
            Internally this method uses the <see cref="T:CSCore.TimeConverterFactory"/> class.
            </remarks>
            <exception cref="T:System.ArgumentNullException">source</exception>
            <exception cref="T:System.ArgumentOutOfRangeException">milliseconds is less than zero.</exception>
        </member>
        <member name="M:CSCore.Extensions.WriteToFile(CSCore.IWaveSource,System.String)">
            <summary>
            Creates a new file, writes all audio data of the <paramref name="source" /> to the file, and then closes the file. If the target file already exists, it is overwritten.
            </summary>
            <param name="source">Source which provides the audio data to write to the file.</param>
            <param name="filename">The file to write to.</param>
            <exception cref="T:System.ArgumentNullException">source</exception>
        </member>
        <member name="M:CSCore.Extensions.WriteToWaveStream(CSCore.IWaveSource,System.IO.Stream)">
            <summary>
            Writes all audio data of the <paramref name="source" /> to a wavestream (including a wav header).
            </summary>
            <param name="source">Source which provides the audio data to write to the <paramref name="stream" />.</param>
            <param name="stream"><see cref="T:System.IO.Stream" /> to store the audio data in.</param>
            <exception cref="T:System.ArgumentNullException">
            source
            or
            stream
            </exception>
            <exception cref="T:System.ArgumentException">Stream is not writeable.;stream</exception>
        </member>
        <member name="M:CSCore.Extensions.WriteToStream(CSCore.IWaveSource,System.IO.Stream)">
            <summary>
            Writes all audio data of the <paramref name="waveSource"/> to a stream. In comparison to the <see cref="M:CSCore.Extensions.WriteToWaveStream(CSCore.IWaveSource,System.IO.Stream)"/> method, 
            the <see cref="M:CSCore.Extensions.WriteToStream(CSCore.IWaveSource,System.IO.Stream)"/> method won't encode the provided audio to any particular format. No wav, aiff,... header won't be included.
            </summary>
            <param name="waveSource">The waveSource which provides the audio data to write to the <paramref name="stream"/>.</param>
            <param name="stream">The <see cref="T:System.IO.Stream"/> to store the audio data in.</param>
            <exception cref="T:System.ArgumentNullException">
            waveSource
            or
            stream
            </exception>
            <exception cref="T:System.ArgumentException">Stream is not writeable.;stream</exception>
        </member>
        <member name="M:CSCore.Extensions.CheckBuffer``1(``0[],System.Int64,System.Boolean)">
            <summary>
            Checks the length of an array.
            </summary>
            <typeparam name="T">Type of the array.</typeparam>
            <param name="inst">The array to check. This parameter can be null.</param>
            <param name="size">The target length of the array.</param>
            <param name="exactSize">A value which indicates whether the length of the array has to fit exactly the specified <paramref name="size"/>.</param>
            <returns>Array which fits the specified requirements. Note that if a new array got created, the content of the old array won't get copied to the return value.</returns>
        </member>
        <member name="M:CSCore.Extensions.WaitForStopped(CSCore.SoundOut.ISoundOut,System.Int32)">
            <summary>
                Blocks the current thread until the playback of the specified <paramref name="soundOut"/> instance stops or the specified timeout expires. 
            </summary>
            <param name="soundOut">The <see cref="T:CSCore.SoundOut.ISoundOut"/> instance to wait for its playback to stop.</param>
            <param name="millisecondsTimeout">The number of milliseconds to wait. Pass <see cref="F:System.Threading.Timeout.Infinite"/> to wait indefinitely.</param>
            <returns><c>true</c> if the <paramref name="soundOut"/> got stopped; <c>false</c> if the specified <paramref name="millisecondsTimeout"/> expired.</returns>
        </member>
        <member name="M:CSCore.Extensions.WaitForStopped(CSCore.SoundOut.ISoundOut)">
            <summary>
                Blocks the current thread until the playback of the specified <paramref name="soundOut"/> instance stops. 
            </summary>
            <param name="soundOut">The <see cref="T:CSCore.SoundOut.ISoundOut"/> instance to wait for its playback to stop.</param>
        </member>
        <member name="T:CSCore.WaveAggregatorBase">
            <summary>
                Base class for all wave aggregators.
            </summary>
        </member>
        <member name="M:CSCore.WaveAggregatorBase.#ctor">
            <summary>
                Creates a new instance of <see cref="T:CSCore.WaveAggregatorBase"/> class.
            </summary>
        </member>
        <member name="M:CSCore.WaveAggregatorBase.#ctor(CSCore.IWaveSource)">
            <summary>
                Creates a new instance of <see cref="T:CSCore.WaveAggregatorBase"/> class.
            </summary>
            <param name="baseSource">Underlying base stream.</param>
        </member>
        <member name="P:CSCore.WaveAggregatorBase.DisposeBaseSource">
            <summary>
                Gets or sets a value which indicates whether to dispose the <see cref="P:CSCore.WaveAggregatorBase.BaseSource" />
                on calling <see cref="M:CSCore.WaveAggregatorBase.Dispose(System.Boolean)" />.
            </summary>
        </member>
        <member name="P:CSCore.WaveAggregatorBase.BaseSource">
            <summary>
                Gets or sets the underlying base stream of the WaveAggregator.
            </summary>
        </member>
        <member name="P:CSCore.WaveAggregatorBase.WaveFormat">
            <summary>
                Gets the output WaveFormat.
            </summary>
        </member>
        <member name="M:CSCore.WaveAggregatorBase.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
                Reads a sequence of bytes from the <see cref="P:CSCore.WaveAggregatorBase.BaseSource"/> and advances the position within the stream by the
                number of bytes read.
            </summary>
            <param name="buffer">
                An array of bytes. When this method returns, the <paramref name="buffer" /> contains the specified
                byte array with the values between <paramref name="offset" /> and (<paramref name="offset" /> +
                <paramref name="count" /> - 1) replaced by the bytes read from the current source.
            </param>
            <param name="offset">
                The zero-based byte offset in the <paramref name="buffer" /> at which to begin storing the data
                read from the current stream.
            </param>
            <param name="count">The maximum number of bytes to read from the current source.</param>
            <returns>The total number of bytes read into the buffer.</returns>
        </member>
        <member name="P:CSCore.WaveAggregatorBase.Position">
            <summary>
                Gets or sets the position of the source.
            </summary>
        </member>
        <member name="P:CSCore.WaveAggregatorBase.Length">
            <summary>
                Gets the length of the source.
            </summary>
        </member>
        <member name="P:CSCore.WaveAggregatorBase.CanSeek">
            <summary>
            Gets a value indicating whether the <see cref="T:CSCore.IAudioSource"/> supports seeking.
            </summary>
        </member>
        <member name="M:CSCore.WaveAggregatorBase.Dispose">
            <summary>
                Disposes the source and releases all allocated resources.
            </summary>
        </member>
        <member name="M:CSCore.WaveAggregatorBase.Dispose(System.Boolean)">
            <summary>
                Disposes the <see cref="P:CSCore.WaveAggregatorBase.BaseSource" /> and releases all allocated resources.
            </summary>
            <param name="disposing">True to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
        </member>
        <member name="M:CSCore.WaveAggregatorBase.Finalize">
            <summary>
                Destructor which calls <see cref="M:CSCore.WaveAggregatorBase.Dispose(System.Boolean)" />.
            </summary>
        </member>
        <member name="T:CSCore.WaveFormat">
            <summary>
                Defines the format of waveform-audio data.
            </summary>
        </member>
        <member name="P:CSCore.WaveFormat.Channels">
            <summary>
                Gets the number of channels in the waveform-audio data. Mono data uses one channel and stereo data uses two
                channels.
            </summary>
        </member>
        <member name="P:CSCore.WaveFormat.SampleRate">
            <summary>
                Gets the sample rate, in samples per second (hertz).
            </summary>
        </member>
        <member name="P:CSCore.WaveFormat.BytesPerSecond">
            <summary>
                Gets the required average data transfer rate, in bytes per second. For example, 16-bit stereo at 44.1 kHz has an
                average data rate of 176,400 bytes per second (2 channels — 2 bytes per sample per channel — 44,100 samples per
                second).
            </summary>
        </member>
        <member name="P:CSCore.WaveFormat.BlockAlign">
            <summary>
                Gets the block alignment, in bytes. The block alignment is the minimum atomic unit of data. For PCM data, the block
                alignment is the number of bytes used by a single sample, including data for both channels if the data is stereo.
                For example, the block alignment for 16-bit stereo PCM is 4 bytes (2 channels x 2 bytes per sample).
            </summary>
        </member>
        <member name="P:CSCore.WaveFormat.BitsPerSample">
            <summary>
                Gets the number of bits, used to store one sample.
            </summary>
        </member>
        <member name="P:CSCore.WaveFormat.ExtraSize">
            <summary>
                Gets the size (in bytes) of extra information. This value is mainly used for marshalling.
            </summary>
        </member>
        <member name="P:CSCore.WaveFormat.BytesPerSample">
            <summary>
                Gets the number of bytes, used to store one sample.
            </summary>
        </member>
        <member name="P:CSCore.WaveFormat.BytesPerBlock">
            <summary>
                Gets the number of bytes, used to store one block. This value equals <see cref="P:CSCore.WaveFormat.BytesPerSample" /> multiplied with
                <see cref="P:CSCore.WaveFormat.Channels" />.
            </summary>
        </member>
        <member name="P:CSCore.WaveFormat.WaveFormatTag">
            <summary>
                Gets the waveform-audio format type.
            </summary>
        </member>
        <member name="M:CSCore.WaveFormat.#ctor">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.WaveFormat" /> class with a sample rate of 44100 Hz, bits per sample
                of 16 bit, 2 channels and PCM as the format type.
            </summary>
        </member>
        <member name="M:CSCore.WaveFormat.#ctor(System.Int32,System.Int32,System.Int32)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.WaveFormat" /> class with PCM as the format type.
            </summary>
            <param name="sampleRate">Samples per second.</param>
            <param name="bits">Number of bits, used to store one sample.</param>
            <param name="channels">Number of channels in the waveform-audio data.</param>
        </member>
        <member name="M:CSCore.WaveFormat.#ctor(System.Int32,System.Int32,System.Int32,CSCore.AudioEncoding)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.WaveFormat" /> class.
            </summary>
            <param name="sampleRate">Samples per second.</param>
            <param name="bits">Number of bits, used to store one sample.</param>
            <param name="channels">Number of channels in the waveform-audio data.</param>
            <param name="encoding">Format type or encoding of the wave format.</param>
        </member>
        <member name="M:CSCore.WaveFormat.#ctor(System.Int32,System.Int32,System.Int32,CSCore.AudioEncoding,System.Int32)">
            <summary>
                Initializes a new instance of the <see cref="T:CSCore.WaveFormat" /> class.
            </summary>
            <param name="sampleRate">Samples per second.</param>
            <param name="bits">Number of bits, used to store one sample.</param>
            <param name="channels">Number of channels in the waveform-audio data.</param>
            <param name="encoding">Format type or encoding of the wave format.</param>
            <param name="extraSize">Size (in bytes) of extra information. This value is mainly used for marshalling.</param>
        </member>
        <member name="M:CSCore.WaveFormat.MillisecondsToBytes(System.Double)">
            <summary>
                Converts a duration in milliseconds to a duration in bytes.
            </summary>
            <param name="milliseconds">Duration in millisecond to convert to a duration in bytes.</param>
            <returns>Duration in bytes.</returns>
        </member>
        <member name="M:CSCore.WaveFormat.BytesToMilliseconds(System.Int64)">
            <summary>
                Converts a duration in bytes to a duration in milliseconds.
            </summary>
            <param name="bytes">Duration in bytes to convert to a duration in milliseconds.</param>
            <returns>Duration in milliseconds.</returns>
        </member>
        <member name="M:CSCore.WaveFormat.Equals(CSCore.WaveFormat)">
            <summary>
            Indicates whether the current object is equal to another object of the same type.
            </summary>
            <param name="other">The <see cref="T:CSCore.WaveFormat"/> to compare with this <see cref="T:CSCore.WaveFormat"/>.</param>
            <returns>true if the current object is equal to the other parameter; otherwise, false.</returns>
        </member>
        <member name="M:CSCore.WaveFormat.ToString">
            <summary>
                Returns a string which describes the <see cref="T:CSCore.WaveFormat" />.
            </summary>
            <returns>A string which describes the <see cref="T:CSCore.WaveFormat" />.</returns>
        </member>
        <member name="M:CSCore.WaveFormat.Clone">
            <summary>
                Creates a new <see cref="T:CSCore.WaveFormat" /> object that is a copy of the current instance.
            </summary>
            <returns>A copy of the current instance.</returns>
        </member>
        <member name="M:CSCore.WaveFormat.UpdateProperties">
            <summary>
            Updates the <see cref="P:CSCore.WaveFormat.BlockAlign"/>- and the <see cref="P:CSCore.WaveFormat.BytesPerSecond"/>-property.
            </summary>
        </member>
    </members>
</doc>
