<?xml version="1.0"?>
<doc>
    <assembly>
        <name>NAudio</name>
    </assembly>
    <members>
        <member name="T:NAudio.Codecs.ALawDecoder">
            <summary>
            a-law decoder
            based on code from:
            http://hazelware.luggle.com/tutorials/mulawcompression.html
            </summary>
        </member>
        <member name="F:NAudio.Codecs.ALawDecoder.ALawDecompressTable">
            <summary>
            only 512 bytes required, so just use a lookup
            </summary>
        </member>
        <member name="M:NAudio.Codecs.ALawDecoder.ALawToLinearSample(System.Byte)">
            <summary>
            Converts an a-law encoded byte to a 16 bit linear sample
            </summary>
            <param name="aLaw">a-law encoded byte</param>
            <returns>Linear sample</returns>
        </member>
        <member name="T:NAudio.Codecs.ALawEncoder">
            <summary>
            A-law encoder
            </summary>
        </member>
        <member name="M:NAudio.Codecs.ALawEncoder.LinearToALawSample(System.Int16)">
            <summary>
            Encodes a single 16 bit sample to a-law
            </summary>
            <param name="sample">16 bit PCM sample</param>
            <returns>a-law encoded byte</returns>
        </member>
        <member name="T:NAudio.Codecs.G722Codec">
            <summary>
            SpanDSP - a series of DSP components for telephony
            
            g722_decode.c - The ITU G.722 codec, decode part.
            
            Written by Steve Underwood &lt;steveu@coppice.org&gt;
            
            Copyright (C) 2005 Steve Underwood
            Ported to C# by Mark Heath 2011
            
            Despite my general liking of the GPL, I place my own contributions 
            to this code in the public domain for the benefit of all mankind -
            even the slimy ones who might try to proprietize my work and use it
            to my detriment.
             
            Based in part on a single channel G.722 codec which is:
            Copyright (c) CMU 1993
            Computer Science, Speech Group
            Chengxiang Lu and Alex Hauptmann
            </summary>
        </member>
        <member name="M:NAudio.Codecs.G722Codec.Saturate(System.Int32)">
            <summary>
            hard limits to 16 bit samples
            </summary>
        </member>
        <member name="M:NAudio.Codecs.G722Codec.Decode(NAudio.Codecs.G722CodecState,System.Int16[],System.Byte[],System.Int32)">
            <summary>
            Decodes a buffer of G722
            </summary>
            <param name="state">Codec state</param>
            <param name="outputBuffer">Output buffer (to contain decompressed PCM samples)</param>
            <param name="inputG722Data"></param>
            <param name="inputLength">Number of bytes in input G722 data to decode</param>
            <returns>Number of samples written into output buffer</returns>
        </member>
        <member name="M:NAudio.Codecs.G722Codec.Encode(NAudio.Codecs.G722CodecState,System.Byte[],System.Int16[],System.Int32)">
            <summary>
            Encodes a buffer of G722
            </summary>
            <param name="state">Codec state</param>
            <param name="outputBuffer">Output buffer (to contain encoded G722)</param>
            <param name="inputBuffer">PCM 16 bit samples to encode</param>
            <param name="inputBufferCount">Number of samples in the input buffer to encode</param>
            <returns>Number of encoded bytes written into output buffer</returns>
        </member>
        <member name="T:NAudio.Codecs.G722CodecState">
            <summary>
            Stores state to be used between calls to Encode or Decode
            </summary>
        </member>
        <member name="P:NAudio.Codecs.G722CodecState.ItuTestMode">
            <summary>
            ITU Test Mode
            TRUE if the operating in the special ITU test mode, with the band split filters disabled.
            </summary>
        </member>
        <member name="P:NAudio.Codecs.G722CodecState.Packed">
            <summary>
            TRUE if the G.722 data is packed
            </summary>
        </member>
        <member name="P:NAudio.Codecs.G722CodecState.EncodeFrom8000Hz">
            <summary>
            8kHz Sampling
            TRUE if encode from 8k samples/second
            </summary>
        </member>
        <member name="P:NAudio.Codecs.G722CodecState.BitsPerSample">
            <summary>
            Bits Per Sample
            6 for 48000kbps, 7 for 56000kbps, or 8 for 64000kbps.
            </summary>
        </member>
        <member name="P:NAudio.Codecs.G722CodecState.QmfSignalHistory">
            <summary>
            Signal history for the QMF (x)
            </summary>
        </member>
        <member name="P:NAudio.Codecs.G722CodecState.Band">
            <summary>
            Band
            </summary>
        </member>
        <member name="P:NAudio.Codecs.G722CodecState.InBuffer">
            <summary>
            In bit buffer
            </summary>
        </member>
        <member name="P:NAudio.Codecs.G722CodecState.InBits">
            <summary>
            Number of bits in InBuffer
            </summary>
        </member>
        <member name="P:NAudio.Codecs.G722CodecState.OutBuffer">
            <summary>
            Out bit buffer
            </summary>
        </member>
        <member name="P:NAudio.Codecs.G722CodecState.OutBits">
            <summary>
            Number of bits in OutBuffer
            </summary>
        </member>
        <member name="M:NAudio.Codecs.G722CodecState.#ctor(System.Int32,NAudio.Codecs.G722Flags)">
            <summary>
            Creates a new instance of G722 Codec State for a 
            new encode or decode session
            </summary>
            <param name="rate">Bitrate (typically 64000)</param>
            <param name="options">Special options</param>
        </member>
        <member name="T:NAudio.Codecs.Band">
            <summary>
            Band data for G722 Codec
            </summary>
        </member>
        <member name="F:NAudio.Codecs.Band.s">
            <summary>s</summary>
        </member>
        <member name="F:NAudio.Codecs.Band.sp">
            <summary>sp</summary>
        </member>
        <member name="F:NAudio.Codecs.Band.sz">
            <summary>sz</summary>
        </member>
        <member name="F:NAudio.Codecs.Band.r">
            <summary>r</summary>
        </member>
        <member name="F:NAudio.Codecs.Band.a">
            <summary>a</summary>
        </member>
        <member name="F:NAudio.Codecs.Band.ap">
            <summary>ap</summary>
        </member>
        <member name="F:NAudio.Codecs.Band.p">
            <summary>p</summary>
        </member>
        <member name="F:NAudio.Codecs.Band.d">
            <summary>d</summary>
        </member>
        <member name="F:NAudio.Codecs.Band.b">
            <summary>b</summary>
        </member>
        <member name="F:NAudio.Codecs.Band.bp">
            <summary>bp</summary>
        </member>
        <member name="F:NAudio.Codecs.Band.sg">
            <summary>sg</summary>
        </member>
        <member name="F:NAudio.Codecs.Band.nb">
            <summary>nb</summary>
        </member>
        <member name="F:NAudio.Codecs.Band.det">
            <summary>det</summary>
        </member>
        <member name="T:NAudio.Codecs.G722Flags">
            <summary>
            G722 Flags
            </summary>
        </member>
        <member name="F:NAudio.Codecs.G722Flags.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:NAudio.Codecs.G722Flags.SampleRate8000">
            <summary>
            Using a G722 sample rate of 8000
            </summary>
        </member>
        <member name="F:NAudio.Codecs.G722Flags.Packed">
            <summary>
            Packed
            </summary>
        </member>
        <member name="T:NAudio.Codecs.MuLawDecoder">
            <summary>
            mu-law decoder
            based on code from:
            http://hazelware.luggle.com/tutorials/mulawcompression.html
            </summary>
        </member>
        <member name="F:NAudio.Codecs.MuLawDecoder.MuLawDecompressTable">
            <summary>
            only 512 bytes required, so just use a lookup
            </summary>
        </member>
        <member name="M:NAudio.Codecs.MuLawDecoder.MuLawToLinearSample(System.Byte)">
            <summary>
            Converts a mu-law encoded byte to a 16 bit linear sample
            </summary>
            <param name="muLaw">mu-law encoded byte</param>
            <returns>Linear sample</returns>
        </member>
        <member name="T:NAudio.Codecs.MuLawEncoder">
            <summary>
            mu-law encoder
            based on code from:
            http://hazelware.luggle.com/tutorials/mulawcompression.html
            </summary>
        </member>
        <member name="M:NAudio.Codecs.MuLawEncoder.LinearToMuLawSample(System.Int16)">
            <summary>
            Encodes a single 16 bit sample to mu-law
            </summary>
            <param name="sample">16 bit PCM sample</param>
            <returns>mu-law encoded byte</returns>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioCaptureClient">
            <summary>
            Audio Capture Client
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioCaptureClient.GetBuffer(System.Int32@,NAudio.CoreAudioApi.AudioClientBufferFlags@,System.Int64@,System.Int64@)">
            <summary>
            Gets a pointer to the buffer
            </summary>
            <returns>Pointer to the buffer</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioCaptureClient.GetBuffer(System.Int32@,NAudio.CoreAudioApi.AudioClientBufferFlags@)">
            <summary>
            Gets a pointer to the buffer
            </summary>
            <param name="numFramesToRead">Number of frames to read</param>
            <param name="bufferFlags">Buffer flags</param>
            <returns>Pointer to the buffer</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioCaptureClient.GetNextPacketSize">
            <summary>
            Gets the size of the next packet
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioCaptureClient.ReleaseBuffer(System.Int32)">
            <summary>
            Release buffer
            </summary>
            <param name="numFramesWritten">Number of frames written</param>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioCaptureClient.Dispose">
            <summary>
            Release the COM object
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioClient">
            <summary>
            Windows CoreAudio AudioClient
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioClient.MixFormat">
            <summary>
            Retrieves the stream format that the audio engine uses for its internal processing of shared-mode streams.
            Can be called before initialize
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioClient.Initialize(NAudio.CoreAudioApi.AudioClientShareMode,NAudio.CoreAudioApi.AudioClientStreamFlags,System.Int64,System.Int64,NAudio.Wave.WaveFormat,System.Guid)">
            <summary>
            Initializes the Audio Client
            </summary>
            <param name="shareMode">Share Mode</param>
            <param name="streamFlags">Stream Flags</param>
            <param name="bufferDuration">Buffer Duration</param>
            <param name="periodicity">Periodicity</param>
            <param name="waveFormat">Wave Format</param>
            <param name="audioSessionGuid">Audio Session GUID (can be null)</param>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioClient.BufferSize">
            <summary>
            Retrieves the size (maximum capacity) of the audio buffer associated with the endpoint. (must initialize first)
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioClient.StreamLatency">
            <summary>
            Retrieves the maximum latency for the current stream and can be called any time after the stream has been initialized.
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioClient.CurrentPadding">
            <summary>
            Retrieves the number of frames of padding in the endpoint buffer (must initialize first)
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioClient.DefaultDevicePeriod">
            <summary>
            Retrieves the length of the periodic interval separating successive processing passes by the audio engine on the data in the endpoint buffer.
            (can be called before initialize)
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioClient.MinimumDevicePeriod">
            <summary>
            Gets the minimum device period 
            (can be called before initialize)
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioClient.AudioStreamVolume">
            <summary>
            Returns the AudioStreamVolume service for this AudioClient.
            </summary>
            <remarks>
            This returns the AudioStreamVolume object ONLY for shared audio streams.
            </remarks>
            <exception cref="T:System.InvalidOperationException">
            This is thrown when an exclusive audio stream is being used.
            </exception>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioClient.AudioClockClient">
            <summary>
            Gets the AudioClockClient service
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioClient.AudioRenderClient">
            <summary>
            Gets the AudioRenderClient service
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioClient.AudioCaptureClient">
            <summary>
            Gets the AudioCaptureClient service
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioClient.IsFormatSupported(NAudio.CoreAudioApi.AudioClientShareMode,NAudio.Wave.WaveFormat)">
            <summary>
            Determines whether if the specified output format is supported
            </summary>
            <param name="shareMode">The share mode.</param>
            <param name="desiredFormat">The desired format.</param>
            <returns>True if the format is supported</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioClient.IsFormatSupported(NAudio.CoreAudioApi.AudioClientShareMode,NAudio.Wave.WaveFormat,NAudio.Wave.WaveFormatExtensible@)">
            <summary>
            Determines if the specified output format is supported in shared mode
            </summary>
            <param name="shareMode">Share Mode</param>
            <param name="desiredFormat">Desired Format</param>
            <param name="closestMatchFormat">Output The closest match format.</param>
            <returns>True if the format is supported</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioClient.Start">
            <summary>
            Starts the audio stream
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioClient.Stop">
            <summary>
            Stops the audio stream.
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioClient.SetEventHandle(System.IntPtr)">
            <summary>
            Set the Event Handle for buffer synchro.
            </summary>
            <param name="eventWaitHandle">The Wait Handle to setup</param>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioClient.Reset">
            <summary>
            Resets the audio stream
            Reset is a control method that the client calls to reset a stopped audio stream. 
            Resetting the stream flushes all pending data and resets the audio clock stream 
            position to 0. This method fails if it is called on a stream that is not stopped
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioClient.Dispose">
            <summary>
            Dispose
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioClientBufferFlags">
            <summary>
            Audio Client Buffer Flags
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioClientBufferFlags.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioClientBufferFlags.DataDiscontinuity">
            <summary>
            AUDCLNT_BUFFERFLAGS_DATA_DISCONTINUITY
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioClientBufferFlags.Silent">
            <summary>
            AUDCLNT_BUFFERFLAGS_SILENT
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioClientBufferFlags.TimestampError">
            <summary>
            AUDCLNT_BUFFERFLAGS_TIMESTAMP_ERROR
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioClientProperties">
            <summary>
            The AudioClientProperties structure is used to set the parameters that describe the properties of the client's audio stream.
            </summary>
            <remarks>http://msdn.microsoft.com/en-us/library/windows/desktop/hh968105(v=vs.85).aspx</remarks>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioClientProperties.cbSize">
            <summary>
            The size of the buffer for the audio stream.
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioClientProperties.bIsOffload">
            <summary>
            Boolean value to indicate whether or not the audio stream is hardware-offloaded
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioClientProperties.eCategory">
            <summary>
            An enumeration that is used to specify the category of the audio stream.
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioClientProperties.Options">
            <summary>
            A bit-field describing the characteristics of the stream. Supported in Windows 8.1 and later.
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioClientShareMode">
            <summary>
            AUDCLNT_SHAREMODE
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioClientShareMode.Shared">
            <summary>
            AUDCLNT_SHAREMODE_SHARED,
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioClientShareMode.Exclusive">
            <summary>
            AUDCLNT_SHAREMODE_EXCLUSIVE
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioClientStreamFlags">
            <summary>
            AUDCLNT_STREAMFLAGS
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioClientStreamFlags.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioClientStreamFlags.CrossProcess">
            <summary>
            AUDCLNT_STREAMFLAGS_CROSSPROCESS
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioClientStreamFlags.Loopback">
            <summary>
            AUDCLNT_STREAMFLAGS_LOOPBACK
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioClientStreamFlags.EventCallback">
            <summary>
            AUDCLNT_STREAMFLAGS_EVENTCALLBACK 
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioClientStreamFlags.NoPersist">
            <summary>
            AUDCLNT_STREAMFLAGS_NOPERSIST     
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioClientStreamOptions">
            <summary>
            Defines values that describe the characteristics of an audio stream.
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioClientStreamOptions.None">
            <summary>
            No stream options.
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioClientStreamOptions.Raw">
            <summary>
            The audio stream is a 'raw' stream that bypasses all signal processing except for endpoint specific, always-on processing in the APO, driver, and hardware.
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioClockClient">
            <summary>
            Audio Clock Client
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioClockClient.Characteristics">
            <summary>
            Characteristics
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioClockClient.Frequency">
            <summary>
            Frequency
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioClockClient.GetPosition(System.UInt64@,System.UInt64@)">
            <summary>
            Get Position
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioClockClient.AdjustedPosition">
            <summary>
            Adjusted Position
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioClockClient.CanAdjustPosition">
            <summary>
            Can Adjust Position
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioClockClient.Dispose">
            <summary>
            Dispose
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioEndpointVolumeChannel">
            <summary>
            Audio Endpoint Volume Channel
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioEndpointVolumeChannel.NotificationGuid">
            <summary>
            GUID to pass to AudioEndpointVolumeCallback
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioEndpointVolumeChannel.VolumeLevel">
            <summary>
            Volume Level
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioEndpointVolumeChannel.VolumeLevelScalar">
            <summary>
            Volume Level Scalar
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioEndpointVolumeChannels">
            <summary>
            Audio Endpoint Volume Channels
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioEndpointVolumeChannels.Count">
            <summary>
            Channel Count
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioEndpointVolumeChannels.Item(System.Int32)">
            <summary>
            Indexer - get a specific channel
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioEndpointVolumeNotificationDelegate">
            <summary>
            Audio Endpoint Volume Notifiaction Delegate
            </summary>
            <param name="data">Audio Volume Notification Data</param>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioEndpointVolumeStepInformation">
            <summary>
            Audio Endpoint Volume Step Information
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioEndpointVolumeStepInformation.Step">
            <summary>
            Step
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioEndpointVolumeStepInformation.StepCount">
            <summary>
            StepCount
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioEndpointVolumeVolumeRange">
            <summary>
            Audio Endpoint Volume Volume Range
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioEndpointVolumeVolumeRange.MinDecibels">
            <summary>
            Minimum Decibels
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioEndpointVolumeVolumeRange.MaxDecibels">
            <summary>
            Maximum Decibels
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioEndpointVolumeVolumeRange.IncrementDecibels">
            <summary>
            Increment Decibels
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioMeterInformationChannels">
            <summary>
            Audio Meter Information Channels
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioMeterInformationChannels.Count">
            <summary>
            Metering Channel Count
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioMeterInformationChannels.Item(System.Int32)">
            <summary>
            Get Peak value
            </summary>
            <param name="index">Channel index</param>
            <returns>Peak value</returns>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioRenderClient">
            <summary>
            Audio Render Client
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioRenderClient.GetBuffer(System.Int32)">
            <summary>
            Gets a pointer to the buffer
            </summary>
            <param name="numFramesRequested">Number of frames requested</param>
            <returns>Pointer to the buffer</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioRenderClient.ReleaseBuffer(System.Int32,NAudio.CoreAudioApi.AudioClientBufferFlags)">
            <summary>
            Release buffer
            </summary>
            <param name="numFramesWritten">Number of frames written</param>
            <param name="bufferFlags">Buffer flags</param>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioRenderClient.Dispose">
            <summary>
            Release the COM object
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioSessionControl">
            <summary>
            AudioSessionControl object for information
            regarding an audio session
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioSessionControl.#ctor(NAudio.CoreAudioApi.Interfaces.IAudioSessionControl)">
            <summary>
            Constructor.
            </summary>
            <param name="audioSessionControl"></param>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioSessionControl.Dispose">
            <summary>
            Dispose
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioSessionControl.Finalize">
            <summary>
            Finalizer
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioSessionControl.AudioMeterInformation">
            <summary>
            Audio meter information of the audio session.
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioSessionControl.SimpleAudioVolume">
            <summary>
            Simple audio volume of the audio session (for volume and mute status).
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioSessionControl.State">
            <summary>
            The current state of the audio session.
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioSessionControl.DisplayName">
            <summary>
            The name of the audio session.
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioSessionControl.IconPath">
            <summary>
            the path to the icon shown in the mixer.
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioSessionControl.GetSessionIdentifier">
            <summary>
            The session identifier of the audio session.
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioSessionControl.GetSessionInstanceIdentifier">
            <summary>
            The session instance identifier of the audio session.
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioSessionControl.GetProcessID">
            <summary>
            The process identifier of the audio session.
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioSessionControl.IsSystemSoundsSession">
            <summary>
            Is the session a system sounds session.
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioSessionControl.GetGroupingParam">
            <summary>
            the grouping param for an audio session grouping
            </summary>
            <returns></returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioSessionControl.SetGroupingParam(System.Guid,System.Guid)">
            <summary>
            For chanigng the grouping param and supplying the context of said change
            </summary>
            <param name="groupingId"></param>
            <param name="context"></param>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioSessionControl.RegisterEventClient(NAudio.CoreAudioApi.Interfaces.IAudioSessionEventsHandler)">
            <summary>
            Registers an even client for callbacks
            </summary>
            <param name="eventClient"></param>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioSessionControl.UnRegisterEventClient(NAudio.CoreAudioApi.Interfaces.IAudioSessionEventsHandler)">
            <summary>
            Unregisters an event client from receiving callbacks
            </summary>
            <param name="eventClient"></param>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioSessionEventsCallback">
            <summary>
            AudioSessionEvents callback implementation
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioSessionEventsCallback.#ctor(NAudio.CoreAudioApi.Interfaces.IAudioSessionEventsHandler)">
            <summary>
            Constructor.
            </summary>
            <param name="handler"></param>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioSessionEventsCallback.OnDisplayNameChanged(System.String,System.Guid@)">
            <summary>
            Notifies the client that the display name for the session has changed.
            </summary>
            <param name="displayName">The new display name for the session.</param>
            <param name="eventContext">A user context value that is passed to the notification callback.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioSessionEventsCallback.OnIconPathChanged(System.String,System.Guid@)">
            <summary>
            Notifies the client that the display icon for the session has changed.
            </summary>
            <param name="iconPath">The path for the new display icon for the session.</param>
            <param name="eventContext">A user context value that is passed to the notification callback.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioSessionEventsCallback.OnSimpleVolumeChanged(System.Single,System.Boolean,System.Guid@)">
            <summary>
            Notifies the client that the volume level or muting state of the session has changed.
            </summary>
            <param name="volume">The new volume level for the audio session.</param>
            <param name="isMuted">The new muting state.</param>
            <param name="eventContext">A user context value that is passed to the notification callback.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioSessionEventsCallback.OnChannelVolumeChanged(System.UInt32,System.IntPtr,System.UInt32,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 channel count.</param>
            <param name="newVolumes">An array of volumnes cooresponding with each channel index.</param>
            <param name="channelIndex">The number of the channel whose volume level changed.</param>
            <param name="eventContext">A user context value that is passed to the notification callback.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioSessionEventsCallback.OnGroupingParamChanged(System.Guid@,System.Guid@)">
            <summary>
            Notifies the client that the grouping parameter for the session has changed.
            </summary>
            <param name="groupingId">The new grouping parameter for the session.</param>
            <param name="eventContext">A user context value that is passed to the notification callback.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioSessionEventsCallback.OnStateChanged(NAudio.CoreAudioApi.Interfaces.AudioSessionState)">
            <summary>
            Notifies the client that the stream-activity state of the session has changed.
            </summary>
            <param name="state">The new session state.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioSessionEventsCallback.OnSessionDisconnected(NAudio.CoreAudioApi.Interfaces.AudioSessionDisconnectReason)">
            <summary>
            Notifies the client that the session has been disconnected.
            </summary>
            <param name="disconnectReason">The reason that the audio session was disconnected.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioSessionManager">
            <summary>
            AudioSessionManager
            
            Designed to manage audio sessions and in particuar the
            SimpleAudioVolume interface to adjust a session volume
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioSessionManager.SessionCreatedDelegate">
            <summary>
            Session created delegate
            </summary>
        </member>
        <member name="E:NAudio.CoreAudioApi.AudioSessionManager.OnSessionCreated">
            <summary>
            Occurs when audio session has been added (for example run another program that use audio playback).
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioSessionManager.SimpleAudioVolume">
            <summary>
            SimpleAudioVolume object
            for adjusting the volume for the user session
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioSessionManager.AudioSessionControl">
            <summary>
            AudioSessionControl object
            for registring for callbacks and other session information
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioSessionManager.RefreshSessions">
            <summary>
            Refresh session of current device.
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioSessionManager.Sessions">
            <summary>
            Returns list of sessions of current device.
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioSessionManager.Dispose">
            <summary>
            Dispose.
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioSessionManager.Finalize">
            <summary>
            Finalizer.
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioStreamCategory">
            <summary>
            Specifies the category of an audio stream.
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioStreamCategory.Other">
            <summary>
            Other audio stream.
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioStreamCategory.ForegroundOnlyMedia">
            <summary>
            Media that will only stream when the app is in the foreground.
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioStreamCategory.BackgroundCapableMedia">
            <summary>
            Media that can be streamed when the app is in the background.
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioStreamCategory.Communications">
            <summary>
            Real-time communications, such as VOIP or chat.
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioStreamCategory.Alerts">
            <summary>
            Alert sounds.
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioStreamCategory.SoundEffects">
            <summary>
            Sound effects.
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioStreamCategory.GameEffects">
            <summary>
            Game sound effects.
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.AudioStreamCategory.GameMedia">
            <summary>
            Background audio for games.
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioStreamVolume">
            <summary>
            Manages the AudioStreamVolume for the <see cref="T:NAudio.CoreAudioApi.AudioClient"/>.
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioStreamVolume.CheckChannelIndex(System.Int32,System.String)">
            <summary>
            Verify that the channel index is valid.
            </summary>
            <param name="channelIndex"></param>
            <param name="parameter"></param>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioStreamVolume.GetAllVolumes">
            <summary>
            Return the current stream volumes for all channels
            </summary>
            <returns>An array of volume levels between 0.0 and 1.0 for each channel in the audio stream.</returns>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioStreamVolume.ChannelCount">
            <summary>
            Returns the current number of channels in this audio stream.
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioStreamVolume.GetChannelVolume(System.Int32)">
            <summary>
            Return the current volume for the requested channel.
            </summary>
            <param name="channelIndex">The 0 based index into the channels.</param>
            <returns>The volume level for the channel between 0.0 and 1.0.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioStreamVolume.SetAllVolumes(System.Single[])">
            <summary>
            Set the volume level for each channel of the audio stream.
            </summary>
            <param name="levels">An array of volume levels (between 0.0 and 1.0) one for each channel.</param>
            <remarks>
            A volume level MUST be supplied for reach channel in the audio stream.
            </remarks>
            <exception cref="T:System.ArgumentOutOfRangeException">
            Thrown when <paramref name="levels"/> does not contain <see cref="P:NAudio.CoreAudioApi.AudioStreamVolume.ChannelCount"/> elements.
            </exception>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioStreamVolume.SetChannelVolume(System.Int32,System.Single)">
            <summary>
            Sets the volume level for one channel in the audio stream.
            </summary>
            <param name="index">The 0-based index into the channels to adjust the volume of.</param>
            <param name="level">The volume level between 0.0 and 1.0 for this channel of the audio stream.</param>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioStreamVolume.Dispose">
            <summary>
            Dispose
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioStreamVolume.Dispose(System.Boolean)">
            <summary>
            Release/cleanup objects during Dispose/finalization.
            </summary>
            <param name="disposing">True if disposing and false if being finalized.</param>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioVolumeNotificationData">
            <summary>
            Audio Volume Notification Data
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioVolumeNotificationData.EventContext">
            <summary>
            Event Context
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioVolumeNotificationData.Muted">
            <summary>
            Muted
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioVolumeNotificationData.Guid">
            <summary>
            Guid that raised the event
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioVolumeNotificationData.MasterVolume">
            <summary>
            Master Volume
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioVolumeNotificationData.Channels">
            <summary>
            Channels
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioVolumeNotificationData.ChannelVolume">
            <summary>
            Channel Volume
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioVolumeNotificationData.#ctor(System.Guid,System.Boolean,System.Single,System.Single[],System.Guid)">
            <summary>
            Audio Volume Notification Data
            </summary>
            <param name="eventContext"></param>
            <param name="muted"></param>
            <param name="masterVolume"></param>
            <param name="channelVolume"></param>
            <param name="guid"></param>
        </member>
        <member name="T:NAudio.CoreAudioApi.Interfaces.AudioClientErrors">
            <summary>
            Audio Client WASAPI Error Codes (HResult)
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.Interfaces.AudioClientErrors.NotInitialized">
            <summary>
            AUDCLNT_E_NOT_INITIALIZED
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.Interfaces.AudioClientErrors.UnsupportedFormat">
            <summary>
            AUDCLNT_E_UNSUPPORTED_FORMAT
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.Interfaces.AudioClientErrors.DeviceInUse">
            <summary>
            AUDCLNT_E_DEVICE_IN_USE
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.Interfaces.AudioClientErrors.ResourcesInvalidated">
            <summary>
            AUDCLNT_E_RESOURCES_INVALIDATED
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.Interfaces.IAudioClock">
            <summary>
            Defined in AudioClient.h
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.Interfaces.IAudioClock2">
            <summary>
            Defined in AudioClient.h
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl">
            <summary>
            Windows CoreAudio IAudioSessionControl interface
            Defined in AudioPolicy.h
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl.GetState(NAudio.CoreAudioApi.Interfaces.AudioSessionState@)">
            <summary>
            Retrieves the current state of the audio session.
            </summary>
            <param name="state">Receives the current session state.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl.GetDisplayName(System.String@)">
            <summary>
            Retrieves the display name for the audio session.
            </summary>
            <param name="displayName">Receives a string that contains the display name.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl.SetDisplayName(System.String,System.Guid)">
            <summary>
            Assigns a display name to the current audio session.
            </summary>
            <param name="displayName">A string that contains the new display name for the session.</param>
            <param name="eventContext">A user context value that is passed to the notification callback.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl.GetIconPath(System.String@)">
            <summary>
            Retrieves the path for the display icon for the audio session.
            </summary>
            <param name="iconPath">Receives a string that specifies the fully qualified path of the file that contains the icon.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl.SetIconPath(System.String,System.Guid)">
            <summary>
            Assigns a display icon to the current session.
            </summary>
            <param name="iconPath">A string that specifies the fully qualified path of the file that contains the new icon.</param>
            <param name="eventContext">A user context value that is passed to the notification callback.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl.GetGroupingParam(System.Guid@)">
            <summary>
            Retrieves the grouping parameter of the audio session.
            </summary>
            <param name="groupingId">Receives the grouping parameter ID.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl.SetGroupingParam(System.Guid,System.Guid)">
            <summary>
            Assigns a session to a grouping of sessions.
            </summary>
            <param name="groupingId">The new grouping parameter ID.</param>
            <param name="eventContext">A user context value that is passed to the notification callback.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl.RegisterAudioSessionNotification(NAudio.CoreAudioApi.Interfaces.IAudioSessionEvents)">
            <summary>
            Registers the client to receive notifications of session events, including changes in the session state.
            </summary>
            <param name="client">A client-implemented <see cref="T:NAudio.CoreAudioApi.Interfaces.IAudioSessionEvents"/> interface.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl.UnregisterAudioSessionNotification(NAudio.CoreAudioApi.Interfaces.IAudioSessionEvents)">
            <summary>
            Deletes a previous registration by the client to receive notifications.
            </summary>
            <param name="client">A client-implemented <see cref="T:NAudio.CoreAudioApi.Interfaces.IAudioSessionEvents"/> interface.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="T:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl2">
            <summary>
            Windows CoreAudio IAudioSessionControl interface
            Defined in AudioPolicy.h
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl2.GetState(NAudio.CoreAudioApi.Interfaces.AudioSessionState@)">
            <summary>
            Retrieves the current state of the audio session.
            </summary>
            <param name="state">Receives the current session state.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl2.GetDisplayName(System.String@)">
            <summary>
            Retrieves the display name for the audio session.
            </summary>
            <param name="displayName">Receives a string that contains the display name.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl2.SetDisplayName(System.String,System.Guid)">
            <summary>
            Assigns a display name to the current audio session.
            </summary>
            <param name="displayName">A string that contains the new display name for the session.</param>
            <param name="eventContext">A user context value that is passed to the notification callback.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl2.GetIconPath(System.String@)">
            <summary>
            Retrieves the path for the display icon for the audio session.
            </summary>
            <param name="iconPath">Receives a string that specifies the fully qualified path of the file that contains the icon.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl2.SetIconPath(System.String,System.Guid)">
            <summary>
            Assigns a display icon to the current session.
            </summary>
            <param name="iconPath">A string that specifies the fully qualified path of the file that contains the new icon.</param>
            <param name="eventContext">A user context value that is passed to the notification callback.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl2.GetGroupingParam(System.Guid@)">
            <summary>
            Retrieves the grouping parameter of the audio session.
            </summary>
            <param name="groupingId">Receives the grouping parameter ID.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl2.SetGroupingParam(System.Guid,System.Guid)">
            <summary>
            Assigns a session to a grouping of sessions.
            </summary>
            <param name="groupingId">The new grouping parameter ID.</param>
            <param name="eventContext">A user context value that is passed to the notification callback.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl2.RegisterAudioSessionNotification(NAudio.CoreAudioApi.Interfaces.IAudioSessionEvents)">
            <summary>
            Registers the client to receive notifications of session events, including changes in the session state.
            </summary>
            <param name="client">A client-implemented <see cref="T:NAudio.CoreAudioApi.Interfaces.IAudioSessionEvents"/> interface.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl2.UnregisterAudioSessionNotification(NAudio.CoreAudioApi.Interfaces.IAudioSessionEvents)">
            <summary>
            Deletes a previous registration by the client to receive notifications.
            </summary>
            <param name="client">A client-implemented <see cref="T:NAudio.CoreAudioApi.Interfaces.IAudioSessionEvents"/> interface.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl2.GetSessionIdentifier(System.String@)">
            <summary>
            Retrieves the identifier for the audio session.
            </summary>
            <param name="retVal">Receives the session identifier.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl2.GetSessionInstanceIdentifier(System.String@)">
            <summary>
            Retrieves the identifier of the audio session instance.
            </summary>
            <param name="retVal">Receives the identifier of a particular instance.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl2.GetProcessId(System.UInt32@)">
            <summary>
            Retrieves the process identifier of the audio session.
            </summary>
            <param name="retVal">Receives the process identifier of the audio session.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl2.IsSystemSoundsSession">
            <summary>
            Indicates whether the session is a system sounds session.
            </summary>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl2.SetDuckingPreference(System.Boolean)">
            <summary>
            Enables or disables the default stream attenuation experience (auto-ducking) provided by the system.
            </summary>
            <param name="optOut">A variable that enables or disables system auto-ducking.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="T:NAudio.CoreAudioApi.Interfaces.AudioSessionState">
            <summary>
            Defines constants that indicate the current state of an audio session.
            </summary>
            <remarks>
            MSDN Reference: http://msdn.microsoft.com/en-us/library/dd370792.aspx
            </remarks>
        </member>
        <member name="F:NAudio.CoreAudioApi.Interfaces.AudioSessionState.AudioSessionStateInactive">
            <summary>
            The audio session is inactive.
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.Interfaces.AudioSessionState.AudioSessionStateActive">
            <summary>
            The audio session is active.
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.Interfaces.AudioSessionState.AudioSessionStateExpired">
            <summary>
            The audio session has expired.
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.Interfaces.AudioSessionDisconnectReason">
            <summary>
            Defines constants that indicate a reason for an audio session being disconnected.
            </summary>
            <remarks>
            MSDN Reference: Unknown
            </remarks>
        </member>
        <member name="F:NAudio.CoreAudioApi.Interfaces.AudioSessionDisconnectReason.DisconnectReasonDeviceRemoval">
            <summary>
            The user removed the audio endpoint device.
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.Interfaces.AudioSessionDisconnectReason.DisconnectReasonServerShutdown">
            <summary>
            The Windows audio service has stopped.
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.Interfaces.AudioSessionDisconnectReason.DisconnectReasonFormatChanged">
            <summary>
            The stream format changed for the device that the audio session is connected to.
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.Interfaces.AudioSessionDisconnectReason.DisconnectReasonSessionLogoff">
            <summary>
            The user logged off the WTS session that the audio session was running in.
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.Interfaces.AudioSessionDisconnectReason.DisconnectReasonSessionDisconnected">
            <summary>
            The WTS session that the audio session was running in was disconnected.
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.Interfaces.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:NAudio.CoreAudioApi.Interfaces.IAudioSessionEvents">
            <summary>
            Windows CoreAudio IAudioSessionControl interface
            Defined in AudioPolicy.h
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionEvents.OnDisplayNameChanged(System.String,System.Guid@)">
            <summary>
            Notifies the client that the display name for the session has changed.
            </summary>
            <param name="displayName">The new display name for the session.</param>
            <param name="eventContext">A user context value that is passed to the notification callback.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionEvents.OnIconPathChanged(System.String,System.Guid@)">
            <summary>
            Notifies the client that the display icon for the session has changed.
            </summary>
            <param name="iconPath">The path for the new display icon for the session.</param>
            <param name="eventContext">A user context value that is passed to the notification callback.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionEvents.OnSimpleVolumeChanged(System.Single,System.Boolean,System.Guid@)">
            <summary>
            Notifies the client that the volume level or muting state of the session has changed.
            </summary>
            <param name="volume">The new volume level for the audio session.</param>
            <param name="isMuted">The new muting state.</param>
            <param name="eventContext">A user context value that is passed to the notification callback.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionEvents.OnChannelVolumeChanged(System.UInt32,System.IntPtr,System.UInt32,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 channel count.</param>
            <param name="newVolumes">An array of volumnes cooresponding with each channel index.</param>
            <param name="channelIndex">The number of the channel whose volume level changed.</param>
            <param name="eventContext">A user context value that is passed to the notification callback.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionEvents.OnGroupingParamChanged(System.Guid@,System.Guid@)">
            <summary>
            Notifies the client that the grouping parameter for the session has changed.
            </summary>
            <param name="groupingId">The new grouping parameter for the session.</param>
            <param name="eventContext">A user context value that is passed to the notification callback.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionEvents.OnStateChanged(NAudio.CoreAudioApi.Interfaces.AudioSessionState)">
            <summary>
            Notifies the client that the stream-activity state of the session has changed.
            </summary>
            <param name="state">The new session state.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionEvents.OnSessionDisconnected(NAudio.CoreAudioApi.Interfaces.AudioSessionDisconnectReason)">
            <summary>
            Notifies the client that the session has been disconnected.
            </summary>
            <param name="disconnectReason">The reason that the audio session was disconnected.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="T:NAudio.CoreAudioApi.Interfaces.IAudioSessionEventsHandler">
            <summary>
            interface to receive session related events
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionEventsHandler.OnVolumeChanged(System.Single,System.Boolean)">
            <summary>
            notification of volume changes including muting of audio session
            </summary>
            <param name="volume">the current volume</param>
            <param name="isMuted">the current mute state, true muted, false otherwise</param>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionEventsHandler.OnDisplayNameChanged(System.String)">
            <summary>
            notification of display name changed
            </summary>
            <param name="displayName">the current display name</param>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionEventsHandler.OnIconPathChanged(System.String)">
            <summary>
            notification of icon path changed
            </summary>
            <param name="iconPath">the current icon path</param>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionEventsHandler.OnChannelVolumeChanged(System.UInt32,System.IntPtr,System.UInt32)">
            <summary>
            notification of the client that the volume level of an audio channel in the session submix has changed
            </summary>
            <param name="channelCount">The channel count.</param>
            <param name="newVolumes">An array of volumnes cooresponding with each channel index.</param>
            <param name="channelIndex">The number of the channel whose volume level changed.</param>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionEventsHandler.OnGroupingParamChanged(System.Guid@)">
            <summary>
            notification of the client that the grouping parameter for the session has changed
            </summary>
            <param name="groupingId">>The new grouping parameter for the session.</param>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionEventsHandler.OnStateChanged(NAudio.CoreAudioApi.Interfaces.AudioSessionState)">
            <summary>
            notification of the client that the stream-activity state of the session has changed
            </summary>
            <param name="state">The new session state.</param>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionEventsHandler.OnSessionDisconnected(NAudio.CoreAudioApi.Interfaces.AudioSessionDisconnectReason)">
            <summary>
            notification of the client that the session has been disconnected
            </summary>
            <param name="disconnectReason">The reason that the audio session was disconnected.</param>
        </member>
        <member name="T:NAudio.CoreAudioApi.Interfaces.IAudioSessionManager">
            <summary>
            Windows CoreAudio IAudioSessionManager interface
            Defined in AudioPolicy.h
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionManager.GetAudioSessionControl(System.Guid,System.UInt32,NAudio.CoreAudioApi.Interfaces.IAudioSessionControl@)">
            <summary>
            Retrieves an audio session control.
            </summary>
            <param name="sessionId">A new or existing session ID.</param>
            <param name="streamFlags">Audio session flags.</param>
            <param name="sessionControl">Receives an <see cref="T:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl"/> interface for the audio session.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionManager.GetSimpleAudioVolume(System.Guid,System.UInt32,NAudio.CoreAudioApi.Interfaces.ISimpleAudioVolume@)">
            <summary>
            Retrieves a simple audio volume control.
            </summary>
            <param name="sessionId">A new or existing session ID.</param>
            <param name="streamFlags">Audio session flags.</param>
            <param name="audioVolume">Receives an <see cref="T:NAudio.CoreAudioApi.Interfaces.ISimpleAudioVolume"/> interface for the audio session.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionManager2.GetAudioSessionControl(System.Guid,System.UInt32,NAudio.CoreAudioApi.Interfaces.IAudioSessionControl@)">
            <summary>
            Retrieves an audio session control.
            </summary>
            <param name="sessionId">A new or existing session ID.</param>
            <param name="streamFlags">Audio session flags.</param>
            <param name="sessionControl">Receives an <see cref="T:NAudio.CoreAudioApi.Interfaces.IAudioSessionControl"/> interface for the audio session.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionManager2.GetSimpleAudioVolume(System.Guid,System.UInt32,NAudio.CoreAudioApi.Interfaces.ISimpleAudioVolume@)">
            <summary>
            Retrieves a simple audio volume control.
            </summary>
            <param name="sessionId">A new or existing session ID.</param>
            <param name="streamFlags">Audio session flags.</param>
            <param name="audioVolume">Receives an <see cref="T:NAudio.CoreAudioApi.Interfaces.ISimpleAudioVolume"/> interface for the audio session.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="T:NAudio.CoreAudioApi.Interfaces.IAudioSessionNotification">
            <summary>
            Windows CoreAudio IAudioSessionNotification interface
            Defined in AudioPolicy.h
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioSessionNotification.OnSessionCreated(NAudio.CoreAudioApi.Interfaces.IAudioSessionControl)">
            <summary>
            
            </summary>
            <param name="newSession">session being added</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="T:NAudio.CoreAudioApi.Interfaces.ISimpleAudioVolume">
            <summary>
            Windows CoreAudio ISimpleAudioVolume interface
            Defined in AudioClient.h
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.ISimpleAudioVolume.SetMasterVolume(System.Single,System.Guid)">
            <summary>
            Sets the master volume level for the audio session.
            </summary>
            <param name="levelNorm">The new volume level expressed as a normalized value between 0.0 and 1.0.</param>
            <param name="eventContext">A user context value that is passed to the notification callback.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.ISimpleAudioVolume.GetMasterVolume(System.Single@)">
            <summary>
            Retrieves the client volume level for the audio session.
            </summary>
            <param name="levelNorm">Receives the volume level expressed as a normalized value between 0.0 and 1.0. </param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.ISimpleAudioVolume.SetMute(System.Boolean,System.Guid)">
            <summary>
            Sets the muting state for the audio session.
            </summary>
            <param name="isMuted">The new muting state.</param>
            <param name="eventContext">A user context value that is passed to the notification callback.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.ISimpleAudioVolume.GetMute(System.Boolean@)">
            <summary>
            Retrieves the current muting state for the audio session.
            </summary>
            <param name="isMuted">Receives the muting state.</param>
            <returns>An HRESULT code indicating whether the operation succeeded of failed.</returns>
        </member>
        <member name="T:NAudio.CoreAudioApi.Interfaces.ClsCtx">
            <summary>
            is defined in WTypes.h
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.Interfaces.IAudioClient">
            <summary>
            Windows CoreAudio IAudioClient interface
            Defined in AudioClient.h
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioClient.GetBufferSize(System.UInt32@)">
            <summary>
            The GetBufferSize method retrieves the size (maximum capacity) of the endpoint buffer.
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IAudioClient.GetService(System.Guid,System.Object@)">
            <summary>
            The GetService method accesses additional services from the audio client object.
            </summary>
            <param name="interfaceId">The interface ID for the requested service.</param>
            <param name="interfacePointer">Pointer to a pointer variable into which the method writes the address of an instance of the requested interface. </param>
        </member>
        <member name="T:NAudio.CoreAudioApi.Interfaces.IMMEndpoint">
            <summary>
            defined in MMDeviceAPI.h
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.Interfaces.IMMNotificationClient">
            <summary>
            IMMNotificationClient
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IMMNotificationClient.OnDeviceStateChanged(System.String,NAudio.CoreAudioApi.DeviceState)">
            <summary>
            Device State Changed
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IMMNotificationClient.OnDeviceAdded(System.String)">
            <summary>
            Device Added
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IMMNotificationClient.OnDeviceRemoved(System.String)">
            <summary>
            Device Removed
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IMMNotificationClient.OnDefaultDeviceChanged(NAudio.CoreAudioApi.DataFlow,NAudio.CoreAudioApi.Role,System.String)">
            <summary>
            Default Device Changed
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.IMMNotificationClient.OnPropertyValueChanged(System.String,NAudio.CoreAudioApi.PropertyKey)">
            <summary>
            Property Value Changed
            </summary>
            <param name="pwstrDeviceId"></param>
            <param name="key"></param>
        </member>
        <member name="T:NAudio.CoreAudioApi.Interfaces.IPropertyStore">
            <summary>
            is defined in propsys.h
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.Interfaces.MMDeviceEnumeratorComObject">
            <summary>
            implements IMMDeviceEnumerator
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.Interfaces.StorageAccessMode">
            <summary>
            MMDevice STGM enumeration
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.Interfaces.PropVariant">
            <summary>
            from Propidl.h.
            http://msdn.microsoft.com/en-us/library/aa380072(VS.85).aspx
            contains a union so we have to do an explicit layout
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.PropVariant.FromLong(System.Int64)">
            <summary>
            Creates a new PropVariant containing a long value
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.PropVariant.GetBlob">
            <summary>
            Helper method to gets blob data
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.PropVariant.GetBlobAsArrayOf``1">
            <summary>
            Interprets a blob as an array of structs
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.Interfaces.PropVariant.DataType">
            <summary>
            Gets the type of data in this PropVariant
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.Interfaces.PropVariant.Value">
            <summary>
            Property value
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.PropVariant.Clear">
            <summary>
            allows freeing up memory, might turn this into a Dispose method?
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.Interfaces.PropVariant.Clear(System.IntPtr)">
            <summary>
            Clears with a known pointer
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.MMDeviceCollection">
            <summary>
            Multimedia Device Collection
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.MMDeviceCollection.Count">
            <summary>
            Device count
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.MMDeviceCollection.Item(System.Int32)">
            <summary>
            Get device by index
            </summary>
            <param name="index">Device index</param>
            <returns>Device at the specified index</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.MMDeviceCollection.GetEnumerator">
            <summary>
            Get Enumerator
            </summary>
            <returns>Device enumerator</returns>
        </member>
        <member name="T:NAudio.CoreAudioApi.PropertyKeys">
            <summary>
            Property Keys
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.PropertyKeys.PKEY_DeviceInterface_FriendlyName">
            <summary>
            PKEY_DeviceInterface_FriendlyName
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.PropertyKeys.PKEY_AudioEndpoint_FormFactor">
            <summary>
            PKEY_AudioEndpoint_FormFactor
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.PropertyKeys.PKEY_AudioEndpoint_ControlPanelPageProvider">
            <summary>
            PKEY_AudioEndpoint_ControlPanelPageProvider
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.PropertyKeys.PKEY_AudioEndpoint_Association">
            <summary>
            PKEY_AudioEndpoint_Association
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.PropertyKeys.PKEY_AudioEndpoint_PhysicalSpeakers">
            <summary>
            PKEY_AudioEndpoint_PhysicalSpeakers
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.PropertyKeys.PKEY_AudioEndpoint_GUID">
            <summary>
            PKEY_AudioEndpoint_GUID
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.PropertyKeys.PKEY_AudioEndpoint_Disable_SysFx">
            <summary>
            PKEY_AudioEndpoint_Disable_SysFx 
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.PropertyKeys.PKEY_AudioEndpoint_FullRangeSpeakers">
            <summary>
            PKEY_AudioEndpoint_FullRangeSpeakers 
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.PropertyKeys.PKEY_AudioEndpoint_Supports_EventDriven_Mode">
            <summary>
            PKEY_AudioEndpoint_Supports_EventDriven_Mode 
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.PropertyKeys.PKEY_AudioEndpoint_JackSubType">
            <summary>
            PKEY_AudioEndpoint_JackSubType
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.PropertyKeys.PKEY_AudioEngine_DeviceFormat">
            <summary>
            PKEY_AudioEngine_DeviceFormat 
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.PropertyKeys.PKEY_AudioEngine_OEMFormat">
            <summary>
            PKEY_AudioEngine_OEMFormat
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.PropertyKeys.PKEY_Device_FriendlyName">
            <summary>
            PKEY _Devie_FriendlyName
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.PropertyKeys.PKEY_Device_IconPath">
            <summary>
            PKEY _Device_IconPath
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.SessionCollection">
            <summary>
            Collection of sessions.
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.SessionCollection.Item(System.Int32)">
            <summary>
            Returns session at index.
            </summary>
            <param name="index"></param>
            <returns></returns>
        </member>
        <member name="P:NAudio.CoreAudioApi.SessionCollection.Count">
            <summary>
            Number of current sessions.
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.SimpleAudioVolume">
            <summary>
            Windows CoreAudio SimpleAudioVolume
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.SimpleAudioVolume.#ctor(NAudio.CoreAudioApi.Interfaces.ISimpleAudioVolume)">
            <summary>
            Creates a new Audio endpoint volume
            </summary>
            <param name="realSimpleVolume">ISimpleAudioVolume COM interface</param>
        </member>
        <member name="M:NAudio.CoreAudioApi.SimpleAudioVolume.Dispose">
            <summary>
            Dispose
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.SimpleAudioVolume.Finalize">
            <summary>
            Finalizer
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.SimpleAudioVolume.Volume">
            <summary>
            Allows the user to adjust the volume from
            0.0 to 1.0
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.SimpleAudioVolume.Mute">
            <summary>
            Mute
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.CaptureState">
            <summary>
            Represents state of a capture device
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.CaptureState.Stopped">
            <summary>
            Not recording
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.CaptureState.Starting">
            <summary>
            Beginning to record
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.CaptureState.Capturing">
            <summary>
            Recording in progress
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.CaptureState.Stopping">
            <summary>
            Requesting stop
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.WasapiCapture">
            <summary>
            Audio Capture using Wasapi
            See http://msdn.microsoft.com/en-us/library/dd370800%28VS.85%29.aspx
            </summary>
        </member>
        <member name="E:NAudio.CoreAudioApi.WasapiCapture.DataAvailable">
            <summary>
            Indicates recorded data is available 
            </summary>
        </member>
        <member name="E:NAudio.CoreAudioApi.WasapiCapture.RecordingStopped">
            <summary>
            Indicates that all recorded data has now been received.
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.WasapiCapture.#ctor">
            <summary>
            Initialises a new instance of the WASAPI capture class
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.WasapiCapture.#ctor(NAudio.CoreAudioApi.MMDevice)">
            <summary>
            Initialises a new instance of the WASAPI capture class
            </summary>
            <param name="captureDevice">Capture device to use</param>
        </member>
        <member name="M:NAudio.CoreAudioApi.WasapiCapture.#ctor(NAudio.CoreAudioApi.MMDevice,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:NAudio.CoreAudioApi.WasapiCapture"/> class.
            </summary>
            <param name="captureDevice">The capture device.</param>
            <param name="useEventSync">true if sync is done with event. false use sleep.</param>
        </member>
        <member name="M:NAudio.CoreAudioApi.WasapiCapture.#ctor(NAudio.CoreAudioApi.MMDevice,System.Boolean,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NAudio.CoreAudioApi.WasapiCapture" /> class.
            </summary>
            <param name="captureDevice">The capture device.</param>
            <param name="useEventSync">true if sync is done with event. false use sleep.</param>
            <param name="audioBufferMillisecondsLength">Length of the audio buffer in milliseconds. A lower value means lower latency but increased CPU usage.</param>
        </member>
        <member name="P:NAudio.CoreAudioApi.WasapiCapture.ShareMode">
            <summary>
            Share Mode - set before calling StartRecording
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.WasapiCapture.CaptureState">
            <summary>
            Current Capturing State
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.WasapiCapture.WaveFormat">
            <summary>
            Capturing wave format
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.WasapiCapture.GetDefaultCaptureDevice">
            <summary>
            Gets the default audio capture device
            </summary>
            <returns>The default audio capture device</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.WasapiCapture.GetAudioClientStreamFlags">
            <summary>
            To allow overrides to specify different flags (e.g. loopback)
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.WasapiCapture.StartRecording">
            <summary>
            Start Capturing
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.WasapiCapture.StopRecording">
            <summary>
            Stop Capturing (requests a stop, wait for RecordingStopped event to know it has finished)
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.WasapiCapture.Dispose">
            <summary>
            Dispose
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioEndpointVolume">
            <summary>
            Audio Endpoint Volume
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioEndpointVolume.NotificationGuid">
            <summary>
            GUID to pass to AudioEndpointVolumeCallback
            </summary>
        </member>
        <member name="E:NAudio.CoreAudioApi.AudioEndpointVolume.OnVolumeNotification">
            <summary>
            On Volume Notification
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioEndpointVolume.VolumeRange">
            <summary>
            Volume Range
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioEndpointVolume.HardwareSupport">
            <summary>
            Hardware Support
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioEndpointVolume.StepInformation">
            <summary>
            Step Information
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioEndpointVolume.Channels">
            <summary>
            Channels
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioEndpointVolume.MasterVolumeLevel">
            <summary>
            Master Volume Level
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioEndpointVolume.MasterVolumeLevelScalar">
            <summary>
            Master Volume Level Scalar
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioEndpointVolume.Mute">
            <summary>
            Mute
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioEndpointVolume.VolumeStepUp">
            <summary>
            Volume Step Up
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioEndpointVolume.VolumeStepDown">
            <summary>
            Volume Step Down
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioEndpointVolume.#ctor(NAudio.CoreAudioApi.Interfaces.IAudioEndpointVolume)">
            <summary>
            Creates a new Audio endpoint volume
            </summary>
            <param name="realEndpointVolume">IAudioEndpointVolume COM interface</param>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioEndpointVolume.Dispose">
            <summary>
            Dispose
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.AudioEndpointVolume.Finalize">
            <summary>
            Finalizer
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.AudioMeterInformation">
            <summary>
            Audio Meter Information
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioMeterInformation.PeakValues">
            <summary>
            Peak Values
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioMeterInformation.HardwareSupport">
            <summary>
            Hardware Support
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.AudioMeterInformation.MasterPeakValue">
            <summary>
            Master Peak Value
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.DeviceState">
            <summary>
            Device State
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.DeviceState.Active">
            <summary>
            DEVICE_STATE_ACTIVE
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.DeviceState.Disabled">
            <summary>
            DEVICE_STATE_DISABLED
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.DeviceState.NotPresent">
            <summary>
            DEVICE_STATE_NOTPRESENT 
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.DeviceState.Unplugged">
            <summary>
            DEVICE_STATE_UNPLUGGED
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.DeviceState.All">
            <summary>
            DEVICE_STATEMASK_ALL
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.EEndpointHardwareSupport">
            <summary>
            Endpoint Hardware Support
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.EEndpointHardwareSupport.Volume">
            <summary>
            Volume
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.EEndpointHardwareSupport.Mute">
            <summary>
            Mute
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.EEndpointHardwareSupport.Meter">
            <summary>
            Meter
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.DataFlow">
            <summary>
            The EDataFlow enumeration defines constants that indicate the direction 
            in which audio data flows between an audio endpoint device and an application
            </summary>
        </member>
        <member name="F:NAudio.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:NAudio.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:NAudio.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:NAudio.CoreAudioApi.PropertyKey">
            <summary>
            PROPERTYKEY is defined in wtypes.h
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.PropertyKey.formatId">
            <summary>
            Format ID
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.PropertyKey.propertyId">
            <summary>
            Property ID
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.PropertyKey.#ctor(System.Guid,System.Int32)">
            <summary>
            <param name="formatId"></param>
            <param name="propertyId"></param>
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.Role">
            <summary>
            The ERole enumeration defines constants that indicate the role 
            that the system has assigned to an audio endpoint device
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.Role.Console">
            <summary>
            Games, system notification sounds, and voice commands.
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.Role.Multimedia">
            <summary>
            Music, movies, narration, and live music recording
            </summary>
        </member>
        <member name="F:NAudio.CoreAudioApi.Role.Communications">
            <summary>
            Voice communications (talking to another person).
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.MMDevice">
            <summary>
            MM Device
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.MMDevice.AudioClient">
            <summary>
            Audio Client
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.MMDevice.AudioMeterInformation">
            <summary>
            Audio Meter Information
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.MMDevice.AudioEndpointVolume">
            <summary>
            Audio Endpoint Volume
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.MMDevice.AudioSessionManager">
            <summary>
            AudioSessionManager instance
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.MMDevice.Properties">
            <summary>
            Properties
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.MMDevice.FriendlyName">
            <summary>
            Friendly name for the endpoint
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.MMDevice.DeviceFriendlyName">
            <summary>
            Friendly name of device
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.MMDevice.IconPath">
            <summary>
            Icon path of device
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.MMDevice.ID">
            <summary>
            Device ID
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.MMDevice.DataFlow">
            <summary>
            Data Flow
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.MMDevice.State">
            <summary>
            Device State
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.MMDevice.ToString">
            <summary>
            To string
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.MMDevice.Dispose">
            <summary>
            Dispose
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.MMDevice.Finalize">
            <summary>
            Finalizer
            </summary>
        </member>
        <member name="T:NAudio.CoreAudioApi.MMDeviceEnumerator">
            <summary>
            MM Device Enumerator
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.MMDeviceEnumerator.#ctor">
            <summary>
            Creates a new MM Device Enumerator
            </summary>
        </member>
        <member name="M:NAudio.CoreAudioApi.MMDeviceEnumerator.EnumerateAudioEndPoints(NAudio.CoreAudioApi.DataFlow,NAudio.CoreAudioApi.DeviceState)">
            <summary>
            Enumerate Audio Endpoints
            </summary>
            <param name="dataFlow">Desired DataFlow</param>
            <param name="dwStateMask">State Mask</param>
            <returns>Device Collection</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.MMDeviceEnumerator.GetDefaultAudioEndpoint(NAudio.CoreAudioApi.DataFlow,NAudio.CoreAudioApi.Role)">
            <summary>
            Get Default Endpoint
            </summary>
            <param name="dataFlow">Data Flow</param>
            <param name="role">Role</param>
            <returns>Device</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.MMDeviceEnumerator.HasDefaultAudioEndpoint(NAudio.CoreAudioApi.DataFlow,NAudio.CoreAudioApi.Role)">
            <summary>
            Check to see if a default audio end point exists without needing an exception.
            </summary>
            <param name="dataFlow">Data Flow</param>
            <param name="role">Role</param>
            <returns>True if one exists, and false if one does not exist.</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.MMDeviceEnumerator.GetDevice(System.String)">
            <summary>
            Get device by ID
            </summary>
            <param name="id">Device ID</param>
            <returns>Device</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.MMDeviceEnumerator.RegisterEndpointNotificationCallback(NAudio.CoreAudioApi.Interfaces.IMMNotificationClient)">
            <summary>
            Registers a call back for Device Events
            </summary>
            <param name="client">Object implementing IMMNotificationClient type casted as IMMNotificationClient interface</param>
            <returns></returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.MMDeviceEnumerator.UnregisterEndpointNotificationCallback(NAudio.CoreAudioApi.Interfaces.IMMNotificationClient)">
            <summary>
            Unregisters a call back for Device Events
            </summary>
            <param name="client">Object implementing IMMNotificationClient type casted as IMMNotificationClient interface </param>
            <returns></returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.MMDeviceEnumerator.Dispose">
            <inheritdoc/>
        </member>
        <member name="M:NAudio.CoreAudioApi.MMDeviceEnumerator.Dispose(System.Boolean)">
            <summary>
            Called to dispose/finalize contained objects.
            </summary>
            <param name="disposing">True if disposing, false if called from a finalizer.</param>
        </member>
        <member name="T:NAudio.CoreAudioApi.PropertyStore">
            <summary>
            Property Store class, only supports reading properties at the moment.
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.PropertyStore.Count">
            <summary>
            Property Count
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.PropertyStore.Item(System.Int32)">
            <summary>
            Gets property by index
            </summary>
            <param name="index">Property index</param>
            <returns>The property</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.PropertyStore.Contains(NAudio.CoreAudioApi.PropertyKey)">
            <summary>
            Contains property guid
            </summary>
            <param name="key">Looks for a specific key</param>
            <returns>True if found</returns>
        </member>
        <member name="P:NAudio.CoreAudioApi.PropertyStore.Item(NAudio.CoreAudioApi.PropertyKey)">
            <summary>
            Indexer by guid
            </summary>
            <param name="key">Property Key</param>
            <returns>Property or null if not found</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.PropertyStore.Get(System.Int32)">
            <summary>
            Gets property key at sepecified index
            </summary>
            <param name="index">Index</param>
            <returns>Property key</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.PropertyStore.GetValue(System.Int32)">
            <summary>
            Gets property value at specified index
            </summary>
            <param name="index">Index</param>
            <returns>Property value</returns>
        </member>
        <member name="M:NAudio.CoreAudioApi.PropertyStore.#ctor(NAudio.CoreAudioApi.Interfaces.IPropertyStore)">
            <summary>
            Creates a new property store
            </summary>
            <param name="store">IPropertyStore COM interface</param>
        </member>
        <member name="T:NAudio.CoreAudioApi.PropertyStoreProperty">
            <summary>
            Property Store Property
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.PropertyStoreProperty.Key">
            <summary>
            Property Key
            </summary>
        </member>
        <member name="P:NAudio.CoreAudioApi.PropertyStoreProperty.Value">
            <summary>
            Property Value
            </summary>
        </member>
        <member name="T:NAudio.Dsp.EnvelopeGenerator">
            <summary>
            Envelope generator (ADSR)
            </summary>
        </member>
        <member name="T:NAudio.Dsp.EnvelopeGenerator.EnvelopeState">
            <summary>
            Envelope State
            </summary>
        </member>
        <member name="F:NAudio.Dsp.EnvelopeGenerator.EnvelopeState.Idle">
            <summary>
            Idle
            </summary>
        </member>
        <member name="F:NAudio.Dsp.EnvelopeGenerator.EnvelopeState.Attack">
            <summary>
            Attack
            </summary>
        </member>
        <member name="F:NAudio.Dsp.EnvelopeGenerator.EnvelopeState.Decay">
            <summary>
            Decay
            </summary>
        </member>
        <member name="F:NAudio.Dsp.EnvelopeGenerator.EnvelopeState.Sustain">
            <summary>
            Sustain
            </summary>
        </member>
        <member name="F:NAudio.Dsp.EnvelopeGenerator.EnvelopeState.Release">
            <summary>
            Release
            </summary>
        </member>
        <member name="M:NAudio.Dsp.EnvelopeGenerator.#ctor">
            <summary>
            Creates and Initializes an Envelope Generator
            </summary>
        </member>
        <member name="P:NAudio.Dsp.EnvelopeGenerator.AttackRate">
            <summary>
            Attack Rate (seconds * SamplesPerSecond)
            </summary>
        </member>
        <member name="P:NAudio.Dsp.EnvelopeGenerator.DecayRate">
            <summary>
            Decay Rate (seconds * SamplesPerSecond)
            </summary>
        </member>
        <member name="P:NAudio.Dsp.EnvelopeGenerator.ReleaseRate">
            <summary>
            Release Rate (seconds * SamplesPerSecond)
            </summary>
        </member>
        <member name="P:NAudio.Dsp.EnvelopeGenerator.SustainLevel">
            <summary>
            Sustain Level (1 = 100%)
            </summary>
        </member>
        <member name="M:NAudio.Dsp.EnvelopeGenerator.SetTargetRatioAttack(System.Single)">
            <summary>
            Sets the attack curve
            </summary>
        </member>
        <member name="M:NAudio.Dsp.EnvelopeGenerator.SetTargetRatioDecayRelease(System.Single)">
            <summary>
            Sets the decay release curve
            </summary>
        </member>
        <member name="M:NAudio.Dsp.EnvelopeGenerator.Process">
            <summary>
            Read the next volume multiplier from the envelope generator
            </summary>
            <returns>A volume multiplier</returns>
        </member>
        <member name="M:NAudio.Dsp.EnvelopeGenerator.Gate(System.Boolean)">
            <summary>
            Trigger the gate
            </summary>
            <param name="gate">If true, enter attack phase, if false enter release phase (unless already idle)</param>
        </member>
        <member name="P:NAudio.Dsp.EnvelopeGenerator.State">
            <summary>
            Current envelope state
            </summary>
        </member>
        <member name="M:NAudio.Dsp.EnvelopeGenerator.Reset">
            <summary>
            Reset to idle state
            </summary>
        </member>
        <member name="M:NAudio.Dsp.EnvelopeGenerator.GetOutput">
            <summary>
            Get the current output level
            </summary>
        </member>
        <member name="T:NAudio.Dsp.WdlResampler">
            <summary>
            Fully managed resampler, based on Cockos WDL Resampler
            </summary>
        </member>
        <member name="M:NAudio.Dsp.WdlResampler.#ctor">
            <summary>
            Creates a new Resampler
            </summary>
        </member>
        <member name="M:NAudio.Dsp.WdlResampler.SetMode(System.Boolean,System.Int32,System.Boolean,System.Int32,System.Int32)">
            <summary>
            sets the mode
            if sinc set, it overrides interp or filtercnt
            </summary>
        </member>
        <member name="M:NAudio.Dsp.WdlResampler.SetFilterParms(System.Single,System.Single)">
            <summary>
            Sets the filter parameters
            used for filtercnt>0 but not sinc
            </summary>
        </member>
        <member name="M:NAudio.Dsp.WdlResampler.SetFeedMode(System.Boolean)">
            <summary>
            Set feed mode
            </summary>
            <param name="wantInputDriven">if true, that means the first parameter to ResamplePrepare will specify however much input you have, not how much you want</param>
        </member>
        <member name="M:NAudio.Dsp.WdlResampler.Reset(System.Double)">
            <summary>
            Reset
            </summary>
        </member>
        <member name="M:NAudio.Dsp.WdlResampler.ResamplePrepare(System.Int32,System.Int32,System.Single[]@,System.Int32@)">
            <summary>
            Prepare
            note that it is safe to call ResamplePrepare without calling ResampleOut (the next call of ResamplePrepare will function as normal)
            nb inbuffer was WDL_ResampleSample **, returning a place to put the in buffer, so we return a buffer and offset
            </summary>
            <param name="out_samples">req_samples is output samples desired if !wantInputDriven, or if wantInputDriven is input samples that we have</param>
            <param name="nch"></param>
            <param name="inbuffer"></param>
            <param name="inbufferOffset"></param>
            <returns>returns number of samples desired (put these into *inbuffer)</returns>
        </member>
        <member name="T:NAudio.Dsp.SmbPitchShifter">
            <summary>
            SMB Pitch Shifter
            </summary>
        </member>
        <member name="M:NAudio.Dsp.SmbPitchShifter.PitchShift(System.Single,System.Int64,System.Single,System.Single[])">
            <summary>
            Pitch Shift 
            </summary>
        </member>
        <member name="M:NAudio.Dsp.SmbPitchShifter.PitchShift(System.Single,System.Int64,System.Int64,System.Int64,System.Single,System.Single[])">
            <summary>
            Pitch Shift 
            </summary>
        </member>
        <member name="M:NAudio.Dsp.SmbPitchShifter.ShortTimeFourierTransform(System.Single[],System.Int64,System.Int64)">
            <summary>
            Short Time Fourier Transform
            </summary>
        </member>
        <member name="T:NAudio.Dsp.BiQuadFilter">
            <summary>
            BiQuad filter
            </summary>
        </member>
        <member name="M:NAudio.Dsp.BiQuadFilter.Transform(System.Single)">
            <summary>
            Passes a single sample through the filter
            </summary>
            <param name="inSample">Input sample</param>
            <returns>Output sample</returns>
        </member>
        <member name="M:NAudio.Dsp.BiQuadFilter.SetLowPassFilter(System.Single,System.Single,System.Single)">
            <summary>
            Set this up as a low pass filter
            </summary>
            <param name="sampleRate">Sample Rate</param>
            <param name="cutoffFrequency">Cut-off Frequency</param>
            <param name="q">Bandwidth</param>
        </member>
        <member name="M:NAudio.Dsp.BiQuadFilter.SetPeakingEq(System.Single,System.Single,System.Single,System.Single)">
            <summary>
            Set this up as a peaking EQ
            </summary>
            <param name="sampleRate">Sample Rate</param>
            <param name="centreFrequency">Centre Frequency</param>
            <param name="q">Bandwidth (Q)</param>
            <param name="dbGain">Gain in decibels</param>
        </member>
        <member name="M:NAudio.Dsp.BiQuadFilter.SetHighPassFilter(System.Single,System.Single,System.Single)">
            <summary>
            Set this as a high pass filter
            </summary>
        </member>
        <member name="M:NAudio.Dsp.BiQuadFilter.LowPassFilter(System.Single,System.Single,System.Single)">
            <summary>
            Create a low pass filter
            </summary>
        </member>
        <member name="M:NAudio.Dsp.BiQuadFilter.HighPassFilter(System.Single,System.Single,System.Single)">
            <summary>
            Create a High pass filter
            </summary>
        </member>
        <member name="M:NAudio.Dsp.BiQuadFilter.BandPassFilterConstantSkirtGain(System.Single,System.Single,System.Single)">
            <summary>
            Create a bandpass filter with constant skirt gain
            </summary>
        </member>
        <member name="M:NAudio.Dsp.BiQuadFilter.BandPassFilterConstantPeakGain(System.Single,System.Single,System.Single)">
            <summary>
            Create a bandpass filter with constant peak gain
            </summary>
        </member>
        <member name="M:NAudio.Dsp.BiQuadFilter.NotchFilter(System.Single,System.Single,System.Single)">
            <summary>
            Creates a notch filter
            </summary>
        </member>
        <member name="M:NAudio.Dsp.BiQuadFilter.AllPassFilter(System.Single,System.Single,System.Single)">
            <summary>
            Creaes an all pass filter
            </summary>
        </member>
        <member name="M:NAudio.Dsp.BiQuadFilter.PeakingEQ(System.Single,System.Single,System.Single,System.Single)">
            <summary>
            Create a Peaking EQ
            </summary>
        </member>
        <member name="M:NAudio.Dsp.BiQuadFilter.LowShelf(System.Single,System.Single,System.Single,System.Single)">
            <summary>
            H(s) = A * (s^2 + (sqrt(A)/Q)*s + A)/(A*s^2 + (sqrt(A)/Q)*s + 1)
            </summary>
            <param name="sampleRate"></param>
            <param name="cutoffFrequency"></param>
            <param name="shelfSlope">a "shelf slope" parameter (for shelving EQ only).  
            When S = 1, the shelf slope is as steep as it can be and remain monotonically
            increasing or decreasing gain with frequency.  The shelf slope, in dB/octave, 
            remains proportional to S for all other values for a fixed f0/Fs and dBgain.</param>
            <param name="dbGain">Gain in decibels</param>
        </member>
        <member name="M:NAudio.Dsp.BiQuadFilter.HighShelf(System.Single,System.Single,System.Single,System.Single)">
            <summary>
            H(s) = A * (A*s^2 + (sqrt(A)/Q)*s + 1)/(s^2 + (sqrt(A)/Q)*s + A)
            </summary>
            <param name="sampleRate"></param>
            <param name="cutoffFrequency"></param>
            <param name="shelfSlope"></param>
            <param name="dbGain"></param>
            <returns></returns>
        </member>
        <member name="T:NAudio.Dsp.Complex">
            <summary>
            Type to represent complex number
            </summary>
        </member>
        <member name="F:NAudio.Dsp.Complex.X">
            <summary>
            Real Part
            </summary>
        </member>
        <member name="F:NAudio.Dsp.Complex.Y">
            <summary>
            Imaginary Part
            </summary>
        </member>
        <member name="T:NAudio.Dsp.FastFourierTransform">
            <summary>
            Summary description for FastFourierTransform.
            </summary>
        </member>
        <member name="M:NAudio.Dsp.FastFourierTransform.FFT(System.Boolean,System.Int32,NAudio.Dsp.Complex[])">
            <summary>
            This computes an in-place complex-to-complex FFT 
            x and y are the real and imaginary arrays of 2^m points.
            </summary>
        </member>
        <member name="M:NAudio.Dsp.FastFourierTransform.HammingWindow(System.Int32,System.Int32)">
            <summary>
            Applies a Hamming Window
            </summary>
            <param name="n">Index into frame</param>
            <param name="frameSize">Frame size (e.g. 1024)</param>
            <returns>Multiplier for Hamming window</returns>
        </member>
        <member name="M:NAudio.Dsp.FastFourierTransform.HannWindow(System.Int32,System.Int32)">
            <summary>
            Applies a Hann Window
            </summary>
            <param name="n">Index into frame</param>
            <param name="frameSize">Frame size (e.g. 1024)</param>
            <returns>Multiplier for Hann window</returns>
        </member>
        <member name="M:NAudio.Dsp.FastFourierTransform.BlackmannHarrisWindow(System.Int32,System.Int32)">
            <summary>
            Applies a Blackman-Harris Window
            </summary>
            <param name="n">Index into frame</param>
            <param name="frameSize">Frame size (e.g. 1024)</param>
            <returns>Multiplier for Blackmann-Harris window</returns>
        </member>
        <member name="T:NAudio.Dsp.ImpulseResponseConvolution">
            <summary>
            Summary description for ImpulseResponseConvolution.
            </summary>
        </member>
        <member name="M:NAudio.Dsp.ImpulseResponseConvolution.Convolve(System.Single[],System.Single[])">
            <summary>
            A very simple mono convolution algorithm
            </summary>
            <remarks>
            This will be very slow
            </remarks>
        </member>
        <member name="M:NAudio.Dsp.ImpulseResponseConvolution.Normalize(System.Single[])">
            <summary>
            This is actually a downwards normalize for data that will clip
            </summary>
        </member>
        <member name="M:NAudio.FileFormats.Wav.WaveFileChunkReader.ReadDs64Chunk(System.IO.BinaryReader)">
            <summary>
            http://tech.ebu.ch/docs/tech/tech3306-2009.pdf
            </summary>
        </member>
        <member name="P:NAudio.FileFormats.Wav.WaveFileChunkReader.WaveFormat">
            <summary>
            WaveFormat
            </summary>
        </member>
        <member name="P:NAudio.FileFormats.Wav.WaveFileChunkReader.DataChunkPosition">
            <summary>
            Data Chunk Position
            </summary>
        </member>
        <member name="P:NAudio.FileFormats.Wav.WaveFileChunkReader.DataChunkLength">
            <summary>
            Data Chunk Length
            </summary>
        </member>
        <member name="P:NAudio.FileFormats.Wav.WaveFileChunkReader.RiffChunks">
            <summary>
            Riff Chunks
            </summary>
        </member>
        <member name="T:NAudio.FileFormats.Map.CakewalkDrumMapping">
            <summary>
            Represents an entry in a Cakewalk drum map
            </summary>
        </member>
        <member name="P:NAudio.FileFormats.Map.CakewalkDrumMapping.NoteName">
            <summary>
            User customisable note name
            </summary>
        </member>
        <member name="P:NAudio.FileFormats.Map.CakewalkDrumMapping.InNote">
            <summary>
            Input MIDI note number
            </summary>
        </member>
        <member name="P:NAudio.FileFormats.Map.CakewalkDrumMapping.OutNote">
            <summary>
            Output MIDI note number
            </summary>
        </member>
        <member name="P:NAudio.FileFormats.Map.CakewalkDrumMapping.OutPort">
            <summary>
            Output port
            </summary>
        </member>
        <member name="P:NAudio.FileFormats.Map.CakewalkDrumMapping.Channel">
            <summary>
            Output MIDI Channel
            </summary>
        </member>
        <member name="P:NAudio.FileFormats.Map.CakewalkDrumMapping.VelocityAdjust">
            <summary>
            Velocity adjustment
            </summary>
        </member>
        <member name="P:NAudio.FileFormats.Map.CakewalkDrumMapping.VelocityScale">
            <summary>
            Velocity scaling - in percent
            </summary>
        </member>
        <member name="M:NAudio.FileFormats.Map.CakewalkDrumMapping.ToString">
            <summary>
            Describes this drum map entry
            </summary>
        </member>
        <member name="T:NAudio.FileFormats.Map.CakewalkMapFile">
            <summary>
            Represents a Cakewalk Drum Map file (.map)
            </summary>
        </member>
        <member name="M:NAudio.FileFormats.Map.CakewalkMapFile.#ctor(System.String)">
            <summary>
            Parses a Cakewalk Drum Map file
            </summary>
            <param name="filename">Path of the .map file</param>
        </member>
        <member name="P:NAudio.FileFormats.Map.CakewalkMapFile.DrumMappings">
            <summary>
            The drum mappings in this drum map
            </summary>
        </member>
        <member name="M:NAudio.FileFormats.Map.CakewalkMapFile.ToString">
            <summary>
            Describes this drum map
            </summary>
        </member>
        <member name="T:NAudio.FileFormats.Mp3.DmoMp3FrameDecompressor">
            <summary>
            MP3 Frame decompressor using the Windows Media MP3 Decoder DMO object
            </summary>
        </member>
        <member name="M:NAudio.FileFormats.Mp3.DmoMp3FrameDecompressor.#ctor(NAudio.Wave.WaveFormat)">
            <summary>
            Initializes a new instance of the DMO MP3 Frame decompressor
            </summary>
            <param name="sourceFormat"></param>
        </member>
        <member name="P:NAudio.FileFormats.Mp3.DmoMp3FrameDecompressor.OutputFormat">
            <summary>
            Converted PCM WaveFormat
            </summary>
        </member>
        <member name="M:NAudio.FileFormats.Mp3.DmoMp3FrameDecompressor.DecompressFrame(NAudio.Wave.Mp3Frame,System.Byte[],System.Int32)">
            <summary>
            Decompress a single frame of MP3
            </summary>
        </member>
        <member name="M:NAudio.FileFormats.Mp3.DmoMp3FrameDecompressor.Reset">
            <summary>
            Alerts us that a reposition has occured so the MP3 decoder needs to reset its state
            </summary>
        </member>
        <member name="M:NAudio.FileFormats.Mp3.DmoMp3FrameDecompressor.Dispose">
            <summary>
            Dispose of this obejct and clean up resources
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.AudioSubtypes">
            <summary>
            Audio Subtype GUIDs
            http://msdn.microsoft.com/en-us/library/windows/desktop/aa372553%28v=vs.85%29.aspx
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.MFAudioFormat_AAC">
            <summary>
            Advanced Audio Coding (AAC).
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.MFAudioFormat_ADTS">
            <summary>
            Not used
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.MFAudioFormat_Dolby_AC3_SPDIF">
            <summary>
            Dolby AC-3 audio over Sony/Philips Digital Interface (S/PDIF).
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.MFAudioFormat_DRM">
            <summary>
            Encrypted audio data used with secure audio path.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.MFAudioFormat_DTS">
            <summary>
            Digital Theater Systems (DTS) audio.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.MFAudioFormat_Float">
            <summary>
            Uncompressed IEEE floating-point audio.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.MFAudioFormat_MP3">
            <summary>
            MPEG Audio Layer-3 (MP3).
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.MFAudioFormat_MPEG">
            <summary>
            MPEG-1 audio payload.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.MFAudioFormat_MSP1">
            <summary>
            Windows Media Audio 9 Voice codec.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.MFAudioFormat_PCM">
            <summary>
            Uncompressed PCM audio.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.MFAudioFormat_WMASPDIF">
            <summary>
            Windows Media Audio 9 Professional codec over S/PDIF.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.MFAudioFormat_WMAudio_Lossless">
            <summary>
            Windows Media Audio 9 Lossless codec or Windows Media Audio 9.1 codec.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.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:NAudio.MediaFoundation.AudioSubtypes.MFAudioFormat_WMAudioV9">
            <summary>
            Windows Media Audio 9 Professional codec or Windows Media Audio 9.1 Professional codec.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.MFAudioFormat_Dolby_AC3">
            <summary>
            Dolby Digital (AC-3).
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.MEDIASUBTYPE_RAW_AAC1">
            <summary>
            MPEG-4 and AAC Audio Types
            http://msdn.microsoft.com/en-us/library/windows/desktop/dd317599(v=vs.85).aspx
            Reference : wmcodecdsp.h
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.MEDIASUBTYPE_DVM">
            <summary>
            Dolby Audio Types
            http://msdn.microsoft.com/en-us/library/windows/desktop/dd317599(v=vs.85).aspx
            Reference : wmcodecdsp.h
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.MEDIASUBTYPE_DOLBY_DDPLUS">
            <summary>
            Dolby Audio Types
            http://msdn.microsoft.com/en-us/library/windows/desktop/dd317599(v=vs.85).aspx
            Reference : wmcodecdsp.h
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.KSDATAFORMAT_SUBTYPE_MULAW">
            <summary>
            μ-law coding
            http://msdn.microsoft.com/en-us/library/windows/desktop/dd390971(v=vs.85).aspx
            Reference : Ksmedia.h
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.KSDATAFORMAT_SUBTYPE_ADPCM">
            <summary>
            Adaptive delta pulse code modulation (ADPCM)
            http://msdn.microsoft.com/en-us/library/windows/desktop/dd390971(v=vs.85).aspx
            Reference : Ksmedia.h
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.KSDATAFORMAT_SUBTYPE_IEC61937_DOLBY_DIGITAL_PLUS">
            <summary>
            Dolby Digital Plus formatted for HDMI output.
            http://msdn.microsoft.com/en-us/library/windows/hardware/ff538392(v=vs.85).aspx
            Reference : internet
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.MEDIASUBTYPE_MSAUDIO1">
            <summary>
            MSAudio1 - unknown meaning
            Reference : wmcodecdsp.h
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.ImaAdpcm">
            <summary>
            IMA ADPCM ACM Wrapper
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.AudioSubtypes.WMMEDIASUBTYPE_WMSP2">
            <summary>
            WMSP2 - unknown meaning
            Reference: wmsdkidl.h
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.IMFReadWriteClassFactory">
            <summary>
            Creates an instance of either the sink writer or the source reader.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFReadWriteClassFactory.CreateInstanceFromURL(System.Guid,System.String,NAudio.MediaFoundation.IMFAttributes,System.Guid,System.Object@)">
            <summary>
            Creates an instance of the sink writer or source reader, given a URL.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFReadWriteClassFactory.CreateInstanceFromObject(System.Guid,System.Object,NAudio.MediaFoundation.IMFAttributes,System.Guid,System.Object@)">
            <summary>
            Creates an instance of the sink writer or source reader, given an IUnknown pointer. 
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.MFReadWriteClassFactory">
            <summary>
            CLSID_MFReadWriteClassFactory
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.MediaFoundationErrors">
            <summary>
            Media Foundation Errors
            
            </summary>
            <remarks>
             RANGES
             14000 - 14999 = General Media Foundation errors
             15000 - 15999 = ASF parsing errors
             16000 - 16999 = Media Source errors
             17000 - 17999 = MEDIAFOUNDATION Network Error Events
             18000 - 18999 = MEDIAFOUNDATION WMContainer Error Events
             19000 - 19999 = MEDIAFOUNDATION Media Sink Error Events
             20000 - 20999 = Renderer errors
             21000 - 21999 = Topology Errors
             25000 - 25999 = Timeline Errors
             26000 - 26999 = Unused
             28000 - 28999 = Transform errors
             29000 - 29999 = Content Protection errors
             40000 - 40999 = Clock errors
             41000 - 41999 = MF Quality Management Errors
             42000 - 42999 = MF Transcode API Errors
            </remarks>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_PLATFORM_NOT_INITIALIZED">
            
             MessageId: MF_E_PLATFORM_NOT_INITIALIZED
            
             MessageText:
            
             Platform not initialized. Please call MFStartup().%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_BUFFERTOOSMALL">
            
             MessageId: MF_E_BUFFERTOOSMALL
            
             MessageText:
            
             The buffer was too small to carry out the requested action.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_INVALIDREQUEST">
            
             MessageId: MF_E_INVALIDREQUEST
            
             MessageText:
            
             The request is invalid in the current state.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_INVALIDSTREAMNUMBER">
            
             MessageId: MF_E_INVALIDSTREAMNUMBER
            
             MessageText:
            
             The stream number provided was invalid.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_INVALIDMEDIATYPE">
            
             MessageId: MF_E_INVALIDMEDIATYPE
            
             MessageText:
            
             The data specified for the media type is invalid, inconsistent, or not supported by this object.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NOTACCEPTING">
            
             MessageId: MF_E_NOTACCEPTING
            
             MessageText:
            
             The callee is currently not accepting further input.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NOT_INITIALIZED">
            
             MessageId: MF_E_NOT_INITIALIZED
            
             MessageText:
            
             This object needs to be initialized before the requested operation can be carried out.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_UNSUPPORTED_REPRESENTATION">
            
             MessageId: MF_E_UNSUPPORTED_REPRESENTATION
            
             MessageText:
            
             The requested representation is not supported by this object.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NO_MORE_TYPES">
            
             MessageId: MF_E_NO_MORE_TYPES
            
             MessageText:
            
             An object ran out of media types to suggest therefore the requested chain of streaming objects cannot be completed.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_UNSUPPORTED_SERVICE">
            
             MessageId: MF_E_UNSUPPORTED_SERVICE
            
             MessageText:
            
             The object does not support the specified service.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_UNEXPECTED">
            
             MessageId: MF_E_UNEXPECTED
            
             MessageText:
            
             An unexpected error has occurred in the operation requested.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_INVALIDNAME">
            
             MessageId: MF_E_INVALIDNAME
            
             MessageText:
            
             Invalid name.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_INVALIDTYPE">
            
             MessageId: MF_E_INVALIDTYPE
            
             MessageText:
            
             Invalid type.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_INVALID_FILE_FORMAT">
            
             MessageId: MF_E_INVALID_FILE_FORMAT
            
             MessageText:
            
             The file does not conform to the relevant file format specification.
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_INVALIDINDEX">
            
             MessageId: MF_E_INVALIDINDEX
            
             MessageText:
            
             Invalid index.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_INVALID_TIMESTAMP">
            
             MessageId: MF_E_INVALID_TIMESTAMP
            
             MessageText:
            
             An invalid timestamp was given.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_UNSUPPORTED_SCHEME">
            
             MessageId: MF_E_UNSUPPORTED_SCHEME
            
             MessageText:
            
             The scheme of the given URL is unsupported.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_UNSUPPORTED_BYTESTREAM_TYPE">
            
             MessageId: MF_E_UNSUPPORTED_BYTESTREAM_TYPE
            
             MessageText:
            
             The byte stream type of the given URL is unsupported.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_UNSUPPORTED_TIME_FORMAT">
            
             MessageId: MF_E_UNSUPPORTED_TIME_FORMAT
            
             MessageText:
            
             The given time format is unsupported.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NO_SAMPLE_TIMESTAMP">
            
             MessageId: MF_E_NO_SAMPLE_TIMESTAMP
            
             MessageText:
            
             The Media Sample does not have a timestamp.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NO_SAMPLE_DURATION">
            
             MessageId: MF_E_NO_SAMPLE_DURATION
            
             MessageText:
            
             The Media Sample does not have a duration.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_INVALID_STREAM_DATA">
            
             MessageId: MF_E_INVALID_STREAM_DATA
            
             MessageText:
            
             The request failed because the data in the stream is corrupt.%0\n.
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_RT_UNAVAILABLE">
            
             MessageId: MF_E_RT_UNAVAILABLE
            
             MessageText:
            
             Real time services are not available.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_UNSUPPORTED_RATE">
            
             MessageId: MF_E_UNSUPPORTED_RATE
            
             MessageText:
            
             The specified rate is not supported.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_THINNING_UNSUPPORTED">
            
             MessageId: MF_E_THINNING_UNSUPPORTED
            
             MessageText:
            
             This component does not support stream-thinning.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_REVERSE_UNSUPPORTED">
            
             MessageId: MF_E_REVERSE_UNSUPPORTED
            
             MessageText:
            
             The call failed because no reverse playback rates are available.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_UNSUPPORTED_RATE_TRANSITION">
            
             MessageId: MF_E_UNSUPPORTED_RATE_TRANSITION
            
             MessageText:
            
             The requested rate transition cannot occur in the current state.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_RATE_CHANGE_PREEMPTED">
            
             MessageId: MF_E_RATE_CHANGE_PREEMPTED
            
             MessageText:
            
             The requested rate change has been pre-empted and will not occur.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NOT_FOUND">
            
             MessageId: MF_E_NOT_FOUND
            
             MessageText:
            
             The specified object or value does not exist.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NOT_AVAILABLE">
            
             MessageId: MF_E_NOT_AVAILABLE
            
             MessageText:
            
             The requested value is not available.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NO_CLOCK">
            
             MessageId: MF_E_NO_CLOCK
            
             MessageText:
            
             The specified operation requires a clock and no clock is available.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_S_MULTIPLE_BEGIN">
            
             MessageId: MF_S_MULTIPLE_BEGIN
            
             MessageText:
            
             This callback and state had already been passed in to this event generator earlier.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_MULTIPLE_BEGIN">
            
             MessageId: MF_E_MULTIPLE_BEGIN
            
             MessageText:
            
             This callback has already been passed in to this event generator.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_MULTIPLE_SUBSCRIBERS">
            
             MessageId: MF_E_MULTIPLE_SUBSCRIBERS
            
             MessageText:
            
             Some component is already listening to events on this event generator.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TIMER_ORPHANED">
            
             MessageId: MF_E_TIMER_ORPHANED
            
             MessageText:
            
             This timer was orphaned before its callback time arrived.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_STATE_TRANSITION_PENDING">
            
             MessageId: MF_E_STATE_TRANSITION_PENDING
            
             MessageText:
            
             A state transition is already pending.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_UNSUPPORTED_STATE_TRANSITION">
            
             MessageId: MF_E_UNSUPPORTED_STATE_TRANSITION
            
             MessageText:
            
             The requested state transition is unsupported.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_UNRECOVERABLE_ERROR_OCCURRED">
            
             MessageId: MF_E_UNRECOVERABLE_ERROR_OCCURRED
            
             MessageText:
            
             An unrecoverable error has occurred.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_SAMPLE_HAS_TOO_MANY_BUFFERS">
            
             MessageId: MF_E_SAMPLE_HAS_TOO_MANY_BUFFERS
            
             MessageText:
            
             The provided sample has too many buffers.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_SAMPLE_NOT_WRITABLE">
            
             MessageId: MF_E_SAMPLE_NOT_WRITABLE
            
             MessageText:
            
             The provided sample is not writable.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_INVALID_KEY">
            
             MessageId: MF_E_INVALID_KEY
            
             MessageText:
            
             The specified key is not valid.
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_BAD_STARTUP_VERSION">
            
             MessageId: MF_E_BAD_STARTUP_VERSION
            
             MessageText:
            
             You are calling MFStartup with the wrong MF_VERSION. Mismatched bits?
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_UNSUPPORTED_CAPTION">
            
             MessageId: MF_E_UNSUPPORTED_CAPTION
            
             MessageText:
            
             The caption of the given URL is unsupported.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_INVALID_POSITION">
            
             MessageId: MF_E_INVALID_POSITION
            
             MessageText:
            
             The operation on the current offset is not permitted.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ATTRIBUTENOTFOUND">
            
             MessageId: MF_E_ATTRIBUTENOTFOUND
            
             MessageText:
            
             The requested attribute was not found.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_PROPERTY_TYPE_NOT_ALLOWED">
            
             MessageId: MF_E_PROPERTY_TYPE_NOT_ALLOWED
            
             MessageText:
            
             The specified property type is not allowed in this context.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_PROPERTY_TYPE_NOT_SUPPORTED">
            
             MessageId: MF_E_PROPERTY_TYPE_NOT_SUPPORTED
            
             MessageText:
            
             The specified property type is not supported.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_PROPERTY_EMPTY">
            
             MessageId: MF_E_PROPERTY_EMPTY
            
             MessageText:
            
             The specified property is empty.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_PROPERTY_NOT_EMPTY">
            
             MessageId: MF_E_PROPERTY_NOT_EMPTY
            
             MessageText:
            
             The specified property is not empty.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_PROPERTY_VECTOR_NOT_ALLOWED">
            
             MessageId: MF_E_PROPERTY_VECTOR_NOT_ALLOWED
            
             MessageText:
            
             The vector property specified is not allowed in this context.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_PROPERTY_VECTOR_REQUIRED">
            
             MessageId: MF_E_PROPERTY_VECTOR_REQUIRED
            
             MessageText:
            
             A vector property is required in this context.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_OPERATION_CANCELLED">
            
             MessageId: MF_E_OPERATION_CANCELLED
            
             MessageText:
            
             The operation is cancelled.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_BYTESTREAM_NOT_SEEKABLE">
            
             MessageId: MF_E_BYTESTREAM_NOT_SEEKABLE
            
             MessageText:
            
             The provided bytestream was expected to be seekable and it is not.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_DISABLED_IN_SAFEMODE">
            
             MessageId: MF_E_DISABLED_IN_SAFEMODE
            
             MessageText:
            
             The Media Foundation platform is disabled when the system is running in Safe Mode.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_CANNOT_PARSE_BYTESTREAM">
            
             MessageId: MF_E_CANNOT_PARSE_BYTESTREAM
            
             MessageText:
            
             The Media Source could not parse the byte stream.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_SOURCERESOLVER_MUTUALLY_EXCLUSIVE_FLAGS">
            
             MessageId: MF_E_SOURCERESOLVER_MUTUALLY_EXCLUSIVE_FLAGS
            
             MessageText:
            
             Mutually exclusive flags have been specified to source resolver. This flag combination is invalid.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_MEDIAPROC_WRONGSTATE">
            
             MessageId: MF_E_MEDIAPROC_WRONGSTATE
            
             MessageText:
            
             MediaProc is in the wrong state%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_RT_THROUGHPUT_NOT_AVAILABLE">
            
             MessageId: MF_E_RT_THROUGHPUT_NOT_AVAILABLE
            
             MessageText:
            
             Real time I/O service can not provide requested throughput.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_RT_TOO_MANY_CLASSES">
            
             MessageId: MF_E_RT_TOO_MANY_CLASSES
            
             MessageText:
            
             The workqueue cannot be registered with more classes.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_RT_WOULDBLOCK">
            
             MessageId: MF_E_RT_WOULDBLOCK
            
             MessageText:
            
             This operation cannot succeed because another thread owns this object.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NO_BITPUMP">
            
             MessageId: MF_E_NO_BITPUMP
            
             MessageText:
            
             Internal. Bitpump not found.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_RT_OUTOFMEMORY">
            
             MessageId: MF_E_RT_OUTOFMEMORY
            
             MessageText:
            
             No more RT memory available.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_RT_WORKQUEUE_CLASS_NOT_SPECIFIED">
            
             MessageId: MF_E_RT_WORKQUEUE_CLASS_NOT_SPECIFIED
            
             MessageText:
            
             An MMCSS class has not been set for this work queue.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_INSUFFICIENT_BUFFER">
            
             MessageId: MF_E_INSUFFICIENT_BUFFER
            
             MessageText:
            
             Insufficient memory for response.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_CANNOT_CREATE_SINK">
            
             MessageId: MF_E_CANNOT_CREATE_SINK
            
             MessageText:
            
             Activate failed to create mediasink. Call OutputNode::GetUINT32(MF_TOPONODE_MAJORTYPE) for more information. %0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_BYTESTREAM_UNKNOWN_LENGTH">
            
             MessageId: MF_E_BYTESTREAM_UNKNOWN_LENGTH
            
             MessageText:
            
             The length of the provided bytestream is unknown.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_SESSION_PAUSEWHILESTOPPED">
            
             MessageId: MF_E_SESSION_PAUSEWHILESTOPPED
            
             MessageText:
            
             The media session cannot pause from a stopped state.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_S_ACTIVATE_REPLACED">
            
             MessageId: MF_S_ACTIVATE_REPLACED
            
             MessageText:
            
             The activate could not be created in the remote process for some reason it was replaced with empty one.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_FORMAT_CHANGE_NOT_SUPPORTED">
            
             MessageId: MF_E_FORMAT_CHANGE_NOT_SUPPORTED
            
             MessageText:
            
             The data specified for the media type is supported, but would require a format change, which is not supported by this object.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_INVALID_WORKQUEUE">
            
             MessageId: MF_E_INVALID_WORKQUEUE
            
             MessageText:
            
             The operation failed because an invalid combination of workqueue ID and flags was specified.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_DRM_UNSUPPORTED">
            
             MessageId: MF_E_DRM_UNSUPPORTED
            
             MessageText:
            
             No DRM support is available.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_UNAUTHORIZED">
            
             MessageId: MF_E_UNAUTHORIZED
            
             MessageText:
            
             This operation is not authorized.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_OUT_OF_RANGE">
            
             MessageId: MF_E_OUT_OF_RANGE
            
             MessageText:
            
             The value is not in the specified or valid range.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_INVALID_CODEC_MERIT">
            
             MessageId: MF_E_INVALID_CODEC_MERIT
            
             MessageText:
            
             The registered codec merit is not valid.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_HW_MFT_FAILED_START_STREAMING">
            
             MessageId: MF_E_HW_MFT_FAILED_START_STREAMING
            
             MessageText:
            
             Hardware MFT failed to start streaming due to lack of hardware resources.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_S_ASF_PARSEINPROGRESS">
            
             MessageId: MF_S_ASF_PARSEINPROGRESS
            
             MessageText:
            
             Parsing is still in progress and is not yet complete.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ASF_PARSINGINCOMPLETE">
            
             MessageId: MF_E_ASF_PARSINGINCOMPLETE
            
             MessageText:
            
             Not enough data have been parsed to carry out the requested action.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ASF_MISSINGDATA">
            
             MessageId: MF_E_ASF_MISSINGDATA
            
             MessageText:
            
             There is a gap in the ASF data provided.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ASF_INVALIDDATA">
            
             MessageId: MF_E_ASF_INVALIDDATA
            
             MessageText:
            
             The data provided are not valid ASF.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ASF_OPAQUEPACKET">
            
             MessageId: MF_E_ASF_OPAQUEPACKET
            
             MessageText:
            
             The packet is opaque, so the requested information cannot be returned.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ASF_NOINDEX">
            
             MessageId: MF_E_ASF_NOINDEX
            
             MessageText:
            
             The requested operation failed since there is no appropriate ASF index.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ASF_OUTOFRANGE">
            
             MessageId: MF_E_ASF_OUTOFRANGE
            
             MessageText:
            
             The value supplied is out of range for this operation.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ASF_INDEXNOTLOADED">
            
             MessageId: MF_E_ASF_INDEXNOTLOADED
            
             MessageText:
            
             The index entry requested needs to be loaded before it can be available.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ASF_TOO_MANY_PAYLOADS">
            
             MessageId: MF_E_ASF_TOO_MANY_PAYLOADS
            
             MessageText:
            
             The packet has reached the maximum number of payloads.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ASF_UNSUPPORTED_STREAM_TYPE">
            
             MessageId: MF_E_ASF_UNSUPPORTED_STREAM_TYPE
            
             MessageText:
            
             Stream type is not supported.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ASF_DROPPED_PACKET">
            
             MessageId: MF_E_ASF_DROPPED_PACKET
            
             MessageText:
            
             One or more ASF packets were dropped.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NO_EVENTS_AVAILABLE">
            
             MessageId: MF_E_NO_EVENTS_AVAILABLE
            
             MessageText:
            
             There are no events available in the queue.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_INVALID_STATE_TRANSITION">
            
             MessageId: MF_E_INVALID_STATE_TRANSITION
            
             MessageText:
            
             A media source cannot go from the stopped state to the paused state.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_END_OF_STREAM">
            
             MessageId: MF_E_END_OF_STREAM
            
             MessageText:
            
             The media stream cannot process any more samples because there are no more samples in the stream.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_SHUTDOWN">
            
             MessageId: MF_E_SHUTDOWN
            
             MessageText:
            
             The request is invalid because Shutdown() has been called.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_MP3_NOTFOUND">
            
             MessageId: MF_E_MP3_NOTFOUND
            
             MessageText:
            
             The MP3 object was not found.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_MP3_OUTOFDATA">
            
             MessageId: MF_E_MP3_OUTOFDATA
            
             MessageText:
            
             The MP3 parser ran out of data before finding the MP3 object.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_MP3_NOTMP3">
            
             MessageId: MF_E_MP3_NOTMP3
            
             MessageText:
            
             The file is not really a MP3 file.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_MP3_NOTSUPPORTED">
            
             MessageId: MF_E_MP3_NOTSUPPORTED
            
             MessageText:
            
             The MP3 file is not supported.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NO_DURATION">
            
             MessageId: MF_E_NO_DURATION
            
             MessageText:
            
             The Media stream has no duration.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_INVALID_FORMAT">
            
             MessageId: MF_E_INVALID_FORMAT
            
             MessageText:
            
             The Media format is recognized but is invalid.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_PROPERTY_NOT_FOUND">
            
             MessageId: MF_E_PROPERTY_NOT_FOUND
            
             MessageText:
            
             The property requested was not found.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_PROPERTY_READ_ONLY">
            
             MessageId: MF_E_PROPERTY_READ_ONLY
            
             MessageText:
            
             The property is read only.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_PROPERTY_NOT_ALLOWED">
            
             MessageId: MF_E_PROPERTY_NOT_ALLOWED
            
             MessageText:
            
             The specified property is not allowed in this context.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_MEDIA_SOURCE_NOT_STARTED">
            
             MessageId: MF_E_MEDIA_SOURCE_NOT_STARTED
            
             MessageText:
            
             The media source is not started.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_UNSUPPORTED_FORMAT">
            
             MessageId: MF_E_UNSUPPORTED_FORMAT
            
             MessageText:
            
             The Media format is recognized but not supported.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_MP3_BAD_CRC">
            
             MessageId: MF_E_MP3_BAD_CRC
            
             MessageText:
            
             The MPEG frame has bad CRC.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NOT_PROTECTED">
            
             MessageId: MF_E_NOT_PROTECTED
            
             MessageText:
            
             The file is not protected.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_MEDIA_SOURCE_WRONGSTATE">
            
             MessageId: MF_E_MEDIA_SOURCE_WRONGSTATE
            
             MessageText:
            
             The media source is in the wrong state%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_MEDIA_SOURCE_NO_STREAMS_SELECTED">
            
             MessageId: MF_E_MEDIA_SOURCE_NO_STREAMS_SELECTED
            
             MessageText:
            
             No streams are selected in source presentation descriptor.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_CANNOT_FIND_KEYFRAME_SAMPLE">
            
             MessageId: MF_E_CANNOT_FIND_KEYFRAME_SAMPLE
            
             MessageText:
            
             No key frame sample was found.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NETWORK_RESOURCE_FAILURE">
            
             MessageId: MF_E_NETWORK_RESOURCE_FAILURE
            
             MessageText:
            
             An attempt to acquire a network resource failed.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_WRITE">
            
             MessageId: MF_E_NET_WRITE
            
             MessageText:
            
             Error writing to the network.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_READ">
            
             MessageId: MF_E_NET_READ
            
             MessageText:
            
             Error reading from the network.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_REQUIRE_NETWORK">
            
             MessageId: MF_E_NET_REQUIRE_NETWORK
            
             MessageText:
            
             Internal. Entry cannot complete operation without network.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_REQUIRE_ASYNC">
            
             MessageId: MF_E_NET_REQUIRE_ASYNC
            
             MessageText:
            
             Internal. Async op is required.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_BWLEVEL_NOT_SUPPORTED">
            
             MessageId: MF_E_NET_BWLEVEL_NOT_SUPPORTED
            
             MessageText:
            
             Internal. Bandwidth levels are not supported.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_STREAMGROUPS_NOT_SUPPORTED">
            
             MessageId: MF_E_NET_STREAMGROUPS_NOT_SUPPORTED
            
             MessageText:
            
             Internal. Stream groups are not supported.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_MANUALSS_NOT_SUPPORTED">
            
             MessageId: MF_E_NET_MANUALSS_NOT_SUPPORTED
            
             MessageText:
            
             Manual stream selection is not supported.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_INVALID_PRESENTATION_DESCRIPTOR">
            
             MessageId: MF_E_NET_INVALID_PRESENTATION_DESCRIPTOR
            
             MessageText:
            
             Invalid presentation descriptor.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_CACHESTREAM_NOT_FOUND">
            
             MessageId: MF_E_NET_CACHESTREAM_NOT_FOUND
            
             MessageText:
            
             Cannot find cache stream.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_I_MANUAL_PROXY">
            
             MessageId: MF_I_MANUAL_PROXY
            
             MessageText:
            
             The proxy setting is manual.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_REQUIRE_INPUT">
            duplicate removed
            MessageId=17011 Severity=Informational Facility=MEDIAFOUNDATION SymbolicName=MF_E_INVALID_REQUEST
            Language=English
            The request is invalid in the current state.%0
            .
            
             MessageId: MF_E_NET_REQUIRE_INPUT
            
             MessageText:
            
             Internal. Entry cannot complete operation without input.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_REDIRECT">
            
             MessageId: MF_E_NET_REDIRECT
            
             MessageText:
            
             The client redirected to another server.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_REDIRECT_TO_PROXY">
            
             MessageId: MF_E_NET_REDIRECT_TO_PROXY
            
             MessageText:
            
             The client is redirected to a proxy server.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_TOO_MANY_REDIRECTS">
            
             MessageId: MF_E_NET_TOO_MANY_REDIRECTS
            
             MessageText:
            
             The client reached maximum redirection limit.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_TIMEOUT">
            
             MessageId: MF_E_NET_TIMEOUT
            
             MessageText:
            
             The server, a computer set up to offer multimedia content to other computers, could not handle your request for multimedia content in a timely manner.  Please try again later.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_CLIENT_CLOSE">
            
             MessageId: MF_E_NET_CLIENT_CLOSE
            
             MessageText:
            
             The control socket is closed by the client.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_BAD_CONTROL_DATA">
            
             MessageId: MF_E_NET_BAD_CONTROL_DATA
            
             MessageText:
            
             The server received invalid data from the client on the control connection.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_INCOMPATIBLE_SERVER">
            
             MessageId: MF_E_NET_INCOMPATIBLE_SERVER
            
             MessageText:
            
             The server is not a compatible streaming media server.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_UNSAFE_URL">
            
             MessageId: MF_E_NET_UNSAFE_URL
            
             MessageText:
            
             Url.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_CACHE_NO_DATA">
            
             MessageId: MF_E_NET_CACHE_NO_DATA
            
             MessageText:
            
             Data is not available.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_EOL">
            
             MessageId: MF_E_NET_EOL
            
             MessageText:
            
             End of line.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_BAD_REQUEST">
            
             MessageId: MF_E_NET_BAD_REQUEST
            
             MessageText:
            
             The request could not be understood by the server.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_INTERNAL_SERVER_ERROR">
            
             MessageId: MF_E_NET_INTERNAL_SERVER_ERROR
            
             MessageText:
            
             The server encountered an unexpected condition which prevented it from fulfilling the request.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_SESSION_NOT_FOUND">
            
             MessageId: MF_E_NET_SESSION_NOT_FOUND
            
             MessageText:
            
             Session not found.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_NOCONNECTION">
            
             MessageId: MF_E_NET_NOCONNECTION
            
             MessageText:
            
             There is no connection established with the Windows Media server. The operation failed.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_CONNECTION_FAILURE">
            
             MessageId: MF_E_NET_CONNECTION_FAILURE
            
             MessageText:
            
             The network connection has failed.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_INCOMPATIBLE_PUSHSERVER">
            
             MessageId: MF_E_NET_INCOMPATIBLE_PUSHSERVER
            
             MessageText:
            
             The Server service that received the HTTP push request is not a compatible version of Windows Media Services (WMS).  This error may indicate the push request was received by IIS instead of WMS.  Ensure WMS is started and has the HTTP Server control protocol properly enabled and try again.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_SERVER_ACCESSDENIED">
            
             MessageId: MF_E_NET_SERVER_ACCESSDENIED
            
             MessageText:
            
             The Windows Media server is denying access.  The username and/or password might be incorrect.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_PROXY_ACCESSDENIED">
            
             MessageId: MF_E_NET_PROXY_ACCESSDENIED
            
             MessageText:
            
             The proxy server is denying access.  The username and/or password might be incorrect.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_CANNOTCONNECT">
            
             MessageId: MF_E_NET_CANNOTCONNECT
            
             MessageText:
            
             Unable to establish a connection to the server.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_INVALID_PUSH_TEMPLATE">
            
             MessageId: MF_E_NET_INVALID_PUSH_TEMPLATE
            
             MessageText:
            
             The specified push template is invalid.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_INVALID_PUSH_PUBLISHING_POINT">
            
             MessageId: MF_E_NET_INVALID_PUSH_PUBLISHING_POINT
            
             MessageText:
            
             The specified push publishing point is invalid.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_BUSY">
            
             MessageId: MF_E_NET_BUSY
            
             MessageText:
            
             The requested resource is in use.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_RESOURCE_GONE">
            
             MessageId: MF_E_NET_RESOURCE_GONE
            
             MessageText:
            
             The Publishing Point or file on the Windows Media Server is no longer available.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_ERROR_FROM_PROXY">
            
             MessageId: MF_E_NET_ERROR_FROM_PROXY
            
             MessageText:
            
             The proxy experienced an error while attempting to contact the media server.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_PROXY_TIMEOUT">
            
             MessageId: MF_E_NET_PROXY_TIMEOUT
            
             MessageText:
            
             The proxy did not receive a timely response while attempting to contact the media server.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_SERVER_UNAVAILABLE">
            
             MessageId: MF_E_NET_SERVER_UNAVAILABLE
            
             MessageText:
            
             The server is currently unable to handle the request due to a temporary overloading or maintenance of the server.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_TOO_MUCH_DATA">
            
             MessageId: MF_E_NET_TOO_MUCH_DATA
            
             MessageText:
            
             The encoding process was unable to keep up with the amount of supplied data.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_SESSION_INVALID">
            
             MessageId: MF_E_NET_SESSION_INVALID
            
             MessageText:
            
             Session not found.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_OFFLINE_MODE">
            
             MessageId: MF_E_OFFLINE_MODE
            
             MessageText:
            
             The requested URL is not available in offline mode.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_UDP_BLOCKED">
            
             MessageId: MF_E_NET_UDP_BLOCKED
            
             MessageText:
            
             A device in the network is blocking UDP traffic.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_UNSUPPORTED_CONFIGURATION">
            
             MessageId: MF_E_NET_UNSUPPORTED_CONFIGURATION
            
             MessageText:
            
             The specified configuration value is not supported.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NET_PROTOCOL_DISABLED">
            
             MessageId: MF_E_NET_PROTOCOL_DISABLED
            
             MessageText:
            
             The networking protocol is disabled.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ALREADY_INITIALIZED">
            
             MessageId: MF_E_ALREADY_INITIALIZED
            
             MessageText:
            
             This object has already been initialized and cannot be re-initialized at this time.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_BANDWIDTH_OVERRUN">
            
             MessageId: MF_E_BANDWIDTH_OVERRUN
            
             MessageText:
            
             The amount of data passed in exceeds the given bitrate and buffer window.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_LATE_SAMPLE">
            
             MessageId: MF_E_LATE_SAMPLE
            
             MessageText:
            
             The sample was passed in too late to be correctly processed.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_FLUSH_NEEDED">
            
             MessageId: MF_E_FLUSH_NEEDED
            
             MessageText:
            
             The requested action cannot be carried out until the object is flushed and the queue is emptied.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_INVALID_PROFILE">
            
             MessageId: MF_E_INVALID_PROFILE
            
             MessageText:
            
             The profile is invalid.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_INDEX_NOT_COMMITTED">
            
             MessageId: MF_E_INDEX_NOT_COMMITTED
            
             MessageText:
            
             The index that is being generated needs to be committed before the requested action can be carried out.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NO_INDEX">
            
             MessageId: MF_E_NO_INDEX
            
             MessageText:
            
             The index that is necessary for the requested action is not found.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_CANNOT_INDEX_IN_PLACE">
            
             MessageId: MF_E_CANNOT_INDEX_IN_PLACE
            
             MessageText:
            
             The requested index cannot be added in-place to the specified ASF content.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_MISSING_ASF_LEAKYBUCKET">
            
             MessageId: MF_E_MISSING_ASF_LEAKYBUCKET
            
             MessageText:
            
             The ASF leaky bucket parameters must be specified in order to carry out this request.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_INVALID_ASF_STREAMID">
            
             MessageId: MF_E_INVALID_ASF_STREAMID
            
             MessageText:
            
             The stream id is invalid. The valid range for ASF stream id is from 1 to 127.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_STREAMSINK_REMOVED">
            
             MessageId: MF_E_STREAMSINK_REMOVED
            
             MessageText:
            
             The requested Stream Sink has been removed and cannot be used.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_STREAMSINKS_OUT_OF_SYNC">
            
             MessageId: MF_E_STREAMSINKS_OUT_OF_SYNC
            
             MessageText:
            
             The various Stream Sinks in this Media Sink are too far out of sync for the requested action to take place.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_STREAMSINKS_FIXED">
            
             MessageId: MF_E_STREAMSINKS_FIXED
            
             MessageText:
            
             Stream Sinks cannot be added to or removed from this Media Sink because its set of streams is fixed.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_STREAMSINK_EXISTS">
            
             MessageId: MF_E_STREAMSINK_EXISTS
            
             MessageText:
            
             The given Stream Sink already exists.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_SAMPLEALLOCATOR_CANCELED">
            
             MessageId: MF_E_SAMPLEALLOCATOR_CANCELED
            
             MessageText:
            
             Sample allocations have been canceled.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_SAMPLEALLOCATOR_EMPTY">
            
             MessageId: MF_E_SAMPLEALLOCATOR_EMPTY
            
             MessageText:
            
             The sample allocator is currently empty, due to outstanding requests.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_SINK_ALREADYSTOPPED">
            
             MessageId: MF_E_SINK_ALREADYSTOPPED
            
             MessageText:
            
             When we try to sopt a stream sink, it is already stopped %0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ASF_FILESINK_BITRATE_UNKNOWN">
            
             MessageId: MF_E_ASF_FILESINK_BITRATE_UNKNOWN
            
             MessageText:
            
             The ASF file sink could not reserve AVIO because the bitrate is unknown.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_SINK_NO_STREAMS">
            
             MessageId: MF_E_SINK_NO_STREAMS
            
             MessageText:
            
             No streams are selected in sink presentation descriptor.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_S_SINK_NOT_FINALIZED">
            
             MessageId: MF_S_SINK_NOT_FINALIZED
            
             MessageText:
            
             The sink has not been finalized before shut down. This may cause sink generate a corrupted content.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_METADATA_TOO_LONG">
            
             MessageId: MF_E_METADATA_TOO_LONG
            
             MessageText:
            
             A metadata item was too long to write to the output container.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_SINK_NO_SAMPLES_PROCESSED">
            
             MessageId: MF_E_SINK_NO_SAMPLES_PROCESSED
            
             MessageText:
            
             The operation failed because no samples were processed by the sink.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_VIDEO_REN_NO_PROCAMP_HW">
            
             MessageId: MF_E_VIDEO_REN_NO_PROCAMP_HW
            
             MessageText:
            
             There is no available procamp hardware with which to perform color correction.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_VIDEO_REN_NO_DEINTERLACE_HW">
            
             MessageId: MF_E_VIDEO_REN_NO_DEINTERLACE_HW
            
             MessageText:
            
             There is no available deinterlacing hardware with which to deinterlace the video stream.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_VIDEO_REN_COPYPROT_FAILED">
            
             MessageId: MF_E_VIDEO_REN_COPYPROT_FAILED
            
             MessageText:
            
             A video stream requires copy protection to be enabled, but there was a failure in attempting to enable copy protection.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_VIDEO_REN_SURFACE_NOT_SHARED">
            
             MessageId: MF_E_VIDEO_REN_SURFACE_NOT_SHARED
            
             MessageText:
            
             A component is attempting to access a surface for sharing that is not shared.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_VIDEO_DEVICE_LOCKED">
            
             MessageId: MF_E_VIDEO_DEVICE_LOCKED
            
             MessageText:
            
             A component is attempting to access a shared device that is already locked by another component.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NEW_VIDEO_DEVICE">
            
             MessageId: MF_E_NEW_VIDEO_DEVICE
            
             MessageText:
            
             The device is no longer available. The handle should be closed and a new one opened.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NO_VIDEO_SAMPLE_AVAILABLE">
            
             MessageId: MF_E_NO_VIDEO_SAMPLE_AVAILABLE
            
             MessageText:
            
             A video sample is not currently queued on a stream that is required for mixing.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NO_AUDIO_PLAYBACK_DEVICE">
            
             MessageId: MF_E_NO_AUDIO_PLAYBACK_DEVICE
            
             MessageText:
            
             No audio playback device was found.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_AUDIO_PLAYBACK_DEVICE_IN_USE">
            
             MessageId: MF_E_AUDIO_PLAYBACK_DEVICE_IN_USE
            
             MessageText:
            
             The requested audio playback device is currently in use.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_AUDIO_PLAYBACK_DEVICE_INVALIDATED">
            
             MessageId: MF_E_AUDIO_PLAYBACK_DEVICE_INVALIDATED
            
             MessageText:
            
             The audio playback device is no longer present.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_AUDIO_SERVICE_NOT_RUNNING">
            
             MessageId: MF_E_AUDIO_SERVICE_NOT_RUNNING
            
             MessageText:
            
             The audio service is not running.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TOPO_INVALID_OPTIONAL_NODE">
            
             MessageId: MF_E_TOPO_INVALID_OPTIONAL_NODE
            
             MessageText:
            
             The topology contains an invalid optional node.  Possible reasons are incorrect number of outputs and inputs or optional node is at the beginning or end of a segment. %0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TOPO_CANNOT_FIND_DECRYPTOR">
            
             MessageId: MF_E_TOPO_CANNOT_FIND_DECRYPTOR
            
             MessageText:
            
             No suitable transform was found to decrypt the content. %0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TOPO_CODEC_NOT_FOUND">
            
             MessageId: MF_E_TOPO_CODEC_NOT_FOUND
            
             MessageText:
            
             No suitable transform was found to encode or decode the content. %0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TOPO_CANNOT_CONNECT">
            
             MessageId: MF_E_TOPO_CANNOT_CONNECT
            
             MessageText:
            
             Unable to find a way to connect nodes%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TOPO_UNSUPPORTED">
            
             MessageId: MF_E_TOPO_UNSUPPORTED
            
             MessageText:
            
             Unsupported operations in topoloader%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TOPO_INVALID_TIME_ATTRIBUTES">
            
             MessageId: MF_E_TOPO_INVALID_TIME_ATTRIBUTES
            
             MessageText:
            
             The topology or its nodes contain incorrectly set time attributes%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TOPO_LOOPS_IN_TOPOLOGY">
            
             MessageId: MF_E_TOPO_LOOPS_IN_TOPOLOGY
            
             MessageText:
            
             The topology contains loops, which are unsupported in media foundation topologies%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TOPO_MISSING_PRESENTATION_DESCRIPTOR">
            
             MessageId: MF_E_TOPO_MISSING_PRESENTATION_DESCRIPTOR
            
             MessageText:
            
             A source stream node in the topology does not have a presentation descriptor%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TOPO_MISSING_STREAM_DESCRIPTOR">
            
             MessageId: MF_E_TOPO_MISSING_STREAM_DESCRIPTOR
            
             MessageText:
            
             A source stream node in the topology does not have a stream descriptor%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TOPO_STREAM_DESCRIPTOR_NOT_SELECTED">
            
             MessageId: MF_E_TOPO_STREAM_DESCRIPTOR_NOT_SELECTED
            
             MessageText:
            
             A stream descriptor was set on a source stream node but it was not selected on the presentation descriptor%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TOPO_MISSING_SOURCE">
            
             MessageId: MF_E_TOPO_MISSING_SOURCE
            
             MessageText:
            
             A source stream node in the topology does not have a source%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TOPO_SINK_ACTIVATES_UNSUPPORTED">
            
             MessageId: MF_E_TOPO_SINK_ACTIVATES_UNSUPPORTED
            
             MessageText:
            
             The topology loader does not support sink activates on output nodes.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_SEQUENCER_UNKNOWN_SEGMENT_ID">
            
             MessageId: MF_E_SEQUENCER_UNKNOWN_SEGMENT_ID
            
             MessageText:
            
             The sequencer cannot find a segment with the given ID.%0\n.
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_S_SEQUENCER_CONTEXT_CANCELED">
            
             MessageId: MF_S_SEQUENCER_CONTEXT_CANCELED
            
             MessageText:
            
             The context was canceled.%0\n.
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NO_SOURCE_IN_CACHE">
            
             MessageId: MF_E_NO_SOURCE_IN_CACHE
            
             MessageText:
            
             Cannot find source in source cache.%0\n.
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_S_SEQUENCER_SEGMENT_AT_END_OF_STREAM">
            
             MessageId: MF_S_SEQUENCER_SEGMENT_AT_END_OF_STREAM
            
             MessageText:
            
             Cannot update topology flags.%0\n.
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_TYPE_NOT_SET">
            
             MessageId: MF_E_TRANSFORM_TYPE_NOT_SET
            
             MessageText:
            
             A valid type has not been set for this stream or a stream that it depends on.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_STREAM_CHANGE">
            
             MessageId: MF_E_TRANSFORM_STREAM_CHANGE
            
             MessageText:
            
             A stream change has occurred. Output cannot be produced until the streams have been renegotiated.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_INPUT_REMAINING">
            
             MessageId: MF_E_TRANSFORM_INPUT_REMAINING
            
             MessageText:
            
             The transform cannot take the requested action until all of the input data it currently holds is processed or flushed.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_PROFILE_MISSING">
            
             MessageId: MF_E_TRANSFORM_PROFILE_MISSING
            
             MessageText:
            
             The transform requires a profile but no profile was supplied or found.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_PROFILE_INVALID_OR_CORRUPT">
            
             MessageId: MF_E_TRANSFORM_PROFILE_INVALID_OR_CORRUPT
            
             MessageText:
            
             The transform requires a profile but the supplied profile was invalid or corrupt.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_PROFILE_TRUNCATED">
            
             MessageId: MF_E_TRANSFORM_PROFILE_TRUNCATED
            
             MessageText:
            
             The transform requires a profile but the supplied profile ended unexpectedly while parsing.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_PROPERTY_PID_NOT_RECOGNIZED">
            
             MessageId: MF_E_TRANSFORM_PROPERTY_PID_NOT_RECOGNIZED
            
             MessageText:
            
             The property ID does not match any property supported by the transform.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_PROPERTY_VARIANT_TYPE_WRONG">
            
             MessageId: MF_E_TRANSFORM_PROPERTY_VARIANT_TYPE_WRONG
            
             MessageText:
            
             The variant does not have the type expected for this property ID.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_PROPERTY_NOT_WRITEABLE">
            
             MessageId: MF_E_TRANSFORM_PROPERTY_NOT_WRITEABLE
            
             MessageText:
            
             An attempt was made to set the value on a read-only property.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_PROPERTY_ARRAY_VALUE_WRONG_NUM_DIM">
            
             MessageId: MF_E_TRANSFORM_PROPERTY_ARRAY_VALUE_WRONG_NUM_DIM
            
             MessageText:
            
             The array property value has an unexpected number of dimensions.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_PROPERTY_VALUE_SIZE_WRONG">
            
             MessageId: MF_E_TRANSFORM_PROPERTY_VALUE_SIZE_WRONG
            
             MessageText:
            
             The array or blob property value has an unexpected size.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_PROPERTY_VALUE_OUT_OF_RANGE">
            
             MessageId: MF_E_TRANSFORM_PROPERTY_VALUE_OUT_OF_RANGE
            
             MessageText:
            
             The property value is out of range for this transform.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_PROPERTY_VALUE_INCOMPATIBLE">
            
             MessageId: MF_E_TRANSFORM_PROPERTY_VALUE_INCOMPATIBLE
            
             MessageText:
            
             The property value is incompatible with some other property or mediatype set on the transform.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_NOT_POSSIBLE_FOR_CURRENT_OUTPUT_MEDIATYPE">
            
             MessageId: MF_E_TRANSFORM_NOT_POSSIBLE_FOR_CURRENT_OUTPUT_MEDIATYPE
            
             MessageText:
            
             The requested operation is not supported for the currently set output mediatype.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_NOT_POSSIBLE_FOR_CURRENT_INPUT_MEDIATYPE">
            
             MessageId: MF_E_TRANSFORM_NOT_POSSIBLE_FOR_CURRENT_INPUT_MEDIATYPE
            
             MessageText:
            
             The requested operation is not supported for the currently set input mediatype.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_NOT_POSSIBLE_FOR_CURRENT_MEDIATYPE_COMBINATION">
            
             MessageId: MF_E_TRANSFORM_NOT_POSSIBLE_FOR_CURRENT_MEDIATYPE_COMBINATION
            
             MessageText:
            
             The requested operation is not supported for the currently set combination of mediatypes.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_CONFLICTS_WITH_OTHER_CURRENTLY_ENABLED_FEATURES">
            
             MessageId: MF_E_TRANSFORM_CONFLICTS_WITH_OTHER_CURRENTLY_ENABLED_FEATURES
            
             MessageText:
            
             The requested feature is not supported in combination with some other currently enabled feature.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_NEED_MORE_INPUT">
            
             MessageId: MF_E_TRANSFORM_NEED_MORE_INPUT
            
             MessageText:
            
             The transform cannot produce output until it gets more input samples.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_NOT_POSSIBLE_FOR_CURRENT_SPKR_CONFIG">
            
             MessageId: MF_E_TRANSFORM_NOT_POSSIBLE_FOR_CURRENT_SPKR_CONFIG
            
             MessageText:
            
             The requested operation is not supported for the current speaker configuration.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_CANNOT_CHANGE_MEDIATYPE_WHILE_PROCESSING">
            
             MessageId: MF_E_TRANSFORM_CANNOT_CHANGE_MEDIATYPE_WHILE_PROCESSING
            
             MessageText:
            
             The transform cannot accept mediatype changes in the middle of processing.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_S_TRANSFORM_DO_NOT_PROPAGATE_EVENT">
            
             MessageId: MF_S_TRANSFORM_DO_NOT_PROPAGATE_EVENT
            
             MessageText:
            
             The caller should not propagate this event to downstream components.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_UNSUPPORTED_D3D_TYPE">
            
             MessageId: MF_E_UNSUPPORTED_D3D_TYPE
            
             MessageText:
            
             The input type is not supported for D3D device.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_ASYNC_LOCKED">
            
             MessageId: MF_E_TRANSFORM_ASYNC_LOCKED
            
             MessageText:
            
             The caller does not appear to support this transform's asynchronous capabilities.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSFORM_CANNOT_INITIALIZE_ACM_DRIVER">
            
             MessageId: MF_E_TRANSFORM_CANNOT_INITIALIZE_ACM_DRIVER
            
             MessageText:
            
             An audio compression manager driver could not be initialized by the transform.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_LICENSE_INCORRECT_RIGHTS">
            
             MessageId: MF_E_LICENSE_INCORRECT_RIGHTS
            
             MessageText:
            
             You are not allowed to open this file. Contact the content provider for further assistance.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_LICENSE_OUTOFDATE">
            
             MessageId: MF_E_LICENSE_OUTOFDATE
            
             MessageText:
            
             The license for this media file has expired. Get a new license or contact the content provider for further assistance.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_LICENSE_REQUIRED">
            
             MessageId: MF_E_LICENSE_REQUIRED
            
             MessageText:
            
             You need a license to perform the requested operation on this media file.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_DRM_HARDWARE_INCONSISTENT">
            
             MessageId: MF_E_DRM_HARDWARE_INCONSISTENT
            
             MessageText:
            
             The licenses for your media files are corrupted. Contact Microsoft product support.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NO_CONTENT_PROTECTION_MANAGER">
            
             MessageId: MF_E_NO_CONTENT_PROTECTION_MANAGER
            
             MessageText:
            
             The APP needs to provide IMFContentProtectionManager callback to access the protected media file.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_LICENSE_RESTORE_NO_RIGHTS">
            
             MessageId: MF_E_LICENSE_RESTORE_NO_RIGHTS
            
             MessageText:
            
             Client does not have rights to restore licenses.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_BACKUP_RESTRICTED_LICENSE">
            
             MessageId: MF_E_BACKUP_RESTRICTED_LICENSE
            
             MessageText:
            
             Licenses are restricted and hence can not be backed up.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_LICENSE_RESTORE_NEEDS_INDIVIDUALIZATION">
            
             MessageId: MF_E_LICENSE_RESTORE_NEEDS_INDIVIDUALIZATION
            
             MessageText:
            
             License restore requires machine to be individualized.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_S_PROTECTION_NOT_REQUIRED">
            
             MessageId: MF_S_PROTECTION_NOT_REQUIRED
            
             MessageText:
            
             Protection for stream is not required.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_COMPONENT_REVOKED">
            
             MessageId: MF_E_COMPONENT_REVOKED
            
             MessageText:
            
             Component is revoked.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRUST_DISABLED">
            
             MessageId: MF_E_TRUST_DISABLED
            
             MessageText:
            
             Trusted functionality is currently disabled on this component.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_WMDRMOTA_NO_ACTION">
            
             MessageId: MF_E_WMDRMOTA_NO_ACTION
            
             MessageText:
            
             No Action is set on WMDRM Output Trust Authority.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_WMDRMOTA_ACTION_ALREADY_SET">
            
             MessageId: MF_E_WMDRMOTA_ACTION_ALREADY_SET
            
             MessageText:
            
             Action is already set on WMDRM Output Trust Authority.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_WMDRMOTA_DRM_HEADER_NOT_AVAILABLE">
            
             MessageId: MF_E_WMDRMOTA_DRM_HEADER_NOT_AVAILABLE
            
             MessageText:
            
             DRM Heaader is not available.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_WMDRMOTA_DRM_ENCRYPTION_SCHEME_NOT_SUPPORTED">
            
             MessageId: MF_E_WMDRMOTA_DRM_ENCRYPTION_SCHEME_NOT_SUPPORTED
            
             MessageText:
            
             Current encryption scheme is not supported.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_WMDRMOTA_ACTION_MISMATCH">
            
             MessageId: MF_E_WMDRMOTA_ACTION_MISMATCH
            
             MessageText:
            
             Action does not match with current configuration.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_WMDRMOTA_INVALID_POLICY">
            
             MessageId: MF_E_WMDRMOTA_INVALID_POLICY
            
             MessageText:
            
             Invalid policy for WMDRM Output Trust Authority.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_POLICY_UNSUPPORTED">
            
             MessageId: MF_E_POLICY_UNSUPPORTED
            
             MessageText:
            
             The policies that the Input Trust Authority requires to be enforced are unsupported by the outputs.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_OPL_NOT_SUPPORTED">
            
             MessageId: MF_E_OPL_NOT_SUPPORTED
            
             MessageText:
            
             The OPL that the license requires to be enforced are not supported by the Input Trust Authority.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TOPOLOGY_VERIFICATION_FAILED">
            
             MessageId: MF_E_TOPOLOGY_VERIFICATION_FAILED
            
             MessageText:
            
             The topology could not be successfully verified.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_SIGNATURE_VERIFICATION_FAILED">
            
             MessageId: MF_E_SIGNATURE_VERIFICATION_FAILED
            
             MessageText:
            
             Signature verification could not be completed successfully for this component.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_DEBUGGING_NOT_ALLOWED">
            
             MessageId: MF_E_DEBUGGING_NOT_ALLOWED
            
             MessageText:
            
             Running this process under a debugger while using protected content is not allowed.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_CODE_EXPIRED">
            
             MessageId: MF_E_CODE_EXPIRED
            
             MessageText:
            
             MF component has expired.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_GRL_VERSION_TOO_LOW">
            
             MessageId: MF_E_GRL_VERSION_TOO_LOW
            
             MessageText:
            
             The current GRL on the machine does not meet the minimum version requirements.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_GRL_RENEWAL_NOT_FOUND">
            
             MessageId: MF_E_GRL_RENEWAL_NOT_FOUND
            
             MessageText:
            
             The current GRL on the machine does not contain any renewal entries for the specified revocation.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_GRL_EXTENSIBLE_ENTRY_NOT_FOUND">
            
             MessageId: MF_E_GRL_EXTENSIBLE_ENTRY_NOT_FOUND
            
             MessageText:
            
             The current GRL on the machine does not contain any extensible entries for the specified extension GUID.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_KERNEL_UNTRUSTED">
            
             MessageId: MF_E_KERNEL_UNTRUSTED
            
             MessageText:
            
             The kernel isn't secure for high security level content.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_PEAUTH_UNTRUSTED">
            
             MessageId: MF_E_PEAUTH_UNTRUSTED
            
             MessageText:
            
             The response from protected environment driver isn't valid.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NON_PE_PROCESS">
            
             MessageId: MF_E_NON_PE_PROCESS
            
             MessageText:
            
             A non-PE process tried to talk to PEAuth.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_REBOOT_REQUIRED">
            
             MessageId: MF_E_REBOOT_REQUIRED
            
             MessageText:
            
             We need to reboot the machine.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_S_WAIT_FOR_POLICY_SET">
            
             MessageId: MF_S_WAIT_FOR_POLICY_SET
            
             MessageText:
            
             Protection for this stream is not guaranteed to be enforced until the MEPolicySet event is fired.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_S_VIDEO_DISABLED_WITH_UNKNOWN_SOFTWARE_OUTPUT">
            
             MessageId: MF_S_VIDEO_DISABLED_WITH_UNKNOWN_SOFTWARE_OUTPUT
            
             MessageText:
            
             This video stream is disabled because it is being sent to an unknown software output.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_GRL_INVALID_FORMAT">
            
             MessageId: MF_E_GRL_INVALID_FORMAT
            
             MessageText:
            
             The GRL file is not correctly formed, it may have been corrupted or overwritten.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_GRL_UNRECOGNIZED_FORMAT">
            
             MessageId: MF_E_GRL_UNRECOGNIZED_FORMAT
            
             MessageText:
            
             The GRL file is in a format newer than those recognized by this GRL Reader.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ALL_PROCESS_RESTART_REQUIRED">
            
             MessageId: MF_E_ALL_PROCESS_RESTART_REQUIRED
            
             MessageText:
            
             The GRL was reloaded and required all processes that can run protected media to restart.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_PROCESS_RESTART_REQUIRED">
            
             MessageId: MF_E_PROCESS_RESTART_REQUIRED
            
             MessageText:
            
             The GRL was reloaded and the current process needs to restart.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_USERMODE_UNTRUSTED">
            
             MessageId: MF_E_USERMODE_UNTRUSTED
            
             MessageText:
            
             The user space is untrusted for protected content play.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_PEAUTH_SESSION_NOT_STARTED">
            
             MessageId: MF_E_PEAUTH_SESSION_NOT_STARTED
            
             MessageText:
            
             PEAuth communication session hasn't been started.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_PEAUTH_PUBLICKEY_REVOKED">
            
             MessageId: MF_E_PEAUTH_PUBLICKEY_REVOKED
            
             MessageText:
            
             PEAuth's public key is revoked.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_GRL_ABSENT">
            
             MessageId: MF_E_GRL_ABSENT
            
             MessageText:
            
             The GRL is absent.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_S_PE_TRUSTED">
            
             MessageId: MF_S_PE_TRUSTED
            
             MessageText:
            
             The Protected Environment is trusted.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_PE_UNTRUSTED">
            
             MessageId: MF_E_PE_UNTRUSTED
            
             MessageText:
            
             The Protected Environment is untrusted.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_PEAUTH_NOT_STARTED">
            
             MessageId: MF_E_PEAUTH_NOT_STARTED
            
             MessageText:
            
             The Protected Environment Authorization service (PEAUTH) has not been started.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_INCOMPATIBLE_SAMPLE_PROTECTION">
            
             MessageId: MF_E_INCOMPATIBLE_SAMPLE_PROTECTION
            
             MessageText:
            
             The sample protection algorithms supported by components are not compatible.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_PE_SESSIONS_MAXED">
            
             MessageId: MF_E_PE_SESSIONS_MAXED
            
             MessageText:
            
             No more protected environment sessions can be supported.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_HIGH_SECURITY_LEVEL_CONTENT_NOT_ALLOWED">
            
             MessageId: MF_E_HIGH_SECURITY_LEVEL_CONTENT_NOT_ALLOWED
            
             MessageText:
            
             WMDRM ITA does not allow protected content with high security level for this release.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TEST_SIGNED_COMPONENTS_NOT_ALLOWED">
            
             MessageId: MF_E_TEST_SIGNED_COMPONENTS_NOT_ALLOWED
            
             MessageText:
            
             WMDRM ITA cannot allow the requested action for the content as one or more components is not properly signed.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ITA_UNSUPPORTED_ACTION">
            
             MessageId: MF_E_ITA_UNSUPPORTED_ACTION
            
             MessageText:
            
             WMDRM ITA does not support the requested action.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ITA_ERROR_PARSING_SAP_PARAMETERS">
            
             MessageId: MF_E_ITA_ERROR_PARSING_SAP_PARAMETERS
            
             MessageText:
            
             WMDRM ITA encountered an error in parsing the Secure Audio Path parameters.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_POLICY_MGR_ACTION_OUTOFBOUNDS">
            
             MessageId: MF_E_POLICY_MGR_ACTION_OUTOFBOUNDS
            
             MessageText:
            
             The Policy Manager action passed in is invalid.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_BAD_OPL_STRUCTURE_FORMAT">
            
             MessageId: MF_E_BAD_OPL_STRUCTURE_FORMAT
            
             MessageText:
            
             The structure specifying Output Protection Level is not the correct format.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ITA_UNRECOGNIZED_ANALOG_VIDEO_PROTECTION_GUID">
            
             MessageId: MF_E_ITA_UNRECOGNIZED_ANALOG_VIDEO_PROTECTION_GUID
            
             MessageText:
            
             WMDRM ITA does not recognize the Explicite Analog Video Output Protection guid specified in the license.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NO_PMP_HOST">
            
             MessageId: MF_E_NO_PMP_HOST
            
             MessageText:
            
             IMFPMPHost object not available.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ITA_OPL_DATA_NOT_INITIALIZED">
            
             MessageId: MF_E_ITA_OPL_DATA_NOT_INITIALIZED
            
             MessageText:
            
             WMDRM ITA could not initialize the Output Protection Level data.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ITA_UNRECOGNIZED_ANALOG_VIDEO_OUTPUT">
            
             MessageId: MF_E_ITA_UNRECOGNIZED_ANALOG_VIDEO_OUTPUT
            
             MessageText:
            
             WMDRM ITA does not recognize the Analog Video Output specified by the OTA.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ITA_UNRECOGNIZED_DIGITAL_VIDEO_OUTPUT">
            
             MessageId: MF_E_ITA_UNRECOGNIZED_DIGITAL_VIDEO_OUTPUT
            
             MessageText:
            
             WMDRM ITA does not recognize the Digital Video Output specified by the OTA.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_CLOCK_INVALID_CONTINUITY_KEY">
            
             MessageId: MF_E_CLOCK_INVALID_CONTINUITY_KEY
            
             MessageText:
            
             The continuity key supplied is not currently valid.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_CLOCK_NO_TIME_SOURCE">
            
             MessageId: MF_E_CLOCK_NO_TIME_SOURCE
            
             MessageText:
            
             No Presentation Time Source has been specified.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_CLOCK_STATE_ALREADY_SET">
            
             MessageId: MF_E_CLOCK_STATE_ALREADY_SET
            
             MessageText:
            
             The clock is already in the requested state.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_CLOCK_NOT_SIMPLE">
            
             MessageId: MF_E_CLOCK_NOT_SIMPLE
            
             MessageText:
            
             The clock has too many advanced features to carry out the request.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_S_CLOCK_STOPPED">
            
             MessageId: MF_S_CLOCK_STOPPED
            
             MessageText:
            
             Timer::SetTimer returns this success code if called happened while timer is stopped. Timer is not going to be dispatched until clock is running%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NO_MORE_DROP_MODES">
            
             MessageId: MF_E_NO_MORE_DROP_MODES
            
             MessageText:
            
             The component does not support any more drop modes.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_NO_MORE_QUALITY_LEVELS">
            
             MessageId: MF_E_NO_MORE_QUALITY_LEVELS
            
             MessageText:
            
             The component does not support any more quality levels.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_DROPTIME_NOT_SUPPORTED">
            
             MessageId: MF_E_DROPTIME_NOT_SUPPORTED
            
             MessageText:
            
             The component does not support drop time functionality.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_QUALITYKNOB_WAIT_LONGER">
            
             MessageId: MF_E_QUALITYKNOB_WAIT_LONGER
            
             MessageText:
            
             Quality Manager needs to wait longer before bumping the Quality Level up.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_QM_INVALIDSTATE">
            
             MessageId: MF_E_QM_INVALIDSTATE
            
             MessageText:
            
             Quality Manager is in an invalid state. Quality Management is off at this moment.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSCODE_NO_CONTAINERTYPE">
            
             MessageId: MF_E_TRANSCODE_NO_CONTAINERTYPE
            
             MessageText:
            
             No transcode output container type is specified.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSCODE_PROFILE_NO_MATCHING_STREAMS">
            
             MessageId: MF_E_TRANSCODE_PROFILE_NO_MATCHING_STREAMS
            
             MessageText:
            
             The profile does not have a media type configuration for any selected source streams.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_TRANSCODE_NO_MATCHING_ENCODER">
            
             MessageId: MF_E_TRANSCODE_NO_MATCHING_ENCODER
            
             MessageText:
            
             Cannot find an encoder MFT that accepts the user preferred output type.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ALLOCATOR_NOT_INITIALIZED">
            
             MessageId: MF_E_ALLOCATOR_NOT_INITIALIZED
            
             MessageText:
            
             Memory allocator is not initialized.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ALLOCATOR_NOT_COMMITED">
            
             MessageId: MF_E_ALLOCATOR_NOT_COMMITED
            
             MessageText:
            
             Memory allocator is not committed yet.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_ALLOCATOR_ALREADY_COMMITED">
            
             MessageId: MF_E_ALLOCATOR_ALREADY_COMMITED
            
             MessageText:
            
             Memory allocator has already been committed.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_STREAM_ERROR">
            
             MessageId: MF_E_STREAM_ERROR
            
             MessageText:
            
             An error occurred in media stream.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_INVALID_STREAM_STATE">
            
             MessageId: MF_E_INVALID_STREAM_STATE
            
             MessageText:
            
             Stream is not in a state to handle the request.%0
            
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationErrors.MF_E_HW_STREAM_NOT_CONNECTED">
            
             MessageId: MF_E_HW_STREAM_NOT_CONNECTED
            
             MessageText:
            
             Hardware stream is not connected yet.%0
            
        </member>
        <member name="T:NAudio.MediaFoundation.MediaTypes">
            <summary>
            Major Media Types
            http://msdn.microsoft.com/en-us/library/windows/desktop/aa367377%28v=vs.85%29.aspx
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaTypes.MFMediaType_Default">
            <summary>
            Default
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaTypes.MFMediaType_Audio">
            <summary>
            Audio
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaTypes.MFMediaType_Video">
            <summary>
            Video
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaTypes.MFMediaType_Protected">
            <summary>
            Protected Media
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaTypes.MFMediaType_SAMI">
            <summary>
            Synchronized Accessible Media Interchange (SAMI) captions.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaTypes.MFMediaType_Script">
            <summary>
            Script stream
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaTypes.MFMediaType_Image">
            <summary>
            Still image stream.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaTypes.MFMediaType_HTML">
            <summary>
            HTML stream.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaTypes.MFMediaType_Binary">
            <summary>
            Binary stream.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaTypes.MFMediaType_FileTransfer">
            <summary>
            A stream that contains data files.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.IMFActivate">
            <summary>
            IMFActivate, defined in mfobjects.h
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.GetItem(System.Guid,System.IntPtr)">
            <summary>
            Retrieves the value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.GetItemType(System.Guid,System.Int32@)">
            <summary>
            Retrieves the data type of the value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.CompareItem(System.Guid,System.IntPtr,System.Boolean@)">
            <summary>
            Queries whether a stored attribute value equals a specified PROPVARIANT.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.Compare(NAudio.MediaFoundation.IMFAttributes,System.Int32,System.Boolean@)">
            <summary>
            Compares the attributes on this object with the attributes on another object.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.GetUINT32(System.Guid,System.Int32@)">
            <summary>
            Retrieves a UINT32 value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.GetUINT64(System.Guid,System.Int64@)">
            <summary>
            Retrieves a UINT64 value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.GetDouble(System.Guid,System.Double@)">
            <summary>
            Retrieves a double value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.GetGUID(System.Guid,System.Guid@)">
            <summary>
            Retrieves a GUID value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.GetStringLength(System.Guid,System.Int32@)">
            <summary>
            Retrieves the length of a string value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.GetString(System.Guid,System.Text.StringBuilder,System.Int32,System.Int32@)">
            <summary>
            Retrieves a wide-character string associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.GetAllocatedString(System.Guid,System.String@,System.Int32@)">
            <summary>
            Retrieves a wide-character string associated with a key. This method allocates the memory for the string.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.GetBlobSize(System.Guid,System.Int32@)">
            <summary>
            Retrieves the length of a byte array associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.GetBlob(System.Guid,System.Byte[],System.Int32,System.Int32@)">
            <summary>
            Retrieves a byte array associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.GetAllocatedBlob(System.Guid,System.IntPtr@,System.Int32@)">
            <summary>
            Retrieves a byte array associated with a key. This method allocates the memory for the array.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.GetUnknown(System.Guid,System.Guid,System.Object@)">
            <summary>
            Retrieves an interface pointer associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.SetItem(System.Guid,System.IntPtr)">
            <summary>
            Associates an attribute value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.DeleteItem(System.Guid)">
            <summary>
            Removes a key/value pair from the object's attribute list.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.DeleteAllItems">
            <summary>
            Removes all key/value pairs from the object's attribute list.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.SetUINT32(System.Guid,System.Int32)">
            <summary>
            Associates a UINT32 value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.SetUINT64(System.Guid,System.Int64)">
            <summary>
            Associates a UINT64 value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.SetDouble(System.Guid,System.Double)">
            <summary>
            Associates a double value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.SetGUID(System.Guid,System.Guid)">
            <summary>
            Associates a GUID value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.SetString(System.Guid,System.String)">
            <summary>
            Associates a wide-character string with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.SetBlob(System.Guid,System.Byte[],System.Int32)">
            <summary>
            Associates a byte array with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.SetUnknown(System.Guid,System.Object)">
            <summary>
            Associates an IUnknown pointer with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.LockStore">
            <summary>
            Locks the attribute store so that no other thread can access it.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.UnlockStore">
            <summary>
            Unlocks the attribute store.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.GetCount(System.Int32@)">
            <summary>
            Retrieves the number of attributes that are set on this object.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.GetItemByIndex(System.Int32,System.Guid@,System.IntPtr)">
            <summary>
            Retrieves an attribute at the specified index.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.CopyAllItems(NAudio.MediaFoundation.IMFAttributes)">
            <summary>
            Copies all of the attributes from this object into another attribute store.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.ActivateObject(System.Guid,System.Object@)">
            <summary>
            Creates the object associated with this activation object. 
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.ShutdownObject">
            <summary>
            Shuts down the created object.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFActivate.DetachObject">
            <summary>
            Detaches the created object from the activation object.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.IMFCollection">
            <summary>
            Represents a generic collection of IUnknown pointers. 
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFCollection.GetElementCount(System.Int32@)">
            <summary>
            Retrieves the number of objects in the collection.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFCollection.GetElement(System.Int32,System.Object@)">
            <summary>
            Retrieves an object in the collection.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFCollection.AddElement(System.Object)">
            <summary>
            Adds an object to the collection.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFCollection.RemoveElement(System.Int32,System.Object@)">
            <summary>
            Removes an object from the collection.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFCollection.InsertElementAt(System.Int32,System.Object)">
            <summary>
            Removes an object from the collection.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFCollection.RemoveAllElements">
            <summary>
            Removes all items from the collection.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.IMFMediaEvent">
            <summary>
            IMFMediaEvent - Represents an event generated by a Media Foundation object. Use this interface to get information about the event.
            http://msdn.microsoft.com/en-us/library/windows/desktop/ms702249%28v=vs.85%29.aspx
            Mfobjects.h
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.GetItem(System.Guid,System.IntPtr)">
            <summary>
            Retrieves the value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.GetItemType(System.Guid,System.Int32@)">
            <summary>
            Retrieves the data type of the value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.CompareItem(System.Guid,System.IntPtr,System.Boolean@)">
            <summary>
            Queries whether a stored attribute value equals a specified PROPVARIANT.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.Compare(NAudio.MediaFoundation.IMFAttributes,System.Int32,System.Boolean@)">
            <summary>
            Compares the attributes on this object with the attributes on another object.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.GetUINT32(System.Guid,System.Int32@)">
            <summary>
            Retrieves a UINT32 value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.GetUINT64(System.Guid,System.Int64@)">
            <summary>
            Retrieves a UINT64 value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.GetDouble(System.Guid,System.Double@)">
            <summary>
            Retrieves a double value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.GetGUID(System.Guid,System.Guid@)">
            <summary>
            Retrieves a GUID value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.GetStringLength(System.Guid,System.Int32@)">
            <summary>
            Retrieves the length of a string value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.GetString(System.Guid,System.Text.StringBuilder,System.Int32,System.Int32@)">
            <summary>
            Retrieves a wide-character string associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.GetAllocatedString(System.Guid,System.String@,System.Int32@)">
            <summary>
            Retrieves a wide-character string associated with a key. This method allocates the memory for the string.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.GetBlobSize(System.Guid,System.Int32@)">
            <summary>
            Retrieves the length of a byte array associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.GetBlob(System.Guid,System.Byte[],System.Int32,System.Int32@)">
            <summary>
            Retrieves a byte array associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.GetAllocatedBlob(System.Guid,System.IntPtr@,System.Int32@)">
            <summary>
            Retrieves a byte array associated with a key. This method allocates the memory for the array.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.GetUnknown(System.Guid,System.Guid,System.Object@)">
            <summary>
            Retrieves an interface pointer associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.SetItem(System.Guid,System.IntPtr)">
            <summary>
            Associates an attribute value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.DeleteItem(System.Guid)">
            <summary>
            Removes a key/value pair from the object's attribute list.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.DeleteAllItems">
            <summary>
            Removes all key/value pairs from the object's attribute list.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.SetUINT32(System.Guid,System.Int32)">
            <summary>
            Associates a UINT32 value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.SetUINT64(System.Guid,System.Int64)">
            <summary>
            Associates a UINT64 value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.SetDouble(System.Guid,System.Double)">
            <summary>
            Associates a double value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.SetGUID(System.Guid,System.Guid)">
            <summary>
            Associates a GUID value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.SetString(System.Guid,System.String)">
            <summary>
            Associates a wide-character string with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.SetBlob(System.Guid,System.Byte[],System.Int32)">
            <summary>
            Associates a byte array with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.SetUnknown(System.Guid,System.Object)">
            <summary>
            Associates an IUnknown pointer with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.LockStore">
            <summary>
            Locks the attribute store so that no other thread can access it.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.UnlockStore">
            <summary>
            Unlocks the attribute store.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.GetCount(System.Int32@)">
            <summary>
            Retrieves the number of attributes that are set on this object.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.GetItemByIndex(System.Int32,System.Guid@,System.IntPtr)">
            <summary>
            Retrieves an attribute at the specified index.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.CopyAllItems(NAudio.MediaFoundation.IMFAttributes)">
            <summary>
            Copies all of the attributes from this object into another attribute store.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.GetType(NAudio.MediaFoundation.MediaEventType@)">
            <summary>
            Retrieves the event type. 
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE GetType( 
                /* [out] */ __RPC__out MediaEventType *pmet) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.GetExtendedType(System.Guid@)">
            <summary>
            Retrieves the extended type of the event.
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE GetExtendedType( 
                /* [out] */ __RPC__out GUID *pguidExtendedType) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.GetStatus(System.Int32@)">
            <summary>
            Retrieves an HRESULT that specifies the event status.
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE GetStatus( 
                /* [out] */ __RPC__out HRESULT *phrStatus) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaEvent.GetValue(System.IntPtr)">
            <summary>
            Retrieves the value associated with the event, if any. 
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE GetValue( 
                /* [out] */ __RPC__out PROPVARIANT *pvValue) = 0;
            </remarks>
        </member>
        <member name="T:NAudio.MediaFoundation.IMFSinkWriter">
            <summary>
            Implemented by the Microsoft Media Foundation sink writer object.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSinkWriter.AddStream(NAudio.MediaFoundation.IMFMediaType,System.Int32@)">
            <summary>
            Adds a stream to the sink writer.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSinkWriter.SetInputMediaType(System.Int32,NAudio.MediaFoundation.IMFMediaType,NAudio.MediaFoundation.IMFAttributes)">
            <summary>
            Sets the input format for a stream on the sink writer.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSinkWriter.BeginWriting">
            <summary>
            Initializes the sink writer for writing.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSinkWriter.WriteSample(System.Int32,NAudio.MediaFoundation.IMFSample)">
            <summary>
            Delivers a sample to the sink writer.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSinkWriter.SendStreamTick(System.Int32,System.Int64)">
            <summary>
            Indicates a gap in an input stream.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSinkWriter.PlaceMarker(System.Int32,System.IntPtr)">
            <summary>
            Places a marker in the specified stream.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSinkWriter.NotifyEndOfSegment(System.Int32)">
            <summary>
            Notifies the media sink that a stream has reached the end of a segment.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSinkWriter.Flush(System.Int32)">
            <summary>
            Flushes one or more streams.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSinkWriter.DoFinalize">
            <summary>
            (Finalize) Completes all writing operations on the sink writer.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSinkWriter.GetServiceForStream(System.Int32,System.Guid@,System.Guid@,System.IntPtr@)">
            <summary>
            Queries the underlying media sink or encoder for an interface.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSinkWriter.GetStatistics(System.Int32,NAudio.MediaFoundation.MF_SINK_WRITER_STATISTICS)">
            <summary>
            Gets statistics about the performance of the sink writer.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.IMFTransform">
            <summary>
            IMFTransform, defined in mftransform.h
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.GetStreamLimits(System.Int32@,System.Int32@,System.Int32@,System.Int32@)">
            <summary>
            Retrieves the minimum and maximum number of input and output streams.
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE GetStreamLimits( 
                /* [out] */ __RPC__out DWORD *pdwInputMinimum,
                /* [out] */ __RPC__out DWORD *pdwInputMaximum,
                /* [out] */ __RPC__out DWORD *pdwOutputMinimum,
                /* [out] */ __RPC__out DWORD *pdwOutputMaximum) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.GetStreamCount(System.Int32@,System.Int32@)">
            <summary>
            Retrieves the current number of input and output streams on this MFT.
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE GetStreamCount( 
                /* [out] */ __RPC__out DWORD *pcInputStreams,
                /* [out] */ __RPC__out DWORD *pcOutputStreams) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.GetStreamIds(System.Int32,System.IntPtr,System.Int32,System.IntPtr)">
            <summary>
            Retrieves the stream identifiers for the input and output streams on this MFT.
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE GetStreamIDs( 
                DWORD dwInputIDArraySize,
                /* [size_is][out] */ __RPC__out_ecount_full(dwInputIDArraySize) DWORD *pdwInputIDs,
                DWORD dwOutputIDArraySize,
                /* [size_is][out] */ __RPC__out_ecount_full(dwOutputIDArraySize) DWORD *pdwOutputIDs) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.GetInputStreamInfo(System.Int32,NAudio.MediaFoundation.MFT_INPUT_STREAM_INFO@)">
            <summary>
            Gets the buffer requirements and other information for an input stream on this Media Foundation transform (MFT). 
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE GetInputStreamInfo( 
                DWORD dwInputStreamID,
                /* [out] */ __RPC__out MFT_INPUT_STREAM_INFO *pStreamInfo) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.GetOutputStreamInfo(System.Int32,NAudio.MediaFoundation.MFT_OUTPUT_STREAM_INFO@)">
            <summary>
            Gets the buffer requirements and other information for an output stream on this Media Foundation transform (MFT). 
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE GetOutputStreamInfo( 
                DWORD dwOutputStreamID,
                /* [out] */ __RPC__out MFT_OUTPUT_STREAM_INFO *pStreamInfo) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.GetAttributes(NAudio.MediaFoundation.IMFAttributes@)">
            <summary>
            Gets the global attribute store for this Media Foundation transform (MFT). 
            </summary>
            <remarks>
             virtual HRESULT STDMETHODCALLTYPE GetAttributes( 
                /* [out] */ __RPC__deref_out_opt IMFAttributes **pAttributes) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.GetInputStreamAttributes(System.Int32,NAudio.MediaFoundation.IMFAttributes@)">
            <summary>
            Retrieves the attribute store for an input stream on this MFT.
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE GetInputStreamAttributes( 
                DWORD dwInputStreamID,
                /* [out] */ __RPC__deref_out_opt IMFAttributes **pAttributes) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.GetOutputStreamAttributes(System.Int32,NAudio.MediaFoundation.IMFAttributes@)">
            <summary>
            Retrieves the attribute store for an output stream on this MFT.
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE GetOutputStreamAttributes( 
                DWORD dwOutputStreamID,
                /* [out] */ __RPC__deref_out_opt IMFAttributes **pAttributes) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.DeleteInputStream(System.Int32)">
            <summary>
            Removes an input stream from this MFT.
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE DeleteInputStream( 
                DWORD dwStreamID) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.AddInputStreams(System.Int32,System.IntPtr)">
            <summary>
            Adds one or more new input streams to this MFT.
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE AddInputStreams( 
                DWORD cStreams,
                /* [in] */ __RPC__in DWORD *adwStreamIDs) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.GetInputAvailableType(System.Int32,System.Int32,NAudio.MediaFoundation.IMFMediaType@)">
            <summary>
            Gets an available media type for an input stream on this Media Foundation transform (MFT). 
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE GetInputAvailableType( 
                DWORD dwInputStreamID,
                DWORD dwTypeIndex,
                /* [out] */ __RPC__deref_out_opt IMFMediaType **ppType) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.GetOutputAvailableType(System.Int32,System.Int32,NAudio.MediaFoundation.IMFMediaType@)">
            <summary>
            Retrieves an available media type for an output stream on this MFT.
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE GetOutputAvailableType( 
                DWORD dwOutputStreamID,
                DWORD dwTypeIndex,
                /* [out] */ __RPC__deref_out_opt IMFMediaType **ppType) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.SetInputType(System.Int32,NAudio.MediaFoundation.IMFMediaType,NAudio.MediaFoundation._MFT_SET_TYPE_FLAGS)">
            <summary>
            Sets, tests, or clears the media type for an input stream on this Media Foundation transform (MFT). 
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE SetInputType( 
                DWORD dwInputStreamID,
                /* [in] */ __RPC__in_opt IMFMediaType *pType,
                DWORD dwFlags) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.SetOutputType(System.Int32,NAudio.MediaFoundation.IMFMediaType,NAudio.MediaFoundation._MFT_SET_TYPE_FLAGS)">
            <summary>
            Sets, tests, or clears the media type for an output stream on this Media Foundation transform (MFT). 
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE SetOutputType( 
                DWORD dwOutputStreamID,
                /* [in] */ __RPC__in_opt IMFMediaType *pType,
                DWORD dwFlags) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.GetInputCurrentType(System.Int32,NAudio.MediaFoundation.IMFMediaType@)">
            <summary>
            Gets the current media type for an input stream on this Media Foundation transform (MFT). 
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE GetInputCurrentType( 
                DWORD dwInputStreamID,
                /* [out] */ __RPC__deref_out_opt IMFMediaType **ppType) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.GetOutputCurrentType(System.Int32,NAudio.MediaFoundation.IMFMediaType@)">
            <summary>
            Gets the current media type for an output stream on this Media Foundation transform (MFT). 
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE GetOutputCurrentType( 
                DWORD dwOutputStreamID,
                /* [out] */ __RPC__deref_out_opt IMFMediaType **ppType) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.GetInputStatus(System.Int32,NAudio.MediaFoundation._MFT_INPUT_STATUS_FLAGS@)">
            <summary>
            Queries whether an input stream on this Media Foundation transform (MFT) can accept more data. 
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE GetInputStatus( 
                DWORD dwInputStreamID,
                /* [out] */ __RPC__out DWORD *pdwFlags) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.GetOutputStatus(System.Int32,NAudio.MediaFoundation._MFT_OUTPUT_STATUS_FLAGS@)">
            <summary>
            Queries whether the Media Foundation transform (MFT) is ready to produce output data. 
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE GetOutputStatus( 
                /* [out] */ __RPC__out DWORD *pdwFlags) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.SetOutputBounds(System.Int64,System.Int64)">
            <summary>
            Sets the range of time stamps the client needs for output. 
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE SetOutputBounds( 
                LONGLONG hnsLowerBound,
                LONGLONG hnsUpperBound) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.ProcessEvent(System.Int32,NAudio.MediaFoundation.IMFMediaEvent)">
            <summary>
            Sends an event to an input stream on this Media Foundation transform (MFT). 
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE ProcessEvent( 
                DWORD dwInputStreamID,
                /* [in] */ __RPC__in_opt IMFMediaEvent *pEvent) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.ProcessMessage(NAudio.MediaFoundation.MFT_MESSAGE_TYPE,System.IntPtr)">
            <summary>
            Sends a message to the Media Foundation transform (MFT). 
            </summary>
            <remarks>
            virtual HRESULT STDMETHODCALLTYPE ProcessMessage( 
                MFT_MESSAGE_TYPE eMessage,
                ULONG_PTR ulParam) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.ProcessInput(System.Int32,NAudio.MediaFoundation.IMFSample,System.Int32)">
            <summary>
            Delivers data to an input stream on this Media Foundation transform (MFT). 
            </summary>
            <remarks>
            virtual /* [local] */ HRESULT STDMETHODCALLTYPE ProcessInput( 
                DWORD dwInputStreamID,
                IMFSample *pSample,
                DWORD dwFlags) = 0;
            </remarks>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFTransform.ProcessOutput(NAudio.MediaFoundation._MFT_PROCESS_OUTPUT_FLAGS,System.Int32,NAudio.MediaFoundation.MFT_OUTPUT_DATA_BUFFER[],NAudio.MediaFoundation._MFT_PROCESS_OUTPUT_STATUS@)">
            <summary>
            Generates output from the current input data. 
            </summary>
            <remarks>
            virtual /* [local] */ HRESULT STDMETHODCALLTYPE ProcessOutput( 
                DWORD dwFlags,
                DWORD cOutputBufferCount,
                /* [size_is][out][in] */ MFT_OUTPUT_DATA_BUFFER *pOutputSamples,
                /* [out] */ DWORD *pdwStatus) = 0;
            </remarks>
        </member>
        <member name="T:NAudio.MediaFoundation.MediaEventType">
            <summary>
            See mfobjects.h
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEUnknown">
            <summary>
            Unknown event type.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEError">
            <summary>
            Signals a serious error.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEExtendedType">
            <summary>
            Custom event type.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MENonFatalError">
            <summary>
            A non-fatal error occurred during streaming.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESessionUnknown">
            <summary>
            Session Unknown
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESessionTopologySet">
            <summary>
            Raised after the IMFMediaSession::SetTopology method completes asynchronously
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESessionTopologiesCleared">
            <summary>
            Raised by the Media Session when the IMFMediaSession::ClearTopologies method completes asynchronously.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESessionStarted">
            <summary>
            Raised when the IMFMediaSession::Start method completes asynchronously.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESessionPaused">
            <summary>
            Raised when the IMFMediaSession::Pause method completes asynchronously.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESessionStopped">
            <summary>
            Raised when the IMFMediaSession::Stop method completes asynchronously.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESessionClosed">
            <summary>
            Raised when the IMFMediaSession::Close method completes asynchronously.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESessionEnded">
            <summary>
            Raised by the Media Session when it has finished playing the last presentation in the playback queue.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESessionRateChanged">
            <summary>
            Raised by the Media Session when the playback rate changes.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESessionScrubSampleComplete">
            <summary>
            Raised by the Media Session when it completes a scrubbing request.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESessionCapabilitiesChanged">
            <summary>
            Raised by the Media Session when the session capabilities change.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESessionTopologyStatus">
            <summary>
            Raised by the Media Session when the status of a topology changes.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESessionNotifyPresentationTime">
            <summary>
            Raised by the Media Session when a new presentation starts.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MENewPresentation">
            <summary>
            Raised by a media source a new presentation is ready.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MELicenseAcquisitionStart">
            <summary>
            License acquisition is about to begin.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MELicenseAcquisitionCompleted">
            <summary>
            License acquisition is complete.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEIndividualizationStart">
            <summary>
            Individualization is about to begin.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEIndividualizationCompleted">
            <summary>
            Individualization is complete.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEEnablerProgress">
            <summary>
            Signals the progress of a content enabler object.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEEnablerCompleted">
            <summary>
            A content enabler object's action is complete.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEPolicyError">
            <summary>
            Raised by a trusted output if an error occurs while enforcing the output policy.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEPolicyReport">
            <summary>
            Contains status information about the enforcement of an output policy.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEBufferingStarted">
            <summary>
            A media source started to buffer data.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEBufferingStopped">
            <summary>
            A media source stopped buffering data.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEConnectStart">
            <summary>
            The network source started opening a URL.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEConnectEnd">
            <summary>
            The network source finished opening a URL.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEReconnectStart">
            <summary>
            Raised by a media source at the start of a reconnection attempt.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEReconnectEnd">
            <summary>
            Raised by a media source at the end of a reconnection attempt.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MERendererEvent">
            <summary>
            Raised by the enhanced video renderer (EVR) when it receives a user event from the presenter.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESessionStreamSinkFormatChanged">
            <summary>
            Raised by the Media Session when the format changes on a media sink.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESourceUnknown">
            <summary>
            Source Unknown
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESourceStarted">
            <summary>
            Raised when a media source starts without seeking.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEStreamStarted">
            <summary>
            Raised by a media stream when the source starts without seeking.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESourceSeeked">
            <summary>
            Raised when a media source seeks to a new position.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEStreamSeeked">
            <summary>
            Raised by a media stream after a call to IMFMediaSource::Start causes a seek in the stream.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MENewStream">
            <summary>
            Raised by a media source when it starts a new stream.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEUpdatedStream">
            <summary>
            Raised by a media source when it restarts or seeks a stream that is already active.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESourceStopped">
            <summary>
            Raised by a media source when the IMFMediaSource::Stop method completes asynchronously.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEStreamStopped">
            <summary>
            Raised by a media stream when the IMFMediaSource::Stop method completes asynchronously.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESourcePaused">
            <summary>
            Raised by a media source when the IMFMediaSource::Pause method completes asynchronously.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEStreamPaused">
            <summary>
            Raised by a media stream when the IMFMediaSource::Pause method completes asynchronously.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEEndOfPresentation">
            <summary>
            Raised by a media source when a presentation ends.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEEndOfStream">
            <summary>
            Raised by a media stream when the stream ends.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEMediaSample">
            <summary>
            Raised when a media stream delivers a new sample.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEStreamTick">
            <summary>
            Signals that a media stream does not have data available at a specified time.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEStreamThinMode">
            <summary>
            Raised by a media stream when it starts or stops thinning the stream.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEStreamFormatChanged">
            <summary>
            Raised by a media stream when the media type of the stream changes.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESourceRateChanged">
            <summary>
            Raised by a media source when the playback rate changes.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEEndOfPresentationSegment">
            <summary>
            Raised by the sequencer source when a segment is completed and is followed by another segment.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESourceCharacteristicsChanged">
            <summary>
            Raised by a media source when the source's characteristics change.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESourceRateChangeRequested">
            <summary>
            Raised by a media source to request a new playback rate.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESourceMetadataChanged">
            <summary>
            Raised by a media source when it updates its metadata.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESequencerSourceTopologyUpdated">
            <summary>
            Raised by the sequencer source when the IMFSequencerSource::UpdateTopology method completes asynchronously.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESinkUnknown">
            <summary>
            Sink Unknown
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEStreamSinkStarted">
            <summary>
            Raised by a stream sink when it completes the transition to the running state.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEStreamSinkStopped">
            <summary>
            Raised by a stream sink when it completes the transition to the stopped state.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEStreamSinkPaused">
            <summary>
            Raised by a stream sink when it completes the transition to the paused state.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEStreamSinkRateChanged">
            <summary>
            Raised by a stream sink when the rate has changed.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEStreamSinkRequestSample">
            <summary>
            Raised by a stream sink to request a new media sample from the pipeline.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEStreamSinkMarker">
            <summary>
            Raised by a stream sink after the IMFStreamSink::PlaceMarker method is called.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEStreamSinkPrerolled">
            <summary>
            Raised by a stream sink when the stream has received enough preroll data to begin rendering.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEStreamSinkScrubSampleComplete">
            <summary>
            Raised by a stream sink when it completes a scrubbing request.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEStreamSinkFormatChanged">
            <summary>
            Raised by a stream sink when the sink's media type is no longer valid.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEStreamSinkDeviceChanged">
            <summary>
            Raised by the stream sinks of the EVR if the video device changes.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEQualityNotify">
            <summary>
            Provides feedback about playback quality to the quality manager.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MESinkInvalidated">
            <summary>
            Raised when a media sink becomes invalid.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEAudioSessionNameChanged">
            <summary>
            The audio session display name changed.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEAudioSessionVolumeChanged">
            <summary>
            The volume or mute state of the audio session changed
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEAudioSessionDeviceRemoved">
            <summary>
            The audio device was removed.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEAudioSessionServerShutdown">
            <summary>
            The Windows audio server system was shut down.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEAudioSessionGroupingParamChanged">
            <summary>
            The grouping parameters changed for the audio session.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEAudioSessionIconChanged">
            <summary>
            The audio session icon changed.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEAudioSessionFormatChanged">
            <summary>
            The default audio format for the audio device changed.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEAudioSessionDisconnected">
            <summary>
            The audio session was disconnected from a Windows Terminal Services session
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEAudioSessionExclusiveModeOverride">
            <summary>
            The audio session was preempted by an exclusive-mode connection.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.METrustUnknown">
            <summary>
            Trust Unknown
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEPolicyChanged">
            <summary>
            The output policy for a stream changed.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEContentProtectionMessage">
            <summary>
            Content protection message
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEPolicySet">
            <summary>
            The IMFOutputTrustAuthority::SetPolicy method completed.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEWMDRMLicenseBackupCompleted">
            <summary>
            DRM License Backup Completed
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEWMDRMLicenseBackupProgress">
            <summary>
            DRM License Backup Progress
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEWMDRMLicenseRestoreCompleted">
            <summary>
            DRM License Restore Completed
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEWMDRMLicenseRestoreProgress">
            <summary>
            DRM License Restore Progress
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEWMDRMLicenseAcquisitionCompleted">
            <summary>
            DRM License Acquisition Completed
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEWMDRMIndividualizationCompleted">
            <summary>
            DRM Individualization Completed
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEWMDRMIndividualizationProgress">
            <summary>
            DRM Individualization Progress
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEWMDRMProximityCompleted">
            <summary>
            DRM Proximity Completed
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEWMDRMLicenseStoreCleaned">
            <summary>
            DRM License Store Cleaned
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.MEWMDRMRevocationDownloadCompleted">
            <summary>
            DRM Revocation Download Completed
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.METransformUnknown">
            <summary>
            Transform Unknown
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.METransformNeedInput">
            <summary>
            Sent by an asynchronous MFT to request a new input sample.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.METransformHaveOutput">
            <summary>
            Sent by an asynchronous MFT when new output data is available from the MFT.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.METransformDrainComplete">
            <summary>
            Sent by an asynchronous Media Foundation transform (MFT) when a drain operation is complete.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaEventType.METransformMarker">
            <summary>
            Sent by an asynchronous MFT in response to an MFT_MESSAGE_COMMAND_MARKER message.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.MediaFoundationAttributes">
            <summary>
            Media Foundation attribute guids
            http://msdn.microsoft.com/en-us/library/windows/desktop/ms696989%28v=vs.85%29.aspx
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_TRANSFORM_ASYNC">
            <summary>
            Specifies whether an MFT performs asynchronous processing.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_TRANSFORM_ASYNC_UNLOCK">
            <summary>
            Enables the use of an asynchronous MFT.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_TRANSFORM_FLAGS_Attribute">
            <summary>
            Contains flags for an MFT activation object.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_TRANSFORM_CATEGORY_Attribute">
            <summary>
            Specifies the category for an MFT.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MFT_TRANSFORM_CLSID_Attribute">
            <summary>
            Contains the class identifier (CLSID) of an MFT.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MFT_INPUT_TYPES_Attributes">
            <summary>
            Contains the registered input types for a Media Foundation transform (MFT).
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MFT_OUTPUT_TYPES_Attributes">
            <summary>
            Contains the registered output types for a Media Foundation transform (MFT).
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MFT_ENUM_HARDWARE_URL_Attribute">
            <summary>
            Contains the symbolic link for a hardware-based MFT.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MFT_FRIENDLY_NAME_Attribute">
            <summary>
            Contains the display name for a hardware-based MFT.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MFT_CONNECTED_STREAM_ATTRIBUTE">
            <summary>
            Contains a pointer to the stream attributes of the connected stream on a hardware-based MFT.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MFT_CONNECTED_TO_HW_STREAM">
            <summary>
            Specifies whether a hardware-based MFT is connected to another hardware-based MFT.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MFT_PREFERRED_OUTPUTTYPE_Attribute">
            <summary>
            Specifies the preferred output format for an encoder.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MFT_PROCESS_LOCAL_Attribute">
            <summary>
            Specifies whether an MFT is registered only in the application's process.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MFT_PREFERRED_ENCODER_PROFILE">
            <summary>
            Contains configuration properties for an encoder.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MFT_HW_TIMESTAMP_WITH_QPC_Attribute">
            <summary>
            Specifies whether a hardware device source uses the system time for time stamps.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MFT_FIELDOFUSE_UNLOCK_Attribute">
            <summary>
            Contains an IMFFieldOfUseMFTUnlock pointer, which can be used to unlock the MFT.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MFT_CODEC_MERIT_Attribute">
            <summary>
            Contains the merit value of a hardware codec.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MFT_ENUM_TRANSCODE_ONLY_ATTRIBUTE">
            <summary>
            Specifies whether a decoder is optimized for transcoding rather than for playback.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_PD_PMPHOST_CONTEXT">
            <summary>
            Contains a pointer to the proxy object for the application's presentation descriptor.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_PD_APP_CONTEXT">
            <summary>
            Contains a pointer to the presentation descriptor from the protected media path (PMP).
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_PD_DURATION">
            <summary>
            Specifies the duration of a presentation, in 100-nanosecond units.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_PD_TOTAL_FILE_SIZE">
            <summary>
            Specifies the total size of the source file, in bytes. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_PD_AUDIO_ENCODING_BITRATE">
            <summary>
            Specifies the audio encoding bit rate for the presentation, in bits per second.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_PD_VIDEO_ENCODING_BITRATE">
            <summary>
            Specifies the video encoding bit rate for the presentation, in bits per second.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_PD_MIME_TYPE">
            <summary>
            Specifies the MIME type of the content.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_PD_LAST_MODIFIED_TIME">
            <summary>
            Specifies when a presentation was last modified.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_PD_PLAYBACK_ELEMENT_ID">
            <summary>
            The identifier of the playlist element in the presentation.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_PD_PREFERRED_LANGUAGE">
            <summary>
            Contains the preferred RFC 1766 language of the media source.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_PD_PLAYBACK_BOUNDARY_TIME">
            <summary>
            The time at which the presentation must begin, relative to the start of the media source.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_PD_AUDIO_ISVARIABLEBITRATE">
            <summary>
            Specifies whether the audio streams in the presentation have a variable bit rate.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_MT_MAJOR_TYPE">
            <summary>
            Media type Major Type
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_MT_SUBTYPE">
            <summary>
            Media Type subtype
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_MT_AUDIO_BLOCK_ALIGNMENT">
            <summary>
            Audio block alignment
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_MT_AUDIO_AVG_BYTES_PER_SECOND">
            <summary>
            Audio average bytes per second
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_MT_AUDIO_NUM_CHANNELS">
            <summary>
            Audio number of channels
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_MT_AUDIO_SAMPLES_PER_SECOND">
            <summary>
            Audio samples per second
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_MT_AUDIO_BITS_PER_SAMPLE">
            <summary>
            Audio bits per sample
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_READWRITE_ENABLE_HARDWARE_TRANSFORMS">
            <summary>
            Enables the source reader or sink writer to use hardware-based Media Foundation transforms (MFTs).
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_MT_USER_DATA">
            <summary>
            Contains additional format data for a media type. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_MT_ALL_SAMPLES_INDEPENDENT">
            <summary>
            Specifies for a media type whether each sample is independent of the other samples in the stream. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_MT_FIXED_SIZE_SAMPLES">
            <summary>
            Specifies for a media type whether the samples have a fixed size. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_MT_AM_FORMAT_TYPE">
            <summary>
            Contains a DirectShow format GUID for a media type. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_MT_AUDIO_PREFER_WAVEFORMATEX">
            <summary>
            Specifies the preferred legacy format structure to use when converting an audio media type. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_MT_COMPRESSED">
            <summary>
            Specifies for a media type whether the media data is compressed. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_MT_AVG_BITRATE">
            <summary>
            Approximate data rate of the video stream, in bits per second, for a video media type. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_MT_AAC_PAYLOAD_TYPE">
            <summary>
            Specifies the payload type of an Advanced Audio Coding (AAC) stream.
            0 - The stream contains raw_data_block elements only
            1 - Audio Data Transport Stream (ADTS). The stream contains an adts_sequence, as defined by MPEG-2.
            2 - Audio Data Interchange Format (ADIF). The stream contains an adif_sequence, as defined by MPEG-2.
            3 - The stream contains an MPEG-4 audio transport stream with a synchronization layer (LOAS) and a multiplex layer (LATM).
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationAttributes.MF_MT_AAC_AUDIO_PROFILE_LEVEL_INDICATION">
            <summary>
            Specifies the audio profile and level of an Advanced Audio Coding (AAC) stream, as defined by ISO/IEC 14496-3.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.MediaFoundationApi">
            <summary>
            Main interface for using Media Foundation with NAudio
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationApi.Startup">
            <summary>
            initializes MediaFoundation - only needs to be called once per process
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationApi.EnumerateTransforms(System.Guid)">
            <summary>
            Enumerate the installed MediaFoundation transforms in the specified category
            </summary>
            <param name="category">A category from MediaFoundationTransformCategories</param>
            <returns></returns>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationApi.Shutdown">
            <summary>
            uninitializes MediaFoundation
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationApi.CreateMediaType">
            <summary>
            Creates a Media type
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationApi.CreateMediaTypeFromWaveFormat(NAudio.Wave.WaveFormat)">
            <summary>
            Creates a media type from a WaveFormat
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationApi.CreateMemoryBuffer(System.Int32)">
            <summary>
            Creates a memory buffer of the specified size
            </summary>
            <param name="bufferSize">Memory buffer size in bytes</param>
            <returns>The memory buffer</returns>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationApi.CreateSample">
            <summary>
            Creates a sample object
            </summary>
            <returns>The sample object</returns>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationApi.CreateAttributes(System.Int32)">
            <summary>
            Creates a new attributes store
            </summary>
            <param name="initialSize">Initial size</param>
            <returns>The attributes store</returns>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationApi.CreateByteStream(System.Object)">
            <summary>
            Creates a media foundation byte stream based on a stream object
            (usable with WinRT streams)
            </summary>
            <param name="stream">The input stream</param>
            <returns>A media foundation byte stream</returns>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationApi.CreateSourceReaderFromByteStream(NAudio.MediaFoundation.IMFByteStream)">
            <summary>
            Creates a source reader based on a byte stream
            </summary>
            <param name="byteStream">The byte stream</param>
            <returns>A media foundation source reader</returns>
        </member>
        <member name="T:NAudio.MediaFoundation.MediaFoundationInterop">
            <summary>
            Interop definitions for MediaFoundation
            thanks to Lucian Wischik for the initial work on many of these definitions (also various interfaces)
            n.b. the goal is to make as much of this internal as possible, and provide
            better .NET APIs using the MediaFoundationApi class instead
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationInterop.MFStartup(System.Int32,System.Int32)">
            <summary>
            Initializes Microsoft Media Foundation.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationInterop.MFShutdown">
            <summary>
            Shuts down the Microsoft Media Foundation platform
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationInterop.MFCreateMediaType(NAudio.MediaFoundation.IMFMediaType@)">
            <summary>
            Creates an empty media type.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationInterop.MFInitMediaTypeFromWaveFormatEx(NAudio.MediaFoundation.IMFMediaType,NAudio.Wave.WaveFormat,System.Int32)">
            <summary>
            Initializes a media type from a WAVEFORMATEX structure. 
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationInterop.MFCreateWaveFormatExFromMFMediaType(NAudio.MediaFoundation.IMFMediaType,System.IntPtr@,System.Int32@,System.Int32)">
            <summary>
            Converts a Media Foundation audio media type to a WAVEFORMATEX structure.
            </summary>
            TODO: try making second parameter out WaveFormatExtraData
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationInterop.MFCreateSourceReaderFromURL(System.String,NAudio.MediaFoundation.IMFAttributes,NAudio.MediaFoundation.IMFSourceReader@)">
            <summary>
            Creates the source reader from a URL.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationInterop.MFCreateSourceReaderFromByteStream(NAudio.MediaFoundation.IMFByteStream,NAudio.MediaFoundation.IMFAttributes,NAudio.MediaFoundation.IMFSourceReader@)">
            <summary>
            Creates the source reader from a byte stream.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationInterop.MFCreateSinkWriterFromURL(System.String,NAudio.MediaFoundation.IMFByteStream,NAudio.MediaFoundation.IMFAttributes,NAudio.MediaFoundation.IMFSinkWriter@)">
            <summary>
            Creates the sink writer from a URL or byte stream.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationInterop.MFCreateMFByteStreamOnStream(System.Runtime.InteropServices.ComTypes.IStream,NAudio.MediaFoundation.IMFByteStream@)">
            <summary>
            Creates a Microsoft Media Foundation byte stream that wraps an IRandomAccessStream object.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationInterop.MFTEnumEx(System.Guid,NAudio.MediaFoundation._MFT_ENUM_FLAG,NAudio.MediaFoundation.MFT_REGISTER_TYPE_INFO,NAudio.MediaFoundation.MFT_REGISTER_TYPE_INFO,System.IntPtr@,System.Int32@)">
            <summary>
            Gets a list of Microsoft Media Foundation transforms (MFTs) that match specified search criteria. 
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationInterop.MFCreateSample(NAudio.MediaFoundation.IMFSample@)">
            <summary>
            Creates an empty media sample.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationInterop.MFCreateMemoryBuffer(System.Int32,NAudio.MediaFoundation.IMFMediaBuffer@)">
            <summary>
            Allocates system memory and creates a media buffer to manage it.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationInterop.MFCreateAttributes(NAudio.MediaFoundation.IMFAttributes@,System.Int32)">
            <summary>
            Creates an empty attribute store. 
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationInterop.MFTranscodeGetAudioOutputAvailableTypes(System.Guid,NAudio.MediaFoundation._MFT_ENUM_FLAG,NAudio.MediaFoundation.IMFAttributes,NAudio.MediaFoundation.IMFCollection@)">
            <summary>
            Gets a list of output formats from an audio encoder.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationInterop.MF_SOURCE_READER_ALL_STREAMS">
            <summary>
            All streams
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationInterop.MF_SOURCE_READER_FIRST_AUDIO_STREAM">
            <summary>
            First audio stream
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationInterop.MF_SOURCE_READER_FIRST_VIDEO_STREAM">
            <summary>
            First video stream
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationInterop.MF_SOURCE_READER_MEDIASOURCE">
            <summary>
            Media source
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationInterop.MF_SDK_VERSION">
            <summary>
            Media Foundation SDK Version
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationInterop.MF_API_VERSION">
            <summary>
            Media Foundation API Version
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationInterop.MF_VERSION">
            <summary>
            Media Foundation Version
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.IMFAttributes">
            <summary>
            Provides a generic way to store key/value pairs on an object.
            http://msdn.microsoft.com/en-gb/library/windows/desktop/ms704598%28v=vs.85%29.aspx
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.GetItem(System.Guid,System.IntPtr)">
            <summary>
            Retrieves the value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.GetItemType(System.Guid,System.Int32@)">
            <summary>
            Retrieves the data type of the value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.CompareItem(System.Guid,System.IntPtr,System.Boolean@)">
            <summary>
            Queries whether a stored attribute value equals a specified PROPVARIANT.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.Compare(NAudio.MediaFoundation.IMFAttributes,System.Int32,System.Boolean@)">
            <summary>
            Compares the attributes on this object with the attributes on another object.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.GetUINT32(System.Guid,System.Int32@)">
            <summary>
            Retrieves a UINT32 value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.GetUINT64(System.Guid,System.Int64@)">
            <summary>
            Retrieves a UINT64 value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.GetDouble(System.Guid,System.Double@)">
            <summary>
            Retrieves a double value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.GetGUID(System.Guid,System.Guid@)">
            <summary>
            Retrieves a GUID value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.GetStringLength(System.Guid,System.Int32@)">
            <summary>
            Retrieves the length of a string value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.GetString(System.Guid,System.Text.StringBuilder,System.Int32,System.Int32@)">
            <summary>
            Retrieves a wide-character string associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.GetAllocatedString(System.Guid,System.String@,System.Int32@)">
            <summary>
            Retrieves a wide-character string associated with a key. This method allocates the memory for the string.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.GetBlobSize(System.Guid,System.Int32@)">
            <summary>
            Retrieves the length of a byte array associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.GetBlob(System.Guid,System.Byte[],System.Int32,System.Int32@)">
            <summary>
            Retrieves a byte array associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.GetAllocatedBlob(System.Guid,System.IntPtr@,System.Int32@)">
            <summary>
            Retrieves a byte array associated with a key. This method allocates the memory for the array.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.GetUnknown(System.Guid,System.Guid,System.Object@)">
            <summary>
            Retrieves an interface pointer associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.SetItem(System.Guid,System.IntPtr)">
            <summary>
            Associates an attribute value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.DeleteItem(System.Guid)">
            <summary>
            Removes a key/value pair from the object's attribute list.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.DeleteAllItems">
            <summary>
            Removes all key/value pairs from the object's attribute list.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.SetUINT32(System.Guid,System.Int32)">
            <summary>
            Associates a UINT32 value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.SetUINT64(System.Guid,System.Int64)">
            <summary>
            Associates a UINT64 value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.SetDouble(System.Guid,System.Double)">
            <summary>
            Associates a double value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.SetGUID(System.Guid,System.Guid)">
            <summary>
            Associates a GUID value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.SetString(System.Guid,System.String)">
            <summary>
            Associates a wide-character string with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.SetBlob(System.Guid,System.Byte[],System.Int32)">
            <summary>
            Associates a byte array with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.SetUnknown(System.Guid,System.Object)">
            <summary>
            Associates an IUnknown pointer with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.LockStore">
            <summary>
            Locks the attribute store so that no other thread can access it.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.UnlockStore">
            <summary>
            Unlocks the attribute store.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.GetCount(System.Int32@)">
            <summary>
            Retrieves the number of attributes that are set on this object.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.GetItemByIndex(System.Int32,System.Guid@,System.IntPtr)">
            <summary>
            Retrieves an attribute at the specified index.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFAttributes.CopyAllItems(NAudio.MediaFoundation.IMFAttributes)">
            <summary>
            Copies all of the attributes from this object into another attribute store.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.IMFByteStream">
            <summary>
            IMFByteStream 
            http://msdn.microsoft.com/en-gb/library/windows/desktop/ms698720%28v=vs.85%29.aspx
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFByteStream.GetCapabilities(System.Int32@)">
            <summary>
            Retrieves the characteristics of the byte stream. 
            virtual HRESULT STDMETHODCALLTYPE GetCapabilities(/*[out]*/ __RPC__out DWORD *pdwCapabilities) = 0;
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFByteStream.GetLength(System.Int64@)">
            <summary>
            Retrieves the length of the stream. 
            virtual HRESULT STDMETHODCALLTYPE GetLength(/*[out]*/ __RPC__out QWORD *pqwLength) = 0;
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFByteStream.SetLength(System.Int64)">
            <summary>
            Sets the length of the stream. 
            virtual HRESULT STDMETHODCALLTYPE SetLength(/*[in]*/ QWORD qwLength) = 0;
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFByteStream.GetCurrentPosition(System.Int64@)">
            <summary>
            Retrieves the current read or write position in the stream. 
            virtual HRESULT STDMETHODCALLTYPE GetCurrentPosition(/*[out]*/ __RPC__out QWORD *pqwPosition) = 0;
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFByteStream.SetCurrentPosition(System.Int64)">
            <summary>
            Sets the current read or write position. 
            virtual HRESULT STDMETHODCALLTYPE SetCurrentPosition(/*[in]*/ QWORD qwPosition) = 0;
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFByteStream.IsEndOfStream(System.Boolean@)">
            <summary>
            Queries whether the current position has reached the end of the stream. 
            virtual HRESULT STDMETHODCALLTYPE IsEndOfStream(/*[out]*/ __RPC__out BOOL *pfEndOfStream) = 0;
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFByteStream.Read(System.IntPtr,System.Int32,System.Int32@)">
            <summary>
            Reads data from the stream. 
            virtual HRESULT STDMETHODCALLTYPE Read(/*[size_is][out]*/ __RPC__out_ecount_full(cb) BYTE *pb, /*[in]*/ ULONG cb, /*[out]*/ __RPC__out ULONG *pcbRead) = 0;
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFByteStream.BeginRead(System.IntPtr,System.Int32,System.IntPtr,System.IntPtr)">
            <summary>
            Begins an asynchronous read operation from the stream. 
            virtual /*[local]*/ HRESULT STDMETHODCALLTYPE BeginRead(/*[out]*/ _Out_writes_bytes_(cb)  BYTE *pb, /*[in]*/ ULONG cb, /*[in]*/ IMFAsyncCallback *pCallback, /*[in]*/ IUnknown *punkState) = 0;
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFByteStream.EndRead(System.IntPtr,System.Int32@)">
            <summary>
            Completes an asynchronous read operation. 
            virtual /*[local]*/ HRESULT STDMETHODCALLTYPE EndRead(/*[in]*/ IMFAsyncResult *pResult, /*[out]*/ _Out_  ULONG *pcbRead) = 0;
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFByteStream.Write(System.IntPtr,System.Int32,System.Int32@)">
            <summary>
            Writes data to the stream. 
            virtual HRESULT STDMETHODCALLTYPE Write(/*[size_is][in]*/ __RPC__in_ecount_full(cb) const BYTE *pb, /*[in]*/ ULONG cb, /*[out]*/ __RPC__out ULONG *pcbWritten) = 0;
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFByteStream.BeginWrite(System.IntPtr,System.Int32,System.IntPtr,System.IntPtr)">
            <summary>
            Begins an asynchronous write operation to the stream. 
            virtual /*[local]*/ HRESULT STDMETHODCALLTYPE BeginWrite(/*[in]*/ _In_reads_bytes_(cb)  const BYTE *pb, /*[in]*/ ULONG cb, /*[in]*/ IMFAsyncCallback *pCallback, /*[in]*/ IUnknown *punkState) = 0;
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFByteStream.EndWrite(System.IntPtr,System.Int32@)">
            <summary>
            Completes an asynchronous write operation. 
            virtual /*[local]*/ HRESULT STDMETHODCALLTYPE EndWrite(/*[in]*/ IMFAsyncResult *pResult, /*[out]*/ _Out_  ULONG *pcbWritten) = 0;
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFByteStream.Seek(System.Int32,System.Int64,System.Int32,System.Int64@)">
            <summary>
            Moves the current position in the stream by a specified offset. 
            virtual HRESULT STDMETHODCALLTYPE Seek(/*[in]*/ MFBYTESTREAM_SEEK_ORIGIN SeekOrigin, /*[in]*/ LONGLONG llSeekOffset, /*[in]*/ DWORD dwSeekFlags, /*[out]*/ __RPC__out QWORD *pqwCurrentPosition) = 0;
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFByteStream.Flush">
            <summary>
            Clears any internal buffers used by the stream. 
            virtual HRESULT STDMETHODCALLTYPE Flush( void) = 0;
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFByteStream.Close">
            <summary>
            Closes the stream and releases any resources associated with the stream. 
            virtual HRESULT STDMETHODCALLTYPE Close( void) = 0;
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.IMFMediaBuffer">
            <summary>
            IMFMediaBuffer
            http://msdn.microsoft.com/en-gb/library/windows/desktop/ms696261%28v=vs.85%29.aspx
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaBuffer.Lock(System.IntPtr@,System.Int32@,System.Int32@)">
            <summary>
            Gives the caller access to the memory in the buffer.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaBuffer.Unlock">
            <summary>
            Unlocks a buffer that was previously locked.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaBuffer.GetCurrentLength(System.Int32@)">
            <summary>
            Retrieves the length of the valid data in the buffer.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaBuffer.SetCurrentLength(System.Int32)">
            <summary>
            Sets the length of the valid data in the buffer.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaBuffer.GetMaxLength(System.Int32@)">
            <summary>
            Retrieves the allocated size of the buffer.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.IMFMediaType">
            <summary>
            Represents a description of a media format. 
            http://msdn.microsoft.com/en-us/library/windows/desktop/ms704850%28v=vs.85%29.aspx
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.GetItem(System.Guid,System.IntPtr)">
            <summary>
            Retrieves the value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.GetItemType(System.Guid,System.Int32@)">
            <summary>
            Retrieves the data type of the value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.CompareItem(System.Guid,System.IntPtr,System.Boolean@)">
            <summary>
            Queries whether a stored attribute value equals a specified PROPVARIANT.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.Compare(NAudio.MediaFoundation.IMFAttributes,System.Int32,System.Boolean@)">
            <summary>
            Compares the attributes on this object with the attributes on another object.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.GetUINT32(System.Guid,System.Int32@)">
            <summary>
            Retrieves a UINT32 value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.GetUINT64(System.Guid,System.Int64@)">
            <summary>
            Retrieves a UINT64 value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.GetDouble(System.Guid,System.Double@)">
            <summary>
            Retrieves a double value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.GetGUID(System.Guid,System.Guid@)">
            <summary>
            Retrieves a GUID value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.GetStringLength(System.Guid,System.Int32@)">
            <summary>
            Retrieves the length of a string value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.GetString(System.Guid,System.Text.StringBuilder,System.Int32,System.Int32@)">
            <summary>
            Retrieves a wide-character string associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.GetAllocatedString(System.Guid,System.String@,System.Int32@)">
            <summary>
            Retrieves a wide-character string associated with a key. This method allocates the memory for the string.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.GetBlobSize(System.Guid,System.Int32@)">
            <summary>
            Retrieves the length of a byte array associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.GetBlob(System.Guid,System.Byte[],System.Int32,System.Int32@)">
            <summary>
            Retrieves a byte array associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.GetAllocatedBlob(System.Guid,System.IntPtr@,System.Int32@)">
            <summary>
            Retrieves a byte array associated with a key. This method allocates the memory for the array.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.GetUnknown(System.Guid,System.Guid,System.Object@)">
            <summary>
            Retrieves an interface pointer associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.SetItem(System.Guid,System.IntPtr)">
            <summary>
            Associates an attribute value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.DeleteItem(System.Guid)">
            <summary>
            Removes a key/value pair from the object's attribute list.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.DeleteAllItems">
            <summary>
            Removes all key/value pairs from the object's attribute list.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.SetUINT32(System.Guid,System.Int32)">
            <summary>
            Associates a UINT32 value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.SetUINT64(System.Guid,System.Int64)">
            <summary>
            Associates a UINT64 value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.SetDouble(System.Guid,System.Double)">
            <summary>
            Associates a double value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.SetGUID(System.Guid,System.Guid)">
            <summary>
            Associates a GUID value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.SetString(System.Guid,System.String)">
            <summary>
            Associates a wide-character string with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.SetBlob(System.Guid,System.Byte[],System.Int32)">
            <summary>
            Associates a byte array with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.SetUnknown(System.Guid,System.Object)">
            <summary>
            Associates an IUnknown pointer with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.LockStore">
            <summary>
            Locks the attribute store so that no other thread can access it.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.UnlockStore">
            <summary>
            Unlocks the attribute store.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.GetCount(System.Int32@)">
            <summary>
            Retrieves the number of attributes that are set on this object.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.GetItemByIndex(System.Int32,System.Guid@,System.IntPtr)">
            <summary>
            Retrieves an attribute at the specified index.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.CopyAllItems(NAudio.MediaFoundation.IMFAttributes)">
            <summary>
            Copies all of the attributes from this object into another attribute store.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.GetMajorType(System.Guid@)">
            <summary>
            Retrieves the major type of the format.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.IsCompressedFormat(System.Boolean@)">
            <summary>
            Queries whether the media type is a compressed format.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.IsEqual(NAudio.MediaFoundation.IMFMediaType,System.Int32@)">
            <summary>
            Compares two media types and determines whether they are identical.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.GetRepresentation(System.Guid,System.IntPtr@)">
            <summary>
            Retrieves an alternative representation of the media type.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFMediaType.FreeRepresentation(System.Guid,System.IntPtr)">
            <summary>
            Frees memory that was allocated by the GetRepresentation method.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.IMFSample">
            <summary>
            http://msdn.microsoft.com/en-gb/library/windows/desktop/ms702192%28v=vs.85%29.aspx
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.GetItem(System.Guid,System.IntPtr)">
            <summary>
            Retrieves the value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.GetItemType(System.Guid,System.Int32@)">
            <summary>
            Retrieves the data type of the value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.CompareItem(System.Guid,System.IntPtr,System.Boolean@)">
            <summary>
            Queries whether a stored attribute value equals a specified PROPVARIANT.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.Compare(NAudio.MediaFoundation.IMFAttributes,System.Int32,System.Boolean@)">
            <summary>
            Compares the attributes on this object with the attributes on another object.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.GetUINT32(System.Guid,System.Int32@)">
            <summary>
            Retrieves a UINT32 value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.GetUINT64(System.Guid,System.Int64@)">
            <summary>
            Retrieves a UINT64 value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.GetDouble(System.Guid,System.Double@)">
            <summary>
            Retrieves a double value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.GetGUID(System.Guid,System.Guid@)">
            <summary>
            Retrieves a GUID value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.GetStringLength(System.Guid,System.Int32@)">
            <summary>
            Retrieves the length of a string value associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.GetString(System.Guid,System.Text.StringBuilder,System.Int32,System.Int32@)">
            <summary>
            Retrieves a wide-character string associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.GetAllocatedString(System.Guid,System.String@,System.Int32@)">
            <summary>
            Retrieves a wide-character string associated with a key. This method allocates the memory for the string.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.GetBlobSize(System.Guid,System.Int32@)">
            <summary>
            Retrieves the length of a byte array associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.GetBlob(System.Guid,System.Byte[],System.Int32,System.Int32@)">
            <summary>
            Retrieves a byte array associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.GetAllocatedBlob(System.Guid,System.IntPtr@,System.Int32@)">
            <summary>
            Retrieves a byte array associated with a key. This method allocates the memory for the array.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.GetUnknown(System.Guid,System.Guid,System.Object@)">
            <summary>
            Retrieves an interface pointer associated with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.SetItem(System.Guid,System.IntPtr)">
            <summary>
            Associates an attribute value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.DeleteItem(System.Guid)">
            <summary>
            Removes a key/value pair from the object's attribute list.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.DeleteAllItems">
            <summary>
            Removes all key/value pairs from the object's attribute list.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.SetUINT32(System.Guid,System.Int32)">
            <summary>
            Associates a UINT32 value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.SetUINT64(System.Guid,System.Int64)">
            <summary>
            Associates a UINT64 value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.SetDouble(System.Guid,System.Double)">
            <summary>
            Associates a double value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.SetGUID(System.Guid,System.Guid)">
            <summary>
            Associates a GUID value with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.SetString(System.Guid,System.String)">
            <summary>
            Associates a wide-character string with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.SetBlob(System.Guid,System.Byte[],System.Int32)">
            <summary>
            Associates a byte array with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.SetUnknown(System.Guid,System.Object)">
            <summary>
            Associates an IUnknown pointer with a key.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.LockStore">
            <summary>
            Locks the attribute store so that no other thread can access it.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.UnlockStore">
            <summary>
            Unlocks the attribute store.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.GetCount(System.Int32@)">
            <summary>
            Retrieves the number of attributes that are set on this object.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.GetItemByIndex(System.Int32,System.Guid@,System.IntPtr)">
            <summary>
            Retrieves an attribute at the specified index.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.CopyAllItems(NAudio.MediaFoundation.IMFAttributes)">
            <summary>
            Copies all of the attributes from this object into another attribute store.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.GetSampleFlags(System.Int32@)">
            <summary>
            Retrieves flags associated with the sample.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.SetSampleFlags(System.Int32)">
            <summary>
            Sets flags associated with the sample.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.GetSampleTime(System.Int64@)">
            <summary>
            Retrieves the presentation time of the sample.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.SetSampleTime(System.Int64)">
            <summary>
            Sets the presentation time of the sample.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.GetSampleDuration(System.Int64@)">
            <summary>
            Retrieves the duration of the sample.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.SetSampleDuration(System.Int64)">
            <summary>
            Sets the duration of the sample.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.GetBufferCount(System.Int32@)">
            <summary>
            Retrieves the number of buffers in the sample.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.GetBufferByIndex(System.Int32,NAudio.MediaFoundation.IMFMediaBuffer@)">
            <summary>
            Retrieves a buffer from the sample.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.ConvertToContiguousBuffer(NAudio.MediaFoundation.IMFMediaBuffer@)">
            <summary>
            Converts a sample with multiple buffers into a sample with a single buffer.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.AddBuffer(NAudio.MediaFoundation.IMFMediaBuffer)">
            <summary>
             Adds a buffer to the end of the list of buffers in the sample.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.RemoveBufferByIndex(System.Int32)">
            <summary>
            Removes a buffer at a specified index from the sample.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.RemoveAllBuffers">
            <summary>
            Removes all buffers from the sample.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.GetTotalLength(System.Int32@)">
            <summary>
            Retrieves the total length of the valid data in all of the buffers in the sample.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSample.CopyToBuffer(NAudio.MediaFoundation.IMFMediaBuffer)">
            <summary>
            Copies the sample data to a buffer.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.IMFSourceReader">
            <summary>
            IMFSourceReader interface
            http://msdn.microsoft.com/en-us/library/windows/desktop/dd374655%28v=vs.85%29.aspx
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSourceReader.GetStreamSelection(System.Int32,System.Boolean@)">
            <summary>
            Queries whether a stream is selected.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSourceReader.SetStreamSelection(System.Int32,System.Boolean)">
            <summary>
            Selects or deselects one or more streams.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSourceReader.GetNativeMediaType(System.Int32,System.Int32,NAudio.MediaFoundation.IMFMediaType@)">
            <summary>
            Gets a format that is supported natively by the media source.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSourceReader.GetCurrentMediaType(System.Int32,NAudio.MediaFoundation.IMFMediaType@)">
            <summary>
            Gets the current media type for a stream.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSourceReader.SetCurrentMediaType(System.Int32,System.IntPtr,NAudio.MediaFoundation.IMFMediaType)">
            <summary>
            Sets the media type for a stream.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSourceReader.SetCurrentPosition(System.Guid,System.IntPtr)">
            <summary>
            Seeks to a new position in the media source.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSourceReader.ReadSample(System.Int32,System.Int32,System.Int32@,NAudio.MediaFoundation.MF_SOURCE_READER_FLAG@,System.UInt64@,NAudio.MediaFoundation.IMFSample@)">
            <summary>
            Reads the next sample from the media source.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSourceReader.Flush(System.Int32)">
            <summary>
            Flushes one or more streams.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSourceReader.GetServiceForStream(System.Int32,System.Guid,System.Guid,System.IntPtr@)">
            <summary>
            Queries the underlying media source or decoder for an interface.
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.IMFSourceReader.GetPresentationAttribute(System.Int32,System.Guid,System.IntPtr)">
            <summary>
            Gets an attribute from the underlying media source.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.MF_SOURCE_READER_FLAG">
            <summary>
            Contains flags that indicate the status of the IMFSourceReader::ReadSample method
            http://msdn.microsoft.com/en-us/library/windows/desktop/dd375773(v=vs.85).aspx
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MF_SOURCE_READER_FLAG.None">
            <summary>
            No Error
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MF_SOURCE_READER_FLAG.MF_SOURCE_READERF_ERROR">
            <summary>
            An error occurred. If you receive this flag, do not make any further calls to IMFSourceReader methods.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MF_SOURCE_READER_FLAG.MF_SOURCE_READERF_ENDOFSTREAM">
            <summary>
            The source reader reached the end of the stream.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MF_SOURCE_READER_FLAG.MF_SOURCE_READERF_NEWSTREAM">
            <summary>
            One or more new streams were created
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MF_SOURCE_READER_FLAG.MF_SOURCE_READERF_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:NAudio.MediaFoundation.MF_SOURCE_READER_FLAG.MF_SOURCE_READERF_CURRENTMEDIATYPECHANGED">
            <summary>
            The current media has type changed for one or more streams. To get the current media type, call the IMFSourceReader::GetCurrentMediaType method.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MF_SOURCE_READER_FLAG.MF_SOURCE_READERF_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:NAudio.MediaFoundation.MF_SOURCE_READER_FLAG.MF_SOURCE_READERF_ALLEFFECTSREMOVED">
            <summary>
            All transforms inserted by the application have been removed for a particular stream.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.MediaFoundationTransformCategories">
            <summary>
            Media Foundation Transform Categories
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationTransformCategories.VideoDecoder">
            <summary>
            MFT_CATEGORY_VIDEO_DECODER
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationTransformCategories.VideoEncoder">
            <summary>
            MFT_CATEGORY_VIDEO_ENCODER
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationTransformCategories.VideoEffect">
            <summary>
            MFT_CATEGORY_VIDEO_EFFECT
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationTransformCategories.Multiplexer">
            <summary>
            MFT_CATEGORY_MULTIPLEXER
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationTransformCategories.Demultiplexer">
            <summary>
            MFT_CATEGORY_DEMULTIPLEXER
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationTransformCategories.AudioDecoder">
            <summary>
            MFT_CATEGORY_AUDIO_DECODER
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationTransformCategories.AudioEncoder">
            <summary>
            MFT_CATEGORY_AUDIO_ENCODER
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationTransformCategories.AudioEffect">
            <summary>
            MFT_CATEGORY_AUDIO_EFFECT
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationTransformCategories.VideoProcessor">
            <summary>
            MFT_CATEGORY_VIDEO_PROCESSOR
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationTransformCategories.Other">
            <summary>
            MFT_CATEGORY_OTHER
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.MFT_INPUT_STREAM_INFO">
            <summary>
            Contains information about an input stream on a Media Foundation transform (MFT)
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_INPUT_STREAM_INFO.hnsMaxLatency">
            <summary>
            Maximum amount of time between an input sample and the corresponding output sample, in 100-nanosecond units.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_INPUT_STREAM_INFO.dwFlags">
            <summary>
            Bitwise OR of zero or more flags from the _MFT_INPUT_STREAM_INFO_FLAGS enumeration.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_INPUT_STREAM_INFO.cbSize">
            <summary>
            The minimum size of each input buffer, in bytes.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_INPUT_STREAM_INFO.cbMaxLookahead">
            <summary>
            Maximum amount of input data, in bytes, that the MFT holds to perform lookahead.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_INPUT_STREAM_INFO.cbAlignment">
            <summary>
            The memory alignment required for input buffers. If the MFT does not require a specific alignment, the value is zero.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.MFT_OUTPUT_DATA_BUFFER">
            <summary>
            Contains information about an output buffer for a Media Foundation transform. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_OUTPUT_DATA_BUFFER.dwStreamID">
            <summary>
            Output stream identifier.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_OUTPUT_DATA_BUFFER.pSample">
            <summary>
            Pointer to the IMFSample interface. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_OUTPUT_DATA_BUFFER.dwStatus">
            <summary>
            Before calling ProcessOutput, set this member to zero.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_OUTPUT_DATA_BUFFER.pEvents">
            <summary>
            Before calling ProcessOutput, set this member to NULL.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.MFT_OUTPUT_STREAM_INFO">
            <summary>
            Contains information about an output stream on a Media Foundation transform (MFT).
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_OUTPUT_STREAM_INFO.dwFlags">
            <summary>
            Bitwise OR of zero or more flags from the _MFT_OUTPUT_STREAM_INFO_FLAGS enumeration.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_OUTPUT_STREAM_INFO.cbSize">
            <summary>
            Minimum size of each output buffer, in bytes.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_OUTPUT_STREAM_INFO.cbAlignment">
            <summary>
            The memory alignment required for output buffers.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.MFT_MESSAGE_TYPE">
            <summary>
            Defines messages for a Media Foundation transform (MFT).
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_MESSAGE_TYPE.MFT_MESSAGE_COMMAND_FLUSH">
            <summary>
            Requests the MFT to flush all stored data. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_MESSAGE_TYPE.MFT_MESSAGE_COMMAND_DRAIN">
            <summary>
            Requests the MFT to drain any stored data.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_MESSAGE_TYPE.MFT_MESSAGE_SET_D3D_MANAGER">
            <summary>
            Sets or clears the Direct3D Device Manager for DirectX Video Accereration (DXVA). 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_MESSAGE_TYPE.MFT_MESSAGE_DROP_SAMPLES">
            <summary>
            Drop samples - requires Windows 7
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_MESSAGE_TYPE.MFT_MESSAGE_COMMAND_TICK">
            <summary>
            Command Tick - requires Windows 8
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_MESSAGE_TYPE.MFT_MESSAGE_NOTIFY_BEGIN_STREAMING">
            <summary>
            Notifies the MFT that streaming is about to begin. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_MESSAGE_TYPE.MFT_MESSAGE_NOTIFY_END_STREAMING">
            <summary>
            Notifies the MFT that streaming is about to end. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_MESSAGE_TYPE.MFT_MESSAGE_NOTIFY_END_OF_STREAM">
            <summary>
            Notifies the MFT that an input stream has ended. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_MESSAGE_TYPE.MFT_MESSAGE_NOTIFY_START_OF_STREAM">
            <summary>
            Notifies the MFT that the first sample is about to be processed. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_MESSAGE_TYPE.MFT_MESSAGE_COMMAND_MARKER">
            <summary>
            Marks a point in the stream. This message applies only to asynchronous MFTs. Requires Windows 7 
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.MFT_REGISTER_TYPE_INFO">
            <summary>
            Contains media type information for registering a Media Foundation transform (MFT). 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_REGISTER_TYPE_INFO.guidMajorType">
            <summary>
            The major media type.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MFT_REGISTER_TYPE_INFO.guidSubtype">
            <summary>
            The Media Subtype
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.MF_SINK_WRITER_STATISTICS">
            <summary>
            Contains statistics about the performance of the sink writer.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MF_SINK_WRITER_STATISTICS.cb">
            <summary>
            The size of the structure, in bytes.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MF_SINK_WRITER_STATISTICS.llLastTimestampReceived">
            <summary>
            The time stamp of the most recent sample given to the sink writer.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MF_SINK_WRITER_STATISTICS.llLastTimestampEncoded">
            <summary>
            The time stamp of the most recent sample to be encoded.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MF_SINK_WRITER_STATISTICS.llLastTimestampProcessed">
            <summary>
            The time stamp of the most recent sample given to the media sink.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MF_SINK_WRITER_STATISTICS.llLastStreamTickReceived">
            <summary>
            The time stamp of the most recent stream tick. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MF_SINK_WRITER_STATISTICS.llLastSinkSampleRequest">
            <summary>
            The system time of the most recent sample request from the media sink. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MF_SINK_WRITER_STATISTICS.qwNumSamplesReceived">
            <summary>
            The number of samples received.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MF_SINK_WRITER_STATISTICS.qwNumSamplesEncoded">
            <summary>
            The number of samples encoded.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MF_SINK_WRITER_STATISTICS.qwNumSamplesProcessed">
            <summary>
            The number of samples given to the media sink.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MF_SINK_WRITER_STATISTICS.qwNumStreamTicksReceived">
            <summary>
            The number of stream ticks received.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MF_SINK_WRITER_STATISTICS.dwByteCountQueued">
            <summary>
            The amount of data, in bytes, currently waiting to be processed. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MF_SINK_WRITER_STATISTICS.qwByteCountProcessed">
            <summary>
            The total amount of data, in bytes, that has been sent to the media sink.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MF_SINK_WRITER_STATISTICS.dwNumOutstandingSinkSampleRequests">
            <summary>
            The number of pending sample requests.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MF_SINK_WRITER_STATISTICS.dwAverageSampleRateReceived">
            <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:NAudio.MediaFoundation.MF_SINK_WRITER_STATISTICS.dwAverageSampleRateEncoded">
            <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:NAudio.MediaFoundation.MF_SINK_WRITER_STATISTICS.dwAverageSampleRateProcessed">
            <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:NAudio.MediaFoundation._MFT_ENUM_FLAG">
            <summary>
            Contains flags for registering and enumeration Media Foundation transforms (MFTs).
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_ENUM_FLAG.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_ENUM_FLAG.MFT_ENUM_FLAG_SYNCMFT">
            <summary>
            The MFT performs synchronous data processing in software. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_ENUM_FLAG.MFT_ENUM_FLAG_ASYNCMFT">
            <summary>
            The MFT performs asynchronous data processing in software.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_ENUM_FLAG.MFT_ENUM_FLAG_HARDWARE">
            <summary>
            The MFT performs hardware-based data processing, using either the AVStream driver or a GPU-based proxy MFT. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_ENUM_FLAG.MFT_ENUM_FLAG_FIELDOFUSE">
            <summary>
            The MFT that must be unlocked by the application before use.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_ENUM_FLAG.MFT_ENUM_FLAG_LOCALMFT">
            <summary>
            For enumeration, include MFTs that were registered in the caller's process.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_ENUM_FLAG.MFT_ENUM_FLAG_TRANSCODE_ONLY">
            <summary>
            The MFT is optimized for transcoding rather than playback.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_ENUM_FLAG.MFT_ENUM_FLAG_SORTANDFILTER">
            <summary>
            For enumeration, sort and filter the results.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_ENUM_FLAG.MFT_ENUM_FLAG_ALL">
            <summary>
            Bitwise OR of all the flags, excluding MFT_ENUM_FLAG_SORTANDFILTER.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation._MFT_INPUT_STATUS_FLAGS">
            <summary>
            Indicates the status of an input stream on a Media Foundation transform (MFT).
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_INPUT_STATUS_FLAGS.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_INPUT_STATUS_FLAGS.MFT_INPUT_STATUS_ACCEPT_DATA">
            <summary>
            The input stream can receive more data at this time.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation._MFT_INPUT_STREAM_INFO_FLAGS">
            <summary>
            Describes an input stream on a Media Foundation transform (MFT).
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_INPUT_STREAM_INFO_FLAGS.None">
            <summary>
            No flags set
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_INPUT_STREAM_INFO_FLAGS.MFT_INPUT_STREAM_WHOLE_SAMPLES">
            <summary>
            Each media sample (IMFSample interface) of input data must contain complete, unbroken units of data. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_INPUT_STREAM_INFO_FLAGS.MFT_INPUT_STREAM_SINGLE_SAMPLE_PER_BUFFER">
            <summary>
            Each media sample that the client provides as input must contain exactly one unit of data, as defined for the MFT_INPUT_STREAM_WHOLE_SAMPLES flag.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_INPUT_STREAM_INFO_FLAGS.MFT_INPUT_STREAM_FIXED_SAMPLE_SIZE">
            <summary>
            All input samples must be the same size.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_INPUT_STREAM_INFO_FLAGS.MFT_INPUT_STREAM_HOLDS_BUFFERS">
            <summary>
            MTF Input Stream Holds buffers
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_INPUT_STREAM_INFO_FLAGS.MFT_INPUT_STREAM_DOES_NOT_ADDREF">
            <summary>
            The MFT does not hold input samples after the IMFTransform::ProcessInput method returns.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_INPUT_STREAM_INFO_FLAGS.MFT_INPUT_STREAM_REMOVABLE">
            <summary>
            This input stream can be removed by calling IMFTransform::DeleteInputStream.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_INPUT_STREAM_INFO_FLAGS.MFT_INPUT_STREAM_OPTIONAL">
            <summary>
            This input stream is optional. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_INPUT_STREAM_INFO_FLAGS.MFT_INPUT_STREAM_PROCESSES_IN_PLACE">
            <summary>
            The MFT can perform in-place processing.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation._MFT_OUTPUT_DATA_BUFFER_FLAGS">
            <summary>
            Defines flags for the IMFTransform::ProcessOutput method. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_OUTPUT_DATA_BUFFER_FLAGS.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_OUTPUT_DATA_BUFFER_FLAGS.MFT_OUTPUT_DATA_BUFFER_INCOMPLETE">
            <summary>
            The MFT can still generate output from this stream without receiving any more input. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_OUTPUT_DATA_BUFFER_FLAGS.MFT_OUTPUT_DATA_BUFFER_FORMAT_CHANGE">
            <summary>
            The format has changed on this output stream, or there is a new preferred format for this stream. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_OUTPUT_DATA_BUFFER_FLAGS.MFT_OUTPUT_DATA_BUFFER_STREAM_END">
            <summary>
            The MFT has removed this output stream. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_OUTPUT_DATA_BUFFER_FLAGS.MFT_OUTPUT_DATA_BUFFER_NO_SAMPLE">
            <summary>
            There is no sample ready for this stream.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation._MFT_OUTPUT_STATUS_FLAGS">
            <summary>
            Indicates whether a Media Foundation transform (MFT) can produce output data.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_OUTPUT_STATUS_FLAGS.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_OUTPUT_STATUS_FLAGS.MFT_OUTPUT_STATUS_SAMPLE_READY">
            <summary>
            There is a sample available for at least one output stream.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation._MFT_OUTPUT_STREAM_INFO_FLAGS">
            <summary>
            Describes an output stream on a Media Foundation transform (MFT).
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_OUTPUT_STREAM_INFO_FLAGS.None">
            <summary>
            No flags set
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_OUTPUT_STREAM_INFO_FLAGS.MFT_OUTPUT_STREAM_WHOLE_SAMPLES">
            <summary>
            Each media sample (IMFSample interface) of output data from the MFT contains complete, unbroken units of data.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_OUTPUT_STREAM_INFO_FLAGS.MFT_OUTPUT_STREAM_SINGLE_SAMPLE_PER_BUFFER">
            <summary>
            Each output sample contains exactly one unit of data, as defined for the MFT_OUTPUT_STREAM_WHOLE_SAMPLES flag.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_OUTPUT_STREAM_INFO_FLAGS.MFT_OUTPUT_STREAM_FIXED_SAMPLE_SIZE">
            <summary>
            All output samples are the same size.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_OUTPUT_STREAM_INFO_FLAGS.MFT_OUTPUT_STREAM_DISCARDABLE">
            <summary>
            The MFT can discard the output data from this output stream, if requested by the client.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_OUTPUT_STREAM_INFO_FLAGS.MFT_OUTPUT_STREAM_OPTIONAL">
            <summary>
            This output stream is optional.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_OUTPUT_STREAM_INFO_FLAGS.MFT_OUTPUT_STREAM_PROVIDES_SAMPLES">
            <summary>
            The MFT provides the output samples for this stream, either by allocating them internally or by operating directly on the input samples.
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_OUTPUT_STREAM_INFO_FLAGS.MFT_OUTPUT_STREAM_CAN_PROVIDE_SAMPLES">
            <summary>
            The MFT can either provide output samples for this stream or it can use samples that the client allocates. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_OUTPUT_STREAM_INFO_FLAGS.MFT_OUTPUT_STREAM_LAZY_READ">
            <summary>
            The MFT does not require the client to process the output for this stream. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_OUTPUT_STREAM_INFO_FLAGS.MFT_OUTPUT_STREAM_REMOVABLE">
            <summary>
            The MFT might remove this output stream during streaming.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation._MFT_PROCESS_OUTPUT_FLAGS">
            <summary>
            Defines flags for processing output samples in a Media Foundation transform (MFT).
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_PROCESS_OUTPUT_FLAGS.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_PROCESS_OUTPUT_FLAGS.MFT_PROCESS_OUTPUT_DISCARD_WHEN_NO_BUFFER">
            <summary>
            Do not produce output for streams in which the pSample member of the MFT_OUTPUT_DATA_BUFFER structure is NULL. 
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_PROCESS_OUTPUT_FLAGS.MFT_PROCESS_OUTPUT_REGENERATE_LAST_OUTPUT">
            <summary>
            Regenerates the last output sample.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation._MFT_PROCESS_OUTPUT_STATUS">
            <summary>
            Process Output Status flags
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_PROCESS_OUTPUT_STATUS.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_PROCESS_OUTPUT_STATUS.MFT_PROCESS_OUTPUT_STATUS_NEW_STREAMS">
            <summary>
            The Media Foundation transform (MFT) has created one or more new output streams.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation._MFT_SET_TYPE_FLAGS">
            <summary>
            Defines flags for the setting or testing the media type on a Media Foundation transform (MFT).
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_SET_TYPE_FLAGS.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation._MFT_SET_TYPE_FLAGS.MFT_SET_TYPE_TEST_ONLY">
            <summary>
            Test the proposed media type, but do not set it.
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.MediaType">
            <summary>
            Media Type helper class, simplifying working with IMFMediaType
            (will probably change in the future, to inherit from an attributes class)
            Currently does not release the COM object, so you must do that yourself
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaType.#ctor(NAudio.MediaFoundation.IMFMediaType)">
            <summary>
            Wraps an existing IMFMediaType object
            </summary>
            <param name="mediaType">The IMFMediaType object</param>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaType.#ctor">
            <summary>
            Creates and wraps a new IMFMediaType object
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaType.#ctor(NAudio.Wave.WaveFormat)">
            <summary>
            Creates and wraps a new IMFMediaType object based on a WaveFormat
            </summary>
            <param name="waveFormat">WaveFormat</param>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaType.TryGetUInt32(System.Guid,System.Int32)">
            <summary>
            Tries to get a UINT32 value, returning a default value if it doesn't exist
            </summary>
            <param name="key">Attribute key</param>
            <param name="defaultValue">Default value</param>
            <returns>Value or default if key doesn't exist</returns>
        </member>
        <member name="P:NAudio.MediaFoundation.MediaType.SampleRate">
            <summary>
            The Sample Rate (valid for audio media types)
            </summary>
        </member>
        <member name="P:NAudio.MediaFoundation.MediaType.ChannelCount">
            <summary>
            The number of Channels (valid for audio media types)
            </summary>
        </member>
        <member name="P:NAudio.MediaFoundation.MediaType.BitsPerSample">
            <summary>
            The number of bits per sample (n.b. not always valid for compressed audio types)
            </summary>
        </member>
        <member name="P:NAudio.MediaFoundation.MediaType.AverageBytesPerSecond">
            <summary>
            The average bytes per second (valid for audio media types)
            </summary>
        </member>
        <member name="P:NAudio.MediaFoundation.MediaType.SubType">
            <summary>
            The Media Subtype. For audio, is a value from the AudioSubtypes class
            </summary>
        </member>
        <member name="P:NAudio.MediaFoundation.MediaType.MajorType">
            <summary>
            The Major type, e.g. audio or video (from the MediaTypes class)
            </summary>
        </member>
        <member name="P:NAudio.MediaFoundation.MediaType.MediaFoundationObject">
            <summary>
            Access to the actual IMFMediaType object
            Use to pass to MF APIs or Marshal.ReleaseComObject when you are finished with it
            </summary>
        </member>
        <member name="T:NAudio.MediaFoundation.MediaFoundationTransform">
            <summary>
            An abstract base class for simplifying working with Media Foundation Transforms
            You need to override the method that actually creates and configures the transform
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationTransform.sourceProvider">
            <summary>
            The Source Provider
            </summary>
        </member>
        <member name="F:NAudio.MediaFoundation.MediaFoundationTransform.outputWaveFormat">
            <summary>
            The Output WaveFormat
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationTransform.#ctor(NAudio.Wave.IWaveProvider,NAudio.Wave.WaveFormat)">
            <summary>
            Constructs a new MediaFoundationTransform wrapper
            Will read one second at a time
            </summary>
            <param name="sourceProvider">The source provider for input data to the transform</param>
            <param name="outputFormat">The desired output format</param>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationTransform.CreateTransform">
            <summary>
            To be implemented by overriding classes. Create the transform object, set up its input and output types,
            and configure any custom properties in here
            </summary>
            <returns>An object implementing IMFTrasform</returns>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationTransform.Dispose(System.Boolean)">
            <summary>
            Disposes this MediaFoundation transform
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationTransform.Dispose">
            <summary>
            Disposes this Media Foundation Transform
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationTransform.Finalize">
            <summary>
            Destructor
            </summary>
        </member>
        <member name="P:NAudio.MediaFoundation.MediaFoundationTransform.WaveFormat">
            <summary>
            The output WaveFormat of this Media Foundation Transform
            </summary>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationTransform.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads data out of the source, passing it through the transform
            </summary>
            <param name="buffer">Output buffer</param>
            <param name="offset">Offset within buffer to write to</param>
            <param name="count">Desired byte count</param>
            <returns>Number of bytes read</returns>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationTransform.ReadFromTransform">
            <summary>
            Attempts to read from the transform
            Some useful info here:
            http://msdn.microsoft.com/en-gb/library/windows/desktop/aa965264%28v=vs.85%29.aspx#process_data
            </summary>
            <returns></returns>
        </member>
        <member name="M:NAudio.MediaFoundation.MediaFoundationTransform.Reposition">
            <summary>
            Indicate that the source has been repositioned and completely drain out the transforms buffers
            </summary>
        </member>
        <member name="T:NAudio.Midi.RawMetaEvent">
            <summary>
            Represents a MIDI meta event with raw data
            </summary>
        </member>
        <member name="P:NAudio.Midi.RawMetaEvent.Data">
            <summary>
            Raw data contained in the meta event
            </summary>
        </member>
        <member name="M:NAudio.Midi.RawMetaEvent.#ctor(NAudio.Midi.MetaEventType,System.Int64,System.Byte[])">
            <summary>
             Creates a meta event with raw data
            </summary>
        </member>
        <member name="M:NAudio.Midi.RawMetaEvent.Clone">
            <summary>
            Creates a deep clone of this MIDI event.
            </summary>
        </member>
        <member name="M:NAudio.Midi.RawMetaEvent.ToString">
            <summary>
            Describes this meta event
            </summary>
        </member>
        <member name="M:NAudio.Midi.RawMetaEvent.Export(System.Int64@,System.IO.BinaryWriter)">
            <summary>
            <see cref="M:NAudio.Midi.MidiEvent.Export(System.Int64@,System.IO.BinaryWriter)"/>
            </summary>
        </member>
        <member name="T:NAudio.Midi.MidiInMessageEventArgs">
            <summary>
            MIDI In Message Information
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiInMessageEventArgs.#ctor(System.Int32,System.Int32)">
            <summary>
            Create a new MIDI In Message EventArgs
            </summary>
            <param name="message"></param>
            <param name="timestamp"></param>
        </member>
        <member name="P:NAudio.Midi.MidiInMessageEventArgs.RawMessage">
            <summary>
            The Raw message received from the MIDI In API
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiInMessageEventArgs.MidiEvent">
            <summary>
            The raw message interpreted as a MidiEvent
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiInMessageEventArgs.Timestamp">
            <summary>
            The timestamp in milliseconds for this message
            </summary>
        </member>
        <member name="T:NAudio.Midi.ChannelAfterTouchEvent">
            <summary>
            Represents a MIDI Channel AfterTouch Event.
            </summary>
        </member>
        <member name="M:NAudio.Midi.ChannelAfterTouchEvent.#ctor(System.IO.BinaryReader)">
            <summary>
            Creates a new ChannelAfterTouchEvent from raw MIDI data
            </summary>
            <param name="br">A binary reader</param>
        </member>
        <member name="M:NAudio.Midi.ChannelAfterTouchEvent.#ctor(System.Int64,System.Int32,System.Int32)">
            <summary>
            Creates a new Channel After-Touch Event
            </summary>
            <param name="absoluteTime">Absolute time</param>
            <param name="channel">Channel</param>
            <param name="afterTouchPressure">After-touch pressure</param>
        </member>
        <member name="M:NAudio.Midi.ChannelAfterTouchEvent.Export(System.Int64@,System.IO.BinaryWriter)">
            <summary>
            Calls base class export first, then exports the data 
            specific to this event
            <seealso cref="M:NAudio.Midi.MidiEvent.Export(System.Int64@,System.IO.BinaryWriter)">MidiEvent.Export</seealso>
            </summary>
        </member>
        <member name="P:NAudio.Midi.ChannelAfterTouchEvent.AfterTouchPressure">
            <summary>
            The aftertouch pressure value
            </summary>
        </member>
        <member name="T:NAudio.Midi.ControlChangeEvent">
            <summary>
            Represents a MIDI control change event
            </summary>
        </member>
        <member name="M:NAudio.Midi.ControlChangeEvent.#ctor(System.IO.BinaryReader)">
            <summary>
            Reads a control change event from a MIDI stream
            </summary>
            <param name="br">Binary reader on the MIDI stream</param>
        </member>
        <member name="M:NAudio.Midi.ControlChangeEvent.#ctor(System.Int64,System.Int32,NAudio.Midi.MidiController,System.Int32)">
            <summary>
            Creates a control change event
            </summary>
            <param name="absoluteTime">Time</param>
            <param name="channel">MIDI Channel Number</param>
            <param name="controller">The MIDI Controller</param>
            <param name="controllerValue">Controller value</param>
        </member>
        <member name="M:NAudio.Midi.ControlChangeEvent.ToString">
            <summary>
            Describes this control change event
            </summary>
            <returns>A string describing this event</returns>
        </member>
        <member name="M:NAudio.Midi.ControlChangeEvent.GetAsShortMessage">
            <summary>
            <see cref="M:NAudio.Midi.MidiEvent.GetAsShortMessage" />
            </summary>
        </member>
        <member name="M:NAudio.Midi.ControlChangeEvent.Export(System.Int64@,System.IO.BinaryWriter)">
            <summary>
            Calls base class export first, then exports the data 
            specific to this event
            <seealso cref="M:NAudio.Midi.MidiEvent.Export(System.Int64@,System.IO.BinaryWriter)">MidiEvent.Export</seealso>
            </summary>
        </member>
        <member name="P:NAudio.Midi.ControlChangeEvent.Controller">
            <summary>
            The controller number
            </summary>
        </member>
        <member name="P:NAudio.Midi.ControlChangeEvent.ControllerValue">
            <summary>
            The controller value
            </summary>
        </member>
        <member name="T:NAudio.Midi.KeySignatureEvent">
            <summary>
            Represents a MIDI key signature event event
            </summary>
        </member>
        <member name="M:NAudio.Midi.KeySignatureEvent.#ctor(System.IO.BinaryReader,System.Int32)">
            <summary>
            Reads a new track sequence number event from a MIDI stream
            </summary>
            <param name="br">The MIDI stream</param>
            <param name="length">the data length</param>
        </member>
        <member name="M:NAudio.Midi.KeySignatureEvent.#ctor(System.Int32,System.Int32,System.Int64)">
            <summary>
            Creates a new Key signature event with the specified data
            </summary>
        </member>
        <member name="M:NAudio.Midi.KeySignatureEvent.Clone">
            <summary>
            Creates a deep clone of this MIDI event.
            </summary>
        </member>
        <member name="P:NAudio.Midi.KeySignatureEvent.SharpsFlats">
            <summary>
            Number of sharps or flats
            </summary>
        </member>
        <member name="P:NAudio.Midi.KeySignatureEvent.MajorMinor">
            <summary>
            Major or Minor key
            </summary>
        </member>
        <member name="M:NAudio.Midi.KeySignatureEvent.ToString">
            <summary>
            Describes this event
            </summary>
            <returns>String describing the event</returns>
        </member>
        <member name="M:NAudio.Midi.KeySignatureEvent.Export(System.Int64@,System.IO.BinaryWriter)">
            <summary>
            Calls base class export first, then exports the data 
            specific to this event
            <seealso cref="M:NAudio.Midi.MidiEvent.Export(System.Int64@,System.IO.BinaryWriter)">MidiEvent.Export</seealso>
            </summary>
        </member>
        <member name="T:NAudio.Midi.MetaEvent">
            <summary>
            Represents a MIDI meta event
            </summary>
        </member>
        <member name="P:NAudio.Midi.MetaEvent.MetaEventType">
            <summary>
            Gets the type of this meta event
            </summary>
        </member>
        <member name="M:NAudio.Midi.MetaEvent.#ctor">
            <summary>
            Empty constructor
            </summary>
        </member>
        <member name="M:NAudio.Midi.MetaEvent.#ctor(NAudio.Midi.MetaEventType,System.Int32,System.Int64)">
            <summary>
            Custom constructor for use by derived types, who will manage the data themselves
            </summary>
            <param name="metaEventType">Meta event type</param>
            <param name="metaDataLength">Meta data length</param>
            <param name="absoluteTime">Absolute time</param>
        </member>
        <member name="M:NAudio.Midi.MetaEvent.Clone">
            <summary>
            Creates a deep clone of this MIDI event.
            </summary>
        </member>
        <member name="M:NAudio.Midi.MetaEvent.ReadMetaEvent(System.IO.BinaryReader)">
            <summary>
            Reads a meta-event from a stream
            </summary>
            <param name="br">A binary reader based on the stream of MIDI data</param>
            <returns>A new MetaEvent object</returns>
        </member>
        <member name="M:NAudio.Midi.MetaEvent.ToString">
            <summary>
            Describes this meta event
            </summary>
        </member>
        <member name="M:NAudio.Midi.MetaEvent.Export(System.Int64@,System.IO.BinaryWriter)">
            <summary>
            <see cref="M:NAudio.Midi.MidiEvent.Export(System.Int64@,System.IO.BinaryWriter)"/>
            </summary>
        </member>
        <member name="T:NAudio.Midi.MetaEventType">
            <summary>
            MIDI MetaEvent Type
            </summary>
        </member>
        <member name="F:NAudio.Midi.MetaEventType.TrackSequenceNumber">
            <summary>Track sequence number</summary>
        </member>
        <member name="F:NAudio.Midi.MetaEventType.TextEvent">
            <summary>Text event</summary>
        </member>
        <member name="F:NAudio.Midi.MetaEventType.Copyright">
            <summary>Copyright</summary>
        </member>
        <member name="F:NAudio.Midi.MetaEventType.SequenceTrackName">
            <summary>Sequence track name</summary>
        </member>
        <member name="F:NAudio.Midi.MetaEventType.TrackInstrumentName">
            <summary>Track instrument name</summary>
        </member>
        <member name="F:NAudio.Midi.MetaEventType.Lyric">
            <summary>Lyric</summary>
        </member>
        <member name="F:NAudio.Midi.MetaEventType.Marker">
            <summary>Marker</summary>
        </member>
        <member name="F:NAudio.Midi.MetaEventType.CuePoint">
            <summary>Cue point</summary>
        </member>
        <member name="F:NAudio.Midi.MetaEventType.ProgramName">
            <summary>Program (patch) name</summary>
        </member>
        <member name="F:NAudio.Midi.MetaEventType.DeviceName">
            <summary>Device (port) name</summary>
        </member>
        <member name="F:NAudio.Midi.MetaEventType.MidiChannel">
            <summary>MIDI Channel (not official?)</summary>
        </member>
        <member name="F:NAudio.Midi.MetaEventType.MidiPort">
            <summary>MIDI Port (not official?)</summary>
        </member>
        <member name="F:NAudio.Midi.MetaEventType.EndTrack">
            <summary>End track</summary>
        </member>
        <member name="F:NAudio.Midi.MetaEventType.SetTempo">
            <summary>Set tempo</summary>
        </member>
        <member name="F:NAudio.Midi.MetaEventType.SmpteOffset">
            <summary>SMPTE offset</summary>
        </member>
        <member name="F:NAudio.Midi.MetaEventType.TimeSignature">
            <summary>Time signature</summary>
        </member>
        <member name="F:NAudio.Midi.MetaEventType.KeySignature">
            <summary>Key signature</summary>
        </member>
        <member name="F:NAudio.Midi.MetaEventType.SequencerSpecific">
            <summary>Sequencer specific</summary>
        </member>
        <member name="T:NAudio.Midi.MidiCommandCode">
            <summary>
            MIDI command codes
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiCommandCode.NoteOff">
            <summary>Note Off</summary>
        </member>
        <member name="F:NAudio.Midi.MidiCommandCode.NoteOn">
            <summary>Note On</summary>
        </member>
        <member name="F:NAudio.Midi.MidiCommandCode.KeyAfterTouch">
            <summary>Key After-touch</summary>
        </member>
        <member name="F:NAudio.Midi.MidiCommandCode.ControlChange">
            <summary>Control change</summary>
        </member>
        <member name="F:NAudio.Midi.MidiCommandCode.PatchChange">
            <summary>Patch change</summary>
        </member>
        <member name="F:NAudio.Midi.MidiCommandCode.ChannelAfterTouch">
            <summary>Channel after-touch</summary>
        </member>
        <member name="F:NAudio.Midi.MidiCommandCode.PitchWheelChange">
            <summary>Pitch wheel change</summary>
        </member>
        <member name="F:NAudio.Midi.MidiCommandCode.Sysex">
            <summary>Sysex message</summary>
        </member>
        <member name="F:NAudio.Midi.MidiCommandCode.Eox">
            <summary>Eox (comes at end of a sysex message)</summary>
        </member>
        <member name="F:NAudio.Midi.MidiCommandCode.TimingClock">
            <summary>Timing clock (used when synchronization is required)</summary>
        </member>
        <member name="F:NAudio.Midi.MidiCommandCode.StartSequence">
            <summary>Start sequence</summary>
        </member>
        <member name="F:NAudio.Midi.MidiCommandCode.ContinueSequence">
            <summary>Continue sequence</summary>
        </member>
        <member name="F:NAudio.Midi.MidiCommandCode.StopSequence">
            <summary>Stop sequence</summary>
        </member>
        <member name="F:NAudio.Midi.MidiCommandCode.AutoSensing">
            <summary>Auto-Sensing</summary>
        </member>
        <member name="F:NAudio.Midi.MidiCommandCode.MetaEvent">
            <summary>Meta-event</summary>
        </member>
        <member name="T:NAudio.Midi.MidiController">
            <summary>
            MidiController enumeration
            http://www.midi.org/techspecs/midimessages.php#3
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiController.BankSelect">
            <summary>Bank Select (MSB)</summary>
        </member>
        <member name="F:NAudio.Midi.MidiController.Modulation">
            <summary>Modulation (MSB)</summary>
        </member>
        <member name="F:NAudio.Midi.MidiController.BreathController">
            <summary>Breath Controller</summary>
        </member>
        <member name="F:NAudio.Midi.MidiController.FootController">
            <summary>Foot controller (MSB)</summary>
        </member>
        <member name="F:NAudio.Midi.MidiController.MainVolume">
            <summary>Main volume</summary>
        </member>
        <member name="F:NAudio.Midi.MidiController.Pan">
            <summary>Pan</summary>
        </member>
        <member name="F:NAudio.Midi.MidiController.Expression">
            <summary>Expression</summary>
        </member>
        <member name="F:NAudio.Midi.MidiController.BankSelectLsb">
            <summary>Bank Select LSB</summary>
        </member>
        <member name="F:NAudio.Midi.MidiController.Sustain">
            <summary>Sustain</summary>
        </member>
        <member name="F:NAudio.Midi.MidiController.Portamento">
            <summary>Portamento On/Off</summary>
        </member>
        <member name="F:NAudio.Midi.MidiController.Sostenuto">
            <summary>Sostenuto On/Off</summary>
        </member>
        <member name="F:NAudio.Midi.MidiController.SoftPedal">
            <summary>Soft Pedal On/Off</summary>
        </member>
        <member name="F:NAudio.Midi.MidiController.LegatoFootswitch">
            <summary>Legato Footswitch</summary>
        </member>
        <member name="F:NAudio.Midi.MidiController.ResetAllControllers">
            <summary>Reset all controllers</summary>
        </member>
        <member name="F:NAudio.Midi.MidiController.AllNotesOff">
            <summary>All notes off</summary>
        </member>
        <member name="T:NAudio.Midi.MidiEvent">
            <summary>
            Represents an individual MIDI event
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiEvent.commandCode">
            <summary>The MIDI command code</summary>
        </member>
        <member name="M:NAudio.Midi.MidiEvent.FromRawMessage(System.Int32)">
            <summary>
            Creates a MidiEvent from a raw message received using
            the MME MIDI In APIs
            </summary>
            <param name="rawMessage">The short MIDI message</param>
            <returns>A new MIDI Event</returns>
        </member>
        <member name="M:NAudio.Midi.MidiEvent.ReadNextEvent(System.IO.BinaryReader,NAudio.Midi.MidiEvent)">
            <summary>
            Constructs a MidiEvent from a BinaryStream
            </summary>
            <param name="br">The binary stream of MIDI data</param>
            <param name="previous">The previous MIDI event (pass null for first event)</param>
            <returns>A new MidiEvent</returns>
        </member>
        <member name="M:NAudio.Midi.MidiEvent.GetAsShortMessage">
            <summary>
            Converts this MIDI event to a short message (32 bit integer) that
            can be sent by the Windows MIDI out short message APIs
            Cannot be implemented for all MIDI messages
            </summary>
            <returns>A short message</returns>
        </member>
        <member name="M:NAudio.Midi.MidiEvent.#ctor">
            <summary>
            Default constructor
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiEvent.#ctor(System.Int64,System.Int32,NAudio.Midi.MidiCommandCode)">
            <summary>
            Creates a MIDI event with specified parameters
            </summary>
            <param name="absoluteTime">Absolute time of this event</param>
            <param name="channel">MIDI channel number</param>
            <param name="commandCode">MIDI command code</param>
        </member>
        <member name="M:NAudio.Midi.MidiEvent.Clone">
            <summary>
            Creates a deep clone of this MIDI event.
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiEvent.Channel">
            <summary>
            The MIDI Channel Number for this event (1-16)
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiEvent.DeltaTime">
            <summary>
            The Delta time for this event
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiEvent.AbsoluteTime">
            <summary>
            The absolute time for this event
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiEvent.CommandCode">
            <summary>
            The command code for this event
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiEvent.IsNoteOff(NAudio.Midi.MidiEvent)">
            <summary>
            Whether this is a note off event
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiEvent.IsNoteOn(NAudio.Midi.MidiEvent)">
            <summary>
            Whether this is a note on event
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiEvent.IsEndTrack(NAudio.Midi.MidiEvent)">
            <summary>
            Determines if this is an end track event
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiEvent.ToString">
            <summary>
            Displays a summary of the MIDI event
            </summary>
            <returns>A string containing a brief description of this MIDI event</returns>
        </member>
        <member name="M:NAudio.Midi.MidiEvent.ReadVarInt(System.IO.BinaryReader)">
            <summary>
            Utility function that can read a variable length integer from a binary stream
            </summary>
            <param name="br">The binary stream</param>
            <returns>The integer read</returns>
        </member>
        <member name="M:NAudio.Midi.MidiEvent.WriteVarInt(System.IO.BinaryWriter,System.Int32)">
            <summary>
            Writes a variable length integer to a binary stream
            </summary>
            <param name="writer">Binary stream</param>
            <param name="value">The value to write</param>
        </member>
        <member name="M:NAudio.Midi.MidiEvent.Export(System.Int64@,System.IO.BinaryWriter)">
            <summary>
            Exports this MIDI event's data
            Overriden in derived classes, but they should call this version
            </summary>
            <param name="absoluteTime">Absolute time used to calculate delta. 
            Is updated ready for the next delta calculation</param>
            <param name="writer">Stream to write to</param>
        </member>
        <member name="T:NAudio.Midi.MidiEventCollection">
            <summary>
            A helper class to manage collection of MIDI events
            It has the ability to organise them in tracks
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiEventCollection.#ctor(System.Int32,System.Int32)">
            <summary>
            Creates a new Midi Event collection
            </summary>
            <param name="midiFileType">Initial file type</param>
            <param name="deltaTicksPerQuarterNote">Delta Ticks Per Quarter Note</param>
        </member>
        <member name="P:NAudio.Midi.MidiEventCollection.Tracks">
            <summary>
            The number of tracks
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiEventCollection.StartAbsoluteTime">
            <summary>
            The absolute time that should be considered as time zero
            Not directly used here, but useful for timeshifting applications
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiEventCollection.DeltaTicksPerQuarterNote">
            <summary>
            The number of ticks per quarter note
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiEventCollection.GetTrackEvents(System.Int32)">
            <summary>
            Gets events on a specified track
            </summary>
            <param name="trackNumber">Track number</param>
            <returns>The list of events</returns>
        </member>
        <member name="P:NAudio.Midi.MidiEventCollection.Item(System.Int32)">
            <summary>
            Gets events on a specific track
            </summary>
            <param name="trackNumber">Track number</param>
            <returns>The list of events</returns>
        </member>
        <member name="M:NAudio.Midi.MidiEventCollection.AddTrack">
            <summary>
            Adds a new track
            </summary>
            <returns>The new track event list</returns>
        </member>
        <member name="M:NAudio.Midi.MidiEventCollection.AddTrack(System.Collections.Generic.IList{NAudio.Midi.MidiEvent})">
            <summary>
            Adds a new track
            </summary>
            <param name="initialEvents">Initial events to add to the new track</param>
            <returns>The new track event list</returns>
        </member>
        <member name="M:NAudio.Midi.MidiEventCollection.RemoveTrack(System.Int32)">
            <summary>
            Removes a track
            </summary>
            <param name="track">Track number to remove</param>
        </member>
        <member name="M:NAudio.Midi.MidiEventCollection.Clear">
            <summary>
            Clears all events
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiEventCollection.MidiFileType">
            <summary>
            The MIDI file type
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiEventCollection.AddEvent(NAudio.Midi.MidiEvent,System.Int32)">
            <summary>
            Adds an event to the appropriate track depending on file type
            </summary>
            <param name="midiEvent">The event to be added</param>
            <param name="originalTrack">The original (or desired) track number</param>
            <remarks>When adding events in type 0 mode, the originalTrack parameter
            is ignored. If in type 1 mode, it will use the original track number to
            store the new events. If the original track was 0 and this is a channel based
            event, it will create new tracks if necessary and put it on the track corresponding
            to its channel number</remarks>
        </member>
        <member name="M:NAudio.Midi.MidiEventCollection.PrepareForExport">
            <summary>
            Sorts, removes empty tracks and adds end track markers
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiEventCollection.GetEnumerator">
            <summary>
            Gets an enumerator for the lists of track events
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiEventCollection.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Gets an enumerator for the lists of track events
            </summary>
        </member>
        <member name="T:NAudio.Midi.MidiEventComparer">
            <summary>
            Utility class for comparing MidiEvent objects
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiEventComparer.Compare(NAudio.Midi.MidiEvent,NAudio.Midi.MidiEvent)">
            <summary>
            Compares two MidiEvents
            Sorts by time, with EndTrack always sorted to the end
            </summary>
        </member>
        <member name="T:NAudio.Midi.MidiFile">
            <summary>
            Class able to read a MIDI file
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiFile.#ctor(System.String)">
            <summary>
            Opens a MIDI file for reading
            </summary>
            <param name="filename">Name of MIDI file</param>
        </member>
        <member name="P:NAudio.Midi.MidiFile.FileFormat">
            <summary>
            MIDI File format
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiFile.#ctor(System.String,System.Boolean)">
            <summary>
            Opens a MIDI file for reading
            </summary>
            <param name="filename">Name of MIDI file</param>
            <param name="strictChecking">If true will error on non-paired note events</param>
        </member>
        <member name="M:NAudio.Midi.MidiFile.#ctor(System.IO.Stream,System.Boolean)">
            <summary>
            Opens a MIDI file stream for reading
            </summary>
            <param name="inputStream">The input stream containing a MIDI file</param>
            <param name="strictChecking">If true will error on non-paired note events</param>
        </member>
        <member name="P:NAudio.Midi.MidiFile.Events">
            <summary>
            The collection of events in this MIDI file
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiFile.Tracks">
            <summary>
            Number of tracks in this MIDI file
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiFile.DeltaTicksPerQuarterNote">
            <summary>
            Delta Ticks Per Quarter Note
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiFile.ToString">
            <summary>
            Describes the MIDI file
            </summary>
            <returns>A string describing the MIDI file and its events</returns>
        </member>
        <member name="M:NAudio.Midi.MidiFile.Export(System.String,NAudio.Midi.MidiEventCollection)">
            <summary>
            Exports a MIDI file
            </summary>
            <param name="filename">Filename to export to</param>
            <param name="events">Events to export</param>
        </member>
        <member name="T:NAudio.Midi.MidiIn">
            <summary>
            Represents a MIDI in device
            </summary>
        </member>
        <member name="E:NAudio.Midi.MidiIn.MessageReceived">
            <summary>
            Called when a MIDI message is received
            </summary>
        </member>
        <member name="E:NAudio.Midi.MidiIn.ErrorReceived">
            <summary>
            An invalid MIDI message
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiIn.NumberOfDevices">
            <summary>
            Gets the number of MIDI input devices available in the system
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiIn.#ctor(System.Int32)">
            <summary>
            Opens a specified MIDI in device
            </summary>
            <param name="deviceNo">The device number</param>
        </member>
        <member name="M:NAudio.Midi.MidiIn.Close">
            <summary>
            Closes this MIDI in device
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiIn.Dispose">
            <summary>
            Closes this MIDI in device
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiIn.Start">
            <summary>
            Start the MIDI in device
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiIn.Stop">
            <summary>
            Stop the MIDI in device
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiIn.Reset">
            <summary>
            Reset the MIDI in device
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiIn.DeviceInfo(System.Int32)">
            <summary>
            Gets the MIDI in device info
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiIn.Dispose(System.Boolean)">
            <summary>
            Closes the MIDI out device
            </summary>
            <param name="disposing">True if called from Dispose</param>
        </member>
        <member name="M:NAudio.Midi.MidiIn.Finalize">
            <summary>
            Cleanup
            </summary>
        </member>
        <member name="T:NAudio.Midi.MidiInCapabilities">
            <summary>
            MIDI In Device Capabilities
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiInCapabilities.manufacturerId">
            <summary>
            wMid
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiInCapabilities.productId">
            <summary>
            wPid
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiInCapabilities.driverVersion">
            <summary>
            vDriverVersion
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiInCapabilities.productName">
            <summary>
            Product Name
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiInCapabilities.support">
            <summary>
            Support - Reserved
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiInCapabilities.Manufacturer">
            <summary>
            Gets the manufacturer of this device
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiInCapabilities.ProductId">
            <summary>
            Gets the product identifier (manufacturer specific)
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiInCapabilities.ProductName">
            <summary>
            Gets the product name
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiInterop.MidiInMessage.Open">
            <summary>
            MIM_OPEN
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiInterop.MidiInMessage.Close">
            <summary>
            MIM_CLOSE
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiInterop.MidiInMessage.Data">
            <summary>
            MIM_DATA
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiInterop.MidiInMessage.LongData">
            <summary>
            MIM_LONGDATA
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiInterop.MidiInMessage.Error">
            <summary>
            MIM_ERROR
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiInterop.MidiInMessage.LongError">
            <summary>
            MIM_LONGERROR
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiInterop.MidiInMessage.MoreData">
            <summary>
            MIM_MOREDATA
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiInterop.MidiOutMessage.Open">
            <summary>
            MOM_OPEN
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiInterop.MidiOutMessage.Close">
            <summary>
            MOM_CLOSE
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiInterop.MidiOutMessage.Done">
            <summary>
            MOM_DONE
            </summary>
        </member>
        <member name="T:NAudio.Midi.MidiMessage">
            <summary>
            Represents a MIDI message
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiMessage.#ctor(System.Int32,System.Int32,System.Int32)">
            <summary>
            Creates a new MIDI message
            </summary>
            <param name="status">Status</param>
            <param name="data1">Data parameter 1</param>
            <param name="data2">Data parameter 2</param>
        </member>
        <member name="M:NAudio.Midi.MidiMessage.#ctor(System.Int32)">
            <summary>
            Creates a new MIDI message from a raw message
            </summary>
            <param name="rawData">A packed MIDI message from an MMIO function</param>
        </member>
        <member name="M:NAudio.Midi.MidiMessage.StartNote(System.Int32,System.Int32,System.Int32)">
            <summary>
            Creates a Note On message
            </summary>
            <param name="note">Note number (0 to 127)</param>
            <param name="volume">Volume (0 to 127)</param>
            <param name="channel">MIDI channel (1 to 16)</param>
            <returns>A new MidiMessage object</returns>
        </member>
        <member name="M:NAudio.Midi.MidiMessage.StopNote(System.Int32,System.Int32,System.Int32)">
            <summary>
            Creates a Note Off message
            </summary>
            <param name="note">Note number</param>
            <param name="volume">Volume </param>
            <param name="channel">MIDI channel (1-16)</param>
            <returns>A new MidiMessage object</returns>
        </member>
        <member name="M:NAudio.Midi.MidiMessage.ChangePatch(System.Int32,System.Int32)">
            <summary>
            Creates a patch change message
            </summary>
            <param name="patch">The patch number</param>
            <param name="channel">The MIDI channel number (1-16)</param>
            <returns>A new MidiMessageObject</returns>
        </member>
        <member name="M:NAudio.Midi.MidiMessage.ChangeControl(System.Int32,System.Int32,System.Int32)">
            <summary>
            Creates a Control Change message
            </summary>
            <param name="controller">The controller number to change</param>
            <param name="value">The value to set the controller to</param>
            <param name="channel">The MIDI channel number (1-16)</param>
            <returns>A new MidiMessageObject</returns>
        </member>
        <member name="P:NAudio.Midi.MidiMessage.RawData">
            <summary>
            Returns the raw MIDI message data
            </summary>
        </member>
        <member name="T:NAudio.Midi.MidiOut">
            <summary>
            Represents a MIDI out device
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiOut.NumberOfDevices">
            <summary>
            Gets the number of MIDI devices available in the system
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiOut.DeviceInfo(System.Int32)">
            <summary>
            Gets the MIDI Out device info
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiOut.#ctor(System.Int32)">
            <summary>
            Opens a specified MIDI out device
            </summary>
            <param name="deviceNo">The device number</param>
        </member>
        <member name="M:NAudio.Midi.MidiOut.Close">
            <summary>
            Closes this MIDI out device
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiOut.Dispose">
            <summary>
            Closes this MIDI out device
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiOut.Volume">
            <summary>
            Gets or sets the volume for this MIDI out device
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiOut.Reset">
            <summary>
            Resets the MIDI out device
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiOut.SendDriverMessage(System.Int32,System.Int32,System.Int32)">
            <summary>
            Sends a MIDI out message
            </summary>
            <param name="message">Message</param>
            <param name="param1">Parameter 1</param>
            <param name="param2">Parameter 2</param>
        </member>
        <member name="M:NAudio.Midi.MidiOut.Send(System.Int32)">
            <summary>
            Sends a MIDI message to the MIDI out device
            </summary>
            <param name="message">The message to send</param>
        </member>
        <member name="M:NAudio.Midi.MidiOut.Dispose(System.Boolean)">
            <summary>
            Closes the MIDI out device
            </summary>
            <param name="disposing">True if called from Dispose</param>
        </member>
        <member name="M:NAudio.Midi.MidiOut.SendBuffer(System.Byte[])">
            <summary>
            Send a long message, for example sysex.
            </summary>
            <param name="byteBuffer">The bytes to send.</param>
        </member>
        <member name="M:NAudio.Midi.MidiOut.Finalize">
            <summary>
            Cleanup
            </summary>
        </member>
        <member name="T:NAudio.Midi.MidiOutCapabilities">
            <summary>
            class representing the capabilities of a MIDI out device
            MIDIOUTCAPS: http://msdn.microsoft.com/en-us/library/dd798467%28VS.85%29.aspx
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiOutCapabilities.MidiOutCapabilityFlags.Volume">
            <summary>
            MIDICAPS_VOLUME
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiOutCapabilities.MidiOutCapabilityFlags.LeftRightVolume">
            <summary>
            separate left-right volume control
            MIDICAPS_LRVOLUME
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiOutCapabilities.MidiOutCapabilityFlags.PatchCaching">
            <summary>
            MIDICAPS_CACHE
            </summary>
        </member>
        <member name="F:NAudio.Midi.MidiOutCapabilities.MidiOutCapabilityFlags.Stream">
            <summary>
            MIDICAPS_STREAM
            driver supports midiStreamOut directly
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiOutCapabilities.Manufacturer">
            <summary>
            Gets the manufacturer of this device
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiOutCapabilities.ProductId">
            <summary>
            Gets the product identifier (manufacturer specific)
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiOutCapabilities.ProductName">
            <summary>
            Gets the product name
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiOutCapabilities.Voices">
            <summary>
            Returns the number of supported voices
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiOutCapabilities.Notes">
            <summary>
            Gets the polyphony of the device
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiOutCapabilities.SupportsAllChannels">
            <summary>
            Returns true if the device supports all channels
            </summary>
        </member>
        <member name="M:NAudio.Midi.MidiOutCapabilities.SupportsChannel(System.Int32)">
            <summary>
            Queries whether a particular channel is supported
            </summary>
            <param name="channel">Channel number to test</param>
            <returns>True if the channel is supported</returns>
        </member>
        <member name="P:NAudio.Midi.MidiOutCapabilities.SupportsPatchCaching">
            <summary>
            Returns true if the device supports patch caching
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiOutCapabilities.SupportsSeparateLeftAndRightVolume">
            <summary>
            Returns true if the device supports separate left and right volume
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiOutCapabilities.SupportsMidiStreamOut">
            <summary>
            Returns true if the device supports MIDI stream out
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiOutCapabilities.SupportsVolumeControl">
            <summary>
            Returns true if the device supports volume control
            </summary>
        </member>
        <member name="P:NAudio.Midi.MidiOutCapabilities.Technology">
            <summary>
            Returns the type of technology used by this MIDI out device
            </summary>
        </member>
        <member name="T:NAudio.Midi.MidiOutTechnology">
            <summary>
            Represents the different types of technology used by a MIDI out device
            </summary>
            <remarks>from mmsystem.h</remarks>
        </member>
        <member name="F:NAudio.Midi.MidiOutTechnology.MidiPort">
            <summary>The device is a MIDI port</summary>
        </member>
        <member name="F:NAudio.Midi.MidiOutTechnology.Synth">
            <summary>The device is a MIDI synth</summary>
        </member>
        <member name="F:NAudio.Midi.MidiOutTechnology.SquareWaveSynth">
            <summary>The device is a square wave synth</summary>
        </member>
        <member name="F:NAudio.Midi.MidiOutTechnology.FMSynth">
            <summary>The device is an FM synth</summary>
        </member>
        <member name="F:NAudio.Midi.MidiOutTechnology.MidiMapper">
            <summary>The device is a MIDI mapper</summary>
        </member>
        <member name="F:NAudio.Midi.MidiOutTechnology.WaveTableSynth">
            <summary>The device is a WaveTable synth</summary>
        </member>
        <member name="F:NAudio.Midi.MidiOutTechnology.SoftwareSynth">
            <summary>The device is a software synth</summary>
        </member>
        <member name="T:NAudio.Midi.NoteEvent">
            <summary>
            Represents a note MIDI event
            </summary>
        </member>
        <member name="M:NAudio.Midi.NoteEvent.#ctor(System.IO.BinaryReader)">
            <summary>
            Reads a NoteEvent from a stream of MIDI data
            </summary>
            <param name="br">Binary Reader for the stream</param>
        </member>
        <member name="M:NAudio.Midi.NoteEvent.#ctor(System.Int64,System.Int32,NAudio.Midi.MidiCommandCode,System.Int32,System.Int32)">
            <summary>
            Creates a MIDI Note Event with specified parameters
            </summary>
            <param name="absoluteTime">Absolute time of this event</param>
            <param name="channel">MIDI channel number</param>
            <param name="commandCode">MIDI command code</param>
            <param name="noteNumber">MIDI Note Number</param>
            <param name="velocity">MIDI Note Velocity</param>
        </member>
        <member name="M:NAudio.Midi.NoteEvent.GetAsShortMessage">
            <summary>
            <see cref="M:NAudio.Midi.MidiEvent.GetAsShortMessage" />
            </summary>
        </member>
        <member name="P:NAudio.Midi.NoteEvent.NoteNumber">
            <summary>
            The MIDI note number
            </summary>
        </member>
        <member name="P:NAudio.Midi.NoteEvent.Velocity">
            <summary>
            The note velocity
            </summary>
        </member>
        <member name="P:NAudio.Midi.NoteEvent.NoteName">
            <summary>
            The note name
            </summary>
        </member>
        <member name="M:NAudio.Midi.NoteEvent.ToString">
            <summary>
            Describes the Note Event
            </summary>
            <returns>Note event as a string</returns>
        </member>
        <member name="M:NAudio.Midi.NoteEvent.Export(System.Int64@,System.IO.BinaryWriter)">
            <summary>
            <see cref="M:NAudio.Midi.MidiEvent.Export(System.Int64@,System.IO.BinaryWriter)"/>
            </summary>
        </member>
        <member name="T:NAudio.Midi.NoteOnEvent">
            <summary>
            Represents a MIDI note on event
            </summary>
        </member>
        <member name="M:NAudio.Midi.NoteOnEvent.#ctor(System.IO.BinaryReader)">
            <summary>
            Reads a new Note On event from a stream of MIDI data
            </summary>
            <param name="br">Binary reader on the MIDI data stream</param>
        </member>
        <member name="M:NAudio.Midi.NoteOnEvent.#ctor(System.Int64,System.Int32,System.Int32,System.Int32,System.Int32)">
            <summary>
            Creates a NoteOn event with specified parameters
            </summary>
            <param name="absoluteTime">Absolute time of this event</param>
            <param name="channel">MIDI channel number</param>
            <param name="noteNumber">MIDI note number</param>
            <param name="velocity">MIDI note velocity</param>
            <param name="duration">MIDI note duration</param>
        </member>
        <member name="M:NAudio.Midi.NoteOnEvent.Clone">
            <summary>
            Creates a deep clone of this MIDI event.
            </summary>
        </member>
        <member name="P:NAudio.Midi.NoteOnEvent.OffEvent">
            <summary>
            The associated Note off event
            </summary>
        </member>
        <member name="P:NAudio.Midi.NoteOnEvent.NoteNumber">
            <summary>
            Get or set the Note Number, updating the off event at the same time
            </summary>
        </member>
        <member name="P:NAudio.Midi.NoteOnEvent.Channel">
            <summary>
            Get or set the channel, updating the off event at the same time
            </summary>
        </member>
        <member name="P:NAudio.Midi.NoteOnEvent.NoteLength">
            <summary>
            The duration of this note
            </summary>
            <remarks>
            There must be a note off event
            </remarks>
        </member>
        <member name="M:NAudio.Midi.NoteOnEvent.ToString">
            <summary>
            Calls base class export first, then exports the data 
            specific to this event
            <seealso cref="M:NAudio.Midi.MidiEvent.Export(System.Int64@,System.IO.BinaryWriter)">MidiEvent.Export</seealso>
            </summary>
        </member>
        <member name="T:NAudio.Midi.PatchChangeEvent">
            <summary>
            Represents a MIDI patch change event
            </summary>
        </member>
        <member name="M:NAudio.Midi.PatchChangeEvent.GetPatchName(System.Int32)">
            <summary>
            Gets the default MIDI instrument names
            </summary>
        </member>
        <member name="M:NAudio.Midi.PatchChangeEvent.#ctor(System.IO.BinaryReader)">
            <summary>
            Reads a new patch change event from a MIDI stream
            </summary>
            <param name="br">Binary reader for the MIDI stream</param>
        </member>
        <member name="M:NAudio.Midi.PatchChangeEvent.#ctor(System.Int64,System.Int32,System.Int32)">
            <summary>
            Creates a new patch change event
            </summary>
            <param name="absoluteTime">Time of the event</param>
            <param name="channel">Channel number</param>
            <param name="patchNumber">Patch number</param>
        </member>
        <member name="P:NAudio.Midi.PatchChangeEvent.Patch">
            <summary>
            The Patch Number
            </summary>
        </member>
        <member name="M:NAudio.Midi.PatchChangeEvent.ToString">
            <summary>
            Describes this patch change event
            </summary>
            <returns>String describing the patch change event</returns>
        </member>
        <member name="M:NAudio.Midi.PatchChangeEvent.GetAsShortMessage">
            <summary>
            Gets as a short message for sending with the midiOutShortMsg API
            </summary>
            <returns>short message</returns>
        </member>
        <member name="M:NAudio.Midi.PatchChangeEvent.Export(System.Int64@,System.IO.BinaryWriter)">
            <summary>
            Calls base class export first, then exports the data 
            specific to this event
            <seealso cref="M:NAudio.Midi.MidiEvent.Export(System.Int64@,System.IO.BinaryWriter)">MidiEvent.Export</seealso>
            </summary>
        </member>
        <member name="T:NAudio.Midi.PitchWheelChangeEvent">
            <summary>
            Represents a MIDI pitch wheel change event
            </summary>
        </member>
        <member name="M:NAudio.Midi.PitchWheelChangeEvent.#ctor(System.IO.BinaryReader)">
            <summary>
            Reads a pitch wheel change event from a MIDI stream
            </summary>
            <param name="br">The MIDI stream to read from</param>
        </member>
        <member name="M:NAudio.Midi.PitchWheelChangeEvent.#ctor(System.Int64,System.Int32,System.Int32)">
            <summary>
            Creates a new pitch wheel change event
            </summary>
            <param name="absoluteTime">Absolute event time</param>
            <param name="channel">Channel</param>
            <param name="pitchWheel">Pitch wheel value</param>
        </member>
        <member name="M:NAudio.Midi.PitchWheelChangeEvent.ToString">
            <summary>
            Describes this pitch wheel change event
            </summary>
            <returns>String describing this pitch wheel change event</returns>
        </member>
        <member name="P:NAudio.Midi.PitchWheelChangeEvent.Pitch">
            <summary>
            Pitch Wheel Value 0 is minimum, 0x2000 (8192) is default, 0x3FFF (16383) is maximum
            </summary>
        </member>
        <member name="M:NAudio.Midi.PitchWheelChangeEvent.GetAsShortMessage">
            <summary>
            Gets a short message
            </summary>
            <returns>Integer to sent as short message</returns>
        </member>
        <member name="M:NAudio.Midi.PitchWheelChangeEvent.Export(System.Int64@,System.IO.BinaryWriter)">
            <summary>
            Calls base class export first, then exports the data 
            specific to this event
            <seealso cref="M:NAudio.Midi.MidiEvent.Export(System.Int64@,System.IO.BinaryWriter)">MidiEvent.Export</seealso>
            </summary>
        </member>
        <member name="T:NAudio.Midi.SequencerSpecificEvent">
            <summary>
            Represents a Sequencer Specific event
            </summary>
        </member>
        <member name="M:NAudio.Midi.SequencerSpecificEvent.#ctor(System.IO.BinaryReader,System.Int32)">
            <summary>
            Reads a new sequencer specific event from a MIDI stream
            </summary>
            <param name="br">The MIDI stream</param>
            <param name="length">The data length</param>
        </member>
        <member name="M:NAudio.Midi.SequencerSpecificEvent.#ctor(System.Byte[],System.Int64)">
            <summary>
            Creates a new Sequencer Specific event
            </summary>
            <param name="data">The sequencer specific data</param>
            <param name="absoluteTime">Absolute time of this event</param>
        </member>
        <member name="M:NAudio.Midi.SequencerSpecificEvent.Clone">
            <summary>
            Creates a deep clone of this MIDI event.
            </summary>
        </member>
        <member name="P:NAudio.Midi.SequencerSpecificEvent.Data">
            <summary>
            The contents of this sequencer specific
            </summary>
        </member>
        <member name="M:NAudio.Midi.SequencerSpecificEvent.ToString">
            <summary>
            Describes this MIDI text event
            </summary>
            <returns>A string describing this event</returns>
        </member>
        <member name="M:NAudio.Midi.SequencerSpecificEvent.Export(System.Int64@,System.IO.BinaryWriter)">
            <summary>
            Calls base class export first, then exports the data 
            specific to this event
            <seealso cref="M:NAudio.Midi.MidiEvent.Export(System.Int64@,System.IO.BinaryWriter)">MidiEvent.Export</seealso>
            </summary>
        </member>
        <member name="M:NAudio.Midi.SmpteOffsetEvent.#ctor(System.Byte,System.Byte,System.Byte,System.Byte,System.Byte)">
            <summary>
            Creates a new time signature event
            </summary>
        </member>
        <member name="M:NAudio.Midi.SmpteOffsetEvent.#ctor(System.IO.BinaryReader,System.Int32)">
            <summary>
            Reads a new time signature event from a MIDI stream
            </summary>
            <param name="br">The MIDI stream</param>
            <param name="length">The data length</param>
        </member>
        <member name="M:NAudio.Midi.SmpteOffsetEvent.Clone">
            <summary>
            Creates a deep clone of this MIDI event.
            </summary>
        </member>
        <member name="P:NAudio.Midi.SmpteOffsetEvent.Hours">
            <summary>
            Hours
            </summary>
        </member>
        <member name="P:NAudio.Midi.SmpteOffsetEvent.Minutes">
            <summary>
            Minutes
            </summary>
        </member>
        <member name="P:NAudio.Midi.SmpteOffsetEvent.Seconds">
            <summary>
            Seconds
            </summary>
        </member>
        <member name="P:NAudio.Midi.SmpteOffsetEvent.Frames">
            <summary>
            Frames
            </summary>
        </member>
        <member name="P:NAudio.Midi.SmpteOffsetEvent.SubFrames">
            <summary>
            SubFrames
            </summary>
        </member>
        <member name="M:NAudio.Midi.SmpteOffsetEvent.ToString">
            <summary>
            Describes this time signature event
            </summary>
            <returns>A string describing this event</returns>
        </member>
        <member name="M:NAudio.Midi.SmpteOffsetEvent.Export(System.Int64@,System.IO.BinaryWriter)">
            <summary>
            Calls base class export first, then exports the data 
            specific to this event
            <seealso cref="M:NAudio.Midi.MidiEvent.Export(System.Int64@,System.IO.BinaryWriter)">MidiEvent.Export</seealso>
            </summary>
        </member>
        <member name="T:NAudio.Midi.SysexEvent">
            <summary>
            Represents a MIDI sysex message
            </summary>
        </member>
        <member name="M:NAudio.Midi.SysexEvent.ReadSysexEvent(System.IO.BinaryReader)">
            <summary>
            Reads a sysex message from a MIDI stream
            </summary>
            <param name="br">Stream of MIDI data</param>
            <returns>a new sysex message</returns>
        </member>
        <member name="M:NAudio.Midi.SysexEvent.Clone">
            <summary>
            Creates a deep clone of this MIDI event.
            </summary>
        </member>
        <member name="M:NAudio.Midi.SysexEvent.ToString">
            <summary>
            Describes this sysex message
            </summary>
            <returns>A string describing the sysex message</returns>
        </member>
        <member name="M:NAudio.Midi.SysexEvent.Export(System.Int64@,System.IO.BinaryWriter)">
            <summary>
            Calls base class export first, then exports the data 
            specific to this event
            <seealso cref="M:NAudio.Midi.MidiEvent.Export(System.Int64@,System.IO.BinaryWriter)">MidiEvent.Export</seealso>
            </summary>
        </member>
        <member name="T:NAudio.Midi.TempoEvent">
            <summary>
            Represents a MIDI tempo event
            </summary>
        </member>
        <member name="M:NAudio.Midi.TempoEvent.#ctor(System.IO.BinaryReader,System.Int32)">
            <summary>
            Reads a new tempo event from a MIDI stream
            </summary>
            <param name="br">The MIDI stream</param>
            <param name="length">the data length</param>
        </member>
        <member name="M:NAudio.Midi.TempoEvent.#ctor(System.Int32,System.Int64)">
            <summary>
            Creates a new tempo event with specified settings
            </summary>
            <param name="microsecondsPerQuarterNote">Microseconds per quarter note</param>
            <param name="absoluteTime">Absolute time</param>
        </member>
        <member name="M:NAudio.Midi.TempoEvent.Clone">
            <summary>
            Creates a deep clone of this MIDI event.
            </summary>
        </member>
        <member name="M:NAudio.Midi.TempoEvent.ToString">
            <summary>
            Describes this tempo event
            </summary>
            <returns>String describing the tempo event</returns>
        </member>
        <member name="P:NAudio.Midi.TempoEvent.MicrosecondsPerQuarterNote">
            <summary>
            Microseconds per quarter note
            </summary>
        </member>
        <member name="P:NAudio.Midi.TempoEvent.Tempo">
            <summary>
            Tempo
            </summary>
        </member>
        <member name="M:NAudio.Midi.TempoEvent.Export(System.Int64@,System.IO.BinaryWriter)">
            <summary>
            Calls base class export first, then exports the data 
            specific to this event
            <seealso cref="M:NAudio.Midi.MidiEvent.Export(System.Int64@,System.IO.BinaryWriter)">MidiEvent.Export</seealso>
            </summary>
        </member>
        <member name="T:NAudio.Midi.TextEvent">
            <summary>
            Represents a MIDI text event
            </summary>
        </member>
        <member name="M:NAudio.Midi.TextEvent.#ctor(System.IO.BinaryReader,System.Int32)">
            <summary>
            Reads a new text event from a MIDI stream
            </summary>
            <param name="br">The MIDI stream</param>
            <param name="length">The data length</param>
        </member>
        <member name="M:NAudio.Midi.TextEvent.#ctor(System.String,NAudio.Midi.MetaEventType,System.Int64)">
            <summary>
            Creates a new TextEvent
            </summary>
            <param name="text">The text in this type</param>
            <param name="metaEventType">MetaEvent type (must be one that is
            associated with text data)</param>
            <param name="absoluteTime">Absolute time of this event</param>
        </member>
        <member name="M:NAudio.Midi.TextEvent.Clone">
            <summary>
            Creates a deep clone of this MIDI event.
            </summary>
        </member>
        <member name="P:NAudio.Midi.TextEvent.Text">
            <summary>
            The contents of this text event
            </summary>
        </member>
        <member name="M:NAudio.Midi.TextEvent.ToString">
            <summary>
            Describes this MIDI text event
            </summary>
            <returns>A string describing this event</returns>
        </member>
        <member name="M:NAudio.Midi.TextEvent.Export(System.Int64@,System.IO.BinaryWriter)">
            <summary>
            Calls base class export first, then exports the data 
            specific to this event
            <seealso cref="M:NAudio.Midi.MidiEvent.Export(System.Int64@,System.IO.BinaryWriter)">MidiEvent.Export</seealso>
            </summary>
        </member>
        <member name="T:NAudio.Midi.TimeSignatureEvent">
            <summary>
            Represents a MIDI time signature event
            </summary>
        </member>
        <member name="M:NAudio.Midi.TimeSignatureEvent.#ctor(System.IO.BinaryReader,System.Int32)">
            <summary>
            Reads a new time signature event from a MIDI stream
            </summary>
            <param name="br">The MIDI stream</param>
            <param name="length">The data length</param>
        </member>
        <member name="M:NAudio.Midi.TimeSignatureEvent.#ctor(System.Int64,System.Int32,System.Int32,System.Int32,System.Int32)">
            <summary>
            Creates a new TimeSignatureEvent
            </summary>
            <param name="absoluteTime">Time at which to create this event</param>
            <param name="numerator">Numerator</param>
            <param name="denominator">Denominator</param>
            <param name="ticksInMetronomeClick">Ticks in Metronome Click</param>
            <param name="no32ndNotesInQuarterNote">No of 32nd Notes in Quarter Click</param>
        </member>
        <member name="M:NAudio.Midi.TimeSignatureEvent.Clone">
            <summary>
            Creates a deep clone of this MIDI event.
            </summary>
        </member>
        <member name="P:NAudio.Midi.TimeSignatureEvent.Numerator">
            <summary>
            Numerator (number of beats in a bar)
            </summary>
        </member>
        <member name="P:NAudio.Midi.TimeSignatureEvent.Denominator">
            <summary>
            Denominator (Beat unit),
            1 means 2, 2 means 4 (crochet), 3 means 8 (quaver), 4 means 16 and 5 means 32
            </summary>
        </member>
        <member name="P:NAudio.Midi.TimeSignatureEvent.TicksInMetronomeClick">
            <summary>
            Ticks in a metronome click
            </summary>
        </member>
        <member name="P:NAudio.Midi.TimeSignatureEvent.No32ndNotesInQuarterNote">
            <summary>
            Number of 32nd notes in a quarter note
            </summary>
        </member>
        <member name="P:NAudio.Midi.TimeSignatureEvent.TimeSignature">
            <summary>
            The time signature
            </summary>
        </member>
        <member name="M:NAudio.Midi.TimeSignatureEvent.ToString">
            <summary>
            Describes this time signature event
            </summary>
            <returns>A string describing this event</returns>
        </member>
        <member name="M:NAudio.Midi.TimeSignatureEvent.Export(System.Int64@,System.IO.BinaryWriter)">
            <summary>
            Calls base class export first, then exports the data 
            specific to this event
            <seealso cref="M:NAudio.Midi.MidiEvent.Export(System.Int64@,System.IO.BinaryWriter)">MidiEvent.Export</seealso>
            </summary>
        </member>
        <member name="T:NAudio.Midi.TrackSequenceNumberEvent">
            <summary>
            Represents a MIDI track sequence number event event
            </summary>
        </member>
        <member name="M:NAudio.Midi.TrackSequenceNumberEvent.#ctor(System.UInt16)">
            <summary>
            Creates a new track sequence number event
            </summary>
        </member>
        <member name="M:NAudio.Midi.TrackSequenceNumberEvent.#ctor(System.IO.BinaryReader,System.Int32)">
            <summary>
            Reads a new track sequence number event from a MIDI stream
            </summary>
            <param name="br">The MIDI stream</param>
            <param name="length">the data length</param>
        </member>
        <member name="M:NAudio.Midi.TrackSequenceNumberEvent.Clone">
            <summary>
            Creates a deep clone of this MIDI event.
            </summary>
        </member>
        <member name="M:NAudio.Midi.TrackSequenceNumberEvent.ToString">
            <summary>
            Describes this event
            </summary>
            <returns>String describing the event</returns>
        </member>
        <member name="M:NAudio.Midi.TrackSequenceNumberEvent.Export(System.Int64@,System.IO.BinaryWriter)">
            <summary>
            Calls base class export first, then exports the data 
            specific to this event
            <seealso cref="M:NAudio.Midi.MidiEvent.Export(System.Int64@,System.IO.BinaryWriter)">MidiEvent.Export</seealso>
            </summary>
        </member>
        <member name="T:NAudio.Utils.ChunkIdentifier">
            <summary>
            Chunk Identifier helpers
            </summary>
        </member>
        <member name="M:NAudio.Utils.ChunkIdentifier.ChunkIdentifierToInt32(System.String)">
            <summary>
            Chunk identifier to Int32 (replaces mmioStringToFOURCC)
            </summary>
            <param name="s">four character chunk identifier</param>
            <returns>Chunk identifier as int 32</returns>
        </member>
        <member name="T:NAudio.Utils.FieldDescriptionAttribute">
            <summary>
            Allows us to add descriptions to interop members
            </summary>
        </member>
        <member name="P:NAudio.Utils.FieldDescriptionAttribute.Description">
            <summary>
            The description
            </summary>
        </member>
        <member name="M:NAudio.Utils.FieldDescriptionAttribute.#ctor(System.String)">
            <summary>
            Field description
            </summary>
        </member>
        <member name="M:NAudio.Utils.FieldDescriptionAttribute.ToString">
            <summary>
            String representation
            </summary>
            <returns></returns>
        </member>
        <member name="T:NAudio.Utils.ByteArrayExtensions">
            <summary>
            these will become extension methods once we move to .NET 3.5
            </summary>
        </member>
        <member name="M:NAudio.Utils.ByteArrayExtensions.IsEntirelyNull(System.Byte[])">
            <summary>
            Checks if the buffer passed in is entirely full of nulls
            </summary>
        </member>
        <member name="M:NAudio.Utils.ByteArrayExtensions.DescribeAsHex(System.Byte[],System.String,System.Int32)">
            <summary>
            Converts to a string containing the buffer described in hex
            </summary>
        </member>
        <member name="M:NAudio.Utils.ByteArrayExtensions.DecodeAsString(System.Byte[],System.Int32,System.Int32,System.Text.Encoding)">
            <summary>
            Decodes the buffer using the specified encoding, stopping at the first null
            </summary>
        </member>
        <member name="M:NAudio.Utils.ByteArrayExtensions.Concat(System.Byte[][])">
            <summary>
            Concatenates the given arrays into a single array.
            </summary>
            <param name="byteArrays">The arrays to concatenate</param>
            <returns>The concatenated resulting array.</returns>
        </member>
        <member name="T:NAudio.Utils.FieldDescriptionHelper">
            <summary>
            Helper to get descriptions
            </summary>
        </member>
        <member name="M:NAudio.Utils.FieldDescriptionHelper.Describe(System.Type,System.Guid)">
            <summary>
            Describes the Guid  by looking for a FieldDescription attribute on the specified class
            </summary>
        </member>
        <member name="T:NAudio.Utils.MarshalHelpers">
            <summary>
            Support for Marshal Methods in both UWP and .NET 3.5
            </summary>
        </member>
        <member name="M:NAudio.Utils.MarshalHelpers.SizeOf``1">
            <summary>
            SizeOf a structure
            </summary>
        </member>
        <member name="M:NAudio.Utils.MarshalHelpers.OffsetOf``1(System.String)">
            <summary>
            Offset of a field in a structure
            </summary>
        </member>
        <member name="M:NAudio.Utils.MarshalHelpers.PtrToStructure``1(System.IntPtr)">
            <summary>
            Pointer to Structure
            </summary>
        </member>
        <member name="T:NAudio.Utils.WavePositionExtensions">
            <summary>
            WavePosition extension methods
            </summary>
        </member>
        <member name="M:NAudio.Utils.WavePositionExtensions.GetPositionTimeSpan(NAudio.Wave.IWavePosition)">
            <summary>
            Get Position as timespan
            </summary>
        </member>
        <member name="T:NAudio.Utils.IEEE">
            <summary>
            Methods for converting between IEEE 80-bit extended double precision
            and standard C# double precision.
            </summary>
        </member>
        <member name="M:NAudio.Utils.IEEE.ConvertToIeeeExtended(System.Double)">
            <summary>
            Converts a C# double precision number to an 80-bit
            IEEE extended double precision number (occupying 10 bytes).
            </summary>
            <param name="num">The double precision number to convert to IEEE extended.</param>
            <returns>An array of 10 bytes containing the IEEE extended number.</returns>
        </member>
        <member name="M:NAudio.Utils.IEEE.ConvertFromIeeeExtended(System.Byte[])">
            <summary>
            Converts an IEEE 80-bit extended precision number to a
            C# double precision number.
            </summary>
            <param name="bytes">The 80-bit IEEE extended number (as an array of 10 bytes).</param>
            <returns>A C# double precision number that is a close representation of the IEEE extended number.</returns>
        </member>
        <member name="T:NAudio.Utils.NativeMethods">
            <summary>
            General purpose native methods for internal NAudio use
            </summary>
        </member>
        <member name="T:NAudio.Utils.BufferHelpers">
            <summary>
            Helper methods for working with audio buffers
            </summary>
        </member>
        <member name="M:NAudio.Utils.BufferHelpers.Ensure(System.Byte[],System.Int32)">
            <summary>
            Ensures the buffer is big enough
            </summary>
            <param name="buffer"></param>
            <param name="bytesRequired"></param>
            <returns></returns>
        </member>
        <member name="M:NAudio.Utils.BufferHelpers.Ensure(System.Single[],System.Int32)">
            <summary>
            Ensures the buffer is big enough
            </summary>
            <param name="buffer"></param>
            <param name="samplesRequired"></param>
            <returns></returns>
        </member>
        <member name="T:NAudio.Utils.ByteEncoding">
            <summary>
            An encoding for use with file types that have one byte per character
            </summary>
        </member>
        <member name="F:NAudio.Utils.ByteEncoding.Instance">
            <summary>
            The one and only instance of this class
            </summary>
        </member>
        <member name="M:NAudio.Utils.ByteEncoding.GetByteCount(System.Char[],System.Int32,System.Int32)">
            <summary>
            <see cref="M:System.Text.Encoding.GetByteCount(System.Char[],System.Int32,System.Int32)"/>
            </summary>
        </member>
        <member name="M:NAudio.Utils.ByteEncoding.GetBytes(System.Char[],System.Int32,System.Int32,System.Byte[],System.Int32)">
            <summary>
            <see cref="M:System.Text.Encoding.GetBytes(System.Char[],System.Int32,System.Int32,System.Byte[],System.Int32)"/>
            </summary>
        </member>
        <member name="M:NAudio.Utils.ByteEncoding.GetCharCount(System.Byte[],System.Int32,System.Int32)">
            <summary>
            <see cref="M:System.Text.Encoding.GetCharCount(System.Byte[],System.Int32,System.Int32)"/>
            </summary>
        </member>
        <member name="M:NAudio.Utils.ByteEncoding.GetChars(System.Byte[],System.Int32,System.Int32,System.Char[],System.Int32)">
            <summary>
            <see cref="M:System.Text.Encoding.GetChars(System.Byte[],System.Int32,System.Int32,System.Char[],System.Int32)"/>
            </summary>
        </member>
        <member name="M:NAudio.Utils.ByteEncoding.GetMaxCharCount(System.Int32)">
            <summary>
            <see cref="M:System.Text.Encoding.GetMaxCharCount(System.Int32)"/>
            </summary>
        </member>
        <member name="M:NAudio.Utils.ByteEncoding.GetMaxByteCount(System.Int32)">
            <summary>
            <see cref="M:System.Text.Encoding.GetMaxByteCount(System.Int32)"/>
            </summary>
        </member>
        <member name="T:NAudio.Utils.CircularBuffer">
            <summary>
            A very basic circular buffer implementation
            </summary>
        </member>
        <member name="M:NAudio.Utils.CircularBuffer.#ctor(System.Int32)">
            <summary>
            Create a new circular buffer
            </summary>
            <param name="size">Max buffer size in bytes</param>
        </member>
        <member name="M:NAudio.Utils.CircularBuffer.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Write data to the buffer
            </summary>
            <param name="data">Data to write</param>
            <param name="offset">Offset into data</param>
            <param name="count">Number of bytes to write</param>
            <returns>number of bytes written</returns>
        </member>
        <member name="M:NAudio.Utils.CircularBuffer.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Read from the buffer
            </summary>
            <param name="data">Buffer to read into</param>
            <param name="offset">Offset into read buffer</param>
            <param name="count">Bytes to read</param>
            <returns>Number of bytes actually read</returns>
        </member>
        <member name="P:NAudio.Utils.CircularBuffer.MaxLength">
            <summary>
            Maximum length of this circular buffer
            </summary>
        </member>
        <member name="P:NAudio.Utils.CircularBuffer.Count">
            <summary>
            Number of bytes currently stored in the circular buffer
            </summary>
        </member>
        <member name="M:NAudio.Utils.CircularBuffer.Reset">
            <summary>
            Resets the buffer
            </summary>
        </member>
        <member name="M:NAudio.Utils.CircularBuffer.Advance(System.Int32)">
            <summary>
            Advances the buffer, discarding bytes
            </summary>
            <param name="count">Bytes to advance</param>
        </member>
        <member name="T:NAudio.Utils.Decibels">
            <summary>
            A util class for conversions
            </summary>
        </member>
        <member name="M:NAudio.Utils.Decibels.LinearToDecibels(System.Double)">
            <summary>
            linear to dB conversion
            </summary>
            <param name="lin">linear value</param>
            <returns>decibel value</returns>
        </member>
        <member name="M:NAudio.Utils.Decibels.DecibelsToLinear(System.Double)">
            <summary>
            dB to linear conversion
            </summary>
            <param name="dB">decibel value</param>
            <returns>linear value</returns>
        </member>
        <member name="T:NAudio.Utils.HResult">
            <summary>
            HResult
            </summary>
        </member>
        <member name="F:NAudio.Utils.HResult.S_OK">
            <summary>
            S_OK
            </summary>
        </member>
        <member name="F:NAudio.Utils.HResult.S_FALSE">
            <summary>
            S_FALSE
            </summary>
        </member>
        <member name="F:NAudio.Utils.HResult.E_INVALIDARG">
            <summary>
            E_INVALIDARG (from winerror.h)
            </summary>
        </member>
        <member name="M:NAudio.Utils.HResult.MAKE_HRESULT(System.Int32,System.Int32,System.Int32)">
            <summary>
            MAKE_HRESULT macro
            </summary>
        </member>
        <member name="M:NAudio.Utils.HResult.GetHResult(System.Runtime.InteropServices.COMException)">
            <summary>
            Helper to deal with the fact that in Win Store apps,
            the HResult property name has changed
            </summary>
            <param name="exception">COM Exception</param>
            <returns>The HResult</returns>
        </member>
        <member name="T:NAudio.Utils.IgnoreDisposeStream">
            <summary>
            Pass-through stream that ignores Dispose
            Useful for dealing with MemoryStreams that you want to re-use
            </summary>
        </member>
        <member name="P:NAudio.Utils.IgnoreDisposeStream.SourceStream">
            <summary>
            The source stream all other methods fall through to
            </summary>
        </member>
        <member name="P:NAudio.Utils.IgnoreDisposeStream.IgnoreDispose">
            <summary>
            If true the Dispose will be ignored, if false, will pass through to the SourceStream
            Set to true by default
            </summary>
        </member>
        <member name="M:NAudio.Utils.IgnoreDisposeStream.#ctor(System.IO.Stream)">
            <summary>
            Creates a new IgnoreDisposeStream
            </summary>
            <param name="sourceStream">The source stream</param>
        </member>
        <member name="P:NAudio.Utils.IgnoreDisposeStream.CanRead">
            <summary>
            Can Read
            </summary>
        </member>
        <member name="P:NAudio.Utils.IgnoreDisposeStream.CanSeek">
            <summary>
            Can Seek
            </summary>
        </member>
        <member name="P:NAudio.Utils.IgnoreDisposeStream.CanWrite">
            <summary>
            Can write to the underlying stream
            </summary>
        </member>
        <member name="M:NAudio.Utils.IgnoreDisposeStream.Flush">
            <summary>
            Flushes the underlying stream
            </summary>
        </member>
        <member name="P:NAudio.Utils.IgnoreDisposeStream.Length">
            <summary>
            Gets the length of the underlying stream
            </summary>
        </member>
        <member name="P:NAudio.Utils.IgnoreDisposeStream.Position">
            <summary>
            Gets or sets the position of the underlying stream
            </summary>
        </member>
        <member name="M:NAudio.Utils.IgnoreDisposeStream.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads from the underlying stream
            </summary>
        </member>
        <member name="M:NAudio.Utils.IgnoreDisposeStream.Seek(System.Int64,System.IO.SeekOrigin)">
            <summary>
            Seeks on the underlying stream
            </summary>
        </member>
        <member name="M:NAudio.Utils.IgnoreDisposeStream.SetLength(System.Int64)">
            <summary>
            Sets the length of the underlying stream
            </summary>
        </member>
        <member name="M:NAudio.Utils.IgnoreDisposeStream.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Writes to the underlying stream
            </summary>
        </member>
        <member name="M:NAudio.Utils.IgnoreDisposeStream.Dispose(System.Boolean)">
            <summary>
            Dispose - by default (IgnoreDispose = true) will do nothing,
            leaving the underlying stream undisposed
            </summary>
        </member>
        <member name="M:NAudio.Utils.MergeSort.Sort``1(System.Collections.Generic.IList{``0},System.Int32,System.Int32,System.Collections.Generic.IComparer{``0})">
            <summary>
            In-place and stable implementation of MergeSort
            </summary>
        </member>
        <member name="M:NAudio.Utils.MergeSort.Sort``1(System.Collections.Generic.IList{``0})">
            <summary>
            MergeSort a list of comparable items
            </summary>
        </member>
        <member name="M:NAudio.Utils.MergeSort.Sort``1(System.Collections.Generic.IList{``0},System.Collections.Generic.IComparer{``0})">
            <summary>
            MergeSort a list 
            </summary>
        </member>
        <member name="T:NAudio.Utils.ProgressLog">
            <summary>
            A thread-safe Progress Log Control
            </summary>
        </member>
        <member name="M:NAudio.Utils.ProgressLog.#ctor">
            <summary>
            Creates a new progress log control
            </summary>
        </member>
        <member name="P:NAudio.Utils.ProgressLog.Text">
            <summary>
            The contents of the log as text
            </summary>
        </member>
        <member name="M:NAudio.Utils.ProgressLog.LogMessage(System.Drawing.Color,System.String)">
            <summary>
            Log a message
            </summary>
        </member>
        <member name="M:NAudio.Utils.ProgressLog.ClearLog">
            <summary>
            Clear the log
            </summary>
        </member>
        <member name="F:NAudio.Utils.ProgressLog.components">
            <summary> 
            Required designer variable.
            </summary>
        </member>
        <member name="M:NAudio.Utils.ProgressLog.Dispose(System.Boolean)">
            <summary> 
            Clean up any resources being used.
            </summary>
            <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
        </member>
        <member name="M:NAudio.Utils.ProgressLog.InitializeComponent">
            <summary> 
            Required method for Designer support - do not modify 
            the contents of this method with the code editor.
            </summary>
        </member>
        <member name="T:NAudio.Wave.Asio.Asio64Bit">
            <summary>
            ASIO 64 bit value
            Unfortunately the ASIO API was implemented it before compiler supported consistently 64 bit 
            integer types. By using the structure the data layout on a little-endian system like the 
            Intel x86 architecture will result in a "non native" storage of the 64 bit data. The most 
            significant 32 bit are stored first in memory, the least significant bits are stored in the 
            higher memory space. However each 32 bit is stored in the native little-endian fashion
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.Asio64Bit.hi">
            <summary>
            most significant bits (Bits 32..63)
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.Asio64Bit.lo">
            <summary>
            least significant bits (Bits 0..31)
            </summary>
        </member>
        <member name="T:NAudio.Wave.Asio.AsioCallbacks">
            <summary>
            ASIO Callbacks
            </summary>
        </member>
        <member name="T:NAudio.Wave.Asio.AsioCallbacks.AsioBufferSwitchCallBack">
            <summary>
            ASIO Buffer Switch Callback
            </summary>
        </member>
        <member name="T:NAudio.Wave.Asio.AsioCallbacks.AsioSampleRateDidChangeCallBack">
            <summary>
            ASIO Sample Rate Did Change Callback
            </summary>
        </member>
        <member name="T:NAudio.Wave.Asio.AsioCallbacks.AsioAsioMessageCallBack">
            <summary>
            ASIO Message Callback
            </summary>
        </member>
        <member name="T:NAudio.Wave.Asio.AsioCallbacks.AsioBufferSwitchTimeInfoCallBack">
            <summary>
            ASIO Buffer Switch Time Info Callback
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioCallbacks.pbufferSwitch">
            <summary>
            Buffer switch callback
            void (*bufferSwitch) (long doubleBufferIndex, AsioBool directProcess);
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioCallbacks.psampleRateDidChange">
            <summary>
            Sample Rate Changed callback
            void (*sampleRateDidChange) (AsioSampleRate sRate);
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioCallbacks.pasioMessage">
            <summary>
            ASIO Message callback
            long (*asioMessage) (long selector, long value, void* message, double* opt);
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioCallbacks.pbufferSwitchTimeInfo">
            <summary>
            ASIO Buffer Switch Time Info Callback
            AsioTime* (*bufferSwitchTimeInfo) (AsioTime* params, long doubleBufferIndex, AsioBool directProcess);
            </summary>
        </member>
        <member name="T:NAudio.Wave.Asio.AsioChannelInfo">
            <summary>
            ASIO Channel Info
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioChannelInfo.channel">
            <summary>
            on input, channel index
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioChannelInfo.isInput">
            <summary>
            Is Input
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioChannelInfo.isActive">
            <summary>
            Is Active
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioChannelInfo.channelGroup">
            <summary>
            Channel Info
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioChannelInfo.type">
            <summary>
            ASIO Sample Type
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioChannelInfo.name">
            <summary>
            Name
            </summary>
        </member>
        <member name="T:NAudio.Wave.Asio.AsioDriverCapability">
            <summary>
            ASIODriverCapability holds all the information from the AsioDriver.
            Use ASIODriverExt to get the Capabilities
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioDriverCapability.DriverName">
            <summary>
            Drive Name
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioDriverCapability.NbInputChannels">
            <summary>
            Number of Input Channels
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioDriverCapability.NbOutputChannels">
            <summary>
            Number of Output Channels
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioDriverCapability.InputLatency">
            <summary>
            Input Latency
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioDriverCapability.OutputLatency">
            <summary>
            Output Latency
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioDriverCapability.BufferMinSize">
            <summary>
            Buffer Minimum Size
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioDriverCapability.BufferMaxSize">
            <summary>
            Buffer Maximum Size
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioDriverCapability.BufferPreferredSize">
            <summary>
            Buffer Preferred Size
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioDriverCapability.BufferGranularity">
            <summary>
            Buffer Granularity
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioDriverCapability.SampleRate">
            <summary>
            Sample Rate
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioDriverCapability.InputChannelInfos">
            <summary>
            Input Channel Info
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioDriverCapability.OutputChannelInfos">
            <summary>
            Output Channel Info
            </summary>
        </member>
        <member name="T:NAudio.Wave.Asio.AsioError">
            <summary>
            ASIO Error Codes
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioError.ASE_OK">
            <summary>
            This value will be returned whenever the call succeeded
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioError.ASE_SUCCESS">
            <summary>
            unique success return value for ASIOFuture calls
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioError.ASE_NotPresent">
            <summary>
            hardware input or output is not present or available
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioError.ASE_HWMalfunction">
            <summary>
            hardware is malfunctioning (can be returned by any ASIO function)
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioError.ASE_InvalidParameter">
            <summary>
            input parameter invalid
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioError.ASE_InvalidMode">
            <summary>
            hardware is in a bad mode or used in a bad mode
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioError.ASE_SPNotAdvancing">
            <summary>
            hardware is not running when sample position is inquired
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioError.ASE_NoClock">
            <summary>
            sample clock or rate cannot be determined or is not present
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioError.ASE_NoMemory">
            <summary>
            not enough memory for completing the request
            </summary>
        </member>
        <member name="T:NAudio.Wave.Asio.AsioMessageSelector">
            <summary>
            ASIO Message Selector
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioMessageSelector.kAsioSelectorSupported">
            <summary>
            selector in &lt;value&gt;, returns 1L if supported,
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioMessageSelector.kAsioEngineVersion">
            <summary>
            returns engine (host) asio implementation version,
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioMessageSelector.kAsioResetRequest">
            <summary>
            request driver reset. if accepted, this
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioMessageSelector.kAsioBufferSizeChange">
            <summary>
            not yet supported, will currently always return 0L.
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioMessageSelector.kAsioResyncRequest">
            <summary>
            the driver went out of sync, such that
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioMessageSelector.kAsioLatenciesChanged">
            <summary>
            the drivers latencies have changed. The engine
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioMessageSelector.kAsioSupportsTimeInfo">
            <summary>
            if host returns true here, it will expect the
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioMessageSelector.kAsioSupportsTimeCode">
            <summary>
            supports timecode
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioMessageSelector.kAsioMMCCommand">
            <summary>
            unused - value: number of commands, message points to mmc commands
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioMessageSelector.kAsioSupportsInputMonitor">
            <summary>
            kAsioSupportsXXX return 1 if host supports this
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioMessageSelector.kAsioSupportsInputGain">
            <summary>
            unused and undefined
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioMessageSelector.kAsioSupportsInputMeter">
            <summary>
            unused and undefined
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioMessageSelector.kAsioSupportsOutputGain">
            <summary>
            unused and undefined
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioMessageSelector.kAsioSupportsOutputMeter">
            <summary>
            unused and undefined
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioMessageSelector.kAsioOverload">
            <summary>
            driver detected an overload
            </summary>
        </member>
        <member name="T:NAudio.Wave.Asio.AsioSampleType">
            <summary>
            ASIO Sample Type
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioSampleType.Int16MSB">
            <summary>
            Int 16 MSB
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioSampleType.Int24MSB">
            <summary>
            Int 24 MSB (used for 20 bits as well)
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioSampleType.Int32MSB">
            <summary>
            Int 32 MSB
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioSampleType.Float32MSB">
            <summary>
            IEEE 754 32 bit float
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioSampleType.Float64MSB">
            <summary>
            IEEE 754 64 bit double float
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioSampleType.Int32MSB16">
            <summary>
            32 bit data with 16 bit alignment
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioSampleType.Int32MSB18">
            <summary>
            32 bit data with 18 bit alignment
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioSampleType.Int32MSB20">
            <summary>
            32 bit data with 20 bit alignment
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioSampleType.Int32MSB24">
            <summary>
            32 bit data with 24 bit alignment
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioSampleType.Int16LSB">
            <summary>
            Int 16 LSB
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioSampleType.Int24LSB">
            <summary>
            Int 24 LSB
            used for 20 bits as well
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioSampleType.Int32LSB">
            <summary>
            Int 32 LSB
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioSampleType.Float32LSB">
            <summary>
            IEEE 754 32 bit float, as found on Intel x86 architecture
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioSampleType.Float64LSB">
            <summary>
            IEEE 754 64 bit double float, as found on Intel x86 architecture
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioSampleType.Int32LSB16">
            <summary>
            32 bit data with 16 bit alignment
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioSampleType.Int32LSB18">
            <summary>
            32 bit data with 18 bit alignment
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioSampleType.Int32LSB20">
            <summary>
            32 bit data with 20 bit alignment
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioSampleType.Int32LSB24">
            <summary>
            32 bit data with 24 bit alignment
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioSampleType.DSDInt8LSB1">
            <summary>
            DSD 1 bit data, 8 samples per byte. First sample in Least significant bit.
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioSampleType.DSDInt8MSB1">
            <summary>
            DSD 1 bit data, 8 samples per byte. First sample in Most significant bit.
            </summary>
        </member>
        <member name="F:NAudio.Wave.Asio.AsioSampleType.DSDInt8NER8">
            <summary>
            DSD 8 bit data, 1 sample per byte. No Endianness required.
            </summary>
        </member>
        <member name="T:NAudio.Wave.Asio.AsioDriver">
            <summary>
            Main AsioDriver Class. To use this class, you need to query first the GetAsioDriverNames() and
            then use the GetAsioDriverByName to instantiate the correct AsioDriver.
            This is the first AsioDriver binding fully implemented in C#!
            
            Contributor: Alexandre Mutel - email: alexandre_mutel at yahoo.fr
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.GetAsioDriverNames">
            <summary>
            Gets the ASIO driver names installed.
            </summary>
            <returns>a list of driver names. Use this name to GetAsioDriverByName</returns>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.GetAsioDriverByName(System.String)">
            <summary>
            Instantiate a AsioDriver given its name.
            </summary>
            <param name="name">The name of the driver</param>
            <returns>an AsioDriver instance</returns>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.GetAsioDriverByGuid(System.Guid)">
            <summary>
            Instantiate the ASIO driver by GUID.
            </summary>
            <param name="guid">The GUID.</param>
            <returns>an AsioDriver instance</returns>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.Init(System.IntPtr)">
            <summary>
            Inits the AsioDriver..
            </summary>
            <param name="sysHandle">The sys handle.</param>
            <returns></returns>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.GetDriverName">
            <summary>
            Gets the name of the driver.
            </summary>
            <returns></returns>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.GetDriverVersion">
            <summary>
            Gets the driver version.
            </summary>
            <returns></returns>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.GetErrorMessage">
            <summary>
            Gets the error message.
            </summary>
            <returns></returns>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.Start">
            <summary>
            Starts this instance.
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.Stop">
            <summary>
            Stops this instance.
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.GetChannels(System.Int32@,System.Int32@)">
            <summary>
            Gets the number of channels.
            </summary>
            <param name="numInputChannels">The num input channels.</param>
            <param name="numOutputChannels">The num output channels.</param>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.GetLatencies(System.Int32@,System.Int32@)">
            <summary>
            Gets the latencies (n.b. does not throw an exception)
            </summary>
            <param name="inputLatency">The input latency.</param>
            <param name="outputLatency">The output latency.</param>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.GetBufferSize(System.Int32@,System.Int32@,System.Int32@,System.Int32@)">
            <summary>
            Gets the size of the buffer.
            </summary>
            <param name="minSize">Size of the min.</param>
            <param name="maxSize">Size of the max.</param>
            <param name="preferredSize">Size of the preferred.</param>
            <param name="granularity">The granularity.</param>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.CanSampleRate(System.Double)">
            <summary>
            Determines whether this instance can use the specified sample rate.
            </summary>
            <param name="sampleRate">The sample rate.</param>
            <returns>
            	<c>true</c> if this instance [can sample rate] the specified sample rate; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.GetSampleRate">
            <summary>
            Gets the sample rate.
            </summary>
            <returns></returns>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.SetSampleRate(System.Double)">
            <summary>
            Sets the sample rate.
            </summary>
            <param name="sampleRate">The sample rate.</param>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.GetClockSources(System.Int64@,System.Int32)">
            <summary>
            Gets the clock sources.
            </summary>
            <param name="clocks">The clocks.</param>
            <param name="numSources">The num sources.</param>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.SetClockSource(System.Int32)">
            <summary>
            Sets the clock source.
            </summary>
            <param name="reference">The reference.</param>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.GetSamplePosition(System.Int64@,NAudio.Wave.Asio.Asio64Bit@)">
            <summary>
            Gets the sample position.
            </summary>
            <param name="samplePos">The sample pos.</param>
            <param name="timeStamp">The time stamp.</param>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.GetChannelInfo(System.Int32,System.Boolean)">
            <summary>
            Gets the channel info.
            </summary>
            <param name="channelNumber">The channel number.</param>
            <param name="trueForInputInfo">if set to <c>true</c> [true for input info].</param>
            <returns>Channel Info</returns>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.CreateBuffers(System.IntPtr,System.Int32,System.Int32,NAudio.Wave.Asio.AsioCallbacks@)">
            <summary>
            Creates the buffers.
            </summary>
            <param name="bufferInfos">The buffer infos.</param>
            <param name="numChannels">The num channels.</param>
            <param name="bufferSize">Size of the buffer.</param>
            <param name="callbacks">The callbacks.</param>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.DisposeBuffers">
            <summary>
            Disposes the buffers.
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.ControlPanel">
            <summary>
            Controls the panel.
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.Future(System.Int32,System.IntPtr)">
            <summary>
            Futures the specified selector.
            </summary>
            <param name="selector">The selector.</param>
            <param name="opt">The opt.</param>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.OutputReady">
            <summary>
            Notifies OutputReady to the AsioDriver.
            </summary>
            <returns></returns>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.ReleaseComAsioDriver">
            <summary>
            Releases this instance.
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.HandleException(NAudio.Wave.Asio.AsioError,System.String)">
            <summary>
            Handles the exception. Throws an exception based on the error.
            </summary>
            <param name="error">The error to check.</param>
            <param name="methodName">Method name</param>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriver.InitFromGuid(System.Guid)">
            <summary>
            Inits the vTable method from GUID. This is a tricky part of this class.
            </summary>
            <param name="asioGuid">The ASIO GUID.</param>
        </member>
        <member name="T:NAudio.Wave.Asio.AsioDriver.AsioDriverVTable">
            <summary>
            Internal VTable structure to store all the delegates to the C++ COM method.
            </summary>
        </member>
        <member name="T:NAudio.Wave.Asio.AsioFillBufferCallback">
            <summary>
            Callback used by the AsioDriverExt to get wave data
            </summary>
        </member>
        <member name="T:NAudio.Wave.Asio.AsioDriverExt">
            <summary>
            AsioDriverExt is a simplified version of the AsioDriver. It provides an easier
            way to access the capabilities of the Driver and implement the callbacks necessary 
            for feeding the driver.
            Implementation inspired from Rob Philpot's with a managed C++ ASIO wrapper BlueWave.Interop.Asio
            http://www.codeproject.com/KB/mcpp/Asio.Net.aspx
            
            Contributor: Alexandre Mutel - email: alexandre_mutel at yahoo.fr
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriverExt.#ctor(NAudio.Wave.Asio.AsioDriver)">
            <summary>
            Initializes a new instance of the <see cref="T:NAudio.Wave.Asio.AsioDriverExt"/> class based on an already
            instantiated AsioDriver instance.
            </summary>
            <param name="driver">A AsioDriver already instantiated.</param>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriverExt.SetChannelOffset(System.Int32,System.Int32)">
            <summary>
            Allows adjustment of which is the first output channel we write to
            </summary>
            <param name="outputChannelOffset">Output Channel offset</param>
            <param name="inputChannelOffset">Input Channel offset</param>
        </member>
        <member name="P:NAudio.Wave.Asio.AsioDriverExt.Driver">
            <summary>
            Gets the driver used.
            </summary>
            <value>The ASIOdriver.</value>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriverExt.Start">
            <summary>
            Starts playing the buffers.
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriverExt.Stop">
            <summary>
            Stops playing the buffers.
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriverExt.ShowControlPanel">
            <summary>
            Shows the control panel.
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriverExt.ReleaseDriver">
            <summary>
            Releases this instance.
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriverExt.IsSampleRateSupported(System.Double)">
            <summary>
            Determines whether the specified sample rate is supported.
            </summary>
            <param name="sampleRate">The sample rate.</param>
            <returns>
            	<c>true</c> if [is sample rate supported]; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriverExt.SetSampleRate(System.Double)">
            <summary>
            Sets the sample rate.
            </summary>
            <param name="sampleRate">The sample rate.</param>
        </member>
        <member name="P:NAudio.Wave.Asio.AsioDriverExt.FillBufferCallback">
            <summary>
            Gets or sets the fill buffer callback.
            </summary>
            <value>The fill buffer callback.</value>
        </member>
        <member name="P:NAudio.Wave.Asio.AsioDriverExt.Capabilities">
            <summary>
            Gets the capabilities of the AsioDriver.
            </summary>
            <value>The capabilities.</value>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriverExt.CreateBuffers(System.Int32,System.Int32,System.Boolean)">
            <summary>
            Creates the buffers for playing.
            </summary>
            <param name="numberOfOutputChannels">The number of outputs channels.</param>
            <param name="numberOfInputChannels">The number of input channel.</param>
            <param name="useMaxBufferSize">if set to <c>true</c> [use max buffer size] else use Prefered size</param>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriverExt.BuildCapabilities">
            <summary>
            Builds the capabilities internally.
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriverExt.BufferSwitchCallBack(System.Int32,System.Boolean)">
            <summary>
            Callback called by the AsioDriver on fill buffer demand. Redirect call to external callback.
            </summary>
            <param name="doubleBufferIndex">Index of the double buffer.</param>
            <param name="directProcess">if set to <c>true</c> [direct process].</param>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriverExt.SampleRateDidChangeCallBack(System.Double)">
            <summary>
            Callback called by the AsioDriver on event "Samples rate changed".
            </summary>
            <param name="sRate">The sample rate.</param>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriverExt.AsioMessageCallBack(NAudio.Wave.Asio.AsioMessageSelector,System.Int32,System.IntPtr,System.IntPtr)">
            <summary>
            Asio message call back.
            </summary>
            <param name="selector">The selector.</param>
            <param name="value">The value.</param>
            <param name="message">The message.</param>
            <param name="opt">The opt.</param>
            <returns></returns>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioDriverExt.BufferSwitchTimeInfoCallBack(System.IntPtr,System.Int32,System.Boolean)">
            <summary>
            Buffers switch time info call back.
            </summary>
            <param name="asioTimeParam">The asio time param.</param>
            <param name="doubleBufferIndex">Index of the double buffer.</param>
            <param name="directProcess">if set to <c>true</c> [direct process].</param>
            <returns></returns>
        </member>
        <member name="T:NAudio.Wave.Asio.AsioSampleConvertor">
            <summary>
            This class stores convertors for different interleaved WaveFormat to ASIOSampleType separate channel
            format.
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioSampleConvertor.SelectSampleConvertor(NAudio.Wave.WaveFormat,NAudio.Wave.Asio.AsioSampleType)">
            <summary>
            Selects the sample convertor based on the input WaveFormat and the output ASIOSampleTtype.
            </summary>
            <param name="waveFormat">The wave format.</param>
            <param name="asioType">The type.</param>
            <returns></returns>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioSampleConvertor.ConvertorShortToInt2Channels(System.IntPtr,System.IntPtr[],System.Int32,System.Int32)">
            <summary>
            Optimized convertor for 2 channels SHORT
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioSampleConvertor.ConvertorShortToIntGeneric(System.IntPtr,System.IntPtr[],System.Int32,System.Int32)">
            <summary>
            Generic convertor for SHORT
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioSampleConvertor.ConvertorFloatToInt2Channels(System.IntPtr,System.IntPtr[],System.Int32,System.Int32)">
            <summary>
            Optimized convertor for 2 channels FLOAT
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioSampleConvertor.ConvertorFloatToIntGeneric(System.IntPtr,System.IntPtr[],System.Int32,System.Int32)">
            <summary>
            Generic convertor SHORT
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioSampleConvertor.ConvertorShortToShort2Channels(System.IntPtr,System.IntPtr[],System.Int32,System.Int32)">
            <summary>
            Optimized convertor for 2 channels SHORT
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioSampleConvertor.ConvertorShortToShortGeneric(System.IntPtr,System.IntPtr[],System.Int32,System.Int32)">
            <summary>
            Generic convertor for SHORT
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioSampleConvertor.ConvertorFloatToShort2Channels(System.IntPtr,System.IntPtr[],System.Int32,System.Int32)">
            <summary>
            Optimized convertor for 2 channels FLOAT
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioSampleConvertor.ConvertorFloatToShortGeneric(System.IntPtr,System.IntPtr[],System.Int32,System.Int32)">
            <summary>
            Generic convertor SHORT
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioSampleConvertor.ConverterFloatTo24LSBGeneric(System.IntPtr,System.IntPtr[],System.Int32,System.Int32)">
            <summary>
            Generic converter 24 LSB
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioSampleConvertor.ConverterFloatToFloatGeneric(System.IntPtr,System.IntPtr[],System.Int32,System.Int32)">
            <summary>
            Generic convertor for float
            </summary>
        </member>
        <member name="T:NAudio.Wave.Asio.AsioException">
            <summary>
            ASIO common Exception.
            </summary>
        </member>
        <member name="M:NAudio.Wave.Asio.AsioException.getErrorName(NAudio.Wave.Asio.AsioError)">
            <summary>
            Gets the name of the error.
            </summary>
            <param name="error">The error.</param>
            <returns>the name of the error</returns>
        </member>
        <member name="T:NAudio.Wave.Compression.AcmDriverAddFlags">
            <summary>
            Flags for use with acmDriverAdd
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverAddFlags.Local">
            <summary>
            ACM_DRIVERADDF_LOCAL
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverAddFlags.Global">
            <summary>
            ACM_DRIVERADDF_GLOBAL
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverAddFlags.Function">
            <summary>
            ACM_DRIVERADDF_FUNCTION
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverAddFlags.NotifyWindowHandle">
            <summary>
            ACM_DRIVERADDF_NOTIFYHWND
            </summary>
        </member>
        <member name="T:NAudio.Wave.Compression.AcmDriver">
            <summary>
            Represents an installed ACM Driver
            </summary>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmDriver.IsCodecInstalled(System.String)">
            <summary>
            Helper function to determine whether a particular codec is installed
            </summary>
            <param name="shortName">The short name of the function</param>
            <returns>Whether the codec is installed</returns>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmDriver.AddLocalDriver(System.String)">
            <summary>
            Attempts to add a new ACM driver from a file
            </summary>
            <param name="driverFile">Full path of the .acm or dll file containing the driver</param>
            <returns>Handle to the driver</returns>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmDriver.RemoveLocalDriver(NAudio.Wave.Compression.AcmDriver)">
            <summary>
            Removes a driver previously added using AddLocalDriver
            </summary>
            <param name="localDriver">Local driver to remove</param>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmDriver.ShowFormatChooseDialog(System.IntPtr,System.String,NAudio.Wave.Compression.AcmFormatEnumFlags,NAudio.Wave.WaveFormat,NAudio.Wave.WaveFormat@,System.String@,System.String@)">
            <summary>
            Show Format Choose Dialog
            </summary>
            <param name="ownerWindowHandle">Owner window handle, can be null</param>
            <param name="windowTitle">Window title</param>
            <param name="enumFlags">Enumeration flags. None to get everything</param>
            <param name="enumFormat">Enumeration format. Only needed with certain enumeration flags</param>
            <param name="selectedFormat">The selected format</param>
            <param name="selectedFormatDescription">Textual description of the selected format</param>
            <param name="selectedFormatTagDescription">Textual description of the selected format tag</param>
            <returns>True if a format was selected</returns>
        </member>
        <member name="P:NAudio.Wave.Compression.AcmDriver.MaxFormatSize">
            <summary>
            Gets the maximum size needed to store a WaveFormat for ACM interop functions
            </summary>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmDriver.FindByShortName(System.String)">
            <summary>
            Finds a Driver by its short name
            </summary>
            <param name="shortName">Short Name</param>
            <returns>The driver, or null if not found</returns>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmDriver.EnumerateAcmDrivers">
            <summary>
            Gets a list of the ACM Drivers installed
            </summary>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmDriver.DriverEnumCallback(System.IntPtr,System.IntPtr,NAudio.Wave.Compression.AcmDriverDetailsSupportFlags)">
            <summary>
            The callback for acmDriverEnum
            </summary>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmDriver.#ctor(System.IntPtr)">
            <summary>
            Creates a new ACM Driver object
            </summary>
            <param name="hAcmDriver">Driver handle</param>
        </member>
        <member name="P:NAudio.Wave.Compression.AcmDriver.ShortName">
            <summary>
            The short name of this driver
            </summary>
        </member>
        <member name="P:NAudio.Wave.Compression.AcmDriver.LongName">
            <summary>
            The full name of this driver
            </summary>
        </member>
        <member name="P:NAudio.Wave.Compression.AcmDriver.DriverId">
            <summary>
            The driver ID
            </summary>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmDriver.ToString">
            <summary>
            ToString
            </summary>
        </member>
        <member name="P:NAudio.Wave.Compression.AcmDriver.FormatTags">
            <summary>
            The list of FormatTags for this ACM Driver
            </summary>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmDriver.GetFormats(NAudio.Wave.Compression.AcmFormatTag)">
            <summary>
            Gets all the supported formats for a given format tag
            </summary>
            <param name="formatTag">Format tag</param>
            <returns>Supported formats</returns>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmDriver.Open">
            <summary>
            Opens this driver
            </summary>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmDriver.Close">
            <summary>
            Closes this driver
            </summary>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmDriver.Dispose">
            <summary>
            Dispose
            </summary>
        </member>
        <member name="T:NAudio.Wave.Compression.AcmDriverDetails">
            <summary>
            Interop structure for ACM driver details (ACMDRIVERDETAILS)
            http://msdn.microsoft.com/en-us/library/dd742889%28VS.85%29.aspx
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetails.structureSize">
            <summary>
            DWORD cbStruct
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetails.fccType">
            <summary>
            FOURCC fccType
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetails.fccComp">
            <summary>
            FOURCC fccComp
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetails.manufacturerId">
            <summary>
            WORD   wMid; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetails.productId">
            <summary>
            WORD wPid
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetails.acmVersion">
            <summary>
            DWORD vdwACM
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetails.driverVersion">
            <summary>
            DWORD vdwDriver
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetails.supportFlags">
            <summary>
            DWORD  fdwSupport;
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetails.formatTagsCount">
            <summary>
            DWORD cFormatTags
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetails.filterTagsCount">
            <summary>
            DWORD cFilterTags
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetails.hicon">
            <summary>
            HICON hicon
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetails.shortName">
            <summary>
            TCHAR  szShortName[ACMDRIVERDETAILS_SHORTNAME_CHARS]; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetails.longName">
            <summary>
            TCHAR  szLongName[ACMDRIVERDETAILS_LONGNAME_CHARS];
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetails.copyright">
            <summary>
            TCHAR  szCopyright[ACMDRIVERDETAILS_COPYRIGHT_CHARS]; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetails.licensing">
            <summary>
            TCHAR  szLicensing[ACMDRIVERDETAILS_LICENSING_CHARS]; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetails.features">
            <summary>
            TCHAR  szFeatures[ACMDRIVERDETAILS_FEATURES_CHARS];
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetails.ShortNameChars">
            <summary>
            ACMDRIVERDETAILS_SHORTNAME_CHARS
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetails.LongNameChars">
            <summary>
            ACMDRIVERDETAILS_LONGNAME_CHARS
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetails.CopyrightChars">
            <summary>
            ACMDRIVERDETAILS_COPYRIGHT_CHARS
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetails.LicensingChars">
            <summary>
            ACMDRIVERDETAILS_LICENSING_CHARS 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetails.FeaturesChars">
            <summary>
            ACMDRIVERDETAILS_FEATURES_CHARS
            </summary>
        </member>
        <member name="T:NAudio.Wave.Compression.AcmDriverDetailsSupportFlags">
            <summary>
            Flags indicating what support a particular ACM driver has
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetailsSupportFlags.Codec">
            <summary>ACMDRIVERDETAILS_SUPPORTF_CODEC - Codec</summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetailsSupportFlags.Converter">
            <summary>ACMDRIVERDETAILS_SUPPORTF_CONVERTER - Converter</summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetailsSupportFlags.Filter">
            <summary>ACMDRIVERDETAILS_SUPPORTF_FILTER - Filter</summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetailsSupportFlags.Hardware">
            <summary>ACMDRIVERDETAILS_SUPPORTF_HARDWARE - Hardware</summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetailsSupportFlags.Async">
            <summary>ACMDRIVERDETAILS_SUPPORTF_ASYNC - Async</summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetailsSupportFlags.Local">
            <summary>ACMDRIVERDETAILS_SUPPORTF_LOCAL - Local</summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverDetailsSupportFlags.Disabled">
            <summary>ACMDRIVERDETAILS_SUPPORTF_DISABLED - Disabled</summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverEnumFlags.NoLocal">
            <summary>
            ACM_DRIVERENUMF_NOLOCAL, Only global drivers should be included in the enumeration
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmDriverEnumFlags.Disabled">
            <summary>
            ACM_DRIVERENUMF_DISABLED, Disabled ACM drivers should be included in the enumeration
            </summary>
        </member>
        <member name="T:NAudio.Wave.Compression.AcmFormat">
            <summary>
            ACM Format
            </summary>
        </member>
        <member name="P:NAudio.Wave.Compression.AcmFormat.FormatIndex">
            <summary>
            Format Index
            </summary>
        </member>
        <member name="P:NAudio.Wave.Compression.AcmFormat.FormatTag">
            <summary>
            Format Tag
            </summary>
        </member>
        <member name="P:NAudio.Wave.Compression.AcmFormat.SupportFlags">
            <summary>
            Support Flags
            </summary>
        </member>
        <member name="P:NAudio.Wave.Compression.AcmFormat.WaveFormat">
            <summary>
            WaveFormat
            </summary>
        </member>
        <member name="P:NAudio.Wave.Compression.AcmFormat.WaveFormatByteSize">
            <summary>
            WaveFormat Size
            </summary>
        </member>
        <member name="P:NAudio.Wave.Compression.AcmFormat.FormatDescription">
            <summary>
            Format Description
            </summary>
        </member>
        <member name="T:NAudio.Wave.Compression.AcmFormatChoose">
            <summary>
            ACMFORMATCHOOSE
            http://msdn.microsoft.com/en-us/library/dd742911%28VS.85%29.aspx
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChoose.structureSize">
            <summary>
            DWORD cbStruct; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChoose.styleFlags">
            <summary>
            DWORD fdwStyle; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChoose.ownerWindowHandle">
            <summary>
            HWND hwndOwner; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChoose.selectedWaveFormatPointer">
            <summary>
            LPWAVEFORMATEX pwfx; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChoose.selectedWaveFormatByteSize">
            <summary>
            DWORD cbwfx; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChoose.title">
            <summary>
            LPCTSTR pszTitle; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChoose.formatTagDescription">
            <summary>
            TCHAR szFormatTag[ACMFORMATTAGDETAILS_FORMATTAG_CHARS]; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChoose.formatDescription">
            <summary>
            TCHAR szFormat[ACMFORMATDETAILS_FORMAT_CHARS]; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChoose.name">
            <summary>
            LPTSTR pszName; 
            n.b. can be written into
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChoose.nameByteSize">
            <summary>
            DWORD cchName
            Should be at least 128 unless name is zero
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChoose.formatEnumFlags">
            <summary>
            DWORD fdwEnum; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChoose.waveFormatEnumPointer">
            <summary>
            LPWAVEFORMATEX pwfxEnum; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChoose.instanceHandle">
            <summary>
            HINSTANCE hInstance; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChoose.templateName">
            <summary>
            LPCTSTR pszTemplateName; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChoose.customData">
            <summary>
            LPARAM lCustData; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChoose.windowCallbackFunction">
            <summary>
            ACMFORMATCHOOSEHOOKPROC pfnHook; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChooseStyleFlags.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChooseStyleFlags.ShowHelp">
            <summary>
            ACMFORMATCHOOSE_STYLEF_SHOWHELP
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChooseStyleFlags.EnableHook">
            <summary>
            ACMFORMATCHOOSE_STYLEF_ENABLEHOOK
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChooseStyleFlags.EnableTemplate">
            <summary>
            ACMFORMATCHOOSE_STYLEF_ENABLETEMPLATE
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChooseStyleFlags.EnableTemplateHandle">
            <summary>
            ACMFORMATCHOOSE_STYLEF_ENABLETEMPLATEHANDLE
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChooseStyleFlags.InitToWfxStruct">
            <summary>
            ACMFORMATCHOOSE_STYLEF_INITTOWFXSTRUCT
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatChooseStyleFlags.ContextHelp">
            <summary>
            ACMFORMATCHOOSE_STYLEF_CONTEXTHELP
            </summary>
        </member>
        <member name="T:NAudio.Wave.Compression.AcmFormatDetails">
            <summary>
            ACMFORMATDETAILS
            http://msdn.microsoft.com/en-us/library/dd742913%28VS.85%29.aspx
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatDetails.structSize">
            <summary>
            DWORD cbStruct; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatDetails.formatIndex">
            <summary>
            DWORD dwFormatIndex; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatDetails.formatTag">
            <summary>
            DWORD dwFormatTag; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatDetails.supportFlags">
            <summary>
            DWORD fdwSupport; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatDetails.waveFormatPointer">
            <summary>
            LPWAVEFORMATEX pwfx; 
            </summary>    
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatDetails.waveFormatByteSize">
            <summary>
            DWORD cbwfx; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatDetails.formatDescription">
            <summary>
            TCHAR szFormat[ACMFORMATDETAILS_FORMAT_CHARS];
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatDetails.FormatDescriptionChars">
            <summary>
            ACMFORMATDETAILS_FORMAT_CHARS
            </summary>
        </member>
        <member name="T:NAudio.Wave.Compression.AcmFormatEnumFlags">
            <summary>
            Format Enumeration Flags
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatEnumFlags.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatEnumFlags.Convert">
            <summary>
            ACM_FORMATENUMF_CONVERT
            The WAVEFORMATEX structure pointed to by the pwfx member of the ACMFORMATDETAILS structure is valid. The enumerator will only enumerate destination formats that can be converted from the given pwfx format. 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatEnumFlags.Hardware">
            <summary>
            ACM_FORMATENUMF_HARDWARE
            The enumerator should only enumerate formats that are supported as native input or output formats on one or more of the installed waveform-audio devices. This flag provides a way for an application to choose only formats native to an installed waveform-audio device. This flag must be used with one or both of the ACM_FORMATENUMF_INPUT and ACM_FORMATENUMF_OUTPUT flags. Specifying both ACM_FORMATENUMF_INPUT and ACM_FORMATENUMF_OUTPUT will enumerate only formats that can be opened for input or output. This is true regardless of whether this flag is specified. 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatEnumFlags.Input">
            <summary>
            ACM_FORMATENUMF_INPUT
            Enumerator should enumerate only formats that are supported for input (recording). 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatEnumFlags.Channels">
            <summary>
            ACM_FORMATENUMF_NCHANNELS 
            The nChannels member of the WAVEFORMATEX structure pointed to by the pwfx member of the ACMFORMATDETAILS structure is valid. The enumerator will enumerate only a format that conforms to this attribute. 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatEnumFlags.SamplesPerSecond">
            <summary>
            ACM_FORMATENUMF_NSAMPLESPERSEC
            The nSamplesPerSec member of the WAVEFORMATEX structure pointed to by the pwfx member of the ACMFORMATDETAILS structure is valid. The enumerator will enumerate only a format that conforms to this attribute. 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatEnumFlags.Output">
            <summary>
            ACM_FORMATENUMF_OUTPUT 
            Enumerator should enumerate only formats that are supported for output (playback). 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatEnumFlags.Suggest">
            <summary>
            ACM_FORMATENUMF_SUGGEST
            The WAVEFORMATEX structure pointed to by the pwfx member of the ACMFORMATDETAILS structure is valid. The enumerator will enumerate all suggested destination formats for the given pwfx format. This mechanism can be used instead of the acmFormatSuggest function to allow an application to choose the best suggested format for conversion. The dwFormatIndex member will always be set to zero on return. 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatEnumFlags.BitsPerSample">
            <summary>
            ACM_FORMATENUMF_WBITSPERSAMPLE
            The wBitsPerSample member of the WAVEFORMATEX structure pointed to by the pwfx member of the ACMFORMATDETAILS structure is valid. The enumerator will enumerate only a format that conforms to this attribute. 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatEnumFlags.FormatTag">
            <summary>
            ACM_FORMATENUMF_WFORMATTAG
            The wFormatTag member of the WAVEFORMATEX structure pointed to by the pwfx member of the ACMFORMATDETAILS structure is valid. The enumerator will enumerate only a format that conforms to this attribute. The dwFormatTag member of the ACMFORMATDETAILS structure must be equal to the wFormatTag member. 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatSuggestFlags.FormatTag">
            <summary>
            ACM_FORMATSUGGESTF_WFORMATTAG
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatSuggestFlags.Channels">
            <summary>
            ACM_FORMATSUGGESTF_NCHANNELS
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatSuggestFlags.SamplesPerSecond">
            <summary>
            ACM_FORMATSUGGESTF_NSAMPLESPERSEC
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatSuggestFlags.BitsPerSample">
            <summary>
            ACM_FORMATSUGGESTF_WBITSPERSAMPLE
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatSuggestFlags.TypeMask">
            <summary>
            ACM_FORMATSUGGESTF_TYPEMASK
            </summary>
        </member>
        <member name="T:NAudio.Wave.Compression.AcmFormatTag">
            <summary>
            ACM Format Tag
            </summary>
        </member>
        <member name="P:NAudio.Wave.Compression.AcmFormatTag.FormatTagIndex">
            <summary>
            Format Tag Index
            </summary>
        </member>
        <member name="P:NAudio.Wave.Compression.AcmFormatTag.FormatTag">
            <summary>
            Format Tag
            </summary>
        </member>
        <member name="P:NAudio.Wave.Compression.AcmFormatTag.FormatSize">
            <summary>
            Format Size
            </summary>
        </member>
        <member name="P:NAudio.Wave.Compression.AcmFormatTag.SupportFlags">
            <summary>
            Support Flags
            </summary>
        </member>
        <member name="P:NAudio.Wave.Compression.AcmFormatTag.StandardFormatsCount">
            <summary>
            Standard Formats Count
            </summary>
        </member>
        <member name="P:NAudio.Wave.Compression.AcmFormatTag.FormatDescription">
            <summary>
            Format Description
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatTagDetails.structureSize">
            <summary>
            DWORD cbStruct; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatTagDetails.formatTagIndex">
            <summary>
            DWORD dwFormatTagIndex; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatTagDetails.formatTag">
            <summary>
            DWORD dwFormatTag; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatTagDetails.formatSize">
            <summary>
            DWORD cbFormatSize; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatTagDetails.supportFlags">
            <summary>
            DWORD fdwSupport;
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatTagDetails.standardFormatsCount">
            <summary>
            DWORD cStandardFormats; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatTagDetails.formatDescription">
            <summary>
            TCHAR szFormatTag[ACMFORMATTAGDETAILS_FORMATTAG_CHARS]; 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmFormatTagDetails.FormatTagDescriptionChars">
            <summary>
            ACMFORMATTAGDETAILS_FORMATTAG_CHARS
            </summary>
        </member>
        <member name="T:NAudio.Wave.Compression.AcmInterop">
            <summary>
            Interop definitions for Windows ACM (Audio Compression Manager) API
            </summary>
        </member>
        <member name="T:NAudio.Wave.Compression.AcmInterop.AcmFormatChooseHookProc">
            <summary>
            http://msdn.microsoft.com/en-us/library/dd742910%28VS.85%29.aspx
            UINT ACMFORMATCHOOSEHOOKPROC acmFormatChooseHookProc(
              HWND hwnd,     
              UINT uMsg,     
              WPARAM wParam, 
              LPARAM lParam  
            </summary>        
        </member>
        <member name="M:NAudio.Wave.Compression.AcmInterop.acmFormatSuggest(System.IntPtr,NAudio.Wave.WaveFormat,NAudio.Wave.WaveFormat,System.Int32,NAudio.Wave.Compression.AcmFormatSuggestFlags)">
            <summary>
            http://msdn.microsoft.com/en-us/library/dd742916%28VS.85%29.aspx
            MMRESULT acmFormatSuggest(
            HACMDRIVER had,          
            LPWAVEFORMATEX pwfxSrc,  
            LPWAVEFORMATEX pwfxDst,  
            DWORD cbwfxDst,          
            DWORD fdwSuggest);
            </summary>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmInterop.acmStreamOpen(System.IntPtr@,System.IntPtr,NAudio.Wave.WaveFormat,NAudio.Wave.WaveFormat,NAudio.Wave.Compression.WaveFilter,System.IntPtr,System.IntPtr,NAudio.Wave.Compression.AcmStreamOpenFlags)">
            <summary>
            http://msdn.microsoft.com/en-us/library/dd742928%28VS.85%29.aspx
            MMRESULT acmStreamOpen(
              LPHACMSTREAM    phas,       
              HACMDRIVER      had,        
              LPWAVEFORMATEX  pwfxSrc,    
              LPWAVEFORMATEX  pwfxDst,    
              LPWAVEFILTER    pwfltr,     
              DWORD_PTR       dwCallback, 
              DWORD_PTR       dwInstance, 
              DWORD           fdwOpen     
            </summary>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmInterop.acmStreamOpen2(System.IntPtr@,System.IntPtr,System.IntPtr,System.IntPtr,NAudio.Wave.Compression.WaveFilter,System.IntPtr,System.IntPtr,NAudio.Wave.Compression.AcmStreamOpenFlags)">
            <summary>
            A version with pointers for troubleshooting
            </summary>
        </member>
        <member name="T:NAudio.Wave.Compression.AcmStream">
            <summary>
            AcmStream encapsulates an Audio Compression Manager Stream
            used to convert audio from one format to another
            </summary>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmStream.#ctor(NAudio.Wave.WaveFormat,NAudio.Wave.WaveFormat)">
            <summary>
            Creates a new ACM stream to convert one format to another. Note that
            not all conversions can be done in one step
            </summary>
            <param name="sourceFormat">The source audio format</param>
            <param name="destFormat">The destination audio format</param>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmStream.#ctor(System.IntPtr,NAudio.Wave.WaveFormat,NAudio.Wave.Compression.WaveFilter)">
            <summary>
            Creates a new ACM stream to convert one format to another, using a 
            specified driver identified and wave filter
            </summary>
            <param name="driverId">the driver identifier</param>
            <param name="sourceFormat">the source format</param>
            <param name="waveFilter">the wave filter</param>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmStream.SourceToDest(System.Int32)">
            <summary>
            Returns the number of output bytes for a given number of input bytes
            </summary>
            <param name="source">Number of input bytes</param>
            <returns>Number of output bytes</returns>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmStream.DestToSource(System.Int32)">
            <summary>
            Returns the number of source bytes for a given number of destination bytes
            </summary>
            <param name="dest">Number of destination bytes</param>
            <returns>Number of source bytes</returns>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmStream.SuggestPcmFormat(NAudio.Wave.WaveFormat)">
            <summary>
            Suggests an appropriate PCM format that the compressed format can be converted
            to in one step
            </summary>
            <param name="compressedFormat">The compressed format</param>
            <returns>The PCM format</returns>
        </member>
        <member name="P:NAudio.Wave.Compression.AcmStream.SourceBuffer">
            <summary>
            Returns the Source Buffer. Fill this with data prior to calling convert
            </summary>
        </member>
        <member name="P:NAudio.Wave.Compression.AcmStream.DestBuffer">
            <summary>
            Returns the Destination buffer. This will contain the converted data
            after a successful call to Convert
            </summary>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmStream.Reposition">
            <summary>
            Report that we have repositioned in the source stream
            </summary>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmStream.Convert(System.Int32,System.Int32@)">
            <summary>
            Converts the contents of the SourceBuffer into the DestinationBuffer
            </summary>
            <param name="bytesToConvert">The number of bytes in the SourceBuffer
            that need to be converted</param>
            <param name="sourceBytesConverted">The number of source bytes actually converted</param>
            <returns>The number of converted bytes in the DestinationBuffer</returns>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmStream.Convert(System.Int32)">
            <summary>
            Converts the contents of the SourceBuffer into the DestinationBuffer
            </summary>
            <param name="bytesToConvert">The number of bytes in the SourceBuffer
            that need to be converted</param>
            <returns>The number of converted bytes in the DestinationBuffer</returns>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmStream.Dispose">
            <summary>
            Frees resources associated with this ACM Stream
            </summary>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmStream.Dispose(System.Boolean)">
            <summary>
            Frees resources associated with this ACM Stream
            </summary>
        </member>
        <member name="M:NAudio.Wave.Compression.AcmStream.Finalize">
            <summary>
            Frees resources associated with this ACM Stream
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmStreamHeaderStatusFlags.Done">
            <summary>
            ACMSTREAMHEADER_STATUSF_DONE
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmStreamHeaderStatusFlags.Prepared">
            <summary>
            ACMSTREAMHEADER_STATUSF_PREPARED
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmStreamHeaderStatusFlags.InQueue">
            <summary>
            ACMSTREAMHEADER_STATUSF_INQUEUE
            </summary>
        </member>
        <member name="T:NAudio.Wave.Compression.AcmStreamHeaderStruct">
            <summary>
            Interop structure for ACM stream headers.
            ACMSTREAMHEADER 
            http://msdn.microsoft.com/en-us/library/dd742926%28VS.85%29.aspx
            </summary>    
        </member>
        <member name="F:NAudio.Wave.Compression.AcmStreamOpenFlags.Query">
            <summary>
            ACM_STREAMOPENF_QUERY, ACM will be queried to determine whether it supports the given conversion. A conversion stream will not be opened, and no handle will be returned in the phas parameter. 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmStreamOpenFlags.Async">
            <summary>
            ACM_STREAMOPENF_ASYNC, Stream conversion should be performed asynchronously. If this flag is specified, the application can use a callback function to be notified when the conversion stream is opened and closed and after each buffer is converted. In addition to using a callback function, an application can examine the fdwStatus member of the ACMSTREAMHEADER structure for the ACMSTREAMHEADER_STATUSF_DONE flag. 
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmStreamOpenFlags.NonRealTime">
            <summary>
            ACM_STREAMOPENF_NONREALTIME, ACM will not consider time constraints when converting the data. By default, the driver will attempt to convert the data in real time. For some formats, specifying this flag might improve the audio quality or other characteristics.
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmStreamOpenFlags.CallbackTypeMask">
            <summary>
            CALLBACK_TYPEMASK, callback type mask
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmStreamOpenFlags.CallbackNull">
            <summary>
            CALLBACK_NULL, no callback
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmStreamOpenFlags.CallbackWindow">
            <summary>
            CALLBACK_WINDOW, dwCallback is a HWND
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmStreamOpenFlags.CallbackTask">
            <summary>
            CALLBACK_TASK, dwCallback is a HTASK
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmStreamOpenFlags.CallbackFunction">
            <summary>
            CALLBACK_FUNCTION, dwCallback is a FARPROC
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmStreamOpenFlags.CallbackThread">
            <summary>
            CALLBACK_THREAD, thread ID replaces 16 bit task
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmStreamOpenFlags.CallbackEvent">
            <summary>
            CALLBACK_EVENT, dwCallback is an EVENT Handle
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmStreamSizeFlags.Source">
            <summary>
            ACM_STREAMSIZEF_SOURCE
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.AcmStreamSizeFlags.Destination">
            <summary>
            ACM_STREAMSIZEF_DESTINATION
            </summary>
        </member>
        <member name="T:NAudio.Wave.Compression.WaveFilter">
            <summary>
            Summary description for WaveFilter.
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.WaveFilter.StructureSize">
            <summary>
            cbStruct
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.WaveFilter.FilterTag">
            <summary>
            dwFilterTag
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.WaveFilter.Filter">
            <summary>
            fdwFilter
            </summary>
        </member>
        <member name="F:NAudio.Wave.Compression.WaveFilter.Reserved">
            <summary>
            reserved
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.AdsrSampleProvider">
            <summary>
            ADSR sample provider allowing you to specify attack, decay, sustain and release values
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.AdsrSampleProvider.#ctor(NAudio.Wave.ISampleProvider)">
            <summary>
            Creates a new AdsrSampleProvider with default values
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.AdsrSampleProvider.AttackSeconds">
            <summary>
            Attack time in seconds
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.AdsrSampleProvider.ReleaseSeconds">
            <summary>
            Release time in seconds
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.AdsrSampleProvider.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads audio from this sample provider
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.AdsrSampleProvider.Stop">
            <summary>
            Enters the Release phase
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.AdsrSampleProvider.WaveFormat">
            <summary>
            The output WaveFormat
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.ConcatenatingSampleProvider">
            <summary>
            Sample Provider to concatenate multiple sample providers together
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.ConcatenatingSampleProvider.#ctor(System.Collections.Generic.IEnumerable{NAudio.Wave.ISampleProvider})">
            <summary>
            Creates a new ConcatenatingSampleProvider
            </summary>
            <param name="providers">The source providers to play one after the other. Must all share the same sample rate and channel count</param>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.ConcatenatingSampleProvider.WaveFormat">
            <summary>
            The WaveFormat of this Sample Provider
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.ConcatenatingSampleProvider.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Read Samples from this sample provider
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.FadeInOutSampleProvider">
            <summary>
            Sample Provider to allow fading in and out
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.FadeInOutSampleProvider.#ctor(NAudio.Wave.ISampleProvider,System.Boolean)">
            <summary>
            Creates a new FadeInOutSampleProvider
            </summary>
            <param name="source">The source stream with the audio to be faded in or out</param>
            <param name="initiallySilent">If true, we start faded out</param>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.FadeInOutSampleProvider.BeginFadeIn(System.Double)">
            <summary>
            Requests that a fade-in begins (will start on the next call to Read)
            </summary>
            <param name="fadeDurationInMilliseconds">Duration of fade in milliseconds</param>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.FadeInOutSampleProvider.BeginFadeOut(System.Double)">
            <summary>
            Requests that a fade-out begins (will start on the next call to Read)
            </summary>
            <param name="fadeDurationInMilliseconds">Duration of fade in milliseconds</param>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.FadeInOutSampleProvider.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads samples from this sample provider
            </summary>
            <param name="buffer">Buffer to read into</param>
            <param name="offset">Offset within buffer to write to</param>
            <param name="count">Number of samples desired</param>
            <returns>Number of samples read</returns>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.FadeInOutSampleProvider.WaveFormat">
            <summary>
            WaveFormat of this SampleProvider
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.MultiplexingSampleProvider">
            <summary>
            Allows any number of inputs to be patched to outputs
            Uses could include swapping left and right channels, turning mono into stereo,
            feeding different input sources to different soundcard outputs etc
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.MultiplexingSampleProvider.#ctor(System.Collections.Generic.IEnumerable{NAudio.Wave.ISampleProvider},System.Int32)">
            <summary>
            Creates a multiplexing sample provider, allowing re-patching of input channels to different
            output channels
            </summary>
            <param name="inputs">Input sample providers. Must all be of the same sample rate, but can have any number of channels</param>
            <param name="numberOfOutputChannels">Desired number of output channels.</param>
        </member>
        <member name="F:NAudio.Wave.SampleProviders.MultiplexingSampleProvider.inputBuffer">
            <summary>
            persistent temporary buffer to prevent creating work for garbage collector
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.MultiplexingSampleProvider.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads samples from this sample provider
            </summary>
            <param name="buffer">Buffer to be filled with sample data</param>
            <param name="offset">Offset into buffer to start writing to, usually 0</param>
            <param name="count">Number of samples required</param>
            <returns>Number of samples read</returns>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.MultiplexingSampleProvider.WaveFormat">
            <summary>
            The output WaveFormat for this SampleProvider
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.MultiplexingSampleProvider.ConnectInputToOutput(System.Int32,System.Int32)">
            <summary>
            Connects a specified input channel to an output channel
            </summary>
            <param name="inputChannel">Input Channel index (zero based). Must be less than InputChannelCount</param>
            <param name="outputChannel">Output Channel index (zero based). Must be less than OutputChannelCount</param>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.MultiplexingSampleProvider.InputChannelCount">
            <summary>
            The number of input channels. Note that this is not the same as the number of input wave providers. If you pass in
            one stereo and one mono input provider, the number of input channels is three.
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.MultiplexingSampleProvider.OutputChannelCount">
            <summary>
            The number of output channels, as specified in the constructor.
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.OffsetSampleProvider">
            <summary>
            Allows you to:
            1. insert a pre-delay of silence before the source begins
            2. skip over a certain amount of the beginning of the source
            3. only play a set amount from the source
            4. insert silence at the end after the source is complete
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.OffsetSampleProvider.DelayBySamples">
            <summary>
            Number of samples of silence to insert before playing source
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.OffsetSampleProvider.DelayBy">
            <summary>
            Amount of silence to insert before playing
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.OffsetSampleProvider.SkipOverSamples">
            <summary>
            Number of samples in source to discard
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.OffsetSampleProvider.SkipOver">
            <summary>
            Amount of audio to skip over from the source before beginning playback
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.OffsetSampleProvider.TakeSamples">
            <summary>
            Number of samples to read from source (if 0, then read it all)
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.OffsetSampleProvider.Take">
            <summary>
            Amount of audio to take from the source (TimeSpan.Zero means play to end)
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.OffsetSampleProvider.LeadOutSamples">
            <summary>
            Number of samples of silence to insert after playing source
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.OffsetSampleProvider.LeadOut">
            <summary>
            Amount of silence to insert after playing source
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.OffsetSampleProvider.#ctor(NAudio.Wave.ISampleProvider)">
            <summary>
            Creates a new instance of offsetSampleProvider
            </summary>
            <param name="sourceProvider">The Source Sample Provider to read from</param>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.OffsetSampleProvider.WaveFormat">
            <summary>
            The WaveFormat of this SampleProvider
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.OffsetSampleProvider.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads from this sample provider
            </summary>
            <param name="buffer">Sample buffer</param>
            <param name="offset">Offset within sample buffer to read to</param>
            <param name="count">Number of samples required</param>
            <returns>Number of samples read</returns>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.Pcm32BitToSampleProvider">
            <summary>
            Converts an IWaveProvider containing 32 bit PCM to an
            ISampleProvider
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.Pcm32BitToSampleProvider.#ctor(NAudio.Wave.IWaveProvider)">
            <summary>
            Initialises a new instance of Pcm32BitToSampleProvider
            </summary>
            <param name="source">Source Wave Provider</param>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.Pcm32BitToSampleProvider.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads floating point samples from this sample provider
            </summary>
            <param name="buffer">sample buffer</param>
            <param name="offset">offset within sample buffer to write to</param>
            <param name="count">number of samples required</param>
            <returns>number of samples provided</returns>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.SampleProviderConverters">
            <summary>
            Utility class for converting to SampleProvider
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SampleProviderConverters.ConvertWaveProviderIntoSampleProvider(NAudio.Wave.IWaveProvider)">
            <summary>
            Helper function to go from IWaveProvider to a SampleProvider
            Must already be PCM or IEEE float
            </summary>
            <param name="waveProvider">The WaveProvider to convert</param>
            <returns>A sample provider</returns>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.SampleToWaveProvider16">
            <summary>
            Converts a sample provider to 16 bit PCM, optionally clipping and adjusting volume along the way
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SampleToWaveProvider16.#ctor(NAudio.Wave.ISampleProvider)">
            <summary>
            Converts from an ISampleProvider (IEEE float) to a 16 bit PCM IWaveProvider.
            Number of channels and sample rate remain unchanged.
            </summary>
            <param name="sourceProvider">The input source provider</param>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SampleToWaveProvider16.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads bytes from this wave stream
            </summary>
            <param name="destBuffer">The destination buffer</param>
            <param name="offset">Offset into the destination buffer</param>
            <param name="numBytes">Number of bytes read</param>
            <returns>Number of bytes read.</returns>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.SampleToWaveProvider16.WaveFormat">
            <summary>
            <see cref="P:NAudio.Wave.IWaveProvider.WaveFormat"/>
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.SampleToWaveProvider16.Volume">
            <summary>
            Volume of this channel. 1.0 = full scale
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.SampleToWaveProvider24">
            <summary>
            Converts a sample provider to 24 bit PCM, optionally clipping and adjusting volume along the way
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SampleToWaveProvider24.#ctor(NAudio.Wave.ISampleProvider)">
            <summary>
            Converts from an ISampleProvider (IEEE float) to a 16 bit PCM IWaveProvider.
            Number of channels and sample rate remain unchanged.
            </summary>
            <param name="sourceProvider">The input source provider</param>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SampleToWaveProvider24.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads bytes from this wave stream, clipping if necessary
            </summary>
            <param name="destBuffer">The destination buffer</param>
            <param name="offset">Offset into the destination buffer</param>
            <param name="numBytes">Number of bytes read</param>
            <returns>Number of bytes read.</returns>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.SampleToWaveProvider24.WaveFormat">
            <summary>
            The Format of this IWaveProvider
            <see cref="P:NAudio.Wave.IWaveProvider.WaveFormat"/>
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.SampleToWaveProvider24.Volume">
            <summary>
            Volume of this channel. 1.0 = full scale, 0.0 to mute
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.SignalGenerator">
            <summary>
            Signal Generator
            Sin, Square, Triangle, SawTooth, White Noise, Pink Noise, Sweep.
            </summary>
            <remarks>
            Posibility to change ISampleProvider
            Example :
            ---------
            WaveOut _waveOutGene = new WaveOut();
            WaveGenerator wg = new SignalGenerator();
            wg.Type = ...
            wg.Frequency = ...
            wg ...
            _waveOutGene.Init(wg);
            _waveOutGene.Play();
            </remarks>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SignalGenerator.#ctor">
            <summary>
            Initializes a new instance for the Generator (Default :: 44.1Khz, 2 channels, Sinus, Frequency = 440, Gain = 1)
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SignalGenerator.#ctor(System.Int32,System.Int32)">
            <summary>
            Initializes a new instance for the Generator (UserDef SampleRate &amp; Channels)
            </summary>
            <param name="sampleRate">Desired sample rate</param>
            <param name="channel">Number of channels</param>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.SignalGenerator.WaveFormat">
            <summary>
            The waveformat of this WaveProvider (same as the source)
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.SignalGenerator.Frequency">
            <summary>
            Frequency for the Generator. (20.0 - 20000.0 Hz)
            Sin, Square, Triangle, SawTooth, Sweep (Start Frequency).
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.SignalGenerator.FrequencyLog">
            <summary>
            Return Log of Frequency Start (Read only)
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.SignalGenerator.FrequencyEnd">
            <summary>
            End Frequency for the Sweep Generator. (Start Frequency in Frequency)
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.SignalGenerator.FrequencyEndLog">
            <summary>
            Return Log of Frequency End (Read only)
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.SignalGenerator.Gain">
            <summary>
            Gain for the Generator. (0.0 to 1.0)
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.SignalGenerator.PhaseReverse">
            <summary>
            Channel PhaseReverse
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.SignalGenerator.Type">
            <summary>
            Type of Generator.
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.SignalGenerator.SweepLengthSecs">
            <summary>
            Length Seconds for the Sweep Generator.
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SignalGenerator.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads from this provider.
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SignalGenerator.NextRandomTwo">
            <summary>
            Private :: Random for WhiteNoise &amp; Pink Noise (Value form -1 to 1)
            </summary>
            <returns>Random value from -1 to +1</returns>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.SignalGeneratorType">
            <summary>
            Signal Generator type
            </summary>
        </member>
        <member name="F:NAudio.Wave.SampleProviders.SignalGeneratorType.Pink">
            <summary>
            Pink noise
            </summary>
        </member>
        <member name="F:NAudio.Wave.SampleProviders.SignalGeneratorType.White">
            <summary>
            White noise
            </summary>
        </member>
        <member name="F:NAudio.Wave.SampleProviders.SignalGeneratorType.Sweep">
            <summary>
            Sweep
            </summary>
        </member>
        <member name="F:NAudio.Wave.SampleProviders.SignalGeneratorType.Sin">
            <summary>
            Sine wave
            </summary>
        </member>
        <member name="F:NAudio.Wave.SampleProviders.SignalGeneratorType.Square">
            <summary>
            Square wave
            </summary>
        </member>
        <member name="F:NAudio.Wave.SampleProviders.SignalGeneratorType.Triangle">
            <summary>
            Triangle Wave
            </summary>
        </member>
        <member name="F:NAudio.Wave.SampleProviders.SignalGeneratorType.SawTooth">
            <summary>
            Sawtooth wave
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.SmbPitchShiftingSampleProvider">
             <summary>
             Author: Freefall
             Date: 05.08.16
             Based on: the port of Stephan M. Bernsee´s pitch shifting class
             Port site: https://sites.google.com/site/mikescoderama/pitch-shifting
             Test application and github site: https://github.com/Freefall63/NAudio-Pitchshifter
             
             NOTE: I strongly advice to add a Limiter for post-processing.
             For my needs the FastAttackCompressor1175 provides acceptable results:
             https://github.com/Jiyuu/SkypeFX/blob/master/JSNet/FastAttackCompressor1175.cs
            
             UPDATE: Added a simple Limiter based on the pydirac implementation.
             https://github.com/echonest/remix/blob/master/external/pydirac225/source/Dirac_LE.cpp
             
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SmbPitchShiftingSampleProvider.#ctor(NAudio.Wave.ISampleProvider)">
            <summary>
            Creates a new SMB Pitch Shifting Sample Provider with default settings
            </summary>
            <param name="sourceProvider">Source provider</param>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SmbPitchShiftingSampleProvider.#ctor(NAudio.Wave.ISampleProvider,System.Int32,System.Int64,System.Single)">
            <summary>
            Creates a new SMB Pitch Shifting Sample Provider with custom settings
            </summary>
            <param name="sourceProvider">Source provider</param>
            <param name="fftSize">FFT Size (any power of two &lt;= 4096: 4096, 2048, 1024, 512, ...)</param>
            <param name="osamp">Oversampling (number of overlapping windows)</param>
            <param name="initialPitch">Initial pitch (0.5f = octave down, 1.0f = normal, 2.0f = octave up)</param>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SmbPitchShiftingSampleProvider.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Read from this sample provider
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.SmbPitchShiftingSampleProvider.WaveFormat">
            <summary>
            WaveFormat
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.SmbPitchShiftingSampleProvider.PitchFactor">
            <summary>
            Pitch Factor (0.5f = octave down, 1.0f = normal, 2.0f = octave up)
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.StereoToMonoSampleProvider">
            <summary>
            Takes a stereo input and turns it to mono
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.StereoToMonoSampleProvider.#ctor(NAudio.Wave.ISampleProvider)">
            <summary>
            Creates a new mono ISampleProvider based on a stereo input
            </summary>
            <param name="sourceProvider">Stereo 16 bit PCM input</param>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.StereoToMonoSampleProvider.LeftVolume">
            <summary>
            1.0 to mix the mono source entirely to the left channel
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.StereoToMonoSampleProvider.RightVolume">
            <summary>
            1.0 to mix the mono source entirely to the right channel
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.StereoToMonoSampleProvider.WaveFormat">
            <summary>
            Output Wave Format
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.StereoToMonoSampleProvider.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads bytes from this SampleProvider
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.WaveToSampleProvider64">
            <summary>
            Helper class turning an already 64 bit floating point IWaveProvider
            into an ISampleProvider - hopefully not needed for most applications
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.WaveToSampleProvider64.#ctor(NAudio.Wave.IWaveProvider)">
            <summary>
            Initializes a new instance of the WaveToSampleProvider class
            </summary>
            <param name="source">Source wave provider, must be IEEE float</param>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.WaveToSampleProvider64.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads from this provider
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.WdlResamplingSampleProvider">
            <summary>
            Fully managed resampling sample provider, based on the WDL Resampler
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.WdlResamplingSampleProvider.#ctor(NAudio.Wave.ISampleProvider,System.Int32)">
            <summary>
            Constructs a new resampler
            </summary>
            <param name="source">Source to resample</param>
            <param name="newSampleRate">Desired output sample rate</param>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.WdlResamplingSampleProvider.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads from this sample provider
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.WdlResamplingSampleProvider.WaveFormat">
            <summary>
            Output WaveFormat
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.ISampleChunkConverter">
            <summary>
            Sample provider interface to make WaveChannel32 extensible
            Still a bit ugly, hence internal at the moment - and might even make these into
            bit depth converting WaveProviders
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.MixingSampleProvider">
            <summary>
            A sample provider mixer, allowing inputs to be added and removed
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.MixingSampleProvider.#ctor(NAudio.Wave.WaveFormat)">
            <summary>
            Creates a new MixingSampleProvider, with no inputs, but a specified WaveFormat
            </summary>
            <param name="waveFormat">The WaveFormat of this mixer. All inputs must be in this format</param>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.MixingSampleProvider.#ctor(System.Collections.Generic.IEnumerable{NAudio.Wave.ISampleProvider})">
            <summary>
            Creates a new MixingSampleProvider, based on the given inputs
            </summary>
            <param name="sources">Mixer inputs - must all have the same waveformat, and must
            all be of the same WaveFormat. There must be at least one input</param>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.MixingSampleProvider.MixerInputs">
            <summary>
            Returns the mixer inputs (read-only - use AddMixerInput to add an input
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.MixingSampleProvider.ReadFully">
            <summary>
            When set to true, the Read method always returns the number
            of samples requested, even if there are no inputs, or if the
            current inputs reach their end. Setting this to true effectively
            makes this a never-ending sample provider, so take care if you plan
            to write it out to a file.
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.MixingSampleProvider.AddMixerInput(NAudio.Wave.IWaveProvider)">
            <summary>
            Adds a WaveProvider as a Mixer input.
            Must be PCM or IEEE float already
            </summary>
            <param name="mixerInput">IWaveProvider mixer input</param>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.MixingSampleProvider.AddMixerInput(NAudio.Wave.ISampleProvider)">
            <summary>
            Adds a new mixer input
            </summary>
            <param name="mixerInput">Mixer input</param>
        </member>
        <member name="E:NAudio.Wave.SampleProviders.MixingSampleProvider.MixerInputEnded">
            <summary>
            Raised when a mixer input has been removed because it has ended
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.MixingSampleProvider.RemoveMixerInput(NAudio.Wave.ISampleProvider)">
            <summary>
            Removes a mixer input
            </summary>
            <param name="mixerInput">Mixer input to remove</param>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.MixingSampleProvider.RemoveAllMixerInputs">
            <summary>
            Removes all mixer inputs
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.MixingSampleProvider.WaveFormat">
            <summary>
            The output WaveFormat of this sample provider
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.MixingSampleProvider.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads samples from this sample provider
            </summary>
            <param name="buffer">Sample buffer</param>
            <param name="offset">Offset into sample buffer</param>
            <param name="count">Number of samples required</param>
            <returns>Number of samples read</returns>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.SampleProviderEventArgs">
            <summary>
            SampleProvider event args
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SampleProviderEventArgs.#ctor(NAudio.Wave.ISampleProvider)">
            <summary>
            Constructs a new SampleProviderEventArgs
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.SampleProviderEventArgs.SampleProvider">
            <summary>
            The Sample Provider
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.PanningSampleProvider">
            <summary>
            Converts a mono sample provider to stereo, with a customisable pan strategy
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.PanningSampleProvider.#ctor(NAudio.Wave.ISampleProvider)">
            <summary>
            Initialises a new instance of the PanningSampleProvider
            </summary>
            <param name="source">Source sample provider, must be mono</param>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.PanningSampleProvider.Pan">
            <summary>
            Pan value, must be between -1 (left) and 1 (right)
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.PanningSampleProvider.PanStrategy">
            <summary>
            The pan strategy currently in use
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.PanningSampleProvider.WaveFormat">
            <summary>
            The WaveFormat of this sample provider
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.PanningSampleProvider.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads samples from this sample provider
            </summary>
            <param name="buffer">Sample buffer</param>
            <param name="offset">Offset into sample buffer</param>
            <param name="count">Number of samples desired</param>
            <returns>Number of samples read</returns>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.StereoSamplePair">
            <summary>
            Pair of floating point values, representing samples or multipliers
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.StereoSamplePair.Left">
            <summary>
            Left value
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.StereoSamplePair.Right">
            <summary>
            Right value
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.IPanStrategy">
            <summary>
            Required Interface for a Panning Strategy
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.IPanStrategy.GetMultipliers(System.Single)">
            <summary>
            Gets the left and right multipliers for a given pan value
            </summary>
            <param name="pan">Pan value from -1 to 1</param>
            <returns>Left and right multipliers in a stereo sample pair</returns>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.StereoBalanceStrategy">
            <summary>
            Simplistic "balance" control - treating the mono input as if it was stereo
            In the centre, both channels full volume. Opposite channel decays linearly 
            as balance is turned to to one side
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.StereoBalanceStrategy.GetMultipliers(System.Single)">
            <summary>
            Gets the left and right channel multipliers for this pan value
            </summary>
            <param name="pan">Pan value, between -1 and 1</param>
            <returns>Left and right multipliers</returns>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.SquareRootPanStrategy">
            <summary>
            Square Root Pan, thanks to Yuval Naveh
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SquareRootPanStrategy.GetMultipliers(System.Single)">
            <summary>
            Gets the left and right channel multipliers for this pan value
            </summary>
            <param name="pan">Pan value, between -1 and 1</param>
            <returns>Left and right multipliers</returns>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.SinPanStrategy">
            <summary>
            Sinus Pan, thanks to Yuval Naveh
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SinPanStrategy.GetMultipliers(System.Single)">
            <summary>
            Gets the left and right channel multipliers for this pan value
            </summary>
            <param name="pan">Pan value, between -1 and 1</param>
            <returns>Left and right multipliers</returns>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.LinearPanStrategy">
            <summary>
            Linear Pan
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.LinearPanStrategy.GetMultipliers(System.Single)">
            <summary>
            Gets the left and right channel multipliers for this pan value
            </summary>
            <param name="pan">Pan value, between -1 and 1</param>
            <returns>Left and right multipliers</returns>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.MeteringSampleProvider">
            <summary>
            Simple SampleProvider that passes through audio unchanged and raises
            an event every n samples with the maximum sample value from the period
            for metering purposes
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.MeteringSampleProvider.SamplesPerNotification">
            <summary>
            Number of Samples per notification
            </summary>
        </member>
        <member name="E:NAudio.Wave.SampleProviders.MeteringSampleProvider.StreamVolume">
            <summary>
            Raised periodically to inform the user of the max volume
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.MeteringSampleProvider.#ctor(NAudio.Wave.ISampleProvider)">
            <summary>
            Initialises a new instance of MeteringSampleProvider that raises 10 stream volume
            events per second
            </summary>
            <param name="source">Source sample provider</param>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.MeteringSampleProvider.#ctor(NAudio.Wave.ISampleProvider,System.Int32)">
            <summary>
            Initialises a new instance of MeteringSampleProvider 
            </summary>
            <param name="source">source sampler provider</param>
            <param name="samplesPerNotification">Number of samples between notifications</param>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.MeteringSampleProvider.WaveFormat">
            <summary>
            The WaveFormat of this sample provider
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.MeteringSampleProvider.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads samples from this Sample Provider
            </summary>
            <param name="buffer">Sample buffer</param>
            <param name="offset">Offset into sample buffer</param>
            <param name="count">Number of samples required</param>
            <returns>Number of samples read</returns>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.StreamVolumeEventArgs">
            <summary>
            Event args for aggregated stream volume
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.StreamVolumeEventArgs.MaxSampleValues">
            <summary>
            Max sample values array (one for each channel)
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.NotifyingSampleProvider">
            <summary>
            Simple class that raises an event on every sample
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.NotifyingSampleProvider.#ctor(NAudio.Wave.ISampleProvider)">
            <summary>
            Initializes a new instance of NotifyingSampleProvider
            </summary>
            <param name="source">Source Sample Provider</param>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.NotifyingSampleProvider.WaveFormat">
            <summary>
            WaveFormat
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.NotifyingSampleProvider.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads samples from this sample provider
            </summary>
            <param name="buffer">Sample buffer</param>
            <param name="offset">Offset into sample buffer</param>
            <param name="sampleCount">Number of samples desired</param>
            <returns>Number of samples read</returns>
        </member>
        <member name="E:NAudio.Wave.SampleProviders.NotifyingSampleProvider.Sample">
            <summary>
            Sample notifier
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.VolumeSampleProvider">
            <summary>
            Very simple sample provider supporting adjustable gain
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.VolumeSampleProvider.#ctor(NAudio.Wave.ISampleProvider)">
            <summary>
            Initializes a new instance of VolumeSampleProvider
            </summary>
            <param name="source">Source Sample Provider</param>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.VolumeSampleProvider.WaveFormat">
            <summary>
            WaveFormat
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.VolumeSampleProvider.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads samples from this sample provider
            </summary>
            <param name="buffer">Sample buffer</param>
            <param name="offset">Offset into sample buffer</param>
            <param name="sampleCount">Number of samples desired</param>
            <returns>Number of samples read</returns>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.VolumeSampleProvider.Volume">
            <summary>
            Allows adjusting the volume, 1.0f = full volume
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.SampleProviderConverterBase">
            <summary>
            Helper base class for classes converting to ISampleProvider
            </summary>
        </member>
        <member name="F:NAudio.Wave.SampleProviders.SampleProviderConverterBase.source">
            <summary>
            Source Wave Provider
            </summary>
        </member>
        <member name="F:NAudio.Wave.SampleProviders.SampleProviderConverterBase.sourceBuffer">
            <summary>
            Source buffer (to avoid constantly creating small buffers during playback)
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SampleProviderConverterBase.#ctor(NAudio.Wave.IWaveProvider)">
            <summary>
            Initialises a new instance of SampleProviderConverterBase
            </summary>
            <param name="source">Source Wave provider</param>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.SampleProviderConverterBase.WaveFormat">
            <summary>
            Wave format of this wave provider
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SampleProviderConverterBase.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads samples from the source wave provider
            </summary>
            <param name="buffer">Sample buffer</param>
            <param name="offset">Offset into sample buffer</param>
            <param name="count">Number of samples required</param>
            <returns>Number of samples read</returns>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SampleProviderConverterBase.EnsureSourceBuffer(System.Int32)">
            <summary>
            Ensure the source buffer exists and is big enough
            </summary>
            <param name="sourceBytesRequired">Bytes required</param>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.SampleToWaveProvider">
            <summary>
            Helper class for when you need to convert back to an IWaveProvider from
            an ISampleProvider. Keeps it as IEEE float
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SampleToWaveProvider.#ctor(NAudio.Wave.ISampleProvider)">
            <summary>
            Initializes a new instance of the WaveProviderFloatToWaveProvider class
            </summary>
            <param name="source">Source wave provider</param>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SampleToWaveProvider.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads from this provider
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.SampleToWaveProvider.WaveFormat">
            <summary>
            The waveformat of this WaveProvider (same as the source)
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.MonoToStereoSampleProvider">
            <summary>
            No nonsense mono to stereo provider, no volume adjustment,
            just copies input to left and right. 
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.MonoToStereoSampleProvider.#ctor(NAudio.Wave.ISampleProvider)">
            <summary>
            Initializes a new instance of MonoToStereoSampleProvider
            </summary>
            <param name="source">Source sample provider</param>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.MonoToStereoSampleProvider.WaveFormat">
            <summary>
            WaveFormat of this provider
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.MonoToStereoSampleProvider.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads samples from this provider
            </summary>
            <param name="buffer">Sample buffer</param>
            <param name="offset">Offset into sample buffer</param>
            <param name="count">Number of samples required</param>
            <returns>Number of samples read</returns>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.MonoToStereoSampleProvider.LeftVolume">
            <summary>
            Multiplier for left channel (default is 1.0)
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.MonoToStereoSampleProvider.RightVolume">
            <summary>
            Multiplier for right channel (default is 1.0)
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.WaveToSampleProvider">
            <summary>
            Helper class turning an already 32 bit floating point IWaveProvider
            into an ISampleProvider - hopefully not needed for most applications
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.WaveToSampleProvider.#ctor(NAudio.Wave.IWaveProvider)">
            <summary>
            Initializes a new instance of the WaveToSampleProvider class
            </summary>
            <param name="source">Source wave provider, must be IEEE float</param>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.WaveToSampleProvider.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads from this provider
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.Pcm16BitToSampleProvider">
            <summary>
            Converts an IWaveProvider containing 16 bit PCM to an
            ISampleProvider
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.Pcm16BitToSampleProvider.#ctor(NAudio.Wave.IWaveProvider)">
            <summary>
            Initialises a new instance of Pcm16BitToSampleProvider
            </summary>
            <param name="source">Source wave provider</param>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.Pcm16BitToSampleProvider.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads samples from this sample provider
            </summary>
            <param name="buffer">Sample buffer</param>
            <param name="offset">Offset into sample buffer</param>
            <param name="count">Samples required</param>
            <returns>Number of samples read</returns>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.Pcm24BitToSampleProvider">
            <summary>
            Converts an IWaveProvider containing 24 bit PCM to an
            ISampleProvider
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.Pcm24BitToSampleProvider.#ctor(NAudio.Wave.IWaveProvider)">
            <summary>
            Initialises a new instance of Pcm24BitToSampleProvider
            </summary>
            <param name="source">Source Wave Provider</param>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.Pcm24BitToSampleProvider.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads floating point samples from this sample provider
            </summary>
            <param name="buffer">sample buffer</param>
            <param name="offset">offset within sample buffer to write to</param>
            <param name="count">number of samples required</param>
            <returns>number of samples provided</returns>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.Pcm8BitToSampleProvider">
            <summary>
            Converts an IWaveProvider containing 8 bit PCM to an
            ISampleProvider
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.Pcm8BitToSampleProvider.#ctor(NAudio.Wave.IWaveProvider)">
            <summary>
            Initialises a new instance of Pcm8BitToSampleProvider
            </summary>
            <param name="source">Source wave provider</param>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.Pcm8BitToSampleProvider.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads samples from this sample provider
            </summary>
            <param name="buffer">Sample buffer</param>
            <param name="offset">Offset into sample buffer</param>
            <param name="count">Number of samples to read</param>
            <returns>Number of samples read</returns>
        </member>
        <member name="T:NAudio.Wave.SampleProviders.SampleChannel">
            <summary>
            Utility class that takes an IWaveProvider input at any bit depth
            and exposes it as an ISampleProvider. Can turn mono inputs into stereo,
            and allows adjusting of volume
            (The eventual successor to WaveChannel32)
            This class also serves as an example of how you can link together several simple 
            Sample Providers to form a more useful class.
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SampleChannel.#ctor(NAudio.Wave.IWaveProvider)">
            <summary>
            Initialises a new instance of SampleChannel
            </summary>
            <param name="waveProvider">Source wave provider, must be PCM or IEEE</param>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SampleChannel.#ctor(NAudio.Wave.IWaveProvider,System.Boolean)">
            <summary>
            Initialises a new instance of SampleChannel
            </summary>
            <param name="waveProvider">Source wave provider, must be PCM or IEEE</param>
            <param name="forceStereo">force mono inputs to become stereo</param>
        </member>
        <member name="M:NAudio.Wave.SampleProviders.SampleChannel.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads samples from this sample provider
            </summary>
            <param name="buffer">Sample buffer</param>
            <param name="offset">Offset into sample buffer</param>
            <param name="sampleCount">Number of samples desired</param>
            <returns>Number of samples read</returns>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.SampleChannel.WaveFormat">
            <summary>
            The WaveFormat of this Sample Provider
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleProviders.SampleChannel.Volume">
            <summary>
            Allows adjusting the volume, 1.0f = full volume
            </summary>
        </member>
        <member name="E:NAudio.Wave.SampleProviders.SampleChannel.PreVolumeMeter">
            <summary>
            Raised periodically to inform the user of the max volume
            (before the volume meter)
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveExtensionMethods">
            <summary>
            Useful extension methods to make switching between WaveAndSampleProvider easier
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveExtensionMethods.ToSampleProvider(NAudio.Wave.IWaveProvider)">
            <summary>
            Converts a WaveProvider into a SampleProvider (only works for PCM)
            </summary>
            <param name="waveProvider">WaveProvider to convert</param>
            <returns></returns>
        </member>
        <member name="M:NAudio.Wave.WaveExtensionMethods.Init(NAudio.Wave.IWavePlayer,NAudio.Wave.ISampleProvider,System.Boolean)">
            <summary>
            Allows sending a SampleProvider directly to an IWavePlayer without needing to convert
            back to an IWaveProvider
            </summary>
            <param name="wavePlayer">The WavePlayer</param>
            <param name="sampleProvider"></param>
            <param name="convertTo16Bit"></param>
        </member>
        <member name="M:NAudio.Wave.WaveExtensionMethods.AsStandardWaveFormat(NAudio.Wave.WaveFormat)">
            <summary>
            Turns WaveFormatExtensible into a standard waveformat if possible
            </summary>
            <param name="waveFormat">Input wave format</param>
            <returns>A standard PCM or IEEE waveformat, or the original waveformat</returns>
        </member>
        <member name="M:NAudio.Wave.WaveExtensionMethods.ToWaveProvider(NAudio.Wave.ISampleProvider)">
            <summary>
            Converts a ISampleProvider to a IWaveProvider but still 32 bit float
            </summary>
            <param name="sampleProvider">SampleProvider to convert</param>
            <returns>An IWaveProvider</returns>
        </member>
        <member name="M:NAudio.Wave.WaveExtensionMethods.ToWaveProvider16(NAudio.Wave.ISampleProvider)">
            <summary>
            Converts a ISampleProvider to a IWaveProvider but and convert to 16 bit
            </summary>
            <param name="sampleProvider">SampleProvider to convert</param>
            <returns>A 16 bit IWaveProvider</returns>
        </member>
        <member name="M:NAudio.Wave.WaveExtensionMethods.FollowedBy(NAudio.Wave.ISampleProvider,NAudio.Wave.ISampleProvider)">
            <summary>
            Concatenates one Sample Provider on the end of another
            </summary>
            <param name="sampleProvider">The sample provider to play first</param>
            <param name="next">The sample provider to play next</param>
            <returns>A single sampleprovider to play one after the other</returns>
        </member>
        <member name="M:NAudio.Wave.WaveExtensionMethods.FollowedBy(NAudio.Wave.ISampleProvider,System.TimeSpan,NAudio.Wave.ISampleProvider)">
            <summary>
            Concatenates one Sample Provider on the end of another with silence inserted
            </summary>
            <param name="sampleProvider">The sample provider to play first</param>
            <param name="silenceDuration">Silence duration to insert between the two</param>
            <param name="next">The sample provider to play next</param>
            <returns>A single sample provider</returns>
        </member>
        <member name="M:NAudio.Wave.WaveExtensionMethods.Skip(NAudio.Wave.ISampleProvider,System.TimeSpan)">
            <summary>
            Skips over a specified amount of time (by consuming source stream)
            </summary>
            <param name="sampleProvider">Source sample provider</param>
            <param name="skipDuration">Duration to skip over</param>
            <returns>A sample provider that skips over the specified amount of time</returns>
        </member>
        <member name="M:NAudio.Wave.WaveExtensionMethods.Take(NAudio.Wave.ISampleProvider,System.TimeSpan)">
            <summary>
            Takes a specified amount of time from the source stream
            </summary>
            <param name="sampleProvider">Source sample provider</param>
            <param name="takeDuration">Duration to take</param>
            <returns>A sample provider that reads up to the specified amount of time</returns>
        </member>
        <member name="M:NAudio.Wave.WaveExtensionMethods.ToMono(NAudio.Wave.ISampleProvider,System.Single,System.Single)">
            <summary>
            Converts a Stereo Sample Provider to mono, allowing mixing of channel volume
            </summary>
            <param name="sourceProvider">Stereo Source Provider</param>
            <param name="leftVol">Amount of left channel to mix in (0 = mute, 1 = full, 0.5 for mixing half from each channel)</param>
            <param name="rightVol">Amount of right channel to mix in (0 = mute, 1 = full, 0.5 for mixing half from each channel)</param>
            <returns>A mono SampleProvider</returns>
        </member>
        <member name="M:NAudio.Wave.WaveExtensionMethods.ToStereo(NAudio.Wave.ISampleProvider,System.Single,System.Single)">
            <summary>
            Converts a Mono ISampleProvider to stereo
            </summary>
            <param name="sourceProvider">Mono Source Provider</param>
            <param name="leftVol">Amount to mix to left channel (1.0 is full volume)</param>
            <param name="rightVol">Amount to mix to right channel (1.0 is full volume)</param>
            <returns></returns>
        </member>
        <member name="T:NAudio.Wave.WaveInEvent">
            <summary>
            Recording using waveIn api with event callbacks.
            Use this for recording in non-gui applications
            Events are raised as recorded buffers are made available
            </summary>
        </member>
        <member name="E:NAudio.Wave.WaveInEvent.DataAvailable">
            <summary>
            Indicates recorded data is available 
            </summary>
        </member>
        <member name="E:NAudio.Wave.WaveInEvent.RecordingStopped">
            <summary>
            Indicates that all recorded data has now been received.
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveInEvent.#ctor">
            <summary>
            Prepares a Wave input device for recording
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveInEvent.DeviceCount">
            <summary>
            Returns the number of Wave In devices available in the system
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveInEvent.GetCapabilities(System.Int32)">
            <summary>
            Retrieves the capabilities of a waveIn device
            </summary>
            <param name="devNumber">Device to test</param>
            <returns>The WaveIn device capabilities</returns>
        </member>
        <member name="P:NAudio.Wave.WaveInEvent.BufferMilliseconds">
            <summary>
            Milliseconds for the buffer. Recommended value is 100ms
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveInEvent.NumberOfBuffers">
            <summary>
            Number of Buffers to use (usually 2 or 3)
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveInEvent.DeviceNumber">
            <summary>
            The device number to use
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveInEvent.StartRecording">
            <summary>
            Start recording
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveInEvent.StopRecording">
            <summary>
            Stop recording
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveInEvent.WaveFormat">
            <summary>
            WaveFormat we are recording in
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveInEvent.Dispose(System.Boolean)">
            <summary>
            Dispose pattern
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveInEvent.GetMixerLine">
            <summary>
            Microphone Level
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveInEvent.Dispose">
            <summary>
            Dispose method
            </summary>
        </member>
        <member name="T:NAudio.Wave.ChannelMode">
            <summary>
            Channel Mode
            </summary>
        </member>
        <member name="F:NAudio.Wave.ChannelMode.Stereo">
            <summary>
            Stereo
            </summary>
        </member>
        <member name="F:NAudio.Wave.ChannelMode.JointStereo">
            <summary>
            Joint Stereo
            </summary>
        </member>
        <member name="F:NAudio.Wave.ChannelMode.DualChannel">
            <summary>
            Dual Channel
            </summary>
        </member>
        <member name="F:NAudio.Wave.ChannelMode.Mono">
            <summary>
            Mono
            </summary>
        </member>
        <member name="T:NAudio.Wave.Id3v2Tag">
            <summary>
            An ID3v2 Tag
            </summary>
        </member>
        <member name="M:NAudio.Wave.Id3v2Tag.ReadTag(System.IO.Stream)">
            <summary>
            Reads an ID3v2 tag from a stream
            </summary>
        </member>
        <member name="M:NAudio.Wave.Id3v2Tag.Create(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}})">
            <summary>
            Creates a new ID3v2 tag from a collection of key-value pairs.
            </summary>
            <param name="tags">A collection of key-value pairs containing the tags to include in the ID3v2 tag.</param>
            <returns>A new ID3v2 tag</returns>
        </member>
        <member name="M:NAudio.Wave.Id3v2Tag.FrameSizeToBytes(System.Int32)">
            <summary>
            Convert the frame size to a byte array.
            </summary>
            <param name="n">The frame body size.</param>
            <returns></returns>
        </member>
        <member name="M:NAudio.Wave.Id3v2Tag.CreateId3v2Frame(System.String,System.String)">
            <summary>
            Creates an ID3v2 frame for the given key-value pair.
            </summary>
            <param name="key"></param>
            <param name="value"></param>
            <returns></returns>
        </member>
        <member name="M:NAudio.Wave.Id3v2Tag.GetId3TagHeaderSize(System.Int32)">
            <summary>
            Gets the Id3v2 Header size. The size is encoded so that only 7 bits per byte are actually used.
            </summary>
            <param name="size"></param>
            <returns></returns>
        </member>
        <member name="M:NAudio.Wave.Id3v2Tag.CreateId3v2TagHeader(System.Collections.Generic.IEnumerable{System.Byte[]})">
            <summary>
            Creates the Id3v2 tag header and returns is as a byte array.
            </summary>
            <param name="frames">The Id3v2 frames that will be included in the file. This is used to calculate the ID3v2 tag size.</param>
            <returns></returns>
        </member>
        <member name="M:NAudio.Wave.Id3v2Tag.CreateId3v2TagStream(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}})">
            <summary>
            Creates the Id3v2 tag for the given key-value pairs and returns it in the a stream.
            </summary>
            <param name="tags"></param>
            <returns></returns>
        </member>
        <member name="P:NAudio.Wave.Id3v2Tag.RawData">
            <summary>
            Raw data from this tag
            </summary>
        </member>
        <member name="T:NAudio.Wave.IMp3FrameDecompressor">
            <summary>
            Interface for MP3 frame by frame decoder
            </summary>
        </member>
        <member name="M:NAudio.Wave.IMp3FrameDecompressor.DecompressFrame(NAudio.Wave.Mp3Frame,System.Byte[],System.Int32)">
            <summary>
            Decompress a single MP3 frame
            </summary>
            <param name="frame">Frame to decompress</param>
            <param name="dest">Output buffer</param>
            <param name="destOffset">Offset within output buffer</param>
            <returns>Bytes written to output buffer</returns>
        </member>
        <member name="M:NAudio.Wave.IMp3FrameDecompressor.Reset">
            <summary>
            Tell the decoder that we have repositioned
            </summary>
        </member>
        <member name="P:NAudio.Wave.IMp3FrameDecompressor.OutputFormat">
            <summary>
            PCM format that we are converting into
            </summary>
        </member>
        <member name="T:NAudio.Wave.Mp3Frame">
            <summary>
            Represents an MP3 Frame
            </summary>
        </member>
        <member name="M:NAudio.Wave.Mp3Frame.LoadFromStream(System.IO.Stream)">
            <summary>
            Reads an MP3 frame from a stream
            </summary>
            <param name="input">input stream</param>
            <returns>A valid MP3 frame, or null if none found</returns>
        </member>
        <member name="M:NAudio.Wave.Mp3Frame.LoadFromStream(System.IO.Stream,System.Boolean)">
            <summary>Reads an MP3Frame from a stream</summary>
            <remarks>http://mpgedit.org/mpgedit/mpeg_format/mpeghdr.htm has some good info
            also see http://www.codeproject.com/KB/audio-video/mpegaudioinfo.aspx
            </remarks>
            <returns>A valid MP3 frame, or null if none found</returns>
        </member>
        <member name="M:NAudio.Wave.Mp3Frame.#ctor">
            <summary>
            Constructs an MP3 frame
            </summary>
        </member>
        <member name="M:NAudio.Wave.Mp3Frame.IsValidHeader(System.Byte[],NAudio.Wave.Mp3Frame)">
            <summary>
            checks if the four bytes represent a valid header,
            if they are, will parse the values into Mp3Frame
            </summary>
        </member>
        <member name="P:NAudio.Wave.Mp3Frame.SampleRate">
            <summary>
            Sample rate of this frame
            </summary>
        </member>
        <member name="P:NAudio.Wave.Mp3Frame.FrameLength">
            <summary>
            Frame length in bytes
            </summary>
        </member>
        <member name="P:NAudio.Wave.Mp3Frame.BitRate">
            <summary>
            Bit Rate
            </summary>
        </member>
        <member name="P:NAudio.Wave.Mp3Frame.RawData">
            <summary>
            Raw frame data (includes header bytes)
            </summary>
        </member>
        <member name="P:NAudio.Wave.Mp3Frame.MpegVersion">
            <summary>
            MPEG Version
            </summary>
        </member>
        <member name="P:NAudio.Wave.Mp3Frame.MpegLayer">
            <summary>
            MPEG Layer
            </summary>
        </member>
        <member name="P:NAudio.Wave.Mp3Frame.ChannelMode">
            <summary>
            Channel Mode
            </summary>
        </member>
        <member name="P:NAudio.Wave.Mp3Frame.SampleCount">
            <summary>
            The number of samples in this frame
            </summary>
        </member>
        <member name="P:NAudio.Wave.Mp3Frame.ChannelExtension">
            <summary>
            The channel extension bits
            </summary>
        </member>
        <member name="P:NAudio.Wave.Mp3Frame.BitRateIndex">
            <summary>
            The bitrate index (directly from the header)
            </summary>
        </member>
        <member name="P:NAudio.Wave.Mp3Frame.Copyright">
            <summary>
            Whether the Copyright bit is set
            </summary>
        </member>
        <member name="P:NAudio.Wave.Mp3Frame.CrcPresent">
            <summary>
            Whether a CRC is present
            </summary>
        </member>
        <member name="P:NAudio.Wave.Mp3Frame.FileOffset">
            <summary>
            Not part of the MP3 frame itself - indicates where in the stream we found this header
            </summary>
        </member>
        <member name="T:NAudio.Wave.AcmMp3FrameDecompressor">
            <summary>
            MP3 Frame Decompressor using ACM
            </summary>
        </member>
        <member name="M:NAudio.Wave.AcmMp3FrameDecompressor.#ctor(NAudio.Wave.WaveFormat)">
            <summary>
            Creates a new ACM frame decompressor
            </summary>
            <param name="sourceFormat">The MP3 source format</param>
        </member>
        <member name="P:NAudio.Wave.AcmMp3FrameDecompressor.OutputFormat">
            <summary>
            Output format (PCM)
            </summary>
        </member>
        <member name="M:NAudio.Wave.AcmMp3FrameDecompressor.DecompressFrame(NAudio.Wave.Mp3Frame,System.Byte[],System.Int32)">
            <summary>
            Decompresses a frame
            </summary>
            <param name="frame">The MP3 frame</param>
            <param name="dest">destination buffer</param>
            <param name="destOffset">Offset within destination buffer</param>
            <returns>Bytes written into destination buffer</returns>
        </member>
        <member name="M:NAudio.Wave.AcmMp3FrameDecompressor.Reset">
            <summary>
            Resets the MP3 Frame Decompressor after a reposition operation
            </summary>
        </member>
        <member name="M:NAudio.Wave.AcmMp3FrameDecompressor.Dispose">
            <summary>
            Disposes of this MP3 frame decompressor
            </summary>
        </member>
        <member name="M:NAudio.Wave.AcmMp3FrameDecompressor.Finalize">
            <summary>
            Finalizer ensuring that resources get released properly
            </summary>
        </member>
        <member name="T:NAudio.Wave.MpegLayer">
            <summary>
            MPEG Layer flags
            </summary>
        </member>
        <member name="F:NAudio.Wave.MpegLayer.Reserved">
            <summary>
            Reserved
            </summary>
        </member>
        <member name="F:NAudio.Wave.MpegLayer.Layer3">
            <summary>
            Layer 3
            </summary>
        </member>
        <member name="F:NAudio.Wave.MpegLayer.Layer2">
            <summary>
            Layer 2
            </summary>
        </member>
        <member name="F:NAudio.Wave.MpegLayer.Layer1">
            <summary>
            Layer 1
            </summary>
        </member>
        <member name="T:NAudio.Wave.MpegVersion">
            <summary>
            MPEG Version Flags
            </summary>
        </member>
        <member name="F:NAudio.Wave.MpegVersion.Version25">
            <summary>
            Version 2.5
            </summary>
        </member>
        <member name="F:NAudio.Wave.MpegVersion.Reserved">
            <summary>
            Reserved
            </summary>
        </member>
        <member name="F:NAudio.Wave.MpegVersion.Version2">
            <summary>
            Version 2
            </summary>
        </member>
        <member name="F:NAudio.Wave.MpegVersion.Version1">
            <summary>
            Version 1
            </summary>
        </member>
        <member name="T:NAudio.Wave.XingHeader">
            <summary>
            Represents a Xing VBR header
            </summary>
        </member>
        <member name="M:NAudio.Wave.XingHeader.LoadXingHeader(NAudio.Wave.Mp3Frame)">
            <summary>
            Load Xing Header
            </summary>
            <param name="frame">Frame</param>
            <returns>Xing Header</returns>
        </member>
        <member name="M:NAudio.Wave.XingHeader.#ctor">
            <summary>
            Sees if a frame contains a Xing header
            </summary>
        </member>
        <member name="P:NAudio.Wave.XingHeader.Frames">
            <summary>
            Number of frames
            </summary>
        </member>
        <member name="P:NAudio.Wave.XingHeader.Bytes">
            <summary>
            Number of bytes
            </summary>
        </member>
        <member name="P:NAudio.Wave.XingHeader.VbrScale">
            <summary>
            VBR Scale property
            </summary>
        </member>
        <member name="P:NAudio.Wave.XingHeader.Mp3Frame">
            <summary>
            The MP3 frame
            </summary>
        </member>
        <member name="F:NAudio.Wave.AcmMetrics.CountDrivers">
            <summary>ACM_METRIC_COUNT_DRIVERS</summary>
        </member>
        <member name="F:NAudio.Wave.AcmMetrics.CountCodecs">
            <summary>ACM_METRIC_COUNT_CODECS</summary>
        </member>
        <member name="F:NAudio.Wave.AcmMetrics.CountConverters">
            <summary>ACM_METRIC_COUNT_CONVERTERS</summary>
        </member>
        <member name="F:NAudio.Wave.AcmMetrics.CountFilters">
            <summary>ACM_METRIC_COUNT_FILTERS</summary>
        </member>
        <member name="F:NAudio.Wave.AcmMetrics.CountDisabled">
            <summary>ACM_METRIC_COUNT_DISABLED</summary>
        </member>
        <member name="F:NAudio.Wave.AcmMetrics.CountHardware">
            <summary>ACM_METRIC_COUNT_HARDWARE</summary>
        </member>
        <member name="F:NAudio.Wave.AcmMetrics.CountLocalDrivers">
            <summary>ACM_METRIC_COUNT_LOCAL_DRIVERS</summary>
        </member>
        <member name="F:NAudio.Wave.AcmMetrics.CountLocalCodecs">
            <summary>ACM_METRIC_COUNT_LOCAL_CODECS</summary>
        </member>
        <member name="F:NAudio.Wave.AcmMetrics.CountLocalConverters">
            <summary>ACM_METRIC_COUNT_LOCAL_CONVERTERS</summary>
        </member>
        <member name="F:NAudio.Wave.AcmMetrics.CountLocalFilters">
            <summary>ACM_METRIC_COUNT_LOCAL_FILTERS</summary>
        </member>
        <member name="F:NAudio.Wave.AcmMetrics.CountLocalDisabled">
            <summary>ACM_METRIC_COUNT_LOCAL_DISABLED</summary>
        </member>
        <member name="F:NAudio.Wave.AcmMetrics.HardwareWaveInput">
            <summary>ACM_METRIC_HARDWARE_WAVE_INPUT</summary>
        </member>
        <member name="F:NAudio.Wave.AcmMetrics.HardwareWaveOutput">
            <summary>ACM_METRIC_HARDWARE_WAVE_OUTPUT</summary>
        </member>
        <member name="F:NAudio.Wave.AcmMetrics.MaxSizeFormat">
            <summary>ACM_METRIC_MAX_SIZE_FORMAT</summary>
        </member>
        <member name="F:NAudio.Wave.AcmMetrics.MaxSizeFilter">
            <summary>ACM_METRIC_MAX_SIZE_FILTER</summary>
        </member>
        <member name="F:NAudio.Wave.AcmMetrics.DriverSupport">
            <summary>ACM_METRIC_DRIVER_SUPPORT</summary>
        </member>
        <member name="F:NAudio.Wave.AcmMetrics.DriverPriority">
            <summary>ACM_METRIC_DRIVER_PRIORITY</summary>
        </member>
        <member name="F:NAudio.Wave.AcmStreamConvertFlags.BlockAlign">
            <summary>
            ACM_STREAMCONVERTF_BLOCKALIGN
            </summary>
        </member>
        <member name="F:NAudio.Wave.AcmStreamConvertFlags.Start">
            <summary>
            ACM_STREAMCONVERTF_START
            </summary>
        </member>
        <member name="F:NAudio.Wave.AcmStreamConvertFlags.End">
            <summary>
            ACM_STREAMCONVERTF_END
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveHeader">
            <summary>
            WaveHeader interop structure (WAVEHDR)
            http://msdn.microsoft.com/en-us/library/dd743837%28VS.85%29.aspx
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveHeader.dataBuffer">
            <summary>pointer to locked data buffer (lpData)</summary>
        </member>
        <member name="F:NAudio.Wave.WaveHeader.bufferLength">
            <summary>length of data buffer (dwBufferLength)</summary>
        </member>
        <member name="F:NAudio.Wave.WaveHeader.bytesRecorded">
            <summary>used for input only (dwBytesRecorded)</summary>
        </member>
        <member name="F:NAudio.Wave.WaveHeader.userData">
            <summary>for client's use (dwUser)</summary>
        </member>
        <member name="F:NAudio.Wave.WaveHeader.flags">
            <summary>assorted flags (dwFlags)</summary>
        </member>
        <member name="F:NAudio.Wave.WaveHeader.loops">
            <summary>loop control counter (dwLoops)</summary>
        </member>
        <member name="F:NAudio.Wave.WaveHeader.next">
            <summary>PWaveHdr, reserved for driver (lpNext)</summary>
        </member>
        <member name="F:NAudio.Wave.WaveHeader.reserved">
            <summary>reserved for driver</summary>
        </member>
        <member name="T:NAudio.Wave.WaveHeaderFlags">
            <summary>
            Wave Header Flags enumeration
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveHeaderFlags.BeginLoop">
            <summary>
            WHDR_BEGINLOOP
            This buffer is the first buffer in a loop.  This flag is used only with output buffers.
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveHeaderFlags.Done">
            <summary>
            WHDR_DONE
            Set by the device driver to indicate that it is finished with the buffer and is returning it to the application.
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveHeaderFlags.EndLoop">
            <summary>
            WHDR_ENDLOOP
            This buffer is the last buffer in a loop.  This flag is used only with output buffers.
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveHeaderFlags.InQueue">
            <summary>
            WHDR_INQUEUE
            Set by Windows to indicate that the buffer is queued for playback.
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveHeaderFlags.Prepared">
            <summary>
            WHDR_PREPARED
            Set by Windows to indicate that the buffer has been prepared with the waveInPrepareHeader or waveOutPrepareHeader function.
            </summary>
        </member>
        <member name="T:NAudio.Wave.WasapiLoopbackCapture">
            <summary>
            WASAPI Loopback Capture
            based on a contribution from "Pygmy" - http://naudio.codeplex.com/discussions/203605
            </summary>
        </member>
        <member name="M:NAudio.Wave.WasapiLoopbackCapture.#ctor">
            <summary>
            Initialises a new instance of the WASAPI capture class
            </summary>
        </member>
        <member name="M:NAudio.Wave.WasapiLoopbackCapture.#ctor(NAudio.CoreAudioApi.MMDevice)">
            <summary>
            Initialises a new instance of the WASAPI capture class
            </summary>
            <param name="captureDevice">Capture device to use</param>
        </member>
        <member name="M:NAudio.Wave.WasapiLoopbackCapture.GetDefaultLoopbackCaptureDevice">
            <summary>
            Gets the default audio loopback capture device
            </summary>
            <returns>The default audio loopback capture device</returns>
        </member>
        <member name="P:NAudio.Wave.WasapiLoopbackCapture.WaveFormat">
            <summary>
            Capturing wave format
            </summary>
        </member>
        <member name="M:NAudio.Wave.WasapiLoopbackCapture.GetAudioClientStreamFlags">
            <summary>
            Specify loopback
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveIn">
            <summary>
            Allows recording using the Windows waveIn APIs
            Events are raised as recorded buffers are made available
            </summary>
        </member>
        <member name="E:NAudio.Wave.WaveIn.DataAvailable">
            <summary>
            Indicates recorded data is available 
            </summary>
        </member>
        <member name="E:NAudio.Wave.WaveIn.RecordingStopped">
            <summary>
            Indicates that all recorded data has now been received.
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveIn.#ctor">
            <summary>
            Prepares a Wave input device for recording
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveIn.#ctor(System.IntPtr)">
            <summary>
            Creates a WaveIn device using the specified window handle for callbacks
            </summary>
            <param name="windowHandle">A valid window handle</param>
        </member>
        <member name="M:NAudio.Wave.WaveIn.#ctor(NAudio.Wave.WaveCallbackInfo)">
            <summary>
            Prepares a Wave input device for recording
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveIn.DeviceCount">
            <summary>
            Returns the number of Wave In devices available in the system
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveIn.GetCapabilities(System.Int32)">
            <summary>
            Retrieves the capabilities of a waveIn device
            </summary>
            <param name="devNumber">Device to test</param>
            <returns>The WaveIn device capabilities</returns>
        </member>
        <member name="P:NAudio.Wave.WaveIn.BufferMilliseconds">
            <summary>
            Milliseconds for the buffer. Recommended value is 100ms
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveIn.NumberOfBuffers">
            <summary>
            Number of Buffers to use (usually 2 or 3)
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveIn.DeviceNumber">
            <summary>
            The device number to use
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveIn.Callback(System.IntPtr,NAudio.Wave.WaveInterop.WaveMessage,System.IntPtr,NAudio.Wave.WaveHeader,System.IntPtr)">
            <summary>
            Called when we get a new buffer of recorded data
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveIn.StartRecording">
            <summary>
            Start recording
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveIn.StopRecording">
            <summary>
            Stop recording
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveIn.WaveFormat">
            <summary>
            WaveFormat we are recording in
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveIn.Dispose(System.Boolean)">
            <summary>
            Dispose pattern
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveIn.GetMixerLine">
            <summary>
            Microphone Level
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveIn.Dispose">
            <summary>
            Dispose method
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveInCapabilities">
            <summary>
            WaveInCapabilities structure (based on WAVEINCAPS2 from mmsystem.h)
            http://msdn.microsoft.com/en-us/library/ms713726(VS.85).aspx
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveInCapabilities.manufacturerId">
            <summary>
            wMid
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveInCapabilities.productId">
            <summary>
            wPid
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveInCapabilities.driverVersion">
            <summary>
            vDriverVersion
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveInCapabilities.productName">
            <summary>
            Product Name (szPname)
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveInCapabilities.supportedFormats">
            <summary>
            Supported formats (bit flags) dwFormats 
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveInCapabilities.channels">
            <summary>
            Supported channels (1 for mono 2 for stereo) (wChannels)
            Seems to be set to -1 on a lot of devices
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveInCapabilities.reserved">
            <summary>
            wReserved1
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveInCapabilities.Channels">
            <summary>
            Number of channels supported
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveInCapabilities.ProductName">
            <summary>
            The product name
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveInCapabilities.NameGuid">
            <summary>
            The device name Guid (if provided)
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveInCapabilities.ProductGuid">
            <summary>
            The product name Guid (if provided)
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveInCapabilities.ManufacturerGuid">
            <summary>
            The manufacturer guid (if provided)
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveInCapabilities.SupportsWaveFormat(NAudio.Wave.SupportedWaveFormat)">
            <summary>
            Checks to see if a given SupportedWaveFormat is supported
            </summary>
            <param name="waveFormat">The SupportedWaveFormat</param>
            <returns>true if supported</returns>
        </member>
        <member name="M:NAudio.Wave.WaveCapabilitiesHelpers.GetNameFromGuid(System.Guid)">
            <summary>
            The device name from the registry if supported
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveInEventArgs">
            <summary>
            Event Args for WaveInStream event
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveInEventArgs.#ctor(System.Byte[],System.Int32)">
            <summary>
            Creates new WaveInEventArgs
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveInEventArgs.Buffer">
            <summary>
            Buffer containing recorded data. Note that it might not be completely
            full. <seealso cref="P:NAudio.Wave.WaveInEventArgs.BytesRecorded"/>
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveInEventArgs.BytesRecorded">
            <summary>
            The number of recorded bytes in Buffer. <seealso cref="P:NAudio.Wave.WaveInEventArgs.Buffer"/>
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveInterop">
            <summary>
            MME Wave function interop
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveInterop.WaveInOutOpenFlags.CallbackNull">
            <summary>
            CALLBACK_NULL
            No callback
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveInterop.WaveInOutOpenFlags.CallbackFunction">
            <summary>
            CALLBACK_FUNCTION
            dwCallback is a FARPROC 
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveInterop.WaveInOutOpenFlags.CallbackEvent">
            <summary>
            CALLBACK_EVENT
            dwCallback is an EVENT handle 
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveInterop.WaveInOutOpenFlags.CallbackWindow">
            <summary>
            CALLBACK_WINDOW
            dwCallback is a HWND 
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveInterop.WaveInOutOpenFlags.CallbackThread">
            <summary>
            CALLBACK_THREAD
            callback is a thread ID 
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveInterop.WaveMessage.WaveInOpen">
            <summary>
            WIM_OPEN
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveInterop.WaveMessage.WaveInClose">
            <summary>
            WIM_CLOSE
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveInterop.WaveMessage.WaveInData">
            <summary>
            WIM_DATA
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveInterop.WaveMessage.WaveOutClose">
            <summary>
            WOM_CLOSE
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveInterop.WaveMessage.WaveOutDone">
            <summary>
            WOM_DONE
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveInterop.WaveMessage.WaveOutOpen">
            <summary>
            WOM_OPEN
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveOutCapabilities">
            <summary>
            WaveOutCapabilities structure (based on WAVEOUTCAPS2 from mmsystem.h)
            http://msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/htm/_win32_waveoutcaps_str.asp
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveOutCapabilities.manufacturerId">
            <summary>
            wMid
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveOutCapabilities.productId">
            <summary>
            wPid
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveOutCapabilities.driverVersion">
            <summary>
            vDriverVersion
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveOutCapabilities.productName">
            <summary>
            Product Name (szPname)
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveOutCapabilities.supportedFormats">
            <summary>
            Supported formats (bit flags) dwFormats 
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveOutCapabilities.channels">
            <summary>
            Supported channels (1 for mono 2 for stereo) (wChannels)
            Seems to be set to -1 on a lot of devices
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveOutCapabilities.reserved">
            <summary>
            wReserved1
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveOutCapabilities.support">
            <summary>
            Optional functionality supported by the device
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveOutCapabilities.Channels">
            <summary>
            Number of channels supported
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveOutCapabilities.SupportsPlaybackRateControl">
            <summary>
            Whether playback control is supported
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveOutCapabilities.ProductName">
            <summary>
            The product name
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOutCapabilities.SupportsWaveFormat(NAudio.Wave.SupportedWaveFormat)">
            <summary>
            Checks to see if a given SupportedWaveFormat is supported
            </summary>
            <param name="waveFormat">The SupportedWaveFormat</param>
            <returns>true if supported</returns>
        </member>
        <member name="P:NAudio.Wave.WaveOutCapabilities.NameGuid">
            <summary>
            The device name Guid (if provided)
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveOutCapabilities.ProductGuid">
            <summary>
            The product name Guid (if provided)
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveOutCapabilities.ManufacturerGuid">
            <summary>
            The manufacturer guid (if provided)
            </summary>
        </member>
        <member name="T:NAudio.Wave.SupportedWaveFormat">
            <summary>
            Supported wave formats for WaveOutCapabilities
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_1M08">
            <summary>
            11.025 kHz, Mono,   8-bit
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_1S08">
            <summary>
            11.025 kHz, Stereo, 8-bit
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_1M16">
            <summary>
            11.025 kHz, Mono,   16-bit
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_1S16">
            <summary>
            11.025 kHz, Stereo, 16-bit
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_2M08">
            <summary>
            22.05  kHz, Mono,   8-bit
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_2S08">
            <summary>
            22.05  kHz, Stereo, 8-bit 
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_2M16">
            <summary>
            22.05  kHz, Mono,   16-bit
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_2S16">
            <summary>
            22.05  kHz, Stereo, 16-bit
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_4M08">
            <summary>
            44.1   kHz, Mono,   8-bit 
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_4S08">
            <summary>
            44.1   kHz, Stereo, 8-bit 
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_4M16">
            <summary>
            44.1   kHz, Mono,   16-bit
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_4S16">
            <summary>
             44.1   kHz, Stereo, 16-bit
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_44M08">
            <summary>
            44.1   kHz, Mono,   8-bit 
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_44S08">
            <summary>
            44.1   kHz, Stereo, 8-bit 
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_44M16">
            <summary>
            44.1   kHz, Mono,   16-bit
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_44S16">
            <summary>
            44.1   kHz, Stereo, 16-bit
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_48M08">
            <summary>
            48     kHz, Mono,   8-bit 
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_48S08">
            <summary>
             48     kHz, Stereo, 8-bit
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_48M16">
            <summary>
            48     kHz, Mono,   16-bit
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_48S16">
            <summary>
            48     kHz, Stereo, 16-bit
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_96M08">
            <summary>
            96     kHz, Mono,   8-bit 
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_96S08">
            <summary>
            96     kHz, Stereo, 8-bit
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_96M16">
            <summary>
            96     kHz, Mono,   16-bit
            </summary>
        </member>
        <member name="F:NAudio.Wave.SupportedWaveFormat.WAVE_FORMAT_96S16">
            <summary>
            96     kHz, Stereo, 16-bit
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveOutSupport">
            <summary>
            Flags indicating what features this WaveOut device supports
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveOutSupport.Pitch">
            <summary>supports pitch control (WAVECAPS_PITCH)</summary>
        </member>
        <member name="F:NAudio.Wave.WaveOutSupport.PlaybackRate">
            <summary>supports playback rate control (WAVECAPS_PLAYBACKRATE)</summary>
        </member>
        <member name="F:NAudio.Wave.WaveOutSupport.Volume">
            <summary>supports volume control (WAVECAPS_VOLUME)</summary>
        </member>
        <member name="F:NAudio.Wave.WaveOutSupport.LRVolume">
            <summary>supports separate left-right volume control (WAVECAPS_LRVOLUME)</summary>
        </member>
        <member name="F:NAudio.Wave.WaveOutSupport.Sync">
            <summary>(WAVECAPS_SYNC)</summary>
        </member>
        <member name="F:NAudio.Wave.WaveOutSupport.SampleAccurate">
            <summary>(WAVECAPS_SAMPLEACCURATE)</summary>
        </member>
        <member name="T:NAudio.Wave.Gsm610WaveFormat">
            <summary>
            GSM 610
            </summary>
        </member>
        <member name="M:NAudio.Wave.Gsm610WaveFormat.#ctor">
            <summary>
            Creates a GSM 610 WaveFormat
            For now hardcoded to 13kbps
            </summary>
        </member>
        <member name="P:NAudio.Wave.Gsm610WaveFormat.SamplesPerBlock">
            <summary>
            Samples per block
            </summary>
        </member>
        <member name="M:NAudio.Wave.Gsm610WaveFormat.Serialize(System.IO.BinaryWriter)">
            <summary>
            Writes this structure to a BinaryWriter
            </summary>
        </member>
        <member name="T:NAudio.Wave.ImaAdpcmWaveFormat">
            <summary>
            IMA/DVI ADPCM Wave Format
            Work in progress
            </summary>
        </member>
        <member name="M:NAudio.Wave.ImaAdpcmWaveFormat.#ctor">
            <summary>
            parameterless constructor for Marshalling
            </summary>
        </member>
        <member name="M:NAudio.Wave.ImaAdpcmWaveFormat.#ctor(System.Int32,System.Int32,System.Int32)">
            <summary>
            Creates a new IMA / DVI ADPCM Wave Format
            </summary>
            <param name="sampleRate">Sample Rate</param>
            <param name="channels">Number of channels</param>
            <param name="bitsPerSample">Bits Per Sample</param>
        </member>
        <member name="T:NAudio.Wave.Mp3WaveFormat">
            <summary>
            MP3 WaveFormat, MPEGLAYER3WAVEFORMAT from mmreg.h
            </summary>
        </member>
        <member name="F:NAudio.Wave.Mp3WaveFormat.id">
            <summary>
            Wave format ID (wID)
            </summary>
        </member>
        <member name="F:NAudio.Wave.Mp3WaveFormat.flags">
            <summary>
            Padding flags (fdwFlags)
            </summary>
        </member>
        <member name="F:NAudio.Wave.Mp3WaveFormat.blockSize">
            <summary>
            Block Size (nBlockSize)
            </summary>
        </member>
        <member name="F:NAudio.Wave.Mp3WaveFormat.framesPerBlock">
            <summary>
            Frames per block (nFramesPerBlock)
            </summary>
        </member>
        <member name="F:NAudio.Wave.Mp3WaveFormat.codecDelay">
            <summary>
            Codec Delay (nCodecDelay)
            </summary>
        </member>
        <member name="M:NAudio.Wave.Mp3WaveFormat.#ctor(System.Int32,System.Int32,System.Int32,System.Int32)">
            <summary>
            Creates a new MP3 WaveFormat
            </summary>
        </member>
        <member name="T:NAudio.Wave.Mp3WaveFormatFlags">
            <summary>
            Wave Format Padding Flags
            </summary>
        </member>
        <member name="F:NAudio.Wave.Mp3WaveFormatFlags.PaddingIso">
            <summary>
            MPEGLAYER3_FLAG_PADDING_ISO
            </summary>
        </member>
        <member name="F:NAudio.Wave.Mp3WaveFormatFlags.PaddingOn">
            <summary>
            MPEGLAYER3_FLAG_PADDING_ON
            </summary>
        </member>
        <member name="F:NAudio.Wave.Mp3WaveFormatFlags.PaddingOff">
            <summary>
            MPEGLAYER3_FLAG_PADDING_OFF
            </summary>
        </member>
        <member name="T:NAudio.Wave.Mp3WaveFormatId">
            <summary>
            Wave Format ID
            </summary>
        </member>
        <member name="F:NAudio.Wave.Mp3WaveFormatId.Unknown">
            <summary>MPEGLAYER3_ID_UNKNOWN</summary>
        </member>
        <member name="F:NAudio.Wave.Mp3WaveFormatId.Mpeg">
            <summary>MPEGLAYER3_ID_MPEG</summary>
        </member>
        <member name="F:NAudio.Wave.Mp3WaveFormatId.ConstantFrameSize">
            <summary>MPEGLAYER3_ID_CONSTANTFRAMESIZE</summary>
        </member>
        <member name="T:NAudio.Wave.TrueSpeechWaveFormat">
            <summary>
            DSP Group TrueSpeech
            </summary>
        </member>
        <member name="M:NAudio.Wave.TrueSpeechWaveFormat.#ctor">
            <summary>
            DSP Group TrueSpeech WaveFormat
            </summary>
        </member>
        <member name="M:NAudio.Wave.TrueSpeechWaveFormat.Serialize(System.IO.BinaryWriter)">
            <summary>
            Writes this structure to a BinaryWriter
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveFormat">
            <summary>
            Represents a Wave file format
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormat.waveFormatTag">
            <summary>format type</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormat.channels">
            <summary>number of channels</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormat.sampleRate">
            <summary>sample rate</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormat.averageBytesPerSecond">
            <summary>for buffer estimation</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormat.blockAlign">
            <summary>block size of data</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormat.bitsPerSample">
            <summary>number of bits per sample of mono data</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormat.extraSize">
            <summary>number of following bytes</summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormat.#ctor">
            <summary>
            Creates a new PCM 44.1Khz stereo 16 bit format
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormat.#ctor(System.Int32,System.Int32)">
            <summary>
            Creates a new 16 bit wave format with the specified sample
            rate and channel count
            </summary>
            <param name="sampleRate">Sample Rate</param>
            <param name="channels">Number of channels</param>
        </member>
        <member name="M:NAudio.Wave.WaveFormat.ConvertLatencyToByteSize(System.Int32)">
            <summary>
            Gets the size of a wave buffer equivalent to the latency in milliseconds.
            </summary>
            <param name="milliseconds">The milliseconds.</param>
            <returns></returns>
        </member>
        <member name="M:NAudio.Wave.WaveFormat.CreateCustomFormat(NAudio.Wave.WaveFormatEncoding,System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)">
            <summary>
            Creates a WaveFormat with custom members
            </summary>
            <param name="tag">The encoding</param>
            <param name="sampleRate">Sample Rate</param>
            <param name="channels">Number of channels</param>
            <param name="averageBytesPerSecond">Average Bytes Per Second</param>
            <param name="blockAlign">Block Align</param>
            <param name="bitsPerSample">Bits Per Sample</param>
            <returns></returns>
        </member>
        <member name="M:NAudio.Wave.WaveFormat.CreateALawFormat(System.Int32,System.Int32)">
            <summary>
            Creates an A-law wave format
            </summary>
            <param name="sampleRate">Sample Rate</param>
            <param name="channels">Number of Channels</param>
            <returns>Wave Format</returns>
        </member>
        <member name="M:NAudio.Wave.WaveFormat.CreateMuLawFormat(System.Int32,System.Int32)">
            <summary>
            Creates a Mu-law wave format
            </summary>
            <param name="sampleRate">Sample Rate</param>
            <param name="channels">Number of Channels</param>
            <returns>Wave Format</returns>
        </member>
        <member name="M:NAudio.Wave.WaveFormat.#ctor(System.Int32,System.Int32,System.Int32)">
            <summary>
            Creates a new PCM format with the specified sample rate, bit depth and channels
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormat.CreateIeeeFloatWaveFormat(System.Int32,System.Int32)">
            <summary>
            Creates a new 32 bit IEEE floating point wave format
            </summary>
            <param name="sampleRate">sample rate</param>
            <param name="channels">number of channels</param>
        </member>
        <member name="M:NAudio.Wave.WaveFormat.MarshalFromPtr(System.IntPtr)">
            <summary>
            Helper function to retrieve a WaveFormat structure from a pointer
            </summary>
            <param name="pointer">WaveFormat structure</param>
            <returns></returns>
        </member>
        <member name="M:NAudio.Wave.WaveFormat.MarshalToPtr(NAudio.Wave.WaveFormat)">
            <summary>
            Helper function to marshal WaveFormat to an IntPtr
            </summary>
            <param name="format">WaveFormat</param>
            <returns>IntPtr to WaveFormat structure (needs to be freed by callee)</returns>
        </member>
        <member name="M:NAudio.Wave.WaveFormat.FromFormatChunk(System.IO.BinaryReader,System.Int32)">
            <summary>
            Reads in a WaveFormat (with extra data) from a fmt chunk (chunk identifier and
            length should already have been read)
            </summary>
            <param name="br">Binary reader</param>
            <param name="formatChunkLength">Format chunk length</param>
            <returns>A WaveFormatExtraData</returns>
        </member>
        <member name="M:NAudio.Wave.WaveFormat.#ctor(System.IO.BinaryReader)">
            <summary>
            Reads a new WaveFormat object from a stream
            </summary>
            <param name="br">A binary reader that wraps the stream</param>
        </member>
        <member name="M:NAudio.Wave.WaveFormat.ToString">
            <summary>
            Reports this WaveFormat as a string
            </summary>
            <returns>String describing the wave format</returns>
        </member>
        <member name="M:NAudio.Wave.WaveFormat.Equals(System.Object)">
            <summary>
            Compares with another WaveFormat object
            </summary>
            <param name="obj">Object to compare to</param>
            <returns>True if the objects are the same</returns>
        </member>
        <member name="M:NAudio.Wave.WaveFormat.GetHashCode">
            <summary>
            Provides a Hashcode for this WaveFormat
            </summary>
            <returns>A hashcode</returns>
        </member>
        <member name="P:NAudio.Wave.WaveFormat.Encoding">
            <summary>
            Returns the encoding type used
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormat.Serialize(System.IO.BinaryWriter)">
            <summary>
            Writes this WaveFormat object to a stream
            </summary>
            <param name="writer">the output stream</param>
        </member>
        <member name="P:NAudio.Wave.WaveFormat.Channels">
            <summary>
            Returns the number of channels (1=mono,2=stereo etc)
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveFormat.SampleRate">
            <summary>
            Returns the sample rate (samples per second)
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveFormat.AverageBytesPerSecond">
            <summary>
            Returns the average number of bytes used per second
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveFormat.BlockAlign">
            <summary>
            Returns the block alignment
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveFormat.BitsPerSample">
            <summary>
            Returns the number of bits per sample (usually 16 or 32, sometimes 24 or 8)
            Can be 0 for some codecs
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveFormat.ExtraSize">
            <summary>
            Returns the number of extra bytes used by this waveformat. Often 0,
            except for compressed formats which store extra data after the WAVEFORMATEX header
            </summary>
        </member>
        <member name="T:NAudio.Wave.AdpcmWaveFormat">
            <summary>
            Microsoft ADPCM
            See http://icculus.org/SDL_sound/downloads/external_documentation/wavecomp.htm
            </summary>
        </member>
        <member name="M:NAudio.Wave.AdpcmWaveFormat.#ctor">
            <summary>
            Empty constructor needed for marshalling from a pointer
            </summary>
        </member>
        <member name="P:NAudio.Wave.AdpcmWaveFormat.SamplesPerBlock">
            <summary>
            Samples per block
            </summary>
        </member>
        <member name="P:NAudio.Wave.AdpcmWaveFormat.NumCoefficients">
            <summary>
            Number of coefficients
            </summary>
        </member>
        <member name="P:NAudio.Wave.AdpcmWaveFormat.Coefficients">
            <summary>
            Coefficients
            </summary>
        </member>
        <member name="M:NAudio.Wave.AdpcmWaveFormat.#ctor(System.Int32,System.Int32)">
            <summary>
            Microsoft ADPCM  
            </summary>
            <param name="sampleRate">Sample Rate</param>
            <param name="channels">Channels</param>
        </member>
        <member name="M:NAudio.Wave.AdpcmWaveFormat.Serialize(System.IO.BinaryWriter)">
            <summary>
            Serializes this wave format
            </summary>
            <param name="writer">Binary writer</param>
        </member>
        <member name="M:NAudio.Wave.AdpcmWaveFormat.ToString">
            <summary>
            String Description of this WaveFormat
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveFormatCustomMarshaler">
            <summary>
            Custom marshaller for WaveFormat structures
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormatCustomMarshaler.GetInstance(System.String)">
            <summary>
            Gets the instance of this marshaller
            </summary>
            <param name="cookie"></param>
            <returns></returns>
        </member>
        <member name="M:NAudio.Wave.WaveFormatCustomMarshaler.CleanUpManagedData(System.Object)">
            <summary>
            Clean up managed data
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormatCustomMarshaler.CleanUpNativeData(System.IntPtr)">
            <summary>
            Clean up native data
            </summary>
            <param name="pNativeData"></param>
        </member>
        <member name="M:NAudio.Wave.WaveFormatCustomMarshaler.GetNativeDataSize">
            <summary>
            Get native data size
            </summary>        
        </member>
        <member name="M:NAudio.Wave.WaveFormatCustomMarshaler.MarshalManagedToNative(System.Object)">
            <summary>
            Marshal managed to native
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormatCustomMarshaler.MarshalNativeToManaged(System.IntPtr)">
            <summary>
            Marshal Native to Managed
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveFormatEncoding">
            <summary>
            Summary description for WaveFormatEncoding.
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.Unknown">
            <summary>WAVE_FORMAT_UNKNOWN,	Microsoft Corporation</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.Pcm">
            <summary>WAVE_FORMAT_PCM		Microsoft Corporation</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.Adpcm">
            <summary>WAVE_FORMAT_ADPCM		Microsoft Corporation</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.IeeeFloat">
            <summary>WAVE_FORMAT_IEEE_FLOAT Microsoft Corporation</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.Vselp">
            <summary>WAVE_FORMAT_VSELP		Compaq Computer Corp.</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.IbmCvsd">
            <summary>WAVE_FORMAT_IBM_CVSD	IBM Corporation</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.ALaw">
            <summary>WAVE_FORMAT_ALAW		Microsoft Corporation</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.MuLaw">
            <summary>WAVE_FORMAT_MULAW		Microsoft Corporation</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.Dts">
            <summary>WAVE_FORMAT_DTS		Microsoft Corporation</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.Drm">
            <summary>WAVE_FORMAT_DRM		Microsoft Corporation</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WmaVoice9">
            <summary>WAVE_FORMAT_WMAVOICE9 </summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.OkiAdpcm">
            <summary>WAVE_FORMAT_OKI_ADPCM	OKI</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.DviAdpcm">
            <summary>WAVE_FORMAT_DVI_ADPCM	Intel Corporation</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.ImaAdpcm">
            <summary>WAVE_FORMAT_IMA_ADPCM  Intel Corporation</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.MediaspaceAdpcm">
            <summary>WAVE_FORMAT_MEDIASPACE_ADPCM Videologic</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.SierraAdpcm">
            <summary>WAVE_FORMAT_SIERRA_ADPCM Sierra Semiconductor Corp </summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.G723Adpcm">
            <summary>WAVE_FORMAT_G723_ADPCM Antex Electronics Corporation </summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.DigiStd">
            <summary>WAVE_FORMAT_DIGISTD DSP Solutions, Inc.</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.DigiFix">
            <summary>WAVE_FORMAT_DIGIFIX DSP Solutions, Inc.</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.DialogicOkiAdpcm">
            <summary>WAVE_FORMAT_DIALOGIC_OKI_ADPCM Dialogic Corporation</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.MediaVisionAdpcm">
            <summary>WAVE_FORMAT_MEDIAVISION_ADPCM Media Vision, Inc.</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.CUCodec">
            <summary>WAVE_FORMAT_CU_CODEC Hewlett-Packard Company </summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.YamahaAdpcm">
            <summary>WAVE_FORMAT_YAMAHA_ADPCM Yamaha Corporation of America</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.SonarC">
            <summary>WAVE_FORMAT_SONARC Speech Compression</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.DspGroupTrueSpeech">
            <summary>WAVE_FORMAT_DSPGROUP_TRUESPEECH DSP Group, Inc </summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.EchoSpeechCorporation1">
            <summary>WAVE_FORMAT_ECHOSC1 Echo Speech Corporation</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.AudioFileAf36">
            <summary>WAVE_FORMAT_AUDIOFILE_AF36, Virtual Music, Inc.</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.Aptx">
            <summary>WAVE_FORMAT_APTX Audio Processing Technology</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.AudioFileAf10">
            <summary>WAVE_FORMAT_AUDIOFILE_AF10, Virtual Music, Inc.</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.Prosody1612">
            <summary>WAVE_FORMAT_PROSODY_1612, Aculab plc</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.Lrc">
            <summary>WAVE_FORMAT_LRC, Merging Technologies S.A. </summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.DolbyAc2">
            <summary>WAVE_FORMAT_DOLBY_AC2, Dolby Laboratories</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.Gsm610">
            <summary>WAVE_FORMAT_GSM610, Microsoft Corporation</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.MsnAudio">
            <summary>WAVE_FORMAT_MSNAUDIO, Microsoft Corporation</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.AntexAdpcme">
            <summary>WAVE_FORMAT_ANTEX_ADPCME, Antex Electronics Corporation</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.ControlResVqlpc">
            <summary>WAVE_FORMAT_CONTROL_RES_VQLPC, Control Resources Limited </summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.DigiReal">
            <summary>WAVE_FORMAT_DIGIREAL, DSP Solutions, Inc. </summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.DigiAdpcm">
            <summary>WAVE_FORMAT_DIGIADPCM, DSP Solutions, Inc.</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.ControlResCr10">
            <summary>WAVE_FORMAT_CONTROL_RES_CR10, Control Resources Limited</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_NMS_VBXADPCM">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_CS_IMAADPCM">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_ECHOSC3">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_ROCKWELL_ADPCM">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_ROCKWELL_DIGITALK">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_XEBEC">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_G721_ADPCM">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_G728_CELP">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_MSG723">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.Mpeg">
            <summary>WAVE_FORMAT_MPEG, Microsoft Corporation </summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_RT24">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_PAC">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.MpegLayer3">
            <summary>WAVE_FORMAT_MPEGLAYER3, ISO/MPEG Layer3 Format Tag </summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_LUCENT_G723">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_CIRRUS">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_ESPCM">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_VOXWARE">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_CANOPUS_ATRAC">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_G726_ADPCM">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_G722_ADPCM">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_DSAT_DISPLAY">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_VOXWARE_BYTE_ALIGNED">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_VOXWARE_AC8">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_VOXWARE_AC10">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_VOXWARE_AC16">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_VOXWARE_AC20">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_VOXWARE_RT24">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_VOXWARE_RT29">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_VOXWARE_RT29HW">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_VOXWARE_VR12">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_VOXWARE_VR18">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_VOXWARE_TQ40">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_SOFTSOUND">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_VOXWARE_TQ60">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_MSRT24">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_G729A">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_MVI_MVI2">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_DF_G726">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_DF_GSM610">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_ISIAUDIO">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_ONLIVE">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_SBC24">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_DOLBY_AC3_SPDIF">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_MEDIASONIC_G723">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_PROSODY_8KBPS">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_ZYXEL_ADPCM">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_PHILIPS_LPCBB">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_PACKED">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_MALDEN_PHONYTALK">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.Gsm">
            <summary>WAVE_FORMAT_GSM</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.G729">
            <summary>WAVE_FORMAT_G729</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.G723">
            <summary>WAVE_FORMAT_G723</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.Acelp">
            <summary>WAVE_FORMAT_ACELP</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.RawAac">
            <summary>
            WAVE_FORMAT_RAW_AAC1
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_RHETOREX_ADPCM">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_IRAT">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_VIVO_G723">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_VIVO_SIREN">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_DIGITAL_G723">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_SANYO_LD_ADPCM">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_SIPROLAB_ACEPLNET">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_SIPROLAB_ACELP4800">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_SIPROLAB_ACELP8V3">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_SIPROLAB_G729">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_SIPROLAB_G729A">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_SIPROLAB_KELVIN">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_G726ADPCM">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_QUALCOMM_PUREVOICE">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_QUALCOMM_HALFRATE">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_TUBGSM">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_MSAUDIO1">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WindowsMediaAudio">
            <summary>
            Windows Media Audio, WAVE_FORMAT_WMAUDIO2, Microsoft Corporation
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WindowsMediaAudioProfessional">
            <summary>
            Windows Media Audio Professional WAVE_FORMAT_WMAUDIO3, Microsoft Corporation
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WindowsMediaAudioLosseless">
            <summary>
            Windows Media Audio Lossless, WAVE_FORMAT_WMAUDIO_LOSSLESS
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WindowsMediaAudioSpdif">
            <summary>
            Windows Media Audio Professional over SPDIF WAVE_FORMAT_WMASPDIF (0x0164)
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_UNISYS_NAP_ADPCM">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_UNISYS_NAP_ULAW">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_UNISYS_NAP_ALAW">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_UNISYS_NAP_16K">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_CREATIVE_ADPCM">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_CREATIVE_FASTSPEECH8">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_CREATIVE_FASTSPEECH10">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_UHER_ADPCM">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_QUARTERDECK">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_ILINK_VC">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_RAW_SPORT">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_ESST_AC3">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_IPI_HSX">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_IPI_RPELP">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_CS2">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_SONY_SCX">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_FM_TOWNS_SND">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_BTV_DIGITAL">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_QDESIGN_MUSIC">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_VME_VMPCM">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_TPC">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_OLIGSM">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_OLIADPCM">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_OLICELP">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_OLISBC">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_OLIOPR">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_LH_CODEC">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_NORRIS">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_SOUNDSPACE_MUSICOMPRESS">
            <summary></summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.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:NAudio.Wave.WaveFormatEncoding.MPEG_RAW_AAC">
            <summary></summary>
            <remarks>Source wmCodec.h</remarks>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.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.
            </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>
            <see>http://msdn.microsoft.com/en-us/library/dd317599%28VS.85%29.aspx</see>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.NOKIA_MPEG_ADTS_AAC">
            <summary>NOKIA_MPEG_ADTS_AAC</summary>
            <remarks>Source wmCodec.h</remarks>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.NOKIA_MPEG_RAW_AAC">
            <summary>NOKIA_MPEG_RAW_AAC</summary>
            <remarks>Source wmCodec.h</remarks>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.VODAFONE_MPEG_ADTS_AAC">
            <summary>VODAFONE_MPEG_ADTS_AAC</summary>
            <remarks>Source wmCodec.h</remarks>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.VODAFONE_MPEG_RAW_AAC">
            <summary>VODAFONE_MPEG_RAW_AAC</summary>
            <remarks>Source wmCodec.h</remarks>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.MPEG_HEAAC">
            <summary>
            High-Efficiency Advanced Audio Coding (HE-AAC) stream.
            The format block is an HEAACWAVEFORMAT structure.
            </summary>
            <see>http://msdn.microsoft.com/en-us/library/dd317599%28VS.85%29.aspx</see>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_DVM">
            <summary>WAVE_FORMAT_DVM</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.Vorbis1">
            <summary>WAVE_FORMAT_VORBIS1 "Og" Original stream compatible</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.Vorbis2">
            <summary>WAVE_FORMAT_VORBIS2 "Pg" Have independent header</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.Vorbis3">
            <summary>WAVE_FORMAT_VORBIS3 "Qg" Have no codebook header</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.Vorbis1P">
            <summary>WAVE_FORMAT_VORBIS1P "og" Original stream compatible</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.Vorbis2P">
            <summary>WAVE_FORMAT_VORBIS2P "pg" Have independent headere</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.Vorbis3P">
            <summary>WAVE_FORMAT_VORBIS3P "qg" Have no codebook header</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.Extensible">
            <summary>WAVE_FORMAT_EXTENSIBLE</summary>
        </member>
        <member name="F:NAudio.Wave.WaveFormatEncoding.WAVE_FORMAT_DEVELOPMENT">
            <summary></summary>
        </member>
        <member name="T:NAudio.Wave.WaveFormatExtensible">
            <summary>
            WaveFormatExtensible
            http://www.microsoft.com/whdc/device/audio/multichaud.mspx
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormatExtensible.#ctor">
            <summary>
            Parameterless constructor for marshalling
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormatExtensible.#ctor(System.Int32,System.Int32,System.Int32)">
            <summary>
            Creates a new WaveFormatExtensible for PCM or IEEE
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormatExtensible.ToStandardWaveFormat">
            <summary>
            WaveFormatExtensible for PCM or floating point can be awkward to work with
            This creates a regular WaveFormat structure representing the same audio format
            Returns the WaveFormat unchanged for non PCM or IEEE float
            </summary>
            <returns></returns>
        </member>
        <member name="P:NAudio.Wave.WaveFormatExtensible.SubFormat">
            <summary>
            SubFormat (may be one of AudioMediaSubtypes)
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormatExtensible.Serialize(System.IO.BinaryWriter)">
            <summary>
            Serialize
            </summary>
            <param name="writer"></param>
        </member>
        <member name="M:NAudio.Wave.WaveFormatExtensible.ToString">
            <summary>
            String representation
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveFormatExtraData">
            <summary>
            This class used for marshalling from unmanaged code
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveFormatExtraData.ExtraData">
            <summary>
            Allows the extra data to be read
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormatExtraData.#ctor">
            <summary>
            parameterless constructor for marshalling
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormatExtraData.#ctor(System.IO.BinaryReader)">
            <summary>
            Reads this structure from a BinaryReader
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormatExtraData.Serialize(System.IO.BinaryWriter)">
            <summary>
            Writes this structure to a BinaryWriter
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveFormats.WmaWaveFormat">
            <summary>
            The WMA wave format. 
            May not be much use because WMA codec is a DirectShow DMO not an ACM
            </summary>
        </member>
        <member name="T:NAudio.Wave.IWaveIn">
            <summary>
            Generic interface for wave recording
            </summary>
        </member>
        <member name="P:NAudio.Wave.IWaveIn.WaveFormat">
            <summary>
            Recording WaveFormat
            </summary>
        </member>
        <member name="M:NAudio.Wave.IWaveIn.StartRecording">
            <summary>
            Start Recording
            </summary>
        </member>
        <member name="M:NAudio.Wave.IWaveIn.StopRecording">
            <summary>
            Stop Recording
            </summary>
        </member>
        <member name="E:NAudio.Wave.IWaveIn.DataAvailable">
            <summary>
            Indicates recorded data is available 
            </summary>
        </member>
        <member name="E:NAudio.Wave.IWaveIn.RecordingStopped">
            <summary>
            Indicates that all recorded data has now been received.
            </summary>
        </member>
        <member name="T:NAudio.Wave.AiffFileWriter">
            <summary>
            This class writes audio data to a .aif file on disk
            </summary>
        </member>
        <member name="M:NAudio.Wave.AiffFileWriter.CreateAiffFile(System.String,NAudio.Wave.WaveStream)">
            <summary>
            Creates an Aiff file by reading all the data from a WaveProvider
            BEWARE: the WaveProvider MUST return 0 from its Read method when it is finished,
            or the Aiff File will grow indefinitely.
            </summary>
            <param name="filename">The filename to use</param>
            <param name="sourceProvider">The source WaveProvider</param>
        </member>
        <member name="M:NAudio.Wave.AiffFileWriter.#ctor(System.IO.Stream,NAudio.Wave.WaveFormat)">
            <summary>
            AiffFileWriter that actually writes to a stream
            </summary>
            <param name="outStream">Stream to be written to</param>
            <param name="format">Wave format to use</param>
        </member>
        <member name="M:NAudio.Wave.AiffFileWriter.#ctor(System.String,NAudio.Wave.WaveFormat)">
            <summary>
            Creates a new AiffFileWriter
            </summary>
            <param name="filename">The filename to write to</param>
            <param name="format">The Wave Format of the output data</param>
        </member>
        <member name="P:NAudio.Wave.AiffFileWriter.Filename">
            <summary>
            The aiff file name or null if not applicable
            </summary>
        </member>
        <member name="P:NAudio.Wave.AiffFileWriter.Length">
            <summary>
            Number of bytes of audio in the data chunk
            </summary>
        </member>
        <member name="P:NAudio.Wave.AiffFileWriter.WaveFormat">
            <summary>
            WaveFormat of this aiff file
            </summary>
        </member>
        <member name="P:NAudio.Wave.AiffFileWriter.CanRead">
            <summary>
            Returns false: Cannot read from a AiffFileWriter
            </summary>
        </member>
        <member name="P:NAudio.Wave.AiffFileWriter.CanWrite">
            <summary>
            Returns true: Can write to a AiffFileWriter
            </summary>
        </member>
        <member name="P:NAudio.Wave.AiffFileWriter.CanSeek">
            <summary>
            Returns false: Cannot seek within a AiffFileWriter
            </summary>
        </member>
        <member name="M:NAudio.Wave.AiffFileWriter.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Read is not supported for a AiffFileWriter
            </summary>
        </member>
        <member name="M:NAudio.Wave.AiffFileWriter.Seek(System.Int64,System.IO.SeekOrigin)">
            <summary>
            Seek is not supported for a AiffFileWriter
            </summary>
        </member>
        <member name="M:NAudio.Wave.AiffFileWriter.SetLength(System.Int64)">
            <summary>
            SetLength is not supported for AiffFileWriter
            </summary>
            <param name="value"></param>
        </member>
        <member name="P:NAudio.Wave.AiffFileWriter.Position">
            <summary>
            Gets the Position in the AiffFile (i.e. number of bytes written so far)
            </summary>
        </member>
        <member name="M:NAudio.Wave.AiffFileWriter.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Appends bytes to the AiffFile (assumes they are already in the correct format)
            </summary>
            <param name="data">the buffer containing the wave data</param>
            <param name="offset">the offset from which to start writing</param>
            <param name="count">the number of bytes to write</param>
        </member>
        <member name="M:NAudio.Wave.AiffFileWriter.WriteSample(System.Single)">
            <summary>
            Writes a single sample to the Aiff file
            </summary>
            <param name="sample">the sample to write (assumed floating point with 1.0f as max value)</param>
        </member>
        <member name="M:NAudio.Wave.AiffFileWriter.WriteSamples(System.Single[],System.Int32,System.Int32)">
            <summary>
            Writes 32 bit floating point samples to the Aiff file
            They will be converted to the appropriate bit depth depending on the WaveFormat of the AIF file
            </summary>
            <param name="samples">The buffer containing the floating point samples</param>
            <param name="offset">The offset from which to start writing</param>
            <param name="count">The number of floating point samples to write</param>
        </member>
        <member name="M:NAudio.Wave.AiffFileWriter.WriteSamples(System.Int16[],System.Int32,System.Int32)">
            <summary>
            Writes 16 bit samples to the Aiff file
            </summary>
            <param name="samples">The buffer containing the 16 bit samples</param>
            <param name="offset">The offset from which to start writing</param>
            <param name="count">The number of 16 bit samples to write</param>
        </member>
        <member name="M:NAudio.Wave.AiffFileWriter.Flush">
            <summary>
            Ensures data is written to disk
            </summary>
        </member>
        <member name="M:NAudio.Wave.AiffFileWriter.Dispose(System.Boolean)">
            <summary>
            Actually performs the close,making sure the header contains the correct data
            </summary>
            <param name="disposing">True if called from <see>Dispose</see></param>
        </member>
        <member name="M:NAudio.Wave.AiffFileWriter.UpdateHeader(System.IO.BinaryWriter)">
            <summary>
            Updates the header with file size information
            </summary>
        </member>
        <member name="M:NAudio.Wave.AiffFileWriter.Finalize">
            <summary>
            Finaliser - should only be called if the user forgot to close this AiffFileWriter
            </summary>
        </member>
        <member name="T:NAudio.Wave.AsioAudioAvailableEventArgs">
            <summary>
            Raised when ASIO data has been recorded.
            It is important to handle this as quickly as possible as it is in the buffer callback
            </summary>
        </member>
        <member name="M:NAudio.Wave.AsioAudioAvailableEventArgs.#ctor(System.IntPtr[],System.IntPtr[],System.Int32,NAudio.Wave.Asio.AsioSampleType)">
            <summary>
            Initialises a new instance of AsioAudioAvailableEventArgs
            </summary>
            <param name="inputBuffers">Pointers to the ASIO buffers for each channel</param>
            <param name="outputBuffers">Pointers to the ASIO buffers for each channel</param>
            <param name="samplesPerBuffer">Number of samples in each buffer</param>
            <param name="asioSampleType">Audio format within each buffer</param>
        </member>
        <member name="P:NAudio.Wave.AsioAudioAvailableEventArgs.InputBuffers">
            <summary>
            Pointer to a buffer per input channel
            </summary>
        </member>
        <member name="P:NAudio.Wave.AsioAudioAvailableEventArgs.OutputBuffers">
            <summary>
            Pointer to a buffer per output channel
            Allows you to write directly to the output buffers
            If you do so, set SamplesPerBuffer = true,
            and make sure all buffers are written to with valid data
            </summary>
        </member>
        <member name="P:NAudio.Wave.AsioAudioAvailableEventArgs.WrittenToOutputBuffers">
            <summary>
            Set to true if you have written to the output buffers
            If so, AsioOut will not read from its source
            </summary>
        </member>
        <member name="P:NAudio.Wave.AsioAudioAvailableEventArgs.SamplesPerBuffer">
            <summary>
            Number of samples in each buffer
            </summary>
        </member>
        <member name="M:NAudio.Wave.AsioAudioAvailableEventArgs.GetAsInterleavedSamples(System.Single[])">
            <summary>
            Converts all the recorded audio into a buffer of 32 bit floating point samples, interleaved by channel
            </summary>
            <samples>The samples as 32 bit floating point, interleaved</samples>
        </member>
        <member name="P:NAudio.Wave.AsioAudioAvailableEventArgs.AsioSampleType">
            <summary>
            Audio format within each buffer
            Most commonly this will be one of, Int32LSB, Int16LSB, Int24LSB or Float32LSB
            </summary>
        </member>
        <member name="M:NAudio.Wave.AsioAudioAvailableEventArgs.GetAsInterleavedSamples">
            <summary>
            Gets as interleaved samples, allocating a float array
            </summary>
            <returns>The samples as 32 bit floating point values</returns>
        </member>
        <member name="T:NAudio.Wave.AsioOut">
            <summary>
            ASIO Out Player. New implementation using an internal C# binding.
            
            This implementation is only supporting Short16Bit and Float32Bit formats and is optimized 
            for 2 outputs channels .
            SampleRate is supported only if AsioDriver is supporting it
                
            This implementation is probably the first AsioDriver binding fully implemented in C#!
            
            Original Contributor: Mark Heath 
            New Contributor to C# binding : Alexandre Mutel - email: alexandre_mutel at yahoo.fr
            </summary>
        </member>
        <member name="E:NAudio.Wave.AsioOut.PlaybackStopped">
            <summary>
            Playback Stopped
            </summary>
        </member>
        <member name="E:NAudio.Wave.AsioOut.AudioAvailable">
            <summary>
            When recording, fires whenever recorded audio is available
            </summary>
        </member>
        <member name="M:NAudio.Wave.AsioOut.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAudio.Wave.AsioOut"/> class with the first 
            available ASIO Driver.
            </summary>
        </member>
        <member name="M:NAudio.Wave.AsioOut.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:NAudio.Wave.AsioOut"/> class with the driver name.
            </summary>
            <param name="driverName">Name of the device.</param>
        </member>
        <member name="M:NAudio.Wave.AsioOut.#ctor(System.Int32)">
            <summary>
            Opens an ASIO output device
            </summary>
            <param name="driverIndex">Device number (zero based)</param>
        </member>
        <member name="M:NAudio.Wave.AsioOut.Finalize">
            <summary>
            Releases unmanaged resources and performs other cleanup operations before the
            <see cref="T:NAudio.Wave.AsioOut"/> is reclaimed by garbage collection.
            </summary>
        </member>
        <member name="M:NAudio.Wave.AsioOut.Dispose">
            <summary>
            Dispose
            </summary>
        </member>
        <member name="M:NAudio.Wave.AsioOut.GetDriverNames">
            <summary>
            Gets the names of the installed ASIO Driver.
            </summary>
            <returns>an array of driver names</returns>
        </member>
        <member name="M:NAudio.Wave.AsioOut.isSupported">
            <summary>
            Determines whether ASIO is supported.
            </summary>
            <returns>
                <c>true</c> if ASIO is supported; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:NAudio.Wave.AsioOut.InitFromName(System.String)">
            <summary>
            Inits the driver from the asio driver name.
            </summary>
            <param name="driverName">Name of the driver.</param>
        </member>
        <member name="M:NAudio.Wave.AsioOut.ShowControlPanel">
            <summary>
            Shows the control panel
            </summary>
        </member>
        <member name="M:NAudio.Wave.AsioOut.Play">
            <summary>
            Starts playback
            </summary>
        </member>
        <member name="M:NAudio.Wave.AsioOut.Stop">
            <summary>
            Stops playback
            </summary>
        </member>
        <member name="M:NAudio.Wave.AsioOut.Pause">
            <summary>
            Pauses playback
            </summary>
        </member>
        <member name="M:NAudio.Wave.AsioOut.Init(NAudio.Wave.IWaveProvider)">
            <summary>
            Initialises to play
            </summary>
            <param name="waveProvider">Source wave provider</param>
        </member>
        <member name="M:NAudio.Wave.AsioOut.InitRecordAndPlayback(NAudio.Wave.IWaveProvider,System.Int32,System.Int32)">
            <summary>
            Initialises to play, with optional recording
            </summary>
            <param name="waveProvider">Source wave provider - set to null for record only</param>
            <param name="recordChannels">Number of channels to record</param>
            <param name="recordOnlySampleRate">Specify sample rate here if only recording, ignored otherwise</param>
        </member>
        <member name="M:NAudio.Wave.AsioOut.driver_BufferUpdate(System.IntPtr[],System.IntPtr[])">
            <summary>
            driver buffer update callback to fill the wave buffer.
            </summary>
            <param name="inputChannels">The input channels.</param>
            <param name="outputChannels">The output channels.</param>
        </member>
        <member name="P:NAudio.Wave.AsioOut.PlaybackLatency">
            <summary>
            Gets the latency (in ms) of the playback driver
            </summary>
        </member>
        <member name="P:NAudio.Wave.AsioOut.PlaybackState">
            <summary>
            Playback State
            </summary>
        </member>
        <member name="P:NAudio.Wave.AsioOut.DriverName">
            <summary>
            Driver Name
            </summary>
        </member>
        <member name="P:NAudio.Wave.AsioOut.NumberOfOutputChannels">
            <summary>
            The number of output channels we are currently using for playback
            (Must be less than or equal to DriverOutputChannelCount)
            </summary>
        </member>
        <member name="P:NAudio.Wave.AsioOut.NumberOfInputChannels">
            <summary>
            The number of input channels we are currently recording from
            (Must be less than or equal to DriverInputChannelCount)
            </summary>
        </member>
        <member name="P:NAudio.Wave.AsioOut.DriverInputChannelCount">
            <summary>
            The maximum number of input channels this ASIO driver supports
            </summary>
        </member>
        <member name="P:NAudio.Wave.AsioOut.DriverOutputChannelCount">
            <summary>
            The maximum number of output channels this ASIO driver supports
            </summary>
        </member>
        <member name="P:NAudio.Wave.AsioOut.FramesPerBuffer">
            <summary>
            The number of samples per channel, per buffer.
            </summary>
        </member>
        <member name="P:NAudio.Wave.AsioOut.ChannelOffset">
            <summary>
            By default the first channel on the input WaveProvider is sent to the first ASIO output.
            This option sends it to the specified channel number.
            Warning: make sure you don't set it higher than the number of available output channels - 
            the number of source channels.
            n.b. Future NAudio may modify this
            </summary>
        </member>
        <member name="P:NAudio.Wave.AsioOut.InputChannelOffset">
            <summary>
            Input channel offset (used when recording), allowing you to choose to record from just one
            specific input rather than them all
            </summary>
        </member>
        <member name="P:NAudio.Wave.AsioOut.Volume">
            <summary>
            Sets the volume (1.0 is unity gain)
            Not supported for ASIO Out. Set the volume on the input stream instead
            </summary>
        </member>
        <member name="M:NAudio.Wave.AsioOut.AsioInputChannelName(System.Int32)">
            <summary>
            Get the input channel name
            </summary>
            <param name="channel">channel index (zero based)</param>
            <returns>channel name</returns>
        </member>
        <member name="M:NAudio.Wave.AsioOut.AsioOutputChannelName(System.Int32)">
            <summary>
            Get the output channel name
            </summary>
            <param name="channel">channel index (zero based)</param>
            <returns>channel name</returns>
        </member>
        <member name="T:NAudio.Wave.CueWaveFileWriter">
            <summary>
            A wave file writer that adds cue support
            </summary>
        </member>
        <member name="M:NAudio.Wave.CueWaveFileWriter.#ctor(System.String,NAudio.Wave.WaveFormat)">
            <summary>
            Writes a wave file, including a cues chunk
            </summary>
        </member>
        <member name="M:NAudio.Wave.CueWaveFileWriter.AddCue(System.Int32,System.String)">
            <summary>
            Adds a cue to the Wave file
            </summary>
            <param name="position">Sample position</param>
            <param name="label">Label text</param>
        </member>
        <member name="M:NAudio.Wave.CueWaveFileWriter.UpdateHeader(System.IO.BinaryWriter)">
            <summary>
            Updates the header, and writes the cues out
            </summary>
        </member>
        <member name="T:NAudio.Wave.MediaFoundationEncoder">
            <summary>
            Media Foundation Encoder class allows you to use Media Foundation to encode an IWaveProvider
            to any supported encoding format
            </summary>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationEncoder.GetEncodeBitrates(System.Guid,System.Int32,System.Int32)">
            <summary>
            Queries the available bitrates for a given encoding output type, sample rate and number of channels
            </summary>
            <param name="audioSubtype">Audio subtype - a value from the AudioSubtypes class</param>
            <param name="sampleRate">The sample rate of the PCM to encode</param>
            <param name="channels">The number of channels of the PCM to encode</param>
            <returns>An array of available bitrates in average bits per second</returns>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationEncoder.GetOutputMediaTypes(System.Guid)">
            <summary>
            Gets all the available media types for a particular 
            </summary>
            <param name="audioSubtype">Audio subtype - a value from the AudioSubtypes class</param>
            <returns>An array of available media types that can be encoded with this subtype</returns>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationEncoder.EncodeToWma(NAudio.Wave.IWaveProvider,System.String,System.Int32)">
            <summary>
            Helper function to simplify encoding Window Media Audio
            Should be supported on Vista and above (not tested)
            </summary>
            <param name="inputProvider">Input provider, must be PCM</param>
            <param name="outputFile">Output file path, should end with .wma</param>
            <param name="desiredBitRate">Desired bitrate. Use GetEncodeBitrates to find the possibilities for your input type</param>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationEncoder.EncodeToMp3(NAudio.Wave.IWaveProvider,System.String,System.Int32)">
            <summary>
            Helper function to simplify encoding to MP3
            By default, will only be available on Windows 8 and above
            </summary>
            <param name="inputProvider">Input provider, must be PCM</param>
            <param name="outputFile">Output file path, should end with .mp3</param>
            <param name="desiredBitRate">Desired bitrate. Use GetEncodeBitrates to find the possibilities for your input type</param>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationEncoder.EncodeToAac(NAudio.Wave.IWaveProvider,System.String,System.Int32)">
            <summary>
            Helper function to simplify encoding to AAC
            By default, will only be available on Windows 7 and above
            </summary>
            <param name="inputProvider">Input provider, must be PCM</param>
            <param name="outputFile">Output file path, should end with .mp4 (or .aac on Windows 8)</param>
            <param name="desiredBitRate">Desired bitrate. Use GetEncodeBitrates to find the possibilities for your input type</param>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationEncoder.SelectMediaType(System.Guid,NAudio.Wave.WaveFormat,System.Int32)">
            <summary>
            Tries to find the encoding media type with the closest bitrate to that specified
            </summary>
            <param name="audioSubtype">Audio subtype, a value from AudioSubtypes</param>
            <param name="inputFormat">Your encoder input format (used to check sample rate and channel count)</param>
            <param name="desiredBitRate">Your desired bitrate</param>
            <returns>The closest media type, or null if none available</returns>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationEncoder.#ctor(NAudio.MediaFoundation.MediaType)">
            <summary>
            Creates a new encoder that encodes to the specified output media type
            </summary>
            <param name="outputMediaType">Desired output media type</param>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationEncoder.Encode(System.String,NAudio.Wave.IWaveProvider)">
            <summary>
            Encodes a file
            </summary>
            <param name="outputFile">Output filename (container type is deduced from the filename)</param>
            <param name="inputProvider">Input provider (should be PCM, some encoders will also allow IEEE float)</param>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationEncoder.Dispose(System.Boolean)">
            <summary>
            Disposes this instance
            </summary>
            <param name="disposing"></param>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationEncoder.Dispose">
            <summary>
            Disposes this instance
            </summary>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationEncoder.Finalize">
            <summary>
            Finalizer
            </summary>
        </member>
        <member name="T:NAudio.Wave.StoppedEventArgs">
            <summary>
            Stopped Event Args
            </summary>
        </member>
        <member name="M:NAudio.Wave.StoppedEventArgs.#ctor(System.Exception)">
            <summary>
            Initializes a new instance of StoppedEventArgs
            </summary>
            <param name="exception">An exception to report (null if no exception)</param>
        </member>
        <member name="P:NAudio.Wave.StoppedEventArgs.Exception">
            <summary>
            An exception. Will be null if the playback or record operation stopped
            </summary>
        </member>
        <member name="T:NAudio.Wave.IWaveBuffer">
            <summary>
            IWaveBuffer interface use to store wave datas. 
            Data can be manipulated with arrays (<see cref="P:NAudio.Wave.IWaveBuffer.ByteBuffer"/>,<see cref="P:NAudio.Wave.IWaveBuffer.FloatBuffer"/>,
            <see cref="P:NAudio.Wave.IWaveBuffer.ShortBuffer"/>,<see cref="P:NAudio.Wave.IWaveBuffer.IntBuffer"/> ) that are pointing to the same memory buffer.
            This is a requirement for all subclasses.
            
            Use the associated Count property based on the type of buffer to get the number of data in the 
            buffer.
            
            <see cref="T:NAudio.Wave.WaveBuffer"/> for the standard implementation using C# unions.
            </summary>
        </member>
        <member name="P:NAudio.Wave.IWaveBuffer.ByteBuffer">
            <summary>
            Gets the byte buffer.
            </summary>
            <value>The byte buffer.</value>
        </member>
        <member name="P:NAudio.Wave.IWaveBuffer.FloatBuffer">
            <summary>
            Gets the float buffer.
            </summary>
            <value>The float buffer.</value>
        </member>
        <member name="P:NAudio.Wave.IWaveBuffer.ShortBuffer">
            <summary>
            Gets the short buffer.
            </summary>
            <value>The short buffer.</value>
        </member>
        <member name="P:NAudio.Wave.IWaveBuffer.IntBuffer">
            <summary>
            Gets the int buffer.
            </summary>
            <value>The int buffer.</value>
        </member>
        <member name="P:NAudio.Wave.IWaveBuffer.MaxSize">
            <summary>
            Gets the max size in bytes of the byte buffer..
            </summary>
            <value>Maximum number of bytes in the buffer.</value>
        </member>
        <member name="P:NAudio.Wave.IWaveBuffer.ByteBufferCount">
            <summary>
            Gets the byte buffer count.
            </summary>
            <value>The byte buffer count.</value>
        </member>
        <member name="P:NAudio.Wave.IWaveBuffer.FloatBufferCount">
            <summary>
            Gets the float buffer count.
            </summary>
            <value>The float buffer count.</value>
        </member>
        <member name="P:NAudio.Wave.IWaveBuffer.ShortBufferCount">
            <summary>
            Gets the short buffer count.
            </summary>
            <value>The short buffer count.</value>
        </member>
        <member name="P:NAudio.Wave.IWaveBuffer.IntBufferCount">
            <summary>
            Gets the int buffer count.
            </summary>
            <value>The int buffer count.</value>
        </member>
        <member name="T:NAudio.Wave.IWavePlayer">
            <summary>
            Represents the interface to a device that can play a WaveFile
            </summary>
        </member>
        <member name="M:NAudio.Wave.IWavePlayer.Play">
            <summary>
            Begin playback
            </summary>
        </member>
        <member name="M:NAudio.Wave.IWavePlayer.Stop">
            <summary>
            Stop playback
            </summary>
        </member>
        <member name="M:NAudio.Wave.IWavePlayer.Pause">
            <summary>
            Pause Playback
            </summary>
        </member>
        <member name="M:NAudio.Wave.IWavePlayer.Init(NAudio.Wave.IWaveProvider)">
            <summary>
            Initialise playback
            </summary>
            <param name="waveProvider">The waveprovider to be played</param>
        </member>
        <member name="P:NAudio.Wave.IWavePlayer.PlaybackState">
            <summary>
            Current playback state
            </summary>
        </member>
        <member name="P:NAudio.Wave.IWavePlayer.Volume">
            <summary>
            The volume 1.0 is full scale
            </summary>
        </member>
        <member name="E:NAudio.Wave.IWavePlayer.PlaybackStopped">
            <summary>
            Indicates that playback has gone into a stopped state due to 
            reaching the end of the input stream or an error has been encountered during playback
            </summary>
        </member>
        <member name="T:NAudio.Wave.IWavePosition">
            <summary>
            Interface for IWavePlayers that can report position
            </summary>
        </member>
        <member name="M:NAudio.Wave.IWavePosition.GetPosition">
            <summary>
            Position (in terms of bytes played - does not necessarily)
            </summary>
            <returns>Position in bytes</returns>
        </member>
        <member name="P:NAudio.Wave.IWavePosition.OutputWaveFormat">
            <summary>
            Gets a <see cref="T:NAudio.Wave.WaveFormat"/> instance indicating the format the hardware is using.
            </summary>
        </member>
        <member name="T:NAudio.Wave.IWaveProvider">
            <summary>
            Generic interface for all WaveProviders.
            </summary>
        </member>
        <member name="P:NAudio.Wave.IWaveProvider.WaveFormat">
            <summary>
            Gets the WaveFormat of this WaveProvider.
            </summary>
            <value>The wave format.</value>
        </member>
        <member name="M:NAudio.Wave.IWaveProvider.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Fill the specified buffer with wave data.
            </summary>
            <param name="buffer">The buffer to fill of wave data.</param>
            <param name="offset">Offset into buffer</param>
            <param name="count">The number of bytes to read</param>
            <returns>the number of bytes written to the buffer.</returns>
        </member>
        <member name="T:NAudio.Wave.DirectSoundOut">
            <summary>
            NativeDirectSoundOut using DirectSound COM interop.
            Contact author: Alexandre Mutel - alexandre_mutel at yahoo.fr
            Modified by: Graham "Gee" Plumb
            </summary>
        </member>
        <member name="E:NAudio.Wave.DirectSoundOut.PlaybackStopped">
            <summary>
            Playback Stopped
            </summary>
        </member>
        <member name="P:NAudio.Wave.DirectSoundOut.Devices">
            <summary>
            Gets the DirectSound output devices in the system
            </summary>
        </member>
        <member name="M:NAudio.Wave.DirectSoundOut.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NAudio.Wave.DirectSoundOut"/> class.
            </summary>
        </member>
        <member name="M:NAudio.Wave.DirectSoundOut.#ctor(System.Guid)">
            <summary>
            Initializes a new instance of the <see cref="T:NAudio.Wave.DirectSoundOut"/> class.
            </summary>
        </member>
        <member name="M:NAudio.Wave.DirectSoundOut.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NAudio.Wave.DirectSoundOut"/> class.
            </summary>
        </member>
        <member name="M:NAudio.Wave.DirectSoundOut.#ctor(System.Guid,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NAudio.Wave.DirectSoundOut"/> class.
            (40ms seems to work under Vista).
            </summary>
            <param name="latency">The latency.</param>
            <param name="device">Selected device</param>
        </member>
        <member name="M:NAudio.Wave.DirectSoundOut.Finalize">
            <summary>
            Releases unmanaged resources and performs other cleanup operations before the
            <see cref="T:NAudio.Wave.DirectSoundOut"/> is reclaimed by garbage collection.
            </summary>
        </member>
        <member name="M:NAudio.Wave.DirectSoundOut.Play">
            <summary>
            Begin playback
            </summary>
        </member>
        <member name="M:NAudio.Wave.DirectSoundOut.Stop">
            <summary>
            Stop playback
            </summary>
        </member>
        <member name="M:NAudio.Wave.DirectSoundOut.Pause">
            <summary>
            Pause Playback
            </summary>
        </member>
        <member name="M:NAudio.Wave.DirectSoundOut.GetPosition">
            <summary>
            Gets the current position in bytes from the wave output device.
            (n.b. this is not the same thing as the position within your reader
            stream)
            </summary>
            <returns>Position in bytes</returns>
        </member>
        <member name="P:NAudio.Wave.DirectSoundOut.PlaybackPosition">
            <summary>
            Gets the current position from the wave output device.
            </summary>
        </member>
        <member name="M:NAudio.Wave.DirectSoundOut.Init(NAudio.Wave.IWaveProvider)">
            <summary>
            Initialise playback
            </summary>
            <param name="waveProvider">The waveprovider to be played</param>
        </member>
        <member name="P:NAudio.Wave.DirectSoundOut.PlaybackState">
            <summary>
            Current playback state
            </summary>
            <value></value>
        </member>
        <member name="P:NAudio.Wave.DirectSoundOut.Volume">
            <summary>
            The volume 1.0 is full scale
            </summary>
            <value></value>
        </member>
        <member name="M:NAudio.Wave.DirectSoundOut.Dispose">
            <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
            </summary>
        </member>
        <member name="M:NAudio.Wave.DirectSoundOut.IsBufferLost">
            <summary>
            Determines whether the SecondaryBuffer is lost.
            </summary>
            <returns>
            	<c>true</c> if [is buffer lost]; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:NAudio.Wave.DirectSoundOut.MsToBytes(System.Int32)">
            <summary>
            Convert ms to bytes size according to WaveFormat
            </summary>
            <param name="ms">The ms</param>
            <returns>number of byttes</returns>
        </member>
        <member name="M:NAudio.Wave.DirectSoundOut.PlaybackThreadFunc">
            <summary>
            Processes the samples in a separate thread.
            </summary>
        </member>
        <member name="M:NAudio.Wave.DirectSoundOut.StopPlayback">
            <summary>
            Stop playback
            </summary>
        </member>
        <member name="M:NAudio.Wave.DirectSoundOut.Feed(System.Int32)">
            <summary>
            Feeds the SecondaryBuffer with the WaveStream
            </summary>
            <param name="bytesToCopy">number of bytes to feed</param>
        </member>
        <member name="T:NAudio.Wave.DirectSoundOut.IDirectSound">
            <summary>
            IDirectSound interface
            </summary>
        </member>
        <member name="T:NAudio.Wave.DirectSoundOut.IDirectSoundBuffer">
            <summary>
            IDirectSoundBuffer interface
            </summary>
        </member>
        <member name="T:NAudio.Wave.DirectSoundOut.IDirectSoundNotify">
            <summary>
            IDirectSoundNotify interface
            </summary>
        </member>
        <member name="M:NAudio.Wave.DirectSoundOut.DirectSoundCreate(System.Guid@,NAudio.Wave.DirectSoundOut.IDirectSound@,System.IntPtr)">
            <summary>
            Instanciate DirectSound from the DLL
            </summary>
            <param name="GUID">The GUID.</param>
            <param name="directSound">The direct sound.</param>
            <param name="pUnkOuter">The p unk outer.</param>
        </member>
        <member name="F:NAudio.Wave.DirectSoundOut.DSDEVID_DefaultPlayback">
            <summary>
            DirectSound default playback device GUID 
            </summary>
        </member>
        <member name="F:NAudio.Wave.DirectSoundOut.DSDEVID_DefaultCapture">
            <summary>
            DirectSound default capture device GUID
            </summary>
        </member>
        <member name="F:NAudio.Wave.DirectSoundOut.DSDEVID_DefaultVoicePlayback">
            <summary>
            DirectSound default device for voice playback
            </summary>
        </member>
        <member name="F:NAudio.Wave.DirectSoundOut.DSDEVID_DefaultVoiceCapture">
            <summary>
            DirectSound default device for voice capture
            </summary>
        </member>
        <member name="T:NAudio.Wave.DirectSoundOut.DSEnumCallback">
            <summary>
            The DSEnumCallback function is an application-defined callback function that enumerates the DirectSound drivers. 
            The system calls this function in response to the application's call to the DirectSoundEnumerate or DirectSoundCaptureEnumerate function.
            </summary>
            <param name="lpGuid">Address of the GUID that identifies the device being enumerated, or NULL for the primary device. This value can be passed to the DirectSoundCreate8 or DirectSoundCaptureCreate8 function to create a device object for that driver. </param>
            <param name="lpcstrDescription">Address of a null-terminated string that provides a textual description of the DirectSound device. </param>
            <param name="lpcstrModule">Address of a null-terminated string that specifies the module name of the DirectSound driver corresponding to this device. </param>
            <param name="lpContext">Address of application-defined data. This is the pointer passed to DirectSoundEnumerate or DirectSoundCaptureEnumerate as the lpContext parameter. </param>
            <returns>Returns TRUE to continue enumerating drivers, or FALSE to stop.</returns>
        </member>
        <member name="M:NAudio.Wave.DirectSoundOut.DirectSoundEnumerate(NAudio.Wave.DirectSoundOut.DSEnumCallback,System.IntPtr)">
            <summary>
            The DirectSoundEnumerate function enumerates the DirectSound drivers installed in the system.
            </summary>
            <param name="lpDSEnumCallback">callback function</param>
            <param name="lpContext">User context</param>
        </member>
        <member name="M:NAudio.Wave.DirectSoundOut.GetDesktopWindow">
            <summary>
            Gets the HANDLE of the desktop window.
            </summary>
            <returns>HANDLE of the Desktop window</returns>
        </member>
        <member name="T:NAudio.Wave.DirectSoundDeviceInfo">
            <summary>
            Class for enumerating DirectSound devices
            </summary>
        </member>
        <member name="P:NAudio.Wave.DirectSoundDeviceInfo.Guid">
            <summary>
            The device identifier
            </summary>
        </member>
        <member name="P:NAudio.Wave.DirectSoundDeviceInfo.Description">
            <summary>
            Device description
            </summary>
        </member>
        <member name="P:NAudio.Wave.DirectSoundDeviceInfo.ModuleName">
            <summary>
            Device module name
            </summary>
        </member>
        <member name="T:NAudio.Wave.ISampleProvider">
            <summary>
            Like IWaveProvider, but makes it much simpler to put together a 32 bit floating
            point mixing engine
            </summary>
        </member>
        <member name="P:NAudio.Wave.ISampleProvider.WaveFormat">
            <summary>
            Gets the WaveFormat of this Sample Provider.
            </summary>
            <value>The wave format.</value>
        </member>
        <member name="M:NAudio.Wave.ISampleProvider.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Fill the specified buffer with 32 bit floating point samples
            </summary>
            <param name="buffer">The buffer to fill with samples.</param>
            <param name="offset">Offset into buffer</param>
            <param name="count">The number of samples to read</param>
            <returns>the number of samples written to the buffer.</returns>
        </member>
        <member name="T:NAudio.Wave.PlaybackState">
            <summary>
            Playback State
            </summary>
        </member>
        <member name="F:NAudio.Wave.PlaybackState.Stopped">
            <summary>
            Stopped
            </summary>
        </member>
        <member name="F:NAudio.Wave.PlaybackState.Playing">
            <summary>
            Playing
            </summary>
        </member>
        <member name="F:NAudio.Wave.PlaybackState.Paused">
            <summary>
            Paused
            </summary>
        </member>
        <member name="T:NAudio.Wave.WasapiOut">
            <summary>
            Support for playback using Wasapi
            </summary>
        </member>
        <member name="E:NAudio.Wave.WasapiOut.PlaybackStopped">
            <summary>
            Playback Stopped
            </summary>
        </member>
        <member name="M:NAudio.Wave.WasapiOut.#ctor">
            <summary>
            WASAPI Out shared mode, defauult
            </summary>
        </member>
        <member name="M:NAudio.Wave.WasapiOut.#ctor(NAudio.CoreAudioApi.AudioClientShareMode,System.Int32)">
            <summary>
            WASAPI Out using default audio endpoint
            </summary>
            <param name="shareMode">ShareMode - shared or exclusive</param>
            <param name="latency">Desired latency in milliseconds</param>
        </member>
        <member name="M:NAudio.Wave.WasapiOut.#ctor(NAudio.CoreAudioApi.AudioClientShareMode,System.Boolean,System.Int32)">
            <summary>
            WASAPI Out using default audio endpoint
            </summary>
            <param name="shareMode">ShareMode - shared or exclusive</param>
            <param name="useEventSync">true if sync is done with event. false use sleep.</param>
            <param name="latency">Desired latency in milliseconds</param>
        </member>
        <member name="M:NAudio.Wave.WasapiOut.#ctor(NAudio.CoreAudioApi.MMDevice,NAudio.CoreAudioApi.AudioClientShareMode,System.Boolean,System.Int32)">
            <summary>
            Creates a new WASAPI Output
            </summary>
            <param name="device">Device to use</param>
            <param name="shareMode"></param>
            <param name="useEventSync">true if sync is done with event. false use sleep.</param>
            <param name="latency">Desired latency in milliseconds</param>
        </member>
        <member name="M:NAudio.Wave.WasapiOut.GetPosition">
            <summary>
            Gets the current position in bytes from the wave output device.
            (n.b. this is not the same thing as the position within your reader
            stream)
            </summary>
            <returns>Position in bytes</returns>
        </member>
        <member name="P:NAudio.Wave.WasapiOut.OutputWaveFormat">
            <summary>
            Gets a <see cref="T:NAudio.Wave.WaveFormat"/> instance indicating the format the hardware is using.
            </summary>
        </member>
        <member name="M:NAudio.Wave.WasapiOut.Play">
            <summary>
            Begin Playback
            </summary>
        </member>
        <member name="M:NAudio.Wave.WasapiOut.Stop">
            <summary>
            Stop playback and flush buffers
            </summary>
        </member>
        <member name="M:NAudio.Wave.WasapiOut.Pause">
            <summary>
            Stop playback without flushing buffers
            </summary>
        </member>
        <member name="M:NAudio.Wave.WasapiOut.Init(NAudio.Wave.IWaveProvider)">
            <summary>
            Initialize for playing the specified wave stream
            </summary>
            <param name="waveProvider">IWaveProvider to play</param>
        </member>
        <member name="P:NAudio.Wave.WasapiOut.PlaybackState">
            <summary>
            Playback State
            </summary>
        </member>
        <member name="P:NAudio.Wave.WasapiOut.Volume">
            <summary>
            Volume
            </summary>
        </member>
        <member name="P:NAudio.Wave.WasapiOut.AudioStreamVolume">
            <summary>
            Retrieve the AudioStreamVolume object for this audio stream
            </summary>
            <remarks>
            This returns the AudioStreamVolume object ONLY for shared audio streams.
            </remarks>
            <exception cref="T:System.InvalidOperationException">
            This is thrown when an exclusive audio stream is being used.
            </exception>
        </member>
        <member name="M:NAudio.Wave.WasapiOut.Dispose">
            <summary>
            Dispose
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveBuffer">
            <summary>
            WaveBuffer class use to store wave datas. Data can be manipulated with arrays
            (<see cref="P:NAudio.Wave.WaveBuffer.ByteBuffer"/>,<see cref="P:NAudio.Wave.WaveBuffer.FloatBuffer"/>,<see cref="P:NAudio.Wave.WaveBuffer.ShortBuffer"/>,<see cref="P:NAudio.Wave.WaveBuffer.IntBuffer"/> ) that are pointing to the
            same memory buffer. Use the associated Count property based on the type of buffer to get the number of 
            data in the buffer.
            Implicit casting is now supported to float[], byte[], int[], short[].
            You must not use Length on returned arrays.
            
            n.b. FieldOffset is 8 now to allow it to work natively on 64 bit
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveBuffer.numberOfBytes">
            <summary>
            Number of Bytes
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveBuffer.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NAudio.Wave.WaveBuffer"/> class.
            </summary>
            <param name="sizeToAllocateInBytes">The number of bytes. The size of the final buffer will be aligned on 4 Bytes (upper bound)</param>
        </member>
        <member name="M:NAudio.Wave.WaveBuffer.#ctor(System.Byte[])">
            <summary>
            Initializes a new instance of the <see cref="T:NAudio.Wave.WaveBuffer"/> class binded to a specific byte buffer.
            </summary>
            <param name="bufferToBoundTo">A byte buffer to bound the WaveBuffer to.</param>
        </member>
        <member name="M:NAudio.Wave.WaveBuffer.BindTo(System.Byte[])">
            <summary>
            Binds this WaveBuffer instance to a specific byte buffer.
            </summary>
            <param name="bufferToBoundTo">A byte buffer to bound the WaveBuffer to.</param>
        </member>
        <member name="M:NAudio.Wave.WaveBuffer.op_Implicit(NAudio.Wave.WaveBuffer)~System.Byte[]">
            <summary>
            Performs an implicit conversion from <see cref="T:NAudio.Wave.WaveBuffer"/> to <see cref="T:System.Byte"/>.
            </summary>
            <param name="waveBuffer">The wave buffer.</param>
            <returns>The result of the conversion.</returns>
        </member>
        <member name="M:NAudio.Wave.WaveBuffer.op_Implicit(NAudio.Wave.WaveBuffer)~System.Single[]">
            <summary>
            Performs an implicit conversion from <see cref="T:NAudio.Wave.WaveBuffer"/> to <see cref="T:System.Single"/>.
            </summary>
            <param name="waveBuffer">The wave buffer.</param>
            <returns>The result of the conversion.</returns>
        </member>
        <member name="M:NAudio.Wave.WaveBuffer.op_Implicit(NAudio.Wave.WaveBuffer)~System.Int32[]">
            <summary>
            Performs an implicit conversion from <see cref="T:NAudio.Wave.WaveBuffer"/> to <see cref="T:System.Int32"/>.
            </summary>
            <param name="waveBuffer">The wave buffer.</param>
            <returns>The result of the conversion.</returns>
        </member>
        <member name="M:NAudio.Wave.WaveBuffer.op_Implicit(NAudio.Wave.WaveBuffer)~System.Int16[]">
            <summary>
            Performs an implicit conversion from <see cref="T:NAudio.Wave.WaveBuffer"/> to <see cref="T:System.Int16"/>.
            </summary>
            <param name="waveBuffer">The wave buffer.</param>
            <returns>The result of the conversion.</returns>
        </member>
        <member name="P:NAudio.Wave.WaveBuffer.ByteBuffer">
            <summary>
            Gets the byte buffer.
            </summary>
            <value>The byte buffer.</value>
        </member>
        <member name="P:NAudio.Wave.WaveBuffer.FloatBuffer">
            <summary>
            Gets the float buffer.
            </summary>
            <value>The float buffer.</value>
        </member>
        <member name="P:NAudio.Wave.WaveBuffer.ShortBuffer">
            <summary>
            Gets the short buffer.
            </summary>
            <value>The short buffer.</value>
        </member>
        <member name="P:NAudio.Wave.WaveBuffer.IntBuffer">
            <summary>
            Gets the int buffer.
            </summary>
            <value>The int buffer.</value>
        </member>
        <member name="P:NAudio.Wave.WaveBuffer.MaxSize">
            <summary>
            Gets the max size in bytes of the byte buffer..
            </summary>
            <value>Maximum number of bytes in the buffer.</value>
        </member>
        <member name="P:NAudio.Wave.WaveBuffer.ByteBufferCount">
            <summary>
            Gets or sets the byte buffer count.
            </summary>
            <value>The byte buffer count.</value>
        </member>
        <member name="P:NAudio.Wave.WaveBuffer.FloatBufferCount">
            <summary>
            Gets or sets the float buffer count.
            </summary>
            <value>The float buffer count.</value>
        </member>
        <member name="P:NAudio.Wave.WaveBuffer.ShortBufferCount">
            <summary>
            Gets or sets the short buffer count.
            </summary>
            <value>The short buffer count.</value>
        </member>
        <member name="P:NAudio.Wave.WaveBuffer.IntBufferCount">
            <summary>
            Gets or sets the int buffer count.
            </summary>
            <value>The int buffer count.</value>
        </member>
        <member name="M:NAudio.Wave.WaveBuffer.Clear">
            <summary>
            Clears the associated buffer.
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveBuffer.Copy(System.Array)">
            <summary>
            Copy this WaveBuffer to a destination buffer up to ByteBufferCount bytes.
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveBuffer.CheckValidityCount(System.String,System.Int32,System.Int32)">
            <summary>
            Checks the validity of the count parameters.
            </summary>
            <param name="argName">Name of the arg.</param>
            <param name="value">The value.</param>
            <param name="sizeOfValue">The size of value.</param>
        </member>
        <member name="T:NAudio.Wave.WaveCallbackInfo">
            <summary>
            Wave Callback Info
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveCallbackInfo.Strategy">
            <summary>
            Callback Strategy
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveCallbackInfo.Handle">
            <summary>
            Window Handle (if applicable)
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveCallbackInfo.FunctionCallback">
            <summary>
            Sets up a new WaveCallbackInfo for function callbacks
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveCallbackInfo.NewWindow">
            <summary>
            Sets up a new WaveCallbackInfo to use a New Window
            IMPORTANT: only use this on the GUI thread
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveCallbackInfo.ExistingWindow(System.IntPtr)">
            <summary>
            Sets up a new WaveCallbackInfo to use an existing window
            IMPORTANT: only use this on the GUI thread
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveCallbackStrategy">
            <summary>
            Wave Callback Strategy
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveCallbackStrategy.FunctionCallback">
            <summary>
            Use a function
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveCallbackStrategy.NewWindow">
            <summary>
            Create a new window (should only be done if on GUI thread)
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveCallbackStrategy.ExistingWindow">
            <summary>
            Use an existing window handle
            </summary>
        </member>
        <member name="F:NAudio.Wave.WaveCallbackStrategy.Event">
            <summary>
            Use an event handle
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveFileWriter">
            <summary>
            This class writes WAV data to a .wav file on disk
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFileWriter.CreateWaveFile16(System.String,NAudio.Wave.ISampleProvider)">
            <summary>
            Creates a 16 bit Wave File from an ISampleProvider
            BEWARE: the source provider must not return data indefinitely
            </summary>
            <param name="filename">The filename to write to</param>
            <param name="sourceProvider">The source sample provider</param>
        </member>
        <member name="M:NAudio.Wave.WaveFileWriter.CreateWaveFile(System.String,NAudio.Wave.IWaveProvider)">
            <summary>
            Creates a Wave file by reading all the data from a WaveProvider
            BEWARE: the WaveProvider MUST return 0 from its Read method when it is finished,
            or the Wave File will grow indefinitely.
            </summary>
            <param name="filename">The filename to use</param>
            <param name="sourceProvider">The source WaveProvider</param>
        </member>
        <member name="M:NAudio.Wave.WaveFileWriter.WriteWavFileToStream(System.IO.Stream,NAudio.Wave.IWaveProvider)">
            <summary>
            Writes to a stream by reading all the data from a WaveProvider
            BEWARE: the WaveProvider MUST return 0 from its Read method when it is finished,
            or the Wave File will grow indefinitely.
            </summary>
            <param name="outStream">The stream the method will output to</param>
            <param name="sourceProvider">The source WaveProvider</param>
        </member>
        <member name="M:NAudio.Wave.WaveFileWriter.#ctor(System.IO.Stream,NAudio.Wave.WaveFormat)">
            <summary>
            WaveFileWriter that actually writes to a stream
            </summary>
            <param name="outStream">Stream to be written to</param>
            <param name="format">Wave format to use</param>
        </member>
        <member name="M:NAudio.Wave.WaveFileWriter.#ctor(System.String,NAudio.Wave.WaveFormat)">
            <summary>
            Creates a new WaveFileWriter
            </summary>
            <param name="filename">The filename to write to</param>
            <param name="format">The Wave Format of the output data</param>
        </member>
        <member name="P:NAudio.Wave.WaveFileWriter.Filename">
            <summary>
            The wave file name or null if not applicable
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveFileWriter.Length">
            <summary>
            Number of bytes of audio in the data chunk
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveFileWriter.WaveFormat">
            <summary>
            WaveFormat of this wave file
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveFileWriter.CanRead">
            <summary>
            Returns false: Cannot read from a WaveFileWriter
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveFileWriter.CanWrite">
            <summary>
            Returns true: Can write to a WaveFileWriter
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveFileWriter.CanSeek">
            <summary>
            Returns false: Cannot seek within a WaveFileWriter
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFileWriter.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Read is not supported for a WaveFileWriter
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFileWriter.Seek(System.Int64,System.IO.SeekOrigin)">
            <summary>
            Seek is not supported for a WaveFileWriter
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFileWriter.SetLength(System.Int64)">
            <summary>
            SetLength is not supported for WaveFileWriter
            </summary>
            <param name="value"></param>
        </member>
        <member name="P:NAudio.Wave.WaveFileWriter.Position">
            <summary>
            Gets the Position in the WaveFile (i.e. number of bytes written so far)
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFileWriter.WriteData(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Appends bytes to the WaveFile (assumes they are already in the correct format)
            </summary>
            <param name="data">the buffer containing the wave data</param>
            <param name="offset">the offset from which to start writing</param>
            <param name="count">the number of bytes to write</param>
        </member>
        <member name="M:NAudio.Wave.WaveFileWriter.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Appends bytes to the WaveFile (assumes they are already in the correct format)
            </summary>
            <param name="data">the buffer containing the wave data</param>
            <param name="offset">the offset from which to start writing</param>
            <param name="count">the number of bytes to write</param>
        </member>
        <member name="M:NAudio.Wave.WaveFileWriter.WriteSample(System.Single)">
            <summary>
            Writes a single sample to the Wave file
            </summary>
            <param name="sample">the sample to write (assumed floating point with 1.0f as max value)</param>
        </member>
        <member name="M:NAudio.Wave.WaveFileWriter.WriteSamples(System.Single[],System.Int32,System.Int32)">
            <summary>
            Writes 32 bit floating point samples to the Wave file
            They will be converted to the appropriate bit depth depending on the WaveFormat of the WAV file
            </summary>
            <param name="samples">The buffer containing the floating point samples</param>
            <param name="offset">The offset from which to start writing</param>
            <param name="count">The number of floating point samples to write</param>
        </member>
        <member name="M:NAudio.Wave.WaveFileWriter.WriteData(System.Int16[],System.Int32,System.Int32)">
            <summary>
            Writes 16 bit samples to the Wave file
            </summary>
            <param name="samples">The buffer containing the 16 bit samples</param>
            <param name="offset">The offset from which to start writing</param>
            <param name="count">The number of 16 bit samples to write</param>
        </member>
        <member name="M:NAudio.Wave.WaveFileWriter.WriteSamples(System.Int16[],System.Int32,System.Int32)">
            <summary>
            Writes 16 bit samples to the Wave file
            </summary>
            <param name="samples">The buffer containing the 16 bit samples</param>
            <param name="offset">The offset from which to start writing</param>
            <param name="count">The number of 16 bit samples to write</param>
        </member>
        <member name="M:NAudio.Wave.WaveFileWriter.Flush">
            <summary>
            Ensures data is written to disk
            Also updates header, so that WAV file will be valid up to the point currently written
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFileWriter.Dispose(System.Boolean)">
            <summary>
            Actually performs the close,making sure the header contains the correct data
            </summary>
            <param name="disposing">True if called from <see>Dispose</see></param>
        </member>
        <member name="M:NAudio.Wave.WaveFileWriter.UpdateHeader(System.IO.BinaryWriter)">
            <summary>
            Updates the header with file size information
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFileWriter.Finalize">
            <summary>
            Finaliser - should only be called if the user forgot to close this WaveFileWriter
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveOut">
            <summary>
            Represents a wave out device
            </summary>
        </member>
        <member name="E:NAudio.Wave.WaveOut.PlaybackStopped">
            <summary>
            Indicates playback has stopped automatically
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOut.GetCapabilities(System.Int32)">
            <summary>
            Retrieves the capabilities of a waveOut device
            </summary>
            <param name="devNumber">Device to test</param>
            <returns>The WaveOut device capabilities</returns>
        </member>
        <member name="P:NAudio.Wave.WaveOut.DeviceCount">
            <summary>
            Returns the number of Wave Out devices available in the system
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveOut.DesiredLatency">
            <summary>
            Gets or sets the desired latency in milliseconds
            Should be set before a call to Init
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveOut.NumberOfBuffers">
            <summary>
            Gets or sets the number of buffers used
            Should be set before a call to Init
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveOut.DeviceNumber">
            <summary>
            Gets or sets the device number
            Should be set before a call to Init
            This must be between -1 and <see>DeviceCount</see> - 1.
            -1 means stick to default device even default device is changed
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOut.#ctor">
            <summary>
            Creates a default WaveOut device
            Will use window callbacks if called from a GUI thread, otherwise function
            callbacks
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOut.#ctor(System.IntPtr)">
            <summary>
            Creates a WaveOut device using the specified window handle for callbacks
            </summary>
            <param name="windowHandle">A valid window handle</param>
        </member>
        <member name="M:NAudio.Wave.WaveOut.#ctor(NAudio.Wave.WaveCallbackInfo)">
            <summary>
            Opens a WaveOut device
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOut.Init(NAudio.Wave.IWaveProvider)">
            <summary>
            Initialises the WaveOut device
            </summary>
            <param name="waveProvider">WaveProvider to play</param>
        </member>
        <member name="M:NAudio.Wave.WaveOut.Play">
            <summary>
            Start playing the audio from the WaveStream
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOut.Pause">
            <summary>
            Pause the audio
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOut.Resume">
            <summary>
            Resume playing after a pause from the same position
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOut.Stop">
            <summary>
            Stop and reset the WaveOut device
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOut.GetPosition">
            <summary>
            Gets the current position in bytes from the wave output device.
            (n.b. this is not the same thing as the position within your reader
            stream - it calls directly into waveOutGetPosition)
            </summary>
            <returns>Position in bytes</returns>
        </member>
        <member name="P:NAudio.Wave.WaveOut.OutputWaveFormat">
            <summary>
            Gets a <see cref="T:NAudio.Wave.WaveFormat"/> instance indicating the format the hardware is using.
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveOut.PlaybackState">
            <summary>
            Playback State
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveOut.Volume">
            <summary>
            Volume for this device 1.0 is full scale
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOut.Dispose">
            <summary>
            Closes this WaveOut device
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOut.Dispose(System.Boolean)">
            <summary>
            Closes the WaveOut device and disposes of buffers
            </summary>
            <param name="disposing">True if called from <see>Dispose</see></param>
        </member>
        <member name="M:NAudio.Wave.WaveOut.Finalize">
            <summary>
            Finalizer. Only called when user forgets to call <see>Dispose</see>
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveOutEvent">
            <summary>
            Alternative WaveOut class, making use of the Event callback
            </summary>
        </member>
        <member name="E:NAudio.Wave.WaveOutEvent.PlaybackStopped">
            <summary>
            Indicates playback has stopped automatically
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveOutEvent.DesiredLatency">
            <summary>
            Gets or sets the desired latency in milliseconds
            Should be set before a call to Init
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveOutEvent.NumberOfBuffers">
            <summary>
            Gets or sets the number of buffers used
            Should be set before a call to Init
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveOutEvent.DeviceNumber">
            <summary>
            Gets or sets the device number
            Should be set before a call to Init
            This must be between -1 and <see>DeviceCount</see> - 1.
            -1 means stick to default device even default device is changed
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOutEvent.#ctor">
            <summary>
            Opens a WaveOut device
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOutEvent.Init(NAudio.Wave.IWaveProvider)">
            <summary>
            Initialises the WaveOut device
            </summary>
            <param name="waveProvider">WaveProvider to play</param>
        </member>
        <member name="M:NAudio.Wave.WaveOutEvent.Play">
            <summary>
            Start playing the audio from the WaveStream
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOutEvent.Pause">
            <summary>
            Pause the audio
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOutEvent.Resume">
            <summary>
            Resume playing after a pause from the same position
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOutEvent.Stop">
            <summary>
            Stop and reset the WaveOut device
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOutEvent.GetPosition">
            <summary>
            Gets the current position in bytes from the wave output device.
            (n.b. this is not the same thing as the position within your reader
            stream - it calls directly into waveOutGetPosition)
            </summary>
            <returns>Position in bytes</returns>
        </member>
        <member name="P:NAudio.Wave.WaveOutEvent.OutputWaveFormat">
            <summary>
            Gets a <see cref="T:NAudio.Wave.WaveFormat"/> instance indicating the format the hardware is using.
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveOutEvent.PlaybackState">
            <summary>
            Playback State
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveOutEvent.Volume">
            <summary>
            Obsolete property
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOutEvent.Dispose">
            <summary>
            Closes this WaveOut device
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOutEvent.Dispose(System.Boolean)">
            <summary>
            Closes the WaveOut device and disposes of buffers
            </summary>
            <param name="disposing">True if called from <see>Dispose</see></param>
        </member>
        <member name="M:NAudio.Wave.WaveOutEvent.Finalize">
            <summary>
            Finalizer. Only called when user forgets to call <see>Dispose</see>
            </summary>
        </member>
        <member name="T:NAudio.Wave.BufferedWaveProvider">
            <summary>
            Provides a buffered store of samples
            Read method will return queued samples or fill buffer with zeroes
            Now backed by a circular buffer
            </summary>
        </member>
        <member name="M:NAudio.Wave.BufferedWaveProvider.#ctor(NAudio.Wave.WaveFormat)">
            <summary>
            Creates a new buffered WaveProvider
            </summary>
            <param name="waveFormat">WaveFormat</param>
        </member>
        <member name="P:NAudio.Wave.BufferedWaveProvider.ReadFully">
            <summary>
            If true, always read the amount of data requested, padding with zeroes if necessary
            By default is set to true
            </summary>
        </member>
        <member name="P:NAudio.Wave.BufferedWaveProvider.BufferLength">
            <summary>
            Buffer length in bytes
            </summary>
        </member>
        <member name="P:NAudio.Wave.BufferedWaveProvider.BufferDuration">
            <summary>
            Buffer duration
            </summary>
        </member>
        <member name="P:NAudio.Wave.BufferedWaveProvider.DiscardOnBufferOverflow">
            <summary>
            If true, when the buffer is full, start throwing away data
            if false, AddSamples will throw an exception when buffer is full
            </summary>
        </member>
        <member name="P:NAudio.Wave.BufferedWaveProvider.BufferedBytes">
            <summary>
            The number of buffered bytes
            </summary>
        </member>
        <member name="P:NAudio.Wave.BufferedWaveProvider.BufferedDuration">
            <summary>
            Buffered Duration
            </summary>
        </member>
        <member name="P:NAudio.Wave.BufferedWaveProvider.WaveFormat">
            <summary>
            Gets the WaveFormat
            </summary>
        </member>
        <member name="M:NAudio.Wave.BufferedWaveProvider.AddSamples(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Adds samples. Takes a copy of buffer, so that buffer can be reused if necessary
            </summary>
        </member>
        <member name="M:NAudio.Wave.BufferedWaveProvider.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads from this WaveProvider
            Will always return count bytes, since we will zero-fill the buffer if not enough available
            </summary>
        </member>
        <member name="M:NAudio.Wave.BufferedWaveProvider.ClearBuffer">
            <summary>
            Discards all audio from the buffer
            </summary>
        </member>
        <member name="T:NAudio.Wave.MediaFoundationResampler">
            <summary>
            The Media Foundation Resampler Transform
            </summary>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationResampler.#ctor(NAudio.Wave.IWaveProvider,NAudio.Wave.WaveFormat)">
            <summary>
            Creates the Media Foundation Resampler, allowing modifying of sample rate, bit depth and channel count
            </summary>
            <param name="sourceProvider">Source provider, must be PCM</param>
            <param name="outputFormat">Output format, must also be PCM</param>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationResampler.#ctor(NAudio.Wave.IWaveProvider,System.Int32)">
            <summary>
            Creates a resampler with a specified target output sample rate
            </summary>
            <param name="sourceProvider">Source provider</param>
            <param name="outputSampleRate">Output sample rate</param>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationResampler.CreateTransform">
            <summary>
            Creates and configures the actual Resampler transform
            </summary>
            <returns>A newly created and configured resampler MFT</returns>
        </member>
        <member name="P:NAudio.Wave.MediaFoundationResampler.ResamplerQuality">
            <summary>
            Gets or sets the Resampler quality. n.b. set the quality before starting to resample.
            1 is lowest quality (linear interpolation) and 60 is best quality
            </summary>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationResampler.Dispose(System.Boolean)">
            <summary>
            Disposes this resampler
            </summary>
        </member>
        <member name="T:NAudio.Wave.MixingWaveProvider32">
            <summary>
            WaveProvider that can mix together multiple 32 bit floating point input provider
            All channels must have the same number of inputs and same sample rate
            n.b. Work in Progress - not tested yet
            </summary>
        </member>
        <member name="M:NAudio.Wave.MixingWaveProvider32.#ctor">
            <summary>
            Creates a new MixingWaveProvider32
            </summary>
        </member>
        <member name="M:NAudio.Wave.MixingWaveProvider32.#ctor(System.Collections.Generic.IEnumerable{NAudio.Wave.IWaveProvider})">
            <summary>
            Creates a new 32 bit MixingWaveProvider32
            </summary>
            <param name="inputs">inputs - must all have the same format.</param>
            <exception cref="T:System.ArgumentException">Thrown if the input streams are not 32 bit floating point,
            or if they have different formats to each other</exception>
        </member>
        <member name="M:NAudio.Wave.MixingWaveProvider32.AddInputStream(NAudio.Wave.IWaveProvider)">
            <summary>
            Add a new input to the mixer
            </summary>
            <param name="waveProvider">The wave input to add</param>
        </member>
        <member name="M:NAudio.Wave.MixingWaveProvider32.RemoveInputStream(NAudio.Wave.IWaveProvider)">
            <summary>
            Remove an input from the mixer
            </summary>
            <param name="waveProvider">waveProvider to remove</param>
        </member>
        <member name="P:NAudio.Wave.MixingWaveProvider32.InputCount">
            <summary>
            The number of inputs to this mixer
            </summary>
        </member>
        <member name="M:NAudio.Wave.MixingWaveProvider32.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads bytes from this wave stream
            </summary>
            <param name="buffer">buffer to read into</param>
            <param name="offset">offset into buffer</param>
            <param name="count">number of bytes required</param>
            <returns>Number of bytes read.</returns>
            <exception cref="T:System.ArgumentException">Thrown if an invalid number of bytes requested</exception>
        </member>
        <member name="M:NAudio.Wave.MixingWaveProvider32.Sum32BitAudio(System.Byte[],System.Int32,System.Byte[],System.Int32)">
            <summary>
            Actually performs the mixing
            </summary>
        </member>
        <member name="P:NAudio.Wave.MixingWaveProvider32.WaveFormat">
            <summary>
            <see cref="P:NAudio.Wave.WaveStream.WaveFormat"/>
            </summary>
        </member>
        <member name="T:NAudio.Wave.MultiplexingWaveProvider">
            <summary>
            Allows any number of inputs to be patched to outputs
            Uses could include swapping left and right channels, turning mono into stereo,
            feeding different input sources to different soundcard outputs etc
            </summary>
        </member>
        <member name="M:NAudio.Wave.MultiplexingWaveProvider.#ctor(System.Collections.Generic.IEnumerable{NAudio.Wave.IWaveProvider},System.Int32)">
            <summary>
            Creates a multiplexing wave provider, allowing re-patching of input channels to different
            output channels
            </summary>
            <param name="inputs">Input wave providers. Must all be of the same format, but can have any number of channels</param>
            <param name="numberOfOutputChannels">Desired number of output channels.</param>
        </member>
        <member name="F:NAudio.Wave.MultiplexingWaveProvider.inputBuffer">
            <summary>
            persistent temporary buffer to prevent creating work for garbage collector
            </summary>
        </member>
        <member name="M:NAudio.Wave.MultiplexingWaveProvider.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads data from this WaveProvider
            </summary>
            <param name="buffer">Buffer to be filled with sample data</param>
            <param name="offset">Offset to write to within buffer, usually 0</param>
            <param name="count">Number of bytes required</param>
            <returns>Number of bytes read</returns>
        </member>
        <member name="P:NAudio.Wave.MultiplexingWaveProvider.WaveFormat">
            <summary>
            The WaveFormat of this WaveProvider
            </summary>
        </member>
        <member name="M:NAudio.Wave.MultiplexingWaveProvider.ConnectInputToOutput(System.Int32,System.Int32)">
            <summary>
            Connects a specified input channel to an output channel
            </summary>
            <param name="inputChannel">Input Channel index (zero based). Must be less than InputChannelCount</param>
            <param name="outputChannel">Output Channel index (zero based). Must be less than OutputChannelCount</param>
        </member>
        <member name="P:NAudio.Wave.MultiplexingWaveProvider.InputChannelCount">
            <summary>
            The number of input channels. Note that this is not the same as the number of input wave providers. If you pass in
            one stereo and one mono input provider, the number of input channels is three.
            </summary>
        </member>
        <member name="P:NAudio.Wave.MultiplexingWaveProvider.OutputChannelCount">
            <summary>
            The number of output channels, as specified in the constructor.
            </summary>
        </member>
        <member name="T:NAudio.Wave.SilenceProvider">
            <summary>
            Silence producing wave provider
            Useful for playing silence when doing a WASAPI Loopback Capture
            </summary>
        </member>
        <member name="M:NAudio.Wave.SilenceProvider.#ctor(NAudio.Wave.WaveFormat)">
            <summary>
            Creates a new silence producing wave provider
            </summary>
            <param name="wf">Desired WaveFormat (should be PCM / IEE float</param>
        </member>
        <member name="M:NAudio.Wave.SilenceProvider.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Read silence from into the buffer
            </summary>
        </member>
        <member name="P:NAudio.Wave.SilenceProvider.WaveFormat">
            <summary>
            WaveFormat of this silence producing wave provider
            </summary>
        </member>
        <member name="T:NAudio.Wave.StereoToMonoProvider16">
            <summary>
            Takes a stereo 16 bit input and turns it mono, allowing you to select left or right channel only or mix them together
            </summary>
        </member>
        <member name="M:NAudio.Wave.StereoToMonoProvider16.#ctor(NAudio.Wave.IWaveProvider)">
            <summary>
            Creates a new mono waveprovider based on a stereo input
            </summary>
            <param name="sourceProvider">Stereo 16 bit PCM input</param>
        </member>
        <member name="P:NAudio.Wave.StereoToMonoProvider16.LeftVolume">
            <summary>
            1.0 to mix the mono source entirely to the left channel
            </summary>
        </member>
        <member name="P:NAudio.Wave.StereoToMonoProvider16.RightVolume">
            <summary>
            1.0 to mix the mono source entirely to the right channel
            </summary>
        </member>
        <member name="P:NAudio.Wave.StereoToMonoProvider16.WaveFormat">
            <summary>
            Output Wave Format
            </summary>
        </member>
        <member name="M:NAudio.Wave.StereoToMonoProvider16.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads bytes from this WaveProvider
            </summary>
        </member>
        <member name="T:NAudio.Wave.MonoToStereoProvider16">
            <summary>
            Converts from mono to stereo, allowing freedom to route all, some, or none of the incoming signal to left or right channels
            </summary>
        </member>
        <member name="M:NAudio.Wave.MonoToStereoProvider16.#ctor(NAudio.Wave.IWaveProvider)">
            <summary>
            Creates a new stereo waveprovider based on a mono input
            </summary>
            <param name="sourceProvider">Mono 16 bit PCM input</param>
        </member>
        <member name="P:NAudio.Wave.MonoToStereoProvider16.LeftVolume">
            <summary>
            1.0 to copy the mono stream to the left channel without adjusting volume
            </summary>
        </member>
        <member name="P:NAudio.Wave.MonoToStereoProvider16.RightVolume">
            <summary>
            1.0 to copy the mono stream to the right channel without adjusting volume
            </summary>
        </member>
        <member name="P:NAudio.Wave.MonoToStereoProvider16.WaveFormat">
            <summary>
            Output Wave Format
            </summary>
        </member>
        <member name="M:NAudio.Wave.MonoToStereoProvider16.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads bytes from this WaveProvider
            </summary>
        </member>
        <member name="T:NAudio.Wave.VolumeWaveProvider16">
            <summary>
            Helper class allowing us to modify the volume of a 16 bit stream without converting to IEEE float
            </summary>
        </member>
        <member name="M:NAudio.Wave.VolumeWaveProvider16.#ctor(NAudio.Wave.IWaveProvider)">
            <summary>
            Constructs a new VolumeWaveProvider16
            </summary>
            <param name="sourceProvider">Source provider, must be 16 bit PCM</param>
        </member>
        <member name="P:NAudio.Wave.VolumeWaveProvider16.Volume">
            <summary>
            Gets or sets volume. 
            1.0 is full scale, 0.0 is silence, anything over 1.0 will amplify but potentially clip
            </summary>
        </member>
        <member name="P:NAudio.Wave.VolumeWaveProvider16.WaveFormat">
            <summary>
            WaveFormat of this WaveProvider
            </summary>
        </member>
        <member name="M:NAudio.Wave.VolumeWaveProvider16.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Read bytes from this WaveProvider
            </summary>
            <param name="buffer">Buffer to read into</param>
            <param name="offset">Offset within buffer to read to</param>
            <param name="count">Bytes desired</param>
            <returns>Bytes read</returns>
        </member>
        <member name="T:NAudio.Wave.WaveFloatTo16Provider">
            <summary>
            Converts IEEE float to 16 bit PCM, optionally clipping and adjusting volume along the way
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFloatTo16Provider.#ctor(NAudio.Wave.IWaveProvider)">
            <summary>
            Creates a new WaveFloatTo16Provider
            </summary>
            <param name="sourceProvider">the source provider</param>
        </member>
        <member name="M:NAudio.Wave.WaveFloatTo16Provider.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads bytes from this wave stream
            </summary>
            <param name="destBuffer">The destination buffer</param>
            <param name="offset">Offset into the destination buffer</param>
            <param name="numBytes">Number of bytes read</param>
            <returns>Number of bytes read.</returns>
        </member>
        <member name="P:NAudio.Wave.WaveFloatTo16Provider.WaveFormat">
            <summary>
            <see cref="P:NAudio.Wave.IWaveProvider.WaveFormat"/>
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveFloatTo16Provider.Volume">
            <summary>
            Volume of this channel. 1.0 = full scale
            </summary>
        </member>
        <member name="T:NAudio.Wave.Wave16ToFloatProvider">
            <summary>
            Converts 16 bit PCM to IEEE float, optionally adjusting volume along the way
            </summary>
        </member>
        <member name="M:NAudio.Wave.Wave16ToFloatProvider.#ctor(NAudio.Wave.IWaveProvider)">
            <summary>
            Creates a new Wave16toFloatProvider
            </summary>
            <param name="sourceProvider">the source provider</param>
        </member>
        <member name="M:NAudio.Wave.Wave16ToFloatProvider.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads bytes from this wave stream
            </summary>
            <param name="destBuffer">The destination buffer</param>
            <param name="offset">Offset into the destination buffer</param>
            <param name="numBytes">Number of bytes read</param>
            <returns>Number of bytes read.</returns>
        </member>
        <member name="P:NAudio.Wave.Wave16ToFloatProvider.WaveFormat">
            <summary>
            <see cref="P:NAudio.Wave.IWaveProvider.WaveFormat"/>
            </summary>
        </member>
        <member name="P:NAudio.Wave.Wave16ToFloatProvider.Volume">
            <summary>
            Volume of this channel. 1.0 = full scale
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveInProvider">
            <summary>
            Buffered WaveProvider taking source data from WaveIn
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveInProvider.#ctor(NAudio.Wave.IWaveIn)">
            <summary>
            Creates a new WaveInProvider
            n.b. Should make sure the WaveFormat is set correctly on IWaveIn before calling
            </summary>
            <param name="waveIn">The source of wave data</param>
        </member>
        <member name="M:NAudio.Wave.WaveInProvider.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads data from the WaveInProvider
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveInProvider.WaveFormat">
            <summary>
            The WaveFormat
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveProvider16">
            <summary>
            Base class for creating a 16 bit wave provider
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveProvider16.#ctor">
            <summary>
            Initializes a new instance of the WaveProvider16 class 
            defaulting to 44.1kHz mono
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveProvider16.#ctor(System.Int32,System.Int32)">
            <summary>
            Initializes a new instance of the WaveProvider16 class with the specified
            sample rate and number of channels
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveProvider16.SetWaveFormat(System.Int32,System.Int32)">
            <summary>
            Allows you to specify the sample rate and channels for this WaveProvider
            (should be initialised before you pass it to a wave player)
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveProvider16.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Implements the Read method of IWaveProvider by delegating to the abstract
            Read method taking a short array
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveProvider16.Read(System.Int16[],System.Int32,System.Int32)">
            <summary>
            Method to override in derived classes
            Supply the requested number of samples into the buffer
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveProvider16.WaveFormat">
            <summary>
            The Wave Format
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveProvider32">
            <summary>
            Base class for creating a 32 bit floating point wave provider
            Can also be used as a base class for an ISampleProvider that can 
            be plugged straight into anything requiring an IWaveProvider
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveProvider32.#ctor">
            <summary>
            Initializes a new instance of the WaveProvider32 class 
            defaulting to 44.1kHz mono
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveProvider32.#ctor(System.Int32,System.Int32)">
            <summary>
            Initializes a new instance of the WaveProvider32 class with the specified
            sample rate and number of channels
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveProvider32.SetWaveFormat(System.Int32,System.Int32)">
            <summary>
            Allows you to specify the sample rate and channels for this WaveProvider
            (should be initialised before you pass it to a wave player)
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveProvider32.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Implements the Read method of IWaveProvider by delegating to the abstract
            Read method taking a float array
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveProvider32.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Method to override in derived classes
            Supply the requested number of samples into the buffer
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveProvider32.WaveFormat">
            <summary>
            The Wave Format
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveRecorder">
            <summary>
            Utility class to intercept audio from an IWaveProvider and
            save it to disk
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveRecorder.#ctor(NAudio.Wave.IWaveProvider,System.String)">
            <summary>
            Constructs a new WaveRecorder
            </summary>
            <param name="destination">The location to write the WAV file to</param>
            <param name="source">The Source Wave Provider</param>
        </member>
        <member name="M:NAudio.Wave.WaveRecorder.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Read simply returns what the source returns, but writes to disk along the way
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveRecorder.WaveFormat">
            <summary>
            The WaveFormat
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveRecorder.Dispose">
            <summary>
            Closes the WAV file
            </summary>
        </member>
        <member name="T:NAudio.Wave.AiffFileReader">
            <summary>A read-only stream of AIFF data based on an aiff file
            with an associated WaveFormat
            originally contributed to NAudio by Giawa
            </summary>
        </member>
        <member name="M:NAudio.Wave.AiffFileReader.#ctor(System.String)">
            <summary>Supports opening a AIF file</summary>
            <remarks>The AIF is of similar nastiness to the WAV format.
            This supports basic reading of uncompressed PCM AIF files,
            with 8, 16, 24 and 32 bit PCM data.
            </remarks>
        </member>
        <member name="M:NAudio.Wave.AiffFileReader.#ctor(System.IO.Stream)">
            <summary>
            Creates an Aiff File Reader based on an input stream
            </summary>
            <param name="inputStream">The input stream containing a AIF file including header</param>
        </member>
        <member name="M:NAudio.Wave.AiffFileReader.ReadAiffHeader(System.IO.Stream,NAudio.Wave.WaveFormat@,System.Int64@,System.Int32@,System.Collections.Generic.List{NAudio.Wave.AiffFileReader.AiffChunk})">
            <summary>
            Ensures valid AIFF header and then finds data offset.
            </summary>
            <param name="stream">The stream, positioned at the start of audio data</param>
            <param name="format">The format found</param>
            <param name="dataChunkPosition">The position of the data chunk</param>
            <param name="dataChunkLength">The length of the data chunk</param>
            <param name="chunks">Additional chunks found</param>
        </member>
        <member name="M:NAudio.Wave.AiffFileReader.Dispose(System.Boolean)">
            <summary>
            Cleans up the resources associated with this AiffFileReader
            </summary>
        </member>
        <member name="P:NAudio.Wave.AiffFileReader.WaveFormat">
            <summary>
            <see cref="P:NAudio.Wave.WaveStream.WaveFormat"/>
            </summary>
        </member>
        <member name="P:NAudio.Wave.AiffFileReader.Length">
            <summary>
            <see cref="P:NAudio.Wave.WaveStream.WaveFormat"/>
            </summary>
        </member>
        <member name="P:NAudio.Wave.AiffFileReader.SampleCount">
            <summary>
            Number of Samples (if possible to calculate)
            </summary>
        </member>
        <member name="P:NAudio.Wave.AiffFileReader.Position">
            <summary>
            Position in the AIFF file
            <see cref="P:System.IO.Stream.Position"/>
            </summary>
        </member>
        <member name="M:NAudio.Wave.AiffFileReader.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads bytes from the AIFF File
            <see cref="M:System.IO.Stream.Read(System.Byte[],System.Int32,System.Int32)"/>
            </summary>
        </member>
        <member name="T:NAudio.Wave.AiffFileReader.AiffChunk">
            <summary>
            AIFF Chunk
            </summary>
        </member>
        <member name="F:NAudio.Wave.AiffFileReader.AiffChunk.ChunkName">
            <summary>
            Chunk Name
            </summary>
        </member>
        <member name="F:NAudio.Wave.AiffFileReader.AiffChunk.ChunkLength">
            <summary>
            Chunk Length
            </summary>
        </member>
        <member name="F:NAudio.Wave.AiffFileReader.AiffChunk.ChunkStart">
            <summary>
            Chunk start
            </summary>
        </member>
        <member name="M:NAudio.Wave.AiffFileReader.AiffChunk.#ctor(System.UInt32,System.String,System.UInt32)">
            <summary>
            Creates a new AIFF Chunk
            </summary>
        </member>
        <member name="T:NAudio.Wave.AudioFileReader">
            <summary>
            AudioFileReader simplifies opening an audio file in NAudio
            Simply pass in the filename, and it will attempt to open the
            file and set up a conversion path that turns into PCM IEEE float.
            ACM codecs will be used for conversion.
            It provides a volume property and implements both WaveStream and
            ISampleProvider, making it possibly the only stage in your audio
            pipeline necessary for simple playback scenarios
            </summary>
        </member>
        <member name="M:NAudio.Wave.AudioFileReader.#ctor(System.String)">
            <summary>
            Initializes a new instance of AudioFileReader
            </summary>
            <param name="fileName">The file to open</param>
        </member>
        <member name="M:NAudio.Wave.AudioFileReader.CreateReaderStream(System.String)">
            <summary>
            Creates the reader stream, supporting all filetypes in the core NAudio library,
            and ensuring we are in PCM format
            </summary>
            <param name="fileName">File Name</param>
        </member>
        <member name="P:NAudio.Wave.AudioFileReader.FileName">
            <summary>
            File Name
            </summary>
        </member>
        <member name="P:NAudio.Wave.AudioFileReader.WaveFormat">
            <summary>
            WaveFormat of this stream
            </summary>
        </member>
        <member name="P:NAudio.Wave.AudioFileReader.Length">
            <summary>
            Length of this stream (in bytes)
            </summary>
        </member>
        <member name="P:NAudio.Wave.AudioFileReader.Position">
            <summary>
            Position of this stream (in bytes)
            </summary>
        </member>
        <member name="M:NAudio.Wave.AudioFileReader.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads from this wave stream
            </summary>
            <param name="buffer">Audio buffer</param>
            <param name="offset">Offset into buffer</param>
            <param name="count">Number of bytes required</param>
            <returns>Number of bytes read</returns>
        </member>
        <member name="M:NAudio.Wave.AudioFileReader.Read(System.Single[],System.Int32,System.Int32)">
            <summary>
            Reads audio from this sample provider
            </summary>
            <param name="buffer">Sample buffer</param>
            <param name="offset">Offset into sample buffer</param>
            <param name="count">Number of samples required</param>
            <returns>Number of samples read</returns>
        </member>
        <member name="P:NAudio.Wave.AudioFileReader.Volume">
            <summary>
            Gets or Sets the Volume of this AudioFileReader. 1.0f is full volume
            </summary>
        </member>
        <member name="M:NAudio.Wave.AudioFileReader.SourceToDest(System.Int64)">
            <summary>
            Helper to convert source to dest bytes
            </summary>
        </member>
        <member name="M:NAudio.Wave.AudioFileReader.DestToSource(System.Int64)">
            <summary>
            Helper to convert dest to source bytes
            </summary>
        </member>
        <member name="M:NAudio.Wave.AudioFileReader.Dispose(System.Boolean)">
            <summary>
            Disposes this AudioFileReader
            </summary>
            <param name="disposing">True if called from Dispose</param>
        </member>
        <member name="T:NAudio.Wave.BlockAlignReductionStream">
            <summary>
            Helper stream that lets us read from compressed audio files with large block alignment
            as though we could read any amount and reposition anywhere
            </summary>
        </member>
        <member name="M:NAudio.Wave.BlockAlignReductionStream.#ctor(NAudio.Wave.WaveStream)">
            <summary>
            Creates a new BlockAlignReductionStream
            </summary>
            <param name="sourceStream">the input stream</param>
        </member>
        <member name="P:NAudio.Wave.BlockAlignReductionStream.BlockAlign">
            <summary>
            Block alignment of this stream
            </summary>
        </member>
        <member name="P:NAudio.Wave.BlockAlignReductionStream.WaveFormat">
            <summary>
            Wave Format
            </summary>
        </member>
        <member name="P:NAudio.Wave.BlockAlignReductionStream.Length">
            <summary>
            Length of this Stream
            </summary>
        </member>
        <member name="P:NAudio.Wave.BlockAlignReductionStream.Position">
            <summary>
            Current position within stream
            </summary>
        </member>
        <member name="M:NAudio.Wave.BlockAlignReductionStream.Dispose(System.Boolean)">
            <summary>
            Disposes this WaveStream
            </summary>
        </member>
        <member name="M:NAudio.Wave.BlockAlignReductionStream.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads data from this stream
            </summary>
            <param name="buffer"></param>
            <param name="offset"></param>
            <param name="count"></param>
            <returns></returns>
        </member>
        <member name="T:NAudio.Wave.ComStream">
            <summary>
            Implementation of Com IStream
            </summary>
        </member>
        <member name="T:NAudio.Wave.Cue">
            <summary>
            Holds information on a cue: a labeled position within a Wave file
            </summary>
        </member>
        <member name="P:NAudio.Wave.Cue.Position">
            <summary>
            Cue position in samples
            </summary>
        </member>
        <member name="P:NAudio.Wave.Cue.Label">
            <summary>
            Label of the cue
            </summary>
        </member>
        <member name="M:NAudio.Wave.Cue.#ctor(System.Int32,System.String)">
            <summary>
            Creates a Cue based on a sample position and label 
            </summary>
            <param name="position"></param>
            <param name="label"></param>
        </member>
        <member name="T:NAudio.Wave.CueList">
             <summary>
             Holds a list of cues
             </summary>
             <remarks>
             The specs for reading and writing cues from the cue and list RIFF chunks 
             are from http://www.sonicspot.com/guide/wavefiles.html and http://www.wotsit.org/
             ------------------------------
             The cues are stored like this:
             ------------------------------
             struct CuePoint
             {
              Int32 dwIdentifier;
              Int32 dwPosition;
              Int32 fccChunk;
              Int32 dwChunkStart;
              Int32 dwBlockStart;
              Int32 dwSampleOffset;
             } 
            
             struct CueChunk
             {
              Int32 chunkID;
              Int32 chunkSize;
              Int32 dwCuePoints;
              CuePoint[] points;
             }
             ------------------------------
             Labels look like this:
             ------------------------------
             struct ListHeader 
             {
               Int32 listID;      /* 'list' */
               Int32 chunkSize;   /* includes the Type ID below */
               Int32 typeID;      /* 'adtl' */
             } 
            
             struct LabelChunk 
             {
               Int32 chunkID;
               Int32 chunkSize;
               Int32 dwIdentifier;
               Char[] dwText;  /* Encoded with extended ASCII */
             } LabelChunk;
             </remarks>
        </member>
        <member name="M:NAudio.Wave.CueList.#ctor">
            <summary>
            Creates an empty cue list
            </summary>
        </member>
        <member name="M:NAudio.Wave.CueList.Add(NAudio.Wave.Cue)">
            <summary>
            Adds an item to the list
            </summary>
            <param name="cue">Cue</param>
        </member>
        <member name="P:NAudio.Wave.CueList.CuePositions">
            <summary>
            Gets sample positions for the embedded cues
            </summary>
            <returns>Array containing the cue positions</returns>
        </member>
        <member name="P:NAudio.Wave.CueList.CueLabels">
            <summary>
            Gets labels for the embedded cues
            </summary>
            <returns>Array containing the labels</returns>
        </member>
        <member name="M:NAudio.Wave.CueList.#ctor(System.Byte[],System.Byte[])">
            <summary>
            Creates a cue list from the cue RIFF chunk and the list RIFF chunk
            </summary>
            <param name="cueChunkData">The data contained in the cue chunk</param>
            <param name="listChunkData">The data contained in the list chunk</param>
        </member>
        <member name="M:NAudio.Wave.CueList.GetRiffChunks">
            <summary>
            Gets the cues as the concatenated cue and list RIFF chunks.
            </summary>
            <returns>RIFF chunks containing the cue data</returns>
        </member>
        <member name="P:NAudio.Wave.CueList.Count">
            <summary>
            Number of cues
            </summary>
        </member>
        <member name="P:NAudio.Wave.CueList.Item(System.Int32)">
            <summary>
            Accesses the cue at the specified index
            </summary>
            <param name="index"></param>
            <returns></returns>
        </member>
        <member name="M:NAudio.Wave.CueList.FromChunks(NAudio.Wave.WaveFileReader)">
            <summary>
            Checks if the cue and list chunks exist and if so, creates a cue list
            </summary>
        </member>
        <member name="T:NAudio.Wave.CueWaveFileReader">
            <summary>
            A wave file reader supporting cue reading
            </summary>
        </member>
        <member name="M:NAudio.Wave.CueWaveFileReader.#ctor(System.String)">
            <summary>
            Loads a wavefile and supports reading cues
            </summary>
            <param name="fileName"></param>
        </member>
        <member name="P:NAudio.Wave.CueWaveFileReader.Cues">
            <summary>
            Cue List (can be null if cues not present)
            </summary>
        </member>
        <member name="T:NAudio.Wave.ISampleNotifier">
            <summary>
            An interface for WaveStreams which can report notification of individual samples
            </summary>
        </member>
        <member name="E:NAudio.Wave.ISampleNotifier.Sample">
            <summary>
            A sample has been detected
            </summary>
        </member>
        <member name="T:NAudio.Wave.SampleEventArgs">
            <summary>
            Sample event arguments
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleEventArgs.Left">
            <summary>
            Left sample
            </summary>
        </member>
        <member name="P:NAudio.Wave.SampleEventArgs.Right">
            <summary>
            Right sample
            </summary>
        </member>
        <member name="M:NAudio.Wave.SampleEventArgs.#ctor(System.Single,System.Single)">
            <summary>
            Constructor
            </summary>
        </member>
        <member name="T:NAudio.Wave.MediaFoundationReader">
            <summary>
            Class for reading any file that Media Foundation can play
            Will only work in Windows Vista and above
            Automatically converts to PCM
            If it is a video file with multiple audio streams, it will pick out the first audio stream
            </summary>
        </member>
        <member name="T:NAudio.Wave.MediaFoundationReader.MediaFoundationReaderSettings">
            <summary>
            Allows customisation of this reader class
            </summary>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationReader.MediaFoundationReaderSettings.#ctor">
            <summary>
            Sets up the default settings for MediaFoundationReader
            </summary>
        </member>
        <member name="P:NAudio.Wave.MediaFoundationReader.MediaFoundationReaderSettings.RequestFloatOutput">
            <summary>
            Allows us to request IEEE float output (n.b. no guarantee this will be accepted)
            </summary>
        </member>
        <member name="P:NAudio.Wave.MediaFoundationReader.MediaFoundationReaderSettings.SingleReaderObject">
            <summary>
            If true, the reader object created in the constructor is used in Read
            Should only be set to true if you are working entirely on an STA thread, or 
            entirely with MTA threads.
            </summary>
        </member>
        <member name="P:NAudio.Wave.MediaFoundationReader.MediaFoundationReaderSettings.RepositionInRead">
            <summary>
            If true, the reposition does not happen immediately, but waits until the
            next call to read to be processed.
            </summary>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationReader.#ctor">
            <summary>
            Default constructor
            </summary>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationReader.#ctor(System.String)">
            <summary>
            Creates a new MediaFoundationReader based on the supplied file
            </summary>
            <param name="file">Filename (can also be a URL  e.g. http:// mms:// file://)</param>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationReader.#ctor(System.String,NAudio.Wave.MediaFoundationReader.MediaFoundationReaderSettings)">
            <summary>
            Creates a new MediaFoundationReader based on the supplied file
            </summary>
            <param name="file">Filename</param>
            <param name="settings">Advanced settings</param>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationReader.Init(NAudio.Wave.MediaFoundationReader.MediaFoundationReaderSettings)">
            <summary>
            Initializes 
            </summary>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationReader.CreateReader(NAudio.Wave.MediaFoundationReader.MediaFoundationReaderSettings)">
            <summary>
            Creates the reader (overridable by )
            </summary>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationReader.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads from this wave stream
            </summary>
            <param name="buffer">Buffer to read into</param>
            <param name="offset">Offset in buffer</param>
            <param name="count">Bytes required</param>
            <returns>Number of bytes read; 0 indicates end of stream</returns>
        </member>
        <member name="P:NAudio.Wave.MediaFoundationReader.WaveFormat">
            <summary>
            WaveFormat of this stream (n.b. this is after converting to PCM)
            </summary>
        </member>
        <member name="P:NAudio.Wave.MediaFoundationReader.Length">
            <summary>
            The bytesRequired of this stream in bytes (n.b may not be accurate)
            </summary>
        </member>
        <member name="P:NAudio.Wave.MediaFoundationReader.Position">
            <summary>
            Current position within this stream
            </summary>
        </member>
        <member name="M:NAudio.Wave.MediaFoundationReader.Dispose(System.Boolean)">
            <summary>
            Cleans up after finishing with this reader
            </summary>
            <param name="disposing">true if called from Dispose</param>
        </member>
        <member name="E:NAudio.Wave.MediaFoundationReader.WaveFormatChanged">
            <summary>
            WaveFormat has changed
            </summary>
        </member>
        <member name="T:NAudio.Wave.Mp3FileReader">
            <summary>
            Class for reading from MP3 files
            </summary>
        </member>
        <member name="P:NAudio.Wave.Mp3FileReader.Mp3WaveFormat">
            <summary>
            The MP3 wave format (n.b. NOT the output format of this stream - see the WaveFormat property)
            </summary>
        </member>
        <member name="M:NAudio.Wave.Mp3FileReader.#ctor(System.String)">
            <summary>Supports opening a MP3 file</summary>
        </member>
        <member name="M:NAudio.Wave.Mp3FileReader.#ctor(System.String,NAudio.Wave.Mp3FileReader.FrameDecompressorBuilder)">
            <summary>Supports opening a MP3 file</summary>
            <param name="mp3FileName">MP3 File name</param>
            <param name="frameDecompressorBuilder">Factory method to build a frame decompressor</param>
        </member>
        <member name="M:NAudio.Wave.Mp3FileReader.#ctor(System.IO.Stream)">
            <summary>
            Opens MP3 from a stream rather than a file
            Will not dispose of this stream itself
            </summary>
            <param name="inputStream">The incoming stream containing MP3 data</param>
        </member>
        <member name="M:NAudio.Wave.Mp3FileReader.#ctor(System.IO.Stream,NAudio.Wave.Mp3FileReader.FrameDecompressorBuilder)">
            <summary>
            Opens MP3 from a stream rather than a file
            Will not dispose of this stream itself
            </summary>
            <param name="inputStream">The incoming stream containing MP3 data</param>
            <param name="frameDecompressorBuilder">Factory method to build a frame decompressor</param>
        </member>
        <member name="T:NAudio.Wave.Mp3FileReader.FrameDecompressorBuilder">
            <summary>
            Function that can create an MP3 Frame decompressor
            </summary>
            <param name="mp3Format">A WaveFormat object describing the MP3 file format</param>
            <returns>An MP3 Frame decompressor</returns>
        </member>
        <member name="M:NAudio.Wave.Mp3FileReader.CreateAcmFrameDecompressor(NAudio.Wave.WaveFormat)">
            <summary>
            Creates an ACM MP3 Frame decompressor. This is the default with NAudio
            </summary>
            <param name="mp3Format">A WaveFormat object based </param>
            <returns></returns>
        </member>
        <member name="M:NAudio.Wave.Mp3FileReader.TotalSeconds">
            <summary>
            Gets the total length of this file in milliseconds.
            </summary>
        </member>
        <member name="P:NAudio.Wave.Mp3FileReader.Id3v2Tag">
            <summary>
            ID3v2 tag if present
            </summary>
        </member>
        <member name="P:NAudio.Wave.Mp3FileReader.Id3v1Tag">
            <summary>
            ID3v1 tag if present
            </summary>
        </member>
        <member name="M:NAudio.Wave.Mp3FileReader.ReadNextFrame">
            <summary>
            Reads the next mp3 frame
            </summary>
            <returns>Next mp3 frame, or null if EOF</returns>
        </member>
        <member name="M:NAudio.Wave.Mp3FileReader.ReadNextFrame(System.Boolean)">
            <summary>
            Reads the next mp3 frame
            </summary>
            <returns>Next mp3 frame, or null if EOF</returns>
        </member>
        <member name="P:NAudio.Wave.Mp3FileReader.Length">
            <summary>
            This is the length in bytes of data available to be read out from the Read method
            (i.e. the decompressed MP3 length)
            n.b. this may return 0 for files whose length is unknown
            </summary>
        </member>
        <member name="P:NAudio.Wave.Mp3FileReader.WaveFormat">
            <summary>
            <see cref="P:NAudio.Wave.WaveStream.WaveFormat"/>
            </summary>
        </member>
        <member name="P:NAudio.Wave.Mp3FileReader.Position">
            <summary>
            <see cref="P:System.IO.Stream.Position"/>
            </summary>
        </member>
        <member name="M:NAudio.Wave.Mp3FileReader.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads decompressed PCM data from our MP3 file.
            </summary>
        </member>
        <member name="P:NAudio.Wave.Mp3FileReader.XingHeader">
            <summary>
            Xing header if present
            </summary>
        </member>
        <member name="M:NAudio.Wave.Mp3FileReader.Dispose(System.Boolean)">
            <summary>
            Disposes this WaveStream
            </summary>
        </member>
        <member name="T:NAudio.Wave.RawSourceWaveStream">
            <summary>
            WaveStream that simply passes on data from its source stream
            (e.g. a MemoryStream)
            </summary>
        </member>
        <member name="M:NAudio.Wave.RawSourceWaveStream.#ctor(System.IO.Stream,NAudio.Wave.WaveFormat)">
            <summary>
            Initialises a new instance of RawSourceWaveStream
            </summary>
            <param name="sourceStream">The source stream containing raw audio</param>
            <param name="waveFormat">The waveformat of the audio in the source stream</param>
        </member>
        <member name="M:NAudio.Wave.RawSourceWaveStream.#ctor(System.Byte[],System.Int32,System.Int32,NAudio.Wave.WaveFormat)">
            <summary>
            Initialises a new instance of RawSourceWaveStream
            </summary>
            <param name="byteStream">The buffer containing raw audio</param>
            <param name="offset">Offset in the source buffer to read from</param>
            <param name="count">Number of bytes to read in the buffer</param>
            <param name="waveFormat">The waveformat of the audio in the source stream</param>
        </member>
        <member name="P:NAudio.Wave.RawSourceWaveStream.WaveFormat">
            <summary>
            The WaveFormat of this stream
            </summary>
        </member>
        <member name="P:NAudio.Wave.RawSourceWaveStream.Length">
            <summary>
            The length in bytes of this stream (if supported)
            </summary>
        </member>
        <member name="P:NAudio.Wave.RawSourceWaveStream.Position">
            <summary>
            The current position in this stream
            </summary>
        </member>
        <member name="M:NAudio.Wave.RawSourceWaveStream.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads data from the stream
            </summary>
        </member>
        <member name="T:NAudio.Wave.ResamplerDmoStream">
            <summary>
            Wave Stream for converting between sample rates
            </summary>
        </member>
        <member name="M:NAudio.Wave.ResamplerDmoStream.#ctor(NAudio.Wave.IWaveProvider,NAudio.Wave.WaveFormat)">
            <summary>
            WaveStream to resample using the DMO Resampler
            </summary>
            <param name="inputProvider">Input Stream</param>
            <param name="outputFormat">Desired Output Format</param>
        </member>
        <member name="P:NAudio.Wave.ResamplerDmoStream.WaveFormat">
            <summary>
            Stream Wave Format
            </summary>
        </member>
        <member name="P:NAudio.Wave.ResamplerDmoStream.Length">
            <summary>
            Stream length in bytes
            </summary>
        </member>
        <member name="P:NAudio.Wave.ResamplerDmoStream.Position">
            <summary>
            Stream position in bytes
            </summary>
        </member>
        <member name="M:NAudio.Wave.ResamplerDmoStream.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads data from input stream
            </summary>
            <param name="buffer">buffer</param>
            <param name="offset">offset into buffer</param>
            <param name="count">Bytes required</param>
            <returns>Number of bytes read</returns>
        </member>
        <member name="M:NAudio.Wave.ResamplerDmoStream.Dispose(System.Boolean)">
            <summary>
            Dispose
            </summary>
            <param name="disposing">True if disposing (not from finalizer)</param>
        </member>
        <member name="T:NAudio.Wave.RiffChunk">
            <summary>
            Holds information about a RIFF file chunk
            </summary>
        </member>
        <member name="M:NAudio.Wave.RiffChunk.#ctor(System.Int32,System.Int32,System.Int64)">
            <summary>
            Creates a RiffChunk object
            </summary>
        </member>
        <member name="P:NAudio.Wave.RiffChunk.Identifier">
            <summary>
            The chunk identifier
            </summary>
        </member>
        <member name="P:NAudio.Wave.RiffChunk.IdentifierAsString">
            <summary>
            The chunk identifier converted to a string
            </summary>
        </member>
        <member name="P:NAudio.Wave.RiffChunk.Length">
            <summary>
            The chunk length
            </summary>
        </member>
        <member name="P:NAudio.Wave.RiffChunk.StreamPosition">
            <summary>
            The stream position this chunk is located at
            </summary>
        </member>
        <member name="T:NAudio.Wave.SimpleCompressorStream">
            <summary>
            A simple compressor
            </summary>
        </member>
        <member name="M:NAudio.Wave.SimpleCompressorStream.#ctor(NAudio.Wave.WaveStream)">
            <summary>
            Create a new simple compressor stream
            </summary>
            <param name="sourceStream">Source stream</param>
        </member>
        <member name="P:NAudio.Wave.SimpleCompressorStream.MakeUpGain">
            <summary>
            Make-up Gain
            </summary>
        </member>
        <member name="P:NAudio.Wave.SimpleCompressorStream.Threshold">
            <summary>
            Threshold
            </summary>
        </member>
        <member name="P:NAudio.Wave.SimpleCompressorStream.Ratio">
            <summary>
            Ratio
            </summary>
        </member>
        <member name="P:NAudio.Wave.SimpleCompressorStream.Attack">
            <summary>
            Attack time
            </summary>
        </member>
        <member name="P:NAudio.Wave.SimpleCompressorStream.Release">
            <summary>
            Release time
            </summary>
        </member>
        <member name="M:NAudio.Wave.SimpleCompressorStream.HasData(System.Int32)">
            <summary>
            Determine whether the stream has the required amount of data.
            </summary>
            <param name="count">Number of bytes of data required from the stream.</param>
            <returns>Flag indicating whether the required amount of data is avialable.</returns>
        </member>
        <member name="P:NAudio.Wave.SimpleCompressorStream.Enabled">
            <summary>
            Turns gain on or off
            </summary>
        </member>
        <member name="P:NAudio.Wave.SimpleCompressorStream.Length">
            <summary>
            Returns the stream length
            </summary>
        </member>
        <member name="P:NAudio.Wave.SimpleCompressorStream.Position">
            <summary>
            Gets or sets the current position in the stream
            </summary>
        </member>
        <member name="P:NAudio.Wave.SimpleCompressorStream.WaveFormat">
            <summary>
            Gets the WaveFormat of this stream
            </summary>
        </member>
        <member name="M:NAudio.Wave.SimpleCompressorStream.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads bytes from this stream
            </summary>
            <param name="array">Buffer to read into</param>
            <param name="offset">Offset in array to read into</param>
            <param name="count">Number of bytes to read</param>
            <returns>Number of bytes read</returns>
        </member>
        <member name="M:NAudio.Wave.SimpleCompressorStream.Dispose(System.Boolean)">
            <summary>
            Disposes this stream
            </summary>
            <param name="disposing">true if the user called this</param>
        </member>
        <member name="P:NAudio.Wave.SimpleCompressorStream.BlockAlign">
            <summary>
            Gets the block alignment for this stream
            </summary>
        </member>
        <member name="T:NAudio.Wave.StreamMediaFoundationReader">
            <summary>
            MediaFoundationReader supporting reading from a stream
            </summary>
        </member>
        <member name="M:NAudio.Wave.StreamMediaFoundationReader.#ctor(System.IO.Stream,NAudio.Wave.MediaFoundationReader.MediaFoundationReaderSettings)">
            <summary>
            Constructs a new media foundation reader from a stream
            </summary>
        </member>
        <member name="M:NAudio.Wave.StreamMediaFoundationReader.CreateReader(NAudio.Wave.MediaFoundationReader.MediaFoundationReaderSettings)">
            <summary>
            Creates the reader
            </summary>
        </member>
        <member name="T:NAudio.Wave.Wave32To16Stream">
            <summary>
            WaveStream that converts 32 bit audio back down to 16 bit, clipping if necessary
            </summary>
        </member>
        <member name="F:NAudio.Wave.Wave32To16Stream.sourceBuffer">
            <summary>
            The <see cref="M:NAudio.Wave.Wave32To16Stream.Read(System.Byte[],System.Int32,System.Int32)"/> method reuses the same buffer to prevent
            unnecessary allocations.
            </summary>
        </member>
        <member name="M:NAudio.Wave.Wave32To16Stream.#ctor(NAudio.Wave.WaveStream)">
            <summary>
            Creates a new Wave32To16Stream
            </summary>
            <param name="sourceStream">the source stream</param>
        </member>
        <member name="P:NAudio.Wave.Wave32To16Stream.Volume">
            <summary>
            Sets the volume for this stream. 1.0f is full scale
            </summary>
        </member>
        <member name="P:NAudio.Wave.Wave32To16Stream.BlockAlign">
            <summary>
            <see cref="P:NAudio.Wave.WaveStream.BlockAlign"/>
            </summary>
        </member>
        <member name="P:NAudio.Wave.Wave32To16Stream.Length">
            <summary>
            Returns the stream length
            </summary>
        </member>
        <member name="P:NAudio.Wave.Wave32To16Stream.Position">
            <summary>
            Gets or sets the current position in the stream
            </summary>
        </member>
        <member name="M:NAudio.Wave.Wave32To16Stream.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads bytes from this wave stream
            </summary>
            <param name="destBuffer">Destination buffer</param>
            <param name="offset">Offset into destination buffer</param>
            <param name="numBytes"></param>
            <returns>Number of bytes read.</returns>
        </member>
        <member name="M:NAudio.Wave.Wave32To16Stream.Convert32To16(System.Byte[],System.Int32,System.Byte[],System.Int32)">
            <summary>
            Conversion to 16 bit and clipping
            </summary>
        </member>
        <member name="P:NAudio.Wave.Wave32To16Stream.WaveFormat">
            <summary>
            <see cref="P:NAudio.Wave.WaveStream.WaveFormat"/>
            </summary>
        </member>
        <member name="P:NAudio.Wave.Wave32To16Stream.Clip">
            <summary>
            Clip indicator. Can be reset.
            </summary>
        </member>
        <member name="M:NAudio.Wave.Wave32To16Stream.Dispose(System.Boolean)">
            <summary>
            Disposes this WaveStream
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveChannel32">
            <summary>
            Represents Channel for the WaveMixerStream
            32 bit output and 16 bit input
            It's output is always stereo
            The input stream can be panned
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveChannel32.#ctor(NAudio.Wave.WaveStream,System.Single,System.Single)">
            <summary>
            Creates a new WaveChannel32
            </summary>
            <param name="sourceStream">the source stream</param>
            <param name="volume">stream volume (1 is 0dB)</param>
            <param name="pan">pan control (-1 to 1)</param>
        </member>
        <member name="M:NAudio.Wave.WaveChannel32.#ctor(NAudio.Wave.WaveStream)">
            <summary>
            Creates a WaveChannel32 with default settings
            </summary>
            <param name="sourceStream">The source stream</param>
        </member>
        <member name="P:NAudio.Wave.WaveChannel32.BlockAlign">
            <summary>
            Gets the block alignment for this WaveStream
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveChannel32.Length">
            <summary>
            Returns the stream length
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveChannel32.Position">
            <summary>
            Gets or sets the current position in the stream
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveChannel32.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads bytes from this wave stream
            </summary>
            <param name="destBuffer">The destination buffer</param>
            <param name="offset">Offset into the destination buffer</param>
            <param name="numBytes">Number of bytes read</param>
            <returns>Number of bytes read.</returns>
        </member>
        <member name="P:NAudio.Wave.WaveChannel32.PadWithZeroes">
            <summary>
            If true, Read always returns the number of bytes requested
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveChannel32.WaveFormat">
            <summary>
            <see cref="P:NAudio.Wave.WaveStream.WaveFormat"/>
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveChannel32.Volume">
            <summary>
            Volume of this channel. 1.0 = full scale
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveChannel32.Pan">
            <summary>
            Pan of this channel (from -1 to 1)
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveChannel32.HasData(System.Int32)">
            <summary>
            Determines whether this channel has any data to play
            to allow optimisation to not read, but bump position forward
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveChannel32.Dispose(System.Boolean)">
            <summary>
            Disposes this WaveStream
            </summary>
        </member>
        <member name="E:NAudio.Wave.WaveChannel32.Sample">
            <summary>
            Sample
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveChannel32.RaiseSample(System.Single,System.Single)">
            <summary>
            Raise the sample event (no check for null because it has already been done)
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveFileReader">
            <summary>This class supports the reading of WAV files,
            providing a repositionable WaveStream that returns the raw data
            contained in the WAV file
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFileReader.#ctor(System.String)">
            <summary>Supports opening a WAV file</summary>
            <remarks>The WAV file format is a real mess, but we will only
            support the basic WAV file format which actually covers the vast
            majority of WAV files out there. For more WAV file format information
            visit www.wotsit.org. If you have a WAV file that can't be read by
            this class, email it to the NAudio project and we will probably
            fix this reader to support it
            </remarks>
        </member>
        <member name="M:NAudio.Wave.WaveFileReader.#ctor(System.IO.Stream)">
            <summary>
            Creates a Wave File Reader based on an input stream
            </summary>
            <param name="inputStream">The input stream containing a WAV file including header</param>
        </member>
        <member name="P:NAudio.Wave.WaveFileReader.ExtraChunks">
            <summary>
            Gets a list of the additional chunks found in this file
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFileReader.GetChunkData(NAudio.Wave.RiffChunk)">
            <summary>
            Gets the data for the specified chunk
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFileReader.Dispose(System.Boolean)">
            <summary>
            Cleans up the resources associated with this WaveFileReader
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveFileReader.WaveFormat">
            <summary>
            <see cref="P:NAudio.Wave.WaveStream.WaveFormat"/>
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveFileReader.Length">
            <summary>
            This is the length of audio data contained in this WAV file, in bytes
            (i.e. the byte length of the data chunk, not the length of the WAV file itself)
            <see cref="P:NAudio.Wave.WaveStream.WaveFormat"/>
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveFileReader.SampleCount">
            <summary>
            Number of Sample Frames  (if possible to calculate)
            This currently does not take into account number of channels
            Multiply number of channels if you want the total number of samples
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveFileReader.Position">
            <summary>
            Position in the WAV data chunk.
            <see cref="P:System.IO.Stream.Position"/>
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFileReader.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads bytes from the Wave File
            <see cref="M:System.IO.Stream.Read(System.Byte[],System.Int32,System.Int32)"/>
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFileReader.ReadNextSampleFrame">
            <summary>
            Attempts to read the next sample or group of samples as floating point normalised into the range -1.0f to 1.0f
            </summary>
            <returns>An array of samples, 1 for mono, 2 for stereo etc. Null indicates end of file reached
            </returns>
        </member>
        <member name="M:NAudio.Wave.WaveFileReader.TryReadFloat(System.Single@)">
            <summary>
            Attempts to read a sample into a float. n.b. only applicable for uncompressed formats
            Will normalise the value read into the range -1.0f to 1.0f if it comes from a PCM encoding
            </summary>
            <returns>False if the end of the WAV data chunk was reached</returns>
        </member>
        <member name="T:NAudio.Wave.WaveFormatConversionProvider">
            <summary>
            IWaveProvider that passes through an ACM Codec
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormatConversionProvider.#ctor(NAudio.Wave.WaveFormat,NAudio.Wave.IWaveProvider)">
            <summary>
            Create a new WaveFormat conversion stream
            </summary>
            <param name="targetFormat">Desired output format</param>
            <param name="sourceProvider">Source Provider</param>
        </member>
        <member name="P:NAudio.Wave.WaveFormatConversionProvider.WaveFormat">
            <summary>
            Gets the WaveFormat of this stream
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormatConversionProvider.Reposition">
            <summary>
            Indicates that a reposition has taken place, and internal buffers should be reset
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormatConversionProvider.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads bytes from this stream
            </summary>
            <param name="buffer">Buffer to read into</param>
            <param name="offset">Offset in buffer to read into</param>
            <param name="count">Number of bytes to read</param>
            <returns>Number of bytes read</returns>
        </member>
        <member name="M:NAudio.Wave.WaveFormatConversionProvider.Dispose(System.Boolean)">
            <summary>
            Disposes this stream
            </summary>
            <param name="disposing">true if the user called this</param>
        </member>
        <member name="M:NAudio.Wave.WaveFormatConversionProvider.Dispose">
            <summary>
            Disposes this resource
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormatConversionProvider.Finalize">
            <summary>
            Finalizer
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveFormatConversionStream">
            <summary>
            WaveStream that passes through an ACM Codec
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormatConversionStream.#ctor(NAudio.Wave.WaveFormat,NAudio.Wave.WaveStream)">
            <summary>
            Create a new WaveFormat conversion stream
            </summary>
            <param name="targetFormat">Desired output format</param>
            <param name="sourceStream">Source stream</param>
        </member>
        <member name="M:NAudio.Wave.WaveFormatConversionStream.CreatePcmStream(NAudio.Wave.WaveStream)">
            <summary>
            Creates a stream that can convert to PCM
            </summary>
            <param name="sourceStream">The source stream</param>
            <returns>A PCM stream</returns>
        </member>
        <member name="P:NAudio.Wave.WaveFormatConversionStream.Position">
            <summary>
            Gets or sets the current position in the stream
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormatConversionStream.SourceToDest(System.Int32)">
            <summary>
            Converts source bytes to destination bytes
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormatConversionStream.DestToSource(System.Int32)">
            <summary>
            Converts destination bytes to source bytes
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveFormatConversionStream.Length">
            <summary>
            Returns the stream length
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveFormatConversionStream.WaveFormat">
            <summary>
            Gets the WaveFormat of this stream
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveFormatConversionStream.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            
            </summary>
            <param name="buffer">Buffer to read into</param>
            <param name="offset">Offset within buffer to write to</param>
            <param name="count">Number of bytes to read</param>
            <returns>Bytes read</returns>
        </member>
        <member name="M:NAudio.Wave.WaveFormatConversionStream.Dispose(System.Boolean)">
            <summary>
            Disposes this stream
            </summary>
            <param name="disposing">true if the user called this</param>
        </member>
        <member name="T:NAudio.Wave.WaveInBuffer">
            <summary>
            A buffer of Wave samples
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveInBuffer.#ctor(System.IntPtr,System.Int32)">
            <summary>
            creates a new wavebuffer
            </summary>
            <param name="waveInHandle">WaveIn device to write to</param>
            <param name="bufferSize">Buffer size in bytes</param>
        </member>
        <member name="M:NAudio.Wave.WaveInBuffer.Reuse">
            <summary>
            Place this buffer back to record more audio
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveInBuffer.Finalize">
            <summary>
            Finalizer for this wave buffer
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveInBuffer.Dispose">
            <summary>
            Releases resources held by this WaveBuffer
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveInBuffer.Dispose(System.Boolean)">
            <summary>
            Releases resources held by this WaveBuffer
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveInBuffer.Data">
            <summary>
            Provides access to the actual record buffer (for reading only)
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveInBuffer.Done">
            <summary>
            Indicates whether the Done flag is set on this buffer
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveInBuffer.InQueue">
            <summary>
            Indicates whether the InQueue flag is set on this buffer
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveInBuffer.BytesRecorded">
            <summary>
            Number of bytes recorded
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveInBuffer.BufferSize">
            <summary>
            The buffer size in bytes
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveMixerStream32">
            <summary>
            WaveStream that can mix together multiple 32 bit input streams
            (Normally used with stereo input channels)
            All channels must have the same number of inputs
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveMixerStream32.#ctor">
            <summary>
            Creates a new 32 bit WaveMixerStream
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveMixerStream32.#ctor(System.Collections.Generic.IEnumerable{NAudio.Wave.WaveStream},System.Boolean)">
            <summary>
            Creates a new 32 bit WaveMixerStream
            </summary>
            <param name="inputStreams">An Array of WaveStreams - must all have the same format.
            Use WaveChannel is designed for this purpose.</param>
            <param name="autoStop">Automatically stop when all inputs have been read</param>
            <exception cref="T:System.ArgumentException">Thrown if the input streams are not 32 bit floating point,
            or if they have different formats to each other</exception>
        </member>
        <member name="M:NAudio.Wave.WaveMixerStream32.AddInputStream(NAudio.Wave.WaveStream)">
            <summary>
            Add a new input to the mixer
            </summary>
            <param name="waveStream">The wave input to add</param>
        </member>
        <member name="M:NAudio.Wave.WaveMixerStream32.RemoveInputStream(NAudio.Wave.WaveStream)">
            <summary>
            Remove a WaveStream from the mixer
            </summary>
            <param name="waveStream">waveStream to remove</param>
        </member>
        <member name="P:NAudio.Wave.WaveMixerStream32.InputCount">
            <summary>
            The number of inputs to this mixer
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveMixerStream32.AutoStop">
            <summary>
            Automatically stop when all inputs have been read
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveMixerStream32.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads bytes from this wave stream
            </summary>
            <param name="buffer">buffer to read into</param>
            <param name="offset">offset into buffer</param>
            <param name="count">number of bytes required</param>
            <returns>Number of bytes read.</returns>
            <exception cref="T:System.ArgumentException">Thrown if an invalid number of bytes requested</exception>
        </member>
        <member name="M:NAudio.Wave.WaveMixerStream32.Sum32BitAudio(System.Byte[],System.Int32,System.Byte[],System.Int32)">
            <summary>
            Actually performs the mixing
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveMixerStream32.BlockAlign">
            <summary>
            <see cref="P:NAudio.Wave.WaveStream.BlockAlign"/>
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveMixerStream32.Length">
            <summary>
            Length of this Wave Stream (in bytes)
            <see cref="P:System.IO.Stream.Length"/>
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveMixerStream32.Position">
            <summary>
            Position within this Wave Stream (in bytes)
            <see cref="P:System.IO.Stream.Position"/>
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveMixerStream32.WaveFormat">
            <summary>
            <see cref="P:NAudio.Wave.WaveStream.WaveFormat"/>
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveMixerStream32.Dispose(System.Boolean)">
            <summary>
            Disposes this WaveStream
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveOffsetStream">
            <summary>
            Simply shifts the input stream in time, optionally
            clipping its start and end.
            (n.b. may include looping in the future)
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOffsetStream.#ctor(NAudio.Wave.WaveStream,System.TimeSpan,System.TimeSpan,System.TimeSpan)">
            <summary>
            Creates a new WaveOffsetStream
            </summary>
            <param name="sourceStream">the source stream</param>
            <param name="startTime">the time at which we should start reading from the source stream</param>
            <param name="sourceOffset">amount to trim off the front of the source stream</param>
            <param name="sourceLength">length of time to play from source stream</param>
        </member>
        <member name="M:NAudio.Wave.WaveOffsetStream.#ctor(NAudio.Wave.WaveStream)">
            <summary>
            Creates a WaveOffsetStream with default settings (no offset or pre-delay,
            and whole length of source stream)
            </summary>
            <param name="sourceStream">The source stream</param>
        </member>
        <member name="P:NAudio.Wave.WaveOffsetStream.StartTime">
            <summary>
            The length of time before which no audio will be played
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveOffsetStream.SourceOffset">
            <summary>
            An offset into the source stream from which to start playing
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveOffsetStream.SourceLength">
            <summary>
            Length of time to read from the source stream
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveOffsetStream.BlockAlign">
            <summary>
            Gets the block alignment for this WaveStream
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveOffsetStream.Length">
            <summary>
            Returns the stream length
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveOffsetStream.Position">
            <summary>
            Gets or sets the current position in the stream
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOffsetStream.Read(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Reads bytes from this wave stream
            </summary>
            <param name="destBuffer">The destination buffer</param>
            <param name="offset">Offset into the destination buffer</param>
            <param name="numBytes">Number of bytes read</param>
            <returns>Number of bytes read.</returns>
        </member>
        <member name="P:NAudio.Wave.WaveOffsetStream.WaveFormat">
            <summary>
            <see cref="P:NAudio.Wave.WaveStream.WaveFormat"/>
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOffsetStream.HasData(System.Int32)">
            <summary>
            Determines whether this channel has any data to play
            to allow optimisation to not read, but bump position forward
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOffsetStream.Dispose(System.Boolean)">
            <summary>
            Disposes this WaveStream
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveOutBuffer">
            <summary>
            A buffer of Wave samples for streaming to a Wave Output device
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOutBuffer.#ctor(System.IntPtr,System.Int32,NAudio.Wave.IWaveProvider,System.Object)">
            <summary>
            creates a new wavebuffer
            </summary>
            <param name="hWaveOut">WaveOut device to write to</param>
            <param name="bufferSize">Buffer size in bytes</param>
            <param name="bufferFillStream">Stream to provide more data</param>
            <param name="waveOutLock">Lock to protect WaveOut API's from being called on >1 thread</param>
        </member>
        <member name="M:NAudio.Wave.WaveOutBuffer.Finalize">
            <summary>
            Finalizer for this wave buffer
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOutBuffer.Dispose">
            <summary>
            Releases resources held by this WaveBuffer
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOutBuffer.Dispose(System.Boolean)">
            <summary>
            Releases resources held by this WaveBuffer
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveOutBuffer.OnDone">
            this is called by the WAVE callback and should be used to refill the buffer
        </member>
        <member name="P:NAudio.Wave.WaveOutBuffer.InQueue">
            <summary>
            Whether the header's in queue flag is set
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveOutBuffer.BufferSize">
            <summary>
            The buffer size in bytes
            </summary>
        </member>
        <member name="T:NAudio.Wave.WaveStream">
            <summary>
            Base class for all WaveStream classes. Derives from stream.
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveStream.WaveFormat">
            <summary>
            Retrieves the WaveFormat for this stream
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveStream.CanRead">
            <summary>
            We can read from this stream
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveStream.CanSeek">
            <summary>
            We can seek within this stream
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveStream.CanWrite">
            <summary>
            We can't write to this stream
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveStream.Flush">
            <summary>
            Flush does not need to do anything
            See <see cref="M:System.IO.Stream.Flush"/>
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveStream.Seek(System.Int64,System.IO.SeekOrigin)">
            <summary>
            An alternative way of repositioning.
            See <see cref="M:System.IO.Stream.Seek(System.Int64,System.IO.SeekOrigin)"/>
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveStream.SetLength(System.Int64)">
            <summary>
            Sets the length of the WaveStream. Not Supported.
            </summary>
            <param name="length"></param>
        </member>
        <member name="M:NAudio.Wave.WaveStream.Write(System.Byte[],System.Int32,System.Int32)">
            <summary>
            Writes to the WaveStream. Not Supported.
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveStream.BlockAlign">
            <summary>
            The block alignment for this wavestream. Do not modify the Position
            to anything that is not a whole multiple of this value
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveStream.Skip(System.Int32)">
            <summary>
            Moves forward or backwards the specified number of seconds in the stream
            </summary>
            <param name="seconds">Number of seconds to move, can be negative</param>
        </member>
        <member name="P:NAudio.Wave.WaveStream.CurrentTime">
            <summary>
            The current position in the stream in Time format
            </summary>
        </member>
        <member name="P:NAudio.Wave.WaveStream.TotalTime">
            <summary>
            Total length in real-time of the stream (may be an estimate for compressed files)
            </summary>
        </member>
        <member name="M:NAudio.Wave.WaveStream.HasData(System.Int32)">
            <summary>
            Whether the WaveStream has non-zero sample data at the current position for the 
            specified count
            </summary>
            <param name="count">Number of bytes to read</param>
        </member>
        <member name="T:NAudio.Dmo.DmoDescriptor">
            <summary>
            Contains the name and CLSID of a DirectX Media Object
            </summary>
        </member>
        <member name="P:NAudio.Dmo.DmoDescriptor.Name">
            <summary>
            Name
            </summary>
        </member>
        <member name="P:NAudio.Dmo.DmoDescriptor.Clsid">
            <summary>
            CLSID
            </summary>
        </member>
        <member name="M:NAudio.Dmo.DmoDescriptor.#ctor(System.String,System.Guid)">
            <summary>
            Initializes a new instance of DmoDescriptor
            </summary>
        </member>
        <member name="T:NAudio.Dmo.DmoEnumerator">
            <summary>
            DirectX Media Object Enumerator
            </summary>
        </member>
        <member name="M:NAudio.Dmo.DmoEnumerator.GetAudioEffectNames">
            <summary>
            Get audio effect names
            </summary>
            <returns>Audio effect names</returns>
        </member>
        <member name="M:NAudio.Dmo.DmoEnumerator.GetAudioEncoderNames">
            <summary>
            Get audio encoder names
            </summary>
            <returns>Audio encoder names</returns>
        </member>
        <member name="M:NAudio.Dmo.DmoEnumerator.GetAudioDecoderNames">
            <summary>
            Get audio decoder names
            </summary>
            <returns>Audio decoder names</returns>
        </member>
        <member name="T:NAudio.Dmo.DmoGuids">
            <summary>
            DMO Guids for use with DMOEnum
            dmoreg.h
            </summary>
        </member>
        <member name="T:NAudio.Dmo.DmoHResults">
            <summary>
            MediaErr.h
            </summary>
        </member>
        <member name="T:NAudio.Dmo.DmoPartialMediaType">
            <summary>
            DMO_PARTIAL_MEDIATYPE
            </summary>
        </member>
        <member name="T:NAudio.Dmo.IMediaParamInfo">
            <summary>
            defined in Medparam.h
            </summary>
        </member>
        <member name="T:NAudio.Dmo.IWMResamplerProps">
            <summary>
            Windows Media Resampler Props
            wmcodecdsp.h
            </summary>
        </member>
        <member name="M:NAudio.Dmo.IWMResamplerProps.SetHalfFilterLength(System.Int32)">
            <summary>
            Range is 1 to 60
            </summary>
        </member>
        <member name="M:NAudio.Dmo.IWMResamplerProps.SetUserChannelMtx(System.Single[])">
            <summary>
             Specifies the channel matrix.
            </summary>
        </member>
        <member name="T:NAudio.Dmo.MediaBuffer">
            <summary>
            Attempting to implement the COM IMediaBuffer interface as a .NET object
            Not sure what will happen when I pass this to an unmanaged object
            </summary>
        </member>
        <member name="M:NAudio.Dmo.MediaBuffer.#ctor(System.Int32)">
            <summary>
            Creates a new Media Buffer
            </summary>
            <param name="maxLength">Maximum length in bytes</param>
        </member>
        <member name="M:NAudio.Dmo.MediaBuffer.Dispose">
            <summary>
            Dispose and free memory for buffer
            </summary>
        </member>
        <member name="M:NAudio.Dmo.MediaBuffer.Finalize">
            <summary>
            Finalizer
            </summary>
        </member>
        <member name="M:NAudio.Dmo.MediaBuffer.NAudio#Dmo#IMediaBuffer#SetLength(System.Int32)">
            <summary>
            Set length of valid data in the buffer
            </summary>
            <param name="length">length</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:NAudio.Dmo.MediaBuffer.NAudio#Dmo#IMediaBuffer#GetMaxLength(System.Int32@)">
            <summary>
            Gets the maximum length of the buffer
            </summary>
            <param name="maxLength">Max length (output parameter)</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:NAudio.Dmo.MediaBuffer.NAudio#Dmo#IMediaBuffer#GetBufferAndLength(System.IntPtr,System.IntPtr)">
            <summary>
            Gets buffer and / or length
            </summary>
            <param name="bufferPointerPointer">Pointer to variable into which buffer pointer should be written</param>
            <param name="validDataLengthPointer">Pointer to variable into which valid data length should be written</param>
            <returns>HRESULT</returns>
        </member>
        <member name="P:NAudio.Dmo.MediaBuffer.Length">
            <summary>
            Length of data in the media buffer
            </summary>
        </member>
        <member name="M:NAudio.Dmo.MediaBuffer.LoadData(System.Byte[],System.Int32)">
            <summary>
            Loads data into this buffer
            </summary>
            <param name="data">Data to load</param>
            <param name="bytes">Number of bytes to load</param>
        </member>
        <member name="M:NAudio.Dmo.MediaBuffer.RetrieveData(System.Byte[],System.Int32)">
            <summary>
            Retrieves the data in the output buffer
            </summary>
            <param name="data">buffer to retrieve into</param>
            <param name="offset">offset within that buffer</param>
        </member>
        <member name="T:NAudio.Dmo.MediaObject">
            <summary>
            Media Object
            </summary>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.#ctor(NAudio.Dmo.IMediaObject)">
            <summary>
            Creates a new Media Object
            </summary>
            <param name="mediaObject">Media Object COM interface</param>
        </member>
        <member name="P:NAudio.Dmo.MediaObject.InputStreamCount">
            <summary>
            Number of input streams
            </summary>
        </member>
        <member name="P:NAudio.Dmo.MediaObject.OutputStreamCount">
            <summary>
            Number of output streams
            </summary>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.GetInputType(System.Int32,System.Int32)">
            <summary>
            Gets the input media type for the specified input stream
            </summary>
            <param name="inputStream">Input stream index</param>
            <param name="inputTypeIndex">Input type index</param>
            <returns>DMO Media Type or null if there are no more input types</returns>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.GetOutputType(System.Int32,System.Int32)">
            <summary>
            Gets the DMO Media Output type
            </summary>
            <param name="outputStream">The output stream</param>
            <param name="outputTypeIndex">Output type index</param>
            <returns>DMO Media Type or null if no more available</returns>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.GetOutputCurrentType(System.Int32)">
            <summary>
            retrieves the media type that was set for an output stream, if any
            </summary>
            <param name="outputStreamIndex">Output stream index</param>
            <returns>DMO Media Type or null if no more available</returns>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.GetInputTypes(System.Int32)">
            <summary>
            Enumerates the supported input types
            </summary>
            <param name="inputStreamIndex">Input stream index</param>
            <returns>Enumeration of input types</returns>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.GetOutputTypes(System.Int32)">
            <summary>
            Enumerates the output types
            </summary>
            <param name="outputStreamIndex">Output stream index</param>
            <returns>Enumeration of supported output types</returns>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.SupportsInputType(System.Int32,NAudio.Dmo.DmoMediaType)">
            <summary>
            Querys whether a specified input type is supported
            </summary>
            <param name="inputStreamIndex">Input stream index</param>
            <param name="mediaType">Media type to check</param>
            <returns>true if supports</returns>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.SetInputType(System.Int32,NAudio.Dmo.DmoMediaType,NAudio.Dmo.DmoSetTypeFlags)">
            <summary>
            Sets the input type helper method
            </summary>
            <param name="inputStreamIndex">Input stream index</param>
            <param name="mediaType">Media type</param>
            <param name="flags">Flags (can be used to test rather than set)</param>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.SetInputType(System.Int32,NAudio.Dmo.DmoMediaType)">
            <summary>
            Sets the input type
            </summary>
            <param name="inputStreamIndex">Input stream index</param>
            <param name="mediaType">Media Type</param>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.SetInputWaveFormat(System.Int32,NAudio.Wave.WaveFormat)">
            <summary>
            Sets the input type to the specified Wave format
            </summary>
            <param name="inputStreamIndex">Input stream index</param>
            <param name="waveFormat">Wave format</param>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.SupportsInputWaveFormat(System.Int32,NAudio.Wave.WaveFormat)">
            <summary>
            Requests whether the specified Wave format is supported as an input
            </summary>
            <param name="inputStreamIndex">Input stream index</param>
            <param name="waveFormat">Wave format</param>
            <returns>true if supported</returns>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.CreateDmoMediaTypeForWaveFormat(NAudio.Wave.WaveFormat)">
            <summary>
            Helper function to make a DMO Media Type to represent a particular WaveFormat
            </summary>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.SupportsOutputType(System.Int32,NAudio.Dmo.DmoMediaType)">
            <summary>
            Checks if a specified output type is supported
            n.b. you may need to set the input type first
            </summary>
            <param name="outputStreamIndex">Output stream index</param>
            <param name="mediaType">Media type</param>
            <returns>True if supported</returns>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.SupportsOutputWaveFormat(System.Int32,NAudio.Wave.WaveFormat)">
            <summary>
            Tests if the specified Wave Format is supported for output
            n.b. may need to set the input type first
            </summary>
            <param name="outputStreamIndex">Output stream index</param>
            <param name="waveFormat">Wave format</param>
            <returns>True if supported</returns>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.SetOutputType(System.Int32,NAudio.Dmo.DmoMediaType,NAudio.Dmo.DmoSetTypeFlags)">
            <summary>
            Helper method to call SetOutputType
            </summary>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.SetOutputType(System.Int32,NAudio.Dmo.DmoMediaType)">
            <summary>
            Sets the output type
            n.b. may need to set the input type first
            </summary>
            <param name="outputStreamIndex">Output stream index</param>
            <param name="mediaType">Media type to set</param>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.SetOutputWaveFormat(System.Int32,NAudio.Wave.WaveFormat)">
            <summary>
            Set output type to the specified wave format
            n.b. may need to set input type first
            </summary>
            <param name="outputStreamIndex">Output stream index</param>
            <param name="waveFormat">Wave format</param>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.GetInputSizeInfo(System.Int32)">
            <summary>
            Get Input Size Info
            </summary>
            <param name="inputStreamIndex">Input Stream Index</param>
            <returns>Input Size Info</returns>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.GetOutputSizeInfo(System.Int32)">
            <summary>
            Get Output Size Info
            </summary>
            <param name="outputStreamIndex">Output Stream Index</param>
            <returns>Output Size Info</returns>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.ProcessInput(System.Int32,NAudio.Dmo.IMediaBuffer,NAudio.Dmo.DmoInputDataBufferFlags,System.Int64,System.Int64)">
            <summary>
            Process Input
            </summary>
            <param name="inputStreamIndex">Input Stream index</param>
            <param name="mediaBuffer">Media Buffer</param>
            <param name="flags">Flags</param>
            <param name="timestamp">Timestamp</param>
            <param name="duration">Duration</param>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.ProcessOutput(NAudio.Dmo.DmoProcessOutputFlags,System.Int32,NAudio.Dmo.DmoOutputDataBuffer[])">
            <summary>
            Process Output
            </summary>
            <param name="flags">Flags</param>
            <param name="outputBufferCount">Output buffer count</param>
            <param name="outputBuffers">Output buffers</param>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.AllocateStreamingResources">
            <summary>
            Gives the DMO a chance to allocate any resources needed for streaming
            </summary>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.FreeStreamingResources">
            <summary>
            Tells the DMO to free any resources needed for streaming
            </summary>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.GetInputMaxLatency(System.Int32)">
            <summary>
            Gets maximum input latency
            </summary>
            <param name="inputStreamIndex">input stream index</param>
            <returns>Maximum input latency as a ref-time</returns>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.Flush">
            <summary>
            Flushes all buffered data
            </summary>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.Discontinuity(System.Int32)">
            <summary>
            Report a discontinuity on the specified input stream
            </summary>
            <param name="inputStreamIndex">Input Stream index</param>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.IsAcceptingData(System.Int32)">
            <summary>
            Is this input stream accepting data?
            </summary>
            <param name="inputStreamIndex">Input Stream index</param>
            <returns>true if accepting data</returns>
        </member>
        <member name="M:NAudio.Dmo.MediaObject.Dispose">
            <summary>
            Experimental code, not currently being called
            Not sure if it is necessary anyway
            </summary>
        </member>
        <member name="T:NAudio.Dmo.MediaObjectSizeInfo">
            <summary>
            Media Object Size Info
            </summary>
        </member>
        <member name="P:NAudio.Dmo.MediaObjectSizeInfo.Size">
            <summary>
            Minimum Buffer Size, in bytes
            </summary>
        </member>
        <member name="P:NAudio.Dmo.MediaObjectSizeInfo.MaxLookahead">
            <summary>
            Max Lookahead
            </summary>
        </member>
        <member name="P:NAudio.Dmo.MediaObjectSizeInfo.Alignment">
            <summary>
            Alignment
            </summary>
        </member>
        <member name="M:NAudio.Dmo.MediaObjectSizeInfo.#ctor(System.Int32,System.Int32,System.Int32)">
            <summary>
            Media Object Size Info
            </summary>
        </member>
        <member name="M:NAudio.Dmo.MediaObjectSizeInfo.ToString">
            <summary>
            ToString
            </summary>        
        </member>
        <member name="T:NAudio.Dmo.MediaParamInfo">
            <summary>
            MP_PARAMINFO
            </summary>
        </member>
        <member name="T:NAudio.Dmo.MediaParamType">
            <summary>
            MP_TYPE
            </summary>
        </member>
        <member name="F:NAudio.Dmo.MediaParamType.Int">
            <summary>
            MPT_INT
            </summary>
        </member>
        <member name="F:NAudio.Dmo.MediaParamType.Float">
            <summary>
            MPT_FLOAT
            </summary>
        </member>
        <member name="F:NAudio.Dmo.MediaParamType.Bool">
            <summary>
            MPT_BOOL
            </summary>
        </member>
        <member name="F:NAudio.Dmo.MediaParamType.Enum">
            <summary>
            MPT_ENUM
            </summary>
        </member>
        <member name="F:NAudio.Dmo.MediaParamType.Max">
            <summary>
            MPT_MAX
            </summary>
        </member>
        <member name="T:NAudio.Dmo.MediaParamCurveType">
            <summary>
            MP_CURVE_TYPE
            </summary>
        </member>
        <member name="T:NAudio.Dmo.MediaTypes">
            <summary>
            uuids.h, ksuuids.h
            </summary>
        </member>
        <member name="T:NAudio.Dmo.WindowsMediaMp3DecoderComObject">
            <summary>
            implements IMediaObject  (DirectX Media Object)
            implements IMFTransform (Media Foundation Transform)
            On Windows XP, it is always an MM (if present at all)
            </summary>
        </member>
        <member name="T:NAudio.Dmo.WindowsMediaMp3Decoder">
            <summary>
            Windows Media MP3 Decoder (as a DMO)
            WORK IN PROGRESS - DO NOT USE!
            </summary>
        </member>
        <member name="M:NAudio.Dmo.WindowsMediaMp3Decoder.#ctor">
            <summary>
            Creates a new Resampler based on the DMO Resampler
            </summary>
        </member>
        <member name="P:NAudio.Dmo.WindowsMediaMp3Decoder.MediaObject">
            <summary>
            Media Object
            </summary>
        </member>
        <member name="M:NAudio.Dmo.WindowsMediaMp3Decoder.Dispose">
            <summary>
            Dispose code - experimental at the moment
            Was added trying to track down why Resampler crashes NUnit
            This code not currently being called by ResamplerDmoStream
            </summary>
        </member>
        <member name="T:NAudio.Dmo.DmoInputDataBufferFlags">
            <summary>
            DMO Input Data Buffer Flags
            </summary>
        </member>
        <member name="F:NAudio.Dmo.DmoInputDataBufferFlags.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:NAudio.Dmo.DmoInputDataBufferFlags.SyncPoint">
            <summary>
            DMO_INPUT_DATA_BUFFERF_SYNCPOINT
            </summary>
        </member>
        <member name="F:NAudio.Dmo.DmoInputDataBufferFlags.Time">
            <summary>
            DMO_INPUT_DATA_BUFFERF_TIME
            </summary>
        </member>
        <member name="F:NAudio.Dmo.DmoInputDataBufferFlags.TimeLength">
            <summary>
            DMO_INPUT_DATA_BUFFERF_TIMELENGTH
            </summary>
        </member>
        <member name="T:NAudio.Dmo.DmoMediaType">
            <summary>
            http://msdn.microsoft.com/en-us/library/aa929922.aspx
            DMO_MEDIA_TYPE 
            </summary>
        </member>
        <member name="P:NAudio.Dmo.DmoMediaType.MajorType">
            <summary>
            Major type
            </summary>
        </member>
        <member name="P:NAudio.Dmo.DmoMediaType.MajorTypeName">
            <summary>
            Major type name
            </summary>
        </member>
        <member name="P:NAudio.Dmo.DmoMediaType.SubType">
            <summary>
            Subtype
            </summary>
        </member>
        <member name="P:NAudio.Dmo.DmoMediaType.SubTypeName">
            <summary>
            Subtype name
            </summary>
        </member>
        <member name="P:NAudio.Dmo.DmoMediaType.FixedSizeSamples">
            <summary>
            Fixed size samples
            </summary>
        </member>
        <member name="P:NAudio.Dmo.DmoMediaType.SampleSize">
            <summary>
            Sample size
            </summary>
        </member>
        <member name="P:NAudio.Dmo.DmoMediaType.FormatType">
            <summary>
            Format type
            </summary>
        </member>
        <member name="P:NAudio.Dmo.DmoMediaType.FormatTypeName">
            <summary>
            Format type name
            </summary>
        </member>
        <member name="M:NAudio.Dmo.DmoMediaType.GetWaveFormat">
            <summary>
            Gets the structure as a Wave format (if it is one)
            </summary>        
        </member>
        <member name="M:NAudio.Dmo.DmoMediaType.SetWaveFormat(NAudio.Wave.WaveFormat)">
            <summary>
            Sets this object up to point to a wave format
            </summary>
            <param name="waveFormat">Wave format structure</param>
        </member>
        <member name="T:NAudio.Dmo.DmoOutputDataBuffer">
            <summary>
            DMO Output Data Buffer
            </summary>
        </member>
        <member name="M:NAudio.Dmo.DmoOutputDataBuffer.#ctor(System.Int32)">
            <summary>
            Creates a new DMO Output Data Buffer structure
            </summary>
            <param name="maxBufferSize">Maximum buffer size</param>
        </member>
        <member name="M:NAudio.Dmo.DmoOutputDataBuffer.Dispose">
            <summary>
            Dispose
            </summary>
        </member>
        <member name="P:NAudio.Dmo.DmoOutputDataBuffer.MediaBuffer">
            <summary>
            Media Buffer
            </summary>
        </member>
        <member name="P:NAudio.Dmo.DmoOutputDataBuffer.Length">
            <summary>
            Length of data in buffer
            </summary>
        </member>
        <member name="P:NAudio.Dmo.DmoOutputDataBuffer.StatusFlags">
            <summary>
            Status Flags
            </summary>
        </member>
        <member name="P:NAudio.Dmo.DmoOutputDataBuffer.Timestamp">
            <summary>
            Timestamp
            </summary>
        </member>
        <member name="P:NAudio.Dmo.DmoOutputDataBuffer.Duration">
            <summary>
            Duration
            </summary>
        </member>
        <member name="M:NAudio.Dmo.DmoOutputDataBuffer.RetrieveData(System.Byte[],System.Int32)">
            <summary>
            Retrives the data in this buffer
            </summary>
            <param name="data">Buffer to receive data</param>
            <param name="offset">Offset into buffer</param>
        </member>
        <member name="P:NAudio.Dmo.DmoOutputDataBuffer.MoreDataAvailable">
            <summary>
            Is more data available
            If true, ProcessOuput should be called again
            </summary>
        </member>
        <member name="T:NAudio.Dmo.DmoOutputDataBufferFlags">
            <summary>
            DMO Output Data Buffer Flags
            </summary>
        </member>
        <member name="F:NAudio.Dmo.DmoOutputDataBufferFlags.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:NAudio.Dmo.DmoOutputDataBufferFlags.SyncPoint">
            <summary>
            DMO_OUTPUT_DATA_BUFFERF_SYNCPOINT
            </summary>
        </member>
        <member name="F:NAudio.Dmo.DmoOutputDataBufferFlags.Time">
            <summary>
            DMO_OUTPUT_DATA_BUFFERF_TIME
            </summary>
        </member>
        <member name="F:NAudio.Dmo.DmoOutputDataBufferFlags.TimeLength">
            <summary>
            DMO_OUTPUT_DATA_BUFFERF_TIMELENGTH
            </summary>
        </member>
        <member name="F:NAudio.Dmo.DmoOutputDataBufferFlags.Incomplete">
            <summary>
            DMO_OUTPUT_DATA_BUFFERF_INCOMPLETE
            </summary>
        </member>
        <member name="T:NAudio.Dmo.DmoProcessOutputFlags">
            <summary>
            DMO Process Output Flags
            </summary>
        </member>
        <member name="F:NAudio.Dmo.DmoProcessOutputFlags.None">
            <summary>
            None
            </summary>
        </member>
        <member name="F:NAudio.Dmo.DmoProcessOutputFlags.DiscardWhenNoBuffer">
            <summary>
            DMO_PROCESS_OUTPUT_DISCARD_WHEN_NO_BUFFER
            </summary>
        </member>
        <member name="T:NAudio.Dmo.IMediaBuffer">
            <summary>
            IMediaBuffer Interface
            </summary>
        </member>
        <member name="M:NAudio.Dmo.IMediaBuffer.SetLength(System.Int32)">
            <summary>
            Set Length
            </summary>
            <param name="length">Length</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:NAudio.Dmo.IMediaBuffer.GetMaxLength(System.Int32@)">
            <summary>
            Get Max Length
            </summary>
            <param name="maxLength">Max Length</param>
            <returns>HRESULT</returns>
        </member>
        <member name="M:NAudio.Dmo.IMediaBuffer.GetBufferAndLength(System.IntPtr,System.IntPtr)">
            <summary>
            Get Buffer and Length
            </summary>
            <param name="bufferPointerPointer">Pointer to variable into which to write the Buffer Pointer </param>
            <param name="validDataLengthPointer">Pointer to variable into which to write the Valid Data Length</param>
            <returns>HRESULT</returns>
        </member>
        <member name="T:NAudio.Dmo.IMediaObject">
            <summary>
            defined in mediaobj.h
            </summary>
        </member>
        <member name="T:NAudio.Dmo.ResamplerMediaComObject">
            <summary>
            From wmcodecsdp.h
            Implements:
            - IMediaObject 
            - IMFTransform (Media foundation - we will leave this for now as there is loads of MF stuff)
            - IPropertyStore 
            - IWMResamplerProps 
            Can resample PCM or IEEE
            </summary>
        </member>
        <member name="T:NAudio.Dmo.DmoResampler">
            <summary>
            DMO Resampler
            </summary>
        </member>
        <member name="M:NAudio.Dmo.DmoResampler.#ctor">
            <summary>
            Creates a new Resampler based on the DMO Resampler
            </summary>
        </member>
        <member name="P:NAudio.Dmo.DmoResampler.MediaObject">
            <summary>
            Media Object
            </summary>
        </member>
        <member name="M:NAudio.Dmo.DmoResampler.Dispose">
            <summary>
            Dispose code - experimental at the moment
            Was added trying to track down why Resampler crashes NUnit
            This code not currently being called by ResamplerDmoStream
            </summary>
        </member>
        <member name="T:NAudio.SoundFont.Generator">
            <summary>
            Soundfont generator
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.Generator.GeneratorType">
            <summary>
            Gets the generator type
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.Generator.UInt16Amount">
            <summary>
            Generator amount as an unsigned short
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.Generator.Int16Amount">
            <summary>
            Generator amount as a signed short
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.Generator.LowByteAmount">
            <summary>
            Low byte amount
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.Generator.HighByteAmount">
            <summary>
            High byte amount
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.Generator.Instrument">
            <summary>
            Instrument
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.Generator.SampleHeader">
            <summary>
            Sample Header
            </summary>
        </member>
        <member name="M:NAudio.SoundFont.Generator.ToString">
            <summary>
            <see cref="M:System.Object.ToString"/>
            </summary>
        </member>
        <member name="T:NAudio.SoundFont.GeneratorEnum">
            <summary>
            Generator types
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.StartAddressOffset">
            <summary>Start address offset</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.EndAddressOffset">
            <summary>End address offset</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.StartLoopAddressOffset">
            <summary>Start loop address offset</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.EndLoopAddressOffset">
            <summary>End loop address offset</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.StartAddressCoarseOffset">
            <summary>Start address coarse offset</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.ModulationLFOToPitch">
            <summary>Modulation LFO to pitch</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.VibratoLFOToPitch">
            <summary>Vibrato LFO to pitch</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.ModulationEnvelopeToPitch">
            <summary>Modulation envelope to pitch</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.InitialFilterCutoffFrequency">
            <summary>Initial filter cutoff frequency</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.InitialFilterQ">
            <summary>Initial filter Q</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.ModulationLFOToFilterCutoffFrequency">
            <summary>Modulation LFO to filter Cutoff frequency</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.ModulationEnvelopeToFilterCutoffFrequency">
            <summary>Modulation envelope to filter cutoff frequency</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.EndAddressCoarseOffset">
            <summary>End address coarse offset</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.ModulationLFOToVolume">
            <summary>Modulation LFO to volume</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.Unused1">
            <summary>Unused</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.ChorusEffectsSend">
            <summary>Chorus effects send</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.ReverbEffectsSend">
            <summary>Reverb effects send</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.Pan">
            <summary>Pan</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.Unused2">
            <summary>Unused</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.Unused3">
            <summary>Unused</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.Unused4">
            <summary>Unused</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.DelayModulationLFO">
            <summary>Delay modulation LFO</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.FrequencyModulationLFO">
            <summary>Frequency modulation LFO</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.DelayVibratoLFO">
            <summary>Delay vibrato LFO</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.FrequencyVibratoLFO">
            <summary>Frequency vibrato LFO</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.DelayModulationEnvelope">
            <summary>Delay modulation envelope</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.AttackModulationEnvelope">
            <summary>Attack modulation envelope</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.HoldModulationEnvelope">
            <summary>Hold modulation envelope</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.DecayModulationEnvelope">
            <summary>Decay modulation envelope</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.SustainModulationEnvelope">
            <summary>Sustain modulation envelop</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.ReleaseModulationEnvelope">
            <summary>Release modulation envelope</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.KeyNumberToModulationEnvelopeHold">
            <summary>Key number to modulation envelope hold</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.KeyNumberToModulationEnvelopeDecay">
            <summary>Key number to modulation envelope decay</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.DelayVolumeEnvelope">
            <summary>Delay volume envelope</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.AttackVolumeEnvelope">
            <summary>Attack volume envelope</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.HoldVolumeEnvelope">
            <summary>Hold volume envelope</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.DecayVolumeEnvelope">
            <summary>Decay volume envelope</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.SustainVolumeEnvelope">
            <summary>Sustain volume envelope</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.ReleaseVolumeEnvelope">
            <summary>Release volume envelope</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.KeyNumberToVolumeEnvelopeHold">
            <summary>Key number to volume envelope hold</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.KeyNumberToVolumeEnvelopeDecay">
            <summary>Key number to volume envelope decay</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.Instrument">
            <summary>Instrument</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.Reserved1">
            <summary>Reserved</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.KeyRange">
            <summary>Key range</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.VelocityRange">
            <summary>Velocity range</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.StartLoopAddressCoarseOffset">
            <summary>Start loop address coarse offset</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.KeyNumber">
            <summary>Key number</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.Velocity">
            <summary>Velocity</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.InitialAttenuation">
            <summary>Initial attenuation</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.Reserved2">
            <summary>Reserved</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.EndLoopAddressCoarseOffset">
            <summary>End loop address coarse offset</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.CoarseTune">
            <summary>Coarse tune</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.FineTune">
            <summary>Fine tune</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.SampleID">
            <summary>Sample ID</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.SampleModes">
            <summary>Sample modes</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.Reserved3">
            <summary>Reserved</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.ScaleTuning">
            <summary>Scale tuning</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.ExclusiveClass">
            <summary>Exclusive class</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.OverridingRootKey">
            <summary>Overriding root key</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.Unused5">
            <summary>Unused</summary>
        </member>
        <member name="F:NAudio.SoundFont.GeneratorEnum.UnusedEnd">
            <summary>Unused</summary>
        </member>
        <member name="T:NAudio.SoundFont.InfoChunk">
            <summary>
            A soundfont info chunk
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.InfoChunk.SoundFontVersion">
            <summary>
            SoundFont Version
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.InfoChunk.WaveTableSoundEngine">
            <summary>
            WaveTable sound engine
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.InfoChunk.BankName">
            <summary>
            Bank name
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.InfoChunk.DataROM">
            <summary>
            Data ROM
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.InfoChunk.CreationDate">
            <summary>
            Creation Date
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.InfoChunk.Author">
            <summary>
            Author
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.InfoChunk.TargetProduct">
            <summary>
            Target Product
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.InfoChunk.Copyright">
            <summary>
            Copyright
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.InfoChunk.Comments">
            <summary>
            Comments
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.InfoChunk.Tools">
            <summary>
            Tools
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.InfoChunk.ROMVersion">
            <summary>
            ROM Version
            </summary>
        </member>
        <member name="M:NAudio.SoundFont.InfoChunk.ToString">
            <summary>
            <see cref="M:System.Object.ToString"/>
            </summary>
        </member>
        <member name="T:NAudio.SoundFont.Instrument">
            <summary>
            SoundFont instrument
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.Instrument.Name">
            <summary>
            instrument name
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.Instrument.Zones">
            <summary>
            Zones
            </summary>
        </member>
        <member name="M:NAudio.SoundFont.Instrument.ToString">
            <summary>
            <see cref="M:System.Object.ToString"/>
            </summary>
        </member>
        <member name="T:NAudio.SoundFont.InstrumentBuilder">
            <summary>
            Instrument Builder
            </summary>
        </member>
        <member name="T:NAudio.SoundFont.TransformEnum">
            <summary>
            Transform Types
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.TransformEnum.Linear">
            <summary>
            Linear
            </summary>
        </member>
        <member name="T:NAudio.SoundFont.Modulator">
            <summary>
            Modulator
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.Modulator.SourceModulationData">
            <summary>
            Source Modulation data type
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.Modulator.DestinationGenerator">
            <summary>
            Destination generator type
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.Modulator.Amount">
            <summary>
            Amount
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.Modulator.SourceModulationAmount">
            <summary>
            Source Modulation Amount Type
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.Modulator.SourceTransform">
            <summary>
            Source Transform Type
            </summary>
        </member>
        <member name="M:NAudio.SoundFont.Modulator.ToString">
            <summary>
            <see cref="M:System.Object.ToString"/>
            </summary>
        </member>
        <member name="T:NAudio.SoundFont.ControllerSourceEnum">
            <summary>
            Controller Sources
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.ControllerSourceEnum.NoController">
            <summary>
            No Controller
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.ControllerSourceEnum.NoteOnVelocity">
            <summary>
            Note On Velocity
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.ControllerSourceEnum.NoteOnKeyNumber">
            <summary>
            Note On Key Number
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.ControllerSourceEnum.PolyPressure">
            <summary>
            Poly Pressure
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.ControllerSourceEnum.ChannelPressure">
            <summary>
            Channel Pressure
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.ControllerSourceEnum.PitchWheel">
            <summary>
            Pitch Wheel
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.ControllerSourceEnum.PitchWheelSensitivity">
            <summary>
            Pitch Wheel Sensitivity
            </summary>
        </member>
        <member name="T:NAudio.SoundFont.SourceTypeEnum">
            <summary>
            Source Types
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SourceTypeEnum.Linear">
            <summary>
            Linear
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SourceTypeEnum.Concave">
            <summary>
            Concave
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SourceTypeEnum.Convex">
            <summary>
            Convex
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SourceTypeEnum.Switch">
            <summary>
            Switch
            </summary>
        </member>
        <member name="T:NAudio.SoundFont.ModulatorType">
            <summary>
            Modulator Type
            </summary>
        </member>
        <member name="M:NAudio.SoundFont.ModulatorType.ToString">
            <summary>
            <see cref="M:System.Object.ToString"/>
            </summary>
            <returns></returns>
        </member>
        <member name="T:NAudio.SoundFont.Preset">
            <summary>
            A SoundFont Preset
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.Preset.Name">
            <summary>
            Preset name
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.Preset.PatchNumber">
            <summary>
            Patch Number
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.Preset.Bank">
            <summary>
            Bank number
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.Preset.Zones">
            <summary>
            Zones
            </summary>
        </member>
        <member name="M:NAudio.SoundFont.Preset.ToString">
            <summary>
            <see cref="M:System.Object.ToString"/>
            </summary>
        </member>
        <member name="T:NAudio.SoundFont.PresetsChunk">
            <summary>
            Class to read the SoundFont file presets chunk
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.PresetsChunk.Presets">
            <summary>
            The Presets contained in this chunk
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.PresetsChunk.Instruments">
            <summary>
            The instruments contained in this chunk
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.PresetsChunk.SampleHeaders">
            <summary>
            The sample headers contained in this chunk
            </summary>
        </member>
        <member name="M:NAudio.SoundFont.PresetsChunk.ToString">
            <summary>
            <see cref="M:System.Object.ToString"/>
            </summary>
        </member>
        <member name="M:NAudio.SoundFont.RiffChunk.ReadChunkID">
            <summary>
            just reads a chunk ID at the current position
            </summary>
            <returns>chunk ID</returns>
        </member>
        <member name="M:NAudio.SoundFont.RiffChunk.ReadChunk">
            <summary>
            reads a chunk at the current position
            </summary>
        </member>
        <member name="M:NAudio.SoundFont.RiffChunk.GetNextSubChunk">
            <summary>
            creates a new riffchunk from current position checking that we're not
            at the end of this chunk first
            </summary>
            <returns>the new chunk</returns>
        </member>
        <member name="M:NAudio.SoundFont.RiffChunk.GetDataAsString">
            <summary>
            useful for chunks that just contain a string
            </summary>
            <returns>chunk as string</returns>
        </member>
        <member name="T:NAudio.SoundFont.SampleHeader">
            <summary>
            A SoundFont Sample Header
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SampleHeader.SampleName">
            <summary>
            The sample name
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SampleHeader.Start">
            <summary>
            Start offset
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SampleHeader.End">
            <summary>
            End offset
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SampleHeader.StartLoop">
            <summary>
            Start loop point
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SampleHeader.EndLoop">
            <summary>
            End loop point
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SampleHeader.SampleRate">
            <summary>
            Sample Rate
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SampleHeader.OriginalPitch">
            <summary>
            Original pitch
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SampleHeader.PitchCorrection">
            <summary>
            Pitch correction
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SampleHeader.SampleLink">
            <summary>
            Sample Link
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SampleHeader.SFSampleLink">
            <summary>
            SoundFont Sample Link Type
            </summary>
        </member>
        <member name="M:NAudio.SoundFont.SampleHeader.ToString">
            <summary>
            <see cref="M:System.Object.ToString"/>
            </summary>
        </member>
        <member name="T:NAudio.SoundFont.SampleMode">
            <summary>
            SoundFont sample modes
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SampleMode.NoLoop">
            <summary>
            No loop
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SampleMode.LoopContinuously">
            <summary>
            Loop Continuously
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SampleMode.ReservedNoLoop">
            <summary>
            Reserved no loop
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SampleMode.LoopAndContinue">
            <summary>
            Loop and continue
            </summary>
        </member>
        <member name="T:NAudio.SoundFont.SFSampleLink">
            <summary>
            Sample Link Type
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SFSampleLink.MonoSample">
            <summary>
            Mono Sample
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SFSampleLink.RightSample">
            <summary>
            Right Sample
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SFSampleLink.LeftSample">
            <summary>
            Left Sample
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SFSampleLink.LinkedSample">
            <summary>
            Linked Sample
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SFSampleLink.RomMonoSample">
            <summary>
            ROM Mono Sample
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SFSampleLink.RomRightSample">
            <summary>
            ROM Right Sample
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SFSampleLink.RomLeftSample">
            <summary>
            ROM Left Sample
            </summary>
        </member>
        <member name="F:NAudio.SoundFont.SFSampleLink.RomLinkedSample">
            <summary>
            ROM Linked Sample
            </summary>
        </member>
        <member name="T:NAudio.SoundFont.SFVersion">
            <summary>
            SoundFont Version Structure
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.SFVersion.Major">
            <summary>
            Major Version
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.SFVersion.Minor">
            <summary>
            Minor Version
            </summary>
        </member>
        <member name="T:NAudio.SoundFont.SFVersionBuilder">
            <summary>
            Builds a SoundFont version
            </summary>
        </member>
        <member name="M:NAudio.SoundFont.SFVersionBuilder.Read(System.IO.BinaryReader)">
            <summary>
            Reads a SoundFont Version structure
            </summary>
        </member>
        <member name="M:NAudio.SoundFont.SFVersionBuilder.Write(System.IO.BinaryWriter,NAudio.SoundFont.SFVersion)">
            <summary>
            Writes a SoundFont Version structure
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.SFVersionBuilder.Length">
            <summary>
            Gets the length of this structure
            </summary>
        </member>
        <member name="T:NAudio.SoundFont.SoundFont">
            <summary>
            Represents a SoundFont
            </summary>
        </member>
        <member name="M:NAudio.SoundFont.SoundFont.#ctor(System.String)">
            <summary>
            Loads a SoundFont from a file
            </summary>
            <param name="fileName">Filename of the SoundFont</param>
        </member>
        <member name="M:NAudio.SoundFont.SoundFont.#ctor(System.IO.Stream)">
            <summary>
            Loads a SoundFont from a stream
            </summary>
            <param name="sfFile">stream</param>
        </member>
        <member name="P:NAudio.SoundFont.SoundFont.FileInfo">
            <summary>
            The File Info Chunk
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.SoundFont.Presets">
            <summary>
            The Presets
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.SoundFont.Instruments">
            <summary>
            The Instruments
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.SoundFont.SampleHeaders">
            <summary>
            The Sample Headers
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.SoundFont.SampleData">
            <summary>
            The Sample Data
            </summary>
        </member>
        <member name="M:NAudio.SoundFont.SoundFont.ToString">
            <summary>
            <see cref="M:System.Object.ToString"/>
            </summary>
        </member>
        <member name="T:NAudio.SoundFont.StructureBuilder`1">
            <summary>
            base class for structures that can read themselves
            </summary>
        </member>
        <member name="T:NAudio.SoundFont.Zone">
            <summary>
            A SoundFont zone
            </summary>
        </member>
        <member name="M:NAudio.SoundFont.Zone.ToString">
            <summary>
            <see cref="M:System.Object.ToString"/>
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.Zone.Modulators">
            <summary>
            Modulators for this Zone
            </summary>
        </member>
        <member name="P:NAudio.SoundFont.Zone.Generators">
            <summary>
            Generators for this Zone
            </summary>
        </member>
        <member name="T:NAudio.Gui.Fader">
            <summary>
            Summary description for Fader.
            </summary>
        </member>
        <member name="F:NAudio.Gui.Fader.components">
            <summary>
            Required designer variable.
            </summary>
        </member>
        <member name="M:NAudio.Gui.Fader.#ctor">
            <summary>
            Creates a new Fader control
            </summary>
        </member>
        <member name="M:NAudio.Gui.Fader.Dispose(System.Boolean)">
            <summary> 
            Clean up any resources being used.
            </summary>
        </member>
        <member name="M:NAudio.Gui.Fader.OnPaint(System.Windows.Forms.PaintEventArgs)">
            <summary>
            <see cref="M:System.Windows.Forms.Control.OnPaint(System.Windows.Forms.PaintEventArgs)"/>
            </summary>
        </member>
        <member name="M:NAudio.Gui.Fader.OnMouseDown(System.Windows.Forms.MouseEventArgs)">
            <summary>
            <see cref="M:System.Windows.Forms.Control.OnMouseDown(System.Windows.Forms.MouseEventArgs)"/>
            </summary>
        </member>
        <member name="M:NAudio.Gui.Fader.OnMouseMove(System.Windows.Forms.MouseEventArgs)">
            <summary>
            <see cref="M:System.Windows.Forms.Control.OnMouseMove(System.Windows.Forms.MouseEventArgs)"/>
            </summary>
        </member>
        <member name="M:NAudio.Gui.Fader.OnMouseUp(System.Windows.Forms.MouseEventArgs)">
            <summary>
            <see cref="M:System.Windows.Forms.Control.OnMouseUp(System.Windows.Forms.MouseEventArgs)"/>
            </summary>        
        </member>
        <member name="P:NAudio.Gui.Fader.Minimum">
            <summary>
            Minimum value of this fader
            </summary>
        </member>
        <member name="P:NAudio.Gui.Fader.Maximum">
            <summary>
            Maximum value of this fader
            </summary>
        </member>
        <member name="P:NAudio.Gui.Fader.Value">
            <summary>
            Current value of this fader
            </summary>
        </member>
        <member name="P:NAudio.Gui.Fader.Orientation">
            <summary>
            Fader orientation
            </summary>
        </member>
        <member name="M:NAudio.Gui.Fader.InitializeComponent">
            <summary>
            Required method for Designer support - do not modify
            the contents of this method with the code editor.
            </summary>
        </member>
        <member name="T:NAudio.Gui.PanSlider">
            <summary>
            Pan slider control
            </summary>
        </member>
        <member name="F:NAudio.Gui.PanSlider.components">
            <summary>
            Required designer variable.
            </summary>
        </member>
        <member name="E:NAudio.Gui.PanSlider.PanChanged">
            <summary>
            True when pan value changed
            </summary>
        </member>
        <member name="M:NAudio.Gui.PanSlider.#ctor">
            <summary>
            Creates a new PanSlider control
            </summary>
        </member>
        <member name="M:NAudio.Gui.PanSlider.Dispose(System.Boolean)">
            <summary>
            Clean up any resources being used.
            </summary>
        </member>
        <member name="M:NAudio.Gui.PanSlider.InitializeComponent">
            <summary>
            Required method for Designer support - do not modify 
            the contents of this method with the code editor.
            </summary>
        </member>
        <member name="M:NAudio.Gui.PanSlider.OnPaint(System.Windows.Forms.PaintEventArgs)">
            <summary>
            <see cref="M:System.Windows.Forms.Control.OnPaint(System.Windows.Forms.PaintEventArgs)"/>
            </summary>
        </member>
        <member name="M:NAudio.Gui.PanSlider.OnMouseMove(System.Windows.Forms.MouseEventArgs)">
            <summary>
            <see cref="M:System.Windows.Forms.Control.OnMouseMove(System.Windows.Forms.MouseEventArgs)"/>
            </summary>
        </member>
        <member name="M:NAudio.Gui.PanSlider.OnMouseDown(System.Windows.Forms.MouseEventArgs)">
            <summary>
            <see cref="M:System.Windows.Forms.Control.OnMouseDown(System.Windows.Forms.MouseEventArgs)"/>
            </summary>
            <param name="e"></param>
        </member>
        <member name="P:NAudio.Gui.PanSlider.Pan">
            <summary>
            The current Pan setting
            </summary>
        </member>
        <member name="T:NAudio.Gui.Pot">
            <summary>
            Control that represents a potentiometer
            TODO list:
            Optional Log scale
            Optional reverse scale
            Keyboard control
            Optional bitmap mode
            Optional complete draw mode
            Tooltip support
            </summary>
        </member>
        <member name="E:NAudio.Gui.Pot.ValueChanged">
            <summary>
            Value changed event
            </summary>
        </member>
        <member name="M:NAudio.Gui.Pot.#ctor">
            <summary>
            Creates a new pot control
            </summary>
        </member>
        <member name="P:NAudio.Gui.Pot.Minimum">
            <summary>
            Minimum Value of the Pot
            </summary>
        </member>
        <member name="P:NAudio.Gui.Pot.Maximum">
            <summary>
            Maximum Value of the Pot
            </summary>
        </member>
        <member name="P:NAudio.Gui.Pot.Value">
            <summary>
            The current value of the pot
            </summary>
        </member>
        <member name="M:NAudio.Gui.Pot.OnPaint(System.Windows.Forms.PaintEventArgs)">
            <summary>
            Draws the control
            </summary>
        </member>
        <member name="M:NAudio.Gui.Pot.OnMouseDown(System.Windows.Forms.MouseEventArgs)">
            <summary>
            Handles the mouse down event to allow changing value by dragging
            </summary>
        </member>
        <member name="M:NAudio.Gui.Pot.OnMouseUp(System.Windows.Forms.MouseEventArgs)">
            <summary>
            Handles the mouse up event to allow changing value by dragging
            </summary>
        </member>
        <member name="M:NAudio.Gui.Pot.OnMouseMove(System.Windows.Forms.MouseEventArgs)">
            <summary>
            Handles the mouse down event to allow changing value by dragging
            </summary>
        </member>
        <member name="F:NAudio.Gui.Pot.components">
            <summary> 
            Required designer variable.
            </summary>
        </member>
        <member name="M:NAudio.Gui.Pot.Dispose(System.Boolean)">
            <summary> 
            Clean up any resources being used.
            </summary>
            <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
        </member>
        <member name="M:NAudio.Gui.Pot.InitializeComponent">
            <summary> 
            Required method for Designer support - do not modify 
            the contents of this method with the code editor.
            </summary>
        </member>
        <member name="T:NAudio.Gui.VolumeMeter">
            <summary>
            Implements a rudimentary volume meter
            </summary>
        </member>
        <member name="M:NAudio.Gui.VolumeMeter.#ctor">
            <summary>
            Basic volume meter
            </summary>
        </member>
        <member name="M:NAudio.Gui.VolumeMeter.OnForeColorChanged(System.EventArgs)">
            <summary>
            On Fore Color Changed
            </summary>
        </member>
        <member name="P:NAudio.Gui.VolumeMeter.Amplitude">
            <summary>
            Current Value
            </summary>
        </member>
        <member name="P:NAudio.Gui.VolumeMeter.MinDb">
            <summary>
            Minimum decibels
            </summary>
        </member>
        <member name="P:NAudio.Gui.VolumeMeter.MaxDb">
            <summary>
            Maximum decibels
            </summary>
        </member>
        <member name="P:NAudio.Gui.VolumeMeter.Orientation">
            <summary>
            Meter orientation
            </summary>
        </member>
        <member name="M:NAudio.Gui.VolumeMeter.OnPaint(System.Windows.Forms.PaintEventArgs)">
            <summary>
            Paints the volume meter
            </summary>
        </member>
        <member name="F:NAudio.Gui.VolumeMeter.components">
            <summary>
            Required designer variable.
            </summary>
        </member>
        <member name="M:NAudio.Gui.VolumeMeter.Dispose(System.Boolean)">
            <summary>
            Clean up any resources being used.
            </summary>
            <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
        </member>
        <member name="M:NAudio.Gui.VolumeMeter.InitializeComponent">
            <summary>
            Required method for Designer support - do not modify 
            the contents of this method with the code editor.
            </summary>
        </member>
        <member name="T:NAudio.Gui.VolumeSlider">
            <summary>
            VolumeSlider control
            </summary>
        </member>
        <member name="F:NAudio.Gui.VolumeSlider.components">
            <summary>
            Required designer variable.
            </summary>
        </member>
        <member name="E:NAudio.Gui.VolumeSlider.VolumeChanged">
            <summary>
            Volume changed event
            </summary>
        </member>
        <member name="M:NAudio.Gui.VolumeSlider.#ctor">
            <summary>
            Creates a new VolumeSlider control
            </summary>
        </member>
        <member name="M:NAudio.Gui.VolumeSlider.Dispose(System.Boolean)">
            <summary>
            Clean up any resources being used.
            </summary>
        </member>
        <member name="M:NAudio.Gui.VolumeSlider.InitializeComponent">
            <summary>
            Required method for Designer support - do not modify 
            the contents of this method with the code editor.
            </summary>
        </member>
        <member name="M:NAudio.Gui.VolumeSlider.OnPaint(System.Windows.Forms.PaintEventArgs)">
            <summary>
            <see cref="M:System.Windows.Forms.Control.OnPaint(System.Windows.Forms.PaintEventArgs)"/>
            </summary>
        </member>
        <member name="M:NAudio.Gui.VolumeSlider.OnMouseMove(System.Windows.Forms.MouseEventArgs)">
            <summary>
            <see cref="M:System.Windows.Forms.Control.OnMouseMove(System.Windows.Forms.MouseEventArgs)"/>
            </summary>
        </member>
        <member name="M:NAudio.Gui.VolumeSlider.OnMouseDown(System.Windows.Forms.MouseEventArgs)">
            <summary>
            <see cref="M:System.Windows.Forms.Control.OnMouseDown(System.Windows.Forms.MouseEventArgs)"/>
            </summary>
        </member>
        <member name="P:NAudio.Gui.VolumeSlider.Volume">
            <summary>
            The volume for this control
            </summary>
        </member>
        <member name="T:NAudio.Gui.WaveformPainter">
            <summary>
            Windows Forms control for painting audio waveforms
            </summary>
        </member>
        <member name="M:NAudio.Gui.WaveformPainter.#ctor">
            <summary>
            Constructs a new instance of the WaveFormPainter class
            </summary>
        </member>
        <member name="M:NAudio.Gui.WaveformPainter.OnResize(System.EventArgs)">
            <summary>
            On Resize
            </summary>
        </member>
        <member name="M:NAudio.Gui.WaveformPainter.OnForeColorChanged(System.EventArgs)">
            <summary>
            On ForeColor Changed
            </summary>
            <param name="e"></param>
        </member>
        <member name="M:NAudio.Gui.WaveformPainter.AddMax(System.Single)">
            <summary>
            Add Max Value
            </summary>
            <param name="maxSample"></param>
        </member>
        <member name="M:NAudio.Gui.WaveformPainter.OnPaint(System.Windows.Forms.PaintEventArgs)">
            <summary>
            On Paint
            </summary>
        </member>
        <member name="F:NAudio.Gui.WaveformPainter.components">
            <summary>
            Required designer variable.
            </summary>
        </member>
        <member name="M:NAudio.Gui.WaveformPainter.Dispose(System.Boolean)">
            <summary>
            Clean up any resources being used.
            </summary>
            <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
        </member>
        <member name="M:NAudio.Gui.WaveformPainter.InitializeComponent">
            <summary>
            Required method for Designer support - do not modify 
            the contents of this method with the code editor.
            </summary>
        </member>
        <member name="T:NAudio.Gui.WaveViewer">
            <summary>
            Control for viewing waveforms
            </summary>
        </member>
        <member name="F:NAudio.Gui.WaveViewer.components">
            <summary> 
            Required designer variable.
            </summary>
        </member>
        <member name="M:NAudio.Gui.WaveViewer.#ctor">
            <summary>
            Creates a new WaveViewer control
            </summary>
        </member>
        <member name="P:NAudio.Gui.WaveViewer.WaveStream">
            <summary>
            sets the associated wavestream
            </summary>
        </member>
        <member name="P:NAudio.Gui.WaveViewer.SamplesPerPixel">
            <summary>
            The zoom level, in samples per pixel
            </summary>
        </member>
        <member name="P:NAudio.Gui.WaveViewer.StartPosition">
            <summary>
            Start position (currently in bytes)
            </summary>
        </member>
        <member name="M:NAudio.Gui.WaveViewer.Dispose(System.Boolean)">
            <summary> 
            Clean up any resources being used.
            </summary>
        </member>
        <member name="M:NAudio.Gui.WaveViewer.OnPaint(System.Windows.Forms.PaintEventArgs)">
            <summary>
            <see cref="M:System.Windows.Forms.Control.OnPaint(System.Windows.Forms.PaintEventArgs)"/>
            </summary>
        </member>
        <member name="M:NAudio.Gui.WaveViewer.InitializeComponent">
            <summary> 
            Required method for Designer support - do not modify 
            the contents of this method with the code editor.
            </summary>
        </member>
        <member name="T:NAudio.Mixer.BooleanMixerControl">
            <summary>
            Boolean mixer control
            </summary>
        </member>
        <member name="M:NAudio.Mixer.BooleanMixerControl.GetDetails(System.IntPtr)">
            <summary>
            Gets the details for this control
            </summary>
            <param name="pDetails">memory pointer</param>
        </member>
        <member name="P:NAudio.Mixer.BooleanMixerControl.Value">
            <summary>
            The current value of the control
            </summary>
        </member>
        <member name="T:NAudio.Mixer.CustomMixerControl">
            <summary>
            Custom Mixer control
            </summary>
        </member>
        <member name="M:NAudio.Mixer.CustomMixerControl.GetDetails(System.IntPtr)">
            <summary>
            Get the data for this custom control
            </summary>
            <param name="pDetails">pointer to memory to receive data</param>
        </member>
        <member name="T:NAudio.Mixer.ListTextMixerControl">
            <summary>
            List text mixer control
            </summary>
        </member>
        <member name="M:NAudio.Mixer.ListTextMixerControl.GetDetails(System.IntPtr)">
            <summary>
            Get the details for this control
            </summary>
            <param name="pDetails">Memory location to read to</param>
        </member>
        <member name="T:NAudio.Mixer.Mixer">
            <summary>Represents a Windows mixer device</summary>
        </member>
        <member name="P:NAudio.Mixer.Mixer.NumberOfDevices">
            <summary>The number of mixer devices available</summary>	
        </member>
        <member name="M:NAudio.Mixer.Mixer.#ctor(System.Int32)">
            <summary>Connects to the specified mixer</summary>
            <param name="mixerIndex">The index of the mixer to use. 
            This should be between zero and NumberOfDevices - 1</param>
        </member>
        <member name="P:NAudio.Mixer.Mixer.DestinationCount">
            <summary>The number of destinations this mixer supports</summary>
        </member>
        <member name="P:NAudio.Mixer.Mixer.Name">
            <summary>The name of this mixer device</summary>
        </member>
        <member name="P:NAudio.Mixer.Mixer.Manufacturer">
            <summary>The manufacturer code for this mixer device</summary>
        </member>
        <member name="P:NAudio.Mixer.Mixer.ProductID">
            <summary>The product identifier code for this mixer device</summary>
        </member>
        <member name="M:NAudio.Mixer.Mixer.GetDestination(System.Int32)">
            <summary>Retrieve the specified MixerDestination object</summary>
            <param name="destinationIndex">The ID of the destination to use.
            Should be between 0 and DestinationCount - 1</param>
        </member>
        <member name="P:NAudio.Mixer.Mixer.Destinations">
            <summary>
            A way to enumerate the destinations
            </summary>
        </member>
        <member name="P:NAudio.Mixer.Mixer.Mixers">
            <summary>
            A way to enumerate all available devices
            </summary>
        </member>
        <member name="T:NAudio.Mixer.MixerControl">
            <summary>
            Represents a mixer control
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControl.mixerHandle">
            <summary>
            Mixer Handle
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControl.nChannels">
            <summary>
            Number of Channels
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControl.mixerHandleType">
            <summary>
            Mixer Handle Type
            </summary>
        </member>
        <member name="M:NAudio.Mixer.MixerControl.GetMixerControls(System.IntPtr,NAudio.Mixer.MixerLine,NAudio.Mixer.MixerFlags)">
            <summary>
            Gets all the mixer controls
            </summary>
            <param name="mixerHandle">Mixer Handle</param>
            <param name="mixerLine">Mixer Line</param>
            <param name="mixerHandleType">Mixer Handle Type</param>
            <returns></returns>
        </member>
        <member name="M:NAudio.Mixer.MixerControl.GetMixerControl(System.IntPtr,System.Int32,System.Int32,System.Int32,NAudio.Mixer.MixerFlags)">
            <summary>
            Gets a specified Mixer Control
            </summary>
            <param name="mixerHandle">Mixer Handle</param>
            <param name="nLineID">Line ID</param>
            <param name="controlId">Control ID</param>
            <param name="nChannels">Number of Channels</param>
            <param name="mixerFlags">Flags to use (indicates the meaning of mixerHandle)</param>
            <returns></returns>
        </member>
        <member name="M:NAudio.Mixer.MixerControl.GetControlDetails">
            <summary>
            Gets the control details
            </summary>
        </member>
        <member name="M:NAudio.Mixer.MixerControl.GetDetails(System.IntPtr)">
            <summary>
            Gets the control details
            </summary>
            <param name="pDetails"></param>
        </member>
        <member name="P:NAudio.Mixer.MixerControl.Name">
            <summary>
            Mixer control name
            </summary>
        </member>
        <member name="P:NAudio.Mixer.MixerControl.ControlType">
            <summary>
            Mixer control type
            </summary>
        </member>
        <member name="M:NAudio.Mixer.MixerControl.IsControlBoolean(NAudio.Mixer.MixerControlType)">
            <summary>
            Returns true if this is a boolean control
            </summary>
            <param name="controlType">Control type</param>
        </member>
        <member name="P:NAudio.Mixer.MixerControl.IsBoolean">
            <summary>
            Is this a boolean control
            </summary>
        </member>
        <member name="M:NAudio.Mixer.MixerControl.IsControlListText(NAudio.Mixer.MixerControlType)">
            <summary>
            Determines whether a specified mixer control type is a list text control
            </summary>
        </member>
        <member name="P:NAudio.Mixer.MixerControl.IsListText">
            <summary>
            True if this is a list text control
            </summary>
        </member>
        <member name="P:NAudio.Mixer.MixerControl.IsSigned">
            <summary>
            True if this is a signed control
            </summary>
        </member>
        <member name="P:NAudio.Mixer.MixerControl.IsUnsigned">
            <summary>
            True if this is an unsigned control
            </summary>
        </member>
        <member name="P:NAudio.Mixer.MixerControl.IsCustom">
            <summary>
            True if this is a custom control
            </summary>
        </member>
        <member name="M:NAudio.Mixer.MixerControl.ToString">
            <summary>
            String representation for debug purposes
            </summary>
        </member>
        <member name="T:NAudio.Mixer.MixerControlType">
            <summary>
            Mixer control types
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.Custom">
            <summary>Custom</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.BooleanMeter">
            <summary>Boolean meter</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.SignedMeter">
            <summary>Signed meter</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.PeakMeter">
            <summary>Peak meter</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.UnsignedMeter">
            <summary>Unsigned meter</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.Boolean">
            <summary>Boolean</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.OnOff">
            <summary>On Off</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.Mute">
            <summary>Mute</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.Mono">
            <summary>Mono</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.Loudness">
            <summary>Loudness</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.StereoEnhance">
            <summary>Stereo Enhance</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.Button">
            <summary>Button</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.Decibels">
            <summary>Decibels</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.Signed">
            <summary>Signed</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.Unsigned">
            <summary>Unsigned</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.Percent">
            <summary>Percent</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.Slider">
            <summary>Slider</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.Pan">
            <summary>Pan</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.QSoundPan">
            <summary>Q-sound pan</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.Fader">
            <summary>Fader</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.Volume">
            <summary>Volume</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.Bass">
            <summary>Bass</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.Treble">
            <summary>Treble</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.Equalizer">
            <summary>Equaliser</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.SingleSelect">
            <summary>Single Select</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.Mux">
            <summary>Mux</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.MultipleSelect">
            <summary>Multiple select</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.Mixer">
            <summary>Mixer</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.MicroTime">
            <summary>Micro time</summary>
        </member>
        <member name="F:NAudio.Mixer.MixerControlType.MilliTime">
            <summary>Milli time</summary>
        </member>
        <member name="T:NAudio.Mixer.MixerLine">
            <summary>
            Represents a mixer line (source or destination)
            </summary>
        </member>
        <member name="M:NAudio.Mixer.MixerLine.#ctor(System.IntPtr,System.Int32,NAudio.Mixer.MixerFlags)">
            <summary>
            Creates a new mixer destination
            </summary>
            <param name="mixerHandle">Mixer Handle</param>
            <param name="destinationIndex">Destination Index</param>
            <param name="mixerHandleType">Mixer Handle Type</param>
        </member>
        <member name="M:NAudio.Mixer.MixerLine.#ctor(System.IntPtr,System.Int32,System.Int32,NAudio.Mixer.MixerFlags)">
            <summary>
            Creates a new Mixer Source For a Specified Source
            </summary>
            <param name="mixerHandle">Mixer Handle</param>
            <param name="destinationIndex">Destination Index</param>
            <param name="sourceIndex">Source Index</param>
            <param name="mixerHandleType">Flag indicating the meaning of mixerHandle</param>
        </member>
        <member name="M:NAudio.Mixer.MixerLine.GetMixerIdForWaveIn(System.Int32)">
            <summary>
            Creates a new Mixer Source
            </summary>
            <param name="waveInDevice">Wave In Device</param>
        </member>
        <member name="P:NAudio.Mixer.MixerLine.Name">
            <summary>
            Mixer Line Name
            </summary>
        </member>
        <member name="P:NAudio.Mixer.MixerLine.ShortName">
            <summary>
            Mixer Line short name
            </summary>
        </member>
        <member name="P:NAudio.Mixer.MixerLine.LineId">
            <summary>
            The line ID
            </summary>
        </member>
        <member name="P:NAudio.Mixer.MixerLine.ComponentType">
            <summary>
            Component Type
            </summary>
        </member>
        <member name="P:NAudio.Mixer.MixerLine.TypeDescription">
            <summary>
            Mixer destination type description
            </summary>
        </member>
        <member name="P:NAudio.Mixer.MixerLine.Channels">
            <summary>
            Number of channels
            </summary>
        </member>
        <member name="P:NAudio.Mixer.MixerLine.SourceCount">
            <summary>
            Number of sources
            </summary>
        </member>
        <member name="P:NAudio.Mixer.MixerLine.ControlsCount">
            <summary>
            Number of controls
            </summary>
        </member>
        <member name="P:NAudio.Mixer.MixerLine.IsActive">
            <summary>
            Is this destination active
            </summary>
        </member>
        <member name="P:NAudio.Mixer.MixerLine.IsDisconnected">
            <summary>
            Is this destination disconnected
            </summary>
        </member>
        <member name="P:NAudio.Mixer.MixerLine.IsSource">
            <summary>
            Is this destination a source
            </summary>
        </member>
        <member name="M:NAudio.Mixer.MixerLine.GetSource(System.Int32)">
            <summary>
            Gets the specified source
            </summary>
        </member>
        <member name="P:NAudio.Mixer.MixerLine.Controls">
            <summary>
            Enumerator for the controls on this Mixer Limne
            </summary>
        </member>
        <member name="P:NAudio.Mixer.MixerLine.Sources">
            <summary>
            Enumerator for the sources on this Mixer Line
            </summary>
        </member>
        <member name="P:NAudio.Mixer.MixerLine.TargetName">
            <summary>
            The name of the target output device
            </summary>
        </member>
        <member name="M:NAudio.Mixer.MixerLine.ToString">
            <summary>
            Describes this Mixer Line (for diagnostic purposes)
            </summary>
        </member>
        <member name="T:NAudio.Mixer.MixerFlags">
            <summary>
            Mixer Interop Flags
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.Handle">
            <summary>
            MIXER_OBJECTF_HANDLE 	= 0x80000000;
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.Mixer">
            <summary>
            MIXER_OBJECTF_MIXER 	= 0x00000000;
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.MixerHandle">
            <summary>
            MIXER_OBJECTF_HMIXER
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.WaveOut">
            <summary>
            MIXER_OBJECTF_WAVEOUT
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.WaveOutHandle">
            <summary>
            MIXER_OBJECTF_HWAVEOUT
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.WaveIn">
            <summary>
            MIXER_OBJECTF_WAVEIN
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.WaveInHandle">
            <summary>
            MIXER_OBJECTF_HWAVEIN
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.MidiOut">
            <summary>
            MIXER_OBJECTF_MIDIOUT
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.MidiOutHandle">
            <summary>
            MIXER_OBJECTF_HMIDIOUT
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.MidiIn">
            <summary>
            MIXER_OBJECTF_MIDIIN
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.MidiInHandle">
            <summary>
            MIXER_OBJECTF_HMIDIIN
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.Aux">
            <summary>
            MIXER_OBJECTF_AUX
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.Value">
            <summary>
            MIXER_GETCONTROLDETAILSF_VALUE      	= 0x00000000;
            MIXER_SETCONTROLDETAILSF_VALUE      	= 0x00000000;
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.ListText">
            <summary>
            MIXER_GETCONTROLDETAILSF_LISTTEXT   	= 0x00000001;
            MIXER_SETCONTROLDETAILSF_LISTTEXT   	= 0x00000001;
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.QueryMask">
            <summary>
            MIXER_GETCONTROLDETAILSF_QUERYMASK  	= 0x0000000F;
            MIXER_SETCONTROLDETAILSF_QUERYMASK  	= 0x0000000F;
            MIXER_GETLINECONTROLSF_QUERYMASK    	= 0x0000000F;
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.All">
            <summary>
            MIXER_GETLINECONTROLSF_ALL          	= 0x00000000;
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.OneById">
            <summary>
            MIXER_GETLINECONTROLSF_ONEBYID      	= 0x00000001;
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.OneByType">
            <summary>
            MIXER_GETLINECONTROLSF_ONEBYTYPE    	= 0x00000002;
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.GetLineInfoOfDestination">
            <summary>
            MIXER_GETLINEINFOF_DESTINATION      	= 0x00000000;
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.GetLineInfoOfSource">
            <summary>
            MIXER_GETLINEINFOF_SOURCE           	= 0x00000001;
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.GetLineInfoOfLineId">
            <summary>
            MIXER_GETLINEINFOF_LINEID           	= 0x00000002;
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.GetLineInfoOfComponentType">
            <summary>
            MIXER_GETLINEINFOF_COMPONENTTYPE    	= 0x00000003;
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.GetLineInfoOfTargetType">
            <summary>
            MIXER_GETLINEINFOF_TARGETTYPE       	= 0x00000004;
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerFlags.GetLineInfoOfQueryMask">
            <summary>
            MIXER_GETLINEINFOF_QUERYMASK        	= 0x0000000F;
            </summary>
        </member>
        <member name="T:NAudio.Mixer.MixerInterop.MIXERLINE_LINEF">
            <summary>
            Mixer Line Flags
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerInterop.MIXERLINE_LINEF.MIXERLINE_LINEF_ACTIVE">
            <summary>
            Audio line is active. An active line indicates that a signal is probably passing 
            through the line.
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerInterop.MIXERLINE_LINEF.MIXERLINE_LINEF_DISCONNECTED">
            <summary>
            Audio line is disconnected. A disconnected line's associated controls can still be 
            modified, but the changes have no effect until the line is connected.
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerInterop.MIXERLINE_LINEF.MIXERLINE_LINEF_SOURCE">
            <summary>
            Audio line is an audio source line associated with a single audio destination line. 
            If this flag is not set, this line is an audio destination line associated with zero 
            or more audio source lines.
            </summary>
        </member>
        <member name="T:NAudio.Mixer.MixerInterop.Bounds">
            <summary>
            BOUNDS structure
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerInterop.Bounds.minimum">
            <summary>
            dwMinimum / lMinimum / reserved 0
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerInterop.Bounds.maximum">
            <summary>
            dwMaximum / lMaximum / reserved 1
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerInterop.Bounds.reserved2">
            <summary>
            reserved 2
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerInterop.Bounds.reserved3">
            <summary>
            reserved 3
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerInterop.Bounds.reserved4">
            <summary>
            reserved 4
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerInterop.Bounds.reserved5">
            <summary>
            reserved 5
            </summary>
        </member>
        <member name="T:NAudio.Mixer.MixerInterop.Metrics">
            <summary>
            METRICS structure
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerInterop.Metrics.step">
            <summary>
            cSteps / reserved[0]
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerInterop.Metrics.customData">
            <summary>
            cbCustomData / reserved[1], number of bytes for control details
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerInterop.Metrics.reserved2">
            <summary>
            reserved 2
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerInterop.Metrics.reserved3">
            <summary>
            reserved 3
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerInterop.Metrics.reserved4">
            <summary>
            reserved 4
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerInterop.Metrics.reserved5">
            <summary>
            reserved 5
            </summary>
        </member>
        <member name="T:NAudio.Mixer.MixerInterop.MIXERCONTROL">
            <summary>
            MIXERCONTROL struct
            http://msdn.microsoft.com/en-us/library/dd757293%28VS.85%29.aspx
            </summary>
        </member>
        <member name="T:NAudio.Mixer.MixerLineComponentType">
            <summary>
            Mixer Line Component type enumeration
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerLineComponentType.DestinationUndefined">
            <summary>
            Audio line is a destination that cannot be defined by one of the standard component types. A mixer device is required to use this component type for line component types that have not been defined by Microsoft Corporation.
            MIXERLINE_COMPONENTTYPE_DST_UNDEFINED
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerLineComponentType.DestinationDigital">
            <summary>
            Audio line is a digital destination (for example, digital input to a DAT or CD audio device).
            MIXERLINE_COMPONENTTYPE_DST_DIGITAL 
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerLineComponentType.DestinationLine">
            <summary>
            Audio line is a line level destination (for example, line level input from a CD audio device) that will be the final recording source for the analog-to-digital converter (ADC). Because most audio cards for personal computers provide some sort of gain for the recording audio source line, the mixer device will use the MIXERLINE_COMPONENTTYPE_DST_WAVEIN type.
            MIXERLINE_COMPONENTTYPE_DST_LINE
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerLineComponentType.DestinationMonitor">
            <summary>
            Audio line is a destination used for a monitor.
            MIXERLINE_COMPONENTTYPE_DST_MONITOR
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerLineComponentType.DestinationSpeakers">
            <summary>
            Audio line is an adjustable (gain and/or attenuation) destination intended to drive speakers. This is the typical component type for the audio output of audio cards for personal computers.
            MIXERLINE_COMPONENTTYPE_DST_SPEAKERS
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerLineComponentType.DestinationHeadphones">
            <summary>
            Audio line is an adjustable (gain and/or attenuation) destination intended to drive headphones. Most audio cards use the same audio destination line for speakers and headphones, in which case the mixer device simply uses the MIXERLINE_COMPONENTTYPE_DST_SPEAKERS type.
            MIXERLINE_COMPONENTTYPE_DST_HEADPHONES
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerLineComponentType.DestinationTelephone">
            <summary>
            Audio line is a destination that will be routed to a telephone line.
            MIXERLINE_COMPONENTTYPE_DST_TELEPHONE
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerLineComponentType.DestinationWaveIn">
            <summary>
            Audio line is a destination that will be the final recording source for the waveform-audio input (ADC). This line typically provides some sort of gain or attenuation. This is the typical component type for the recording line of most audio cards for personal computers.
            MIXERLINE_COMPONENTTYPE_DST_WAVEIN
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerLineComponentType.DestinationVoiceIn">
            <summary>
            Audio line is a destination that will be the final recording source for voice input. This component type is exactly like MIXERLINE_COMPONENTTYPE_DST_WAVEIN but is intended specifically for settings used during voice recording/recognition. Support for this line is optional for a mixer device. Many mixer devices provide only MIXERLINE_COMPONENTTYPE_DST_WAVEIN.
            MIXERLINE_COMPONENTTYPE_DST_VOICEIN
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerLineComponentType.SourceUndefined">
            <summary>
            Audio line is a source that cannot be defined by one of the standard component types. A mixer device is required to use this component type for line component types that have not been defined by Microsoft Corporation.
            MIXERLINE_COMPONENTTYPE_SRC_UNDEFINED
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerLineComponentType.SourceDigital">
            <summary>
            Audio line is a digital source (for example, digital output from a DAT or audio CD).
            MIXERLINE_COMPONENTTYPE_SRC_DIGITAL
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerLineComponentType.SourceLine">
            <summary>
            Audio line is a line-level source (for example, line-level input from an external stereo) that can be used as an optional recording source. Because most audio cards for personal computers provide some sort of gain for the recording source line, the mixer device will use the MIXERLINE_COMPONENTTYPE_SRC_AUXILIARY type.
            MIXERLINE_COMPONENTTYPE_SRC_LINE
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerLineComponentType.SourceMicrophone">
            <summary>
            Audio line is a microphone recording source. Most audio cards for personal computers provide at least two types of recording sources: an auxiliary audio line and microphone input. A microphone audio line typically provides some sort of gain. Audio cards that use a single input for use with a microphone or auxiliary audio line should use the MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE component type.
            MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerLineComponentType.SourceSynthesizer">
            <summary>
            Audio line is a source originating from the output of an internal synthesizer. Most audio cards for personal computers provide some sort of MIDI synthesizer (for example, an Adlib®-compatible or OPL/3 FM synthesizer).
            MIXERLINE_COMPONENTTYPE_SRC_SYNTHESIZER
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerLineComponentType.SourceCompactDisc">
            <summary>
            Audio line is a source originating from the output of an internal audio CD. This component type is provided for audio cards that provide an audio source line intended to be connected to an audio CD (or CD-ROM playing an audio CD).
            MIXERLINE_COMPONENTTYPE_SRC_COMPACTDISC
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerLineComponentType.SourceTelephone">
            <summary>
            Audio line is a source originating from an incoming telephone line.
            MIXERLINE_COMPONENTTYPE_SRC_TELEPHONE
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerLineComponentType.SourcePcSpeaker">
            <summary>
            Audio line is a source originating from personal computer speaker. Several audio cards for personal computers provide the ability to mix what would typically be played on the internal speaker with the output of an audio card. Some audio cards support the ability to use this output as a recording source.
            MIXERLINE_COMPONENTTYPE_SRC_PCSPEAKER
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerLineComponentType.SourceWaveOut">
            <summary>
            Audio line is a source originating from the waveform-audio output digital-to-analog converter (DAC). Most audio cards for personal computers provide this component type as a source to the MIXERLINE_COMPONENTTYPE_DST_SPEAKERS destination. Some cards also allow this source to be routed to the MIXERLINE_COMPONENTTYPE_DST_WAVEIN destination.
            MIXERLINE_COMPONENTTYPE_SRC_WAVEOUT
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerLineComponentType.SourceAuxiliary">
            <summary>
            Audio line is a source originating from the auxiliary audio line. This line type is intended as a source with gain or attenuation that can be routed to the MIXERLINE_COMPONENTTYPE_DST_SPEAKERS destination and/or recorded from the MIXERLINE_COMPONENTTYPE_DST_WAVEIN destination.
            MIXERLINE_COMPONENTTYPE_SRC_AUXILIARY
            </summary>
        </member>
        <member name="F:NAudio.Mixer.MixerLineComponentType.SourceAnalog">
            <summary>
            Audio line is an analog source (for example, analog output from a video-cassette tape).
            MIXERLINE_COMPONENTTYPE_SRC_ANALOG
            </summary>
        </member>
        <member name="T:NAudio.Mixer.SignedMixerControl">
            <summary>
            Represents a signed mixer control
            </summary>
        </member>
        <member name="M:NAudio.Mixer.SignedMixerControl.GetDetails(System.IntPtr)">
            <summary>
            Gets details for this contrl
            </summary>
        </member>
        <member name="P:NAudio.Mixer.SignedMixerControl.Value">
            <summary>
            The value of the control
            </summary>
        </member>
        <member name="P:NAudio.Mixer.SignedMixerControl.MinValue">
            <summary>
            Minimum value for this control
            </summary>
        </member>
        <member name="P:NAudio.Mixer.SignedMixerControl.MaxValue">
            <summary>
            Maximum value for this control
            </summary>
        </member>
        <member name="P:NAudio.Mixer.SignedMixerControl.Percent">
            <summary>
            Value of the control represented as a percentage
            </summary>
        </member>
        <member name="M:NAudio.Mixer.SignedMixerControl.ToString">
            <summary>
            String Representation for debugging purposes
            </summary>
            <returns></returns>
        </member>
        <member name="T:NAudio.Mixer.UnsignedMixerControl">
            <summary>
            Represents an unsigned mixer control
            </summary>
        </member>
        <member name="M:NAudio.Mixer.UnsignedMixerControl.GetDetails(System.IntPtr)">
            <summary>
            Gets the details for this control
            </summary>
        </member>
        <member name="P:NAudio.Mixer.UnsignedMixerControl.Value">
            <summary>
            The control value
            </summary>
        </member>
        <member name="P:NAudio.Mixer.UnsignedMixerControl.MinValue">
            <summary>
            The control's minimum value
            </summary>
        </member>
        <member name="P:NAudio.Mixer.UnsignedMixerControl.MaxValue">
            <summary>
            The control's maximum value
            </summary>
        </member>
        <member name="P:NAudio.Mixer.UnsignedMixerControl.Percent">
            <summary>
            Value of the control represented as a percentage
            </summary>
        </member>
        <member name="M:NAudio.Mixer.UnsignedMixerControl.ToString">
            <summary>
            String Representation for debugging purposes
            </summary>
        </member>
        <member name="T:NAudio.Manufacturers">
            <summary>
            Manufacturer codes from mmreg.h
            </summary>
        </member>
        <member name="F:NAudio.Manufacturers.Microsoft">
            <summary>Microsoft Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Creative">
            <summary>Creative Labs, Inc</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Mediavision">
            <summary>Media Vision, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Fujitsu">
            <summary>Fujitsu Corp.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Artisoft">
            <summary>Artisoft, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.TurtleBeach">
            <summary>Turtle Beach, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Ibm">
            <summary>IBM Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Vocaltec">
            <summary>Vocaltec LTD.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Roland">
            <summary>Roland</summary>
        </member>
        <member name="F:NAudio.Manufacturers.DspSolutions">
            <summary>DSP Solutions, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Nec">
            <summary>NEC</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Ati">
            <summary>ATI</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Wanglabs">
            <summary>Wang Laboratories, Inc</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Tandy">
            <summary>Tandy Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Voyetra">
            <summary>Voyetra</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Antex">
            <summary>Antex Electronics Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.IclPS">
            <summary>ICL Personal Systems</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Intel">
            <summary>Intel Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Gravis">
            <summary>Advanced Gravis</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Val">
            <summary>Video Associates Labs, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Interactive">
            <summary>InterActive Inc</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Yamaha">
            <summary>Yamaha Corporation of America</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Everex">
            <summary>Everex Systems, Inc</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Echo">
            <summary>Echo Speech Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Sierra">
            <summary>Sierra Semiconductor Corp</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Cat">
            <summary>Computer Aided Technologies</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Apps">
            <summary>APPS Software International</summary>
        </member>
        <member name="F:NAudio.Manufacturers.DspGroup">
            <summary>DSP Group, Inc</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Melabs">
            <summary>microEngineering Labs</summary>
        </member>
        <member name="F:NAudio.Manufacturers.ComputerFriends">
            <summary>Computer Friends, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Ess">
            <summary>ESS Technology</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Audiofile">
            <summary>Audio, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Motorola">
            <summary>Motorola, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Canopus">
            <summary>Canopus, co., Ltd.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Epson">
            <summary>Seiko Epson Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Truevision">
            <summary>Truevision</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Aztech">
            <summary>Aztech Labs, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Videologic">
            <summary>Videologic</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Scalacs">
            <summary>SCALACS</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Korg">
            <summary>Korg Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Apt">
            <summary>Audio Processing Technology</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Ics">
            <summary>Integrated Circuit Systems, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Iteratedsys">
            <summary>Iterated Systems, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Metheus">
            <summary>Metheus</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Logitech">
            <summary>Logitech, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Winnov">
            <summary>Winnov, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Ncr">
            <summary>NCR Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Exan">
            <summary>EXAN</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Ast">
            <summary>AST Research Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Willowpond">
            <summary>Willow Pond Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Sonicfoundry">
            <summary>Sonic Foundry</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Vitec">
            <summary>Vitec Multimedia</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Moscom">
            <summary>MOSCOM Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Siliconsoft">
            <summary>Silicon Soft, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Supermac">
            <summary>Supermac</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Audiopt">
            <summary>Audio Processing Technology</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Speechcomp">
            <summary>Speech Compression</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Ahead">
            <summary>Ahead, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Dolby">
            <summary>Dolby Laboratories</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Oki">
            <summary>OKI</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Auravision">
            <summary>AuraVision Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Olivetti">
            <summary>Ing C. Olivetti &amp; C., S.p.A.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Iomagic">
            <summary>I/O Magic Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Matsushita">
            <summary>Matsushita Electric Industrial Co., LTD.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Controlres">
            <summary>Control Resources Limited</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Xebec">
            <summary>Xebec Multimedia Solutions Limited</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Newmedia">
            <summary>New Media Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Nms">
            <summary>Natural MicroSystems</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Lyrrus">
            <summary>Lyrrus Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Compusic">
            <summary>Compusic</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Opti">
            <summary>OPTi Computers Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Adlacc">
            <summary>Adlib Accessories Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Compaq">
            <summary>Compaq Computer Corp.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Dialogic">
            <summary>Dialogic Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Insoft">
            <summary>InSoft, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Mptus">
            <summary>M.P. Technologies, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Weitek">
            <summary>Weitek</summary>
        </member>
        <member name="F:NAudio.Manufacturers.LernoutAndHauspie">
            <summary>Lernout &amp; Hauspie</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Qciar">
            <summary>Quanta Computer Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Apple">
            <summary>Apple Computer, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Digital">
            <summary>Digital Equipment Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Motu">
            <summary>Mark of the Unicorn</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Workbit">
            <summary>Workbit Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Ositech">
            <summary>Ositech Communications Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Miro">
            <summary>miro Computer Products AG</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Cirruslogic">
            <summary>Cirrus Logic</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Isolution">
            <summary>ISOLUTION  B.V.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Horizons">
            <summary>Horizons Technology, Inc</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Concepts">
            <summary>Computer Concepts Ltd</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Vtg">
            <summary>Voice Technologies Group, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Radius">
            <summary>Radius</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Rockwell">
            <summary>Rockwell International</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Xyz">
            <summary>Co. XYZ for testing</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Opcode">
            <summary>Opcode Systems</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Voxware">
            <summary>Voxware Inc</summary>
        </member>
        <member name="F:NAudio.Manufacturers.NorthernTelecom">
            <summary>Northern Telecom Limited</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Apicom">
            <summary>APICOM</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Grande">
            <summary>Grande Software</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Addx">
            <summary>ADDX</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Wildcat">
            <summary>Wildcat Canyon Software</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Rhetorex">
            <summary>Rhetorex Inc</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Brooktree">
            <summary>Brooktree Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Ensoniq">
            <summary>ENSONIQ Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Fast">
            <summary>FAST Multimedia AG</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Nvidia">
            <summary>NVidia Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Oksori">
            <summary>OKSORI Co., Ltd.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Diacoustics">
            <summary>DiAcoustics, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Gulbransen">
            <summary>Gulbransen, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.KayElemetrics">
            <summary>Kay Elemetrics, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Crystal">
            <summary>Crystal Semiconductor Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.SplashStudios">
            <summary>Splash Studios</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Quarterdeck">
            <summary>Quarterdeck Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Tdk">
            <summary>TDK Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.DigitalAudioLabs">
            <summary>Digital Audio Labs, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Seersys">
            <summary>Seer Systems, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Picturetel">
            <summary>PictureTel Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.AttMicroelectronics">
            <summary>AT&amp;T Microelectronics</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Osprey">
            <summary>Osprey Technologies, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Mediatrix">
            <summary>Mediatrix Peripherals</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Soundesigns">
            <summary>SounDesignS M.C.S. Ltd.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Aldigital">
            <summary>A.L. Digital Ltd.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.SpectrumSignalProcessing">
            <summary>Spectrum Signal Processing, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Ecs">
            <summary>Electronic Courseware Systems, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Amd">
            <summary>AMD</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Coredynamics">
            <summary>Core Dynamics</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Canam">
            <summary>CANAM Computers</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Softsound">
            <summary>Softsound, Ltd.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Norris">
            <summary>Norris Communications, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Ddd">
            <summary>Danka Data Devices</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Euphonics">
            <summary>EuPhonics</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Precept">
            <summary>Precept Software, Inc.</summary>
        </member>
        <member name="F:NAudio.Manufacturers.CrystalNet">
            <summary>Crystal Net Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Chromatic">
            <summary>Chromatic Research, Inc</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Voiceinfo">
            <summary>Voice Information Systems, Inc</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Viennasys">
            <summary>Vienna Systems</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Connectix">
            <summary>Connectix Corporation</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Gadgetlabs">
            <summary>Gadget Labs LLC</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Frontier">
            <summary>Frontier Design Group LLC</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Viona">
            <summary>Viona Development GmbH</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Casio">
            <summary>Casio Computer Co., LTD</summary>
        </member>
        <member name="F:NAudio.Manufacturers.Diamondmm">
            <summary>Diamond Multimedia</summary>
        </member>
        <member name="F:NAudio.Manufacturers.S3">
            <summary>S3</summary>
        </member>
        <member name="F:NAudio.Manufacturers.FraunhoferIis">
            <summary>Fraunhofer</summary>
        </member>
        <member name="T:NAudio.MmException">
            <summary>
            Summary description for MmException.
            </summary>
        </member>
        <member name="M:NAudio.MmException.#ctor(NAudio.MmResult,System.String)">
            <summary>
            Creates a new MmException
            </summary>
            <param name="result">The result returned by the Windows API call</param>
            <param name="function">The name of the Windows API that failed</param>
        </member>
        <member name="M:NAudio.MmException.Try(NAudio.MmResult,System.String)">
            <summary>
            Helper function to automatically raise an exception on failure
            </summary>
            <param name="result">The result of the API call</param>
            <param name="function">The API function name</param>
        </member>
        <member name="P:NAudio.MmException.Result">
            <summary>
            Returns the Windows API result
            </summary>
        </member>
        <member name="T:NAudio.MmResult">
            <summary>
            Windows multimedia error codes from mmsystem.h.
            </summary>
        </member>
        <member name="F:NAudio.MmResult.NoError">
            <summary>no error, MMSYSERR_NOERROR</summary>
        </member>
        <member name="F:NAudio.MmResult.UnspecifiedError">
            <summary>unspecified error, MMSYSERR_ERROR</summary>
        </member>
        <member name="F:NAudio.MmResult.BadDeviceId">
            <summary>device ID out of range, MMSYSERR_BADDEVICEID</summary>
        </member>
        <member name="F:NAudio.MmResult.NotEnabled">
            <summary>driver failed enable, MMSYSERR_NOTENABLED</summary>
        </member>
        <member name="F:NAudio.MmResult.AlreadyAllocated">
            <summary>device already allocated, MMSYSERR_ALLOCATED</summary>
        </member>
        <member name="F:NAudio.MmResult.InvalidHandle">
            <summary>device handle is invalid, MMSYSERR_INVALHANDLE</summary>
        </member>
        <member name="F:NAudio.MmResult.NoDriver">
            <summary>no device driver present, MMSYSERR_NODRIVER</summary>
        </member>
        <member name="F:NAudio.MmResult.MemoryAllocationError">
            <summary>memory allocation error, MMSYSERR_NOMEM</summary>
        </member>
        <member name="F:NAudio.MmResult.NotSupported">
            <summary>function isn't supported, MMSYSERR_NOTSUPPORTED</summary>
        </member>
        <member name="F:NAudio.MmResult.BadErrorNumber">
            <summary>error value out of range, MMSYSERR_BADERRNUM</summary>
        </member>
        <member name="F:NAudio.MmResult.InvalidFlag">
            <summary>invalid flag passed, MMSYSERR_INVALFLAG</summary>
        </member>
        <member name="F:NAudio.MmResult.InvalidParameter">
            <summary>invalid parameter passed, MMSYSERR_INVALPARAM</summary>
        </member>
        <member name="F:NAudio.MmResult.HandleBusy">
            <summary>handle being used simultaneously on another thread (eg callback),MMSYSERR_HANDLEBUSY</summary>
        </member>
        <member name="F:NAudio.MmResult.InvalidAlias">
            <summary>specified alias not found, MMSYSERR_INVALIDALIAS</summary>
        </member>
        <member name="F:NAudio.MmResult.BadRegistryDatabase">
            <summary>bad registry database, MMSYSERR_BADDB</summary>
        </member>
        <member name="F:NAudio.MmResult.RegistryKeyNotFound">
            <summary>registry key not found, MMSYSERR_KEYNOTFOUND</summary>
        </member>
        <member name="F:NAudio.MmResult.RegistryReadError">
            <summary>registry read error, MMSYSERR_READERROR</summary>
        </member>
        <member name="F:NAudio.MmResult.RegistryWriteError">
            <summary>registry write error, MMSYSERR_WRITEERROR</summary>
        </member>
        <member name="F:NAudio.MmResult.RegistryDeleteError">
            <summary>registry delete error, MMSYSERR_DELETEERROR</summary>
        </member>
        <member name="F:NAudio.MmResult.RegistryValueNotFound">
            <summary>registry value not found, MMSYSERR_VALNOTFOUND</summary>
        </member>
        <member name="F:NAudio.MmResult.NoDriverCallback">
            <summary>driver does not call DriverCallback, MMSYSERR_NODRIVERCB</summary>
        </member>
        <member name="F:NAudio.MmResult.MoreData">
            <summary>more data to be returned, MMSYSERR_MOREDATA</summary>
        </member>
        <member name="F:NAudio.MmResult.WaveBadFormat">
            <summary>unsupported wave format, WAVERR_BADFORMAT</summary>
        </member>
        <member name="F:NAudio.MmResult.WaveStillPlaying">
            <summary>still something playing, WAVERR_STILLPLAYING</summary>
        </member>
        <member name="F:NAudio.MmResult.WaveHeaderUnprepared">
            <summary>header not prepared, WAVERR_UNPREPARED</summary>
        </member>
        <member name="F:NAudio.MmResult.WaveSync">
            <summary>device is synchronous, WAVERR_SYNC</summary>
        </member>
        <member name="F:NAudio.MmResult.AcmNotPossible">
            <summary>Conversion not possible (ACMERR_NOTPOSSIBLE)</summary>
        </member>
        <member name="F:NAudio.MmResult.AcmBusy">
            <summary>Busy (ACMERR_BUSY)</summary>
        </member>
        <member name="F:NAudio.MmResult.AcmHeaderUnprepared">
            <summary>Header Unprepared (ACMERR_UNPREPARED)</summary>
        </member>
        <member name="F:NAudio.MmResult.AcmCancelled">
            <summary>Cancelled (ACMERR_CANCELED)</summary>
        </member>
        <member name="F:NAudio.MmResult.MixerInvalidLine">
            <summary>invalid line (MIXERR_INVALLINE)</summary>
        </member>
        <member name="F:NAudio.MmResult.MixerInvalidControl">
            <summary>invalid control (MIXERR_INVALCONTROL)</summary>
        </member>
        <member name="F:NAudio.MmResult.MixerInvalidValue">
            <summary>invalid value (MIXERR_INVALVALUE)</summary>
        </member>
    </members>
</doc>
