1
0
forked from s425077/PotatoPlan
PotatoPlan/Tractor_VS/Game1/bin/Windows/x86/Debug/SharpDX.XAudio2.xml
BOTLester 165f50b3fd Stable branch push
testin
2020-04-07 17:50:31 +02:00

5990 lines
552 KiB
XML

<?xml version="1.0"?>
<doc>
<assembly>
<name>SharpDX.XAudio2</name>
</assembly>
<members>
<member name="T:SharpDX.XAudio2.AssemblyDoc">
<summary>
The <see cref="A:SharpDX.XAudio2"/> assembly provides managed <see cref="N:SharpDX.XAudio2"/> and <see cref="N:SharpDX.X3DAudio"/> APIs.
</summary>
<msdn-id>hh405049</msdn-id>
<unmanaged>XAudio2</unmanaged>
<unmanaged-short>XAudio2</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.AudioBuffer">
<summary>
<p>Represents an audio data buffer, used with <strong><see cref="M:SharpDX.XAudio2.SourceVoice.SubmitSourceBuffer(SharpDX.XAudio2.AudioBuffer,System.IntPtr)" /></strong>.</p>
</summary>
<remarks>
<p>XAudio2 audio data is interleaved, data from each channel is adjacent for a particular sample number. For example if there was a 4 channel wave playing into an XAudio2 source voice, the audio data would be a sample of channel 0, a sample of channel 1, a sample of channel 2, a sample of channel 3, and then the next sample of channels 0, 1, 2, 3, etc. </p><p>The <strong>AudioBytes</strong> and <strong>pAudioData</strong> members of <strong><see cref="T:SharpDX.XAudio2.AudioBuffer" /></strong> correspond to the size in bytes and contents of the 'data' RIFF chunk of the file being played. The contents of the chunk may need to be byte swapped when loading the file on Xbox 360. </p><p>Memory allocated to hold a <strong><see cref="T:SharpDX.XAudio2.AudioBuffer" /></strong> or <strong><see cref="T:SharpDX.XAudio2.BufferWma" /></strong> structure can be freed as soon as the <strong><see cref="M:SharpDX.XAudio2.SourceVoice.SubmitSourceBuffer(SharpDX.XAudio2.AudioBuffer,System.IntPtr)" /></strong> call it is passed to returns. The data the structure points to (<strong>pAudioData</strong> and <strong>pDecodedPacketCumulativeBytes</strong>, respectively) can't be freed until the buffer completes (as signaled by the <strong><see cref="M:SharpDX.XAudio2.VoiceCallback.OnBufferEnd(System.IntPtr)" /></strong> callback) or the voice is stopped or destroyed. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_BUFFER']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_buffer</msdn-id>
<unmanaged>XAUDIO2_BUFFER</unmanaged>
<unmanaged-short>XAUDIO2_BUFFER</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.AudioBuffer.#ctor">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAudio2.AudioBuffer" /> class.
</summary>
</member>
<member name="M:SharpDX.XAudio2.AudioBuffer.#ctor(SharpDX.DataStream)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAudio2.AudioBuffer" /> class.
</summary>
<param name="stream">The stream to get the audio buffer from.</param>
</member>
<member name="M:SharpDX.XAudio2.AudioBuffer.#ctor(SharpDX.DataPointer)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAudio2.AudioBuffer" /> class.
</summary>
<param name="dataBuffer">The buffer to get the audio buffer from.</param>
</member>
<member name="P:SharpDX.XAudio2.AudioBuffer.Stream">
<summary>
Gets or sets the data stream associated to this audio buffer
</summary>
<value>The stream.</value>
</member>
<member name="F:SharpDX.XAudio2.AudioBuffer.LoopInfinite">
<summary>Constant LoopInfinite.</summary>
<unmanaged>XAUDIO2_LOOP_INFINITE</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.AudioBuffer.Flags">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_BUFFER::Flags']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_buffer</msdn-id>
<unmanaged>XAUDIO2_BUFFER_FLAGS Flags</unmanaged>
<unmanaged-short>XAUDIO2_BUFFER_FLAGS Flags</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.AudioBuffer.AudioBytes">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_BUFFER::AudioBytes']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_buffer</msdn-id>
<unmanaged>unsigned int AudioBytes</unmanaged>
<unmanaged-short>unsigned int AudioBytes</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.AudioBuffer.AudioDataPointer">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_BUFFER::pAudioData']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_buffer</msdn-id>
<unmanaged>const unsigned char* pAudioData</unmanaged>
<unmanaged-short>unsigned char pAudioData</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.AudioBuffer.PlayBegin">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_BUFFER::PlayBegin']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_buffer</msdn-id>
<unmanaged>unsigned int PlayBegin</unmanaged>
<unmanaged-short>unsigned int PlayBegin</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.AudioBuffer.PlayLength">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_BUFFER::PlayLength']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_buffer</msdn-id>
<unmanaged>unsigned int PlayLength</unmanaged>
<unmanaged-short>unsigned int PlayLength</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.AudioBuffer.LoopBegin">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_BUFFER::LoopBegin']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_buffer</msdn-id>
<unmanaged>unsigned int LoopBegin</unmanaged>
<unmanaged-short>unsigned int LoopBegin</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.AudioBuffer.LoopLength">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_BUFFER::LoopLength']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_buffer</msdn-id>
<unmanaged>unsigned int LoopLength</unmanaged>
<unmanaged-short>unsigned int LoopLength</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.AudioBuffer.LoopCount">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_BUFFER::LoopCount']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_buffer</msdn-id>
<unmanaged>unsigned int LoopCount</unmanaged>
<unmanaged-short>unsigned int LoopCount</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.AudioBuffer.Context">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_BUFFER::pContext']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_buffer</msdn-id>
<unmanaged>void* pContext</unmanaged>
<unmanaged-short>void pContext</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.DeviceRole">
<summary>
Device role, only valid for XAudio27.
</summary>
<!-- No matching elements were found for the following include tag --><!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_DEVICE_ROLE']/*" />
<unmanaged>XAUDIO2_DEVICE_ROLE</unmanaged>
<unmanaged-short>XAUDIO2_DEVICE_ROLE</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.DeviceRole.NotDefaultDevice">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='NotDefaultDevice']/*" />
<unmanaged>NotDefaultDevice</unmanaged>
<unmanaged-short>NotDefaultDevice</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.DeviceRole.DefaultConsoleDevice">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='DefaultConsoleDevice']/*" />
<unmanaged>DefaultConsoleDevice</unmanaged>
<unmanaged-short>DefaultConsoleDevice</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.DeviceRole.DefaultMultimediaDevice">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='DefaultMultimediaDevice']/*" />
<unmanaged>DefaultMultimediaDevice</unmanaged>
<unmanaged-short>DefaultMultimediaDevice</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.DeviceRole.DefaultCommunicationsDevice">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='DefaultCommunicationsDevice']/*" />
<unmanaged>DefaultCommunicationsDevice</unmanaged>
<unmanaged-short>DefaultCommunicationsDevice</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.DeviceRole.DefaultGameDevice">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='DefaultGameDevice']/*" />
<unmanaged>DefaultGameDevice</unmanaged>
<unmanaged-short>DefaultGameDevice</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.DeviceRole.GlobalDefaultDevice">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='GlobalDefaultDevice']/*" />
<unmanaged>GlobalDefaultDevice</unmanaged>
<unmanaged-short>GlobalDefaultDevice</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.DeviceRole.InvalidDeviceRole">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='InvalidDeviceRole']/*" />
<unmanaged>InvalidDeviceRole</unmanaged>
<unmanaged-short>InvalidDeviceRole</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.DeviceDetails">
<summary>
Details of the device, only valid for XAudio27.
</summary>
<!-- No matching elements were found for the following include tag --><!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_DEVICE_DETAILS']/*" />
<unmanaged>XAUDIO2_DEVICE_DETAILS</unmanaged>
<unmanaged-short>XAUDIO2_DEVICE_DETAILS</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.DeviceDetails.DeviceID">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_DEVICE_DETAILS::DeviceID']/*" />
<unmanaged>wchar_t DeviceID[256]</unmanaged>
<unmanaged-short>wchar_t DeviceID</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.DeviceDetails.DisplayName">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_DEVICE_DETAILS::DisplayName']/*" />
<unmanaged>wchar_t DisplayName[256]</unmanaged>
<unmanaged-short>wchar_t DisplayName</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.DeviceDetails.Role">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_DEVICE_DETAILS::Role']/*" />
<unmanaged>XAUDIO2_DEVICE_ROLE Role</unmanaged>
<unmanaged-short>XAUDIO2_DEVICE_ROLE Role</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.DeviceDetails.OutputFormat">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_DEVICE_DETAILS::OutputFormat']/*" />
<unmanaged>WAVEFORMATEXTENSIBLE OutputFormat</unmanaged>
<unmanaged-short>WAVEFORMATEXTENSIBLE OutputFormat</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.EffectDescriptor">
<summary>
<p>Contains information about an XAPO for use in an effect chain.</p>
</summary>
<remarks>
<p>XAPO instances are passed to XAudio2 as <strong><see cref="T:SharpDX.ComObject" /></strong> interfaces and XAudio2 uses <strong>IXAPO::QueryInterface</strong> to acquire an <strong><see cref="T:SharpDX.XAPO.AudioProcessor" /></strong> interface and to detect whether the XAPO implements the <strong><see cref="T:SharpDX.XAPO.ParameterProvider" /></strong> interface. </p><p>For additional information on using XAPOs with XAudio2 see How to: Create an Effect Chain and How to: Use an XAPO in XAudio2.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_EFFECT_DESCRIPTOR']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_effect_descriptor</msdn-id>
<unmanaged>XAUDIO2_EFFECT_DESCRIPTOR</unmanaged>
<unmanaged-short>XAUDIO2_EFFECT_DESCRIPTOR</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.EffectDescriptor.#ctor(SharpDX.XAPO.AudioProcessor)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAudio2.EffectDescriptor"/> class with a Stereo Effect.
</summary>
<param name="effect">The effect.</param>
</member>
<member name="M:SharpDX.XAudio2.EffectDescriptor.#ctor(SharpDX.XAPO.AudioProcessor,System.Int32)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAudio2.EffectDescriptor"/> class.
</summary>
<param name="effect">The effect.</param>
<param name="outputChannelCount">The output channel count.</param>
</member>
<member name="P:SharpDX.XAudio2.EffectDescriptor.Effect">
<summary>
Gets or sets the AudioProcessor. The AudioProcessor cannot be set more than one.
</summary>
<value>The effect.</value>
</member>
<member name="F:SharpDX.XAudio2.EffectDescriptor.EffectPointer">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_EFFECT_DESCRIPTOR::pEffect']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_effect_descriptor</msdn-id>
<unmanaged>IUnknown* pEffect</unmanaged>
<unmanaged-short>IUnknown pEffect</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.EffectDescriptor.InitialState">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_EFFECT_DESCRIPTOR::InitialState']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_effect_descriptor</msdn-id>
<unmanaged>BOOL InitialState</unmanaged>
<unmanaged-short>BOOL InitialState</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.EffectDescriptor.OutputChannelCount">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_EFFECT_DESCRIPTOR::OutputChannels']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_effect_descriptor</msdn-id>
<unmanaged>unsigned int OutputChannels</unmanaged>
<unmanaged-short>unsigned int OutputChannels</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.EngineCallback">
<summary>
The IXAudio2EngineCallback interface contains methods that notify the client when certain events happen in the <see cref="T:SharpDX.XAudio2.XAudio2" /> engine. This interface should be implemented by the XAudio2 client. XAudio2 calls these methods via an interface pointer provided by the client, using either the {{XAudio2Create}} or <see cref="M:SharpDX.XAudio2.XAudio2.Initialize(System.Int32,SharpDX.XAudio2.ProcessorSpecifier)" /> method. Methods in this interface return void, rather than an HRESULT.
</summary>
<unmanaged>IXAudio2EngineCallback</unmanaged>
<summary>
<p>The <see cref="T:SharpDX.XAudio2.EngineCallback" /> interface contains methods that notify the client when certain events happen in the <strong><see cref="T:SharpDX.XAudio2.XAudio2" /></strong> engine.</p><p>This interface should be implemented by the XAudio2 client. XAudio2 calls these methods via an interface reference provided by the client, using the <strong>XAudio2Create</strong> method. Methods in this interface return <strong>void</strong>, rather than an <see cref="T:SharpDX.Result" />.
</p><p>See XAudio2 Callbacks for restrictions on callback implementation.</p><ul> <li>Methods</li> </ul>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2EngineCallback']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2enginecallback.ixaudio2enginecallback</msdn-id>
<unmanaged>IXAudio2EngineCallback</unmanaged>
<unmanaged-short>IXAudio2EngineCallback</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.EngineCallback.OnProcessingPassStart">
<summary>
Called by XAudio2 just before an audio processing pass begins.
</summary>
<unmanaged>void IXAudio2EngineCallback::OnProcessingPassStart()</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.EngineCallback.OnProcessingPassEnd">
<summary>
Called by XAudio2 just after an audio processing pass ends.
</summary>
<unmanaged>void IXAudio2EngineCallback::OnProcessingPassEnd()</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.EngineCallback.OnCriticalError(SharpDX.Result)">
<summary>
Called if a critical system error occurs that requires XAudio2 to be closed down and restarted.
</summary>
<param name="error"> Error code returned by XAudio2. </param>
<unmanaged>void IXAudio2EngineCallback::OnCriticalError([None] HRESULT Error)</unmanaged>
</member>
<member name="T:SharpDX.XAudio2.EngineShadow">
<summary>
Internal EngineCallback Callback Implementation
</summary>
</member>
<member name="M:SharpDX.XAudio2.EngineShadow.ToIntPtr(SharpDX.XAudio2.EngineCallback)">
<summary>
Return a pointer to the unmanaged version of this callback.
</summary>
<param name="callback">The callback.</param>
<returns>A pointer to a shadow c++ callback</returns>
</member>
<member name="T:SharpDX.XAudio2.EngineShadow.EngineVtbl.OnProcessingPassEndDelegate">
<summary>
Called by XAudio2 just after an audio processing pass ends.
</summary>
<unmanaged>void IXAudio2EngineCallback::OnProcessingPassEnd()</unmanaged>
</member>
<member name="T:SharpDX.XAudio2.EngineShadow.EngineVtbl.OnCriticalErrorDelegate">
<summary>
Called if a critical system error occurs that requires XAudio2 to be closed down and restarted.
</summary>
<param name="thisObject">This pointer</param>
<param name="error"> Error code returned by XAudio2. </param>
<unmanaged>void IXAudio2EngineCallback::OnCriticalError([None] HRESULT Error)</unmanaged>
</member>
<member name="T:SharpDX.XAudio2.ErrorEventArgs">
<summary>
EventArgs used by <see cref="E:SharpDX.XAudio2.XAudio2.CriticalError"/>.
</summary>
</member>
<member name="M:SharpDX.XAudio2.ErrorEventArgs.#ctor(SharpDX.Result)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAudio2.ErrorEventArgs"/> class.
</summary>
<param name="errorCode">The error code.</param>
</member>
<member name="P:SharpDX.XAudio2.ErrorEventArgs.ErrorCode">
<summary>
Gets or sets the error code.
</summary>
<value>The error code.</value>
</member>
<member name="T:SharpDX.XAudio2.Fx.Reverb">
<summary>
A Reverb XAudio2 AudioProcessor.
</summary>
<summary>
Functions
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='SharpDX.XAudio2.Fx.Reverb']/*" />
</member>
<member name="M:SharpDX.XAudio2.Fx.Reverb.#ctor(SharpDX.XAudio2.XAudio2)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAudio2.Fx.Reverb"/> class.
</summary>
</member>
<member name="M:SharpDX.XAudio2.Fx.Reverb.#ctor(SharpDX.XAudio2.XAudio2,System.Boolean)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAudio2.Fx.Reverb"/> class.
</summary>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MinWetDryMix">
<summary>Constant MinWetDryMix.</summary>
<unmanaged>XAUDIO2FX_REVERB_MIN_WET_DRY_MIX</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MinReflectionsDelay">
<summary>Constant MinReflectionsDelay.</summary>
<unmanaged>XAUDIO2FX_REVERB_MIN_REFLECTIONS_DELAY</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MinReverbDelay">
<summary>Constant MinReverbDelay.</summary>
<unmanaged>XAUDIO2FX_REVERB_MIN_REVERB_DELAY</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MinRearDelay">
<summary>Constant MinRearDelay.</summary>
<unmanaged>XAUDIO2FX_REVERB_MIN_REAR_DELAY</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MinPosition">
<summary>Constant MinPosition.</summary>
<unmanaged>XAUDIO2FX_REVERB_MIN_POSITION</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MinDiffusion">
<summary>Constant MinDiffusion.</summary>
<unmanaged>XAUDIO2FX_REVERB_MIN_DIFFUSION</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MinLowEqGain">
<summary>Constant MinLowEqGain.</summary>
<unmanaged>XAUDIO2FX_REVERB_MIN_LOW_EQ_GAIN</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MinLowEqCutoff">
<summary>Constant MinLowEqCutoff.</summary>
<unmanaged>XAUDIO2FX_REVERB_MIN_LOW_EQ_CUTOFF</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MinHighEqGain">
<summary>Constant MinHighEqGain.</summary>
<unmanaged>XAUDIO2FX_REVERB_MIN_HIGH_EQ_GAIN</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MinHighEqCutoff">
<summary>Constant MinHighEqCutoff.</summary>
<unmanaged>XAUDIO2FX_REVERB_MIN_HIGH_EQ_CUTOFF</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MinRoomFilterFreq">
<summary>Constant MinRoomFilterFreq.</summary>
<unmanaged>XAUDIO2FX_REVERB_MIN_ROOM_FILTER_FREQ</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MinRoomFilterMain">
<summary>Constant MinRoomFilterMain.</summary>
<unmanaged>XAUDIO2FX_REVERB_MIN_ROOM_FILTER_MAIN</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MinRoomFilterHf">
<summary>Constant MinRoomFilterHf.</summary>
<unmanaged>XAUDIO2FX_REVERB_MIN_ROOM_FILTER_HF</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MinReflectionsGain">
<summary>Constant MinReflectionsGain.</summary>
<unmanaged>XAUDIO2FX_REVERB_MIN_REFLECTIONS_GAIN</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MinReverbGain">
<summary>Constant MinReverbGain.</summary>
<unmanaged>XAUDIO2FX_REVERB_MIN_REVERB_GAIN</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MinDecayTime">
<summary>Constant MinDecayTime.</summary>
<unmanaged>XAUDIO2FX_REVERB_MIN_DECAY_TIME</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MinDensity">
<summary>Constant MinDensity.</summary>
<unmanaged>XAUDIO2FX_REVERB_MIN_DENSITY</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MinRoomSize">
<summary>Constant MinRoomSize.</summary>
<unmanaged>XAUDIO2FX_REVERB_MIN_ROOM_SIZE</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MaxWetDryMix">
<summary>Constant MaxWetDryMix.</summary>
<unmanaged>XAUDIO2FX_REVERB_MAX_WET_DRY_MIX</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MaxReflectionsDelay">
<summary>Constant MaxReflectionsDelay.</summary>
<unmanaged>XAUDIO2FX_REVERB_MAX_REFLECTIONS_DELAY</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MaxReverbDelay">
<summary>Constant MaxReverbDelay.</summary>
<unmanaged>XAUDIO2FX_REVERB_MAX_REVERB_DELAY</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MaxRearDelay">
<summary>Constant MaxRearDelay.</summary>
<unmanaged>XAUDIO2FX_REVERB_MAX_REAR_DELAY</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MaxPosition">
<summary>Constant MaxPosition.</summary>
<unmanaged>XAUDIO2FX_REVERB_MAX_POSITION</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MaxDiffusion">
<summary>Constant MaxDiffusion.</summary>
<unmanaged>XAUDIO2FX_REVERB_MAX_DIFFUSION</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MaxLowEqGain">
<summary>Constant MaxLowEqGain.</summary>
<unmanaged>XAUDIO2FX_REVERB_MAX_LOW_EQ_GAIN</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MaxLowEqCutoff">
<summary>Constant MaxLowEqCutoff.</summary>
<unmanaged>XAUDIO2FX_REVERB_MAX_LOW_EQ_CUTOFF</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MaxHighEqGain">
<summary>Constant MaxHighEqGain.</summary>
<unmanaged>XAUDIO2FX_REVERB_MAX_HIGH_EQ_GAIN</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MaxHighEqCutoff">
<summary>Constant MaxHighEqCutoff.</summary>
<unmanaged>XAUDIO2FX_REVERB_MAX_HIGH_EQ_CUTOFF</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MaxRoomFilterFreq">
<summary>Constant MaxRoomFilterFreq.</summary>
<unmanaged>XAUDIO2FX_REVERB_MAX_ROOM_FILTER_FREQ</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MaxRoomFilterMain">
<summary>Constant MaxRoomFilterMain.</summary>
<unmanaged>XAUDIO2FX_REVERB_MAX_ROOM_FILTER_MAIN</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MaxRoomFilterHf">
<summary>Constant MaxRoomFilterHf.</summary>
<unmanaged>XAUDIO2FX_REVERB_MAX_ROOM_FILTER_HF</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MaxReflectionsGain">
<summary>Constant MaxReflectionsGain.</summary>
<unmanaged>XAUDIO2FX_REVERB_MAX_REFLECTIONS_GAIN</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MaxReverbGain">
<summary>Constant MaxReverbGain.</summary>
<unmanaged>XAUDIO2FX_REVERB_MAX_REVERB_GAIN</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MaxDensity">
<summary>Constant MaxDensity.</summary>
<unmanaged>XAUDIO2FX_REVERB_MAX_DENSITY</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.MaxRoomSize">
<summary>Constant MaxRoomSize.</summary>
<unmanaged>XAUDIO2FX_REVERB_MAX_ROOM_SIZE</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.DefaultWetDryMix">
<summary>Constant DefaultWetDryMix.</summary>
<unmanaged>XAUDIO2FX_REVERB_DEFAULT_WET_DRY_MIX</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.DefaultReflectionsDelay">
<summary>Constant DefaultReflectionsDelay.</summary>
<unmanaged>XAUDIO2FX_REVERB_DEFAULT_REFLECTIONS_DELAY</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.DefaultReverbDelay">
<summary>Constant DefaultReverbDelay.</summary>
<unmanaged>XAUDIO2FX_REVERB_DEFAULT_REVERB_DELAY</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.DefaultRearDelay">
<summary>Constant DefaultRearDelay.</summary>
<unmanaged>XAUDIO2FX_REVERB_DEFAULT_REAR_DELAY</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.DefaultPosition">
<summary>Constant DefaultPosition.</summary>
<unmanaged>XAUDIO2FX_REVERB_DEFAULT_POSITION</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.DefaultPositionMatrix">
<summary>Constant DefaultPositionMatrix.</summary>
<unmanaged>XAUDIO2FX_REVERB_DEFAULT_POSITION_MATRIX</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.DefaultEarlyDiffusion">
<summary>Constant DefaultEarlyDiffusion.</summary>
<unmanaged>XAUDIO2FX_REVERB_DEFAULT_EARLY_DIFFUSION</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.DefaultLateDiffusion">
<summary>Constant DefaultLateDiffusion.</summary>
<unmanaged>XAUDIO2FX_REVERB_DEFAULT_LATE_DIFFUSION</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.DefaultLowEqGain">
<summary>Constant DefaultLowEqGain.</summary>
<unmanaged>XAUDIO2FX_REVERB_DEFAULT_LOW_EQ_GAIN</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.DefaultLowEqCutoff">
<summary>Constant DefaultLowEqCutoff.</summary>
<unmanaged>XAUDIO2FX_REVERB_DEFAULT_LOW_EQ_CUTOFF</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.DefaultHighEqGain">
<summary>Constant DefaultHighEqGain.</summary>
<unmanaged>XAUDIO2FX_REVERB_DEFAULT_HIGH_EQ_GAIN</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.DefaultHighEqCutoff">
<summary>Constant DefaultHighEqCutoff.</summary>
<unmanaged>XAUDIO2FX_REVERB_DEFAULT_HIGH_EQ_CUTOFF</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.DefaultRoomFilterFreq">
<summary>Constant DefaultRoomFilterFreq.</summary>
<unmanaged>XAUDIO2FX_REVERB_DEFAULT_ROOM_FILTER_FREQ</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.DefaultRoomFilterMain">
<summary>Constant DefaultRoomFilterMain.</summary>
<unmanaged>XAUDIO2FX_REVERB_DEFAULT_ROOM_FILTER_MAIN</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.DefaultRoomFilterHf">
<summary>Constant DefaultRoomFilterHf.</summary>
<unmanaged>XAUDIO2FX_REVERB_DEFAULT_ROOM_FILTER_HF</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.DefaultReflectionsGain">
<summary>Constant DefaultReflectionsGain.</summary>
<unmanaged>XAUDIO2FX_REVERB_DEFAULT_REFLECTIONS_GAIN</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.DefaultReverbGain">
<summary>Constant DefaultReverbGain.</summary>
<unmanaged>XAUDIO2FX_REVERB_DEFAULT_REVERB_GAIN</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.DefaultDecayTime">
<summary>Constant DefaultDecayTime.</summary>
<unmanaged>XAUDIO2FX_REVERB_DEFAULT_DECAY_TIME</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.DefaultDensity">
<summary>Constant DefaultDensity.</summary>
<unmanaged>XAUDIO2FX_REVERB_DEFAULT_DENSITY</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.Fx.Reverb.DefaultRoomSize">
<summary>Constant DefaultRoomSize.</summary>
<unmanaged>XAUDIO2FX_REVERB_DEFAULT_ROOM_SIZE</unmanaged>
</member>
<member name="T:SharpDX.XAudio2.Fx.ReverbI3DL2Parameters">
<summary>
<p>Describes I3DL2 (Interactive 3D Audio Rendering Guidelines Level 2.0) parameters for use in the <strong>ReverbConvertI3DL2ToNative</strong> function.</p>
</summary>
<remarks>
<p>There are many preset values defined for the <strong><see cref="T:SharpDX.XAudio2.Fx.ReverbI3DL2Parameters" /></strong> structure. For more information, see <strong>XAUDIO2FX_I3DL2_PRESET</strong>. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_I3DL2_PARAMETERS']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_i3dl2_parameters</msdn-id>
<unmanaged>XAUDIO2FX_REVERB_I3DL2_PARAMETERS</unmanaged>
<unmanaged-short>XAUDIO2FX_REVERB_I3DL2_PARAMETERS</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.Fx.ReverbI3DL2Parameters.Presets">
<summary>
Standard I3DL2 reverb presets (100% wet).
</summary>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbI3DL2Parameters.WetDryMix">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_I3DL2_PARAMETERS::WetDryMix']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_i3dl2_parameters</msdn-id>
<unmanaged>float WetDryMix</unmanaged>
<unmanaged-short>float WetDryMix</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbI3DL2Parameters.Room">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_I3DL2_PARAMETERS::Room']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_i3dl2_parameters</msdn-id>
<unmanaged>int Room</unmanaged>
<unmanaged-short>int Room</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbI3DL2Parameters.RoomHF">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_I3DL2_PARAMETERS::RoomHF']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_i3dl2_parameters</msdn-id>
<unmanaged>int RoomHF</unmanaged>
<unmanaged-short>int RoomHF</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbI3DL2Parameters.RoomRolloffFactor">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_I3DL2_PARAMETERS::RoomRolloffFactor']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_i3dl2_parameters</msdn-id>
<unmanaged>float RoomRolloffFactor</unmanaged>
<unmanaged-short>float RoomRolloffFactor</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbI3DL2Parameters.DecayTime">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_I3DL2_PARAMETERS::DecayTime']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_i3dl2_parameters</msdn-id>
<unmanaged>float DecayTime</unmanaged>
<unmanaged-short>float DecayTime</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbI3DL2Parameters.DecayHFRatio">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_I3DL2_PARAMETERS::DecayHFRatio']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_i3dl2_parameters</msdn-id>
<unmanaged>float DecayHFRatio</unmanaged>
<unmanaged-short>float DecayHFRatio</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbI3DL2Parameters.Reflections">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_I3DL2_PARAMETERS::Reflections']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_i3dl2_parameters</msdn-id>
<unmanaged>int Reflections</unmanaged>
<unmanaged-short>int Reflections</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbI3DL2Parameters.ReflectionsDelay">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_I3DL2_PARAMETERS::ReflectionsDelay']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_i3dl2_parameters</msdn-id>
<unmanaged>float ReflectionsDelay</unmanaged>
<unmanaged-short>float ReflectionsDelay</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbI3DL2Parameters.Reverb">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_I3DL2_PARAMETERS::Reverb']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_i3dl2_parameters</msdn-id>
<unmanaged>int Reverb</unmanaged>
<unmanaged-short>int Reverb</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbI3DL2Parameters.ReverbDelay">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_I3DL2_PARAMETERS::ReverbDelay']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_i3dl2_parameters</msdn-id>
<unmanaged>float ReverbDelay</unmanaged>
<unmanaged-short>float ReverbDelay</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbI3DL2Parameters.Diffusion">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_I3DL2_PARAMETERS::Diffusion']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_i3dl2_parameters</msdn-id>
<unmanaged>float Diffusion</unmanaged>
<unmanaged-short>float Diffusion</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbI3DL2Parameters.Density">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_I3DL2_PARAMETERS::Density']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_i3dl2_parameters</msdn-id>
<unmanaged>float Density</unmanaged>
<unmanaged-short>float Density</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbI3DL2Parameters.HFReference">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_I3DL2_PARAMETERS::HFReference']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_i3dl2_parameters</msdn-id>
<unmanaged>float HFReference</unmanaged>
<unmanaged-short>float HFReference</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.Fx.ReverbParameters">
<summary>
<p>Describes parameters for use in the reverb APO.</p>
</summary>
<remarks>
<p>All parameters related to sampling rate or time are relative to a 48kHz voice and must be scaled for use with other sampling rates. For example, setting <em>ReflectionsDelay</em> to 300ms gives a true 300ms delay when the reverb is hosted in a 48kHz voice, but becomes a 150ms delay when hosted in a 24kHz voice. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>XAUDIO2FX_REVERB_PARAMETERS</unmanaged>
<unmanaged-short>XAUDIO2FX_REVERB_PARAMETERS</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.Fx.ReverbParameters.op_Explicit(SharpDX.XAudio2.Fx.ReverbI3DL2Parameters)~SharpDX.XAudio2.Fx.ReverbParameters">
<summary>
Defines an explicit conversion of a <see cref="T:SharpDX.XAudio2.Fx.ReverbI3DL2Parameters"/> to <see cref="T:SharpDX.XAudio2.Fx.ReverbParameters"/>.
</summary>
<param name="I3DL2Parameters">The value to convert.</param>
<returns>A <see cref="T:SharpDX.XAudio2.Fx.ReverbParameters"/> that represents the converted <see cref="T:SharpDX.XAudio2.Fx.ReverbI3DL2Parameters"/>.</returns>
<remarks>
The <see cref="T:SharpDX.XAudio2.Fx.ReverbI3DL2Parameters"/> is converted to <see cref="T:SharpDX.XAudio2.Fx.ReverbParameters"/>
using the same logic as the inline function "ReverbConvertI3DL2ToNative" from "XAudio2fx.h".
</remarks>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.WetDryMix">
<summary>
<dd> <p>Percentage of the output that will be reverb. Allowable values are from 0 to 100.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::WetDryMix']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>float WetDryMix</unmanaged>
<unmanaged-short>float WetDryMix</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.ReflectionsDelay">
<summary>
<dd> <p>The delay time of the first reflection relative to the direct path. Permitted range is from 0 to 300 milliseconds. </p> <strong>Note</strong>??All parameters related to sampling rate or time are relative to a 48kHz sampling rate and must be scaled for use with other sampling rates. See remarks section below for additional information. ? </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::ReflectionsDelay']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>unsigned int ReflectionsDelay</unmanaged>
<unmanaged-short>unsigned int ReflectionsDelay</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.ReverbDelay">
<summary>
<dd> <p>Delay of reverb relative to the first reflection. Permitted range is from 0 to 85 milliseconds.</p> <strong>Note</strong>??All parameters related to sampling rate or time are relative to a 48kHz sampling rate and must be scaled for use with other sampling rates. See remarks section below for additional information. ? </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::ReverbDelay']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>unsigned char ReverbDelay</unmanaged>
<unmanaged-short>unsigned char ReverbDelay</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.RearDelay">
<summary>
<dd> <p>Delay for the left rear output and right rear output. Permitted range is from 0 to 5 milliseconds.</p> <strong>Note</strong>??All parameters related to sampling rate or time are relative to a 48kHz sampling rate and must be scaled for use with other sampling rates. See remarks section below for additional information. ? </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::RearDelay']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>unsigned char RearDelay</unmanaged>
<unmanaged-short>unsigned char RearDelay</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.SideDelay">
<summary>
<dd> <p>Delay for the left side output and right side output. Permitted range is from 0 to 5 milliseconds.</p> <strong>Note</strong>??This value is supported beginning with Windows?10. ? <strong>Note</strong>??All parameters related to sampling rate or time are relative to a 48kHz sampling rate and must be scaled for use with other sampling rates. See remarks section below for additional information. ? </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::SideDelay']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>unsigned char SideDelay</unmanaged>
<unmanaged-short>unsigned char SideDelay</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.PositionLeft">
<summary>
<dd> <p>Position of the left input within the simulated space relative to the listener. With <em>PositionLeft</em> set to the minimum value, the left input is placed close to the listener. In this position, early reflections are dominant, and the reverb decay is set back in the sound field and reduced in amplitude. With <em>PositionLeft</em> set to the maximum value, the left input is placed at a maximum distance from the listener within the simulated room. <em>PositionLeft</em> does not affect the reverb decay time (liveness of the room), only the apparent position of the source relative to the listener. Permitted range is from 0 to 30 (no units).</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::PositionLeft']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>unsigned char PositionLeft</unmanaged>
<unmanaged-short>unsigned char PositionLeft</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.PositionRight">
<summary>
<dd> <p>Same as <em>PositionLeft</em>, but affecting only the right input. Permitted range is from 0 to 30 (no units). </p> <strong>Note</strong>??PositionRight is ignored in mono-in/mono-out mode. ? </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::PositionRight']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>unsigned char PositionRight</unmanaged>
<unmanaged-short>unsigned char PositionRight</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.PositionMatrixLeft">
<summary>
<dd> <p>Gives a greater or lesser impression of distance from the source to the listener. Permitted range is from 0 to 30 (no units).</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::PositionMatrixLeft']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>unsigned char PositionMatrixLeft</unmanaged>
<unmanaged-short>unsigned char PositionMatrixLeft</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.PositionMatrixRight">
<summary>
<dd> <p>Gives a greater or lesser impression of distance from the source to the listener. Permitted range is from 0 to 30 (no units). </p> <strong>Note</strong>??<em>PositionMatrixRight</em> is ignored in mono-in/mono-out mode. ? </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::PositionMatrixRight']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>unsigned char PositionMatrixRight</unmanaged>
<unmanaged-short>unsigned char PositionMatrixRight</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.EarlyDiffusion">
<summary>
<dd> <p>Controls the character of the individual wall reflections. Set to minimum value to simulate a hard flat surface and to maximum value to simulate a diffuse surface. Permitted range is from 0 to 15 (no units). </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::EarlyDiffusion']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>unsigned char EarlyDiffusion</unmanaged>
<unmanaged-short>unsigned char EarlyDiffusion</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.LateDiffusion">
<summary>
<dd> <p>Controls the character of the individual wall reverberations. Set to minimum value to simulate a hard flat surface and to maximum value to simulate a diffuse surface. Permitted range is from 0 to 15 (no units).
</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::LateDiffusion']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>unsigned char LateDiffusion</unmanaged>
<unmanaged-short>unsigned char LateDiffusion</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.LowEQGain">
<summary>
<dd> <p>Adjusts the decay time of low frequencies relative to the decay time at 1 kHz. The values correspond to dB of gain as follows: </p> <table> <tr><th>Value</th><td>0</td><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td><td>7</td><td>8</td><td>9</td><td>10</td><td>11</td><td>12</td></tr> <tr><th>Gain (dB)</th><td>-8</td><td>-7</td><td>-6</td><td>-5</td><td>-4</td><td>-3</td><td>-2</td><td>-1</td><td>0</td><td>+1</td><td>+2</td><td>+3</td><td>+4</td></tr> </table> <p>?</p> <strong>Note</strong>??A <em>LowEQGain</em> value of 8 results in the decay time of low frequencies being equal to the decay time at 1 kHz. ? <p> Permitted range is from 0 to 12 (no units). </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::LowEQGain']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>unsigned char LowEQGain</unmanaged>
<unmanaged-short>unsigned char LowEQGain</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.LowEQCutoff">
<summary>
<dd> <p>Sets the corner frequency of the low pass filter that is controlled by the <em>LowEQGain</em> parameter. The values correspond to frequency in Hz as follows: </p> <table> <tr><th>Value</th><td>0</td><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td><td>7</td><td>8</td><td>9</td></tr> <tr><th>Frequency (Hz)</th><td>50</td><td>100</td><td>150</td><td>200</td><td>250</td><td>300</td><td>350</td><td>400</td><td>450</td><td>500</td></tr> </table> <p>?</p> <p>Permitted range is from 0 to 9 (no units). </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::LowEQCutoff']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>unsigned char LowEQCutoff</unmanaged>
<unmanaged-short>unsigned char LowEQCutoff</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.HighEQGain">
<summary>
<dd> <p>Adjusts the decay time of high frequencies relative to the decay time at 1 kHz. When set to zero, high frequencies decay at the same rate as 1 kHz. When set to maximum value, high frequencies decay at a much faster rate than 1 kHz. </p> <table> <tr><th>Value</th><td>0</td><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td><td>7</td><td>8</td></tr> <tr><th>Gain (dB)</th><td>-8</td><td>-7</td><td>-6</td><td>-5</td><td>-4</td><td>-3</td><td>-2</td><td>-1</td><td>0</td></tr> </table> <p>?</p> <p>Permitted range is from 0 to 8 (no units). </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::HighEQGain']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>unsigned char HighEQGain</unmanaged>
<unmanaged-short>unsigned char HighEQGain</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.HighEQCutoff">
<summary>
<dd> <p>Sets the corner frequency of the high pass filter that is controlled by the <em>HighEQGain</em> parameter. The values correspond to frequency in kHz as follows: </p> <table> <tr><th>Value</th><td>0</td><td>1</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td><td>7</td><td>8</td><td>9</td><td>10</td><td>11</td><td>12</td><td>13</td><td>14</td></tr> <tr><th>Frequency (kHz)</th><td>1</td><td>1.5</td><td>2</td><td>2.5</td><td>3</td><td>3.5</td><td>4</td><td>4.5</td><td>5</td><td>5.5</td><td>6</td><td>6.5</td><td>7</td><td>7.5</td><td>8</td></tr> </table> <p>?</p> <p>Permitted range is from 0 to 14 (no units).</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::HighEQCutoff']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>unsigned char HighEQCutoff</unmanaged>
<unmanaged-short>unsigned char HighEQCutoff</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.RoomFilterFreq">
<summary>
<dd> <p>Sets the corner frequency of the low pass filter for the room effect. Permitted range is from 20 to 20,000 Hz.</p> <strong>Note</strong>??All parameters related to sampling rate or time are relative to a 48kHz sampling rate and must be scaled for use with other sampling rates. See remarks section below for additional information. ? </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::RoomFilterFreq']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>float RoomFilterFreq</unmanaged>
<unmanaged-short>float RoomFilterFreq</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.RoomFilterMain">
<summary>
<dd> <p>Sets the pass band intensity level of the low-pass filter for both the early reflections and the late field reverberation. Permitted range is from -100 to 0 dB.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::RoomFilterMain']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>float RoomFilterMain</unmanaged>
<unmanaged-short>float RoomFilterMain</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.RoomFilterHF">
<summary>
<dd> <p>Sets the intensity of the low-pass filter for both the early reflections and the late field reverberation at the corner frequency (<em>RoomFilterFreq</em>). Permitted range is from -100 to 0 dB.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::RoomFilterHF']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>float RoomFilterHF</unmanaged>
<unmanaged-short>float RoomFilterHF</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.ReflectionsGain">
<summary>
<dd> <p>Adjusts the intensity of the early reflections. Permitted range is from -100 to 20 dB.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::ReflectionsGain']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>float ReflectionsGain</unmanaged>
<unmanaged-short>float ReflectionsGain</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.ReverbGain">
<summary>
<dd> <p>Adjusts the intensity of the reverberations. Permitted range is from -100 to 20 dB.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::ReverbGain']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>float ReverbGain</unmanaged>
<unmanaged-short>float ReverbGain</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.DecayTime">
<summary>
<dd> <p>Reverberation decay time at 1 kHz. This is the time that a full scale input signal decays by 60 dB. Permitted range is from 0.1 to infinity seconds.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::DecayTime']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>float DecayTime</unmanaged>
<unmanaged-short>float DecayTime</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.Density">
<summary>
<dd> <p>Controls the modal density in the late field reverberation. For colorless spaces, <em>Density</em> should be set to the maximum value (100). As Density is decreased, the sound becomes hollow (comb filtered). This is an effect that can be useful if you are trying to model a silo. Permitted range as a percentage is from 0 to 100.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::Density']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>float Density</unmanaged>
<unmanaged-short>float Density</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.RoomSize">
<summary>
<dd> <p>The apparent size of the acoustic space. Permitted range is from 1 to 100 feet.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::RoomSize']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>float RoomSize</unmanaged>
<unmanaged-short>float RoomSize</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.ReverbParameters.DisableLateField">
<summary>
<dd> <p>If set to TRUE, disables late field reflection calculations. Disabling late field reflection calculations results in a significant CPU time savings.</p> <strong>Note</strong>??The DirectX SDK versions of XAUDIO2 don't support this member. ? </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_REVERB_PARAMETERS::DisableLateField']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_reverb_parameters</msdn-id>
<unmanaged>BOOL DisableLateField</unmanaged>
<unmanaged-short>BOOL DisableLateField</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.Fx.VolumeMeter">
<summary>
A VolumeMeter XAudio2 AudioProcessor.
</summary>
</member>
<member name="M:SharpDX.XAudio2.Fx.VolumeMeter.#ctor(SharpDX.XAudio2.XAudio2)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAudio2.Fx.VolumeMeter" /> class.
</summary>
<param name="device">The device.</param>
</member>
<member name="M:SharpDX.XAudio2.Fx.VolumeMeter.#ctor(SharpDX.XAudio2.XAudio2,System.Boolean)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAudio2.Fx.VolumeMeter" /> class.
</summary>
<param name="device">The device.</param>
<param name="isUsingDebug">if set to <c>true</c> [is using debug].</param>
<exception cref="T:System.InvalidOperationException">XAudio2 must be initialized before calling this constructor</exception>
</member>
<member name="T:SharpDX.XAudio2.Fx.XAudio2FxContants">
<summary>
XAudio2FxContants Functions.
</summary>
</member>
<member name="F:SharpDX.XAudio2.Fx.XAudio2FxContants.CLSID_AudioReverb">
<summary>Constant None.</summary>
</member>
<member name="F:SharpDX.XAudio2.Fx.XAudio2FxContants.CLSID_AudioReverb_Debug">
<summary>Constant None.</summary>
</member>
<member name="F:SharpDX.XAudio2.Fx.XAudio2FxContants.CLSID_AudioVolumeMeter">
<summary>Constant None.</summary>
</member>
<member name="F:SharpDX.XAudio2.Fx.XAudio2FxContants.CLSID_AudioVolumeMeter_Debug">
<summary>Constant None.</summary>
</member>
<member name="T:SharpDX.XAudio2.Fx.VolumeMeterLevels">
<summary>
<p>Describes parameters for use with the volume meter APO.</p>
</summary>
<remarks>
<p>This structure is used with the <strong>XAudio2 <see cref="M:SharpDX.XAudio2.Voice.GetEffectParameters(System.Int32,System.IntPtr,System.Int32)" /></strong> method. </p><p><em>pPeakLevels</em> and <em>pRMSLevels</em> are not returned by <strong><see cref="M:SharpDX.XAudio2.Voice.GetEffectParameters(System.Int32,System.IntPtr,System.Int32)" /></strong>, the arrays are only filled out if they are present. If <em>pPeakLevels</em> and <em>pRMSLevels</em> are used they must be allocated by the application. The application is responsible for freeing the arrays when they are no longer needed. </p><p><em>ChannelCount</em> must be set by the application to match the number of channels in the voice the effect is applied to.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_VOLUMEMETER_LEVELS']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_volumemeter_levels</msdn-id>
<unmanaged>XAUDIO2FX_VOLUMEMETER_LEVELS</unmanaged>
<unmanaged-short>XAUDIO2FX_VOLUMEMETER_LEVELS</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.VolumeMeterLevels.PeakLevelPointer">
<summary>
<dd> <p>Array that will be filled with the maximum absolute level for each channel during a processing pass. The array must be at least <em>ChannelCount</em> ? sizeof(float) bytes. <em>pPeakLevels</em> may be <c>null</c> if <em>pRMSLevels</em> is not <c>null</c>.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_VOLUMEMETER_LEVELS::pPeakLevels']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_volumemeter_levels</msdn-id>
<unmanaged>float* pPeakLevels</unmanaged>
<unmanaged-short>float pPeakLevels</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.VolumeMeterLevels.RmsLevelsPointer">
<summary>
<dd> <p>Array that will be filled with root mean square level for each channel during a processing pass. The array must be at least <em>ChannelCount</em> ? sizeof(float) bytes. <em>pRMSLevels</em> may be <c>null</c> if <em>pPeakLevels</em> is not <c>null</c>.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_VOLUMEMETER_LEVELS::pRMSLevels']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_volumemeter_levels</msdn-id>
<unmanaged>float* pRMSLevels</unmanaged>
<unmanaged-short>float pRMSLevels</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.Fx.VolumeMeterLevels.ChannelCount">
<summary>
<dd> <p>Number of channels being processed.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2FX_VOLUMEMETER_LEVELS::ChannelCount']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2fx_volumemeter_levels</msdn-id>
<unmanaged>unsigned int ChannelCount</unmanaged>
<unmanaged-short>unsigned int ChannelCount</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.BufferFlags">
<summary>
<p>Represents an audio data buffer, used with <strong><see cref="M:SharpDX.XAudio2.SourceVoice.SubmitSourceBuffer(SharpDX.XAudio2.AudioBuffer,System.IntPtr)" /></strong>.</p>
</summary>
<remarks>
<p>XAudio2 audio data is interleaved, data from each channel is adjacent for a particular sample number. For example if there was a 4 channel wave playing into an XAudio2 source voice, the audio data would be a sample of channel 0, a sample of channel 1, a sample of channel 2, a sample of channel 3, and then the next sample of channels 0, 1, 2, 3, etc. </p><p>The <strong>AudioBytes</strong> and <strong>pAudioData</strong> members of <strong><see cref="T:SharpDX.XAudio2.AudioBuffer" /></strong> correspond to the size in bytes and contents of the 'data' RIFF chunk of the file being played. The contents of the chunk may need to be byte swapped when loading the file on Xbox 360. </p><p>Memory allocated to hold a <strong><see cref="T:SharpDX.XAudio2.AudioBuffer" /></strong> or <strong><see cref="T:SharpDX.XAudio2.BufferWma" /></strong> structure can be freed as soon as the <strong><see cref="M:SharpDX.XAudio2.SourceVoice.SubmitSourceBuffer(SharpDX.XAudio2.AudioBuffer,System.IntPtr)" /></strong> call it is passed to returns. The data the structure points to (<strong>pAudioData</strong> and <strong>pDecodedPacketCumulativeBytes</strong>, respectively) can't be freed until the buffer completes (as signaled by the <strong><see cref="M:SharpDX.XAudio2.VoiceCallback.OnBufferEnd(System.IntPtr)" /></strong> callback) or the voice is stopped or destroyed. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_BUFFER_FLAGS']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_buffer</msdn-id>
<unmanaged>XAUDIO2_BUFFER_FLAGS</unmanaged>
<unmanaged-short>XAUDIO2_BUFFER_FLAGS</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.BufferFlags.EndOfStream">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_END_OF_STREAM']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_buffer</msdn-id>
<unmanaged>XAUDIO2_END_OF_STREAM</unmanaged>
<unmanaged-short>XAUDIO2_END_OF_STREAM</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.BufferFlags.None">
<summary>
None.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='']/*" />
<unmanaged>None</unmanaged>
<unmanaged-short>None</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.FilterType">
<summary>
<p>Indicates the filter type.</p>
</summary>
<remarks>
<strong>Note</strong>??Note that the DirectX SDK versions of XAUDIO2 do not support the <strong>LowPassOnePoleFilter</strong> or the <strong>HighPassOnePoleFilter</strong>.?
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_FILTER_TYPE']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_filter_type</msdn-id>
<unmanaged>XAUDIO2_FILTER_TYPE</unmanaged>
<unmanaged-short>XAUDIO2_FILTER_TYPE</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.FilterType.LowPassFilter">
<summary>
<dd> <p>Attenuates (reduces) frequencies above the cutoff frequency.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='LowPassFilter']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_filter_type</msdn-id>
<unmanaged>LowPassFilter</unmanaged>
<unmanaged-short>LowPassFilter</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.FilterType.BandPassFilter">
<summary>
<dd> <p>Attenuates frequencies outside a given range.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='BandPassFilter']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_filter_type</msdn-id>
<unmanaged>BandPassFilter</unmanaged>
<unmanaged-short>BandPassFilter</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.FilterType.HighPassFilter">
<summary>
<dd> <p>Attenuates frequencies below the cutoff frequency.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='HighPassFilter']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_filter_type</msdn-id>
<unmanaged>HighPassFilter</unmanaged>
<unmanaged-short>HighPassFilter</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.FilterType.NotchFilter">
<summary>
<dd> <p>Attenuates frequencies inside a given range.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='NotchFilter']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_filter_type</msdn-id>
<unmanaged>NotchFilter</unmanaged>
<unmanaged-short>NotchFilter</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.FilterType.LowPassOnePoleFilter">
<summary>
<dd> <p>Attenuates frequencies above the cutoff frequency. This is a one-pole filter, and <strong><see cref="T:SharpDX.XAudio2.FilterParameters" /></strong>.<strong>OneOverQ</strong> has no effect.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='LowPassOnePoleFilter']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_filter_type</msdn-id>
<unmanaged>LowPassOnePoleFilter</unmanaged>
<unmanaged-short>LowPassOnePoleFilter</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.FilterType.HighPassOnePoleFilter">
<summary>
<dd> <p>Attenuates frequencies below the cutoff frequency. This is a one-pole filter, and <strong><see cref="T:SharpDX.XAudio2.FilterParameters" /></strong>.<strong>OneOverQ</strong> has no effect.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='HighPassOnePoleFilter']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_filter_type</msdn-id>
<unmanaged>HighPassOnePoleFilter</unmanaged>
<unmanaged-short>HighPassOnePoleFilter</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.LogType">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_LOG_TYPE']/*" />
<unmanaged>XAUDIO2_LOG_TYPE</unmanaged>
<unmanaged-short>XAUDIO2_LOG_TYPE</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.LogType.Errors">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_LOG_ERRORS']/*" />
<unmanaged>XAUDIO2_LOG_ERRORS</unmanaged>
<unmanaged-short>XAUDIO2_LOG_ERRORS</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.LogType.Warnings">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_LOG_WARNINGS']/*" />
<unmanaged>XAUDIO2_LOG_WARNINGS</unmanaged>
<unmanaged-short>XAUDIO2_LOG_WARNINGS</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.LogType.Information">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_LOG_INFO']/*" />
<unmanaged>XAUDIO2_LOG_INFO</unmanaged>
<unmanaged-short>XAUDIO2_LOG_INFO</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.LogType.Detail">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_LOG_DETAIL']/*" />
<unmanaged>XAUDIO2_LOG_DETAIL</unmanaged>
<unmanaged-short>XAUDIO2_LOG_DETAIL</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.LogType.ApiCalls">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_LOG_API_CALLS']/*" />
<unmanaged>XAUDIO2_LOG_API_CALLS</unmanaged>
<unmanaged-short>XAUDIO2_LOG_API_CALLS</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.LogType.FunctionCalls">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_LOG_FUNC_CALLS']/*" />
<unmanaged>XAUDIO2_LOG_FUNC_CALLS</unmanaged>
<unmanaged-short>XAUDIO2_LOG_FUNC_CALLS</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.LogType.Timing">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_LOG_TIMING']/*" />
<unmanaged>XAUDIO2_LOG_TIMING</unmanaged>
<unmanaged-short>XAUDIO2_LOG_TIMING</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.LogType.Locks">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_LOG_LOCKS']/*" />
<unmanaged>XAUDIO2_LOG_LOCKS</unmanaged>
<unmanaged-short>XAUDIO2_LOG_LOCKS</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.LogType.Memory">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_LOG_MEMORY']/*" />
<unmanaged>XAUDIO2_LOG_MEMORY</unmanaged>
<unmanaged-short>XAUDIO2_LOG_MEMORY</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.LogType.Streaming">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_LOG_STREAMING']/*" />
<unmanaged>XAUDIO2_LOG_STREAMING</unmanaged>
<unmanaged-short>XAUDIO2_LOG_STREAMING</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.PlayFlags">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_PLAY_FLAGS']/*" />
<unmanaged>XAUDIO2_PLAY_FLAGS</unmanaged>
<unmanaged-short>XAUDIO2_PLAY_FLAGS</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.PlayFlags.Tails">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_PLAY_TAILS']/*" />
<unmanaged>XAUDIO2_PLAY_TAILS</unmanaged>
<unmanaged-short>XAUDIO2_PLAY_TAILS</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.PlayFlags.None">
<summary>
None.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='']/*" />
<unmanaged>None</unmanaged>
<unmanaged-short>None</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.ProcessorSpecifier">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_WINDOWS_PROCESSOR_SPECIFIER']/*" />
<unmanaged>XAUDIO2_WINDOWS_PROCESSOR_SPECIFIER</unmanaged>
<unmanaged-short>XAUDIO2_WINDOWS_PROCESSOR_SPECIFIER</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor1">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor1']/*" />
<unmanaged>Processor1</unmanaged>
<unmanaged-short>Processor1</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor2">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor2']/*" />
<unmanaged>Processor2</unmanaged>
<unmanaged-short>Processor2</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor3">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor3']/*" />
<unmanaged>Processor3</unmanaged>
<unmanaged-short>Processor3</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor4">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor4']/*" />
<unmanaged>Processor4</unmanaged>
<unmanaged-short>Processor4</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor5">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor5']/*" />
<unmanaged>Processor5</unmanaged>
<unmanaged-short>Processor5</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor6">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor6']/*" />
<unmanaged>Processor6</unmanaged>
<unmanaged-short>Processor6</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor7">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor7']/*" />
<unmanaged>Processor7</unmanaged>
<unmanaged-short>Processor7</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor8">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor8']/*" />
<unmanaged>Processor8</unmanaged>
<unmanaged-short>Processor8</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor9">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor9']/*" />
<unmanaged>Processor9</unmanaged>
<unmanaged-short>Processor9</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor10">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor10']/*" />
<unmanaged>Processor10</unmanaged>
<unmanaged-short>Processor10</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor11">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor11']/*" />
<unmanaged>Processor11</unmanaged>
<unmanaged-short>Processor11</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor12">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor12']/*" />
<unmanaged>Processor12</unmanaged>
<unmanaged-short>Processor12</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor13">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor13']/*" />
<unmanaged>Processor13</unmanaged>
<unmanaged-short>Processor13</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor14">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor14']/*" />
<unmanaged>Processor14</unmanaged>
<unmanaged-short>Processor14</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor15">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor15']/*" />
<unmanaged>Processor15</unmanaged>
<unmanaged-short>Processor15</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor16">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor16']/*" />
<unmanaged>Processor16</unmanaged>
<unmanaged-short>Processor16</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor17">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor17']/*" />
<unmanaged>Processor17</unmanaged>
<unmanaged-short>Processor17</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor18">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor18']/*" />
<unmanaged>Processor18</unmanaged>
<unmanaged-short>Processor18</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor19">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor19']/*" />
<unmanaged>Processor19</unmanaged>
<unmanaged-short>Processor19</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor20">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor20']/*" />
<unmanaged>Processor20</unmanaged>
<unmanaged-short>Processor20</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor21">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor21']/*" />
<unmanaged>Processor21</unmanaged>
<unmanaged-short>Processor21</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor22">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor22']/*" />
<unmanaged>Processor22</unmanaged>
<unmanaged-short>Processor22</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor23">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor23']/*" />
<unmanaged>Processor23</unmanaged>
<unmanaged-short>Processor23</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor24">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor24']/*" />
<unmanaged>Processor24</unmanaged>
<unmanaged-short>Processor24</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor25">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor25']/*" />
<unmanaged>Processor25</unmanaged>
<unmanaged-short>Processor25</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor26">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor26']/*" />
<unmanaged>Processor26</unmanaged>
<unmanaged-short>Processor26</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor27">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor27']/*" />
<unmanaged>Processor27</unmanaged>
<unmanaged-short>Processor27</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor28">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor28']/*" />
<unmanaged>Processor28</unmanaged>
<unmanaged-short>Processor28</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor29">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor29']/*" />
<unmanaged>Processor29</unmanaged>
<unmanaged-short>Processor29</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor30">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor30']/*" />
<unmanaged>Processor30</unmanaged>
<unmanaged-short>Processor30</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor31">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor31']/*" />
<unmanaged>Processor31</unmanaged>
<unmanaged-short>Processor31</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.Processor32">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='Processor32']/*" />
<unmanaged>Processor32</unmanaged>
<unmanaged-short>Processor32</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.AnyProcessor">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_ANY_PROCESSOR']/*" />
<unmanaged>XAUDIO2_ANY_PROCESSOR</unmanaged>
<unmanaged-short>XAUDIO2_ANY_PROCESSOR</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.ProcessorSpecifier.DefaultProcessor">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_DEFAULT_PROCESSOR']/*" />
<unmanaged>XAUDIO2_DEFAULT_PROCESSOR</unmanaged>
<unmanaged-short>XAUDIO2_DEFAULT_PROCESSOR</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.VoiceFlags">
<summary>
<p>Contains information about the creation flags, input channels, and sample rate of a voice.</p>
</summary>
<remarks>
<p>Note the DirectX SDK versions of XAUDIO2 do not support the <strong>ActiveFlags</strong> member.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_VOICE_FLAGS']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_voice_details</msdn-id>
<unmanaged>XAUDIO2_VOICE_FLAGS</unmanaged>
<unmanaged-short>XAUDIO2_VOICE_FLAGS</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.VoiceFlags.NoPitch">
<summary>
<dd> <p>Flags used to create the voice; see the individual voice interfaces for more information.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_VOICE_NOPITCH']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_voice_details</msdn-id>
<unmanaged>XAUDIO2_VOICE_NOPITCH</unmanaged>
<unmanaged-short>XAUDIO2_VOICE_NOPITCH</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.VoiceFlags.NoSampleRateConversion">
<summary>
<dd> <p>Flags that are currently set on the voice.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_VOICE_NOSRC']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_voice_details</msdn-id>
<unmanaged>XAUDIO2_VOICE_NOSRC</unmanaged>
<unmanaged-short>XAUDIO2_VOICE_NOSRC</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.VoiceFlags.UseFilter">
<summary>
<dd> <p>The number of input channels the voice expects.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_VOICE_USEFILTER']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_voice_details</msdn-id>
<unmanaged>XAUDIO2_VOICE_USEFILTER</unmanaged>
<unmanaged-short>XAUDIO2_VOICE_USEFILTER</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.VoiceFlags.Nosamplesplayed">
<summary>
<dd> <p>The input sample rate the voice expects.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_VOICE_NOSAMPLESPLAYED']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_voice_details</msdn-id>
<unmanaged>XAUDIO2_VOICE_NOSAMPLESPLAYED</unmanaged>
<unmanaged-short>XAUDIO2_VOICE_NOSAMPLESPLAYED</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.VoiceFlags.None">
<summary>
None.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='']/*" />
<unmanaged>None</unmanaged>
<unmanaged-short>None</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.VoiceSendFlags">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_VOICE_SEND_FLAGS']/*" />
<unmanaged>XAUDIO2_VOICE_SEND_FLAGS</unmanaged>
<unmanaged-short>XAUDIO2_VOICE_SEND_FLAGS</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.VoiceSendFlags.UseFilter">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_SEND_USEFILTER']/*" />
<unmanaged>XAUDIO2_SEND_USEFILTER</unmanaged>
<unmanaged-short>XAUDIO2_SEND_USEFILTER</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.VoiceSendFlags.None">
<summary>
None.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='']/*" />
<unmanaged>None</unmanaged>
<unmanaged-short>None</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.XAudio2Flags">
<summary>
<p>XAudio2 constants that specify default parameters, maximum values, and flags.</p><p> </p><p><strong>XAudio2 boundary values</strong></p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_FLAGS']/*" />
<msdn-id>ee419230</msdn-id>
<unmanaged>XAUDIO2_FLAGS</unmanaged>
<unmanaged-short>XAUDIO2_FLAGS</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.XAudio2Flags.DebugEngine">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_DEBUG_ENGINE']/*" />
<msdn-id>ee419230</msdn-id>
<unmanaged>XAUDIO2_DEBUG_ENGINE</unmanaged>
<unmanaged-short>XAUDIO2_DEBUG_ENGINE</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.XAudio2Flags.None">
<summary>
None.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='']/*" />
<unmanaged>None</unmanaged>
<unmanaged-short>None</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.ResultCode">
<summary>
Functions
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='SharpDX.XAudio2.ResultCode']/*" />
</member>
<member name="F:SharpDX.XAudio2.ResultCode.InvalidCall">
<summary>Constant InvalidCall.</summary>
<unmanaged>XAUDIO2_E_INVALID_CALL</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.ResultCode.XmaDecoderError">
<summary>Constant XmaDecoderError.</summary>
<unmanaged>XAUDIO2_E_XMA_DECODER_ERROR</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.ResultCode.XapoCreationFailed">
<summary>Constant XapoCreationFailed.</summary>
<unmanaged>XAUDIO2_E_XAPO_CREATION_FAILED</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.ResultCode.DeviceInvalidated">
<summary>Constant DeviceInvalidated.</summary>
<unmanaged>XAUDIO2_E_DEVICE_INVALIDATED</unmanaged>
</member>
<member name="T:SharpDX.XAudio2.XAudio2Functions">
<summary>
Functions
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='SharpDX.XAudio2.XAudio2Functions']/*" />
</member>
<member name="T:SharpDX.XAudio2.MasteringVoice">
<summary>
<p>A mastering voice is used to represent the audio output device.</p><p>Data buffers cannot be submitted directly to mastering voices, but data submitted to other types of voices must be directed to a mastering voice to be heard.
</p><p><strong><see cref="T:SharpDX.XAudio2.MasteringVoice" /></strong> inherits directly from <strong><see cref="T:SharpDX.XAudio2.Voice" /></strong>, but does not implement methods specific to mastering voices. The interface type exists solely because some of the base class methods are implemented differently for mastering voices. Having a separate type for these voices helps client code to distinguish the different voice types and to benefit from C++ type safety.</p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2MasteringVoice']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2masteringvoice.ixaudio2masteringvoice</msdn-id>
<unmanaged>IXAudio2MasteringVoice</unmanaged>
<unmanaged-short>IXAudio2MasteringVoice</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.MasteringVoice.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAudio2.MasteringVoice"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.XAudio2.MasteringVoice.op_Explicit(System.IntPtr)~SharpDX.XAudio2.MasteringVoice">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.XAudio2.MasteringVoice"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.XAudio2.MasteringVoice.GetChannelMask(System.Int32@)">
<summary>
<p>Returns the channel mask for this voice.</p>
</summary>
<param name="channelmaskRef"><dd> <p> Returns the channel mask for this voice. This corresponds to the <strong>dwChannelMask</strong> member of the <strong><see cref="T:SharpDX.Multimedia.WaveFormatExtensible" /></strong> structure. </p> </dd></param>
<returns><p>This method does not return a value.</p></returns>
<remarks>
<p>The <em>pChannelMask</em> argument is a bit-mask of the various channels in the speaker geometry reported by the audio system. This information is needed for the <strong>X3DAudioInitialize</strong> <em>SpeakerChannelMask</em> parameter. </p><p>The X3DAUDIO.H header declares a number of <strong>SPEAKER_</strong> positional defines to decode these channels masks. </p><p>Examples include: </p><pre><see cref="F:SharpDX.Multimedia.Speakers.Stereo" /> // <see cref="F:SharpDX.Multimedia.Speakers.FrontLeft" /> (0x1) | <see cref="F:SharpDX.Multimedia.Speakers.FrontRight" /> (0x2) <see cref="F:SharpDX.Multimedia.Speakers.FivePointOne" /> // <see cref="F:SharpDX.Multimedia.Speakers.FrontLeft" /> (0x1) | <see cref="F:SharpDX.Multimedia.Speakers.FrontRight" /> (0x2) // | <see cref="F:SharpDX.Multimedia.Speakers.FrontCenter" /> (0x4) // | <see cref="F:SharpDX.Multimedia.Speakers.LowFrequency" /> (0x8) // | <see cref="F:SharpDX.Multimedia.Speakers.BackLeft" /> (0x10) | <see cref="F:SharpDX.Multimedia.Speakers.BackRight" /> (0x20)</pre><strong>Note</strong>??For the DirectX SDK versions of XAUDIO, the channel mask for the output device was obtained via the <strong>IXAudio2::GetDeviceDetails</strong> method, which doesn't exist in Windows?8 and later.?
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2MasteringVoice::GetChannelMask']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2masteringvoice.ixaudio2masteringvoice.getchannelmask</msdn-id>
<unmanaged>HRESULT IXAudio2MasteringVoice::GetChannelMask([Out] unsigned int* pChannelmask)</unmanaged>
<unmanaged-short>IXAudio2MasteringVoice::GetChannelMask</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.MasteringVoice.#ctor(SharpDX.XAudio2.XAudio2,System.Int32,System.Int32)">
<summary>
Creates and configures a mastering voice.
</summary>
<param name="device">an instance of <see cref = "T:SharpDX.XAudio2.XAudio2" /></param>
<param name="inputChannels">[in] Number of channels the mastering voice expects in its input audio. InputChannels must be less than or equal to XAUDIO2_MAX_AUDIO_CHANNELS. InputChannels can be set to XAUDIO2_DEFAULT_CHANNELS, with the default being determined by the current platform. Windows Attempts to detect the system speaker configuration setup. Xbox 360 Defaults to 5.1 surround. </param>
<param name="inputSampleRate">[in] Sample rate of the input audio data of the mastering voice. This rate must be a multiple of XAUDIO2_QUANTUM_DENOMINATOR. InputSampleRate must be between XAUDIO2_MIN_SAMPLE_RATE and XAUDIO2_MAX_SAMPLE_RATE. InputSampleRate can be set to XAUDIO2_DEFAULT_SAMPLERATE, with the default being determined by the current platform. Windows Windows XP defaults to 44100. Windows Vista and Windows 7 default to the setting specified in the Sound Control Panel. The default for this setting is 44100 (or 48000 if required by the driver). Xbox 360 Defaults to 48000. </param>
<param name="deviceId">[in] Index of the output device that will be sent input by the mastering voice. Specifying the default value of 0 causes XAudio2 to select the global default audio device. </param>
<unmanaged>HRESULT IXAudio2::CreateMasteringVoice([Out] IXAudio2MasteringVoice** ppMasteringVoice,[None] UINT32 InputChannels,[None] UINT32 InputSampleRate,[None] UINT32 Flags,[None] UINT32 DeviceIndex,[In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.MasteringVoice.#ctor(SharpDX.XAudio2.XAudio2,System.Int32,System.Int32,System.String)">
<summary>
Creates and configures a mastering voice (Valid only for XAudio2.8)
</summary>
<param name="device">an instance of <see cref = "T:SharpDX.XAudio2.XAudio2" /></param>
<param name="inputChannels">[in] Number of channels the mastering voice expects in its input audio. InputChannels must be less than or equal to XAUDIO2_MAX_AUDIO_CHANNELS. InputChannels can be set to XAUDIO2_DEFAULT_CHANNELS, with the default being determined by the current platform. Windows Attempts to detect the system speaker configuration setup. Xbox 360 Defaults to 5.1 surround. </param>
<param name="inputSampleRate">[in] Sample rate of the input audio data of the mastering voice. This rate must be a multiple of XAUDIO2_QUANTUM_DENOMINATOR. InputSampleRate must be between XAUDIO2_MIN_SAMPLE_RATE and XAUDIO2_MAX_SAMPLE_RATE. InputSampleRate can be set to XAUDIO2_DEFAULT_SAMPLERATE, with the default being determined by the current platform. Windows Windows XP defaults to 44100. Windows Vista and Windows 7 default to the setting specified in the Sound Control Panel. The default for this setting is 44100 (or 48000 if required by the driver). Xbox 360 Defaults to 48000. </param>
<param name="deviceId">[in] Index of the output device that will be sent input by the mastering voice. Specifying the default value of 0 causes XAudio2 to select the global default audio device. </param>
<unmanaged>HRESULT IXAudio2::CreateMasteringVoice([Out] IXAudio2MasteringVoice** ppMasteringVoice,[None] UINT32 InputChannels,[None] UINT32 InputSampleRate,[None] UINT32 Flags,[None] UINT32 DeviceIndex,[In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.MasteringVoice.#ctor(SharpDX.XAudio2.XAudio2,System.Int32,System.Int32,System.Int32)">
<summary>
Creates and configures a mastering voice (Valid only for XAudio2.7)
</summary>
<param name="device">an instance of <see cref="T:SharpDX.XAudio2.XAudio2" /></param>
<param name="inputChannels">[in] Number of channels the mastering voice expects in its input audio. InputChannels must be less than or equal to XAUDIO2_MAX_AUDIO_CHANNELS. InputChannels can be set to XAUDIO2_DEFAULT_CHANNELS, with the default being determined by the current platform. Windows Attempts to detect the system speaker configuration setup. Xbox 360 Defaults to 5.1 surround.</param>
<param name="inputSampleRate">[in] Sample rate of the input audio data of the mastering voice. This rate must be a multiple of XAUDIO2_QUANTUM_DENOMINATOR. InputSampleRate must be between XAUDIO2_MIN_SAMPLE_RATE and XAUDIO2_MAX_SAMPLE_RATE. InputSampleRate can be set to XAUDIO2_DEFAULT_SAMPLERATE, with the default being determined by the current platform. Windows Windows XP defaults to 44100. Windows Vista and Windows 7 default to the setting specified in the Sound Control Panel. The default for this setting is 44100 (or 48000 if required by the driver). Xbox 360 Defaults to 48000.</param>
<param name="deviceIndex">Index of the device.</param>
<unmanaged>HRESULT IXAudio2::CreateMasteringVoice([Out] IXAudio2MasteringVoice** ppMasteringVoice,[None] UINT32 InputChannels,[None] UINT32 InputSampleRate,[None] UINT32 Flags,[None] UINT32 DeviceIndex,[In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain)</unmanaged>
</member>
<member name="P:SharpDX.XAudio2.MasteringVoice.ChannelMask">
<summary>
<p>Returns the channel mask for this voice. (Only valid for XAudio 2.8, returns 0 otherwise)</p>
</summary>
<remarks>
<p>The <em>pChannelMask</em> argument is a bit-mask of the various channels in the speaker geometry reported by the audio system. This information is needed for the <strong><see cref="!:SharpDX.X3DAudio.X3DAudio.X3DAudioInitialize" /></strong> <em>SpeakerChannelMask</em> parameter. </p><p>The X3DAUDIO.H header declares a number of <strong>SPEAKER_</strong> positional defines to decode these channels masks. </p><p>Examples include: </p><pre><see cref="F:SharpDX.Multimedia.Speakers.Stereo" /> // <see cref="F:SharpDX.Multimedia.Speakers.FrontLeft" /> (0x1) | <see cref="F:SharpDX.Multimedia.Speakers.FrontRight" /> (0x2) <see cref="F:SharpDX.Multimedia.Speakers.FivePointOne" /> // <see cref="F:SharpDX.Multimedia.Speakers.FrontLeft" /> (0x1) | <see cref="F:SharpDX.Multimedia.Speakers.FrontRight" /> (0x2) // | <see cref="F:SharpDX.Multimedia.Speakers.FrontCenter" /> (0x4) // | <see cref="F:SharpDX.Multimedia.Speakers.LowFrequency" /> (0x8) // | <see cref="F:SharpDX.Multimedia.Speakers.BackLeft" /> (0x10) | <see cref="F:SharpDX.Multimedia.Speakers.BackRight" /> (0x20)</pre><p><strong>Note</strong>??For the DirectX SDK versions of XAUDIO, the channel mask for the output device was obtained via the <strong>IXAudio2::GetDeviceDetails</strong> method, which doesn't exist in Windows?8 and later.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2MasteringVoice::GetChannelMask']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2masteringvoice.ixaudio2masteringvoice.getchannelmask</msdn-id>
<unmanaged>GetChannelMask</unmanaged>
<unmanaged-short>GetChannelMask</unmanaged-short>
<unmanaged>HRESULT IXAudio2MasteringVoice::GetChannelMask([Out] unsigned int* pChannelmask)</unmanaged>
</member>
<member name="T:SharpDX.XAudio2.SourceVoice">
<summary>
<p>Use a source voice to submit audio data to the XAudio2 processing pipeline.You must send voice data to a mastering voice to be heard, either directly or through intermediate submix voices.
</p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2SourceVoice']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2sourcevoice.ixaudio2sourcevoice</msdn-id>
<unmanaged>IXAudio2SourceVoice</unmanaged>
<unmanaged-short>IXAudio2SourceVoice</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAudio2.SourceVoice"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.op_Explicit(System.IntPtr)~SharpDX.XAudio2.SourceVoice">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.XAudio2.SourceVoice"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="P:SharpDX.XAudio2.SourceVoice.FrequencyRatio">
<summary>
<p>Returns the frequency adjustment ratio of the voice.</p>
</summary>
<remarks>
<p><strong>GetFrequencyRatio</strong> always returns the voice's actual current frequency ratio. However, this may not match the ratio set by the most recent <strong><see cref="M:SharpDX.XAudio2.SourceVoice.SetFrequencyRatio(System.Single,System.Int32)" /></strong> call: the actual ratio is only changed the next time the audio engine runs after the <strong><see cref="M:SharpDX.XAudio2.SourceVoice.SetFrequencyRatio(System.Single,System.Int32)" /></strong> call (or after the corresponding <strong><see cref="M:SharpDX.XAudio2.XAudio2.CommitChanges(System.Int32)" /></strong> call, if <strong><see cref="M:SharpDX.XAudio2.SourceVoice.SetFrequencyRatio(System.Single,System.Int32)" /></strong> was called with a deferred operation ID). </p><p>For information on frequency ratios, see <strong><see cref="M:SharpDX.XAudio2.SourceVoice.SetFrequencyRatio(System.Single,System.Int32)" /></strong>.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2SourceVoice::GetFrequencyRatio']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2sourcevoice.ixaudio2sourcevoice.getfrequencyratio</msdn-id>
<unmanaged>GetFrequencyRatio</unmanaged>
<unmanaged-short>GetFrequencyRatio</unmanaged-short>
<unmanaged>void IXAudio2SourceVoice::GetFrequencyRatio([Out] float* pRatio)</unmanaged>
</member>
<member name="P:SharpDX.XAudio2.SourceVoice.SourceSampleRate">
<summary>
<p>Reconfigures the voice to consume source data at a different sample rate than the rate specified when the voice was created.</p>
</summary>
<remarks>
<p>The <strong>SetSourceSampleRate</strong> method supports reuse of XAudio2 voices by allowing a voice to play sounds with a variety of sample rates. To use <strong>SetSourceSampleRate</strong> the voice must have been created without the <see cref="F:SharpDX.XAudio2.VoiceFlags.NoPitch" /> or <see cref="F:SharpDX.XAudio2.VoiceFlags.NoSampleRateConversion" /> flags and must not have any buffers currently queued. </p><p>The typical use of <strong>SetSourceSampleRate</strong> is to support voice pooling. For example to support voice pooling an application would precreate all the voices it expects to use. Whenever a new sound will be played the application chooses an inactive voice or ,if all voices are busy, picks the least important voice and calls <strong>SetSourceSampleRate</strong> on the voice with the new sound's sample rate. After <strong>SetSourceSampleRate</strong> has been called on the voice, the application can immediately start submitting and playing buffers with the new sample rate. This allows the application to avoid the overhead of creating and destroying voices frequently during gameplay.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2SourceVoice::SetSourceSampleRate']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2sourcevoice.ixaudio2sourcevoice.setsourcesamplerate</msdn-id>
<unmanaged>SetSourceSampleRate</unmanaged>
<unmanaged-short>SetSourceSampleRate</unmanaged-short>
<unmanaged>HRESULT IXAudio2SourceVoice::SetSourceSampleRate([In] unsigned int NewSourceSampleRate)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.Start(System.Int32,System.Int32)">
<summary>
<p>Starts consumption and processing of audio by the voice. Delivers the result to any connected submix or mastering voices, or to the output device.</p>
</summary>
<param name="flags"><dd> <p>Flags that control how the voice is started. Must be 0.</p> </dd></param>
<param name="operationSet"><dd> <p> Identifies this call as part of a deferred batch. See the XAudio2 Operation Sets overview for more information.</p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful, an error code otherwise. See <strong>XAudio2 Error Codes</strong> for descriptions of XAudio2 specific error codes.</p></returns>
<remarks>
<p>If the XAudio2 engine is stopped, the voice stops running. However, it remains in the started state, so that it starts running again as soon as the engine starts. </p><p>When first created, source voices are in the stopped state. Submix and mastering voices are in the started state. </p><p>After <strong>Start</strong> is called it has no further effect if called again before <strong><see cref="M:SharpDX.XAudio2.SourceVoice.Stop(SharpDX.XAudio2.PlayFlags,System.Int32)" /></strong> is called. In addition multiple calls to <strong>Start</strong> without matching calls to <strong><see cref="M:SharpDX.XAudio2.SourceVoice.Stop(SharpDX.XAudio2.PlayFlags,System.Int32)" /></strong> will result in warning messages in debug builds.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2SourceVoice::Start']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2sourcevoice.ixaudio2sourcevoice.start</msdn-id>
<unmanaged>HRESULT IXAudio2SourceVoice::Start([In] unsigned int Flags,[In] unsigned int OperationSet)</unmanaged>
<unmanaged-short>IXAudio2SourceVoice::Start</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.Stop(SharpDX.XAudio2.PlayFlags,System.Int32)">
<summary>
<p>Stops consumption of audio by the current voice.</p>
</summary>
<param name="flags"><dd> <p> Flags that control how the voice is stopped. Can be 0 or the following: </p> <table> <tr><th>Value</th><th>Description</th></tr> <tr><td><see cref="F:SharpDX.XAudio2.PlayFlags.Tails" /></td><td>Continue emitting effect output after the voice is stopped.?</td></tr> </table> <p>?</p> </dd></param>
<param name="operationSet"><dd> <p>Identifies this call as part of a deferred batch. See the XAudio2 Operation Sets overview for more information.</p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful, an error code otherwise. See <strong>XAudio2 Error Codes</strong> for descriptions of XAudio2 specific error codes.</p></returns>
<remarks>
<p>All source buffers that are queued on the voice and the current cursor position are preserved. This allows the voice to continue from where it left off, when it is restarted. The <strong><see cref="M:SharpDX.XAudio2.SourceVoice.FlushSourceBuffers" /></strong> method can be used to flush queued source buffers. </p><p>By default, any pending output from voice effects?for example, reverb tails?is not played. Instead, the voice is immediately rendered silent. The <see cref="F:SharpDX.XAudio2.PlayFlags.Tails" /> flag can be used to continue emitting effect output after the voice stops running. </p><p>A voice stopped with the <see cref="F:SharpDX.XAudio2.PlayFlags.Tails" /> flag stops consuming source buffers, but continues to process its effects and send audio to its destination voices. A voice in this state can later be stopped completely by calling <strong>Stop</strong> again with the Flags argument set to 0. This enables stopping a voice with <see cref="F:SharpDX.XAudio2.PlayFlags.Tails" />, waiting sufficient time for any audio being produced by its effects to finish, and then fully stopping the voice by calling <strong>Stop</strong> again without <see cref="F:SharpDX.XAudio2.PlayFlags.Tails" />. This technique allows voices with effects to be stopped gracefully while ensuring idle voices will not continue to be processed after they have finished producing audio. </p><p><strong>Stop</strong> is always asynchronous, even if called within a callback. </p><strong>Note</strong>??XAudio2 never calls any voice callbacks for a voice if the voice is stopped (even if it was stopped with <see cref="F:SharpDX.XAudio2.PlayFlags.Tails" />).?
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2SourceVoice::Stop']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2sourcevoice.ixaudio2sourcevoice.stop</msdn-id>
<unmanaged>HRESULT IXAudio2SourceVoice::Stop([In] XAUDIO2_PLAY_FLAGS Flags,[In] unsigned int OperationSet)</unmanaged>
<unmanaged-short>IXAudio2SourceVoice::Stop</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.SubmitSourceBuffer(SharpDX.XAudio2.AudioBuffer,System.IntPtr)">
<summary>
<p>Adds a new audio buffer to the voice queue.</p>
</summary>
<param name="bufferRef"><dd> <p> Pointer to an <strong><see cref="T:SharpDX.XAudio2.AudioBuffer" /></strong> structure to queue. </p> </dd></param>
<param name="bufferWMARef"><dd> <p>Pointer to an additional <strong><see cref="T:SharpDX.XAudio2.BufferWma" /></strong> structure used when submitting WMA data. </p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful, an error code otherwise. See <strong>XAudio2 Error Codes</strong> for descriptions of XAudio2 specific error codes.</p></returns>
<remarks>
<p>The voice processes and plays back the buffers in its queue in the order that they were submitted. </p><p>The <strong><see cref="T:SharpDX.XAudio2.AudioBuffer" /></strong> structure includes details about the audio buffer's location and size, the part of the buffer that should actually be played, the loop region (if any) and loop count, the context reference to be used in any callbacks relating to this buffer, and an optional <see cref="F:SharpDX.XAudio2.BufferFlags.EndOfStream" /> flag that indicates that it is the last buffer of a contiguous sound. </p><p>If the voice is started and has no buffers queued, the new buffer will start playing immediately. If the voice is stopped, the buffer is added to the voice's queue and will be played when the voice starts. </p><p>If only part of the given buffer should be played, the <strong>PlayBegin</strong> and <strong>PlayLength</strong> fields in the <strong><see cref="T:SharpDX.XAudio2.AudioBuffer" /></strong> can be used to specify the region to be played. A <strong>PlayLength</strong> value of 0 means to play the entire buffer (and in this case <strong>PlayBegin</strong> must be 0 as well). </p><p>If all or part of the buffer should be played in a continuous loop, the <strong>LoopBegin</strong>, <strong>LoopLength</strong> and <strong>LoopCount</strong> fields in <strong><see cref="T:SharpDX.XAudio2.AudioBuffer" /></strong> can be used to specify the characteristics of the loop region. A <strong>LoopBegin</strong> value of <see cref="F:SharpDX.XAudio2.XAudio2.NoLoopRegion" /> means that no looping should be performed, and in this case <strong>LoopLength</strong> and <strong>LoopCount</strong> must be given as 0. If a loop region is specified, it must be non-empty (<strong>LoopLength</strong> &gt; 0), and the loop count must be between 1 and <see cref="F:SharpDX.XAudio2.XAudio2.MaximumLoopCount" /> inclusive (or <see cref="F:SharpDX.XAudio2.AudioBuffer.LoopInfinite" /> to specify an endless loop which will only end when <strong><see cref="M:SharpDX.XAudio2.SourceVoice.ExitLoop(System.Int32)" /></strong> is called). A loop count of <em>N</em> means to skip backwards N times, i.e. to play the loop region <em>N</em>+1 times. </p><p>If an explicit play region is specified, it must begin and end within the given audio buffer (or, in the compressed case, within the set of samples that the buffer will decode to). In addition, the loop region cannot end past the end of the play region. </p><table> <tr><th>Xbox 360</th></tr> <tr><td>For certain audio formats, there may be additional restrictions on the valid endpoints of any play or loop regions; e.g. for XMA buffers, the regions can only begin or end at 128-sample boundaries in the decoded audio.
</td></tr> </table><p>?</p><p>The <em>pBuffer</em> reference can be reused or freed immediately after calling this method, but the actual audio data referenced by <em>pBuffer</em> must remain valid until the buffer has been fully consumed by XAudio2 (which is indicated by the <strong><see cref="M:SharpDX.XAudio2.VoiceCallback.OnBufferEnd(System.IntPtr)" /></strong> callback). </p><p>Up to <see cref="F:SharpDX.XAudio2.XAudio2.MaximumQueuedBuffers" /> buffers can be queued on a voice at any one time. </p><p><strong>SubmitSourceBuffer</strong> takes effect immediately when called from an XAudio2 callback with an OperationSet of <see cref="F:SharpDX.XAudio2.XAudio2.CommitNow" />.
</p><table> <tr><th>Xbox 360</th></tr> <tr><td>This method can be called from an Xbox system thread (most other XAudio2 methods cannot). However, a maximum of two source buffers can be submitted from a system thread at a time.</td></tr> </table><p>?</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2SourceVoice::SubmitSourceBuffer']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2sourcevoice.ixaudio2sourcevoice.submitsourcebuffer</msdn-id>
<unmanaged>HRESULT IXAudio2SourceVoice::SubmitSourceBuffer([In] const XAUDIO2_BUFFER* pBuffer,[In] const void* pBufferWMA)</unmanaged>
<unmanaged-short>IXAudio2SourceVoice::SubmitSourceBuffer</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.FlushSourceBuffers">
<summary>
<p>Removes all pending audio buffers from the voice queue.</p>
</summary>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful, an error code otherwise.</p></returns>
<remarks>
<p>If the voice is started, the buffer that is currently playing is not removed from the queue. </p><p><strong>FlushSourceBuffers</strong> can be called regardless of whether the voice is currently started or stopped. </p><p>For every buffer removed, an <strong>OnBufferEnd</strong> callback will be made, but none of the other per-buffer callbacks (<strong>OnBufferStart</strong>, <strong>OnStreamEnd</strong> or <strong>OnLoopEnd</strong>) will be made. </p><p><strong>FlushSourceBuffers</strong> does not change a the voice's running state, so if the voice was playing a buffer prior to the call, it will continue to do so, and will deliver all the callbacks for the buffer normally. This means that the <strong>OnBufferEnd</strong> callback for this buffer will take place after the <strong>OnBufferEnd</strong> callbacks for the buffers that were removed. Thus, an XAudio2 client that calls <strong>FlushSourceBuffers</strong> cannot expect to receive <strong>OnBufferEnd</strong> callbacks in the order in which the buffers were submitted. </p><p>No warnings for starvation of the buffer queue will be emitted when the currently playing buffer completes; it is assumed that the client has intentionally removed the buffers that followed it. However, there may be an audio pop if this buffer does not end at a zero crossing. If the application must ensure that the flush operation takes place while a specific buffer is playing?perhaps because the buffer ends with a zero crossing?it must call <strong>FlushSourceBuffers</strong> from a callback, so that it executes synchronously. </p><p>Calling <strong>FlushSourceBuffers</strong> after a voice is stopped and then submitting new data to the voice resets all of the voice's internal counters. </p><p>A voice's state is not considered reset after calling <strong>FlushSourceBuffers</strong> until the <strong>OnBufferEnd</strong> callback occurs (if a buffer was previously submitted) or <strong><see cref="M:SharpDX.XAudio2.SourceVoice.GetState(System.Int32)" /></strong> returns with <strong><see cref="T:SharpDX.XAudio2.VoiceState" /></strong>. <strong>BuffersQueued</strong> == 0. For example, if you stop a voice and call <strong>FlushSourceBuffers</strong>, it's still not legal to immediately call <strong><see cref="M:SharpDX.XAudio2.SourceVoice.SetSourceSampleRate(System.Int32)" /></strong> (which requires the voice to not have any buffers currently queued), until either of the previously mentioned conditions are met. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2SourceVoice::FlushSourceBuffers']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2sourcevoice.ixaudio2sourcevoice.flushsourcebuffers</msdn-id>
<unmanaged>HRESULT IXAudio2SourceVoice::FlushSourceBuffers()</unmanaged>
<unmanaged-short>IXAudio2SourceVoice::FlushSourceBuffers</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.Discontinuity">
<summary>
<p>Notifies an XAudio2 voice that no more buffers are coming after the last one that is currently in its queue.</p>
</summary>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful, an error code otherwise.</p></returns>
<remarks>
<p><strong>Discontinuity</strong> suppresses the warnings that normally occur in the debug build of XAudio2 when a voice runs out of audio buffers to play. It is preferable to mark the final buffer of a stream by tagging it with the <see cref="F:SharpDX.XAudio2.BufferFlags.EndOfStream" /> flag, but in some cases the client may not know that a buffer is the end of a stream until after the buffer has been submitted. </p><p>Because calling <strong>Discontinuity</strong> is equivalent to applying the <see cref="F:SharpDX.XAudio2.BufferFlags.EndOfStream" /> flag retroactively to the last buffer submitted, an <strong>OnStreamEnd</strong> callback will be made when this buffer completes.
</p><strong>Note</strong>??XAudio2 may consume its entire buffer queue and emit a warning before the <strong>Discontinuity</strong> call takes effect, so <strong>Discontinuity</strong> is not guaranteed to suppress the warnings.?
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2SourceVoice::Discontinuity']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2sourcevoice.ixaudio2sourcevoice.discontinuity</msdn-id>
<unmanaged>HRESULT IXAudio2SourceVoice::Discontinuity()</unmanaged>
<unmanaged-short>IXAudio2SourceVoice::Discontinuity</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.ExitLoop(System.Int32)">
<summary>
<p>Stops looping the voice when it reaches the end of the current loop region. </p>
</summary>
<param name="operationSet"><dd> <p> Identifies this call as part of a deferred batch. See the XAudio2 Operation Sets overview for more information.</p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful, an error code otherwise. See <strong>XAudio2 Error Codes</strong> for descriptions of XAudio2 specific error codes.</p></returns>
<remarks>
<p>If the cursor for the voice is not in a loop region, <strong>ExitLoop</strong> does nothing. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2SourceVoice::ExitLoop']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2sourcevoice.ixaudio2sourcevoice.exitloop</msdn-id>
<unmanaged>HRESULT IXAudio2SourceVoice::ExitLoop([In] unsigned int OperationSet)</unmanaged>
<unmanaged-short>IXAudio2SourceVoice::ExitLoop</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.GetState(System.Int32)">
<summary>
<p>Returns the voice's current state and cursor position data.</p>
</summary>
<param name="flags"><dd> <p>Number of audio buffers currently queued on the voice, including the one that is processed currently.</p> </dd></param>
<remarks>
<p>For all encoded formats, including constant bit rate (CBR) formats such as adaptive differential pulse code modulation (ADPCM), <strong>SamplesPlayed</strong> is expressed in terms of decoded samples. For pulse code modulation (PCM) formats, <strong>SamplesPlayed</strong> is expressed in terms of either input or output samples. There is a one-to-one mapping from input to output for PCM formats. </p><p>If a client needs to get the correlated positions of several voices?that is, to know exactly which sample of a particular voice is playing when a specified sample of another voice is playing?it must make the <strong><see cref="M:SharpDX.XAudio2.SourceVoice.GetState(System.Int32)" /></strong> calls in an XAudio2 engine callback. Doing this ensures that none of the voices advance while the calls are made.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2SourceVoice::GetState']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_voice_state</msdn-id>
<unmanaged>void IXAudio2SourceVoice::GetState([Out] XAUDIO2_VOICE_STATE* pVoiceState,[In] unsigned int Flags)</unmanaged>
<unmanaged-short>IXAudio2SourceVoice::GetState</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.SetFrequencyRatio(System.Single,System.Int32)">
<summary>
<p>Sets the frequency adjustment ratio of the voice.</p>
</summary>
<param name="ratio"><dd> <p>Frequency adjustment ratio. This value must be between <see cref="F:SharpDX.XAudio2.XAudio2.MinimumFrequencyRatio" /> and the <em>MaxFrequencyRatio</em> parameter specified when the voice was created (see <strong><see cref="M:SharpDX.XAudio2.XAudio2.CreateSourceVoice_(SharpDX.XAudio2.SourceVoice,System.IntPtr,SharpDX.XAudio2.VoiceFlags,System.Single,System.IntPtr,System.Nullable{SharpDX.XAudio2.VoiceSendDescriptors},System.Nullable{SharpDX.XAudio2.EffectChain})" /></strong>). <see cref="F:SharpDX.XAudio2.XAudio2.MinimumFrequencyRatio" /> currently is 0.0005, which allows pitch to be lowered by up to 11 octaves.</p> </dd></param>
<param name="operationSet"><dd> <p>Identifies this call as part of a deferred batch. See the XAudio2 Operation Sets overview for more information. </p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful, an error code otherwise. See <strong>XAudio2 Error Codes</strong> for descriptions of error codes. </p></returns>
<remarks>
<p>Frequency adjustment is expressed as <em>source frequency</em> / <em>target frequency</em>. Changing the frequency ratio changes the rate audio is played on the voice. A ratio greater than 1.0 will cause the audio to play faster and a ratio less than 1.0 will cause the audio to play slower. Additionally, the frequency ratio affects the pitch of audio on the voice. As an example, a value of 1.0 has no effect on the audio, whereas a value of 2.0 raises pitch by one octave and 0.5 lowers it by one octave. </p><p>If <strong>SetFrequencyRatio</strong> is called specifying a Ratio value outside the valid range, the method will set the frequency ratio to the nearest valid value. A warning also will be generated for debug builds. </p><strong>Note</strong>??<strong><see cref="M:SharpDX.XAudio2.SourceVoice.GetFrequencyRatio(System.Single@)" /></strong> always returns the voice's actual current frequency ratio. However, this may not match the ratio set by the most recent <strong><see cref="M:SharpDX.XAudio2.SourceVoice.SetFrequencyRatio(System.Single,System.Int32)" /></strong> call: the actual ratio is only changed the next time the audio engine runs after the <strong><see cref="M:SharpDX.XAudio2.SourceVoice.SetFrequencyRatio(System.Single,System.Int32)" /></strong> call (or after the corresponding <strong><see cref="M:SharpDX.XAudio2.XAudio2.CommitChanges(System.Int32)" /></strong> call, if <strong><see cref="M:SharpDX.XAudio2.SourceVoice.SetFrequencyRatio(System.Single,System.Int32)" /></strong> was called with a deferred operation ID).?
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2SourceVoice::SetFrequencyRatio']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2sourcevoice.ixaudio2sourcevoice.setfrequencyratio</msdn-id>
<unmanaged>HRESULT IXAudio2SourceVoice::SetFrequencyRatio([In] float Ratio,[In] unsigned int OperationSet)</unmanaged>
<unmanaged-short>IXAudio2SourceVoice::SetFrequencyRatio</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.GetFrequencyRatio(System.Single@)">
<summary>
<p>Returns the frequency adjustment ratio of the voice.</p>
</summary>
<param name="ratioRef"><dd> <p>Returns the current frequency adjustment ratio if successful.</p> </dd></param>
<remarks>
<p><strong>GetFrequencyRatio</strong> always returns the voice's actual current frequency ratio. However, this may not match the ratio set by the most recent <strong><see cref="M:SharpDX.XAudio2.SourceVoice.SetFrequencyRatio(System.Single,System.Int32)" /></strong> call: the actual ratio is only changed the next time the audio engine runs after the <strong><see cref="M:SharpDX.XAudio2.SourceVoice.SetFrequencyRatio(System.Single,System.Int32)" /></strong> call (or after the corresponding <strong><see cref="M:SharpDX.XAudio2.XAudio2.CommitChanges(System.Int32)" /></strong> call, if <strong><see cref="M:SharpDX.XAudio2.SourceVoice.SetFrequencyRatio(System.Single,System.Int32)" /></strong> was called with a deferred operation ID). </p><p>For information on frequency ratios, see <strong><see cref="M:SharpDX.XAudio2.SourceVoice.SetFrequencyRatio(System.Single,System.Int32)" /></strong>.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2SourceVoice::GetFrequencyRatio']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2sourcevoice.ixaudio2sourcevoice.getfrequencyratio</msdn-id>
<unmanaged>void IXAudio2SourceVoice::GetFrequencyRatio([Out] float* pRatio)</unmanaged>
<unmanaged-short>IXAudio2SourceVoice::GetFrequencyRatio</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.SetSourceSampleRate(System.Int32)">
<summary>
<p>Reconfigures the voice to consume source data at a different sample rate than the rate specified when the voice was created.</p>
</summary>
<param name="newSourceSampleRate"><dd> <p>The new sample rate the voice should process submitted data at. Valid sample rates are 1kHz to 200kHz. </p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful, an error code otherwise. See <strong>XAudio2 Error Codes</strong> for descriptions of error codes. </p></returns>
<remarks>
<p>The <strong>SetSourceSampleRate</strong> method supports reuse of XAudio2 voices by allowing a voice to play sounds with a variety of sample rates. To use <strong>SetSourceSampleRate</strong> the voice must have been created without the <see cref="F:SharpDX.XAudio2.VoiceFlags.NoPitch" /> or <see cref="F:SharpDX.XAudio2.VoiceFlags.NoSampleRateConversion" /> flags and must not have any buffers currently queued. </p><p>The typical use of <strong>SetSourceSampleRate</strong> is to support voice pooling. For example to support voice pooling an application would precreate all the voices it expects to use. Whenever a new sound will be played the application chooses an inactive voice or ,if all voices are busy, picks the least important voice and calls <strong>SetSourceSampleRate</strong> on the voice with the new sound's sample rate. After <strong>SetSourceSampleRate</strong> has been called on the voice, the application can immediately start submitting and playing buffers with the new sample rate. This allows the application to avoid the overhead of creating and destroying voices frequently during gameplay.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2SourceVoice::SetSourceSampleRate']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2sourcevoice.ixaudio2sourcevoice.setsourcesamplerate</msdn-id>
<unmanaged>HRESULT IXAudio2SourceVoice::SetSourceSampleRate([In] unsigned int NewSourceSampleRate)</unmanaged>
<unmanaged-short>IXAudio2SourceVoice::SetSourceSampleRate</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.#ctor(SharpDX.XAudio2.XAudio2,SharpDX.Multimedia.WaveFormat)">
<summary>
Creates and configures a source voice.
</summary>
<param name="device">an instance of <see cref = "T:SharpDX.XAudio2.XAudio2" /></param>
<param name="sourceFormat">[in] Pointer to a <see cref="T:SharpDX.Multimedia.WaveFormat"/> structure. This structure contains the expected format for all audio buffers submitted to the source voice. XAudio2 supports voice types of PCM, xWMA, ADPCM (Windows only), and XMA (Xbox 360 only). XAudio2 supports the following PCM formats. 8-bit (unsigned) integer PCM 16-bit integer PCM (Optimal format for XAudio2) 20-bit integer PCM (either in 24 or 32 bit containers) 24-bit integer PCM (either in 24 or 32 bit containers) 32-bit integer PCM 32-bit float PCM (Preferred format after 16-bit integer) The number of channels in a source voice must be less than or equal to XAUDIO2_MAX_AUDIO_CHANNELS. The sample rate of a source voice must be between XAUDIO2_MIN_SAMPLE_RATE and XAUDIO2_MAX_SAMPLE_RATE. Note Data formats such as XMA, {{ADPCM}}, and {{xWMA}} that require more information than provided by <see cref="T:SharpDX.Multimedia.WaveFormat"/> have a <see cref="T:SharpDX.Multimedia.WaveFormat"/> structure as the first member in their format structure. When creating a source voice with one of those formats cast the format's structure as a <see cref="T:SharpDX.Multimedia.WaveFormat"/> structure and use it as the value for pSourceFormat. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2::CreateSourceVoice([Out] IXAudio2SourceVoice** ppSourceVoice,[In] const WAVEFORMATEX* pSourceFormat,[None] UINT32 Flags,[None] float MaxFrequencyRatio,[In, Optional] IXAudio2VoiceCallback* pCallback,[In, Optional] const XAUDIO2_VOICE_SENDS* pSendList,[In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.#ctor(SharpDX.XAudio2.XAudio2,SharpDX.Multimedia.WaveFormat,System.Boolean)">
<summary>
Creates and configures a source voice.
</summary>
<param name="device">an instance of <see cref = "T:SharpDX.XAudio2.XAudio2" /></param>
<param name="sourceFormat">[in] Pointer to a <see cref="T:SharpDX.Multimedia.WaveFormat"/> structure. This structure contains the expected format for all audio buffers submitted to the source voice. XAudio2 supports voice types of PCM, xWMA, ADPCM (Windows only), and XMA (Xbox 360 only). XAudio2 supports the following PCM formats. 8-bit (unsigned) integer PCM 16-bit integer PCM (Optimal format for XAudio2) 20-bit integer PCM (either in 24 or 32 bit containers) 24-bit integer PCM (either in 24 or 32 bit containers) 32-bit integer PCM 32-bit float PCM (Preferred format after 16-bit integer) The number of channels in a source voice must be less than or equal to XAUDIO2_MAX_AUDIO_CHANNELS. The sample rate of a source voice must be between XAUDIO2_MIN_SAMPLE_RATE and XAUDIO2_MAX_SAMPLE_RATE. Note Data formats such as XMA, {{ADPCM}}, and {{xWMA}} that require more information than provided by <see cref="T:SharpDX.Multimedia.WaveFormat"/> have a <see cref="T:SharpDX.Multimedia.WaveFormat"/> structure as the first member in their format structure. When creating a source voice with one of those formats cast the format's structure as a <see cref="T:SharpDX.Multimedia.WaveFormat"/> structure and use it as the value for pSourceFormat. </param>
<param name="enableCallbackEvents">True to enable delegate callbacks on this instance. Default is false</param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2::CreateSourceVoice([Out] IXAudio2SourceVoice** ppSourceVoice,[In] const WAVEFORMATEX* pSourceFormat,[None] UINT32 Flags,[None] float MaxFrequencyRatio,[In, Optional] IXAudio2VoiceCallback* pCallback,[In, Optional] const XAUDIO2_VOICE_SENDS* pSendList,[In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.#ctor(SharpDX.XAudio2.XAudio2,SharpDX.Multimedia.WaveFormat,SharpDX.XAudio2.VoiceFlags)">
<summary>
Creates and configures a source voice.
</summary>
<param name="device">an instance of <see cref = "T:SharpDX.XAudio2.XAudio2" /></param>
<param name="sourceFormat">[in] Pointer to a <see cref="T:SharpDX.Multimedia.WaveFormat"/> structure. This structure contains the expected format for all audio buffers submitted to the source voice. XAudio2 supports voice types of PCM, xWMA, ADPCM (Windows only), and XMA (Xbox 360 only). XAudio2 supports the following PCM formats. 8-bit (unsigned) integer PCM 16-bit integer PCM (Optimal format for XAudio2) 20-bit integer PCM (either in 24 or 32 bit containers) 24-bit integer PCM (either in 24 or 32 bit containers) 32-bit integer PCM 32-bit float PCM (Preferred format after 16-bit integer) The number of channels in a source voice must be less than or equal to XAUDIO2_MAX_AUDIO_CHANNELS. The sample rate of a source voice must be between XAUDIO2_MIN_SAMPLE_RATE and XAUDIO2_MAX_SAMPLE_RATE. Note Data formats such as XMA, {{ADPCM}}, and {{xWMA}} that require more information than provided by <see cref="T:SharpDX.Multimedia.WaveFormat"/> have a <see cref="T:SharpDX.Multimedia.WaveFormat"/> structure as the first member in their format structure. When creating a source voice with one of those formats cast the format's structure as a <see cref="T:SharpDX.Multimedia.WaveFormat"/> structure and use it as the value for pSourceFormat. </param>
<param name="flags">[in] Flags that specify the behavior of the source voice. A flag can be 0 or a combination of one or more of the following: ValueDescriptionXAUDIO2_VOICE_NOPITCHNo pitch control is available on the voice.?XAUDIO2_VOICE_NOSRCNo sample rate conversion is available on the voice, the voice's outputs must have the same sample rate.Note The XAUDIO2_VOICE_NOSRC flag causes the voice to behave as though the XAUDIO2_VOICE_NOPITCH flag also is specified. ?XAUDIO2_VOICE_USEFILTERThe filter effect should be available on this voice.?XAUDIO2_VOICE_MUSICThe voice is used to play background music. The system automatically can replace the voice with music selected by the user.? </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2::CreateSourceVoice([Out] IXAudio2SourceVoice** ppSourceVoice,[In] const WAVEFORMATEX* pSourceFormat,[None] UINT32 Flags,[None] float MaxFrequencyRatio,[In, Optional] IXAudio2VoiceCallback* pCallback,[In, Optional] const XAUDIO2_VOICE_SENDS* pSendList,[In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.#ctor(SharpDX.XAudio2.XAudio2,SharpDX.Multimedia.WaveFormat,SharpDX.XAudio2.VoiceFlags,System.Boolean)">
<summary>
Creates and configures a source voice.
</summary>
<param name="device">an instance of <see cref = "T:SharpDX.XAudio2.XAudio2" /></param>
<param name="sourceFormat">[in] Pointer to a <see cref="T:SharpDX.Multimedia.WaveFormat"/> structure. This structure contains the expected format for all audio buffers submitted to the source voice. XAudio2 supports voice types of PCM, xWMA, ADPCM (Windows only), and XMA (Xbox 360 only). XAudio2 supports the following PCM formats. 8-bit (unsigned) integer PCM 16-bit integer PCM (Optimal format for XAudio2) 20-bit integer PCM (either in 24 or 32 bit containers) 24-bit integer PCM (either in 24 or 32 bit containers) 32-bit integer PCM 32-bit float PCM (Preferred format after 16-bit integer) The number of channels in a source voice must be less than or equal to XAUDIO2_MAX_AUDIO_CHANNELS. The sample rate of a source voice must be between XAUDIO2_MIN_SAMPLE_RATE and XAUDIO2_MAX_SAMPLE_RATE. Note Data formats such as XMA, {{ADPCM}}, and {{xWMA}} that require more information than provided by <see cref="T:SharpDX.Multimedia.WaveFormat"/> have a <see cref="T:SharpDX.Multimedia.WaveFormat"/> structure as the first member in their format structure. When creating a source voice with one of those formats cast the format's structure as a <see cref="T:SharpDX.Multimedia.WaveFormat"/> structure and use it as the value for pSourceFormat. </param>
<param name="flags">[in] Flags that specify the behavior of the source voice. A flag can be 0 or a combination of one or more of the following: ValueDescriptionXAUDIO2_VOICE_NOPITCHNo pitch control is available on the voice.?XAUDIO2_VOICE_NOSRCNo sample rate conversion is available on the voice, the voice's outputs must have the same sample rate.Note The XAUDIO2_VOICE_NOSRC flag causes the voice to behave as though the XAUDIO2_VOICE_NOPITCH flag also is specified. ?XAUDIO2_VOICE_USEFILTERThe filter effect should be available on this voice.?XAUDIO2_VOICE_MUSICThe voice is used to play background music. The system automatically can replace the voice with music selected by the user.? </param>
<param name="enableCallbackEvents">True to enable delegate callbacks on this instance. Default is false</param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2::CreateSourceVoice([Out] IXAudio2SourceVoice** ppSourceVoice,[In] const WAVEFORMATEX* pSourceFormat,[None] UINT32 Flags,[None] float MaxFrequencyRatio,[In, Optional] IXAudio2VoiceCallback* pCallback,[In, Optional] const XAUDIO2_VOICE_SENDS* pSendList,[In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.#ctor(SharpDX.XAudio2.XAudio2,SharpDX.Multimedia.WaveFormat,SharpDX.XAudio2.VoiceFlags,System.Single)">
<summary>
Creates and configures a source voice.
</summary>
<param name="device">an instance of <see cref = "T:SharpDX.XAudio2.XAudio2" /></param>
<param name="sourceFormat">[in] Pointer to a <see cref="T:SharpDX.Multimedia.WaveFormat"/> structure. This structure contains the expected format for all audio buffers submitted to the source voice. XAudio2 supports voice types of PCM, xWMA, ADPCM (Windows only), and XMA (Xbox 360 only). XAudio2 supports the following PCM formats. 8-bit (unsigned) integer PCM 16-bit integer PCM (Optimal format for XAudio2) 20-bit integer PCM (either in 24 or 32 bit containers) 24-bit integer PCM (either in 24 or 32 bit containers) 32-bit integer PCM 32-bit float PCM (Preferred format after 16-bit integer) The number of channels in a source voice must be less than or equal to XAUDIO2_MAX_AUDIO_CHANNELS. The sample rate of a source voice must be between XAUDIO2_MIN_SAMPLE_RATE and XAUDIO2_MAX_SAMPLE_RATE. Note Data formats such as XMA, {{ADPCM}}, and {{xWMA}} that require more information than provided by <see cref="T:SharpDX.Multimedia.WaveFormat"/> have a <see cref="T:SharpDX.Multimedia.WaveFormat"/> structure as the first member in their format structure. When creating a source voice with one of those formats cast the format's structure as a <see cref="T:SharpDX.Multimedia.WaveFormat"/> structure and use it as the value for pSourceFormat. </param>
<param name="flags">[in] Flags that specify the behavior of the source voice. A flag can be 0 or a combination of one or more of the following: ValueDescriptionXAUDIO2_VOICE_NOPITCHNo pitch control is available on the voice.?XAUDIO2_VOICE_NOSRCNo sample rate conversion is available on the voice, the voice's outputs must have the same sample rate.Note The XAUDIO2_VOICE_NOSRC flag causes the voice to behave as though the XAUDIO2_VOICE_NOPITCH flag also is specified. ?XAUDIO2_VOICE_USEFILTERThe filter effect should be available on this voice.?XAUDIO2_VOICE_MUSICThe voice is used to play background music. The system automatically can replace the voice with music selected by the user.? </param>
<param name="maxFrequencyRatio">[in] Highest allowable frequency ratio that can be set on this voice. The value for this argument must be between XAUDIO2_MIN_FREQ_RATIO and XAUDIO2_MAX_FREQ_RATIO. Subsequent calls to <see cref="M:SharpDX.XAudio2.SourceVoice.SetFrequencyRatio(System.Single,System.Int32)"/> are clamped between XAUDIO2_MIN_FREQ_RATIO and MaxFrequencyRatio. The maximum value for this argument is defined as XAUDIO2_MAX_FREQ_RATIO, which allows pitch to be raised by up to 10 octaves. If MaxFrequencyRatio is less than 1.0, the voice will use that ratio immediately after being created (rather than the default of 1.0). Xbox 360 For XMA voices there is an additional restriction on the MaxFrequencyRatio argument and the voice's sample rate. The product of these two numbers cannot exceed XAUDIO2_MAX_RATIO_TIMES_RATE_XMA_MONO for one-channel voices or XAUDIO2_MAX_RATIO_TIMES_RATE_XMA_MULTICHANNEL for voices with any other number of channels. If the value specified for MaxFrequencyRatio is too high for the specified format, the call to CreateSourceVoice fails and produces a debug message. Note XAudio2's memory usage can be reduced by using the lowest possible MaxFrequencyRatio value. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2::CreateSourceVoice([Out] IXAudio2SourceVoice** ppSourceVoice,[In] const WAVEFORMATEX* pSourceFormat,[None] UINT32 Flags,[None] float MaxFrequencyRatio,[In, Optional] IXAudio2VoiceCallback* pCallback,[In, Optional] const XAUDIO2_VOICE_SENDS* pSendList,[In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.#ctor(SharpDX.XAudio2.XAudio2,SharpDX.Multimedia.WaveFormat,SharpDX.XAudio2.VoiceFlags,System.Single,SharpDX.XAudio2.VoiceCallback)">
<summary>
Creates and configures a source voice.
</summary>
<param name="device">an instance of <see cref = "T:SharpDX.XAudio2.XAudio2" /></param>
<param name="sourceFormat">[in] Pointer to a <see cref="T:SharpDX.Multimedia.WaveFormat"/> structure. This structure contains the expected format for all audio buffers submitted to the source voice. XAudio2 supports voice types of PCM, xWMA, ADPCM (Windows only), and XMA (Xbox 360 only). XAudio2 supports the following PCM formats. 8-bit (unsigned) integer PCM 16-bit integer PCM (Optimal format for XAudio2) 20-bit integer PCM (either in 24 or 32 bit containers) 24-bit integer PCM (either in 24 or 32 bit containers) 32-bit integer PCM 32-bit float PCM (Preferred format after 16-bit integer) The number of channels in a source voice must be less than or equal to XAUDIO2_MAX_AUDIO_CHANNELS. The sample rate of a source voice must be between XAUDIO2_MIN_SAMPLE_RATE and XAUDIO2_MAX_SAMPLE_RATE. Note Data formats such as XMA, {{ADPCM}}, and {{xWMA}} that require more information than provided by <see cref="T:SharpDX.Multimedia.WaveFormat"/> have a <see cref="T:SharpDX.Multimedia.WaveFormat"/> structure as the first member in their format structure. When creating a source voice with one of those formats cast the format's structure as a <see cref="T:SharpDX.Multimedia.WaveFormat"/> structure and use it as the value for pSourceFormat. </param>
<param name="flags">[in] Flags that specify the behavior of the source voice. A flag can be 0 or a combination of one or more of the following: ValueDescriptionXAUDIO2_VOICE_NOPITCHNo pitch control is available on the voice.?XAUDIO2_VOICE_NOSRCNo sample rate conversion is available on the voice, the voice's outputs must have the same sample rate.Note The XAUDIO2_VOICE_NOSRC flag causes the voice to behave as though the XAUDIO2_VOICE_NOPITCH flag also is specified. ?XAUDIO2_VOICE_USEFILTERThe filter effect should be available on this voice.?XAUDIO2_VOICE_MUSICThe voice is used to play background music. The system automatically can replace the voice with music selected by the user.? </param>
<param name="maxFrequencyRatio">[in] Highest allowable frequency ratio that can be set on this voice. The value for this argument must be between XAUDIO2_MIN_FREQ_RATIO and XAUDIO2_MAX_FREQ_RATIO. Subsequent calls to <see cref="M:SharpDX.XAudio2.SourceVoice.SetFrequencyRatio(System.Single,System.Int32)"/> are clamped between XAUDIO2_MIN_FREQ_RATIO and MaxFrequencyRatio. The maximum value for this argument is defined as XAUDIO2_MAX_FREQ_RATIO, which allows pitch to be raised by up to 10 octaves. If MaxFrequencyRatio is less than 1.0, the voice will use that ratio immediately after being created (rather than the default of 1.0). Xbox 360 For XMA voices there is an additional restriction on the MaxFrequencyRatio argument and the voice's sample rate. The product of these two numbers cannot exceed XAUDIO2_MAX_RATIO_TIMES_RATE_XMA_MONO for one-channel voices or XAUDIO2_MAX_RATIO_TIMES_RATE_XMA_MULTICHANNEL for voices with any other number of channels. If the value specified for MaxFrequencyRatio is too high for the specified format, the call to CreateSourceVoice fails and produces a debug message. Note XAudio2's memory usage can be reduced by using the lowest possible MaxFrequencyRatio value. </param>
<param name="callback">[in, optional] Pointer to a client-provided callback interface, <see cref="T:SharpDX.XAudio2.VoiceCallback"/>. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2::CreateSourceVoice([Out] IXAudio2SourceVoice** ppSourceVoice,[In] const WAVEFORMATEX* pSourceFormat,[None] UINT32 Flags,[None] float MaxFrequencyRatio,[In, Optional] IXAudio2VoiceCallback* pCallback,[In, Optional] const XAUDIO2_VOICE_SENDS* pSendList,[In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.#ctor(SharpDX.XAudio2.XAudio2,SharpDX.Multimedia.WaveFormat,SharpDX.XAudio2.VoiceFlags,System.Single,System.Boolean)">
<summary>
Creates and configures a source voice with callback through delegates.
</summary>
<param name="device">an instance of <see cref="T:SharpDX.XAudio2.XAudio2" /></param>
<param name="sourceFormat">[in] Pointer to a <see cref="T:SharpDX.Multimedia.WaveFormat" /> structure. This structure contains the expected format for all audio buffers submitted to the source voice. XAudio2 supports voice types of PCM, xWMA, ADPCM (Windows only), and XMA (Xbox 360 only). XAudio2 supports the following PCM formats. 8-bit (unsigned) integer PCM 16-bit integer PCM (Optimal format for XAudio2) 20-bit integer PCM (either in 24 or 32 bit containers) 24-bit integer PCM (either in 24 or 32 bit containers) 32-bit integer PCM 32-bit float PCM (Preferred format after 16-bit integer) The number of channels in a source voice must be less than or equal to XAUDIO2_MAX_AUDIO_CHANNELS. The sample rate of a source voice must be between XAUDIO2_MIN_SAMPLE_RATE and XAUDIO2_MAX_SAMPLE_RATE. Note Data formats such as XMA, {{ADPCM}}, and {{xWMA}} that require more information than provided by <see cref="T:SharpDX.Multimedia.WaveFormat" /> have a <see cref="T:SharpDX.Multimedia.WaveFormat" /> structure as the first member in their format structure. When creating a source voice with one of those formats cast the format's structure as a <see cref="T:SharpDX.Multimedia.WaveFormat" /> structure and use it as the value for pSourceFormat.</param>
<param name="flags">[in] Flags that specify the behavior of the source voice. A flag can be 0 or a combination of one or more of the following: ValueDescriptionXAUDIO2_VOICE_NOPITCHNo pitch control is available on the voice.?XAUDIO2_VOICE_NOSRCNo sample rate conversion is available on the voice, the voice's outputs must have the same sample rate.Note The XAUDIO2_VOICE_NOSRC flag causes the voice to behave as though the XAUDIO2_VOICE_NOPITCH flag also is specified. ?XAUDIO2_VOICE_USEFILTERThe filter effect should be available on this voice.?XAUDIO2_VOICE_MUSICThe voice is used to play background music. The system automatically can replace the voice with music selected by the user.?</param>
<param name="maxFrequencyRatio">[in] Highest allowable frequency ratio that can be set on this voice. The value for this argument must be between XAUDIO2_MIN_FREQ_RATIO and XAUDIO2_MAX_FREQ_RATIO. Subsequent calls to <see cref="M:SharpDX.XAudio2.SourceVoice.SetFrequencyRatio(System.Single,System.Int32)" /> are clamped between XAUDIO2_MIN_FREQ_RATIO and MaxFrequencyRatio. The maximum value for this argument is defined as XAUDIO2_MAX_FREQ_RATIO, which allows pitch to be raised by up to 10 octaves. If MaxFrequencyRatio is less than 1.0, the voice will use that ratio immediately after being created (rather than the default of 1.0). Xbox 360 For XMA voices there is an additional restriction on the MaxFrequencyRatio argument and the voice's sample rate. The product of these two numbers cannot exceed XAUDIO2_MAX_RATIO_TIMES_RATE_XMA_MONO for one-channel voices or XAUDIO2_MAX_RATIO_TIMES_RATE_XMA_MULTICHANNEL for voices with any other number of channels. If the value specified for MaxFrequencyRatio is too high for the specified format, the call to CreateSourceVoice fails and produces a debug message. Note XAudio2's memory usage can be reduced by using the lowest possible MaxFrequencyRatio value.</param>
<param name="enableCallbackEvents">if set to <c>true</c> [enable callback events].</param>
<returns>No enableCallbackEvents.</returns>
<unmanaged>HRESULT IXAudio2::CreateSourceVoice([Out] IXAudio2SourceVoice** ppSourceVoice,[In] const WAVEFORMATEX* pSourceFormat,[None] UINT32 Flags,[None] float MaxFrequencyRatio,[In, Optional] IXAudio2VoiceCallback* pCallback,[In, Optional] const XAUDIO2_VOICE_SENDS* pSendList,[In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.#ctor(SharpDX.XAudio2.XAudio2,SharpDX.Multimedia.WaveFormat,SharpDX.XAudio2.VoiceFlags,System.Single,SharpDX.XAudio2.VoiceCallback,SharpDX.XAudio2.EffectDescriptor[])">
<summary>
Creates and configures a source voice.
</summary>
<param name="device">an instance of <see cref = "T:SharpDX.XAudio2.XAudio2" /></param>
<param name="sourceFormat">[in] Pointer to a <see cref="T:SharpDX.Multimedia.WaveFormat"/> structure. This structure contains the expected format for all audio buffers submitted to the source voice. XAudio2 supports voice types of PCM, xWMA, ADPCM (Windows only), and XMA (Xbox 360 only). XAudio2 supports the following PCM formats. 8-bit (unsigned) integer PCM 16-bit integer PCM (Optimal format for XAudio2) 20-bit integer PCM (either in 24 or 32 bit containers) 24-bit integer PCM (either in 24 or 32 bit containers) 32-bit integer PCM 32-bit float PCM (Preferred format after 16-bit integer) The number of channels in a source voice must be less than or equal to XAUDIO2_MAX_AUDIO_CHANNELS. The sample rate of a source voice must be between XAUDIO2_MIN_SAMPLE_RATE and XAUDIO2_MAX_SAMPLE_RATE. Note Data formats such as XMA, {{ADPCM}}, and {{xWMA}} that require more information than provided by <see cref="T:SharpDX.Multimedia.WaveFormat"/> have a <see cref="T:SharpDX.Multimedia.WaveFormat"/> structure as the first member in their format structure. When creating a source voice with one of those formats cast the format's structure as a <see cref="T:SharpDX.Multimedia.WaveFormat"/> structure and use it as the value for pSourceFormat. </param>
<param name="flags">[in] Flags that specify the behavior of the source voice. A flag can be 0 or a combination of one or more of the following: ValueDescriptionXAUDIO2_VOICE_NOPITCHNo pitch control is available on the voice.?XAUDIO2_VOICE_NOSRCNo sample rate conversion is available on the voice, the voice's outputs must have the same sample rate.Note The XAUDIO2_VOICE_NOSRC flag causes the voice to behave as though the XAUDIO2_VOICE_NOPITCH flag also is specified. ?XAUDIO2_VOICE_USEFILTERThe filter effect should be available on this voice.?XAUDIO2_VOICE_MUSICThe voice is used to play background music. The system automatically can replace the voice with music selected by the user.? </param>
<param name="maxFrequencyRatio">[in] Highest allowable frequency ratio that can be set on this voice. The value for this argument must be between XAUDIO2_MIN_FREQ_RATIO and XAUDIO2_MAX_FREQ_RATIO. Subsequent calls to <see cref="M:SharpDX.XAudio2.SourceVoice.SetFrequencyRatio(System.Single,System.Int32)"/> are clamped between XAUDIO2_MIN_FREQ_RATIO and MaxFrequencyRatio. The maximum value for this argument is defined as XAUDIO2_MAX_FREQ_RATIO, which allows pitch to be raised by up to 10 octaves. If MaxFrequencyRatio is less than 1.0, the voice will use that ratio immediately after being created (rather than the default of 1.0). Xbox 360 For XMA voices there is an additional restriction on the MaxFrequencyRatio argument and the voice's sample rate. The product of these two numbers cannot exceed XAUDIO2_MAX_RATIO_TIMES_RATE_XMA_MONO for one-channel voices or XAUDIO2_MAX_RATIO_TIMES_RATE_XMA_MULTICHANNEL for voices with any other number of channels. If the value specified for MaxFrequencyRatio is too high for the specified format, the call to CreateSourceVoice fails and produces a debug message. Note XAudio2's memory usage can be reduced by using the lowest possible MaxFrequencyRatio value. </param>
<param name="callback">[in, optional] Pointer to a client-provided callback interface, <see cref="T:SharpDX.XAudio2.VoiceCallback"/>. </param>
<param name="effectDescriptors">[in, optional] Pointer to a list of XAUDIO2_EFFECT_CHAIN structures that describe an effect chain to use in the source voice.</param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2::CreateSourceVoice([Out] IXAudio2SourceVoice** ppSourceVoice,[In] const WAVEFORMATEX* pSourceFormat,[None] UINT32 Flags,[None] float MaxFrequencyRatio,[In, Optional] IXAudio2VoiceCallback* pCallback,[In, Optional] const XAUDIO2_VOICE_SENDS* pSendList,[In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.#ctor(SharpDX.XAudio2.XAudio2,SharpDX.Multimedia.WaveFormat,SharpDX.XAudio2.VoiceFlags,System.Single,System.Boolean,SharpDX.XAudio2.EffectDescriptor[])">
<summary>
Creates and configures a source voice with callback through delegates.
</summary>
<param name="device">an instance of <see cref="T:SharpDX.XAudio2.XAudio2" /></param>
<param name="sourceFormat">[in] Pointer to a <see cref="T:SharpDX.Multimedia.WaveFormat" /> structure. This structure contains the expected format for all audio buffers submitted to the source voice. XAudio2 supports voice types of PCM, xWMA, ADPCM (Windows only), and XMA (Xbox 360 only). XAudio2 supports the following PCM formats. 8-bit (unsigned) integer PCM 16-bit integer PCM (Optimal format for XAudio2) 20-bit integer PCM (either in 24 or 32 bit containers) 24-bit integer PCM (either in 24 or 32 bit containers) 32-bit integer PCM 32-bit float PCM (Preferred format after 16-bit integer) The number of channels in a source voice must be less than or equal to XAUDIO2_MAX_AUDIO_CHANNELS. The sample rate of a source voice must be between XAUDIO2_MIN_SAMPLE_RATE and XAUDIO2_MAX_SAMPLE_RATE. Note Data formats such as XMA, {{ADPCM}}, and {{xWMA}} that require more information than provided by <see cref="T:SharpDX.Multimedia.WaveFormat" /> have a <see cref="T:SharpDX.Multimedia.WaveFormat" /> structure as the first member in their format structure. When creating a source voice with one of those formats cast the format's structure as a <see cref="T:SharpDX.Multimedia.WaveFormat" /> structure and use it as the value for pSourceFormat.</param>
<param name="flags">[in] Flags that specify the behavior of the source voice. A flag can be 0 or a combination of one or more of the following: ValueDescriptionXAUDIO2_VOICE_NOPITCHNo pitch control is available on the voice.?XAUDIO2_VOICE_NOSRCNo sample rate conversion is available on the voice, the voice's outputs must have the same sample rate.Note The XAUDIO2_VOICE_NOSRC flag causes the voice to behave as though the XAUDIO2_VOICE_NOPITCH flag also is specified. ?XAUDIO2_VOICE_USEFILTERThe filter effect should be available on this voice.?XAUDIO2_VOICE_MUSICThe voice is used to play background music. The system automatically can replace the voice with music selected by the user.?</param>
<param name="maxFrequencyRatio">[in] Highest allowable frequency ratio that can be set on this voice. The value for this argument must be between XAUDIO2_MIN_FREQ_RATIO and XAUDIO2_MAX_FREQ_RATIO. Subsequent calls to <see cref="M:SharpDX.XAudio2.SourceVoice.SetFrequencyRatio(System.Single,System.Int32)" /> are clamped between XAUDIO2_MIN_FREQ_RATIO and MaxFrequencyRatio. The maximum value for this argument is defined as XAUDIO2_MAX_FREQ_RATIO, which allows pitch to be raised by up to 10 octaves. If MaxFrequencyRatio is less than 1.0, the voice will use that ratio immediately after being created (rather than the default of 1.0). Xbox 360 For XMA voices there is an additional restriction on the MaxFrequencyRatio argument and the voice's sample rate. The product of these two numbers cannot exceed XAUDIO2_MAX_RATIO_TIMES_RATE_XMA_MONO for one-channel voices or XAUDIO2_MAX_RATIO_TIMES_RATE_XMA_MULTICHANNEL for voices with any other number of channels. If the value specified for MaxFrequencyRatio is too high for the specified format, the call to CreateSourceVoice fails and produces a debug message. Note XAudio2's memory usage can be reduced by using the lowest possible MaxFrequencyRatio value.</param>
<param name="enableCallbackEvents">if set to <c>true</c> [enable callback events].</param>
<param name="effectDescriptors">[in, optional] Pointer to a list of XAUDIO2_EFFECT_CHAIN structures that describe an effect chain to use in the source voice.</param>
<returns>No enableCallbackEvents.</returns>
<unmanaged>HRESULT IXAudio2::CreateSourceVoice([Out] IXAudio2SourceVoice** ppSourceVoice,[In] const WAVEFORMATEX* pSourceFormat,[None] UINT32 Flags,[None] float MaxFrequencyRatio,[In, Optional] IXAudio2VoiceCallback* pCallback,[In, Optional] const XAUDIO2_VOICE_SENDS* pSendList,[In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.Start">
<summary>
Starts consumption and processing of audio by the voice. Delivers the result to any connected submix or mastering voices, or to the output device, with CommitNow changes.
</summary>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2SourceVoice::Start([None] UINT32 Flags,[None] UINT32 OperationSet)</unmanaged>
</member>
<member name="P:SharpDX.XAudio2.SourceVoice.State">
<summary>
Gets the state.
</summary>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.SetFrequencyRatio(System.Single)">
<summary>
Sets the frequency ratio.
</summary>
<param name="ratio">The ratio.</param>
<returns></returns>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.Start(System.Int32)">
<summary>
Starts consumption and processing of audio by the voice. Delivers the result to any connected submix or mastering voices, or to the output device.
</summary>
<param name="operationSet">[in] Identifies this call as part of a deferred batch. See the {{XAudio2 Operation Sets}} overview for more information. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2SourceVoice::Start([None] UINT32 Flags,[None] UINT32 OperationSet)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.SourceVoice.SubmitSourceBuffer(SharpDX.XAudio2.AudioBuffer,System.UInt32[])">
<summary>
No documentation.
</summary>
<param name="bufferRef">No documentation.</param>
<param name="decodedXMWAPacketInfo">No documentation.</param>
<returns>No documentation.</returns>
<!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2SourceVoice::SubmitSourceBuffer']/*" />
<unmanaged>HRESULT IXAudio2SourceVoice::SubmitSourceBuffer([In] const XAUDIO2_BUFFER* pBuffer,[In, Optional] const XAUDIO2_BUFFER_WMA* pBufferWMA)</unmanaged>
</member>
<member name="E:SharpDX.XAudio2.SourceVoice.ProcessingPassStart">
<summary>
Occurs just before the processing pass for the voice begins.
</summary>
<remarks>
In order to use this delegate, this instance must have been initialized with events delegate support.
</remarks>
</member>
<member name="E:SharpDX.XAudio2.SourceVoice.ProcessingPassEnd">
<summary>
Occurs just after the processing pass for the voice ends.
</summary>
<remarks>
In order to use this delegate, this instance must have been initialized with events delegate support.
</remarks>
</member>
<member name="E:SharpDX.XAudio2.SourceVoice.StreamEnd">
<summary>
Occurs when the voice has just finished playing a contiguous audio stream.
</summary>
<remarks>
In order to use this delegate, this instance must have been initialized with events delegate support.
</remarks>
</member>
<member name="E:SharpDX.XAudio2.SourceVoice.BufferStart">
<summary>
Occurs when the voice is about to start processing a new audio buffer.
</summary>
<remarks>
In order to use this delegate, this instance must have been initialized with events delegate support.
</remarks>
</member>
<member name="E:SharpDX.XAudio2.SourceVoice.BufferEnd">
<summary>
Occurs when the voice finishes processing a buffer.
</summary>
<remarks>
In order to use this delegate, this instance must have been initialized with events delegate support.
</remarks>
</member>
<member name="E:SharpDX.XAudio2.SourceVoice.LoopEnd">
<summary>
Occurs when a critical error occurs during voice processing.
</summary>
<remarks>
In order to use this delegate, this instance must have been initialized with events delegate support.
</remarks>
</member>
<member name="E:SharpDX.XAudio2.SourceVoice.VoiceError">
<summary>
Occurs when [voice error].
</summary>
<remarks>
In order to use this delegate, this instance must have been initialized with events delegate support.
</remarks>
</member>
<member name="T:SharpDX.XAudio2.SubmixVoice">
<summary>
<p>A submix voice is used primarily for performance improvements and effects processing. </p>
</summary>
<remarks>
<p>Data buffers cannot be submitted directly to submix voices and will not be audible unless submitted to a mastering voice. A submix voice can be used to ensure that a particular set of voice data is converted to the same format and/or to have a particular effect chain processed on the collective result.
</p><p><see cref="T:SharpDX.XAudio2.SubmixVoice" /> inherits directly from <strong><see cref="T:SharpDX.XAudio2.Voice" /></strong>, but does not implement methods specific to submix voices. The interface type exists solely because some of the base class methods are implemented differently for submix voices. Having a separate type for these voices helps client code to distinguish the different voice types and to benefit from C++ type safety.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2SubmixVoice']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2submixvoice.ixaudio2submixvoice</msdn-id>
<unmanaged>IXAudio2SubmixVoice</unmanaged>
<unmanaged-short>IXAudio2SubmixVoice</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.SubmixVoice.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAudio2.SubmixVoice"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.XAudio2.SubmixVoice.op_Explicit(System.IntPtr)~SharpDX.XAudio2.SubmixVoice">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.XAudio2.SubmixVoice"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.XAudio2.SubmixVoice.#ctor(SharpDX.XAudio2.XAudio2)">
<summary>
Creates and configures a submix voice on the default audio device, with stereo channels at 44100Hz.
</summary>
<param name="device">an instance of <see cref = "T:SharpDX.XAudio2.XAudio2" /></param>
<unmanaged>HRESULT IXAudio2::CreateSubmixVoice([Out] IXAudio2SubmixVoice** ppSubmixVoice,[None] UINT32 InputChannels,[None] UINT32 InputSampleRate,[None] UINT32 Flags,[None] UINT32 DeviceIndex,[In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.SubmixVoice.#ctor(SharpDX.XAudio2.XAudio2,System.Int32)">
<summary>
Creates and configures a submix voice on the default audio device and 44100Hz.
</summary>
<param name="device">an instance of <see cref = "T:SharpDX.XAudio2.XAudio2" /></param>
<param name="inputChannels">[in] Number of channels the mastering voice expects in its input audio. InputChannels must be less than or equal to XAUDIO2_MAX_AUDIO_CHANNELS. InputChannels can be set to XAUDIO2_DEFAULT_CHANNELS, with the default being determined by the current platform. Windows Attempts to detect the system speaker configuration setup. Xbox 360 Defaults to 5.1 surround. </param>
<unmanaged>HRESULT IXAudio2::CreateSubmixVoice([Out] IXAudio2SubmixVoice** ppSubmixVoice,[None] UINT32 InputChannels,[None] UINT32 InputSampleRate,[None] UINT32 Flags,[None] UINT32 DeviceIndex,[In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.SubmixVoice.#ctor(SharpDX.XAudio2.XAudio2,System.Int32,System.Int32)">
<summary>
Creates and configures a submix voice on the default audio device.
</summary>
<param name="device">an instance of <see cref = "T:SharpDX.XAudio2.XAudio2" /></param>
<param name="inputChannels">[in] Number of channels the mastering voice expects in its input audio. InputChannels must be less than or equal to XAUDIO2_MAX_AUDIO_CHANNELS. InputChannels can be set to XAUDIO2_DEFAULT_CHANNELS, with the default being determined by the current platform. Windows Attempts to detect the system speaker configuration setup. Xbox 360 Defaults to 5.1 surround. </param>
<param name="inputSampleRate">[in] Sample rate of the input audio data of the mastering voice. This rate must be a multiple of XAUDIO2_QUANTUM_DENOMINATOR. InputSampleRate must be between XAUDIO2_MIN_SAMPLE_RATE and XAUDIO2_MAX_SAMPLE_RATE. InputSampleRate can be set to XAUDIO2_DEFAULT_SAMPLERATE, with the default being determined by the current platform. Windows Windows XP defaults to 44100. Windows Vista and Windows 7 default to the setting specified in the Sound Control Panel. The default for this setting is 44100 (or 48000 if required by the driver). Xbox 360 Defaults to 48000. </param>
<unmanaged>HRESULT IXAudio2::CreateSubmixVoice([Out] IXAudio2SubmixVoice** ppSubmixVoice,[None] UINT32 InputChannels,[None] UINT32 InputSampleRate,[None] UINT32 Flags,[None] UINT32 DeviceIndex,[In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.SubmixVoice.#ctor(SharpDX.XAudio2.XAudio2,System.Int32,System.Int32,SharpDX.XAudio2.SubmixVoiceFlags,System.Int32)">
<summary>
Creates and configures a submix voice.
</summary>
<param name="device">an instance of <see cref = "T:SharpDX.XAudio2.XAudio2" /></param>
<param name="inputChannels">[in] Number of channels in the input audio data of the submix voice. InputChannels must be less than or equal to XAUDIO2_MAX_AUDIO_CHANNELS. </param>
<param name="inputSampleRate">[in] Sample rate of the input audio data of submix voice. This rate must be a multiple of XAUDIO2_QUANTUM_DENOMINATOR. InputSampleRate must be between XAUDIO2_MIN_SAMPLE_RATE and XAUDIO2_MAX_SAMPLE_RATE. </param>
<param name="flags">[in] Flags that specify the behavior of the submix voice. Can be 0 or the following: ValueDescriptionXAUDIO2_VOICE_USEFILTERThe filter effect should be available on this voice.? </param>
<param name="processingStage">[in] An arbitrary number that specifies when this voice is processed with respect to other submix voices, if the XAudio2 engine is running other submix voices. The voice is processed after all other voices that include a smaller ProcessingStage value, and before all other voices that include a larger ProcessingStage value. Voices that include the same ProcessingStage value are processed in any order. A submix voice cannot send to another submix voice with a lower or equal ProcessingStage value; this prevents audio being lost due to a submix cycle. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2::CreateSubmixVoice([Out] IXAudio2SubmixVoice** ppSubmixVoice,[None] UINT32 InputChannels,[None] UINT32 InputSampleRate,[None] UINT32 Flags,[None] UINT32 ProcessingStage,[In, Optional] const XAUDIO2_VOICE_SENDS* pSendList,[In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.SubmixVoice.#ctor(SharpDX.XAudio2.XAudio2,System.Int32,System.Int32,SharpDX.XAudio2.SubmixVoiceFlags,System.Int32,SharpDX.XAudio2.EffectDescriptor[])">
<summary>
Creates and configures a submix voice with an effect chain.
</summary>
<param name="device">an instance of <see cref = "T:SharpDX.XAudio2.XAudio2" /></param>
<param name="inputChannels">[in] Number of channels in the input audio data of the submix voice. InputChannels must be less than or equal to XAUDIO2_MAX_AUDIO_CHANNELS. </param>
<param name="inputSampleRate">[in] Sample rate of the input audio data of submix voice. This rate must be a multiple of XAUDIO2_QUANTUM_DENOMINATOR. InputSampleRate must be between XAUDIO2_MIN_SAMPLE_RATE and XAUDIO2_MAX_SAMPLE_RATE. </param>
<param name="flags">[in] Flags that specify the behavior of the submix voice. Can be 0 or the following: ValueDescriptionXAUDIO2_VOICE_USEFILTERThe filter effect should be available on this voice.? </param>
<param name="processingStage">[in] An arbitrary number that specifies when this voice is processed with respect to other submix voices, if the XAudio2 engine is running other submix voices. The voice is processed after all other voices that include a smaller ProcessingStage value, and before all other voices that include a larger ProcessingStage value. Voices that include the same ProcessingStage value are processed in any order. A submix voice cannot send to another submix voice with a lower or equal ProcessingStage value; this prevents audio being lost due to a submix cycle. </param>
<param name="effectDescriptors">[in, optional] Pointer to a list of XAUDIO2_EFFECT_CHAIN structures that describe an effect chain to use in the submix voice.</param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2::CreateSubmixVoice([Out] IXAudio2SubmixVoice** ppSubmixVoice,[None] UINT32 InputChannels,[None] UINT32 InputSampleRate,[None] UINT32 Flags,[None] UINT32 ProcessingStage,[In, Optional] const XAUDIO2_VOICE_SENDS* pSendList,[In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain)</unmanaged>
</member>
<member name="T:SharpDX.XAudio2.Voice">
<summary>
<p><strong><see cref="T:SharpDX.XAudio2.Voice" /></strong> represents the base interface from which <strong><see cref="T:SharpDX.XAudio2.SourceVoice" /></strong>, <strong><see cref="T:SharpDX.XAudio2.SubmixVoice" /></strong> and <strong><see cref="T:SharpDX.XAudio2.MasteringVoice" /></strong> are derived. The methods listed below are common to all voice subclasses.</p><ul> <li>Methods</li> </ul>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice</msdn-id>
<unmanaged>IXAudio2Voice</unmanaged>
<unmanaged-short>IXAudio2Voice</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.Voice.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAudio2.Voice"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.XAudio2.Voice.op_Explicit(System.IntPtr)~SharpDX.XAudio2.Voice">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.XAudio2.Voice"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="P:SharpDX.XAudio2.Voice.OutputVoices">
<summary>
<p>Designates a new set of submix or mastering voices to receive the output of the voice.</p>
</summary>
<remarks>
<p>This method is only valid for source and submix voices. Mastering voices can not send audio to another voice. </p><p>After calling <strong>SetOutputVoices</strong> a voice's current send levels will be replaced by a default send matrix. The <strong><see cref="M:SharpDX.XAudio2.Voice.SetOutputMatrix(SharpDX.XAudio2.Voice,System.Int32,System.Int32,System.Single[],System.Int32)" /></strong> method must be called to set a custom matrix for the new sendlist. </p><p>It is invalid to call <strong>SetOutputVoices</strong> from within a callback (that is, <strong><see cref="T:SharpDX.XAudio2.EngineCallback" /></strong> or <strong><see cref="T:SharpDX.XAudio2.VoiceCallback" /></strong>). If <strong>SetOutputVoices</strong> is called within a callback, it returns <see cref="F:SharpDX.XAudio2.ResultCode.InvalidCall" />.</p><strong>Note</strong>??Calling <strong>SetOutputVoices</strong> invalidates any send matrices previously set with <strong><see cref="M:SharpDX.XAudio2.Voice.SetOutputMatrix(SharpDX.XAudio2.Voice,System.Int32,System.Int32,System.Single[],System.Int32)" /></strong>.?
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::SetOutputVoices']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.setoutputvoices</msdn-id>
<unmanaged>SetOutputVoices</unmanaged>
<unmanaged-short>SetOutputVoices</unmanaged-short>
<unmanaged>HRESULT IXAudio2Voice::SetOutputVoices([In, Optional] const XAUDIO2_VOICE_SENDS* pSendList)</unmanaged>
</member>
<member name="P:SharpDX.XAudio2.Voice.FilterParameters">
<summary>
<p>Gets the voice's filter parameters.</p>
</summary>
<remarks>
<p><strong>GetFilterParameters</strong> will fail if the voice was not created with the <see cref="F:SharpDX.XAudio2.VoiceFlags.UseFilter" /> flag. </p><p><strong>GetFilterParameters</strong> always returns this voice's actual current filter parameters. However, these may not match the parameters set by the most recent <strong><see cref="M:SharpDX.XAudio2.Voice.SetFilterParameters(SharpDX.XAudio2.FilterParameters,System.Int32)" /></strong> call: the actual parameters are only changed the next time the audio engine runs after the <strong><see cref="M:SharpDX.XAudio2.Voice.SetFilterParameters(SharpDX.XAudio2.FilterParameters,System.Int32)" /></strong> call (or after the corresponding <strong><see cref="M:SharpDX.XAudio2.XAudio2.CommitChanges(System.Int32)" /></strong> call, if <strong><see cref="M:SharpDX.XAudio2.Voice.SetFilterParameters(SharpDX.XAudio2.FilterParameters,System.Int32)" /></strong> was called with a deferred operation ID). </p><strong>Note</strong>??<strong>GetFilterParameters</strong> is usable only on source and submix voices and has no effect on mastering voices.?
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::GetFilterParameters']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.getfilterparameters</msdn-id>
<unmanaged>GetFilterParameters</unmanaged>
<unmanaged-short>GetFilterParameters</unmanaged-short>
<unmanaged>void IXAudio2Voice::GetFilterParameters([Out] XAUDIO2_FILTER_PARAMETERS* pParameters)</unmanaged>
</member>
<member name="P:SharpDX.XAudio2.Voice.Volume">
<summary>
<p>Sets the overall volume level for the voice.</p>
</summary>
<remarks>
<p><strong>SetVolume</strong> controls a voice's master input volume level. The master volume level is applied at different times depending on the type of voice. For submix and mastering voices the volume level is applied just before the voice's built in filter and effect chain is applied. For source voices the master volume level is applied after the voice's filter and effect chain is applied. </p><p>Volume levels are expressed as floating-point amplitude multipliers between -<see cref="F:SharpDX.XAudio2.XAudio2.MaximumVolumeLevel" /> and <see cref="F:SharpDX.XAudio2.XAudio2.MaximumVolumeLevel" /> (-2?? to 2??), with a maximum gain of 144.5 dB. A volume level of 1.0 means there is no attenuation or gain and 0 means silence. Negative levels can be used to invert the audio's phase. See XAudio2 Volume and Pitch Control for additional information on volume control. </p><strong>Note</strong>??<strong><see cref="M:SharpDX.XAudio2.Voice.GetVolume(System.Single@)" /></strong> always returns the volume most recently set by <strong><see cref="M:SharpDX.XAudio2.Voice.SetVolume(System.Single,System.Int32)" /></strong>. However, it may not actually be in effect yet: it only takes effect the next time the audio engine runs after the <strong><see cref="M:SharpDX.XAudio2.Voice.SetVolume(System.Single,System.Int32)" /></strong> call (or after the corresponding <strong><see cref="M:SharpDX.XAudio2.XAudio2.CommitChanges(System.Int32)" /></strong> call, if <strong><see cref="M:SharpDX.XAudio2.Voice.SetVolume(System.Single,System.Int32)" /></strong> was called with a deferred operation ID).?
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::GetVolume']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.setvolume</msdn-id>
<unmanaged>GetVolume</unmanaged>
<unmanaged-short>GetVolume</unmanaged-short>
<unmanaged>void IXAudio2Voice::GetVolume([Out] float* pVolume)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.Voice.GetVoiceDetails(SharpDX.XAudio2.VoiceDetails@)">
<summary>
<p>Returns information about the creation flags, input channels, and sample rate of a voice.</p>
</summary>
<param name="voiceDetailsRef"><dd> <p> <strong><see cref="T:SharpDX.XAudio2.VoiceDetails" /></strong> structure containing information about the voice.</p> </dd></param>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::GetVoiceDetails']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.getvoicedetails</msdn-id>
<unmanaged>void IXAudio2Voice::GetVoiceDetails([Out] XAUDIO2_VOICE_DETAILS* pVoiceDetails)</unmanaged>
<unmanaged-short>IXAudio2Voice::GetVoiceDetails</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.Voice.SetOutputVoices(System.Nullable{SharpDX.XAudio2.VoiceSendDescriptors})">
<summary>
<p>Designates a new set of submix or mastering voices to receive the output of the voice.</p>
</summary>
<param name="sendListRef"><dd> <p>Array of <strong><see cref="T:SharpDX.XAudio2.VoiceSendDescriptors" /></strong> structure references to destination voices. If <em>pSendList</em> is <c>null</c>, the voice will send its output to the current mastering voice. To set the voice to not send its output anywhere set the <strong>OutputCount</strong> member of <strong><see cref="T:SharpDX.XAudio2.VoiceSendDescriptors" /></strong> to 0. All of the voices in a send list must have the same input sample rate, see XAudio2 Sample Rate Conversions for additional information.</p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful, an error code otherwise. See <strong>XAudio2 Error Codes</strong> for descriptions of XAudio2 specific error codes. </p></returns>
<remarks>
<p>This method is only valid for source and submix voices. Mastering voices can not send audio to another voice. </p><p>After calling <strong>SetOutputVoices</strong> a voice's current send levels will be replaced by a default send matrix. The <strong><see cref="M:SharpDX.XAudio2.Voice.SetOutputMatrix(SharpDX.XAudio2.Voice,System.Int32,System.Int32,System.Single[],System.Int32)" /></strong> method must be called to set a custom matrix for the new sendlist. </p><p>It is invalid to call <strong>SetOutputVoices</strong> from within a callback (that is, <strong><see cref="T:SharpDX.XAudio2.EngineCallback" /></strong> or <strong><see cref="T:SharpDX.XAudio2.VoiceCallback" /></strong>). If <strong>SetOutputVoices</strong> is called within a callback, it returns <see cref="F:SharpDX.XAudio2.ResultCode.InvalidCall" />.</p><strong>Note</strong>??Calling <strong>SetOutputVoices</strong> invalidates any send matrices previously set with <strong><see cref="M:SharpDX.XAudio2.Voice.SetOutputMatrix(SharpDX.XAudio2.Voice,System.Int32,System.Int32,System.Single[],System.Int32)" /></strong>.?
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::SetOutputVoices']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.setoutputvoices</msdn-id>
<unmanaged>HRESULT IXAudio2Voice::SetOutputVoices([In, Optional] const XAUDIO2_VOICE_SENDS* pSendList)</unmanaged>
<unmanaged-short>IXAudio2Voice::SetOutputVoices</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.Voice.SetEffectChain(System.Nullable{SharpDX.XAudio2.EffectChain})">
<summary>
<p>Replaces the effect chain of the voice.</p>
</summary>
<param name="effectChainRef"><dd> <p>Pointer to an <strong><see cref="T:SharpDX.XAudio2.EffectChain" /></strong> structure that describes the new effect chain to use. If <c>null</c> is passed, the current effect chain is removed.</p> <strong>Note</strong>??If <em>pEffectChain</em> is non-<c>null</c>, the <strong><see cref="T:SharpDX.XAudio2.EffectChain" /></strong> structure that it points to must specify at least one effect. ? </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful; otherwise, an error code. </p><p>See <strong>XAudio2 Error Codes</strong> for descriptions of XAudio2 specific error codes.</p></returns>
<remarks>
<p>The number of output channels allowed for a voice's effect chain is locked at creation of the voice. If you create the voice with an effect chain, any new effect chain passed to <strong>SetEffectChain</strong> must have the same number of input and output channels as the original effect chain. If you create the voice without an effect chain, the number of output channels allowed for the effect chain will default to the number of input channels for the voice. If any part of effect chain creation fails, none of it is applied. </p><p>After you attach an effect to an XAudio2 voice, XAudio2 takes control of the effect, and the client should not make any further calls to it. The simplest way to ensure this is to release all references to the effect. </p><p>It is invalid to call <strong>SetEffectChain</strong> from within a callback (that is, <strong><see cref="T:SharpDX.XAudio2.EngineCallback" /></strong> or <strong><see cref="T:SharpDX.XAudio2.VoiceCallback" /></strong>). If you call <strong>SetEffectChain</strong> within a callback, it returns <see cref="F:SharpDX.XAudio2.ResultCode.InvalidCall" />. </p><p>The <strong><see cref="T:SharpDX.XAudio2.EffectChain" /></strong> that is passed in as the pEffectChain argument and any <strong><see cref="T:SharpDX.XAudio2.EffectDescriptor" /></strong> information contained within it are no longer needed after <strong>SetEffectChain</strong> successfully completes, and may be deleted immediately after <strong>SetEffectChain</strong> is called.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::SetEffectChain']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.seteffectchain</msdn-id>
<unmanaged>HRESULT IXAudio2Voice::SetEffectChain([In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain)</unmanaged>
<unmanaged-short>IXAudio2Voice::SetEffectChain</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.Voice.EnableEffect(System.Int32,System.Int32)">
<summary>
<p>Enables the effect at a given position in the effect chain of the voice.</p>
</summary>
<param name="effectIndex"><dd> <p>Zero-based index of an effect in the effect chain of the voice.</p> </dd></param>
<param name="operationSet"><dd> <p>Identifies this call as part of a deferred batch. See the XAudio2 Operation Sets overview for more information. </p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful; otherwise, an error code. See <strong>XAudio2 Error Codes</strong> for descriptions of error codes. </p></returns>
<remarks>
<p>Be careful when you enable an effect while the voice that hosts it is running. Such an action can result in a problem if the effect significantly changes the audio's pitch or volume. </p><p>The effects in a given XAudio2 voice's effect chain must consume and produce audio at that voice's processing sample rate. The only aspect of the audio format they can change is the channel count. For example a reverb effect can convert mono data to 5.1. The client can use the <strong><see cref="T:SharpDX.XAudio2.EffectDescriptor" /></strong> structure's <strong>OutputChannels</strong> field to specify the number of channels it wants each effect to produce. Each effect in an effect chain must produce a number of channels that the next effect can consume. Any calls to <strong><see cref="M:SharpDX.XAudio2.Voice.EnableEffect(System.Int32,System.Int32)" /></strong> or <strong><see cref="M:SharpDX.XAudio2.Voice.DisableEffect(System.Int32,System.Int32)" /></strong> that would make the effect chain stop fulfilling these requirements will fail. </p><p><strong>EnableEffect</strong> takes effect immediately when you call it from an XAudio2 callback with an <em>OperationSet</em> of <strong><see cref="F:SharpDX.XAudio2.XAudio2.CommitNow" /></strong>.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::EnableEffect']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.enableeffect</msdn-id>
<unmanaged>HRESULT IXAudio2Voice::EnableEffect([In] unsigned int EffectIndex,[In] unsigned int OperationSet)</unmanaged>
<unmanaged-short>IXAudio2Voice::EnableEffect</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.Voice.DisableEffect(System.Int32,System.Int32)">
<summary>
<p>Disables the effect at a given position in the effect chain of the voice.</p>
</summary>
<param name="effectIndex"><dd> <p>Zero-based index of an effect in the effect chain of the voice.</p> </dd></param>
<param name="operationSet"><dd> <p>Identifies this call as part of a deferred batch. See the XAudio2 Operation Sets overview for more information. </p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful; otherwise, an error code. See <strong>XAudio2 Error Codes</strong> for descriptions of valid error codes.</p></returns>
<remarks>
<p>The effects in a given XAudio2 voice's effect chain must consume and produce audio at that voice's processing sample rate. The only aspect of the audio format they can change is the channel count. For example a reverb effect can convert mono data to 5.1. The client can use the <strong><see cref="T:SharpDX.XAudio2.EffectDescriptor" /></strong> structure's <strong>OutputChannels</strong> field to specify the number of channels it wants each effect to produce. Each effect in an effect chain must produce a number of channels that the next effect can consume. Any calls to <strong><see cref="M:SharpDX.XAudio2.Voice.EnableEffect(System.Int32,System.Int32)" /></strong> or <strong><see cref="M:SharpDX.XAudio2.Voice.DisableEffect(System.Int32,System.Int32)" /></strong> that would make the effect chain stop fulfilling these requirements will fail. </p><p>Disabling an effect immediately removes it from the processing graph. Any pending audio in the effect?such as a reverb tail?is not played. Be careful disabling an effect while the voice that hosts it is running. This can result in an audible artifact if the effect significantly changes the audio's pitch or volume. </p><p><strong>DisableEffect</strong> takes effect immediately when called from an XAudio2 callback with an <em>OperationSet</em> of <strong><see cref="F:SharpDX.XAudio2.XAudio2.CommitNow" /></strong>. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::DisableEffect']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.disableeffect</msdn-id>
<unmanaged>HRESULT IXAudio2Voice::DisableEffect([In] unsigned int EffectIndex,[In] unsigned int OperationSet)</unmanaged>
<unmanaged-short>IXAudio2Voice::DisableEffect</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.Voice.IsEffectEnabled(System.Int32)">
<summary>
<p>Returns the running state of the effect at a specified position in the effect chain of the voice.</p>
</summary>
<param name="effectIndex"><dd> <p>Zero-based index of an effect in the effect chain of the voice.</p> </dd></param>
<remarks>
<p><strong>GetEffectState</strong> always returns the effect's actual current state. However, this may not be the state set by the most recent <strong><see cref="M:SharpDX.XAudio2.Voice.EnableEffect(System.Int32,System.Int32)" /></strong> or <strong><see cref="M:SharpDX.XAudio2.Voice.DisableEffect(System.Int32,System.Int32)" /></strong> call: the actual state is only changed the next time the audio engine runs after the <strong><see cref="M:SharpDX.XAudio2.Voice.EnableEffect(System.Int32,System.Int32)" /></strong> or <strong><see cref="M:SharpDX.XAudio2.Voice.DisableEffect(System.Int32,System.Int32)" /></strong> call (or after the corresponding <strong><see cref="M:SharpDX.XAudio2.XAudio2.CommitChanges(System.Int32)" /></strong> call, if EnableEffect/DisableEffect was called with a deferred operation ID).</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::GetEffectState']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.geteffectstate</msdn-id>
<unmanaged>void IXAudio2Voice::GetEffectState([In] unsigned int EffectIndex,[Out] BOOL* pEnabled)</unmanaged>
<unmanaged-short>IXAudio2Voice::GetEffectState</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.Voice.SetEffectParameters(System.Int32,System.IntPtr,System.Int32,System.Int32)">
<summary>
<p>Sets parameters for a given effect in the voice's effect chain.</p>
</summary>
<param name="effectIndex"><dd> <p>Zero-based index of an effect within the voice's effect chain.</p> </dd></param>
<param name="parametersRef"><dd> <p> Returns the current values of the effect-specific parameters.</p> </dd></param>
<param name="parametersByteSize"><dd> <p> Size of the <strong>pParameters</strong> array in bytes.</p> </dd></param>
<param name="operationSet"><dd> <p>Identifies this call as part of a deferred batch. See the XAudio2 Operation Sets overview for more information.</p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful; otherwise, an error code. See <strong>XAudio2 Error Codes</strong> for descriptions of error codes. </p><p>Fails with E_NOTIMPL if the effect does not support a generic parameter control interface.</p></returns>
<remarks>
<p>The specific effect being used determines the valid size and format of the <em>pParameters</em> buffer. The call will fail if <em>pParameters</em> is invalid or if <em>ParametersByteSize</em> is not exactly the size that the effect expects. The client must take care to direct the <strong>SetEffectParameters</strong> call to the right effect. If this call is directed to a different effect that happens to accept the same parameter block size, the parameters will be interpreted differently. This may lead to unexpected results. </p><p>The memory pointed to by <em>pParameters</em> must <em>not</em> be freed immediately, because XAudio2 will need to refer to it later when the parameters actually are applied to the effect. This happens during the next audio processing pass if the <em>OperationSet</em> argument is <strong><see cref="F:SharpDX.XAudio2.XAudio2.CommitNow" /></strong>. Otherwise, the parameters are applied to the effect later, during the first processing pass after the <strong><see cref="M:SharpDX.XAudio2.XAudio2.CommitChanges(System.Int32)" /></strong> function is called with the same <em>OperationSet</em> argument. </p><p><strong>SetEffectParameters</strong> takes effect immediately when called from an XAudio2 callback with an <em>OperationSet</em> of <strong><see cref="F:SharpDX.XAudio2.XAudio2.CommitNow" /></strong>.
</p><strong>Note</strong>??<strong><see cref="M:SharpDX.XAudio2.Voice.GetEffectParameters(System.Int32,System.IntPtr,System.Int32)" /></strong> always returns the effect's actual current parameters. However, these may not match the parameters set by the most recent call to <strong><see cref="M:SharpDX.XAudio2.Voice.SetEffectParameters(System.Int32,System.IntPtr,System.Int32,System.Int32)" /></strong>. The actual parameters are only changed the next time the audio engine runs after the <strong><see cref="M:SharpDX.XAudio2.Voice.SetEffectParameters(System.Int32,System.IntPtr,System.Int32,System.Int32)" /></strong> call (or after the corresponding <strong><see cref="M:SharpDX.XAudio2.XAudio2.CommitChanges(System.Int32)" /></strong> call, if <strong><see cref="M:SharpDX.XAudio2.Voice.SetEffectParameters(System.Int32,System.IntPtr,System.Int32,System.Int32)" /></strong> was called with a deferred operation ID).?
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::SetEffectParameters']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.seteffectparameters</msdn-id>
<unmanaged>HRESULT IXAudio2Voice::SetEffectParameters([In] unsigned int EffectIndex,[In, Buffer] const void* pParameters,[In] unsigned int ParametersByteSize,[In] unsigned int OperationSet)</unmanaged>
<unmanaged-short>IXAudio2Voice::SetEffectParameters</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.Voice.GetEffectParameters(System.Int32,System.IntPtr,System.Int32)">
<summary>
<p>Returns the current effect-specific parameters of a given effect in the voice's effect chain.</p>
</summary>
<param name="effectIndex"><dd> <p>Zero-based index of an effect within the voice's effect chain.</p> </dd></param>
<param name="parametersRef"><dd> <p>Returns the current values of the effect-specific parameters.</p> </dd></param>
<param name="parametersByteSize"><dd> <p>Size, in bytes, of the pParameters array.</p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful, an error code otherwise. See <strong>XAudio2 Error Codes</strong> for descriptions of error codes. </p><p>Fails with E_NOTIMPL if the effect does not support a generic parameter control interface.</p></returns>
<remarks>
<p><strong>GetEffectParameters</strong> always returns the effect's actual current parameters. However, these may not match the parameters set by the most recent call to <strong><see cref="M:SharpDX.XAudio2.Voice.SetEffectParameters(System.Int32,System.IntPtr,System.Int32,System.Int32)" /></strong>: the actual parameters are only changed the next time the audio engine runs after the <strong><see cref="M:SharpDX.XAudio2.Voice.SetEffectParameters(System.Int32,System.IntPtr,System.Int32,System.Int32)" /></strong> call (or after the corresponding <strong><see cref="M:SharpDX.XAudio2.XAudio2.CommitChanges(System.Int32)" /></strong> call, if <strong><see cref="M:SharpDX.XAudio2.Voice.SetEffectParameters(System.Int32,System.IntPtr,System.Int32,System.Int32)" /></strong> was called with a deferred operation ID). </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::GetEffectParameters']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.geteffectparameters</msdn-id>
<unmanaged>HRESULT IXAudio2Voice::GetEffectParameters([In] unsigned int EffectIndex,[Out, Buffer] void* pParameters,[In] unsigned int ParametersByteSize)</unmanaged>
<unmanaged-short>IXAudio2Voice::GetEffectParameters</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.Voice.SetFilterParameters(SharpDX.XAudio2.FilterParameters,System.Int32)">
<summary>
<p>Sets the voice's filter parameters.</p>
</summary>
<param name="parametersRef"><dd> <p>Pointer to an <strong><see cref="T:SharpDX.XAudio2.FilterParameters" /></strong> structure containing the filter information. </p> </dd></param>
<param name="operationSet"><dd> <p>Identifies this call as part of a deferred batch. See the XAudio2 Operation Sets overview for more information.</p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful, an error code otherwise. See <strong>XAudio2 Error Codes</strong> for descriptions of error codes. </p></returns>
<remarks>
<p><strong>SetFilterParameters</strong> will fail if the voice was not created with the <see cref="F:SharpDX.XAudio2.VoiceFlags.UseFilter" /> flag. </p><p>This method is usable only on source and submix voices and has no effect on mastering voices.</p><strong>Note</strong>??<strong><see cref="M:SharpDX.XAudio2.Voice.GetFilterParameters(SharpDX.XAudio2.FilterParameters@)" /></strong> always returns this voice's actual current filter parameters. However, these may not match the parameters set by the most recent <strong><see cref="M:SharpDX.XAudio2.Voice.SetFilterParameters(SharpDX.XAudio2.FilterParameters,System.Int32)" /></strong> call: the actual parameters are only changed the next time the audio engine runs after the <strong><see cref="M:SharpDX.XAudio2.Voice.SetFilterParameters(SharpDX.XAudio2.FilterParameters,System.Int32)" /></strong> call (or after the corresponding <strong><see cref="M:SharpDX.XAudio2.XAudio2.CommitChanges(System.Int32)" /></strong> call, if <strong><see cref="M:SharpDX.XAudio2.Voice.SetFilterParameters(SharpDX.XAudio2.FilterParameters,System.Int32)" /></strong> was called with a deferred operation ID).?
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::SetFilterParameters']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.setfilterparameters</msdn-id>
<unmanaged>HRESULT IXAudio2Voice::SetFilterParameters([In] const XAUDIO2_FILTER_PARAMETERS* pParameters,[In] unsigned int OperationSet)</unmanaged>
<unmanaged-short>IXAudio2Voice::SetFilterParameters</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.Voice.GetFilterParameters(SharpDX.XAudio2.FilterParameters@)">
<summary>
<p>Gets the voice's filter parameters.</p>
</summary>
<param name="parametersRef"><dd> <p>Pointer to an <strong><see cref="T:SharpDX.XAudio2.FilterParameters" /></strong> structure containing the filter information. </p> </dd></param>
<remarks>
<p><strong>GetFilterParameters</strong> will fail if the voice was not created with the <see cref="F:SharpDX.XAudio2.VoiceFlags.UseFilter" /> flag. </p><p><strong>GetFilterParameters</strong> always returns this voice's actual current filter parameters. However, these may not match the parameters set by the most recent <strong><see cref="M:SharpDX.XAudio2.Voice.SetFilterParameters(SharpDX.XAudio2.FilterParameters,System.Int32)" /></strong> call: the actual parameters are only changed the next time the audio engine runs after the <strong><see cref="M:SharpDX.XAudio2.Voice.SetFilterParameters(SharpDX.XAudio2.FilterParameters,System.Int32)" /></strong> call (or after the corresponding <strong><see cref="M:SharpDX.XAudio2.XAudio2.CommitChanges(System.Int32)" /></strong> call, if <strong><see cref="M:SharpDX.XAudio2.Voice.SetFilterParameters(SharpDX.XAudio2.FilterParameters,System.Int32)" /></strong> was called with a deferred operation ID). </p><strong>Note</strong>??<strong>GetFilterParameters</strong> is usable only on source and submix voices and has no effect on mastering voices.?
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::GetFilterParameters']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.getfilterparameters</msdn-id>
<unmanaged>void IXAudio2Voice::GetFilterParameters([Out] XAUDIO2_FILTER_PARAMETERS* pParameters)</unmanaged>
<unmanaged-short>IXAudio2Voice::GetFilterParameters</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.Voice.SetOutputFilterParameters(SharpDX.XAudio2.Voice,SharpDX.XAudio2.FilterParameters,System.Int32)">
<summary>
<p>Sets the filter parameters on one of this voice's sends.</p>
</summary>
<param name="destinationVoiceRef"><dd> <p> <strong><see cref="T:SharpDX.XAudio2.Voice" /></strong> reference to the destination voice of the send whose filter parameters will be set.</p> </dd></param>
<param name="parametersRef"><dd> <p> Pointer to an <strong><see cref="T:SharpDX.XAudio2.FilterParameters" /></strong> structure containing the filter information.</p> </dd></param>
<param name="operationSet"><dd> <p>Identifies this call as part of a deferred batch. See the XAudio2 Operation Sets overview for more information.</p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful, an error code otherwise. See <strong>XAudio2 Error Codes</strong> for descriptions of error codes. </p></returns>
<remarks>
<p><strong>SetOutputFilterParameters</strong> will fail if the send was not created with the <see cref="F:SharpDX.XAudio2.VoiceSendFlags.UseFilter" /> flag. This method is usable only on sends belonging to source and submix voices and has no effect on a mastering voice's sends.
</p><strong>Note</strong>??<strong><see cref="M:SharpDX.XAudio2.Voice.GetOutputFilterParameters(SharpDX.XAudio2.Voice,SharpDX.XAudio2.FilterParameters@)" /></strong> always returns this send?s actual current filter parameters. However, these may not match the parameters set by the most recent <strong><see cref="M:SharpDX.XAudio2.Voice.SetOutputFilterParameters(SharpDX.XAudio2.Voice,SharpDX.XAudio2.FilterParameters,System.Int32)" /></strong> call: the actual parameters are only changed the next time the audio engine runs after the <strong><see cref="M:SharpDX.XAudio2.Voice.SetOutputFilterParameters(SharpDX.XAudio2.Voice,SharpDX.XAudio2.FilterParameters,System.Int32)" /></strong> call (or after the corresponding <strong><see cref="M:SharpDX.XAudio2.XAudio2.CommitChanges(System.Int32)" /></strong> call, if <strong><see cref="M:SharpDX.XAudio2.Voice.SetOutputFilterParameters(SharpDX.XAudio2.Voice,SharpDX.XAudio2.FilterParameters,System.Int32)" /></strong> was called with a deferred operation ID).?
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::SetOutputFilterParameters']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.setoutputfilterparameters</msdn-id>
<unmanaged>HRESULT IXAudio2Voice::SetOutputFilterParameters([In, Optional] IXAudio2Voice* pDestinationVoice,[In] const XAUDIO2_FILTER_PARAMETERS* pParameters,[In] unsigned int OperationSet)</unmanaged>
<unmanaged-short>IXAudio2Voice::SetOutputFilterParameters</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.Voice.GetOutputFilterParameters(SharpDX.XAudio2.Voice,SharpDX.XAudio2.FilterParameters@)">
<summary>
<p>Returns the filter parameters from one of this voice's sends.</p>
</summary>
<param name="destinationVoiceRef"><dd> <p> <strong><see cref="T:SharpDX.XAudio2.Voice" /></strong> reference to the destination voice of the send whose filter parameters will be read.</p> </dd></param>
<param name="parametersRef"><dd> <p>Pointer to an <strong><see cref="T:SharpDX.XAudio2.FilterParameters" /></strong> structure containing the filter information.</p> </dd></param>
<remarks>
<p><strong>GetOutputFilterParameters</strong> will fail if the send was not created with the <see cref="F:SharpDX.XAudio2.VoiceSendFlags.UseFilter" /> flag. This method is usable only on sends belonging to source and submix voices and has no effect on mastering voices? sends. </p><strong>Note</strong>??<strong><see cref="M:SharpDX.XAudio2.Voice.GetOutputFilterParameters(SharpDX.XAudio2.Voice,SharpDX.XAudio2.FilterParameters@)" /></strong> always returns this send?s actual current filter parameters. However, these may not match the parameters set by the most recent <strong><see cref="M:SharpDX.XAudio2.Voice.SetOutputFilterParameters(SharpDX.XAudio2.Voice,SharpDX.XAudio2.FilterParameters,System.Int32)" /></strong> call: the actual parameters are only changed the next time the audio engine runs after the <strong><see cref="M:SharpDX.XAudio2.Voice.SetOutputFilterParameters(SharpDX.XAudio2.Voice,SharpDX.XAudio2.FilterParameters,System.Int32)" /></strong> call (or after the corresponding <strong><see cref="M:SharpDX.XAudio2.XAudio2.CommitChanges(System.Int32)" /></strong> call, if <strong><see cref="M:SharpDX.XAudio2.Voice.SetOutputFilterParameters(SharpDX.XAudio2.Voice,SharpDX.XAudio2.FilterParameters,System.Int32)" /></strong> was called with a deferred operation ID).?
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::GetOutputFilterParameters']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.getoutputfilterparameters</msdn-id>
<unmanaged>void IXAudio2Voice::GetOutputFilterParameters([In, Optional] IXAudio2Voice* pDestinationVoice,[Out] XAUDIO2_FILTER_PARAMETERS* pParameters)</unmanaged>
<unmanaged-short>IXAudio2Voice::GetOutputFilterParameters</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.Voice.SetVolume(System.Single,System.Int32)">
<summary>
<p>Sets the overall volume level for the voice.</p>
</summary>
<param name="volume"><dd> <p>Overall volume level to use. See Remarks for more information on volume levels. </p> </dd></param>
<param name="operationSet"><dd> <p> Identifies this call as part of a deferred batch. See the XAudio2 Operation Sets overview for more information. </p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful, an error code otherwise. See <strong>XAudio2 Error Codes</strong> for descriptions of error codes.</p></returns>
<remarks>
<p><strong>SetVolume</strong> controls a voice's master input volume level. The master volume level is applied at different times depending on the type of voice. For submix and mastering voices the volume level is applied just before the voice's built in filter and effect chain is applied. For source voices the master volume level is applied after the voice's filter and effect chain is applied. </p><p>Volume levels are expressed as floating-point amplitude multipliers between -<see cref="F:SharpDX.XAudio2.XAudio2.MaximumVolumeLevel" /> and <see cref="F:SharpDX.XAudio2.XAudio2.MaximumVolumeLevel" /> (-2?? to 2??), with a maximum gain of 144.5 dB. A volume level of 1.0 means there is no attenuation or gain and 0 means silence. Negative levels can be used to invert the audio's phase. See XAudio2 Volume and Pitch Control for additional information on volume control. </p><strong>Note</strong>??<strong><see cref="M:SharpDX.XAudio2.Voice.GetVolume(System.Single@)" /></strong> always returns the volume most recently set by <strong><see cref="M:SharpDX.XAudio2.Voice.SetVolume(System.Single,System.Int32)" /></strong>. However, it may not actually be in effect yet: it only takes effect the next time the audio engine runs after the <strong><see cref="M:SharpDX.XAudio2.Voice.SetVolume(System.Single,System.Int32)" /></strong> call (or after the corresponding <strong><see cref="M:SharpDX.XAudio2.XAudio2.CommitChanges(System.Int32)" /></strong> call, if <strong><see cref="M:SharpDX.XAudio2.Voice.SetVolume(System.Single,System.Int32)" /></strong> was called with a deferred operation ID).?
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::SetVolume']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.setvolume</msdn-id>
<unmanaged>HRESULT IXAudio2Voice::SetVolume([In] float Volume,[In] unsigned int OperationSet)</unmanaged>
<unmanaged-short>IXAudio2Voice::SetVolume</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.Voice.GetVolume(System.Single@)">
<summary>
<p>Sets the overall volume level for the voice.</p>
</summary>
<param name="volumeRef"><dd> <p>Overall volume level to use. See Remarks for more information on volume levels. </p> </dd></param>
<remarks>
<p><strong>SetVolume</strong> controls a voice's master input volume level. The master volume level is applied at different times depending on the type of voice. For submix and mastering voices the volume level is applied just before the voice's built in filter and effect chain is applied. For source voices the master volume level is applied after the voice's filter and effect chain is applied. </p><p>Volume levels are expressed as floating-point amplitude multipliers between -<see cref="F:SharpDX.XAudio2.XAudio2.MaximumVolumeLevel" /> and <see cref="F:SharpDX.XAudio2.XAudio2.MaximumVolumeLevel" /> (-2?? to 2??), with a maximum gain of 144.5 dB. A volume level of 1.0 means there is no attenuation or gain and 0 means silence. Negative levels can be used to invert the audio's phase. See XAudio2 Volume and Pitch Control for additional information on volume control. </p><strong>Note</strong>??<strong><see cref="M:SharpDX.XAudio2.Voice.GetVolume(System.Single@)" /></strong> always returns the volume most recently set by <strong><see cref="M:SharpDX.XAudio2.Voice.SetVolume(System.Single,System.Int32)" /></strong>. However, it may not actually be in effect yet: it only takes effect the next time the audio engine runs after the <strong><see cref="M:SharpDX.XAudio2.Voice.SetVolume(System.Single,System.Int32)" /></strong> call (or after the corresponding <strong><see cref="M:SharpDX.XAudio2.XAudio2.CommitChanges(System.Int32)" /></strong> call, if <strong><see cref="M:SharpDX.XAudio2.Voice.SetVolume(System.Single,System.Int32)" /></strong> was called with a deferred operation ID).?
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::GetVolume']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.setvolume</msdn-id>
<unmanaged>void IXAudio2Voice::GetVolume([Out] float* pVolume)</unmanaged>
<unmanaged-short>IXAudio2Voice::GetVolume</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.Voice.SetChannelVolumes(System.Int32,System.Single[],System.Int32)">
<summary>
<p>Sets the volume levels for the voice, per channel.</p>
</summary>
<param name="channels"><dd> <p>Number of channels in the voice.</p> </dd></param>
<param name="volumesRef"><dd> <p>Array containing the new volumes of each channel in the voice. The array must have <em>Channels</em> elements. See Remarks for more information on volume levels.</p> </dd></param>
<param name="operationSet"><dd> <p>Identifies this call as part of a deferred batch. See the XAudio2 Operation Sets overview for more information.</p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful, an error code otherwise. See <strong>XAudio2 Error Codes</strong> for descriptions of XAudio2 specific error codes.</p></returns>
<remarks>
<p><strong>SetChannelVolumes</strong> controls a voice's per-channel output levels and is applied just after the voice's final SRC and before its sends. </p><p>This method is valid only for source and submix voices, because mastering voices do not specify volume per channel. </p><p>Volume levels are expressed as floating-point amplitude multipliers between -<see cref="F:SharpDX.XAudio2.XAudio2.MaximumVolumeLevel" /> and <see cref="F:SharpDX.XAudio2.XAudio2.MaximumVolumeLevel" /> (-2?? to 2??), with a maximum gain of 144.5 dB. A volume of 1 means there is no attenuation or gain and 0 means silence. Negative levels can be used to invert the audio's phase. See XAudio2 Volume and Pitch Control for additional information on volume control. </p><strong>Note</strong>??<strong><see cref="M:SharpDX.XAudio2.Voice.GetChannelVolumes(System.Int32,System.Single[])" /></strong> always returns the volume levels most recently set by <strong><see cref="M:SharpDX.XAudio2.Voice.SetChannelVolumes(System.Int32,System.Single[],System.Int32)" /></strong>. However, those values may not actually be in effect yet: they only take effect the next time the audio engine runs after the <strong><see cref="M:SharpDX.XAudio2.Voice.SetChannelVolumes(System.Int32,System.Single[],System.Int32)" /></strong> call (or after the corresponding <strong><see cref="M:SharpDX.XAudio2.XAudio2.CommitChanges(System.Int32)" /></strong> call, if <strong><see cref="M:SharpDX.XAudio2.Voice.SetChannelVolumes(System.Int32,System.Single[],System.Int32)" /></strong> was called with a deferred operation ID).?
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::SetChannelVolumes']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.setchannelvolumes</msdn-id>
<unmanaged>HRESULT IXAudio2Voice::SetChannelVolumes([In] unsigned int Channels,[In, Buffer] const float* pVolumes,[In] unsigned int OperationSet)</unmanaged>
<unmanaged-short>IXAudio2Voice::SetChannelVolumes</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.Voice.GetChannelVolumes(System.Int32,System.Single[])">
<summary>
<p>Returns the volume levels for the voice, per channel.</p>
</summary>
<param name="channels"><dd> <p>Confirms the channel count of the voice.</p> </dd></param>
<param name="volumesRef"><dd> <p>Returns the current volume level of each channel in the voice. The array must have at least <em>Channels</em> elements. See Remarks for more information on volume levels.</p> </dd></param>
<remarks>
<p>These settings are applied after the effect chain is applied. This method is valid only for source and submix voices, because mastering voices do not specify volume per channel. </p><p>Volume levels are expressed as floating-point amplitude multipliers between -2?? to 2??, with a maximum gain of 144.5 dB. A volume of 1 means there is no attenuation or gain, 0 means silence, and negative levels can be used to invert the audio's phase. See XAudio2 Volume and Pitch Control for additional information on volume control. </p><strong>Note</strong>??<strong>GetChannelVolumes</strong> always returns the volume levels most recently set by <strong><see cref="M:SharpDX.XAudio2.Voice.SetChannelVolumes(System.Int32,System.Single[],System.Int32)" /></strong>. However, those values may not actually be in effect yet: they only take effect the next time the audio engine runs after the <strong><see cref="M:SharpDX.XAudio2.Voice.SetChannelVolumes(System.Int32,System.Single[],System.Int32)" /></strong> call (or after the corresponding <strong><see cref="M:SharpDX.XAudio2.XAudio2.CommitChanges(System.Int32)" /></strong> call, if <strong><see cref="M:SharpDX.XAudio2.Voice.SetChannelVolumes(System.Int32,System.Single[],System.Int32)" /></strong> was called with a deferred operation ID).?
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::GetChannelVolumes']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.getchannelvolumes</msdn-id>
<unmanaged>void IXAudio2Voice::GetChannelVolumes([In] unsigned int Channels,[Out, Buffer] float* pVolumes)</unmanaged>
<unmanaged-short>IXAudio2Voice::GetChannelVolumes</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.Voice.SetOutputMatrix(SharpDX.XAudio2.Voice,System.Int32,System.Int32,System.Single[],System.Int32)">
<summary>
<p>Sets the volume level of each channel of the final output for the voice. These channels are mapped to the input channels of a specified destination voice.</p>
</summary>
<param name="destinationVoiceRef"><dd> <p>Pointer to a destination <strong><see cref="T:SharpDX.XAudio2.Voice" /></strong> for which to set volume levels.</p> <strong>Note</strong>??If the voice sends to a single target voice then specifying <c>null</c> will cause <strong>SetOutputMatrix</strong> to operate on that target voice. ? </dd></param>
<param name="sourceChannels"><dd> <p>Confirms the output channel count of the voice. This is the number of channels that are produced by the last effect in the chain.</p> </dd></param>
<param name="destinationChannels"><dd> <p>Confirms the input channel count of the destination voice.</p> </dd></param>
<param name="levelMatrixRef"><dd> <p>Array of [<em>SourceChannels</em> ? <em>DestinationChannels</em>] volume levels sent to the destination voice. The level sent from source channel <em>S</em> to destination channel <em>D</em> is specified in the form <em>pLevelMatrix</em>[<em>SourceChannels</em> ? <em>D</em> + <em>S</em>]. </p> <p>For example, when rendering two-channel stereo input into 5.1 output that is weighted toward the front channels?but is absent from the center and low-frequency channels?the matrix might have the values shown in the following table. </p> <table> <tr><th>Output</th><th>Left Input [Array Index]</th><th>Right Input [Array Index]</th></tr> <tr><td>Left</td><td>1.0 [0]</td><td>0.0 [1]</td></tr> <tr><td>Right</td><td>0.0 [2]</td><td>1.0 [3]</td></tr> <tr><td>Front Center</td><td>0.0 [4]</td><td>0.0 [5]</td></tr> <tr><td>LFE</td><td>0.0 [6]</td><td>0.0 [7]</td></tr> <tr><td>Rear Left</td><td>0.8 [8]</td><td>0.0 [9]</td></tr> <tr><td>Rear Right</td><td>0.0 [10]</td><td>0.8 [11]</td></tr> </table> <p>?</p> <strong>Note</strong>??The left and right input are fully mapped to the output left and right channels; 80 percent of the left and right input is mapped to the rear left and right channels. ? <p>See Remarks for more information on volume levels.</p> </dd></param>
<param name="operationSet"><dd> <p>Identifies this call as part of a deferred batch. See the XAudio2 Operation Sets overview for more information.</p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful, an error code otherwise. See <strong>XAudio2 Error Codes</strong> for descriptions of error codes.</p></returns>
<remarks>
<p>This method is valid only for source and submix voices, because mastering voices write directly to the device with no matrix mixing. </p><p>Volume levels are expressed as floating-point amplitude multipliers between -<see cref="F:SharpDX.XAudio2.XAudio2.MaximumVolumeLevel" /> and <see cref="F:SharpDX.XAudio2.XAudio2.MaximumVolumeLevel" /> (-2?? to 2??), with a maximum gain of 144.5 dB. A volume level of 1.0 means there is no attenuation or gain and 0 means silence. Negative levels can be used to invert the audio's phase. See XAudio2 Volume and Pitch Control for additional information on volume control. </p><p>The X3DAudio function <strong>X3DAudioCalculate</strong> can produce an output matrix for use with <strong>SetOutputMatrix</strong> based on a sound's position and a listener's position.</p><strong>Note</strong>??<strong><see cref="M:SharpDX.XAudio2.Voice.GetOutputMatrix(SharpDX.XAudio2.Voice,System.Int32,System.Int32,System.Single[])" /></strong> always returns the levels most recently set by <strong><see cref="M:SharpDX.XAudio2.Voice.SetOutputMatrix(SharpDX.XAudio2.Voice,System.Int32,System.Int32,System.Single[],System.Int32)" /></strong>. However, they may not actually be in effect yet: they only take effect the next time the audio engine runs after the <strong><see cref="M:SharpDX.XAudio2.Voice.SetOutputMatrix(SharpDX.XAudio2.Voice,System.Int32,System.Int32,System.Single[],System.Int32)" /></strong> call (or after the corresponding <strong><see cref="M:SharpDX.XAudio2.XAudio2.CommitChanges(System.Int32)" /></strong> call, if <strong><see cref="M:SharpDX.XAudio2.Voice.SetOutputMatrix(SharpDX.XAudio2.Voice,System.Int32,System.Int32,System.Single[],System.Int32)" /></strong> was called with a deferred operation ID).?
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::SetOutputMatrix']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.setoutputmatrix</msdn-id>
<unmanaged>HRESULT IXAudio2Voice::SetOutputMatrix([In, Optional] IXAudio2Voice* pDestinationVoice,[In] unsigned int SourceChannels,[In] unsigned int DestinationChannels,[In, Buffer] const float* pLevelMatrix,[In] unsigned int OperationSet)</unmanaged>
<unmanaged-short>IXAudio2Voice::SetOutputMatrix</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.Voice.GetOutputMatrix(SharpDX.XAudio2.Voice,System.Int32,System.Int32,System.Single[])">
<summary>
<p>Gets the volume level of each channel of the final output for the voice. These channels are mapped to the input channels of a specified destination voice.</p>
</summary>
<param name="destinationVoiceRef"><dd> <p>Pointer specifying the destination <strong><see cref="T:SharpDX.XAudio2.Voice" /></strong> to retrieve the output matrix for.</p> <strong>Note</strong>??If the voice sends to a single target voice then specifying <c>null</c> will cause <strong>GetOutputMatrix</strong> to operate on that target voice. ? </dd></param>
<param name="sourceChannels"><dd> <p>Confirms the output channel count of the voice. This is the number of channels that are produced by the last effect in the chain.</p> </dd></param>
<param name="destinationChannels"><dd> <p>Confirms the input channel count of the destination voice.</p> </dd></param>
<param name="levelMatrixRef"><dd> <p>Array of [<em>SourceChannels</em> * <em>DestinationChannels</em>] volume levels sent to the destination voice. The level sent from source channel S to destination channel D is returned in the form <em>pLevelMatrix</em>[<em>DestinationChannels</em> ? S + D]. See Remarks for more information on volume levels.</p> </dd></param>
<remarks>
<p>This method applies only to source and submix voices, because mastering voices write directly to the device with no matrix mixing. Volume levels are expressed as floating-point amplitude multipliers between -2?? to 2??, with a maximum gain of 144.5 dB. A volume level of 1 means there is no attenuation or gain and 0 means silence. Negative levels can be used to invert the audio's phase. See XAudio2 Volume and Pitch Control for additional information on volume control. </p><p>See <strong><see cref="T:SharpDX.Multimedia.WaveFormatExtensible" /></strong> for information on standard channel ordering. </p><strong>Note</strong>??<strong>GetOutputMatrix</strong> always returns the levels most recently set by <strong><see cref="M:SharpDX.XAudio2.Voice.SetOutputMatrix(SharpDX.XAudio2.Voice,System.Int32,System.Int32,System.Single[],System.Int32)" /></strong>. However, they may not actually be in effect yet: they only take effect the next time the audio engine runs after the <strong><see cref="M:SharpDX.XAudio2.Voice.SetOutputMatrix(SharpDX.XAudio2.Voice,System.Int32,System.Int32,System.Single[],System.Int32)" /></strong> call (or after the corresponding <strong><see cref="M:SharpDX.XAudio2.XAudio2.CommitChanges(System.Int32)" /></strong> call, if <strong><see cref="M:SharpDX.XAudio2.Voice.SetOutputMatrix(SharpDX.XAudio2.Voice,System.Int32,System.Int32,System.Single[],System.Int32)" /></strong> was called with a deferred operation ID).?
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::GetOutputMatrix']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.getoutputmatrix</msdn-id>
<unmanaged>void IXAudio2Voice::GetOutputMatrix([In, Optional] IXAudio2Voice* pDestinationVoice,[In] unsigned int SourceChannels,[In] unsigned int DestinationChannels,[Out, Buffer] float* pLevelMatrix)</unmanaged>
<unmanaged-short>IXAudio2Voice::GetOutputMatrix</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.Voice.DestroyVoice">
<summary>
<p>Destroys the voice. If necessary, stops the voice and removes it from the XAudio2 graph.</p>
</summary>
<remarks>
<p>If any other voice is currently sending audio to this voice, the method fails. </p><p><strong>DestroyVoice</strong> waits for the audio processing thread to be idle, so it can take a little while (typically no more than a couple of milliseconds). This is necessary to guarantee that the voice will no longer make any callbacks or read any audio data, so the application can safely free up these resources as soon as the call returns. </p><p>To avoid title thread interruptions from a blocking <strong>DestroyVoice</strong> call, the application can destroy voices on a separate non-critical thread, or the application can use voice pooling strategies to reuse voices rather than destroying them. Note that voices can only be reused with audio that has the same data format and the same number of channels the voice was created with. A voice can play audio data with different sample rates than that of the voice by calling <strong><see cref="M:SharpDX.XAudio2.SourceVoice.SetFrequencyRatio(System.Single,System.Int32)" /></strong> with an appropriate ratio parameter. </p><p>It is invalid to call <strong>DestroyVoice</strong> from within a callback (that is, <strong><see cref="T:SharpDX.XAudio2.EngineCallback" /></strong> or <strong><see cref="T:SharpDX.XAudio2.VoiceCallback" /></strong>).</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::DestroyVoice']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.destroyvoice</msdn-id>
<unmanaged>void IXAudio2Voice::DestroyVoice()</unmanaged>
<unmanaged-short>IXAudio2Voice::DestroyVoice</unmanaged-short>
</member>
<member name="P:SharpDX.XAudio2.Voice.VoiceDetails">
<summary>
<p>Returns information about the creation flags, input channels, and sample rate of a voice.</p>
</summary>
<!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2Voice::GetVoiceDetails']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voice.ixaudio2voice.getvoicedetails</msdn-id>
<unmanaged>GetVoiceDetails</unmanaged>
<unmanaged-short>GetVoiceDetails</unmanaged-short>
<unmanaged>void IXAudio2Voice::GetVoiceDetails([Out] XAUDIO2_VOICE_DETAILS* pVoiceDetails)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.Voice.EnableEffect(System.Int32)">
<summary>
Enables the effect at a given position in the effect chain of the voice.
</summary>
<param name="effectIndex">[in] Zero-based index of an effect in the effect chain of the voice. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2Voice::EnableEffect([None] UINT32 EffectIndex,[None] UINT32 OperationSet)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.Voice.DisableEffect(System.Int32)">
<summary>
Disables the effect at a given position in the effect chain of the voice.
</summary>
<param name="effectIndex">[in] Zero-based index of an effect in the effect chain of the voice. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2Voice::DisableEffect([None] UINT32 EffectIndex,[None] UINT32 OperationSet)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.Voice.GetEffectParameters``1(System.Int32)">
<summary>
Sets parameters for a given effect in the voice's effect chain.
</summary>
<param name="effectIndex">[in] Zero-based index of an effect within the voice's effect chain. </param>
<returns>Returns the current values of the effect-specific parameters.</returns>
<unmanaged>HRESULT IXAudio2Voice::SetEffectParameters([None] UINT32 EffectIndex,[In, Buffer] const void* pParameters,[None] UINT32 ParametersByteSize,[None] UINT32 OperationSet)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.Voice.GetEffectParameters(System.Int32,System.Byte[])">
<summary>
Returns the current effect-specific parameters of a given effect in the voice's effect chain.
</summary>
<param name="effectIndex">[in] Zero-based index of an effect within the voice's effect chain. </param>
<param name="effectParameters">[out] Returns the current values of the effect-specific parameters. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2Voice::GetEffectParameters([None] UINT32 EffectIndex,[Out, Buffer] void* pParameters,[None] UINT32 ParametersByteSize)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.Voice.SetEffectParameters(System.Int32,System.Byte[])">
<summary>
Sets parameters for a given effect in the voice's effect chain.
</summary>
<param name="effectIndex">[in] Zero-based index of an effect within the voice's effect chain. </param>
<param name="effectParameter">[in] Returns the current values of the effect-specific parameters. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2Voice::SetEffectParameters([None] UINT32 EffectIndex,[In, Buffer] const void* pParameters,[None] UINT32 ParametersByteSize,[None] UINT32 OperationSet)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.Voice.SetEffectParameters(System.Int32,System.Byte[],System.Int32)">
<summary>
Sets parameters for a given effect in the voice's effect chain.
</summary>
<param name="effectIndex">[in] Zero-based index of an effect within the voice's effect chain. </param>
<param name="effectParameter">[in] Returns the current values of the effect-specific parameters. </param>
<param name="operationSet">[in] Identifies this call as part of a deferred batch. See the {{XAudio2 Operation Sets}} overview for more information. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2Voice::SetEffectParameters([None] UINT32 EffectIndex,[In, Buffer] const void* pParameters,[None] UINT32 ParametersByteSize,[None] UINT32 OperationSet)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.Voice.SetEffectParameters``1(System.Int32,``0)">
<summary>
Sets parameters for a given effect in the voice's effect chain.
</summary>
<param name="effectIndex">[in] Zero-based index of an effect within the voice's effect chain. </param>
<param name="effectParameter">[in] Returns the current values of the effect-specific parameters. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2Voice::SetEffectParameters([None] UINT32 EffectIndex,[In, Buffer] const void* pParameters,[None] UINT32 ParametersByteSize,[None] UINT32 OperationSet)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.Voice.SetEffectParameters``1(System.Int32,``0,System.Int32)">
<summary>
Sets parameters for a given effect in the voice's effect chain.
</summary>
<param name="effectIndex">[in] Zero-based index of an effect within the voice's effect chain. </param>
<param name="effectParameter">[in] Returns the current values of the effect-specific parameters. </param>
<param name="operationSet">[in] Identifies this call as part of a deferred batch. See the {{XAudio2 Operation Sets}} overview for more information. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2Voice::SetEffectParameters([None] UINT32 EffectIndex,[In, Buffer] const void* pParameters,[None] UINT32 ParametersByteSize,[None] UINT32 OperationSet)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.Voice.SetEffectChain(SharpDX.XAudio2.EffectDescriptor[])">
<summary>
Replaces the effect chain of the voice.
</summary>
<param name="effectDescriptors">[in, optional] an array of <see cref="T:SharpDX.XAudio2.EffectDescriptor"/> structure that describes the new effect chain to use. If NULL is passed, the current effect chain is removed. If array is non null, its length must be at least of 1. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2Voice::SetEffectChain([In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.Voice.SetOutputVoices(SharpDX.XAudio2.VoiceSendDescriptor[])">
<summary>
Designates a new set of submix or mastering voices to receive the output of the voice.
</summary>
<param name="outputVoices">[in] Array of <see cref="T:SharpDX.XAudio2.VoiceSendDescriptor"/> structure pointers to destination voices. If outputVoices is NULL, the voice will send its output to the current mastering voice. To set the voice to not send its output anywhere set an array of length 0. All of the voices in a send list must have the same input sample rate, see {{XAudio2 Sample Rate Conversions}} for additional information. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2Voice::SetOutputVoices([In, Optional] const XAUDIO2_VOICE_SENDS* pSendList)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.Voice.SetOutputMatrix(System.Int32,System.Int32,System.Single[])">
<summary>
Sets the volume level of each channel of the final output for the voice. These channels are mapped to the input channels of a specified destination voice.
</summary>
<param name="sourceChannels">[in] Confirms the output channel count of the voice. This is the number of channels that are produced by the last effect in the chain. </param>
<param name="destinationChannels">[in] Confirms the input channel count of the destination voice. </param>
<param name="levelMatrixRef">[in] Array of [SourceChannels ? DestinationChannels] volume levels sent to the destination voice. The level sent from source channel S to destination channel D is specified in the form pLevelMatrix[SourceChannels ? D + S]. For example, when rendering two-channel stereo input into 5.1 output that is weighted toward the front channels?but is absent from the center and low-frequency channels?the matrix might have the values shown in the following table. OutputLeft InputRight Input Left1.00.0 Right0.01.0 Front Center0.00.0 LFE0.00.0 Rear Left0.80.0 Rear Right0.00.8 Note that the left and right input are fully mapped to the output left and right channels; 80 percent of the left and right input is mapped to the rear left and right channels. See Remarks for more information on volume levels. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2Voice::SetOutputMatrix([In, Optional] IXAudio2Voice* pDestinationVoice,[None] UINT32 SourceChannels,[None] UINT32 DestinationChannels,[In, Buffer] const float* pLevelMatrix,[None] UINT32 OperationSet)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.Voice.SetOutputMatrix(SharpDX.XAudio2.Voice,System.Int32,System.Int32,System.Single[])">
<summary>
Sets the volume level of each channel of the final output for the voice. These channels are mapped to the input channels of a specified destination voice.
</summary>
<param name="destinationVoiceRef">[in] Pointer to a destination <see cref="T:SharpDX.XAudio2.Voice"/> for which to set volume levels. Note If the voice sends to a single target voice then specifying NULL will cause SetOutputMatrix to operate on that target voice. </param>
<param name="sourceChannels">[in] Confirms the output channel count of the voice. This is the number of channels that are produced by the last effect in the chain. </param>
<param name="destinationChannels">[in] Confirms the input channel count of the destination voice. </param>
<param name="levelMatrixRef">[in] Array of [SourceChannels ? DestinationChannels] volume levels sent to the destination voice. The level sent from source channel S to destination channel D is specified in the form pLevelMatrix[SourceChannels ? D + S]. For example, when rendering two-channel stereo input into 5.1 output that is weighted toward the front channels?but is absent from the center and low-frequency channels?the matrix might have the values shown in the following table. OutputLeft InputRight Input Left1.00.0 Right0.01.0 Front Center0.00.0 LFE0.00.0 Rear Left0.80.0 Rear Right0.00.8 Note that the left and right input are fully mapped to the output left and right channels; 80 percent of the left and right input is mapped to the rear left and right channels. See Remarks for more information on volume levels. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2Voice::SetOutputMatrix([In, Optional] IXAudio2Voice* pDestinationVoice,[None] UINT32 SourceChannels,[None] UINT32 DestinationChannels,[In, Buffer] const float* pLevelMatrix,[None] UINT32 OperationSet)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.Voice.SetOutputMatrix(System.Int32,System.Int32,System.Single[],System.Int32)">
<summary>
Sets the volume level of each channel of the final output for the voice. These channels are mapped to the input channels of a specified destination voice.
</summary>
<param name="sourceChannels">[in] Confirms the output channel count of the voice. This is the number of channels that are produced by the last effect in the chain. </param>
<param name="destinationChannels">[in] Confirms the input channel count of the destination voice. </param>
<param name="levelMatrixRef">[in] Array of [SourceChannels ? DestinationChannels] volume levels sent to the destination voice. The level sent from source channel S to destination channel D is specified in the form pLevelMatrix[SourceChannels ? D + S]. For example, when rendering two-channel stereo input into 5.1 output that is weighted toward the front channels?but is absent from the center and low-frequency channels?the matrix might have the values shown in the following table. OutputLeft InputRight Input Left1.00.0 Right0.01.0 Front Center0.00.0 LFE0.00.0 Rear Left0.80.0 Rear Right0.00.8 Note that the left and right input are fully mapped to the output left and right channels; 80 percent of the left and right input is mapped to the rear left and right channels. See Remarks for more information on volume levels. </param>
<param name="operationSet">[in] Identifies this call as part of a deferred batch. See the {{XAudio2 Operation Sets}} overview for more information. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAudio2Voice::SetOutputMatrix([In, Optional] IXAudio2Voice* pDestinationVoice,[None] UINT32 SourceChannels,[None] UINT32 DestinationChannels,[In, Buffer] const float* pLevelMatrix,[None] UINT32 OperationSet)</unmanaged>
</member>
<member name="T:SharpDX.XAudio2.VoiceCallback">
<summary>
<p>The <strong><see cref="T:SharpDX.XAudio2.VoiceCallback" /></strong> interface contains methods that notify the client when certain events happen in a given <strong><see cref="T:SharpDX.XAudio2.SourceVoice" /></strong>. </p><p>This interface should be implemented by the XAudio2 client. XAudio2 calls these methods through an interface reference provided by the client in the <strong><see cref="M:SharpDX.XAudio2.XAudio2.CreateSourceVoice_(SharpDX.XAudio2.SourceVoice,System.IntPtr,SharpDX.XAudio2.VoiceFlags,System.Single,System.IntPtr,System.Nullable{SharpDX.XAudio2.VoiceSendDescriptors},System.Nullable{SharpDX.XAudio2.EffectChain})" /></strong> method. Methods in this interface return void, rather than an <see cref="T:SharpDX.Result" />.
</p><p>See the XAudio2 Callbacks topic for restrictions on callback implementation.</p><ul> <li>Methods</li> </ul>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2VoiceCallback']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2voicecallback.ixaudio2voicecallback</msdn-id>
<unmanaged>IXAudio2VoiceCallback</unmanaged>
<unmanaged-short>IXAudio2VoiceCallback</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.VoiceCallback.OnVoiceProcessingPassStart(System.Int32)">
<summary>
Called during each processing pass for each voice, just before XAudio2 reads data from the voice's buffer queue.
</summary>
<param name="bytesRequired"> The number of bytes that must be submitted immediately to avoid starvation. This allows the implementation of just-in-time streaming scenarios; the client can keep the absolute minimum data queued on the voice at all times, and pass it fresh data just before the data is required. This model provides the lowest possible latency attainable with XAudio2. For xWMA and XMA data BytesRequired will always be zero, since the concept of a frame of xWMA or XMA data is meaningless. Note In a situation where there is always plenty of data available on the source voice, BytesRequired should always report zero, because it doesn't need any samples immediately to avoid glitching. </param>
<unmanaged>void IXAudio2VoiceCallback::OnVoiceProcessingPassStart([None] UINT32 BytesRequired)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.VoiceCallback.OnVoiceProcessingPassEnd">
<summary>
Called just after the processing pass for the voice ends.
</summary>
<unmanaged>void IXAudio2VoiceCallback::OnVoiceProcessingPassEnd()</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.VoiceCallback.OnStreamEnd">
<summary>
Called when the voice has just finished playing a contiguous audio stream.
</summary>
<unmanaged>void IXAudio2VoiceCallback::OnStreamEnd()</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.VoiceCallback.OnBufferStart(System.IntPtr)">
<summary>
Called when the voice is about to start processing a new audio buffer.
</summary>
<param name="context"> Context pointer that was assigned to the pContext member of the <see cref="T:SharpDX.XAudio2.AudioBuffer"/> structure when the buffer was submitted. </param>
<unmanaged>void IXAudio2VoiceCallback::OnBufferStart([None] void* pBufferContext)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.VoiceCallback.OnBufferEnd(System.IntPtr)">
<summary>
Called when the voice finishes processing a buffer.
</summary>
<param name="context"> Context pointer assigned to the pContext member of the <see cref="T:SharpDX.XAudio2.AudioBuffer"/> structure when the buffer was submitted. </param>
<unmanaged>void IXAudio2VoiceCallback::OnBufferEnd([None] void* pBufferContext)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.VoiceCallback.OnLoopEnd(System.IntPtr)">
<summary>
Called when the voice reaches the end position of a loop.
</summary>
<param name="context"> Context pointer that was assigned to the pContext member of the <see cref="T:SharpDX.XAudio2.AudioBuffer"/> structure when the buffer was submitted. </param>
<unmanaged>void IXAudio2VoiceCallback::OnLoopEnd([None] void* pBufferContext)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.VoiceCallback.OnVoiceError(System.IntPtr,SharpDX.Result)">
<summary>
Called when a critical error occurs during voice processing.
</summary>
<param name="context"> Context pointer that was assigned to the pContext member of the <see cref="T:SharpDX.XAudio2.AudioBuffer"/> structure when the buffer was submitted. </param>
<param name="error"> The HRESULT code of the error encountered. </param>
<unmanaged>void IXAudio2VoiceCallback::OnVoiceError([None] void* pBufferContext,[None] HRESULT Error)</unmanaged>
</member>
<member name="T:SharpDX.XAudio2.XAudio2">
<summary>
<p><see cref="T:SharpDX.XAudio2.XAudio2" /> is the interface for the XAudio2 object that manages all audio engine states, the audio processing thread, the voice graph, and so forth. </p><p>This is the only XAudio2 interface that is derived from the COM <strong><see cref="T:SharpDX.ComObject" /></strong> interface. It controls the lifetime of the XAudio2 object using two methods derived from <strong><see cref="T:SharpDX.ComObject" /></strong>: <strong>IXAudio2::AddRef</strong> and <strong>IXAudio2::Release</strong>. No other XAudio2 objects are reference-counted; their lifetimes are explicitly controlled using <em>create</em> and <em>destroy</em> calls, and are bounded by the lifetime of the XAudio2 object that owns them.</p>
</summary>
<remarks>
<p>The DirectX SDK versions of XAUDIO2 included three member functions that are not present in the Windows 8 version: <strong>GetDeviceCount</strong>, <strong>GetDeviceDetails</strong>, and <strong>Initialize</strong>. These enumeration methods are no longer provided and standard Windows Audio APIs should be used for device enumeration instead.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2.ixaudio2</msdn-id>
<unmanaged>IXAudio2</unmanaged>
<unmanaged-short>IXAudio2</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAudio2.XAudio2"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.op_Explicit(System.IntPtr)~SharpDX.XAudio2.XAudio2">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.XAudio2.XAudio2"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="F:SharpDX.XAudio2.XAudio2.MaximumBufferBytes">
<summary>Constant MaximumBufferBytes.</summary>
<unmanaged>XAUDIO2_MAX_BUFFER_BYTES</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.XAudio2.MaximumQueuedBuffers">
<summary>Constant MaximumQueuedBuffers.</summary>
<unmanaged>XAUDIO2_MAX_QUEUED_BUFFERS</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.XAudio2.MaximumAudioChannels">
<summary>Constant MaximumAudioChannels.</summary>
<unmanaged>XAUDIO2_MAX_AUDIO_CHANNELS</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.XAudio2.MinimumSampleRate">
<summary>Constant MinimumSampleRate.</summary>
<unmanaged>XAUDIO2_MIN_SAMPLE_RATE</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.XAudio2.MaximumSampleRate">
<summary>Constant MaximumSampleRate.</summary>
<unmanaged>XAUDIO2_MAX_SAMPLE_RATE</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.XAudio2.MaximumVolumeLevel">
<summary>Constant MaximumVolumeLevel.</summary>
<unmanaged>XAUDIO2_MAX_VOLUME_LEVEL</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.XAudio2.MinimumFrequencyRatio">
<summary>Constant MinimumFrequencyRatio.</summary>
<unmanaged>XAUDIO2_MIN_FREQ_RATIO</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.XAudio2.MaximumFrequencyRatio">
<summary>Constant MaximumFrequencyRatio.</summary>
<unmanaged>XAUDIO2_MAX_FREQ_RATIO</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.XAudio2.DefaultFrequencyRatio">
<summary>Constant DefaultFrequencyRatio.</summary>
<unmanaged>XAUDIO2_DEFAULT_FREQ_RATIO</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.XAudio2.MaximumFilterOneOverQ">
<summary>Constant MaximumFilterOneOverQ.</summary>
<unmanaged>XAUDIO2_MAX_FILTER_ONEOVERQ</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.XAudio2.MaximumFilterFrequency">
<summary>Constant MaximumFilterFrequency.</summary>
<unmanaged>XAUDIO2_MAX_FILTER_FREQUENCY</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.XAudio2.MaximumLoopCount">
<summary>Constant MaximumLoopCount.</summary>
<unmanaged>XAUDIO2_MAX_LOOP_COUNT</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.XAudio2.CommitNow">
<summary>Constant CommitNow.</summary>
<unmanaged>XAUDIO2_COMMIT_NOW</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.XAudio2.CommitAll">
<summary>Constant CommitAll.</summary>
<unmanaged>XAUDIO2_COMMIT_ALL</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.XAudio2.NoLoopRegion">
<summary>Constant NoLoopRegion.</summary>
<unmanaged>XAUDIO2_NO_LOOP_REGION</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.XAudio2.DefaultChannels">
<summary>Constant DefaultChannels.</summary>
<unmanaged>XAUDIO2_DEFAULT_CHANNELS</unmanaged>
</member>
<member name="F:SharpDX.XAudio2.XAudio2.DefaultSampleRate">
<summary>Constant DefaultSampleRate.</summary>
<unmanaged>XAUDIO2_DEFAULT_SAMPLERATE</unmanaged>
</member>
<member name="P:SharpDX.XAudio2.XAudio2.PerformanceData">
<summary>
<p>Returns current resource usage details, such as available memory or CPU usage.</p>
</summary>
<remarks>
<p>For specific information on the statistics returned by <strong>GetPerformanceData</strong>, see the <strong><see cref="T:SharpDX.XAudio2.PerformanceData" /></strong> structure reference. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2::GetPerformanceData']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2.ixaudio2.getperformancedata</msdn-id>
<unmanaged>GetPerformanceData</unmanaged>
<unmanaged-short>GetPerformanceData</unmanaged-short>
<unmanaged>void IXAudio2::GetPerformanceData([Out] XAUDIO2_PERFORMANCE_DATA* pPerfData)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.RegisterForCallbacks_(System.IntPtr)">
<summary>
<p>Adds an <strong><see cref="T:SharpDX.XAudio2.EngineCallback" /></strong> reference to the <strong>XAudio2</strong> engine callback list.</p>
</summary>
<param name="callbackRef">No documentation.</param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful, an error code otherwise. See <strong>XAudio2 Error Codes</strong> for descriptions of XAudio2 specific error codes.</p></returns>
<remarks>
<p>This method can be called multiple times, allowing different components or layers of the same application to manage their own engine callback implementations separately. </p><p>It is invalid to call <strong>RegisterForCallbacks</strong> from within a callback (that is, <strong><see cref="T:SharpDX.XAudio2.EngineCallback" /></strong> or <strong><see cref="T:SharpDX.XAudio2.VoiceCallback" /></strong>). If <strong>RegisterForCallbacks</strong> is called within a callback, it returns <see cref="F:SharpDX.XAudio2.ResultCode.InvalidCall" />. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2::RegisterForCallbacks']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2.ixaudio2.registerforcallbacks</msdn-id>
<unmanaged>HRESULT IXAudio2::RegisterForCallbacks([In] IXAudio2EngineCallback* pCallback)</unmanaged>
<unmanaged-short>IXAudio2::RegisterForCallbacks</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.UnregisterForCallbacks_(System.IntPtr)">
<summary>
<p>Removes an <strong><see cref="T:SharpDX.XAudio2.EngineCallback" /></strong> reference from the <strong>XAudio2</strong> engine callback list.</p>
</summary>
<param name="callbackRef">No documentation.</param>
<remarks>
<p>It is invalid to call <strong>UnregisterForCallbacks</strong> from within a callback (that is, <strong><see cref="T:SharpDX.XAudio2.EngineCallback" /></strong> or <strong><see cref="T:SharpDX.XAudio2.VoiceCallback" /></strong>). </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2::UnregisterForCallbacks']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2.ixaudio2.unregisterforcallbacks</msdn-id>
<unmanaged>void IXAudio2::UnregisterForCallbacks([In] IXAudio2EngineCallback* pCallback)</unmanaged>
<unmanaged-short>IXAudio2::UnregisterForCallbacks</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.CreateSourceVoice_(SharpDX.XAudio2.SourceVoice,System.IntPtr,SharpDX.XAudio2.VoiceFlags,System.Single,System.IntPtr,System.Nullable{SharpDX.XAudio2.VoiceSendDescriptors},System.Nullable{SharpDX.XAudio2.EffectChain})">
<summary>
<p>Creates and configures a source voice.</p>
</summary>
<param name="sourceVoiceOut"><dd> <p>If successful, returns a reference to the new <strong><see cref="T:SharpDX.XAudio2.SourceVoice" /></strong> object.</p> </dd></param>
<param name="sourceFormatRef"><dd> <p>Pointer to a one of the structures in the table below. This structure contains the expected format for all audio buffers submitted to the source voice. XAudio2 supports PCM and ADPCM voice types. </p> <table> <tr><th>Format tag</th><th>Wave format structure</th><th>Size (in bytes)</th></tr> <tr><td><see cref="F:SharpDX.Multimedia.WaveFormatEncoding.Pcm" /> (0x0001) </td><td> <strong>PCMWAVEFORMAT</strong> </td><td>16</td></tr> <tr><td>-or-</td><td> <strong><see cref="T:SharpDX.Multimedia.WaveFormat" /></strong> </td><td>18</td></tr> <tr><td><see cref="F:SharpDX.Multimedia.WaveFormatEncoding.IeeeFloat" /> (0x0003) [32-bit]</td><td> <strong>PCMWAVEFORMAT</strong> </td><td>18</td></tr> <tr><td><see cref="F:SharpDX.Multimedia.WaveFormatEncoding.Adpcm" /> (0x0002) [MS-ADPCM]</td><td> <strong>ADPCMWAVEFORMAT</strong> </td><td>50</td></tr> <tr><td><see cref="F:SharpDX.Multimedia.WaveFormatEncoding.Extensible" /> (0xFFFE)</td><td> <strong><see cref="T:SharpDX.Multimedia.WaveFormatExtensible" /></strong> </td><td>40</td></tr> </table> <p>?</p> <p>XAudio2 supports the following PCM formats.</p> <ul> <li>8-bit (unsigned) integer PCM </li> <li>16-bit integer PCM (optimal format for XAudio2) </li> <li>20-bit integer PCM (either in 24 or 32 bit containers) </li> <li>24-bit integer PCM (either in 24 or 32 bit containers) </li> <li>32-bit integer PCM </li> <li>32-bit float PCM (preferred format after 16-bit integer)</li> </ul> <p>The number of channels in a source voice must be less than or equal to <see cref="F:SharpDX.XAudio2.XAudio2.MaximumAudioChannels" />. The sample rate of a source voice must be between <see cref="F:SharpDX.XAudio2.XAudio2.MinimumSampleRate" /> and <see cref="F:SharpDX.XAudio2.XAudio2.MaximumSampleRate" />.</p> <strong>Note</strong>??PCM data formats such as <strong>PCMWAVEFORMAT</strong> and <strong>ADPCMWAVEFORMAT</strong> that require more information than provided by <strong><see cref="T:SharpDX.Multimedia.WaveFormat" /></strong> have a <strong><see cref="T:SharpDX.Multimedia.WaveFormat" /></strong> structure as the first member in their format structures. When you create a source voice with one of those formats, cast the format's structure as a <strong><see cref="T:SharpDX.Multimedia.WaveFormat" /></strong> structure and use it as the value for <em>pSourceFormat</em>. ? </dd></param>
<param name="flags"><dd> <p>Flags that specify the behavior of the source voice. A flag can be 0 or a combination of one or more of the following:</p> <table> <tr><th>Value</th><th>Description</th></tr> <tr><td><see cref="F:SharpDX.XAudio2.VoiceFlags.NoPitch" /></td><td>No pitch control is available on the voice.?</td></tr> <tr><td><see cref="F:SharpDX.XAudio2.VoiceFlags.NoSampleRateConversion" /></td><td>No sample rate conversion is available on the voice. The voice's outputs must have the same sample rate.<strong>Note</strong>??The <see cref="F:SharpDX.XAudio2.VoiceFlags.NoSampleRateConversion" /> flag causes the voice to behave as though the <see cref="F:SharpDX.XAudio2.VoiceFlags.NoPitch" /> flag also is specified. ? </td></tr> <tr><td><see cref="F:SharpDX.XAudio2.VoiceFlags.UseFilter" /></td><td>The filter effect should be available on this voice.?</td></tr> </table> <p>?</p> <strong>Note</strong>??The XAUDIO2_VOICE_MUSIC flag is not supported on Windows. ? </dd></param>
<param name="maxFrequencyRatio"><dd> <p>Highest allowable frequency ratio that can be set on this voice. The value for this argument must be between <see cref="F:SharpDX.XAudio2.XAudio2.MinimumFrequencyRatio" /> and <see cref="F:SharpDX.XAudio2.XAudio2.MaximumFrequencyRatio" />. Subsequent calls to <strong><see cref="M:SharpDX.XAudio2.SourceVoice.SetFrequencyRatio(System.Single,System.Int32)" /></strong> are clamped between <see cref="F:SharpDX.XAudio2.XAudio2.MinimumFrequencyRatio" /> and <strong>MaxFrequencyRatio</strong>. The maximum value for this argument is defined as <see cref="F:SharpDX.XAudio2.XAudio2.MaximumFrequencyRatio" />, which allows pitch to be raised by up to 10 octaves. </p> <p>If <em>MaxFrequencyRatio</em> is less than 1.0, the voice will use that ratio immediately after being created (rather than the default of 1.0). </p> <p> </p><table> <tr><th>Xbox 360</th></tr> <tr><td>For XMA voices, there is one more restriction on the <em>MaxFrequencyRatio</em> argument and the voice's sample rate. The product of these two numbers cannot exceed XAUDIO2_MAX_RATIO_TIMES_RATE_XMA_MONO for one-channel voices or XAUDIO2_MAX_RATIO_TIMES_RATE_XMA_MULTICHANNEL for voices with any other number of channels. If the value specified for <em>MaxFrequencyRatio</em> is too high for the specified format, the call to <strong>CreateSourceVoice</strong> fails and produces a debug message.</td></tr> </table> <p>?</p> <strong>Note</strong>??You can use the lowest possible <em>MaxFrequencyRatio</em> value to reduce XAudio2's memory usage. ? </dd></param>
<param name="callbackRef"><dd> <p>Pointer to a client-provided callback interface, <strong><see cref="T:SharpDX.XAudio2.VoiceCallback" /></strong>.</p> </dd></param>
<param name="sendListRef"><dd> <p>Pointer to a list of <strong><see cref="T:SharpDX.XAudio2.VoiceSendDescriptors" /></strong> structures that describe the set of destination voices for the source voice. If pSendList is <c>null</c>, the send list defaults to a single output to the first mastering voice created.</p> </dd></param>
<param name="effectChainRef"><dd> <p>Pointer to a list of <strong><see cref="T:SharpDX.XAudio2.EffectChain" /></strong> structures that describe an effect chain to use in the source voice.</p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful; otherwise, an error code. </p><p>See <strong>XAudio2 Error Codes</strong> for descriptions of XAudio2-specific error codes.</p></returns>
<remarks>
<p>Source voices read audio data from the client. They process the data and send it to the XAudio2 processing graph. </p><p>A source voice includes a variable-rate sample rate conversion, to convert data from the source format sample rate to the output rate required for the voice send list. If you use a <c>null</c> send list, the target sample rate will be the mastering voice's input sample rate. If you provide a single voice in pSendList, that voice's input sample rate is the target rate. If you provide multiple voices in the pSendList, all the source voice's output voices must be running at the same input sample rate. </p><p>You cannot create any source or submix voices until a mastering voice exists, and you cannot destory a mastering voice if any source or submix voices still exist. </p><p>Source voices are always processed before any submix or mastering voices. This means that you do not need a ProcessingStage parameter to control the processing order. </p><p>When first created, source voices are in the stopped state. </p><p>XAudio2 uses an internal memory pooler for voices with the same format. This means memory allocation for voices will occur less frequently as more voices are created and then destroyed. To minimize just-in-time allocations, a title can create the anticipated maximum number of voices needed up front, and then delete them as necessary. Voices will then be reused from the XAudio2 pool. The memory pool is tied to an XAudio2 engine instance. You can reclaim all the memory used by an instance of the XAudio2 engine by destroying the XAudio2 object and recreating it as necessary (forcing the memory pool to grow via preallocation would have to be reapplied as needed). </p><p>It is invalid to call <strong>CreateSourceVoice</strong> from within a callback (that is, <strong><see cref="T:SharpDX.XAudio2.EngineCallback" /></strong> or <strong><see cref="T:SharpDX.XAudio2.VoiceCallback" /></strong>). If you call <strong>CreateSourceVoice</strong> within a callback, it returns <see cref="F:SharpDX.XAudio2.ResultCode.InvalidCall" />. </p><p>The <strong><see cref="T:SharpDX.XAudio2.EffectChain" /></strong> that is passed in as the pEffectChain argument and any <strong><see cref="T:SharpDX.XAudio2.EffectDescriptor" /></strong> information contained within it are no longer needed after <strong>CreateSourceVoice</strong> successfully completes, and may be deleted immediately after <strong>CreateSourceVoice</strong> is called.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2::CreateSourceVoice']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2.ixaudio2.createsourcevoice</msdn-id>
<unmanaged>HRESULT IXAudio2::CreateSourceVoice([Out, Fast] IXAudio2SourceVoice** ppSourceVoice,[In] const void* pSourceFormat,[In] XAUDIO2_VOICE_FLAGS Flags,[In] float MaxFrequencyRatio,[In, Optional] IXAudio2VoiceCallback* pCallback,[In, Optional] const XAUDIO2_VOICE_SENDS* pSendList,[In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain)</unmanaged>
<unmanaged-short>IXAudio2::CreateSourceVoice</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.CreateSubmixVoice(SharpDX.XAudio2.SubmixVoice,System.Int32,System.Int32,System.Int32,System.Int32,System.Nullable{SharpDX.XAudio2.VoiceSendDescriptors},System.Nullable{SharpDX.XAudio2.EffectChain})">
<summary>
<p>Creates and configures a submix voice.</p>
</summary>
<param name="submixVoiceOut"><dd> <p>On success, returns a reference to the new <strong><see cref="T:SharpDX.XAudio2.SubmixVoice" /></strong> object.</p> </dd></param>
<param name="inputChannels"><dd> <p>Number of channels in the input audio data of the submix voice. <em>InputChannels</em> must be less than or equal to <see cref="F:SharpDX.XAudio2.XAudio2.MaximumAudioChannels" />.</p> </dd></param>
<param name="inputSampleRate"><dd> <p>Sample rate of the input audio data of submix voice. This rate must be a multiple of XAUDIO2_QUANTUM_DENOMINATOR. <em>InputSampleRate</em> must be between <see cref="F:SharpDX.XAudio2.XAudio2.MinimumSampleRate" /> and <see cref="F:SharpDX.XAudio2.XAudio2.MaximumSampleRate" />. </p> </dd></param>
<param name="flags"><dd> <p>Flags that specify the behavior of the submix voice. It can be 0 or the following:</p> <table> <tr><th>Value</th><th>Description</th></tr> <tr><td><see cref="F:SharpDX.XAudio2.VoiceFlags.UseFilter" /></td><td>The filter effect should be available on this voice.</td></tr> </table> <p>?</p> </dd></param>
<param name="processingStage"><dd> <p>An arbitrary number that specifies when this voice is processed with respect to other submix voices, if the XAudio2 engine is running other submix voices. The voice is processed after all other voices that include a smaller <em>ProcessingStage</em> value and before all other voices that include a larger <em>ProcessingStage</em> value. Voices that include the same <em>ProcessingStage</em> value are processed in any order. A submix voice cannot send to another submix voice with a lower or equal <em>ProcessingStage</em> value. This prevents audio being lost due to a submix cycle. </p> </dd></param>
<param name="sendListRef"><dd> <p>Pointer to a list of <strong><see cref="T:SharpDX.XAudio2.VoiceSendDescriptors" /></strong> structures that describe the set of destination voices for the submix voice. If <em>pSendList</em> is <c>null</c>, the send list will default to a single output to the first mastering voice created.</p> </dd></param>
<param name="effectChainRef"><dd> <p>Pointer to a list of <strong><see cref="T:SharpDX.XAudio2.EffectChain" /></strong> structures that describe an effect chain to use in the submix voice. </p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful; otherwise, an error code. </p><p>See <strong>XAudio2 Error Codes</strong> for descriptions of XAudio2 specific error codes. </p></returns>
<remarks>
<p>Submix voices receive the output of one or more source or submix voices. They process the output, and then send it to another submix voice or to a mastering voice. </p><p>A submix voice performs a sample rate conversion from the input sample rate to the input rate of its output voices in <em>pSendList</em>. If you specify multiple voice sends, they must all have the input same sample rate. </p><p>You cannot create any source or submix voices until a mastering voice exists, and you cannot destroy a mastering voice if any source or submix voices still exist. </p><p>When first created, submix voices are in the started state. </p><p>XAudio2 uses an internal memory pooler for voices with the same format. This means that memory allocation for voices will occur less frequently as more voices are created and then destroyed. To minimize just-in-time allocations, a title can create the anticipated maximum number of voices needed up front, and then delete them as necessary. Voices will then be reused from the XAudio2 pool. The memory pool is tied to an XAudio2 engine instance. You can reclaim all the memory used by an instance of the XAudio2 engine by destroying the XAudio2 object and recreating it as necessary (forcing the memory pool to grow via preallocation would have to be reapplied as needed). </p><p>It is invalid to call <strong>CreateSubmixVoice</strong> from within a callback (that is, <strong><see cref="T:SharpDX.XAudio2.EngineCallback" /></strong> or <strong><see cref="T:SharpDX.XAudio2.VoiceCallback" /></strong>). If you call <strong>CreateSubmixVoice</strong> within a callback, it returns <see cref="F:SharpDX.XAudio2.ResultCode.InvalidCall" />. </p><p>The <strong><see cref="T:SharpDX.XAudio2.EffectChain" /></strong> that is passed in as the <em>pEffectChain</em> argument and any <strong><see cref="T:SharpDX.XAudio2.EffectDescriptor" /></strong> information contained within it are no longer needed after <strong>CreateSubmixVoice</strong> successfully completes, and may be deleted immediately after <strong>CreateSubmixVoice</strong> is called.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2::CreateSubmixVoice']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2.ixaudio2.createsubmixvoice</msdn-id>
<unmanaged>HRESULT IXAudio2::CreateSubmixVoice([Out, Fast] IXAudio2SubmixVoice** ppSubmixVoice,[In] unsigned int InputChannels,[In] unsigned int InputSampleRate,[In] unsigned int Flags,[In] unsigned int ProcessingStage,[In, Optional] const XAUDIO2_VOICE_SENDS* pSendList,[In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain)</unmanaged>
<unmanaged-short>IXAudio2::CreateSubmixVoice</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.CreateMasteringVoice(SharpDX.XAudio2.MasteringVoice,System.Int32,System.Int32,System.Int32,System.String,System.Nullable{SharpDX.XAudio2.EffectChain},SharpDX.Multimedia.AudioStreamCategory)">
<summary>
<p>Creates and configures a mastering voice.</p>
</summary>
<param name="masteringVoiceOut"><dd> <p> If successful, returns a reference to the new <strong><see cref="T:SharpDX.XAudio2.MasteringVoice" /></strong> object.</p> </dd></param>
<param name="inputChannels"><dd> <p>Number of channels the mastering voice expects in its input audio. <em>InputChannels</em> must be less than or equal to <see cref="F:SharpDX.XAudio2.XAudio2.MaximumAudioChannels" />. </p> <p>You can set <em>InputChannels</em> to <see cref="F:SharpDX.XAudio2.XAudio2.DefaultChannels" />, which causes XAudio2 to try to detect the system speaker configuration setup. </p> </dd></param>
<param name="inputSampleRate"><dd> <p>Sample rate of the input audio data of the mastering voice. This rate must be a multiple of XAUDIO2_QUANTUM_DENOMINATOR. <em>InputSampleRate</em> must be between <see cref="F:SharpDX.XAudio2.XAudio2.MinimumSampleRate" /> and <see cref="F:SharpDX.XAudio2.XAudio2.MaximumSampleRate" />. </p> <p>You can set <em>InputSampleRate</em> to <see cref="F:SharpDX.XAudio2.XAudio2.DefaultSampleRate" />, with the default being determined by the current platform. </p> <p>Windows XP defaults to 44100. </p> <p>Windows Vista and Windows 7 default to the setting specified in the Sound Control Panel. The default for this setting is 44100 (or 48000 if required by the driver). Flags</p> </dd></param>
<param name="flags"><dd> <p> Flags that specify the behavior of the mastering voice. Must be 0.</p> </dd></param>
<param name="szDeviceId"><dd> <p>Identifier of the device to receive the output audio. Specifying the default value of <c>null</c> causes XAudio2 to select the global default audio device.</p> </dd></param>
<param name="effectChainRef"><dd> <p>Pointer to an <strong><see cref="T:SharpDX.XAudio2.EffectChain" /></strong> structure that describes an effect chain to use in the mastering voice, or <c>null</c> to use no effects.</p> </dd></param>
<param name="streamCategory"><dd> <p>The audio stream category to use for this mastering voice.</p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful; otherwise, an error code. Returns <see cref="F:SharpDX.Win32.ErrorCode.NotFound" /> if no default audio device exists and <c>null</c> is passed in as the szDeviceId parameter. </p><p>See <strong>XAudio2 Error Codes</strong> for descriptions of XAudio2 specific error codes. </p></returns>
<remarks>
<p>Mastering voices receive the output of one or more source or submix voices. They process the data, and send it to the audio output device. </p><p>Typically, you should create a mastering voice with an input sample rate that will be used by the majority of the title's audio content. The mastering voice performs a sample rate conversion from this input sample rate to the actual device output rate. </p><p>You cannot create a source or submix voices until a mastering voice exists. You cannot destroy a mastering voice if any source or submix voices still exist. </p><p>Mastering voices are always processed after all source and submix voices. This means that you need not specify a <em>ProcessingStage</em> parameter to control the processing order. </p><p>XAudio2 only allows one mastering voice to exist at once. If you attempt to create more than one voice, <see cref="F:SharpDX.XAudio2.ResultCode.InvalidCall" /> is returned. If an additional mastering voice is needed, for example for an output device with a different audio category set, you will need to create an additional XAudio2 instance. </p><p>When first created, mastering voices are in the started state. </p><p>It is invalid to call <strong>CreateMasteringVoice</strong> from within a callback (that is, <strong><see cref="T:SharpDX.XAudio2.EngineCallback" /></strong> or <strong><see cref="T:SharpDX.XAudio2.VoiceCallback" /></strong>). If you call <strong>CreateMasteringVoice</strong> within a callback, it returns <see cref="F:SharpDX.XAudio2.ResultCode.InvalidCall" />. </p><p>The <strong><see cref="T:SharpDX.XAudio2.EffectChain" /></strong> that is passed in as the pEffectChain argument and any <strong><see cref="T:SharpDX.XAudio2.EffectDescriptor" /></strong> information contained within it are no longer needed after <strong>CreateMasteringVoice</strong> successfully completes, and may be deleted immediately after <strong>CreateMasteringVoice</strong> is called. </p><p>Note that the DirectX SDK XAUDIO2 version of <strong>CreateMasteringVoice</strong> took a DeviceIndex argument instead of a szDeviceId and a StreamCategory argument. This reflects the changes needed for the standard Windows device enumeration model.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2::CreateMasteringVoice']/*" />
<msdn-id>hh405048</msdn-id>
<unmanaged>HRESULT IXAudio2::CreateMasteringVoice([Out, Fast] IXAudio2MasteringVoice** ppMasteringVoice,[In] unsigned int InputChannels,[In] unsigned int InputSampleRate,[In] unsigned int Flags,[In, Optional] const wchar_t* szDeviceId,[In, Optional] const XAUDIO2_EFFECT_CHAIN* pEffectChain,[In] AUDIO_STREAM_CATEGORY StreamCategory)</unmanaged>
<unmanaged-short>IXAudio2::CreateMasteringVoice</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.StartEngine">
<summary>
<p>Starts the audio processing thread.</p>
</summary>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful, an error code otherwise. See <strong>XAudio2 Error Codes</strong> for descriptions of XAudio2 specific error codes. </p></returns>
<remarks>
<p>After <strong>StartEngine</strong> is called, all started voices begin to consume audio. All enabled effects start running, and the resulting audio is sent to any connected output devices. When XAudio2 is first initialized, the engine is already in the started state. </p><p>It is invalid to call <strong>StartEngine</strong> from within a callback (that is, <strong><see cref="T:SharpDX.XAudio2.EngineCallback" /></strong> or <strong><see cref="T:SharpDX.XAudio2.VoiceCallback" /></strong>). If <strong>StartEngine</strong> is called within a callback, it returns <see cref="F:SharpDX.XAudio2.ResultCode.InvalidCall" />. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2::StartEngine']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2.ixaudio2.startengine</msdn-id>
<unmanaged>HRESULT IXAudio2::StartEngine()</unmanaged>
<unmanaged-short>IXAudio2::StartEngine</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.StopEngine">
<summary>
<p>Stops the audio processing thread.</p>
</summary>
<remarks>
<p>When <strong>StopEngine</strong> is called, all output is stopped immediately. However, the audio graph is left untouched, preserving effect parameters, effect histories (for example, the data stored by a reverb effect in order to emit echoes of a previous sound), voice states, pending source buffers, cursor positions, and so forth. When the engine is restarted, the resulting audio output will be identical?apart from a period of silence?to the output that would have been produced if the engine had never been stopped. </p><p>It is invalid to call <strong>StopEngine</strong> from within a callback (that is, <strong><see cref="T:SharpDX.XAudio2.EngineCallback" /></strong> or <strong><see cref="T:SharpDX.XAudio2.VoiceCallback" /></strong>).</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2::StopEngine']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2.ixaudio2.stopengine</msdn-id>
<unmanaged>void IXAudio2::StopEngine()</unmanaged>
<unmanaged-short>IXAudio2::StopEngine</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.CommitChanges(System.Int32)">
<summary>
<p>Atomically applies a set of operations that are tagged with a given identifier.</p>
</summary>
<param name="operationSet"><dd> <p>Identifier of the set of operations to be applied. To commit all pending operations, pass <strong><see cref="F:SharpDX.XAudio2.XAudio2.CommitAll" /></strong>. </p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful; returns an error code otherwise. See <strong>XAudio2 Error Codes</strong> for descriptions of XAudio2 specific error codes.</p></returns>
<remarks>
<p><strong>CommitChanges</strong> does nothing if no operations are tagged with the given identifier. </p><p>See the XAudio2 Operation Sets overview about working with <strong>CommitChanges</strong> and XAudio2 interface methods that may be deferred.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2::CommitChanges']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2.ixaudio2.commitchanges</msdn-id>
<unmanaged>HRESULT IXAudio2::CommitChanges([In] unsigned int OperationSet)</unmanaged>
<unmanaged-short>IXAudio2::CommitChanges</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.GetPerformanceData(SharpDX.XAudio2.PerformanceData@)">
<summary>
<p>Returns current resource usage details, such as available memory or CPU usage.</p>
</summary>
<param name="perfDataRef"><dd> <p>On success, reference to an <strong><see cref="T:SharpDX.XAudio2.PerformanceData" /></strong> structure that is returned. </p> </dd></param>
<remarks>
<p>For specific information on the statistics returned by <strong>GetPerformanceData</strong>, see the <strong><see cref="T:SharpDX.XAudio2.PerformanceData" /></strong> structure reference. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2::GetPerformanceData']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2.ixaudio2.getperformancedata</msdn-id>
<unmanaged>void IXAudio2::GetPerformanceData([Out] XAUDIO2_PERFORMANCE_DATA* pPerfData)</unmanaged>
<unmanaged-short>IXAudio2::GetPerformanceData</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.SetDebugConfiguration(SharpDX.XAudio2.DebugConfiguration,System.IntPtr)">
<summary>
<p>Changes global debug logging options for XAudio2.</p>
</summary>
<param name="debugConfigurationRef"><dd> <p>Pointer to a <strong><see cref="T:SharpDX.XAudio2.DebugConfiguration" /></strong> structure that contains the new debug configuration.</p> </dd></param>
<param name="reservedRef"><dd> <p>This parameter is reserved and must be <c>null</c>.</p> </dd></param>
<remarks>
<p>SetDebugConfiguration sets the debug configuration for the given instance of XAudio2 engine. See <strong><see cref="T:SharpDX.XAudio2.DebugConfiguration" /></strong> Structure for supported debug options. By default, XAudio2 does not log debug output or break on errors. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2::SetDebugConfiguration']/*" />
<msdn-id>microsoft.directx_sdk.ixaudio2.ixaudio2.setdebugconfiguration</msdn-id>
<unmanaged>void IXAudio2::SetDebugConfiguration([In, Value] const XAUDIO2_DEBUG_CONFIGURATION* pDebugConfiguration,[In] void* pReserved)</unmanaged>
<unmanaged-short>IXAudio2::SetDebugConfiguration</unmanaged-short>
</member>
<member name="E:SharpDX.XAudio2.XAudio2.ProcessingPassStart">
<summary>
Called by XAudio2 just before an audio processing pass begins.
</summary>
</member>
<member name="E:SharpDX.XAudio2.XAudio2.ProcessingPassEnd">
<summary>
Called by XAudio2 just after an audio processing pass ends.
</summary>
</member>
<member name="E:SharpDX.XAudio2.XAudio2.CriticalError">
<summary>
Called if a critical system error occurs that requires XAudio2 to be closed down and restarted.
</summary>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.#ctor">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAudio2.XAudio2"/> class.
</summary>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.#ctor(SharpDX.XAudio2.XAudio2Version)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAudio2.XAudio2" /> class.
</summary>
<param name="requestedVersion">The requested version.</param>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.#ctor(SharpDX.XAudio2.XAudio2Flags,SharpDX.XAudio2.ProcessorSpecifier,SharpDX.XAudio2.XAudio2Version)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAudio2.XAudio2" /> class.
</summary>
<param name="flags">Specify a Debug or Normal XAudio2 instance.</param>
<param name="processorSpecifier">The processor specifier.</param>
<param name="requestedVersion">The requestedVersion to use (auto, 2.7 or 2.8).</param>
<exception cref="T:System.InvalidOperationException">XAudio2 requestedVersion [ + requestedVersion + ] is not installed</exception>
</member>
<member name="P:SharpDX.XAudio2.XAudio2.Version">
<summary>
Gets the requestedVersion of this XAudio2 instance, once a <see cref="T:SharpDX.XAudio2.XAudio2"/> device has been instanciated.
</summary>
<value>The requestedVersion.</value>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.SetupVtblFor27">
<summary>
Setups the VTBL for XAudio 2.7. The 2.7 verions had 3 methods starting at VTBL[3]:
- GetDeviceCount
- GetDeviceDetails
- Initialize
</summary>
</member>
<member name="P:SharpDX.XAudio2.XAudio2.DeviceCount">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2::GetDeviceCount']/*" />
<unmanaged>GetDeviceCount</unmanaged>
<unmanaged-short>GetDeviceCount</unmanaged-short>
<unmanaged>HRESULT IXAudio2::GetDeviceCount([Out] unsigned int* pCount)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.GetDeviceCount(System.Int32@)">
<summary>
No documentation.
</summary>
<param name="countRef">No documentation.</param>
<returns>No documentation.</returns>
<!-- No matching elements were found for the following include tag --><!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='IXAudio2::GetDeviceCount']/*" />
<unmanaged>HRESULT IXAudio2::GetDeviceCount([Out] unsigned int* pCount)</unmanaged>
<unmanaged-short>IXAudio2::GetDeviceCount</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.GetDeviceDetails(System.Int32)">
<summary>
Returns information about an audio output device.
</summary>
<param name="index">[in] Index of the device to be queried. This value must be less than the count returned by <see cref="M:SharpDX.XAudio2.XAudio2.GetDeviceCount(System.Int32@)"/>. </param>
<returns>On success, pointer to an <see cref="T:SharpDX.XAudio2.DeviceDetails"/> structure that is returned. </returns>
<unmanaged>HRESULT IXAudio2::GetDeviceDetails([None] UINT32 Index,[Out] XAUDIO2_DEVICE_DETAILS* pDeviceDetails)</unmanaged>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.AmplitudeRatioToDecibels(System.Single)">
<summary>
Calculate a decibel from a volume.
</summary>
<param name="volume">The volume.</param>
<returns>a dB value</returns>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.CutoffFrequencyToRadians(System.Single,System.Int32)">
<summary>
Calculate radians from a cutoffs frequency.
</summary>
<param name="cutoffFrequency">The cutoff frequency.</param>
<param name="sampleRate">The sample rate.</param>
<returns>radian</returns>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.RadiansToCutoffFrequency(System.Single,System.Single)">
<summary>
Calculate a cutoff frequency from a radian.
</summary>
<param name="radians">The radians.</param>
<param name="sampleRate">The sample rate.</param>
<returns>cutoff frequency</returns>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.DecibelsToAmplitudeRatio(System.Single)">
<summary>
Calculate a volume from a decibel
</summary>
<param name="decibels">a dB value</param>
<returns>an amplitude value</returns>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.FrequencyRatioToSemitones(System.Single)">
<summary>
Calculate semitones from a Frequency ratio
</summary>
<param name="frequencyRatio">The frequency ratio.</param>
<returns>semitones</returns>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.SemitonesToFrequencyRatio(System.Single)">
<summary>
Calculate frequency from semitones.
</summary>
<param name="semitones">The semitones.</param>
<returns>the frequency</returns>
</member>
<member name="M:SharpDX.XAudio2.XAudio2.CommitChanges">
<summary>
Atomically applies a set of operations for all pending operations.
</summary>
<unmanaged>HRESULT IXAudio2::CommitChanges([None] UINT32 OperationSet)</unmanaged>
</member>
<member name="T:SharpDX.XAudio2.BufferWma">
<summary>
<p>Used with <strong><see cref="M:SharpDX.XAudio2.SourceVoice.SubmitSourceBuffer(SharpDX.XAudio2.AudioBuffer,System.IntPtr)" /></strong> when submitting xWMA data.</p>
</summary>
<remarks>
<p>When streaming an xWMA file a few packets at a time, <see cref="F:SharpDX.XAudio2.BufferFlags.EndOfStream" /> should be specified on the last packet. Alternatively, the application may call <strong><see cref="M:SharpDX.XAudio2.SourceVoice.Discontinuity" /></strong> after submitting the last packet. </p><p>In addition, when streaming an xWMA file a few packets at a time, the application should subtract <strong>pDecodedPacketCumulativeBytes</strong>[<strong>PacketCount</strong>-1] of the previous packet from all the entries of the currently submitted packet. </p><p>The members of <strong><see cref="T:SharpDX.XAudio2.BufferWma" /></strong> correspond to values contained in the 'dpds' RIFF chunk of the xWMA file being played. <strong>PacketCount</strong> will correspond to the size in UINT32s of the chunk. <strong>pDecodedPacketCumulativeBytes</strong> will correspond to a UINT32 buffer containing the contents of the chunk. The contents of the buffer will need to be byte swapped when loading the buffer on Xbox 360. </p><p>Memory allocated to hold a <strong><see cref="T:SharpDX.XAudio2.AudioBuffer" /></strong> or <strong><see cref="T:SharpDX.XAudio2.BufferWma" /></strong> structure can be freed as soon as the <strong><see cref="M:SharpDX.XAudio2.SourceVoice.SubmitSourceBuffer(SharpDX.XAudio2.AudioBuffer,System.IntPtr)" /></strong> call it is passed to returns. The data the structure points to (<strong>pAudioData</strong> and <strong>pDecodedPacketCumulativeBytes</strong>, respectively) can't be freed until the buffer completes (as signaled by the <strong><see cref="M:SharpDX.XAudio2.VoiceCallback.OnBufferEnd(System.IntPtr)" /></strong> callback) or the voice is stopped and destroyed. </p><p>XAUDIO 2.8 in Windows 8.x does not support xWMA decoding. Use Windows Media Foundation APIs to perform the decoding from WMA to PCM instead. This functionality is available in the DirectX SDK versions of XAUDIO and in XAUDIO 2.9 in Windows?10.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_BUFFER_WMA']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_buffer_wma</msdn-id>
<unmanaged>XAUDIO2_BUFFER_WMA</unmanaged>
<unmanaged-short>XAUDIO2_BUFFER_WMA</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.BufferWma.DecodedPacketCumulativeBytesPointer">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_BUFFER_WMA::pDecodedPacketCumulativeBytes']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_buffer_wma</msdn-id>
<unmanaged>const unsigned int* pDecodedPacketCumulativeBytes</unmanaged>
<unmanaged-short>unsigned int pDecodedPacketCumulativeBytes</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.BufferWma.PacketCount">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_BUFFER_WMA::PacketCount']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_buffer_wma</msdn-id>
<unmanaged>unsigned int PacketCount</unmanaged>
<unmanaged-short>unsigned int PacketCount</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.DebugConfiguration">
<summary>
<p>Contains the new global debug configuration for XAudio2. Used with the <strong>SetDebugConfiguration</strong> function.</p>
</summary>
<remarks>
<p>Debugging messages can be completely turned off by initializing <strong><see cref="T:SharpDX.XAudio2.DebugConfiguration" /></strong> to all zeroes.</p><strong>Note</strong>??For this version of XAudio2, only the <strong><see cref="F:SharpDX.XAudio2.LogType.Errors" /></strong> value is supported on <strong>TraceMask</strong> or <strong>BreakMask</strong>. All other members and values are ignored.?
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_DEBUG_CONFIGURATION']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_debug_configuration</msdn-id>
<unmanaged>XAUDIO2_DEBUG_CONFIGURATION</unmanaged>
<unmanaged-short>XAUDIO2_DEBUG_CONFIGURATION</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.DebugConfiguration.TraceMask">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_DEBUG_CONFIGURATION::TraceMask']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_debug_configuration</msdn-id>
<unmanaged>unsigned int TraceMask</unmanaged>
<unmanaged-short>unsigned int TraceMask</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.DebugConfiguration.BreakMask">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_DEBUG_CONFIGURATION::BreakMask']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_debug_configuration</msdn-id>
<unmanaged>unsigned int BreakMask</unmanaged>
<unmanaged-short>unsigned int BreakMask</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.DebugConfiguration.LogThreadID">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_DEBUG_CONFIGURATION::LogThreadID']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_debug_configuration</msdn-id>
<unmanaged>BOOL LogThreadID</unmanaged>
<unmanaged-short>BOOL LogThreadID</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.DebugConfiguration.LogFileline">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_DEBUG_CONFIGURATION::LogFileline']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_debug_configuration</msdn-id>
<unmanaged>BOOL LogFileline</unmanaged>
<unmanaged-short>BOOL LogFileline</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.DebugConfiguration.LogFunctionName">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_DEBUG_CONFIGURATION::LogFunctionName']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_debug_configuration</msdn-id>
<unmanaged>BOOL LogFunctionName</unmanaged>
<unmanaged-short>BOOL LogFunctionName</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.DebugConfiguration.LogTiming">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_DEBUG_CONFIGURATION::LogTiming']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_debug_configuration</msdn-id>
<unmanaged>BOOL LogTiming</unmanaged>
<unmanaged-short>BOOL LogTiming</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.EffectChain">
<summary>
<p>Defines an effect chain.</p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_EFFECT_CHAIN']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_effect_chain</msdn-id>
<unmanaged>XAUDIO2_EFFECT_CHAIN</unmanaged>
<unmanaged-short>XAUDIO2_EFFECT_CHAIN</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.EffectChain.EffectCount">
<summary>
<dd> <p>Number of effects in the effect chain for the voice.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_EFFECT_CHAIN::EffectCount']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_effect_chain</msdn-id>
<unmanaged>unsigned int EffectCount</unmanaged>
<unmanaged-short>unsigned int EffectCount</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.EffectChain.EffectDescriptorPointer">
<summary>
<dd> <p>Array of <strong><see cref="T:SharpDX.XAudio2.EffectDescriptor" /></strong> structures containing references to XAPO instances.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_EFFECT_CHAIN::pEffectDescriptors']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_effect_chain</msdn-id>
<unmanaged>XAUDIO2_EFFECT_DESCRIPTOR* pEffectDescriptors</unmanaged>
<unmanaged-short>XAUDIO2_EFFECT_DESCRIPTOR pEffectDescriptors</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.FilterParameters">
<summary>
<p>Defines filter parameters for a source voice.</p>
</summary>
<remarks>
<p>Setting <see cref="T:SharpDX.XAudio2.FilterParameters" /> with the following values is acoustically equivalent to the filter being fully bypassed.</p><pre><see cref="T:SharpDX.XAudio2.FilterParameters" /> FilterParams;
FilterParams.Frequency = 1.0f;
FilterParams.OneOverQ = 1.0f;
FilterParams.Type = LowPassFilter;
</pre><p>The following formulas show the relationship between the members of <see cref="T:SharpDX.XAudio2.FilterParameters" /> and the per-voice filter.</p><pre>Yl( n ) = F1 yb( n ) + yl( n - 1 )
Yb( n ) = F1 yh( n ) + yb( n - 1 )
Yh( n ) = x( n ) - yl( n ) - OneOverQ(yb( n - 1 )
Yn( n ) = Yl(n) + Yh(n) </pre><p>Where:</p><pre>Yl = lowpass output
Yb = bandpass output
Yh = highpass output
Yn = notch output
F1 = <see cref="T:SharpDX.XAudio2.FilterParameters" />.Frequency
OneOverQ = <see cref="T:SharpDX.XAudio2.FilterParameters" />.OneOverQ</pre>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_FILTER_PARAMETERS']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_filter_parameters</msdn-id>
<unmanaged>XAUDIO2_FILTER_PARAMETERS</unmanaged>
<unmanaged-short>XAUDIO2_FILTER_PARAMETERS</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.FilterParameters.Type">
<summary>
<dd> <p>The <strong><see cref="T:SharpDX.XAudio2.FilterType" /></strong>.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_FILTER_PARAMETERS::Type']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_filter_parameters</msdn-id>
<unmanaged>XAUDIO2_FILTER_TYPE Type</unmanaged>
<unmanaged-short>XAUDIO2_FILTER_TYPE Type</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.FilterParameters.Frequency">
<summary>
<dd> <p>Filter radian frequency calculated as (2 * sin(pi * (desired filter cutoff frequency) / sampleRate)). The frequency must be greater than or equal to 0 and less than or equal to <see cref="F:SharpDX.XAudio2.XAudio2.MaximumFilterFrequency" />. The maximum frequency allowable is equal to the source sound's sample rate divided by six which corresponds to the maximum filter radian frequency of 1. For example, if a sound's sample rate is 48000 and the desired cutoff frequency is the maximum allowable value for that sample rate, 8000, the value for <strong>Frequency</strong> will be 1.
If XAUDIO2_HELPER_FUNCTIONS is defined, XAudio2.h will include the <strong>XAudio2RadiansToCutoffFrequency</strong> and <strong>XAudio2CutoffFrequencyToRadians</strong> helper functions for converting between hertz and radian frequencies. Defining XAUDIO2_HELPER_FUNCTIONS will also include <strong>XAudio2CutoffFrequencyToOnePoleCoefficient</strong> for converting between hertz and a one-pole coefficient suitable for use with the LowPassOnePoleFilter and HighPassOnePoleFilter. </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_FILTER_PARAMETERS::Frequency']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_filter_parameters</msdn-id>
<unmanaged>float Frequency</unmanaged>
<unmanaged-short>float Frequency</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.FilterParameters.OneOverQ">
<summary>
<dd> <p>Reciprocal of Q factor. Controls how quickly frequencies beyond Frequency are dampened. Larger values result in quicker dampening while smaller values cause dampening to occur more gradually. Must be greater than 0 and less than or equal to <see cref="F:SharpDX.XAudio2.XAudio2.MaximumFilterOneOverQ" />.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_FILTER_PARAMETERS::OneOverQ']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_filter_parameters</msdn-id>
<unmanaged>float OneOverQ</unmanaged>
<unmanaged-short>float OneOverQ</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.PerformanceData">
<summary>
<p>Contains performance information.</p>
</summary>
<remarks>
<p>CPU cycles are recorded using . Use to convert these values.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_PERFORMANCE_DATA']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_performance_data</msdn-id>
<unmanaged>XAUDIO2_PERFORMANCE_DATA</unmanaged>
<unmanaged-short>XAUDIO2_PERFORMANCE_DATA</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.PerformanceData.AudioCyclesSinceLastQuery">
<summary>
<dd> <p>CPU cycles spent on audio processing since the last call to the <strong><see cref="M:SharpDX.XAudio2.XAudio2.StartEngine" /></strong> or <strong><see cref="M:SharpDX.XAudio2.XAudio2.GetPerformanceData(SharpDX.XAudio2.PerformanceData@)" /></strong> function.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_PERFORMANCE_DATA::AudioCyclesSinceLastQuery']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_performance_data</msdn-id>
<unmanaged>unsigned longlong AudioCyclesSinceLastQuery</unmanaged>
<unmanaged-short>unsigned longlong AudioCyclesSinceLastQuery</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.PerformanceData.TotalCyclesSinceLastQuery">
<summary>
<dd> <p>Total CPU cycles elapsed since the last call. </p> <strong>Note</strong>??This only counts cycles on the CPU on which XAudio2 is running. ? </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_PERFORMANCE_DATA::TotalCyclesSinceLastQuery']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_performance_data</msdn-id>
<unmanaged>unsigned longlong TotalCyclesSinceLastQuery</unmanaged>
<unmanaged-short>unsigned longlong TotalCyclesSinceLastQuery</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.PerformanceData.MinimumCyclesPerQuantum">
<summary>
<dd> <p>Fewest CPU cycles spent on processing any single audio quantum since the last call.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_PERFORMANCE_DATA::MinimumCyclesPerQuantum']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_performance_data</msdn-id>
<unmanaged>unsigned int MinimumCyclesPerQuantum</unmanaged>
<unmanaged-short>unsigned int MinimumCyclesPerQuantum</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.PerformanceData.MaximumCyclesPerQuantum">
<summary>
<dd> <p>Most CPU cycles spent on processing any single audio quantum since the last call.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_PERFORMANCE_DATA::MaximumCyclesPerQuantum']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_performance_data</msdn-id>
<unmanaged>unsigned int MaximumCyclesPerQuantum</unmanaged>
<unmanaged-short>unsigned int MaximumCyclesPerQuantum</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.PerformanceData.MemoryUsageInBytes">
<summary>
<dd> <p>Total memory currently in use.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_PERFORMANCE_DATA::MemoryUsageInBytes']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_performance_data</msdn-id>
<unmanaged>unsigned int MemoryUsageInBytes</unmanaged>
<unmanaged-short>unsigned int MemoryUsageInBytes</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.PerformanceData.CurrentLatencyInSamples">
<summary>
<dd> <p>Minimum delay that occurs between the time a sample is read from a source buffer and the time it reaches the speakers. </p> <table> <tr><th>Windows</th></tr> <tr><td>The delay reported is a variable value equal to the rough distance between the last sample submitted to the driver by XAudio2 and the sample currently playing. The following factors can affect the delay: playing multichannel audio on a hardware-accelerated device; the type of audio device (WavePci, WaveCyclic, or WaveRT); and, to a lesser extent, audio hardware implementation.
</td></tr> </table> <p>?</p> <table> <tr><th>Xbox 360</th></tr> <tr><td>The delay reported is a fixed value, which is normally 1,024 samples (21.333 ms at 48 kHz). If <strong>XOverrideSpeakerConfig</strong> has been called using the <strong>XAUDIOSPEAKERCONFIG_LOW_LATENCY</strong> flag, the delay reported is 512 samples (10.667 ms at 48 kHz).
</td></tr> </table> <p>?</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_PERFORMANCE_DATA::CurrentLatencyInSamples']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_performance_data</msdn-id>
<unmanaged>unsigned int CurrentLatencyInSamples</unmanaged>
<unmanaged-short>unsigned int CurrentLatencyInSamples</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.PerformanceData.GlitchesSinceEngineStarted">
<summary>
<dd> <p>Total audio dropouts since the engine started.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_PERFORMANCE_DATA::GlitchesSinceEngineStarted']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_performance_data</msdn-id>
<unmanaged>unsigned int GlitchesSinceEngineStarted</unmanaged>
<unmanaged-short>unsigned int GlitchesSinceEngineStarted</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.PerformanceData.ActiveSourceVoiceCount">
<summary>
<dd> <p>Number of source voices currently playing. </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_PERFORMANCE_DATA::ActiveSourceVoiceCount']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_performance_data</msdn-id>
<unmanaged>unsigned int ActiveSourceVoiceCount</unmanaged>
<unmanaged-short>unsigned int ActiveSourceVoiceCount</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.PerformanceData.TotalSourceVoiceCount">
<summary>
<dd> <p>Total number of source voices currently in existence. </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_PERFORMANCE_DATA::TotalSourceVoiceCount']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_performance_data</msdn-id>
<unmanaged>unsigned int TotalSourceVoiceCount</unmanaged>
<unmanaged-short>unsigned int TotalSourceVoiceCount</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.PerformanceData.ActiveSubmixVoiceCount">
<summary>
<dd> <p>Number of submix voices currently playing.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_PERFORMANCE_DATA::ActiveSubmixVoiceCount']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_performance_data</msdn-id>
<unmanaged>unsigned int ActiveSubmixVoiceCount</unmanaged>
<unmanaged-short>unsigned int ActiveSubmixVoiceCount</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.PerformanceData.ActiveResamplerCount">
<summary>
<dd> <p>Number of resampler xAPOs currently active.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_PERFORMANCE_DATA::ActiveResamplerCount']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_performance_data</msdn-id>
<unmanaged>unsigned int ActiveResamplerCount</unmanaged>
<unmanaged-short>unsigned int ActiveResamplerCount</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.PerformanceData.ActiveMatrixMixCount">
<summary>
<dd> <p>Number of matrix mix xAPOs currently active.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_PERFORMANCE_DATA::ActiveMatrixMixCount']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_performance_data</msdn-id>
<unmanaged>unsigned int ActiveMatrixMixCount</unmanaged>
<unmanaged-short>unsigned int ActiveMatrixMixCount</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.PerformanceData.ActiveXmaSourceVoices">
<summary>
<dd> <table> <tr><th>Windows</th></tr> <tr><td>Unsupported.</td></tr> </table> <p>?</p> <table> <tr><th>Xbox 360</th></tr> <tr><td>Number of source voices decoding XMA data.</td></tr> </table> <p>?</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_PERFORMANCE_DATA::ActiveXmaSourceVoices']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_performance_data</msdn-id>
<unmanaged>unsigned int ActiveXmaSourceVoices</unmanaged>
<unmanaged-short>unsigned int ActiveXmaSourceVoices</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.PerformanceData.ActiveXmaStreams">
<summary>
<dd> <table> <tr><th>Windows</th></tr> <tr><td>Unsupported.</td></tr> </table> <p>?</p> <table> <tr><th>Xbox 360</th></tr> <tr><td>A voice can use more than one XMA stream.</td></tr> </table> <p>?</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_PERFORMANCE_DATA::ActiveXmaStreams']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_performance_data</msdn-id>
<unmanaged>unsigned int ActiveXmaStreams</unmanaged>
<unmanaged-short>unsigned int ActiveXmaStreams</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.VoiceDetails">
<summary>
<p>Contains information about the creation flags, input channels, and sample rate of a voice.</p>
</summary>
<remarks>
<p>Note the DirectX SDK versions of XAUDIO2 do not support the <strong>ActiveFlags</strong> member.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_VOICE_DETAILS']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_voice_details</msdn-id>
<unmanaged>XAUDIO2_VOICE_DETAILS</unmanaged>
<unmanaged-short>XAUDIO2_VOICE_DETAILS</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.VoiceDetails.CreationFlags">
<summary>
<dd> <p>Flags used to create the voice; see the individual voice interfaces for more information.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_VOICE_DETAILS::CreationFlags']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_voice_details</msdn-id>
<unmanaged>XAUDIO2_VOICE_FLAGS CreationFlags</unmanaged>
<unmanaged-short>XAUDIO2_VOICE_FLAGS CreationFlags</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.VoiceDetails.ActiveFlags">
<summary>
<dd> <p>Flags that are currently set on the voice.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_VOICE_DETAILS::ActiveFlags']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_voice_details</msdn-id>
<unmanaged>unsigned int ActiveFlags</unmanaged>
<unmanaged-short>unsigned int ActiveFlags</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.VoiceDetails.InputChannelCount">
<summary>
<dd> <p>The number of input channels the voice expects.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_VOICE_DETAILS::InputChannels']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_voice_details</msdn-id>
<unmanaged>unsigned int InputChannels</unmanaged>
<unmanaged-short>unsigned int InputChannels</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.VoiceDetails.InputSampleRate">
<summary>
<dd> <p>The input sample rate the voice expects.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_VOICE_DETAILS::InputSampleRate']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_voice_details</msdn-id>
<unmanaged>unsigned int InputSampleRate</unmanaged>
<unmanaged-short>unsigned int InputSampleRate</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.VoiceSendDescriptor">
<summary>
<p>Defines a destination voice that is the target of a send from another voice and specifies whether a filter should be used.</p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_SEND_DESCRIPTOR']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_send_descriptor</msdn-id>
<unmanaged>XAUDIO2_SEND_DESCRIPTOR</unmanaged>
<unmanaged-short>XAUDIO2_SEND_DESCRIPTOR</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.VoiceSendDescriptor.Flags">
<summary>
<dd> <p>Indicates whether a filter should be used on data sent to the voice pointed to by <strong>pOutputVoice</strong>. Flags can be 0 or <see cref="F:SharpDX.XAudio2.VoiceSendFlags.UseFilter" />.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_SEND_DESCRIPTOR::Flags']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_send_descriptor</msdn-id>
<unmanaged>XAUDIO2_VOICE_SEND_FLAGS Flags</unmanaged>
<unmanaged-short>XAUDIO2_VOICE_SEND_FLAGS Flags</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.VoiceSendDescriptor.OutputVoicePointer">
<summary>
<dd> <p>A reference to an <strong><see cref="T:SharpDX.XAudio2.Voice" /></strong> that will be the target of the send. The <strong>pOutputVoice</strong> member cannot be <c>null</c>.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_SEND_DESCRIPTOR::pOutputVoice']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_send_descriptor</msdn-id>
<unmanaged>IXAudio2Voice* pOutputVoice</unmanaged>
<unmanaged-short>IXAudio2Voice pOutputVoice</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.VoiceSendDescriptor.#ctor(SharpDX.XAudio2.Voice)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAudio2.VoiceSendDescriptor"/> struct.
</summary>
<param name="outputVoice">The output voice.</param>
</member>
<member name="M:SharpDX.XAudio2.VoiceSendDescriptor.#ctor(SharpDX.XAudio2.VoiceSendFlags,SharpDX.XAudio2.Voice)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAudio2.VoiceSendDescriptor"/> struct.
</summary>
<param name="flags">The send flags.</param>
<param name="outputVoice">The output voice.</param>
</member>
<member name="P:SharpDX.XAudio2.VoiceSendDescriptor.OutputVoice">
<summary>
Gets or sets the output voice. This parameter cannot be null.
</summary>
<value>The output voice.</value>
</member>
<member name="T:SharpDX.XAudio2.VoiceSendDescriptors">
<summary>
<p>Defines a set of voices to receive data from a single output voice.</p>
</summary>
<remarks>
<p>If <strong>pSends</strong> is not <c>null</c> all of its elements must be non-<c>null</c>. To send output to the default mastering voice call <strong><see cref="M:SharpDX.XAudio2.Voice.SetOutputVoices(System.Nullable{SharpDX.XAudio2.VoiceSendDescriptors})" /></strong> with the pSendList argument set to <c>null</c>. </p><p>Setting <strong>SendCount</strong> to 0 is useful for certain effects such as volume meters or file writers that don't generate any audio output to pass on to another voice. </p><p>If needed, a voice will perform a single sample rate conversion, from the voice's input sample rate to the input sample rate of the voice's output voices. Because only one sample rate conversion will be performed, all the voice's output voices must have the same input sample rate. If the input sample rates of the voice and its output voices are the same, no sample rate conversion is performed.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_VOICE_SENDS']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_voice_sends</msdn-id>
<unmanaged>XAUDIO2_VOICE_SENDS</unmanaged>
<unmanaged-short>XAUDIO2_VOICE_SENDS</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.VoiceSendDescriptors.SendCount">
<summary>
<dd> <p>Number of voices to receive the output of the voice. An <strong>OutputCount</strong> value of 0 indicates the voice should not send output to any voices.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_VOICE_SENDS::SendCount']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_voice_sends</msdn-id>
<unmanaged>unsigned int SendCount</unmanaged>
<unmanaged-short>unsigned int SendCount</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.VoiceSendDescriptors.SendPointer">
<summary>
<dd> <p>Array of <strong><see cref="T:SharpDX.XAudio2.VoiceSendDescriptor" /></strong> structures describing destination voices and the filters that should be used when sending to the voices. This array should contain <strong>SendCount</strong> elements. If <strong>SendCount</strong> is 0 <strong>pSends</strong> should be <c>null</c>. Note that <strong>pSends</strong> cannot contain the same voice more than once.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_VOICE_SENDS::pSends']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_voice_sends</msdn-id>
<unmanaged>XAUDIO2_SEND_DESCRIPTOR* pSends</unmanaged>
<unmanaged-short>XAUDIO2_SEND_DESCRIPTOR pSends</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.VoiceState">
<summary>
<p>Returns the voice's current state and cursor position data.</p>
</summary>
<remarks>
<p>For all encoded formats, including constant bit rate (CBR) formats such as adaptive differential pulse code modulation (ADPCM), <strong>SamplesPlayed</strong> is expressed in terms of decoded samples. For pulse code modulation (PCM) formats, <strong>SamplesPlayed</strong> is expressed in terms of either input or output samples. There is a one-to-one mapping from input to output for PCM formats. </p><p>If a client needs to get the correlated positions of several voices?that is, to know exactly which sample of a particular voice is playing when a specified sample of another voice is playing?it must make the <strong><see cref="M:SharpDX.XAudio2.SourceVoice.GetState(System.Int32)" /></strong> calls in an XAudio2 engine callback. Doing this ensures that none of the voices advance while the calls are made.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_VOICE_STATE']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_voice_state</msdn-id>
<unmanaged>XAUDIO2_VOICE_STATE</unmanaged>
<unmanaged-short>XAUDIO2_VOICE_STATE</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.VoiceState.Context">
<summary>
<dd> <p>Pointer to a buffer context provided in the <strong><see cref="T:SharpDX.XAudio2.AudioBuffer" /></strong> that is processed currently, or, if the voice is stopped currently, to the next buffer due to be processed. <strong>pCurrentBufferContext</strong> is <c>null</c> if there are no buffers in the queue.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_VOICE_STATE::pCurrentBufferContext']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_voice_state</msdn-id>
<unmanaged>void* pCurrentBufferContext</unmanaged>
<unmanaged-short>void pCurrentBufferContext</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.VoiceState.BuffersQueued">
<summary>
<dd> <p>Number of audio buffers currently queued on the voice, including the one that is processed currently.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_VOICE_STATE::BuffersQueued']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_voice_state</msdn-id>
<unmanaged>unsigned int BuffersQueued</unmanaged>
<unmanaged-short>unsigned int BuffersQueued</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.VoiceState.SamplesPlayed">
<summary>
<dd> <p>Total number of samples processed by this voice since it last started, or since the last audio stream ended (as marked with the <see cref="F:SharpDX.XAudio2.BufferFlags.EndOfStream" /> flag). This total includes samples played multiple times due to looping. Theoretically, if all audio emitted by the voice up to this time is captured, this parameter would be the length of the audio stream in samples. If you specify <strong><see cref="F:SharpDX.XAudio2.VoiceFlags.Nosamplesplayed" /></strong> when you call <strong><see cref="M:SharpDX.XAudio2.SourceVoice.GetState(System.Int32)" /></strong>, this member won't be calculated, and its value is unspecified on return from <strong><see cref="M:SharpDX.XAudio2.SourceVoice.GetState(System.Int32)" /></strong>. <strong><see cref="M:SharpDX.XAudio2.SourceVoice.GetState(System.Int32)" /></strong> takes about one-third as much time to complete when you specify <strong><see cref="F:SharpDX.XAudio2.VoiceFlags.Nosamplesplayed" /></strong>. </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_VOICE_STATE::SamplesPlayed']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2_voice_state</msdn-id>
<unmanaged>unsigned longlong SamplesPlayed</unmanaged>
<unmanaged-short>unsigned longlong SamplesPlayed</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.ModuleInit">
<summary>
Internal class used to initialize this assembly.
</summary>
</member>
<member name="M:SharpDX.XAudio2.ModuleInit.Setup">
<summary>
Initializes this assembly.
</summary>
<remarks>
This method is called when the assembly is loaded.
</remarks>
</member>
<member name="T:SharpDX.XAudio2.NamespaceDoc">
<summary>
The <see cref="N:SharpDX.XAudio2"/> namespace provides a managed XAudio2 API.
</summary>
<msdn-id>hh405049</msdn-id>
<unmanaged>XAudio2</unmanaged>
<unmanaged-short>XAudio2</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.SubmixVoiceFlags">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_SUBMIX_VOICE_FLAGS']/*" />
</member>
<member name="F:SharpDX.XAudio2.SubmixVoiceFlags.UseFilter">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='XAUDIO2_VOICE_USEFILTER']/*" />
<unmanaged>XAUDIO2_VOICE_USEFILTER</unmanaged>
<unmanaged-short>XAUDIO2_VOICE_USEFILTER</unmanaged-short>
</member>
<member name="F:SharpDX.XAudio2.SubmixVoiceFlags.None">
<summary>
None.
</summary>
<!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='']/*" />
<unmanaged>None</unmanaged>
<unmanaged-short>None</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.VoiceShadow">
<summary>
Internal VoiceCallback callback Implementation
</summary>
</member>
<member name="M:SharpDX.XAudio2.VoiceShadow.ToIntPtr(SharpDX.XAudio2.VoiceCallback)">
<summary>
Return a pointer to the unmanaged version of this callback.
</summary>
<param name="callback">The callback.</param>
<returns>A pointer to a shadow c++ callback</returns>
</member>
<member name="T:SharpDX.XAudio2.XAudio28Functions">
<summary>
Functions
</summary>
<!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='SharpDX.XAudio2.XAudio2Functions']/*" />
</member>
<member name="M:SharpDX.XAudio2.XAudio28Functions.XAudio2Create(SharpDX.XAudio2.XAudio2,System.Int32,System.Int32)">
<summary>
<p>Creates a new <strong>XAudio2</strong> object and returns a reference to its <strong><see cref="T:SharpDX.XAudio2.XAudio2" /></strong> interface.</p>
</summary>
<param name="xAudio2Out">No documentation.</param>
<param name="flags">No documentation.</param>
<param name="xAudio2Processor">No documentation.</param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful, an error code otherwise. See <strong>XAudio2 Error Codes</strong> for descriptions of XAudio2 specific error codes. </p></returns>
<remarks>
<p>The DirectX SDK versions of XAUDIO2 supported a flag <strong><see cref="F:SharpDX.XAudio2.XAudio2Flags.DebugEngine" /></strong> to select between the release and 'checked' version. This flag is not supported or defined in the Windows 8 version of XAUDIO2. </p><p><strong>Note</strong>??No versions of the DirectX SDK contain the xaudio2.lib import library. DirectX SDK versions use COM to create a new <strong>XAudio2</strong> object.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='XAudio2Create']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2create</msdn-id>
<unmanaged>HRESULT XAudio2Create([Out, Fast] IXAudio2** ppXAudio2,[In] unsigned int Flags,[In] unsigned int XAudio2Processor)</unmanaged>
<unmanaged-short>XAudio2Create</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.XAudio28Functions.CreateAudioReverb(SharpDX.ComObject)">
<summary>
<p>Creates a new reverb audio processing object (APO), and returns a reference to it.</p>
</summary>
<param name="apoOut"><dd> <p>Contains a reference to the reverb APO that is created.</p> </dd></param>
<returns><p>If this function succeeds, it returns <strong><see cref="F:SharpDX.Result.Ok" /></strong>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result" /></strong> error code.</p></returns>
<remarks>
<p><strong>XAudio2CreateReverb</strong> creates an effect performing Princeton Digital Reverb. The XAPO effect library (XAPOFX) includes an alternate reverb effect. Use <strong>CreateFX</strong> to create this alternate effect. </p><p>The reverb APO supports has the following restrictions: </p><ul> <li>Input audio data must be FLOAT32. </li> <li>Framerate must be within XAUDIO2FX_REVERB_MIN_FRAMERATE (20,000 Hz) and XAUDIO2FX_REVERB_MAX_FRAMERATE (48,000 Hz). </li> <li>The input and output channels must be one of the following combinations.<ul> <li>Mono input and mono output </li> <li>Mono input and 5.1 output </li> <li>Stereo input and stereo output </li> <li>Stereo input and 5.1 output</li> </ul> </li> </ul>The reverb APO maintains internal state information between processing samples. You can only use an instance of the APO with one source of audio data at a time. Multiple voices that require reverb effects would each need to create a separate reverb effect with<strong>XAudio2CreateReverb</strong>.<p>For information about creating new effects for use with XAudio2, see the XAPO Overview. </p><table> <tr><th>Windows</th></tr> <tr><td> <p>Because <strong>XAudio2CreateReverb</strong> calls <strong>CoCreateInstance</strong> on Windows, the application must have called the <strong>CoInitializeEx</strong> method before calling <strong>XAudio2CreateReverb</strong>. <strong><see cref="!:SharpDX.XAudio2.XAudio2Functions.XAudio2Create" /></strong> has the same requirement, which means <strong>CoInitializeEx</strong> typically will be called long before <strong>XAudio2CreateReverb</strong> is called. </p> <p>A typical calling pattern on Windows would be as follows: </p> <pre>#ifndef _XBOX
CoInitializeEx(<c>null</c>, COINIT_MULTITHREADED);
#endif
<see cref="T:SharpDX.XAudio2.XAudio2" />* pXAudio2 = <c>null</c>;
<see cref="T:SharpDX.Result" /> hr;
if ( FAILED(hr = <see cref="!:SharpDX.XAudio2.XAudio2Functions.XAudio2Create" />( &amp;pXAudio2, 0, <see cref="F:SharpDX.XAudio2.ProcessorSpecifier.DefaultProcessor" /> ) ) ) return hr;
...
<see cref="T:SharpDX.ComObject" /> * pReverbAPO;
XAudio2CreateReverb(&amp;pReverbAPO);
</pre> </td></tr> </table><p>?</p><p>The xaudio2fx.h header defines the <strong>AudioReverb</strong> class <see cref="T:System.Guid" /> as a cross-platform audio processing object (XAPO). </p><code> class __declspec(uuid("C2633B16-471B-4498-B8C5-4F0959E2EC09")) AudioReverb;
</code><p><strong>XAudio2CreateReverb</strong> returns this object as a reference to a reference to <strong><see cref="T:SharpDX.ComObject" /></strong> in the <em>ppApo</em> parameter. Although you can query the <strong><see cref="T:SharpDX.XAPO.AudioProcessor" /></strong> and <strong><see cref="T:SharpDX.XAPO.ParameterProvider" /></strong> interfaces from this <strong><see cref="T:SharpDX.ComObject" /></strong>, you typically never use these interfaces directly. Instead, you use them when you create a voice to add them as part of the effects chain. </p><p>The reverb uses the <strong><see cref="T:SharpDX.XAudio2.Fx.ReverbParameters" /></strong> parameter structure that you access via the <strong><see cref="M:SharpDX.XAudio2.Voice.SetEffectParameters(System.Int32,System.IntPtr,System.Int32,System.Int32)" /></strong>. </p><p><strong>Note</strong>??<strong>XAudio2CreateReverb</strong> is an inline function in xaudio2fx.h that calls <strong>CreateAudioReverb</strong>: </p><code> XAUDIO2FX_STDAPI CreateAudioReverb(_Outptr_ <see cref="T:SharpDX.ComObject" />** ppApo);
__inline <see cref="T:SharpDX.Result" /> XAudio2CreateReverb(_Outptr_ <see cref="T:SharpDX.ComObject" />** ppApo, UINT32 /*Flags*/ DEFAULT(0))
{ return CreateAudioReverb(ppApo);
}
</code>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='CreateAudioReverb']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2createreverb</msdn-id>
<unmanaged>HRESULT CreateAudioReverb([Out, Fast] IUnknown** ppApo)</unmanaged>
<unmanaged-short>CreateAudioReverb</unmanaged-short>
</member>
<member name="M:SharpDX.XAudio2.XAudio28Functions.CreateAudioVolumeMeter(SharpDX.ComObject)">
<summary>
<p>Creates a new volume meter audio processing object (APO) and returns a reference to it.</p>
</summary>
<param name="apoOut"><dd> <p>Contains the created volume meter APO.</p> </dd></param>
<returns><p>If this function succeeds, it returns <strong><see cref="F:SharpDX.Result.Ok" /></strong>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result" /></strong> error code.</p></returns>
<remarks>
<p>For information on creating new effects for use with XAudio2, see the XAPO Overview.</p><table> <tr><th>Windows</th></tr> <tr><td> <p>Because <strong>XAudio2CreateVolumeMeter</strong> calls <strong>CoCreateInstance</strong> on Windows, the application must have called the <strong>CoInitializeEx</strong> method before calling <strong>XAudio2CreateVolumeMeter</strong>. <strong><see cref="!:SharpDX.XAudio2.XAudio2Functions.XAudio2Create" /></strong> has the same requirement, which means <strong>CoInitializeEx</strong> typically will be called long before <strong>XAudio2CreateVolumeMeter</strong> is called. </p> <p>A typical calling pattern on Windows would be as follows: </p> <pre>#ifndef _XBOX
CoInitializeEx(<c>null</c>, COINIT_MULTITHREADED);
#endif
<see cref="T:SharpDX.XAudio2.XAudio2" />* pXAudio2 = <c>null</c>;
<see cref="T:SharpDX.Result" /> hr;
if ( FAILED(hr = <see cref="!:SharpDX.XAudio2.XAudio2Functions.XAudio2Create" />( &amp;pXAudio2, 0, <see cref="F:SharpDX.XAudio2.ProcessorSpecifier.DefaultProcessor" /> ) ) ) return hr;
...
<see cref="T:SharpDX.ComObject" /> * pVolumeMeterAPO;
XAudio2CreateVolumeMeter(&amp;pVolumeMeterAPO);
</pre> </td></tr> </table><p>?</p><p>The xaudio2fx.h header defines the <strong>AudioVolumeMeter</strong> class <see cref="T:System.Guid" /> as a cross-platform audio processing object (XAPO). </p><code> class __declspec(uuid("4FC3B166-972A-40CF-BC37-7DB03DB2FBA3")) AudioVolumeMeter;
</code><p><strong>XAudio2CreateVolumeMeter</strong> returns this object as a reference to a reference to <strong><see cref="T:SharpDX.ComObject" /></strong> in the <em>ppApo</em> parameter. Although you can query the <strong><see cref="T:SharpDX.XAPO.AudioProcessor" /></strong> and <strong><see cref="T:SharpDX.XAPO.ParameterProvider" /></strong> interfaces from this <strong><see cref="T:SharpDX.ComObject" /></strong>, you typically never use these interfaces directly. Instead, you use them when you create a voice to add them as part of the effects chain. </p><p>The volume meter uses the <strong><see cref="T:SharpDX.XAudio2.Fx.VolumeMeterLevels" /></strong> parameter structure that you access via the <strong><see cref="M:SharpDX.XAudio2.Voice.GetEffectParameters(System.Int32,System.IntPtr,System.Int32)" /></strong> method when the XAPO is bound to the audio graph.</p><p><strong>Note</strong>??<strong>XAudio2CreateVolumeMeter</strong> is an inline function in xaudio2fx.h that calls <strong>CreateAudioVolumeMeter</strong>: </p><code> XAUDIO2FX_STDAPI CreateAudioVolumeMeter(_Outptr_ <see cref="T:SharpDX.ComObject" />** ppApo);
__inline <see cref="T:SharpDX.Result" /> XAudio2CreateVolumeMeter(_Outptr_ <see cref="T:SharpDX.ComObject" />** ppApo, UINT32 /*Flags*/ DEFAULT(0))
{ return CreateAudioVolumeMeter(ppApo);
}
</code>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='CreateAudioVolumeMeter']/*" />
<msdn-id>microsoft.directx_sdk.xaudio2.xaudio2createvolumemeter</msdn-id>
<unmanaged>HRESULT CreateAudioVolumeMeter([Out, Fast] IUnknown** ppApo)</unmanaged>
<unmanaged-short>CreateAudioVolumeMeter</unmanaged-short>
</member>
<member name="T:SharpDX.XAudio2.XAudio2Version">
<summary>
An enum to select the XAudio version to load.
</summary>
</member>
<member name="F:SharpDX.XAudio2.XAudio2Version.Default">
<summary>
The default version (2.7 if it is installed, otherwise 2.8 or 2.9)
</summary>
</member>
<member name="F:SharpDX.XAudio2.XAudio2Version.Version27">
<summary>
The XAudio2.7 version.
</summary>
</member>
<member name="F:SharpDX.XAudio2.XAudio2Version.Version28">
<summary>
The XAudio2.8 version.
</summary>
</member>
<member name="F:SharpDX.XAudio2.XAudio2Version.Version29">
<summary>
The XAudio2.9 version.
</summary>
</member>
<member name="T:SharpDX.X3DAudio.CalculateFlags">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAudioCalculateFlags']/*" />
<unmanaged>X3DAudioCalculateFlags</unmanaged>
<unmanaged-short>X3DAudioCalculateFlags</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.CalculateFlags.Matrix">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_CALCULATE_MATRIX']/*" />
<unmanaged>X3DAUDIO_CALCULATE_MATRIX</unmanaged>
<unmanaged-short>X3DAUDIO_CALCULATE_MATRIX</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.CalculateFlags.Delay">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_CALCULATE_DELAY']/*" />
<unmanaged>X3DAUDIO_CALCULATE_DELAY</unmanaged>
<unmanaged-short>X3DAUDIO_CALCULATE_DELAY</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.CalculateFlags.LpfDirect">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_CALCULATE_LPF_DIRECT']/*" />
<unmanaged>X3DAUDIO_CALCULATE_LPF_DIRECT</unmanaged>
<unmanaged-short>X3DAUDIO_CALCULATE_LPF_DIRECT</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.CalculateFlags.LpfReverb">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_CALCULATE_LPF_REVERB']/*" />
<unmanaged>X3DAUDIO_CALCULATE_LPF_REVERB</unmanaged>
<unmanaged-short>X3DAUDIO_CALCULATE_LPF_REVERB</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.CalculateFlags.Reverb">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_CALCULATE_REVERB']/*" />
<unmanaged>X3DAUDIO_CALCULATE_REVERB</unmanaged>
<unmanaged-short>X3DAUDIO_CALCULATE_REVERB</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.CalculateFlags.Doppler">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_CALCULATE_DOPPLER']/*" />
<unmanaged>X3DAUDIO_CALCULATE_DOPPLER</unmanaged>
<unmanaged-short>X3DAUDIO_CALCULATE_DOPPLER</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.CalculateFlags.EmitterAngle">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_CALCULATE_EMITTER_ANGLE']/*" />
<unmanaged>X3DAUDIO_CALCULATE_EMITTER_ANGLE</unmanaged>
<unmanaged-short>X3DAUDIO_CALCULATE_EMITTER_ANGLE</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.CalculateFlags.ZeroCenter">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_CALCULATE_ZEROCENTER']/*" />
<unmanaged>X3DAUDIO_CALCULATE_ZEROCENTER</unmanaged>
<unmanaged-short>X3DAUDIO_CALCULATE_ZEROCENTER</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.CalculateFlags.RedirectToLfe">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_CALCULATE_REDIRECT_TO_LFE']/*" />
<unmanaged>X3DAUDIO_CALCULATE_REDIRECT_TO_LFE</unmanaged>
<unmanaged-short>X3DAUDIO_CALCULATE_REDIRECT_TO_LFE</unmanaged-short>
</member>
<member name="T:SharpDX.X3DAudio.X3DAudio">
<summary>
Functions
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='SharpDX.X3DAudio.X3DAudio']/*" />
</member>
<member name="F:SharpDX.X3DAudio.X3DAudio.SpeedOfSound">
<summary>
Speed of sound in the air.
</summary>
</member>
<member name="M:SharpDX.X3DAudio.X3DAudio.#ctor(SharpDX.Multimedia.Speakers)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.X3DAudio.X3DAudio" /> class.
</summary>
<param name="speakers">The speakers config.</param>
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudioinitialize</msdn-id>
<unmanaged>void X3DAudioInitialize([In] SPEAKER_FLAGS SpeakerChannelMask,[In] float SpeedOfSound,[Out] X3DAUDIOHANDLE* Instance)</unmanaged>
<unmanaged-short>X3DAudioInitialize</unmanaged-short>
</member>
<member name="M:SharpDX.X3DAudio.X3DAudio.#ctor(SharpDX.Multimedia.Speakers,SharpDX.X3DAudio.X3DAudioVersion)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.X3DAudio.X3DAudio" /> class.
</summary>
<param name="speakers">The speakers config.</param>
<param name="requestVersion">The requestVersion.</param>
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudioinitialize</msdn-id>
<unmanaged>void X3DAudioInitialize([In] SPEAKER_FLAGS SpeakerChannelMask,[In] float SpeedOfSound,[Out] X3DAUDIOHANDLE* Instance)</unmanaged>
<unmanaged-short>X3DAudioInitialize</unmanaged-short>
</member>
<member name="M:SharpDX.X3DAudio.X3DAudio.#ctor(SharpDX.Multimedia.Speakers,System.Single,SharpDX.X3DAudio.X3DAudioVersion)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.X3DAudio.X3DAudio"/> class.
</summary>
<param name="speakers">The speakers config.</param>
<param name="speedOfSound">The speed of sound.</param>
<param name="requestVersion">The request requestVersion.</param>
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudioinitialize</msdn-id>
<unmanaged>void X3DAudioInitialize([In] SPEAKER_FLAGS SpeakerChannelMask,[In] float SpeedOfSound,[Out] X3DAUDIOHANDLE* Instance)</unmanaged>
<unmanaged-short>X3DAudioInitialize</unmanaged-short>
</member>
<member name="P:SharpDX.X3DAudio.X3DAudio.Version">
<summary>
Gets the requestVersion of X3DAudio used.
</summary>
<value>The requestVersion.</value>
</member>
<member name="M:SharpDX.X3DAudio.X3DAudio.Calculate(SharpDX.X3DAudio.Listener,SharpDX.X3DAudio.Emitter,SharpDX.X3DAudio.CalculateFlags,System.Int32,System.Int32)">
<summary>
Calculates DSP settings for the specified listener and emitter.
</summary>
<param name="listener">The listener.</param>
<param name="emitter">The emitter.</param>
<param name="flags">The flags.</param>
<param name="sourceChannelCount">The source channel count.</param>
<param name="destinationChannelCount">The destination channel count.</param>
<returns>DSP settings</returns>
<msdn-id>ee419052</msdn-id>
<unmanaged>void X3DAudioCalculate([In] const X3DAUDIOHANDLE* Instance,[In] const X3DAUDIO_LISTENER* pListener,[In] const X3DAUDIO_EMITTER* pEmitter,[In] X3DAudioCalculateFlags Flags,[In] void* pDSPSettings)</unmanaged>
<unmanaged-short>X3DAudioCalculate</unmanaged-short>
</member>
<member name="M:SharpDX.X3DAudio.X3DAudio.Calculate(SharpDX.X3DAudio.Listener,SharpDX.X3DAudio.Emitter,SharpDX.X3DAudio.CalculateFlags,SharpDX.X3DAudio.DspSettings)">
<summary>
Calculates DSP settings for the specified listener and emitter. See remarks.
</summary>
<param name="listener">The listener.</param>
<param name="emitter">The emitter.</param>
<param name="flags">The flags.</param>
<param name="settings">The settings.</param>
<remarks>The source and destination channel count must be set on <see cref="T:SharpDX.X3DAudio.DspSettings" /> before calling this method.</remarks>
<msdn-id>ee419052</msdn-id>
<unmanaged>void X3DAudioCalculate([In] const X3DAUDIOHANDLE* Instance,[In] const X3DAUDIO_LISTENER* pListener,[In] const X3DAUDIO_EMITTER* pEmitter,[In] X3DAudioCalculateFlags Flags,[In] void* pDSPSettings)</unmanaged>
<unmanaged-short>X3DAudioCalculate</unmanaged-short>
</member>
<member name="T:SharpDX.X3DAudio.Cone">
<summary>
<p>Specifies directionality for a single-channel non-LFE emitter by scaling DSP behavior with respect to the emitter's orientation.</p>
</summary>
<remarks>
<p>For a detailed explanation of sound cones see Sound Cones.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_CONE']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_cone</msdn-id>
<unmanaged>X3DAUDIO_CONE</unmanaged>
<unmanaged-short>X3DAUDIO_CONE</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Cone.InnerAngle">
<summary>
<dd> <p>Inner cone angle in radians. This value must be within 0.0f to X3DAUDIO_2PI.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_CONE::InnerAngle']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_cone</msdn-id>
<unmanaged>float InnerAngle</unmanaged>
<unmanaged-short>float InnerAngle</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Cone.OuterAngle">
<summary>
<dd> <p>Outer cone angle in radians. This value must be within <em>InnerAngle</em> to X3DAUDIO_2PI.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_CONE::OuterAngle']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_cone</msdn-id>
<unmanaged>float OuterAngle</unmanaged>
<unmanaged-short>float OuterAngle</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Cone.InnerVolume">
<summary>
<dd> <p>Volume scaler on/within inner cone. This value must be within 0.0f to 2.0f. </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_CONE::InnerVolume']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_cone</msdn-id>
<unmanaged>float InnerVolume</unmanaged>
<unmanaged-short>float InnerVolume</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Cone.OuterVolume">
<summary>
<dd> <p>Volume scaler on/beyond outer cone. This value must be within 0.0f to 2.0f. </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_CONE::OuterVolume']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_cone</msdn-id>
<unmanaged>float OuterVolume</unmanaged>
<unmanaged-short>float OuterVolume</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Cone.InnerLpf">
<summary>
<dd> <p>LPF direct-path or reverb-path coefficient scaler on/within inner cone. This value is only used for LPF calculations and must be within 0.0f to 1.0f. </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_CONE::InnerLPF']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_cone</msdn-id>
<unmanaged>float InnerLPF</unmanaged>
<unmanaged-short>float InnerLPF</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Cone.OuterLpf">
<summary>
<dd> <p>LPF direct-path or reverb-path coefficient scaler on or beyond outer cone. This value is only used for LPF calculations and must be within 0.0f to 1.0f. </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_CONE::OuterLPF']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_cone</msdn-id>
<unmanaged>float OuterLPF</unmanaged>
<unmanaged-short>float OuterLPF</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Cone.InnerReverb">
<summary>
<dd> <p>Reverb send level scaler on or within inner cone. This must be within 0.0f to 2.0f. </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_CONE::InnerReverb']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_cone</msdn-id>
<unmanaged>float InnerReverb</unmanaged>
<unmanaged-short>float InnerReverb</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Cone.OuterReverb">
<summary>
<dd> <p>Reverb send level scaler on/beyond outer cone. This must be within 0.0f to 2.0f.
</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_CONE::OuterReverb']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_cone</msdn-id>
<unmanaged>float OuterReverb</unmanaged>
<unmanaged-short>float OuterReverb</unmanaged-short>
</member>
<member name="T:SharpDX.X3DAudio.CurvePoint">
<summary>
<p>Defines a DSP setting at a given normalized distance.</p>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_DISTANCE_CURVE_POINT']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_distance_curve_point</msdn-id>
<unmanaged>X3DAUDIO_DISTANCE_CURVE_POINT</unmanaged>
<unmanaged-short>X3DAUDIO_DISTANCE_CURVE_POINT</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.CurvePoint.Distance">
<summary>
<dd> <p>Normalized distance. This must be within 0.0f to 1.0f.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_DISTANCE_CURVE_POINT::Distance']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_distance_curve_point</msdn-id>
<unmanaged>float Distance</unmanaged>
<unmanaged-short>float Distance</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.CurvePoint.DspSetting">
<summary>
<dd> <p>DSP control setting.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_DISTANCE_CURVE_POINT::DSPSetting']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_distance_curve_point</msdn-id>
<unmanaged>float DSPSetting</unmanaged>
<unmanaged-short>float DSPSetting</unmanaged-short>
</member>
<member name="T:SharpDX.X3DAudio.DistanceCurve">
<summary>
<p>Defines an explicit piecewise curve made up of linear segments, directly defining DSP behavior with respect to normalized distance.</p>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_DISTANCE_CURVE']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_distance_curve</msdn-id>
<unmanaged>X3DAUDIO_DISTANCE_CURVE</unmanaged>
<unmanaged-short>X3DAUDIO_DISTANCE_CURVE</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.DistanceCurve.PointsPointer">
<summary>
<dd> <p> <strong><see cref="T:SharpDX.X3DAudio.CurvePoint" /></strong> array. The array must have no duplicates and be sorted in ascending order with respect to distance.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_DISTANCE_CURVE::pPoints']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_distance_curve</msdn-id>
<unmanaged>X3DAUDIO_DISTANCE_CURVE_POINT* pPoints</unmanaged>
<unmanaged-short>X3DAUDIO_DISTANCE_CURVE_POINT pPoints</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.DistanceCurve.PointCount">
<summary>
<dd> <p>Number of distance curve points. There must be two or more points since all curves must have at least two endpoints defining values at 0.0f and 1.0f normalized distance, respectively.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_DISTANCE_CURVE::PointCount']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_distance_curve</msdn-id>
<unmanaged>unsigned int PointCount</unmanaged>
<unmanaged-short>unsigned int PointCount</unmanaged-short>
</member>
<member name="T:SharpDX.X3DAudio.DspSettings">
<summary>
<p>Receives the results from a call to <strong>X3DAudioCalculate</strong>.</p>
</summary>
<remarks>
<p>The following members must be initialized before passing this structure to the <strong>X3DAudioCalculate</strong> function: </p><ul> <li><strong>pMatrixCoefficients </strong></li> <li><strong>pDelayTimes</strong></li> <li><strong>SrcChannelCount </strong></li> <li><strong>DstChannelCount</strong></li> </ul><p>The following members are returned by passing this structure to the <strong>X3DAudioCalculate</strong> function:</p><ul> <li><strong>pMatrixCoefficients </strong></li> <li><strong>pDelayTimes </strong></li> <li><strong>LPFDirectCoefficient </strong></li> <li><strong>LPFReverbCoefficient</strong></li> <li><strong>ReverbLevel </strong></li> <li><strong>DopplerFactor </strong></li> <li><strong>EmitterToListenerAngle</strong></li> <li><strong>EmitterToListenerDistance </strong></li> <li><strong>EmitterVelocityComponent </strong></li> <li><strong>ListenerVelocityComponent</strong></li> </ul><strong>Note</strong>??For <strong>pMatrixCoefficients</strong> and <strong>pDelayTimes</strong>, <strong>X3DAudioCalculate</strong> does not allocate additional memory. <strong>X3DAudioCalculate</strong> merely modifies the values at the memory locations allocated for these references.?
</remarks>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_DSP_SETTINGS']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_dsp_settings</msdn-id>
<unmanaged>X3DAUDIO_DSP_SETTINGS</unmanaged>
<unmanaged-short>X3DAUDIO_DSP_SETTINGS</unmanaged-short>
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_DSP_SETTINGS']/*" />
<unmanaged>X3DAUDIO_DSP_SETTINGS</unmanaged>
</member>
<member name="F:SharpDX.X3DAudio.DspSettings.MatrixCoefficientsPointer">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_DSP_SETTINGS::pMatrixCoefficients']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_dsp_settings</msdn-id>
<unmanaged>float* pMatrixCoefficients</unmanaged>
<unmanaged-short>float pMatrixCoefficients</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.DspSettings.DelayTimesPointer">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_DSP_SETTINGS::pDelayTimes']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_dsp_settings</msdn-id>
<unmanaged>float* pDelayTimes</unmanaged>
<unmanaged-short>float pDelayTimes</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.DspSettings.SourceChannelCount">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_DSP_SETTINGS::SrcChannelCount']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_dsp_settings</msdn-id>
<unmanaged>unsigned int SrcChannelCount</unmanaged>
<unmanaged-short>unsigned int SrcChannelCount</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.DspSettings.DestinationChannelCount">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_DSP_SETTINGS::DstChannelCount']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_dsp_settings</msdn-id>
<unmanaged>unsigned int DstChannelCount</unmanaged>
<unmanaged-short>unsigned int DstChannelCount</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.DspSettings.LpfDirectCoefficient">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_DSP_SETTINGS::LPFDirectCoefficient']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_dsp_settings</msdn-id>
<unmanaged>float LPFDirectCoefficient</unmanaged>
<unmanaged-short>float LPFDirectCoefficient</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.DspSettings.LpfReverbCoefficient">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_DSP_SETTINGS::LPFReverbCoefficient']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_dsp_settings</msdn-id>
<unmanaged>float LPFReverbCoefficient</unmanaged>
<unmanaged-short>float LPFReverbCoefficient</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.DspSettings.ReverbLevel">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_DSP_SETTINGS::ReverbLevel']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_dsp_settings</msdn-id>
<unmanaged>float ReverbLevel</unmanaged>
<unmanaged-short>float ReverbLevel</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.DspSettings.DopplerFactor">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_DSP_SETTINGS::DopplerFactor']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_dsp_settings</msdn-id>
<unmanaged>float DopplerFactor</unmanaged>
<unmanaged-short>float DopplerFactor</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.DspSettings.EmitterToListenerAngle">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_DSP_SETTINGS::EmitterToListenerAngle']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_dsp_settings</msdn-id>
<unmanaged>float EmitterToListenerAngle</unmanaged>
<unmanaged-short>float EmitterToListenerAngle</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.DspSettings.EmitterToListenerDistance">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_DSP_SETTINGS::EmitterToListenerDistance']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_dsp_settings</msdn-id>
<unmanaged>float EmitterToListenerDistance</unmanaged>
<unmanaged-short>float EmitterToListenerDistance</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.DspSettings.EmitterVelocityComponent">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_DSP_SETTINGS::EmitterVelocityComponent']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_dsp_settings</msdn-id>
<unmanaged>float EmitterVelocityComponent</unmanaged>
<unmanaged-short>float EmitterVelocityComponent</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.DspSettings.ListenerVelocityComponent">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_DSP_SETTINGS::ListenerVelocityComponent']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_dsp_settings</msdn-id>
<unmanaged>float ListenerVelocityComponent</unmanaged>
<unmanaged-short>float ListenerVelocityComponent</unmanaged-short>
</member>
<member name="M:SharpDX.X3DAudio.DspSettings.#ctor(System.Int32,System.Int32)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.X3DAudio.DspSettings" /> class.
</summary>
<param name="sourceChannelCount">The source channel count.</param>
<param name="destinationChannelCount">The destination channel count.</param>
</member>
<member name="F:SharpDX.X3DAudio.DspSettings.MatrixCoefficients">
<summary>
The matrix coefficients
</summary>
</member>
<member name="F:SharpDX.X3DAudio.DspSettings.DelayTimes">
<summary>
The delay times
</summary>
</member>
<member name="T:SharpDX.X3DAudio.Emitter">
<summary>
<p>Defines a single-point or multiple-point 3D audio source that is used with an arbitrary number of sound channels.</p>
</summary>
<remarks>
<p><strong><see cref="T:SharpDX.X3DAudio.Emitter" /></strong> only supports a cone in a single-point emitter. Multi-point emitters are a convenient and efficient way to manage a related group of sound sources. Many properties are shared among all channel points, such as Doppler?the same Doppler shift is applied to all channels in the emitter. Thus, the Doppler value need only be calculated once, not per-point as would be needed with multiple separate single-point emitters. Because <strong><see cref="T:SharpDX.X3DAudio.Emitter" /></strong> only has one orientation vector, a multi-point emitter cone would be of limited usefulness, forcing all channels to behave as if they were facing the same direction. If multiple independent cones are needed, multiple single-point emitters should be used, each with its own orientation. </p><p>The parameter type <see cref="T:SharpDX.Mathematics.Interop.RawVector3" /> is typed to DirectX::XMFLOAT3, to provide x , y , and z floating-point values. </p><p>X3DAudio uses a left-handed Cartesian coordinate system, with values on the x-axis increasing from left to right, on the y-axis from bottom to top, and on the z-axis from near to far. Azimuths are measured clockwise from a given reference direction. To use X3DAudio with right-handed coordinates, you must negate the .z element of <em>OrientFront</em>, <em>OrientTop</em>, <em>Position</em>, and <em>Velocity</em>.</p><p>For user-defined distance curves, the distance field of the first point must be 0.0f and the distance field of the last point must be 1.0f. </p><p>If an emitter moves beyond a distance of (<strong>CurveDistanceScaler</strong> ? 1.0f), the last point on the curve is used to compute the volume output level. The last point is determined by the following:
</p><pre><see cref="T:SharpDX.X3DAudio.DistanceCurve" />.pPoints[PointCount-1].DSPSetting)</pre>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_EMITTER']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_emitter</msdn-id>
<unmanaged>X3DAUDIO_EMITTER</unmanaged>
<unmanaged-short>X3DAUDIO_EMITTER</unmanaged-short>
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_EMITTER']/*" />
<unmanaged>X3DAUDIO_EMITTER</unmanaged>
</member>
<member name="F:SharpDX.X3DAudio.Emitter.ConePointer">
<summary>
<dd> <p>Pointer to a sound cone. Used only with single-channel emitters for matrix, LPF (both direct and reverb paths), and reverb calculations. <c>null</c> specifies the emitter is omnidirectional.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_EMITTER::pCone']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_emitter</msdn-id>
<unmanaged>X3DAUDIO_CONE* pCone</unmanaged>
<unmanaged-short>X3DAUDIO_CONE pCone</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Emitter.OrientFront">
<summary>
<dd> <p>Orientation of the front direction. This value must be orthonormal with <strong>OrientTop</strong>. <strong>OrientFront</strong> must be normalized when used. For single-channel emitters without cones <strong>OrientFront</strong> is only used for emitter angle calculations. For multi channel emitters or single-channel with cones <strong>OrientFront</strong> is used for matrix, LPF (both direct and reverb paths), and reverb calculations.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_EMITTER::OrientFront']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_emitter</msdn-id>
<unmanaged>X3DAUDIO_VECTOR OrientFront</unmanaged>
<unmanaged-short>X3DAUDIO_VECTOR OrientFront</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Emitter.OrientTop">
<summary>
<dd> <p>Orientation of the top direction. This value must be orthonormal with <strong>OrientFront</strong>. <strong>OrientTop</strong> is only used with multi-channel emitters for matrix calculations.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_EMITTER::OrientTop']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_emitter</msdn-id>
<unmanaged>X3DAUDIO_VECTOR OrientTop</unmanaged>
<unmanaged-short>X3DAUDIO_VECTOR OrientTop</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Emitter.Position">
<summary>
<dd> <p>Position in user-defined world units. This value does not affect <strong>Velocity</strong>.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_EMITTER::Position']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_emitter</msdn-id>
<unmanaged>X3DAUDIO_VECTOR Position</unmanaged>
<unmanaged-short>X3DAUDIO_VECTOR Position</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Emitter.Velocity">
<summary>
<dd> <p>Velocity vector in user-defined world units/second. This value is used only for doppler calculations. It does not affect <strong>Position</strong>.
</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_EMITTER::Velocity']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_emitter</msdn-id>
<unmanaged>X3DAUDIO_VECTOR Velocity</unmanaged>
<unmanaged-short>X3DAUDIO_VECTOR Velocity</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Emitter.InnerRadius">
<summary>
<dd> <p>Value to be used for the inner radius calculations. If <strong>InnerRadius</strong> is 0, then no inner radius is used, but <strong>InnerRadiusAngle</strong> may still be used. This value must be between 0.0f and MAX_FLT.
</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_EMITTER::InnerRadius']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_emitter</msdn-id>
<unmanaged>float InnerRadius</unmanaged>
<unmanaged-short>float InnerRadius</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Emitter.InnerRadiusAngle">
<summary>
<dd> <p>Value to be used for the inner radius angle calculations. This value must be between 0.0f and X3DAUDIO_PI/4.0. </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_EMITTER::InnerRadiusAngle']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_emitter</msdn-id>
<unmanaged>float InnerRadiusAngle</unmanaged>
<unmanaged-short>float InnerRadiusAngle</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Emitter.ChannelCount">
<summary>
<dd> <p>Number of emitters defined by the <strong><see cref="T:SharpDX.X3DAudio.Emitter" /></strong> structure. Must be greater than 0. </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_EMITTER::ChannelCount']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_emitter</msdn-id>
<unmanaged>unsigned int ChannelCount</unmanaged>
<unmanaged-short>unsigned int ChannelCount</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Emitter.ChannelRadius">
<summary>
<dd> <p>Distance from <strong>Position</strong> that channels will be placed if <strong>ChannelCount</strong> is greater than 1. <strong>ChannelRadius</strong> is only used with multi-channel emitters for matrix calculations. Must be greater than or equal to 0.0f.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_EMITTER::ChannelRadius']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_emitter</msdn-id>
<unmanaged>float ChannelRadius</unmanaged>
<unmanaged-short>float ChannelRadius</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Emitter.ChannelAzimuthsPointer">
<summary>
<dd> <p>Table of channel positions, expressed as an azimuth in radians along the channel radius with respect to the front orientation vector in the plane orthogonal to the top orientation vector. An azimuth of X3DAUDIO_2PI specifies a channel is a low-frequency effects (LFE) channel. LFE channels are positioned at the emitter base and are calculated with respect to <strong>pLFECurve</strong> only, never <strong>pVolumeCurve</strong>. <strong>pChannelAzimuths</strong> must have at least <strong>ChannelCount</strong> elements, but can be <strong><c>null</c></strong> if <strong>ChannelCount</strong> = 1. The table values must be within 0.0f to X3DAUDIO_2PI. <strong>pChannelAzimuths</strong> is used with multi-channel emitters for matrix calculations. </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_EMITTER::pChannelAzimuths']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_emitter</msdn-id>
<unmanaged>float* pChannelAzimuths</unmanaged>
<unmanaged-short>float pChannelAzimuths</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Emitter.VolumeCurvePointer">
<summary>
<dd> <p>Volume-level distance curve, which is used only for matrix calculations. <c>null</c> specifies a specialized default curve that conforms to the inverse square law, such that when distance is between 0.0f and <strong>CurveDistanceScaler</strong> ? 1.0f, no attenuation is applied.
When distance is greater than <strong>CurveDistanceScaler</strong> ? 1.0f, the amplification factor is (<strong>CurveDistanceScaler</strong> ? 1.0f)/distance. At a distance of <strong>CurveDistanceScaler</strong> ? 2.0f, the sound will be at half volume or -6 dB, at a distance of <strong>CurveDistanceScaler</strong> ? 4.0f, the sound will be at one quarter volume or -12 dB, and so on. <strong>pVolumeCurve</strong> and pLFECurve are independent of each other. <strong>pVolumeCurve</strong> does not affect <strong>LFE channel</strong> volume. </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_EMITTER::pVolumeCurve']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_emitter</msdn-id>
<unmanaged>X3DAUDIO_DISTANCE_CURVE* pVolumeCurve</unmanaged>
<unmanaged-short>X3DAUDIO_DISTANCE_CURVE pVolumeCurve</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Emitter.LFECurvePointer">
<summary>
<dd> <p>LFE roll-off distance curve, or <c>null</c> to use default curve: [0.0f, <strong>CurveDistanceScaler</strong> ?1.0f], [<strong>CurveDistanceScaler</strong> ?1.0f, 0.0f]. A <c>null</c> value for <strong>pLFECurve</strong> specifies a default curve that conforms to the inverse square law with distances &lt;= <strong>CurveDistanceScaler</strong> clamped to no attenuation.
<strong>pVolumeCurve</strong> and <strong>pLFECurve</strong> are independent of each other. <strong>pLFECurve</strong> does not affect non LFE channel volume. </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_EMITTER::pLFECurve']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_emitter</msdn-id>
<unmanaged>X3DAUDIO_DISTANCE_CURVE* pLFECurve</unmanaged>
<unmanaged-short>X3DAUDIO_DISTANCE_CURVE pLFECurve</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Emitter.LPFDirectCurvePointer">
<summary>
<dd> <p>Low-pass filter (LPF) direct-path coefficient distance curve, or <c>null</c> to use the default curve: [0.0f, 1.0f], [1.0f, 0.75f]. <strong>pLPFDirectCurve</strong> is only used for LPF direct-path calculations.
</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_EMITTER::pLPFDirectCurve']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_emitter</msdn-id>
<unmanaged>X3DAUDIO_DISTANCE_CURVE* pLPFDirectCurve</unmanaged>
<unmanaged-short>X3DAUDIO_DISTANCE_CURVE pLPFDirectCurve</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Emitter.LPFReverbCurvePointer">
<summary>
<dd> <p>LPF reverb-path coefficient distance curve, or <c>null</c> to use default curve: [0.0f, 0.75f], [1.0f, 0.75f]. <strong>pLPFReverbCurve</strong> is only used for LPF reverb path calculations.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_EMITTER::pLPFReverbCurve']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_emitter</msdn-id>
<unmanaged>X3DAUDIO_DISTANCE_CURVE* pLPFReverbCurve</unmanaged>
<unmanaged-short>X3DAUDIO_DISTANCE_CURVE pLPFReverbCurve</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Emitter.ReverbCurvePointer">
<summary>
<dd> <p>Reverb send level distance curve, or <c>null</c> to use default curve: [0.0f, 1.0f], [1.0f, 0.0f]. </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_EMITTER::pReverbCurve']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_emitter</msdn-id>
<unmanaged>X3DAUDIO_DISTANCE_CURVE* pReverbCurve</unmanaged>
<unmanaged-short>X3DAUDIO_DISTANCE_CURVE pReverbCurve</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Emitter.CurveDistanceScaler">
<summary>
<dd> <p>Curve distance scaler that is used to scale normalized distance curves to user-defined world units, and/or to exaggerate their effect. This does not affect any other calculations. The value must be within the range FLT_MIN to FLT_MAX. <strong>CurveDistanceScaler</strong> is only used for matrix, LPF (both direct and reverb paths), and reverb calculations.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_EMITTER::CurveDistanceScaler']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_emitter</msdn-id>
<unmanaged>float CurveDistanceScaler</unmanaged>
<unmanaged-short>float CurveDistanceScaler</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Emitter.DopplerScaler">
<summary>
<dd> <p>Doppler shift scaler that is used to exaggerate Doppler shift effect. <strong>DopplerScaler</strong> is only used for Doppler calculations and does not affect any other calculations. The value must be within the range 0.0f to FLT_MAX.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_EMITTER::DopplerScaler']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_emitter</msdn-id>
<unmanaged>float DopplerScaler</unmanaged>
<unmanaged-short>float DopplerScaler</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Emitter.Cone">
<summary>
Reference to Cone data.
</summary>
<unmanaged>X3DAUDIO_CONE* pCone</unmanaged>
</member>
<member name="M:SharpDX.X3DAudio.Emitter.__MarshalTo(SharpDX.X3DAudio.Emitter.__Native@)">
disabled as it is not used
</member>
<member name="T:SharpDX.X3DAudio.Listener">
<summary>
<p>Defines a point of 3D audio reception.</p>
</summary>
<remarks>
<p>X3DAudio uses a left-handed Cartesian coordinate system, with values on the x-axis increasing from left to right, on the y-axis from bottom to top, and on the z-axis from near to far. Azimuths are measured clockwise from a given reference direction. To use X3DAudio with right-handed coordinates, you must negate the .z element of <em>OrientFront</em>, <em>OrientTop</em>, <em>Position</em>, and <em>Velocity</em>.</p><p>The parameter type <strong><see cref="T:SharpDX.Mathematics.Interop.RawVector3" /></strong> is typed to DirectX::XMFLOAT3, to provide x, y and z floating-point values. </p><p>A listener's front and top vectors must be orthonormal. To be considered orthonormal, a pair of vectors must have a magnitude of 1 +- 1x10-5 and a dot product of 0 +- 1x10-5. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_LISTENER']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_listener</msdn-id>
<unmanaged>X3DAUDIO_LISTENER</unmanaged>
<unmanaged-short>X3DAUDIO_LISTENER</unmanaged-short>
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_LISTENER']/*" />
<unmanaged>X3DAUDIO_LISTENER</unmanaged>
</member>
<member name="F:SharpDX.X3DAudio.Listener.OrientFront">
<summary>
<dd> <p>Orientation of front direction. When <strong>pCone</strong> is <c>null</c> <strong>OrientFront</strong> is used only for matrix and delay calculations. When <strong>pCone</strong> is not <c>null</c> <strong>OrientFront</strong> is used for matrix, LPF (both direct and reverb paths), and reverb calculations. This value must be orthonormal with <strong>OrientTop</strong> when used.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_LISTENER::OrientFront']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_listener</msdn-id>
<unmanaged>X3DAUDIO_VECTOR OrientFront</unmanaged>
<unmanaged-short>X3DAUDIO_VECTOR OrientFront</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Listener.OrientTop">
<summary>
<dd> <p>Orientation of top direction, used only for matrix and delay calculations. This value must be orthonormal with <strong>OrientFront</strong> when used.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_LISTENER::OrientTop']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_listener</msdn-id>
<unmanaged>X3DAUDIO_VECTOR OrientTop</unmanaged>
<unmanaged-short>X3DAUDIO_VECTOR OrientTop</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Listener.Position">
<summary>
<dd> <p>Position in user-defined world units. This value does not affect <strong>Velocity</strong>.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_LISTENER::Position']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_listener</msdn-id>
<unmanaged>X3DAUDIO_VECTOR Position</unmanaged>
<unmanaged-short>X3DAUDIO_VECTOR Position</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Listener.Velocity">
<summary>
<dd> <p>Velocity vector in user-defined world units per second, used only for doppler calculations. This value does not affect <strong>Position</strong>.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_LISTENER::Velocity']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_listener</msdn-id>
<unmanaged>X3DAUDIO_VECTOR Velocity</unmanaged>
<unmanaged-short>X3DAUDIO_VECTOR Velocity</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Listener.ConePointer">
<summary>
<dd> <p>Pointer to an <strong><see cref="T:SharpDX.X3DAudio.Cone" /></strong> structure for this listener. Providing a listener cone will specify that additional calculations are performed when determining the volume and filter DSP parameters for individual sound sources. A <c>null</c> <strong>pCone</strong> value specifies an omnidirectional sound and no cone processing is applied. <strong>pCone</strong> is only used for matrix, LPF (both direct and reverb paths), and reverb calculations.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAUDIO_LISTENER::pCone']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudio_listener</msdn-id>
<unmanaged>X3DAUDIO_CONE* pCone</unmanaged>
<unmanaged-short>X3DAUDIO_CONE pCone</unmanaged-short>
</member>
<member name="F:SharpDX.X3DAudio.Listener.Cone">
<summary>
Reference to Cone data.
</summary>
<unmanaged>X3DAUDIO_CONE* pCone</unmanaged>
</member>
<member name="M:SharpDX.X3DAudio.Listener.__MarshalTo(SharpDX.X3DAudio.Listener.__Native@)">
Disabled as it is not used
</member>
<member name="T:SharpDX.X3DAudio.NamespaceDoc">
<summary>
The <see cref="N:SharpDX.X3DAudio"/> namespace provides a managed X3DAudio API.
</summary>
<msdn-id>ee415714</msdn-id>
<unmanaged>X3DAudio</unmanaged>
<unmanaged-short>X3DAudio</unmanaged-short>
</member>
<member name="T:SharpDX.X3DAudio.X3DAudio17">
<summary>
Functions
</summary>
<!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='SharpDX.X3DAudio.X3DAudio']/*" />
</member>
<member name="M:SharpDX.X3DAudio.X3DAudio17.X3DAudioCalculate(SharpDX.X3DAudio.X3DAudioHandle@,SharpDX.X3DAudio.Listener,SharpDX.X3DAudio.Emitter,SharpDX.X3DAudio.CalculateFlags,System.IntPtr)">
<summary>
<p>Calculates DSP settings with respect to 3D parameters.</p>
</summary>
<param name="instance"><dd> <p>3D audio instance handle. Call <strong><see cref="!:SharpDX.X3DAudio.X3DAudio.X3DAudioInitialize" /></strong> to get this handle.</p> </dd></param>
<param name="listenerRef"><dd> <p>Pointer to an <strong><see cref="T:SharpDX.X3DAudio.Listener" /></strong> representing the point of reception.</p> </dd></param>
<param name="emitterRef"><dd> <p>Pointer to an <strong><see cref="T:SharpDX.X3DAudio.Emitter" /></strong> representing the sound source.</p> </dd></param>
<param name="flags"><dd> <table> <tr><th>Value</th><th>Description</th></tr> <tr><td><see cref="F:SharpDX.X3DAudio.CalculateFlags.Matrix" /></td><td>Enables matrix coefficient table calculation.?</td></tr> <tr><td><see cref="F:SharpDX.X3DAudio.CalculateFlags.Delay" /></td><td>Enables delay time array calculation (stereo only).?</td></tr> <tr><td><see cref="F:SharpDX.X3DAudio.CalculateFlags.LpfDirect" /></td><td>Enables low pass filter (LPF) direct-path coefficient calculation.?</td></tr> <tr><td><see cref="F:SharpDX.X3DAudio.CalculateFlags.LpfReverb" /></td><td>Enables LPF reverb-path coefficient calculation.?</td></tr> <tr><td><see cref="F:SharpDX.X3DAudio.CalculateFlags.Reverb" /></td><td>Enables reverb send level calculation.?</td></tr> <tr><td><see cref="F:SharpDX.X3DAudio.CalculateFlags.Doppler" /></td><td>Enables Doppler shift factor calculation.?</td></tr> <tr><td><see cref="F:SharpDX.X3DAudio.CalculateFlags.EmitterAngle" /></td><td>Enables emitter-to-listener interior angle calculation.?</td></tr> <tr><td><see cref="F:SharpDX.X3DAudio.CalculateFlags.ZeroCenter" /></td><td>Fills the center channel with silence. This flag allows you to keep a 6-channel matrix so you do not have to remap the channels, but the center channel will be silent. This flag is only valid if you also set <see cref="F:SharpDX.X3DAudio.CalculateFlags.Matrix" />.?</td></tr> <tr><td><see cref="F:SharpDX.X3DAudio.CalculateFlags.RedirectToLfe" /></td><td> Applies an equal mix of all source channels to a low frequency effect (LFE) destination channel. It only applies to matrix calculations with a source that does not have an LFE channel and a destination that does have an LFE channel. This flag is only valid if you also set <see cref="F:SharpDX.X3DAudio.CalculateFlags.Matrix" />.?</td></tr> </table> <p>?</p> </dd></param>
<param name="dSPSettingsRef"><dd> <p>Pointer to an <strong><see cref="T:SharpDX.X3DAudio.DspSettings" /></strong> structure that receives the calculation results.</p> </dd></param>
<remarks>
<p>You typically call <strong><see cref="!:SharpDX.X3DAudio.X3DAudio.X3DAudioCalculate" /></strong> once for each pair of emitting objects and listeners in the scene. After each call, to apply the 3D effects, the app manually applies the calculation results at <em>pDSPSettings</em> to the XAUDIO2 graph. For more info, see How to: Integrate X3DAudio with XAudio2.</p><p><strong>Important</strong>?? The listener and emitter values must be valid. Floating-point specials (NaN, QNaN, +INF, -INF) can cause the entire audio output to go silent if introduced into a running audio graph.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAudioCalculate']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudiocalculate</msdn-id>
<unmanaged>void X3DAudioCalculate([In] const X3DAUDIOHANDLE* Instance,[In] const X3DAUDIO_LISTENER* pListener,[In] const X3DAUDIO_EMITTER* pEmitter,[In] X3DAudioCalculateFlags Flags,[In] void* pDSPSettings)</unmanaged>
<unmanaged-short>X3DAudioCalculate</unmanaged-short>
</member>
<member name="M:SharpDX.X3DAudio.X3DAudio17.X3DAudioInitialize(SharpDX.Multimedia.Speakers,System.Single,SharpDX.X3DAudio.X3DAudioHandle@)">
<summary>
<p>Sets all global 3D audio constants.</p>
</summary>
<param name="speakerChannelMask"><dd> <p>Assignment of channels to speaker positions. This value must not be zero. The only permissible value on Xbox 360 is SPEAKER_XBOX.</p> </dd></param>
<param name="speedOfSound"><dd> <p>Speed of sound, in user-defined world units per second. Use this value only for doppler calculations. It must be greater than or equal to FLT_MIN.</p> </dd></param>
<param name="instance"><dd> <p>3D audio instance handle. Use this handle when you call <strong><see cref="!:SharpDX.X3DAudio.X3DAudio.X3DAudioCalculate" /></strong>.</p> </dd></param>
<returns><p>This function does not return a value.</p></returns>
<remarks>
<p><strong>X3DAUDIO_HANDLE</strong> is an opaque data structure. Because the operating system doesn't allocate any additional storage for the 3D audio instance handle, you don't need to free or close it.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAudioInitialize']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudioinitialize</msdn-id>
<unmanaged>HRESULT X3DAudioInitialize([In] SPEAKER_FLAGS SpeakerChannelMask,[In] float SpeedOfSound,[Out] X3DAUDIOHANDLE* Instance)</unmanaged>
<unmanaged-short>X3DAudioInitialize</unmanaged-short>
</member>
<member name="T:SharpDX.X3DAudio.X3DAudio28">
<summary>
Functions
</summary>
<!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='SharpDX.X3DAudio.X3DAudio']/*" />
</member>
<member name="M:SharpDX.X3DAudio.X3DAudio28.X3DAudioCalculate(SharpDX.X3DAudio.X3DAudioHandle@,SharpDX.X3DAudio.Listener,SharpDX.X3DAudio.Emitter,SharpDX.X3DAudio.CalculateFlags,System.IntPtr)">
<summary>
<p>Calculates DSP settings with respect to 3D parameters.</p>
</summary>
<param name="instance"><dd> <p>3D audio instance handle. Call <strong><see cref="!:SharpDX.X3DAudio.X3DAudio.X3DAudioInitialize" /></strong> to get this handle.</p> </dd></param>
<param name="listenerRef"><dd> <p>Pointer to an <strong><see cref="T:SharpDX.X3DAudio.Listener" /></strong> representing the point of reception.</p> </dd></param>
<param name="emitterRef"><dd> <p>Pointer to an <strong><see cref="T:SharpDX.X3DAudio.Emitter" /></strong> representing the sound source.</p> </dd></param>
<param name="flags"><dd> <table> <tr><th>Value</th><th>Description</th></tr> <tr><td><see cref="F:SharpDX.X3DAudio.CalculateFlags.Matrix" /></td><td>Enables matrix coefficient table calculation.?</td></tr> <tr><td><see cref="F:SharpDX.X3DAudio.CalculateFlags.Delay" /></td><td>Enables delay time array calculation (stereo only).?</td></tr> <tr><td><see cref="F:SharpDX.X3DAudio.CalculateFlags.LpfDirect" /></td><td>Enables low pass filter (LPF) direct-path coefficient calculation.?</td></tr> <tr><td><see cref="F:SharpDX.X3DAudio.CalculateFlags.LpfReverb" /></td><td>Enables LPF reverb-path coefficient calculation.?</td></tr> <tr><td><see cref="F:SharpDX.X3DAudio.CalculateFlags.Reverb" /></td><td>Enables reverb send level calculation.?</td></tr> <tr><td><see cref="F:SharpDX.X3DAudio.CalculateFlags.Doppler" /></td><td>Enables Doppler shift factor calculation.?</td></tr> <tr><td><see cref="F:SharpDX.X3DAudio.CalculateFlags.EmitterAngle" /></td><td>Enables emitter-to-listener interior angle calculation.?</td></tr> <tr><td><see cref="F:SharpDX.X3DAudio.CalculateFlags.ZeroCenter" /></td><td>Fills the center channel with silence. This flag allows you to keep a 6-channel matrix so you do not have to remap the channels, but the center channel will be silent. This flag is only valid if you also set <see cref="F:SharpDX.X3DAudio.CalculateFlags.Matrix" />.?</td></tr> <tr><td><see cref="F:SharpDX.X3DAudio.CalculateFlags.RedirectToLfe" /></td><td> Applies an equal mix of all source channels to a low frequency effect (LFE) destination channel. It only applies to matrix calculations with a source that does not have an LFE channel and a destination that does have an LFE channel. This flag is only valid if you also set <see cref="F:SharpDX.X3DAudio.CalculateFlags.Matrix" />.?</td></tr> </table> <p>?</p> </dd></param>
<param name="dSPSettingsRef"><dd> <p>Pointer to an <strong><see cref="T:SharpDX.X3DAudio.DspSettings" /></strong> structure that receives the calculation results.</p> </dd></param>
<remarks>
<p>You typically call <strong><see cref="!:SharpDX.X3DAudio.X3DAudio.X3DAudioCalculate" /></strong> once for each pair of emitting objects and listeners in the scene. After each call, to apply the 3D effects, the app manually applies the calculation results at <em>pDSPSettings</em> to the XAUDIO2 graph. For more info, see How to: Integrate X3DAudio with XAudio2.</p><p><strong>Important</strong>?? The listener and emitter values must be valid. Floating-point specials (NaN, QNaN, +INF, -INF) can cause the entire audio output to go silent if introduced into a running audio graph.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAudioCalculate']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudiocalculate</msdn-id>
<unmanaged>void X3DAudioCalculate([In] const X3DAUDIOHANDLE* Instance,[In] const X3DAUDIO_LISTENER* pListener,[In] const X3DAUDIO_EMITTER* pEmitter,[In] X3DAudioCalculateFlags Flags,[In] void* pDSPSettings)</unmanaged>
<unmanaged-short>X3DAudioCalculate</unmanaged-short>
</member>
<member name="M:SharpDX.X3DAudio.X3DAudio28.X3DAudioInitialize(SharpDX.Multimedia.Speakers,System.Single,SharpDX.X3DAudio.X3DAudioHandle@)">
<summary>
<p>Sets all global 3D audio constants.</p>
</summary>
<param name="speakerChannelMask"><dd> <p>Assignment of channels to speaker positions. This value must not be zero. The only permissible value on Xbox 360 is SPEAKER_XBOX.</p> </dd></param>
<param name="speedOfSound"><dd> <p>Speed of sound, in user-defined world units per second. Use this value only for doppler calculations. It must be greater than or equal to FLT_MIN.</p> </dd></param>
<param name="instance"><dd> <p>3D audio instance handle. Use this handle when you call <strong><see cref="!:SharpDX.X3DAudio.X3DAudio.X3DAudioCalculate" /></strong>.</p> </dd></param>
<returns><p>This function does not return a value.</p></returns>
<remarks>
<p><strong>X3DAUDIO_HANDLE</strong> is an opaque data structure. Because the operating system doesn't allocate any additional storage for the 3D audio instance handle, you don't need to free or close it.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="Documentation\CodeComments.xml" path="/comments/comment[@id='X3DAudioInitialize']/*" />
<msdn-id>microsoft.directx_sdk.x3daudio.x3daudioinitialize</msdn-id>
<unmanaged>HRESULT X3DAudioInitialize([In] SPEAKER_FLAGS SpeakerChannelMask,[In] float SpeedOfSound,[Out] X3DAUDIOHANDLE* Instance)</unmanaged>
<unmanaged-short>X3DAudioInitialize</unmanaged-short>
</member>
<member name="T:SharpDX.X3DAudio.X3DAudioVersion">
<summary>
An enum to select the XAudio version to load.
</summary>
</member>
<member name="F:SharpDX.X3DAudio.X3DAudioVersion.Default">
<summary>
The default version (X3DAudio1_7.dll if it is installed, otherwise XAudio2_8.dll or from XAudio2_9.dll)
</summary>
</member>
<member name="F:SharpDX.X3DAudio.X3DAudioVersion.Version17">
<summary>
The X3DAudio1.7 version (X3DAudio1_7.dll).
</summary>
</member>
<member name="F:SharpDX.X3DAudio.X3DAudioVersion.Version28">
<summary>
From the XAudio2.8 version (XAudio2_8.dll).
</summary>
</member>
<member name="F:SharpDX.X3DAudio.X3DAudioVersion.Version29">
<summary>
From the XAudio2.9 version (XAudio2_9.dll).
</summary>
</member>
<member name="T:SharpDX.XAPO.BufferFlags">
<summary>
<p>Describes the contents of a stream buffer. </p>
</summary>
<remarks>
<p>This metadata can be used to implement optimizations that require knowledge of a stream buffer's contents. For example, XAPOs that always produce silent output from silent input can check the flag on the input stream buffer to determine if any signal processing is necessary. If silent, the XAPO can simply set the flag on the output stream buffer to silent and return, thus averting the work of processing silent data. </p><p>Likewise, XAPOs that receive valid input data, but generate silence (for any reason), may set the output stream buffer's flag accordingly, rather than writing silent samples to the buffer. </p><p>These flags represent what should be assumed is in the respective buffer. The flags may not reflect what is actually stored in memory. For example, the <see cref="F:SharpDX.XAPO.BufferFlags.Silent" /> indicates that silent data should be assumed, however the respective memory may be uninitialized </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_BUFFER_FLAGS']/*" />
<msdn-id>microsoft.directx_sdk.xapo.xapo_buffer_flags</msdn-id>
<unmanaged>XAPO_BUFFER_FLAGS</unmanaged>
<unmanaged-short>XAPO_BUFFER_FLAGS</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.BufferFlags.Silent">
<summary>
<dd> <p>Stream buffer contains only silent samples.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_BUFFER_SILENT']/*" />
<msdn-id>microsoft.directx_sdk.xapo.xapo_buffer_flags</msdn-id>
<unmanaged>XAPO_BUFFER_SILENT</unmanaged>
<unmanaged-short>XAPO_BUFFER_SILENT</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.BufferFlags.Valid">
<summary>
<dd> <p>Stream buffer contains audio data to be processed.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_BUFFER_VALID']/*" />
<msdn-id>microsoft.directx_sdk.xapo.xapo_buffer_flags</msdn-id>
<unmanaged>XAPO_BUFFER_VALID</unmanaged>
<unmanaged-short>XAPO_BUFFER_VALID</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.BufferFlags.None">
<summary>
None.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='']/*" />
<unmanaged>None</unmanaged>
<unmanaged-short>None</unmanaged-short>
</member>
<member name="T:SharpDX.XAPO.PropertyFlags">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_PROPERTY_TYPE']/*" />
<unmanaged>XAPO_PROPERTY_TYPE</unmanaged>
<unmanaged-short>XAPO_PROPERTY_TYPE</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.PropertyFlags.ChannelsMustMatch">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_FLAG_CHANNELS_MUST_MATCH']/*" />
<unmanaged>XAPO_FLAG_CHANNELS_MUST_MATCH</unmanaged>
<unmanaged-short>XAPO_FLAG_CHANNELS_MUST_MATCH</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.PropertyFlags.FrameRateMustMatch">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_FLAG_FRAMERATE_MUST_MATCH']/*" />
<unmanaged>XAPO_FLAG_FRAMERATE_MUST_MATCH</unmanaged>
<unmanaged-short>XAPO_FLAG_FRAMERATE_MUST_MATCH</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.PropertyFlags.BitspersampleMustMatch">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_FLAG_BITSPERSAMPLE_MUST_MATCH']/*" />
<unmanaged>XAPO_FLAG_BITSPERSAMPLE_MUST_MATCH</unmanaged>
<unmanaged-short>XAPO_FLAG_BITSPERSAMPLE_MUST_MATCH</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.PropertyFlags.BufferCountMustMatch">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_FLAG_BUFFERCOUNT_MUST_MATCH']/*" />
<unmanaged>XAPO_FLAG_BUFFERCOUNT_MUST_MATCH</unmanaged>
<unmanaged-short>XAPO_FLAG_BUFFERCOUNT_MUST_MATCH</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.PropertyFlags.InplaceRequired">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_FLAG_INPLACE_REQUIRED']/*" />
<unmanaged>XAPO_FLAG_INPLACE_REQUIRED</unmanaged>
<unmanaged-short>XAPO_FLAG_INPLACE_REQUIRED</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.PropertyFlags.InplaceSupported">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_FLAG_INPLACE_SUPPORTED']/*" />
<unmanaged>XAPO_FLAG_INPLACE_SUPPORTED</unmanaged>
<unmanaged-short>XAPO_FLAG_INPLACE_SUPPORTED</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.PropertyFlags.Default">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_FLAG_DEFAULT']/*" />
<unmanaged>XAPO_FLAG_DEFAULT</unmanaged>
<unmanaged-short>XAPO_FLAG_DEFAULT</unmanaged-short>
</member>
<member name="T:SharpDX.XAPO.Fx.Echo">
<summary>
Functions
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='SharpDX.XAPO.Fx.Echo']/*" />
<summary>
An Echo XAPO AudioProcessor
</summary>
</member>
<member name="F:SharpDX.XAPO.Fx.Echo.MinimumWetdrymix">
<summary>Constant MinimumWetdrymix.</summary>
<unmanaged>FXECHO_MIN_WETDRYMIX</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Echo.MaximumWetdrymix">
<summary>Constant MaximumWetdrymix.</summary>
<unmanaged>FXECHO_MAX_WETDRYMIX</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Echo.DefaultWetdrymix">
<summary>Constant DefaultWetdrymix.</summary>
<unmanaged>FXECHO_DEFAULT_WETDRYMIX</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Echo.MinimumFeedback">
<summary>Constant MinimumFeedback.</summary>
<unmanaged>FXECHO_MIN_FEEDBACK</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Echo.MaximumFeedback">
<summary>Constant MaximumFeedback.</summary>
<unmanaged>FXECHO_MAX_FEEDBACK</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Echo.DefaultFeedback">
<summary>Constant DefaultFeedback.</summary>
<unmanaged>FXECHO_DEFAULT_FEEDBACK</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Echo.MinimumDelay">
<summary>Constant MinimumDelay.</summary>
<unmanaged>FXECHO_MIN_DELAY</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Echo.MaximumDelay">
<summary>Constant MaximumDelay.</summary>
<unmanaged>FXECHO_MAX_DELAY</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Echo.DefaultDelay">
<summary>Constant DefaultDelay.</summary>
<unmanaged>FXECHO_DEFAULT_DELAY</unmanaged>
</member>
<member name="M:SharpDX.XAPO.Fx.Echo.#ctor(SharpDX.XAudio2.XAudio2)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAPO.Fx.Echo"/> class.
</summary>
</member>
<member name="T:SharpDX.XAPO.Fx.Equalizer">
<summary>
Functions
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='SharpDX.XAPO.Fx.Equalizer']/*" />
<summary>
A Equalizer XAPO AudioProcessor
</summary>
</member>
<member name="F:SharpDX.XAPO.Fx.Equalizer.MinimumFrameRate">
<summary>Constant MinimumFrameRate.</summary>
<unmanaged>FXEQ_MIN_FRAMERATE</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Equalizer.MaximumFrameRate">
<summary>Constant MaximumFrameRate.</summary>
<unmanaged>FXEQ_MAX_FRAMERATE</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Equalizer.MinimumFrequencyCenter">
<summary>Constant MinimumFrequencyCenter.</summary>
<unmanaged>FXEQ_MIN_FREQUENCY_CENTER</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Equalizer.MaximumFrequencyCenter">
<summary>Constant MaximumFrequencyCenter.</summary>
<unmanaged>FXEQ_MAX_FREQUENCY_CENTER</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Equalizer.DefaultFrequencyCenter0">
<summary>Constant DefaultFrequencyCenter0.</summary>
<unmanaged>FXEQ_DEFAULT_FREQUENCY_CENTER_0</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Equalizer.DefaultFrequencyCenter1">
<summary>Constant DefaultFrequencyCenter1.</summary>
<unmanaged>FXEQ_DEFAULT_FREQUENCY_CENTER_1</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Equalizer.DefaultFrequencyCenter2">
<summary>Constant DefaultFrequencyCenter2.</summary>
<unmanaged>FXEQ_DEFAULT_FREQUENCY_CENTER_2</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Equalizer.DefaultFrequencyCenter3">
<summary>Constant DefaultFrequencyCenter3.</summary>
<unmanaged>FXEQ_DEFAULT_FREQUENCY_CENTER_3</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Equalizer.MinimumGain">
<summary>Constant MinimumGain.</summary>
<unmanaged>FXEQ_MIN_GAIN</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Equalizer.MaximumGain">
<summary>Constant MaximumGain.</summary>
<unmanaged>FXEQ_MAX_GAIN</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Equalizer.DefaultGain">
<summary>Constant DefaultGain.</summary>
<unmanaged>FXEQ_DEFAULT_GAIN</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Equalizer.MinimumBandwidth">
<summary>Constant MinimumBandwidth.</summary>
<unmanaged>FXEQ_MIN_BANDWIDTH</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Equalizer.MaximumBandwidth">
<summary>Constant MaximumBandwidth.</summary>
<unmanaged>FXEQ_MAX_BANDWIDTH</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Equalizer.DefaultBandwidth">
<summary>Constant DefaultBandwidth.</summary>
<unmanaged>FXEQ_DEFAULT_BANDWIDTH</unmanaged>
</member>
<member name="M:SharpDX.XAPO.Fx.Equalizer.#ctor(SharpDX.XAudio2.XAudio2)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAPO.Fx.Equalizer"/> class.
</summary>
</member>
<member name="T:SharpDX.XAPO.Fx.MasteringLimiter">
<summary>
Functions
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='SharpDX.XAPO.Fx.MasteringLimiter']/*" />
<summary>
A MateringLimiter XAPO AudioProcessor
</summary>
</member>
<member name="F:SharpDX.XAPO.Fx.MasteringLimiter.MinimumRelease">
<summary>Constant MinimumRelease.</summary>
<unmanaged>FXMASTERINGLIMITER_MIN_RELEASE</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.MasteringLimiter.MaximumRelease">
<summary>Constant MaximumRelease.</summary>
<unmanaged>FXMASTERINGLIMITER_MAX_RELEASE</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.MasteringLimiter.DefaultRelease">
<summary>Constant DefaultRelease.</summary>
<unmanaged>FXMASTERINGLIMITER_DEFAULT_RELEASE</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.MasteringLimiter.MinimumLoudness">
<summary>Constant MinimumLoudness.</summary>
<unmanaged>FXMASTERINGLIMITER_MIN_LOUDNESS</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.MasteringLimiter.MaximumLoudness">
<summary>Constant MaximumLoudness.</summary>
<unmanaged>FXMASTERINGLIMITER_MAX_LOUDNESS</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.MasteringLimiter.DefaultLoudness">
<summary>Constant DefaultLoudness.</summary>
<unmanaged>FXMASTERINGLIMITER_DEFAULT_LOUDNESS</unmanaged>
</member>
<member name="M:SharpDX.XAPO.Fx.MasteringLimiter.#ctor(SharpDX.XAudio2.XAudio2)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAPO.Fx.MasteringLimiter"/> class.
</summary>
</member>
<member name="T:SharpDX.XAPO.Fx.Reverb">
<summary>
Functions
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='SharpDX.XAPO.Fx.Reverb']/*" />
<summary>
A Reverb XAPO AudioProcessor
</summary>
</member>
<member name="F:SharpDX.XAPO.Fx.Reverb.MinimumDiffusion">
<summary>Constant MinimumDiffusion.</summary>
<unmanaged>FXREVERB_MIN_DIFFUSION</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Reverb.MaximumDiffusion">
<summary>Constant MaximumDiffusion.</summary>
<unmanaged>FXREVERB_MAX_DIFFUSION</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Reverb.DefaultDiffusion">
<summary>Constant DefaultDiffusion.</summary>
<unmanaged>FXREVERB_DEFAULT_DIFFUSION</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Reverb.MinimumRoomsize">
<summary>Constant MinimumRoomsize.</summary>
<unmanaged>FXREVERB_MIN_ROOMSIZE</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Reverb.MaximumRoomsize">
<summary>Constant MaximumRoomsize.</summary>
<unmanaged>FXREVERB_MAX_ROOMSIZE</unmanaged>
</member>
<member name="F:SharpDX.XAPO.Fx.Reverb.DefaultRoomsize">
<summary>Constant DefaultRoomsize.</summary>
<unmanaged>FXREVERB_DEFAULT_ROOMSIZE</unmanaged>
</member>
<member name="M:SharpDX.XAPO.Fx.Reverb.#ctor(SharpDX.XAudio2.XAudio2)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAPO.Fx.Reverb"/> class.
</summary>
</member>
<member name="T:SharpDX.XAPO.Fx.XAPOFx">
<summary>
Functions
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='SharpDX.XAPO.Fx.XAPOFx']/*" />
<summary>
Functions
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='SharpDX.XAPO.Fx.XAPOFx']/*" />
</member>
<member name="F:SharpDX.XAPO.Fx.XAPOFx.CLSID_FXEcho_15">
<summary>Constant None.</summary>
</member>
<member name="F:SharpDX.XAPO.Fx.XAPOFx.CLSID_FXEQ_15">
<summary>Constant None.</summary>
</member>
<member name="F:SharpDX.XAPO.Fx.XAPOFx.CLSID_FXMasteringLimiter_15">
<summary>Constant None.</summary>
</member>
<member name="F:SharpDX.XAPO.Fx.XAPOFx.CLSID_FXReverb_15">
<summary>Constant None.</summary>
</member>
<member name="T:SharpDX.XAPO.Fx.EchoInitdata">
<summary>
<p>Initialization parameters for use with the FXECHO XAPOFX.</p>
</summary>
<remarks>
<p>Use of this structure is optional. The default <strong>MaxDelay</strong> is <strong><see cref="F:SharpDX.XAPO.Fx.Echo.DefaultDelay" /></strong>.</p><strong>Note</strong>??The DirectX SDK versions of XAUDIO2 don't support this functionality.?
</remarks>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXECHO_INITDATA']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxecho_initdata</msdn-id>
<unmanaged>FXECHO_INITDATA</unmanaged>
<unmanaged-short>FXECHO_INITDATA</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.Fx.EchoInitdata.MaxDelay">
<summary>
No documentation.
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXECHO_INITDATA::MaxDelay']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxecho_initdata</msdn-id>
<unmanaged>float MaxDelay</unmanaged>
<unmanaged-short>float MaxDelay</unmanaged-short>
</member>
<member name="T:SharpDX.XAPO.Fx.EchoParameters">
<summary>
<p>Parameters for use with the FXECHO XAPOFX.</p>
</summary>
<remarks>
<p>Echo only supports FLOAT32 audio formats.</p>
</remarks>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXECHO_PARAMETERS']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxecho_parameters</msdn-id>
<unmanaged>FXECHO_PARAMETERS</unmanaged>
<unmanaged-short>FXECHO_PARAMETERS</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.Fx.EchoParameters.WetDryMix">
<summary>
No documentation.
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXECHO_PARAMETERS::WetDryMix']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxecho_parameters</msdn-id>
<unmanaged>float WetDryMix</unmanaged>
<unmanaged-short>float WetDryMix</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.Fx.EchoParameters.Feedback">
<summary>
No documentation.
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXECHO_PARAMETERS::Feedback']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxecho_parameters</msdn-id>
<unmanaged>float Feedback</unmanaged>
<unmanaged-short>float Feedback</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.Fx.EchoParameters.Delay">
<summary>
No documentation.
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXECHO_PARAMETERS::Delay']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxecho_parameters</msdn-id>
<unmanaged>float Delay</unmanaged>
<unmanaged-short>float Delay</unmanaged-short>
</member>
<member name="T:SharpDX.XAPO.Fx.EqualizerParameters">
<summary>
<p>Parameters for use with the FXEQ XAPO.</p>
</summary>
<remarks>
<p>Each band ranges from <strong>FrequencyCenterN</strong> - (<strong>BandwidthN</strong> / 2) to <strong>FrequencyCenterN</strong> + (<strong>BandwidthN</strong> / 2). </p>
</remarks>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXEQ_PARAMETERS']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxeq_parameters</msdn-id>
<unmanaged>FXEQ_PARAMETERS</unmanaged>
<unmanaged-short>FXEQ_PARAMETERS</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.Fx.EqualizerParameters.FrequencyCenter0">
<summary>
<dd> <p>Center frequency in Hz for band 0. Must be between <see cref="F:SharpDX.XAPO.Fx.Equalizer.MinimumFrequencyCenter" /> and <see cref="F:SharpDX.XAPO.Fx.Equalizer.MaximumFrequencyCenter" />.</p> </dd>
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXEQ_PARAMETERS::FrequencyCenter0']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxeq_parameters</msdn-id>
<unmanaged>float FrequencyCenter0</unmanaged>
<unmanaged-short>float FrequencyCenter0</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.Fx.EqualizerParameters.Gain0">
<summary>
<dd> <p>The boost or decrease to frequencies in band 0. Must be between <see cref="F:SharpDX.XAPO.Fx.Equalizer.MinimumGain" /> and <see cref="F:SharpDX.XAPO.Fx.Equalizer.MaximumGain" /> </p> </dd>
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXEQ_PARAMETERS::Gain0']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxeq_parameters</msdn-id>
<unmanaged>float Gain0</unmanaged>
<unmanaged-short>float Gain0</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.Fx.EqualizerParameters.Bandwidth0">
<summary>
<dd> <p>Width of band 0. Must be between <see cref="F:SharpDX.XAPO.Fx.Equalizer.MinimumBandwidth" /> and <see cref="F:SharpDX.XAPO.Fx.Equalizer.MaximumBandwidth" />. </p> </dd>
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXEQ_PARAMETERS::Bandwidth0']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxeq_parameters</msdn-id>
<unmanaged>float Bandwidth0</unmanaged>
<unmanaged-short>float Bandwidth0</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.Fx.EqualizerParameters.FrequencyCenter1">
<summary>
<dd> <p>Center frequency in Hz for band 1. Must be between <see cref="F:SharpDX.XAPO.Fx.Equalizer.MinimumFrequencyCenter" /> and <see cref="F:SharpDX.XAPO.Fx.Equalizer.MaximumFrequencyCenter" />. </p> </dd>
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXEQ_PARAMETERS::FrequencyCenter1']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxeq_parameters</msdn-id>
<unmanaged>float FrequencyCenter1</unmanaged>
<unmanaged-short>float FrequencyCenter1</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.Fx.EqualizerParameters.Gain1">
<summary>
<dd> <p>The boost or decrease to frequencies in band 1. Must be between <see cref="F:SharpDX.XAPO.Fx.Equalizer.MinimumGain" /> and <see cref="F:SharpDX.XAPO.Fx.Equalizer.MaximumGain" /></p> </dd>
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXEQ_PARAMETERS::Gain1']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxeq_parameters</msdn-id>
<unmanaged>float Gain1</unmanaged>
<unmanaged-short>float Gain1</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.Fx.EqualizerParameters.Bandwidth1">
<summary>
<dd> <p>Width of band 1. Must be between <see cref="F:SharpDX.XAPO.Fx.Equalizer.MinimumBandwidth" /> and <see cref="F:SharpDX.XAPO.Fx.Equalizer.MaximumBandwidth" />.</p> </dd>
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXEQ_PARAMETERS::Bandwidth1']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxeq_parameters</msdn-id>
<unmanaged>float Bandwidth1</unmanaged>
<unmanaged-short>float Bandwidth1</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.Fx.EqualizerParameters.FrequencyCenter2">
<summary>
<dd> <p>Center frequency in Hz for band 2. Must be between <see cref="F:SharpDX.XAPO.Fx.Equalizer.MinimumFrequencyCenter" /> and <see cref="F:SharpDX.XAPO.Fx.Equalizer.MaximumFrequencyCenter" />.</p> </dd>
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXEQ_PARAMETERS::FrequencyCenter2']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxeq_parameters</msdn-id>
<unmanaged>float FrequencyCenter2</unmanaged>
<unmanaged-short>float FrequencyCenter2</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.Fx.EqualizerParameters.Gain2">
<summary>
<dd> <p>The boost or decrease to frequencies in band 2. Must be between <see cref="F:SharpDX.XAPO.Fx.Equalizer.MinimumGain" /> and <see cref="F:SharpDX.XAPO.Fx.Equalizer.MaximumGain" /> </p> </dd>
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXEQ_PARAMETERS::Gain2']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxeq_parameters</msdn-id>
<unmanaged>float Gain2</unmanaged>
<unmanaged-short>float Gain2</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.Fx.EqualizerParameters.Bandwidth2">
<summary>
<dd> <p>Width of band 2. Must be between <see cref="F:SharpDX.XAPO.Fx.Equalizer.MinimumBandwidth" /> and <see cref="F:SharpDX.XAPO.Fx.Equalizer.MaximumBandwidth" />. </p> </dd>
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXEQ_PARAMETERS::Bandwidth2']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxeq_parameters</msdn-id>
<unmanaged>float Bandwidth2</unmanaged>
<unmanaged-short>float Bandwidth2</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.Fx.EqualizerParameters.FrequencyCenter3">
<summary>
<dd> <p>Center frequency in Hz for band 3. Must be between <see cref="F:SharpDX.XAPO.Fx.Equalizer.MinimumFrequencyCenter" /> and <see cref="F:SharpDX.XAPO.Fx.Equalizer.MaximumFrequencyCenter" />. </p> </dd>
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXEQ_PARAMETERS::FrequencyCenter3']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxeq_parameters</msdn-id>
<unmanaged>float FrequencyCenter3</unmanaged>
<unmanaged-short>float FrequencyCenter3</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.Fx.EqualizerParameters.Gain3">
<summary>
<dd> <p>The boost or decrease to frequencies in band 3. Must be between <see cref="F:SharpDX.XAPO.Fx.Equalizer.MinimumGain" /> and <see cref="F:SharpDX.XAPO.Fx.Equalizer.MaximumGain" /> </p> </dd>
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXEQ_PARAMETERS::Gain3']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxeq_parameters</msdn-id>
<unmanaged>float Gain3</unmanaged>
<unmanaged-short>float Gain3</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.Fx.EqualizerParameters.Bandwidth3">
<summary>
<dd> <p>Width of band 3. Must be between <see cref="F:SharpDX.XAPO.Fx.Equalizer.MinimumBandwidth" /> and <see cref="F:SharpDX.XAPO.Fx.Equalizer.MaximumBandwidth" />.</p> </dd>
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXEQ_PARAMETERS::Bandwidth3']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxeq_parameters</msdn-id>
<unmanaged>float Bandwidth3</unmanaged>
<unmanaged-short>float Bandwidth3</unmanaged-short>
</member>
<member name="T:SharpDX.XAPO.Fx.MasteringLimiterParameters">
<summary>
<p>Parameters for use with the FXMasteringLimiter XAPO.</p>
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXMASTERINGLIMITER_PARAMETERS']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxmasteringlimiter_parameters</msdn-id>
<unmanaged>FXMASTERINGLIMITER_PARAMETERS</unmanaged>
<unmanaged-short>FXMASTERINGLIMITER_PARAMETERS</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.Fx.MasteringLimiterParameters.Release">
<summary>
No documentation.
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXMASTERINGLIMITER_PARAMETERS::Release']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxmasteringlimiter_parameters</msdn-id>
<unmanaged>unsigned int Release</unmanaged>
<unmanaged-short>unsigned int Release</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.Fx.MasteringLimiterParameters.Loudness">
<summary>
No documentation.
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXMASTERINGLIMITER_PARAMETERS::Loudness']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxmasteringlimiter_parameters</msdn-id>
<unmanaged>unsigned int Loudness</unmanaged>
<unmanaged-short>unsigned int Loudness</unmanaged-short>
</member>
<member name="T:SharpDX.XAPO.Fx.ReverbParameters">
<summary>
<p>Parameters for use with the FXReverb XAPO.</p>
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXREVERB_PARAMETERS']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxreverb_parameters</msdn-id>
<unmanaged>FXREVERB_PARAMETERS</unmanaged>
<unmanaged-short>FXREVERB_PARAMETERS</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.Fx.ReverbParameters.Diffusion">
<summary>
<dd> <p>Controls the character of the individual wall reflections. Set to minimum value to simulate a hard flat surface and to maximum value to simulate a diffuse surface.Value must be between <see cref="F:SharpDX.XAPO.Fx.Reverb.MinimumDiffusion" /> and <see cref="F:SharpDX.XAPO.Fx.Reverb.MaximumDiffusion" />.</p> </dd>
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXREVERB_PARAMETERS::Diffusion']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxreverb_parameters</msdn-id>
<unmanaged>float Diffusion</unmanaged>
<unmanaged-short>float Diffusion</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.Fx.ReverbParameters.RoomSize">
<summary>
<dd> <p>Size of the room. Value must be between <see cref="F:SharpDX.XAPO.Fx.Reverb.MinimumRoomsize" /> and <see cref="F:SharpDX.XAPO.Fx.Reverb.MaximumRoomsize" />. Note that physical meaning of RoomSize is subjective and not tied to any particular units. A smaller value will result in reflections reaching the listener more quickly while reflections will take longer with larger values for RoomSize.</p> </dd>
</summary>
<!-- Failed to insert some or all of included XML --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='FXREVERB_PARAMETERS::RoomSize']/*" />
<msdn-id>microsoft.directx_sdk.xapofx.fxreverb_parameters</msdn-id>
<unmanaged>float RoomSize</unmanaged>
<unmanaged-short>float RoomSize</unmanaged-short>
</member>
<member name="T:SharpDX.XAPO.AudioProcessor">
<summary>
<p>The interface for an Audio Processing Object which be used in an XAudio2 effect chain.</p>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAPO']/*" />
<msdn-id>microsoft.directx_sdk.ixapo.ixapo</msdn-id>
<unmanaged>IXAPO</unmanaged>
<unmanaged-short>IXAPO</unmanaged-short>
</member>
<member name="P:SharpDX.XAPO.AudioProcessor.RegistrationProperties">
<summary>
Returns the registration properties of an XAPO.
</summary>
<returns> a <see cref="T:SharpDX.XAPO.RegistrationProperties"/> structure containing the registration properties the XAPO was created with; use XAPOFree to free the structure.</returns>
<unmanaged>HRESULT IXAPO::GetRegistrationProperties([Out] XAPO_REGISTRATION_PROPERTIES** ppRegistrationProperties)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessor.IsInputFormatSupported(SharpDX.Multimedia.WaveFormat,SharpDX.Multimedia.WaveFormat,SharpDX.Multimedia.WaveFormat@)">
<summary>
Queries if a specific input format is supported for a given output format.
</summary>
<param name="outputFormat">Output format.</param>
<param name="requestedInputFormat">Input format to check for being supported.</param>
<param name="supportedInputFormat"> If not NULL, and the input format is not supported for the given output format, ppSupportedInputFormat returns a pointer to the closest input format that is supported. Use {{XAPOFree}} to free the returned structure. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAPO::IsInputFormatSupported([None] const WAVEFORMATEX* pOutputFormat,[None] const WAVEFORMATEX* pRequestedInputFormat,[Out, Optional] WAVEFORMATEX** ppSupportedInputFormat)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessor.IsOutputFormatSupported(SharpDX.Multimedia.WaveFormat,SharpDX.Multimedia.WaveFormat,SharpDX.Multimedia.WaveFormat@)">
<summary>
Queries if a specific output format is supported for a given input format.
</summary>
<param name="inputFormat">[in] Input format. </param>
<param name="requestedOutputFormat">[in] Output format to check for being supported. </param>
<param name="supportedOutputFormat">[out] If not NULL and the output format is not supported for the given input format, ppSupportedOutputFormat returns a pointer to the closest output format that is supported. Use {{XAPOFree}} to free the returned structure. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAPO::IsOutputFormatSupported([None] const WAVEFORMATEX* pInputFormat,[None] const WAVEFORMATEX* pRequestedOutputFormat,[Out, Optional] WAVEFORMATEX** ppSupportedOutputFormat)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessor.Initialize(SharpDX.DataStream)">
<summary>
Performs any effect-specific initialization.
</summary>
<param name="stream"> Effect-specific initialization parameters, may be NULL if DataByteSize is 0. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAPO::Initialize([In, Buffer, Optional] const void* pData,[None] UINT32 DataByteSize)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessor.Reset">
<summary>
Resets variables dependent on frame history.
</summary>
<unmanaged>void IXAPO::Reset()</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessor.LockForProcess(SharpDX.XAPO.LockParameters[],SharpDX.XAPO.LockParameters[])">
<summary>
Called by XAudio2 to lock the input and output configurations of an XAPO allowing it to
do any final initialization before {{Process}} is called on the realtime thread.
</summary>
<param name="inputLockedParameters"> Array of input <see cref="T:SharpDX.XAPO.LockParameters"/> structures.pInputLockedParameters may be NULL if InputLockedParameterCount is 0, otherwise it must have InputLockedParameterCount elements.</param>
<param name="outputLockedParameters"> Array of output <see cref="T:SharpDX.XAPO.LockParameters"/> structures.pOutputLockedParameters may be NULL if OutputLockedParameterCount is 0, otherwise it must have OutputLockedParameterCount elements.</param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAPO::LockForProcess([None] UINT32 InputLockedParameterCount,[In, Buffer, Optional] const XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS* pInputLockedParameters,[None] UINT32 OutputLockedParameterCount,[In, Buffer, Optional] const XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS* pOutputLockedParameters)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessor.UnlockForProcess">
<summary>
Deallocates variables that were allocated with the {{LockForProcess}} method.
</summary>
<unmanaged>void IXAPO::UnlockForProcess()</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessor.Process(SharpDX.XAPO.BufferParameters[],SharpDX.XAPO.BufferParameters[],System.Boolean)">
<summary>
Runs the XAPO's digital signal processing (DSP) code on the given input and output buffers.
</summary>
<param name="inputProcessParameters">[in] Input array of <see cref="T:SharpDX.XAPO.BufferParameters"/> structures. </param>
<param name="outputProcessParameters">[in, out] Output array of <see cref="T:SharpDX.XAPO.BufferParameters"/> structures. On input, the value of <see cref="T:SharpDX.XAPO.BufferParameters"/>.ValidFrameCount indicates the number of frames that the XAPO should write to the output buffer. On output, the value of <see cref="T:SharpDX.XAPO.BufferParameters"/>.ValidFrameCount indicates the actual number of frames written. </param>
<param name="isEnabled"> TRUE to process normally; FALSE to process thru. See Remarks for additional information. </param>
<unmanaged>void IXAPO::Process([None] UINT32 InputProcessParameterCount,[In, Buffer, Optional] const XAPO_PROCESS_BUFFER_PARAMETERS* pInputProcessParameters,[None] UINT32 OutputProcessParameterCount,[InOut, Buffer, Optional] XAPO_PROCESS_BUFFER_PARAMETERS* pOutputProcessParameters,[None] BOOL IsEnabled)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessor.CalcInputFrames(System.Int32)">
<summary>
Returns the number of input frames required to generate the given number of output frames.
</summary>
<param name="outputFrameCount">The number of output frames desired.</param>
<returns>No documentation.</returns>
<unmanaged>UINT32 IXAPO::CalcInputFrames([None] UINT32 OutputFrameCount)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessor.CalcOutputFrames(System.Int32)">
<summary>
Returns the number of output frames that will be generated from a given number of input frames.
</summary>
<param name="inputFrameCount">The number of input frames.</param>
<returns>No documentation.</returns>
<unmanaged>UINT32 IXAPO::CalcOutputFrames([None] UINT32 InputFrameCount)</unmanaged>
</member>
<member name="T:SharpDX.XAPO.AudioProcessorNative">
<summary>
<p>The interface for an Audio Processing Object which be used in an XAudio2 effect chain.</p>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAPO']/*" />
<msdn-id>microsoft.directx_sdk.ixapo.ixapo</msdn-id>
<unmanaged>IXAPO</unmanaged>
<unmanaged-short>IXAPO</unmanaged-short>
<summary>
Native Accessor to an existing AudioProcessor instance
</summary>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorNative.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAPO.AudioProcessorNative"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorNative.op_Explicit(System.IntPtr)~SharpDX.XAPO.AudioProcessorNative">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.XAPO.AudioProcessorNative"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorNative.GetRegistrationProperties_(SharpDX.XAPO.RegistrationProperties@)">
<summary>
<p>Returns the registration properties of an XAPO. </p>
</summary>
<param name="registrationPropertiesOut"><dd> <p> Receives a reference to a <strong><see cref="T:SharpDX.XAPO.RegistrationProperties" /></strong> structure containing the registration properties the XAPO was created with; use <strong>XAPOFree</strong> to free the structure. </p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful; returns an error code otherwise.</p></returns>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAPO::GetRegistrationProperties']/*" />
<msdn-id>microsoft.directx_sdk.ixapo.ixapo.getregistrationproperties</msdn-id>
<unmanaged>HRESULT IXAPO::GetRegistrationProperties([Out] XAPO_REGISTRATION_PROPERTIES** ppRegistrationProperties)</unmanaged>
<unmanaged-short>IXAPO::GetRegistrationProperties</unmanaged-short>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorNative.IsInputFormatSupported_(SharpDX.Multimedia.WaveFormat@,SharpDX.Multimedia.WaveFormat@,SharpDX.Multimedia.WaveFormat@)">
<summary>
<p>Queries if a specific input format is supported for a given output format.</p>
</summary>
<param name="outputFormatRef"><dd> <p> Output format.</p> </dd></param>
<param name="requestedInputFormatRef"><dd> <p> Input format to check for being supported.</p> </dd></param>
<param name="supportedInputFormatOut"><dd> <p> If not <c>null</c>, and the input format is not supported for the given output format, <em>ppSupportedInputFormat</em> returns a reference to the closest input format that is supported. Use <strong>XAPOFree</strong> to free the returned structure. </p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if the format pair is supported. Returns XAPO_E_FORMAT_UNSUPPORTED if the format pair is not supported.</p></returns>
<remarks>
<p>The <strong><see cref="M:SharpDX.XAPO.AudioProcessor.IsOutputFormatSupported(SharpDX.Multimedia.WaveFormat,SharpDX.Multimedia.WaveFormat,SharpDX.Multimedia.WaveFormat@)" /></strong> and <strong>IsInputFormatSupported</strong> methods allow an XAPO to indicate which audio formats it is capable of processing. If a requested format is not supported, the XAPO should return the closest format that it does support. The closest format should be determined based on frame rate, bit depth, and channel count, in that order of importance. The behavior of <strong>IsInputFormatSupported</strong> is allowed to change, based on the internal state of the XAPO, but its behavior should remain constant between calls to the <strong><see cref="M:SharpDX.XAPO.AudioProcessor.LockForProcess(SharpDX.XAPO.LockParameters[],SharpDX.XAPO.LockParameters[])" /></strong> and <strong><see cref="M:SharpDX.XAPO.AudioProcessor.UnlockForProcess" /></strong> methods. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAPO::IsInputFormatSupported']/*" />
<msdn-id>microsoft.directx_sdk.ixapo.ixapo.isinputformatsupported</msdn-id>
<unmanaged>HRESULT IXAPO::IsInputFormatSupported([In] const WAVEFORMATEX* pOutputFormat,[In] const WAVEFORMATEX* pRequestedInputFormat,[Out, Optional] WAVEFORMATEX** ppSupportedInputFormat)</unmanaged>
<unmanaged-short>IXAPO::IsInputFormatSupported</unmanaged-short>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorNative.IsOutputFormatSupported_(SharpDX.Multimedia.WaveFormat@,SharpDX.Multimedia.WaveFormat@,SharpDX.Multimedia.WaveFormat@)">
<summary>
<p>Queries if a specific output format is supported for a given input format.</p>
</summary>
<param name="inputFormatRef"><dd> <p>Input format. </p> </dd></param>
<param name="requestedOutputFormatRef"><dd> <p>Output format to check for being supported.</p> </dd></param>
<param name="supportedOutputFormatOut"><dd> <p>If not <c>null</c> and the output format is not supported for the given input format, <em>ppSupportedOutputFormat</em> returns a reference to the closest output format that is supported. Use <strong>XAPOFree</strong> to free the returned structure. </p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if the format pair is supported. Returns XAPO_E_FORMAT_UNSUPPORTED if the format pair is not supported.</p></returns>
<remarks>
<p>The <strong><see cref="M:SharpDX.XAPO.AudioProcessor.IsInputFormatSupported(SharpDX.Multimedia.WaveFormat,SharpDX.Multimedia.WaveFormat,SharpDX.Multimedia.WaveFormat@)" /></strong> and <strong>IsOutputFormatSupported</strong> methods allow an XAPO to indicate which audio formats it is capable of processing. If a requested format is not supported, the XAPO should return the closest format that it does support. The closest format should be determined based on frame rate, bit depth, and channel count, in that order of importance. The behavior of <strong>IsOutputFormatSupported</strong> is allowed to change, based on the internal state of the XAPO, but its behavior should remain constant between calls to the <strong><see cref="M:SharpDX.XAPO.AudioProcessor.LockForProcess(SharpDX.XAPO.LockParameters[],SharpDX.XAPO.LockParameters[])" /></strong> and <strong><see cref="M:SharpDX.XAPO.AudioProcessor.UnlockForProcess" /></strong> methods.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAPO::IsOutputFormatSupported']/*" />
<msdn-id>microsoft.directx_sdk.ixapo.ixapo.isoutputformatsupported</msdn-id>
<unmanaged>HRESULT IXAPO::IsOutputFormatSupported([In] const WAVEFORMATEX* pInputFormat,[In] const WAVEFORMATEX* pRequestedOutputFormat,[Out, Optional] WAVEFORMATEX** ppSupportedOutputFormat)</unmanaged>
<unmanaged-short>IXAPO::IsOutputFormatSupported</unmanaged-short>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorNative.Initialize_(System.IntPtr,System.Int32)">
<summary>
<p>Performs any effect-specific initialization.</p>
</summary>
<param name="dataRef"><dd> <p> Effect-specific initialization parameters, may be <c>null</c> if <em>DataByteSize</em> is 0.</p> </dd></param>
<param name="dataByteSize"><dd> <p> Size of <em>pData</em> in bytes, may be 0 if <em>pData</em> is <c>null</c>.</p> </dd></param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful, an error code otherwise.</p></returns>
<remarks>
<p>The contents of <em>pData</em> are defined by a given XAPO. Immutable parameters (constant for the lifetime of the XAPO) should be set in this method. Once initialized, an XAPO cannot be initialized again. An XAPO should be initialized before passing it to XAudio2 as part of an effect chain. </p><strong>Note</strong>??XAudio2 does not call this method, it should be called by the client before passing the XAPO to XAudio2.?
</remarks>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAPO::Initialize']/*" />
<msdn-id>microsoft.directx_sdk.ixapo.ixapo.initialize</msdn-id>
<unmanaged>HRESULT IXAPO::Initialize([In, Buffer, Optional] const void* pData,[In] unsigned int DataByteSize)</unmanaged>
<unmanaged-short>IXAPO::Initialize</unmanaged-short>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorNative.Reset_">
<summary>
<p>Resets variables dependent on frame history.</p>
</summary>
<remarks>
<p>Constant and locked parameters such as the input and output formats remain unchanged. Variables set by <strong><see cref="M:SharpDX.XAPO.ParameterProvider.SetParameters(SharpDX.DataStream)" /></strong> remain unchanged. </p><p>For example, an effect with delay should zero out its delay line during this method, but should not reallocate anything as the XAPO remains locked with a constant input and output configuration. </p><p>XAudio2 only calls this method if the XAPO is locked. </p><p>This method is called from the realtime thread and should not block.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAPO::Reset']/*" />
<msdn-id>microsoft.directx_sdk.ixapo.ixapo.reset</msdn-id>
<unmanaged>void IXAPO::Reset()</unmanaged>
<unmanaged-short>IXAPO::Reset</unmanaged-short>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorNative.LockForProcess_(System.Int32,SharpDX.XAPO.LockParameters[],System.Int32,SharpDX.XAPO.LockParameters[])">
<summary>
<p>Called by XAudio2 to lock the input and output configurations of an XAPO allowing it to do any final initialization before <strong>Process</strong> is called on the realtime thread.</p>
</summary>
<param name="inputLockedParameterCount">No documentation.</param>
<param name="inputLockedParametersRef">No documentation.</param>
<param name="outputLockedParameterCount">No documentation.</param>
<param name="outputLockedParametersRef">No documentation.</param>
<returns><p>Returns <see cref="F:SharpDX.Result.Ok" /> if successful, an error code otherwise.</p></returns>
<remarks>
<p>Once locked, the input and output configuration and any other locked parameters remain constant until <strong>UnLockForProcess</strong> is called. After an XAPO is locked, further calls to <strong>LockForProcess</strong> have no effect until the <strong>UnLockForProcess</strong> function is called. </p><p>An XAPO indicates what specific formats it supports through its implementation of the <strong>IsInputFormatSupported</strong> and <strong>IsOutputFormatSupported</strong> methods. An XAPO should assert the input and output configurations are supported and that any required effect-specific initialization is complete. The <strong>IsInputFormatSupported</strong>, <strong>IsOutputFormatSupported</strong>, and <strong>Initialize</strong> methods should be used as necessary before calling this method. </p><p>Because <strong>Process</strong> is a nonblocking method, all internal memory buffers required for <strong>Process</strong> should be allocated in <strong>LockForProcess</strong>. </p><p> <strong>Process</strong> is never called before <strong>LockForProcess</strong> returns successfully. </p><p><strong>LockForProcess</strong> is called directly by XAudio2 and should not be called by the client code. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAPO::LockForProcess']/*" />
<msdn-id>microsoft.directx_sdk.ixapo.ixapo.lockforprocess</msdn-id>
<unmanaged>HRESULT IXAPO::LockForProcess([In] unsigned int InputLockedParameterCount,[In, Buffer] const XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS* pInputLockedParameters,[In] unsigned int OutputLockedParameterCount,[In, Buffer] const XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS* pOutputLockedParameters)</unmanaged>
<unmanaged-short>IXAPO::LockForProcess</unmanaged-short>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorNative.UnlockForProcess_">
<summary>
<p>Deallocates variables that were allocated with the <strong>LockForProcess</strong> method.</p>
</summary>
<remarks>
<p>Unlocking an XAPO instance allows it to be reused with different input and output formats.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAPO::UnlockForProcess']/*" />
<msdn-id>microsoft.directx_sdk.ixapo.ixapo.unlockforprocess</msdn-id>
<unmanaged>void IXAPO::UnlockForProcess()</unmanaged>
<unmanaged-short>IXAPO::UnlockForProcess</unmanaged-short>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorNative.Process_(System.Int32,SharpDX.XAPO.BufferParameters[],System.Int32,SharpDX.XAPO.BufferParameters[],SharpDX.Mathematics.Interop.RawBool)">
<summary>
<p>Runs the XAPO's digital signal processing (DSP) code on the given input and output buffers.</p>
</summary>
<param name="inputProcessParameterCount"><dd> <p> Number of elements in pInputProcessParameters. </p> <strong>Note</strong>??XAudio2 currently supports only one input stream and one output stream. ? </dd></param>
<param name="inputProcessParametersRef"><dd> <p> Input array of <strong><see cref="T:SharpDX.XAPO.BufferParameters" /></strong> structures. </p> </dd></param>
<param name="outputProcessParameterCount"><dd> <p>Number of elements in <em>pOutputProcessParameters</em>. </p> <strong>Note</strong>??XAudio2 currently supports only one input stream and one output stream. ? </dd></param>
<param name="outputProcessParametersRef"><dd> <p>Output array of <strong><see cref="T:SharpDX.XAPO.BufferParameters" /></strong> structures. On input, the value of <strong><see cref="T:SharpDX.XAPO.BufferParameters" /></strong>. <strong>ValidFrameCount</strong> indicates the number of frames that the XAPO should write to the output buffer. On output, the value of <strong><see cref="T:SharpDX.XAPO.BufferParameters" /></strong>. <strong>ValidFrameCount</strong> indicates the actual number of frames written.</p> </dd></param>
<param name="isEnabled"><dd> <p> TRUE to process normally; <see cref="F:SharpDX.Result.False" /> to process thru. See Remarks for additional information.</p> </dd></param>
<remarks>
<p>Implementations of this function should not block, as the function is called from the realtime audio processing thread. </p><p>All code that could cause a delay, such as format validation and memory allocation, should be put in the <strong><see cref="M:SharpDX.XAPO.AudioProcessor.LockForProcess(SharpDX.XAPO.LockParameters[],SharpDX.XAPO.LockParameters[])" /></strong> method, which is not called from the realtime audio processing thread. </p><p>For in-place processing, the <em>pInputProcessParameters</em> parameter will not necessarily be the same as <em>pOutputProcessParameters</em>. Rather, their <em>pBuffer</em> members will point to the same memory. </p><p>Multiple input and output buffers may be used with in-place XAPOs, though the input buffer count must equal the output buffer count. For in-place processing when multiple input and output buffers are used, the XAPO may assume the number of input buffers equals the number of output buffers. </p><p>In addition to writing to the output buffer, as appropriate, an XAPO is responsible for setting the output stream's buffer flags and valid frame count. </p><p>When <em>IsEnabled</em> is <see cref="F:SharpDX.Result.False" />, the XAPO should not apply its normal processing to the given input/output buffers during. It should instead pass data from input to output with as little modification possible. Effects that perform format conversion should continue to do so. Effects must ensure transitions between normal and thru processing do not introduce discontinuities into the signal. </p><p>When writing a <strong>Process</strong> method, it is important to note XAudio2 audio data is interleaved, which means data from each channel is adjacent for a particular sample number. For example, if there was a 4-channel wave playing into an XAudio2 source voice, the audio data would be a sample of channel 0, a sample of channel 1, a sample of channel 2, a sample of channel 3, and then the next sample of channels 0, 1, 2, 3, and so on.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAPO::Process']/*" />
<msdn-id>microsoft.directx_sdk.ixapo.ixapo.process</msdn-id>
<unmanaged>void IXAPO::Process([In] unsigned int InputProcessParameterCount,[In, Buffer, Optional] const XAPO_PROCESS_BUFFER_PARAMETERS* pInputProcessParameters,[In] unsigned int OutputProcessParameterCount,[In, Buffer] XAPO_PROCESS_BUFFER_PARAMETERS* pOutputProcessParameters,[In] BOOL IsEnabled)</unmanaged>
<unmanaged-short>IXAPO::Process</unmanaged-short>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorNative.CalcInputFrames_(System.Int32)">
<summary>
<p>Returns the number of input frames required to generate the given number of output frames.</p>
</summary>
<param name="outputFrameCount"><dd> <p> The number of output frames desired.</p> </dd></param>
<returns><p>Returns the number of input frames required.</p></returns>
<remarks>
<p>XAudio2 calls this method to determine what size input buffer an XAPO requires to generate the given number of output frames. This method only needs to be called once while an XAPO is locked. <strong>CalcInputFrames</strong> is only called by XAudio2 if the XAPO is locked. </p><p>This function should not block, because it may be called from the realtime audio processing thread. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAPO::CalcInputFrames']/*" />
<msdn-id>microsoft.directx_sdk.ixapo.ixapo.calcinputframes</msdn-id>
<unmanaged>unsigned int IXAPO::CalcInputFrames([In] unsigned int OutputFrameCount)</unmanaged>
<unmanaged-short>IXAPO::CalcInputFrames</unmanaged-short>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorNative.CalcOutputFrames_(System.Int32)">
<summary>
<p>Returns the number of output frames that will be generated from a given number of input frames.</p>
</summary>
<param name="inputFrameCount"><dd> <p> The number of input frames.</p> </dd></param>
<returns><p>Returns the number of output frames that will be produced. </p></returns>
<remarks>
<p>XAudio2 calls this method to determine how large of an output buffer an XAPO will require for a certain number of input frames. <strong>CalcOutputFrames</strong> is only called by XAudio2 if the XAPO is locked. </p><p>This function should not block, because it may be called from the realtime audio processing thread. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAPO::CalcOutputFrames']/*" />
<msdn-id>microsoft.directx_sdk.ixapo.ixapo.calcoutputframes</msdn-id>
<unmanaged>unsigned int IXAPO::CalcOutputFrames([In] unsigned int InputFrameCount)</unmanaged>
<unmanaged-short>IXAPO::CalcOutputFrames</unmanaged-short>
</member>
<member name="P:SharpDX.XAPO.AudioProcessorNative.RegistrationProperties">
<summary>
Returns the registration properties of an XAPO.
</summary>
<returns> a <see cref="T:SharpDX.XAPO.RegistrationProperties"/> structure containing the registration properties the XAPO was created with; use XAPOFree to free the structure.</returns>
<unmanaged>HRESULT IXAPO::GetRegistrationProperties([Out] XAPO_REGISTRATION_PROPERTIES** ppRegistrationProperties)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorNative.IsInputFormatSupported(SharpDX.Multimedia.WaveFormat,SharpDX.Multimedia.WaveFormat,SharpDX.Multimedia.WaveFormat@)">
<summary>
Queries if a specific input format is supported for a given output format.
</summary>
<param name="outputFormat">Output format.</param>
<param name="requestedInputFormat">Input format to check for being supported.</param>
<param name="supportedInputFormat"> If not NULL, and the input format is not supported for the given output format, ppSupportedInputFormat returns a pointer to the closest input format that is supported. Use {{XAPOFree}} to free the returned structure. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAPO::IsInputFormatSupported([None] const WAVEFORMATEX* pOutputFormat,[None] const WAVEFORMATEX* pRequestedInputFormat,[Out, Optional] WAVEFORMATEX** ppSupportedInputFormat)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorNative.IsOutputFormatSupported(SharpDX.Multimedia.WaveFormat,SharpDX.Multimedia.WaveFormat,SharpDX.Multimedia.WaveFormat@)">
<summary>
Queries if a specific output format is supported for a given input format.
</summary>
<param name="inputFormat">[in] Input format. </param>
<param name="requestedOutputFormat">[in] Output format to check for being supported. </param>
<param name="supportedOutputFormat">[out] If not NULL and the output format is not supported for the given input format, ppSupportedOutputFormat returns a pointer to the closest output format that is supported. Use {{XAPOFree}} to free the returned structure. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAPO::IsOutputFormatSupported([None] const WAVEFORMATEX* pInputFormat,[None] const WAVEFORMATEX* pRequestedOutputFormat,[Out, Optional] WAVEFORMATEX** ppSupportedOutputFormat)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorNative.Initialize(SharpDX.DataStream)">
<summary>
Performs any effect-specific initialization.
</summary>
<param name="stream"> Effect-specific initialization parameters, may be NULL if DataByteSize is 0. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAPO::Initialize([In, Buffer, Optional] const void* pData,[None] UINT32 DataByteSize)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorNative.Reset">
<summary>
Resets variables dependent on frame history.
</summary>
<unmanaged>void IXAPO::Reset()</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorNative.LockForProcess(SharpDX.XAPO.LockParameters[],SharpDX.XAPO.LockParameters[])">
<summary>
Called by XAudio2 to lock the input and output configurations of an XAPO allowing it to
do any final initialization before {{Process}} is called on the realtime thread.
</summary>
<param name="inputLockedParameters"> Array of input <see cref="T:SharpDX.XAPO.LockParameters"/> structures.pInputLockedParameters may be NULL if InputLockedParameterCount is 0, otherwise it must have InputLockedParameterCount elements.</param>
<param name="outputLockedParameters"> Array of output <see cref="T:SharpDX.XAPO.LockParameters"/> structures.pOutputLockedParameters may be NULL if OutputLockedParameterCount is 0, otherwise it must have OutputLockedParameterCount elements.</param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAPO::LockForProcess([None] UINT32 InputLockedParameterCount,[In, Buffer, Optional] const XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS* pInputLockedParameters,[None] UINT32 OutputLockedParameterCount,[In, Buffer, Optional] const XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS* pOutputLockedParameters)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorNative.UnlockForProcess">
<summary>
Deallocates variables that were allocated with the {{LockForProcess}} method.
</summary>
<unmanaged>void IXAPO::UnlockForProcess()</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorNative.Process(SharpDX.XAPO.BufferParameters[],SharpDX.XAPO.BufferParameters[],System.Boolean)">
<summary>
Runs the XAPO's digital signal processing (DSP) code on the given input and output buffers.
</summary>
<param name="inputProcessParameters">[in] Input array of <see cref="T:SharpDX.XAPO.BufferParameters"/> structures. </param>
<param name="outputProcessParameters">[in, out] Output array of <see cref="T:SharpDX.XAPO.BufferParameters"/> structures. On input, the value of <see cref="T:SharpDX.XAPO.BufferParameters"/>.ValidFrameCount indicates the number of frames that the XAPO should write to the output buffer. On output, the value of <see cref="T:SharpDX.XAPO.BufferParameters"/>.ValidFrameCount indicates the actual number of frames written. </param>
<param name="isEnabled"> TRUE to process normally; FALSE to process thru. See Remarks for additional information. </param>
<unmanaged>void IXAPO::Process([None] UINT32 InputProcessParameterCount,[In, Buffer, Optional] const XAPO_PROCESS_BUFFER_PARAMETERS* pInputProcessParameters,[None] UINT32 OutputProcessParameterCount,[InOut, Buffer, Optional] XAPO_PROCESS_BUFFER_PARAMETERS* pOutputProcessParameters,[None] BOOL IsEnabled)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorNative.CalcInputFrames(System.Int32)">
<summary>
Returns the number of input frames required to generate the given number of output frames.
</summary>
<param name="outputFrameCount">The number of output frames desired.</param>
<returns>No documentation.</returns>
<unmanaged>UINT32 IXAPO::CalcInputFrames([None] UINT32 OutputFrameCount)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorNative.CalcOutputFrames(System.Int32)">
<summary>
Returns the number of output frames that will be generated from a given number of input frames.
</summary>
<param name="inputFrameCount">The number of input frames.</param>
<returns>No documentation.</returns>
<unmanaged>UINT32 IXAPO::CalcOutputFrames([None] UINT32 InputFrameCount)</unmanaged>
</member>
<member name="T:SharpDX.XAPO.ParameterProvider">
<summary>
<p>An optional interface that allows an XAPO to use effect-specific parameters.</p>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAPOParameters']/*" />
<msdn-id>microsoft.directx_sdk.ixapoparameters.ixapoparameters</msdn-id>
<unmanaged>IXAPOParameters</unmanaged>
<unmanaged-short>IXAPOParameters</unmanaged-short>
</member>
<member name="M:SharpDX.XAPO.ParameterProvider.SetParameters(SharpDX.DataStream)">
<summary>
Sets effect-specific parameters.
</summary>
<param name="parameters"> Effect-specific parameter block. </param>
<unmanaged>void IXAPOParameters::SetParameters([In, Buffer] const void* pParameters,[None] UINT32 ParameterByteSize)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.ParameterProvider.GetParameters(SharpDX.DataStream)">
<summary>
Gets the current values for any effect-specific parameters.
</summary>
<param name="parameters">[in, out] Receives an effect-specific parameter block. </param>
<unmanaged>void IXAPOParameters::GetParameters([Out, Buffer] void* pParameters,[None] UINT32 ParameterByteSize)</unmanaged>
</member>
<member name="T:SharpDX.XAPO.ParameterProviderNative">
<summary>
<p>An optional interface that allows an XAPO to use effect-specific parameters.</p>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAPOParameters']/*" />
<msdn-id>microsoft.directx_sdk.ixapoparameters.ixapoparameters</msdn-id>
<unmanaged>IXAPOParameters</unmanaged>
<unmanaged-short>IXAPOParameters</unmanaged-short>
</member>
<member name="M:SharpDX.XAPO.ParameterProviderNative.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAPO.ParameterProviderNative"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.XAPO.ParameterProviderNative.op_Explicit(System.IntPtr)~SharpDX.XAPO.ParameterProviderNative">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.XAPO.ParameterProviderNative"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.XAPO.ParameterProviderNative.SetParameters_(System.IntPtr,System.Int32)">
<summary>
<p>Sets effect-specific parameters.</p>
</summary>
<param name="parametersRef"><dd> <p> Effect-specific parameter block.</p> </dd></param>
<param name="parameterByteSize"><dd> <p> Size of pParameters, in bytes.</p> </dd></param>
<remarks>
<p>The data in <em>pParameters</em> is completely effect-specific and determined by the implementation of the <strong><see cref="M:SharpDX.XAPO.ParameterProvider.SetParameters(SharpDX.DataStream)" /></strong> function. The data passed to <strong>SetParameters</strong> can be used to set the state of the XAPO and control the behavior of the <strong><see cref="M:SharpDX.XAPO.AudioProcessor.Process(SharpDX.XAPO.BufferParameters[],SharpDX.XAPO.BufferParameters[],System.Boolean)" /></strong> function. </p><p><strong>SetParameters</strong> can only be called on the real-time audio processing thread; no synchronization between <strong>SetParameters</strong> and the <strong><see cref="M:SharpDX.XAPO.AudioProcessor.Process(SharpDX.XAPO.BufferParameters[],SharpDX.XAPO.BufferParameters[],System.Boolean)" /></strong> method is necessary. However, the <strong><see cref="M:SharpDX.XAudio2.Voice.SetEffectParameters(System.Int32,System.IntPtr,System.Int32,System.Int32)" /></strong> method may be called from any thread as it adds in the required synchronization to deliver a copy (asynchronously) of the parameters to <strong>SetParameters</strong> on the real-time thread; no synchronization between <strong><see cref="M:SharpDX.XAudio2.Voice.SetEffectParameters(System.Int32,System.IntPtr,System.Int32,System.Int32)" /></strong> and the <strong><see cref="M:SharpDX.XAPO.AudioProcessor.Process(SharpDX.XAPO.BufferParameters[],SharpDX.XAPO.BufferParameters[],System.Boolean)" /></strong> method is necessary. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAPOParameters::SetParameters']/*" />
<msdn-id>microsoft.directx_sdk.ixapoparameters.ixapoparameters.setparameters</msdn-id>
<unmanaged>void IXAPOParameters::SetParameters([In, Buffer] const void* pParameters,[In] unsigned int ParameterByteSize)</unmanaged>
<unmanaged-short>IXAPOParameters::SetParameters</unmanaged-short>
</member>
<member name="M:SharpDX.XAPO.ParameterProviderNative.GetParameters_(System.IntPtr,System.Int32)">
<summary>
<p>Gets the current values for any effect-specific parameters.</p>
</summary>
<param name="parametersRef"><dd> <p>Receives an effect-specific parameter block.</p> </dd></param>
<param name="parameterByteSize"><dd> <p> Size of pParameters, in bytes.</p> </dd></param>
<remarks>
<p>The data in <em>pParameters</em> is completely effect-specific and determined by the implementation of the <strong><see cref="M:SharpDX.XAPO.ParameterProvider.GetParameters(SharpDX.DataStream)" /></strong> function. The data returned in <em>pParameters</em> can be used to provide information about the current state of the XAPO. </p><p>Unlike SetParameters, XAudio2 does not call this method on the realtime audio processing thread. Thus, the XAPO must protect variables shared with <strong><see cref="M:SharpDX.XAPO.ParameterProvider.SetParameters(SharpDX.DataStream)" /></strong> or <strong><see cref="M:SharpDX.XAPO.AudioProcessor.Process(SharpDX.XAPO.BufferParameters[],SharpDX.XAPO.BufferParameters[],System.Boolean)" /></strong> using appropriate synchronization. The <strong>CXAPOParametersBase</strong> class is an implementation of <strong><see cref="T:SharpDX.XAPO.ParameterProvider" /></strong> and its implementation of <strong>GetParameters</strong> efficiently handles this synchronization for the user. </p><p>XAudio2 calls this method from the <strong><see cref="M:SharpDX.XAudio2.Voice.GetEffectParameters(System.Int32,System.IntPtr,System.Int32)" /></strong> method. </p><p>This method may block and should never be called from the realtime audio processing thread instead get the current parameters from <strong>CXAPOParametersBase::BeginProcess</strong>.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IXAPOParameters::GetParameters']/*" />
<msdn-id>microsoft.directx_sdk.ixapoparameters.ixapoparameters.getparameters</msdn-id>
<unmanaged>void IXAPOParameters::GetParameters([Out, Buffer] void* pParameters,[In] unsigned int ParameterByteSize)</unmanaged>
<unmanaged-short>IXAPOParameters::GetParameters</unmanaged-short>
</member>
<member name="T:SharpDX.XAPO.BufferParameters">
<summary>
<p>Defines stream buffer parameters that may change from one call to the next. Used with the <strong>Process</strong> method.</p>
</summary>
<remarks>
<p>Although the format and maximum size values of a particular stream buffer are constant, as defined by the <strong><see cref="T:SharpDX.XAPO.LockParameters" /></strong> structure, the actual memory address of the stream buffer is permitted to change. For constant-bit-rate (CBR) XAPOs, ValidFrameCount is constant and is always equal to the corresponding <strong><see cref="T:SharpDX.XAPO.LockParameters" /></strong>.MaxFrameCount for this buffer. </p><strong>Note</strong>??Only constant-bit-rate XAPOs are currently supported.?
</remarks>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_PROCESS_BUFFER_PARAMETERS']/*" />
<msdn-id>microsoft.directx_sdk.xapo.xapo_process_buffer_parameters</msdn-id>
<unmanaged>XAPO_PROCESS_BUFFER_PARAMETERS</unmanaged>
<unmanaged-short>XAPO_PROCESS_BUFFER_PARAMETERS</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.BufferParameters.Buffer">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_PROCESS_BUFFER_PARAMETERS::pBuffer']/*" />
<msdn-id>microsoft.directx_sdk.xapo.xapo_process_buffer_parameters</msdn-id>
<unmanaged>void* pBuffer</unmanaged>
<unmanaged-short>void pBuffer</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.BufferParameters.BufferFlags">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_PROCESS_BUFFER_PARAMETERS::BufferFlags']/*" />
<msdn-id>microsoft.directx_sdk.xapo.xapo_process_buffer_parameters</msdn-id>
<unmanaged>XAPO_BUFFER_FLAGS BufferFlags</unmanaged>
<unmanaged-short>XAPO_BUFFER_FLAGS BufferFlags</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.BufferParameters.ValidFrameCount">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_PROCESS_BUFFER_PARAMETERS::ValidFrameCount']/*" />
<msdn-id>microsoft.directx_sdk.xapo.xapo_process_buffer_parameters</msdn-id>
<unmanaged>unsigned int ValidFrameCount</unmanaged>
<unmanaged-short>unsigned int ValidFrameCount</unmanaged-short>
</member>
<member name="T:SharpDX.XAPO.LockParameters">
<summary>
<p>Defines stream buffer parameters that remain constant while an XAPO is locked. Used with the <strong><see cref="M:SharpDX.XAPO.AudioProcessor.LockForProcess(SharpDX.XAPO.LockParameters[],SharpDX.XAPO.LockParameters[])" /></strong> method.</p>
</summary>
<remarks>
<p>The byte size of the respective stream buffer must be at least <em>MaxFrameCount</em> ? (<em>pFormat</em>-&gt;nBlockAlign) bytes. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS']/*" />
<msdn-id>microsoft.directx_sdk.xapo.xapo_lockforprocess_parameters</msdn-id>
<unmanaged>XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS</unmanaged>
<unmanaged-short>XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.LockParameters.FormatPointer">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS::pFormat']/*" />
<msdn-id>microsoft.directx_sdk.xapo.xapo_lockforprocess_parameters</msdn-id>
<unmanaged>const WAVEFORMATEX* pFormat</unmanaged>
<unmanaged-short>WAVEFORMATEX pFormat</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.LockParameters.MaxFrameCount">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS::MaxFrameCount']/*" />
<msdn-id>microsoft.directx_sdk.xapo.xapo_lockforprocess_parameters</msdn-id>
<unmanaged>unsigned int MaxFrameCount</unmanaged>
<unmanaged-short>unsigned int MaxFrameCount</unmanaged-short>
</member>
<member name="P:SharpDX.XAPO.LockParameters.Format">
<summary>
Gets or sets the waveformat.
</summary>
<value>The format.</value>
</member>
<member name="T:SharpDX.XAPO.RegistrationProperties">
<summary>
<p>Describes general characteristics of an XAPO. Used with <strong><see cref="!:SharpDX.XAPO.AudioProcessor.GetRegistrationProperties" /></strong>, <strong>CXAPOParametersBase::CXAPOParametersBase</strong>, and <strong>CXAPOBase::CXAPOBase</strong>. </p>
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_REGISTRATION_PROPERTIES']/*" />
<msdn-id>microsoft.directx_sdk.xapo.xapo_registration_properties</msdn-id>
<unmanaged>XAPO_REGISTRATION_PROPERTIES</unmanaged>
<unmanaged-short>XAPO_REGISTRATION_PROPERTIES</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.RegistrationProperties.Clsid">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_REGISTRATION_PROPERTIES::clsid']/*" />
<msdn-id>microsoft.directx_sdk.xapo.xapo_registration_properties</msdn-id>
<unmanaged>GUID clsid</unmanaged>
<unmanaged-short>GUID clsid</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.RegistrationProperties.FriendlyName">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_REGISTRATION_PROPERTIES::FriendlyName']/*" />
<msdn-id>microsoft.directx_sdk.xapo.xapo_registration_properties</msdn-id>
<unmanaged>wchar_t FriendlyName[256]</unmanaged>
<unmanaged-short>wchar_t FriendlyName</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.RegistrationProperties.CopyrightInfo">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_REGISTRATION_PROPERTIES::CopyrightInfo']/*" />
<msdn-id>microsoft.directx_sdk.xapo.xapo_registration_properties</msdn-id>
<unmanaged>wchar_t CopyrightInfo[256]</unmanaged>
<unmanaged-short>wchar_t CopyrightInfo</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.RegistrationProperties.MajorVersion">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_REGISTRATION_PROPERTIES::MajorVersion']/*" />
<msdn-id>microsoft.directx_sdk.xapo.xapo_registration_properties</msdn-id>
<unmanaged>unsigned int MajorVersion</unmanaged>
<unmanaged-short>unsigned int MajorVersion</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.RegistrationProperties.MinorVersion">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_REGISTRATION_PROPERTIES::MinorVersion']/*" />
<msdn-id>microsoft.directx_sdk.xapo.xapo_registration_properties</msdn-id>
<unmanaged>unsigned int MinorVersion</unmanaged>
<unmanaged-short>unsigned int MinorVersion</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.RegistrationProperties.Flags">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_REGISTRATION_PROPERTIES::Flags']/*" />
<msdn-id>microsoft.directx_sdk.xapo.xapo_registration_properties</msdn-id>
<unmanaged>XAPO_PROPERTY_TYPE Flags</unmanaged>
<unmanaged-short>XAPO_PROPERTY_TYPE Flags</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.RegistrationProperties.MinInputBufferCount">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_REGISTRATION_PROPERTIES::MinInputBufferCount']/*" />
<msdn-id>microsoft.directx_sdk.xapo.xapo_registration_properties</msdn-id>
<unmanaged>unsigned int MinInputBufferCount</unmanaged>
<unmanaged-short>unsigned int MinInputBufferCount</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.RegistrationProperties.MaxInputBufferCount">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_REGISTRATION_PROPERTIES::MaxInputBufferCount']/*" />
<msdn-id>microsoft.directx_sdk.xapo.xapo_registration_properties</msdn-id>
<unmanaged>unsigned int MaxInputBufferCount</unmanaged>
<unmanaged-short>unsigned int MaxInputBufferCount</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.RegistrationProperties.MinOutputBufferCount">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_REGISTRATION_PROPERTIES::MinOutputBufferCount']/*" />
<msdn-id>microsoft.directx_sdk.xapo.xapo_registration_properties</msdn-id>
<unmanaged>unsigned int MinOutputBufferCount</unmanaged>
<unmanaged-short>unsigned int MinOutputBufferCount</unmanaged-short>
</member>
<member name="F:SharpDX.XAPO.RegistrationProperties.MaxOutputBufferCount">
<summary>
No documentation.
</summary>
<!-- No matching elements were found for the following include tag --><include file="..\..\..\Documentation\CodeComments.xml" path="/comments/comment[@id='XAPO_REGISTRATION_PROPERTIES::MaxOutputBufferCount']/*" />
<msdn-id>microsoft.directx_sdk.xapo.xapo_registration_properties</msdn-id>
<unmanaged>unsigned int MaxOutputBufferCount</unmanaged>
<unmanaged-short>unsigned int MaxOutputBufferCount</unmanaged-short>
</member>
<member name="T:SharpDX.XAPO.AudioProcessor27">
<summary>
AudioProcessor interface for XAudio27.
</summary>
</member>
<member name="T:SharpDX.XAPO.AudioProcessorBase`1">
<summary>
Base AudioProcessor class that implements methods from <see cref="T:SharpDX.XAPO.AudioProcessor"/>. This class is
also providing its parameter through a generic.
</summary>
<typeparam name="T">type of the parameter for this AudioProcessor</typeparam>
</member>
<member name="P:SharpDX.XAPO.AudioProcessorBase`1.Parameters">
<summary>
Return parameters
</summary>
</member>
<member name="P:SharpDX.XAPO.AudioProcessorBase`1.InputFormatLocked">
<summary>
Gets the input format locked.
</summary>
<value>The input format locked.</value>
</member>
<member name="P:SharpDX.XAPO.AudioProcessorBase`1.OutputFormatLocked">
<summary>
Gets the output format locked.
</summary>
<value>The output format locked.</value>
</member>
<member name="P:SharpDX.XAPO.AudioProcessorBase`1.MaxFrameCountLocked">
<summary>
Gets the max frame count locked.
</summary>
<value>The max frame count locked.</value>
</member>
<member name="P:SharpDX.XAPO.AudioProcessorBase`1.RegistrationProperties">
<summary>
Returns the registration properties of an XAPO.
</summary>
<returns> a <see cref="T:SharpDX.XAPO.RegistrationProperties"/> structure containing the registration properties the XAPO was created with; use XAPOFree to free the structure.</returns>
<unmanaged>HRESULT IXAPO::GetRegistrationProperties([Out] XAPO_REGISTRATION_PROPERTIES** ppRegistrationProperties)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorBase`1.IsInputFormatSupported(SharpDX.Multimedia.WaveFormat,SharpDX.Multimedia.WaveFormat,SharpDX.Multimedia.WaveFormat@)">
<summary>
Queries if a specific input format is supported for a given output format.
</summary>
<param name="outputFormat">Output format.</param>
<param name="requestedInputFormat">Input format to check for being supported.</param>
<param name="supportedInputFormat"> If not NULL, and the input format is not supported for the given output format, ppSupportedInputFormat returns a pointer to the closest input format that is supported. Use {{XAPOFree}} to free the returned structure. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAPO::IsInputFormatSupported([None] const WAVEFORMATEX* pOutputFormat,[None] const WAVEFORMATEX* pRequestedInputFormat,[Out, Optional] WAVEFORMATEX** ppSupportedInputFormat)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorBase`1.IsOutputFormatSupported(SharpDX.Multimedia.WaveFormat,SharpDX.Multimedia.WaveFormat,SharpDX.Multimedia.WaveFormat@)">
<summary>
Queries if a specific output format is supported for a given input format.
</summary>
<param name="inputFormat">[in] Input format. </param>
<param name="requestedOutputFormat">[in] Output format to check for being supported. </param>
<param name="supportedOutputFormat">[out] If not NULL and the output format is not supported for the given input format, ppSupportedOutputFormat returns a pointer to the closest output format that is supported. Use {{XAPOFree}} to free the returned structure. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAPO::IsOutputFormatSupported([None] const WAVEFORMATEX* pInputFormat,[None] const WAVEFORMATEX* pRequestedOutputFormat,[Out, Optional] WAVEFORMATEX** ppSupportedOutputFormat)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorBase`1.Initialize(SharpDX.DataStream)">
<summary>
Performs any effect-specific initialization.
</summary>
<param name="stream"> Effect-specific initialization parameters, may be NULL if DataByteSize is 0. </param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAPO::Initialize([In, Buffer, Optional] const void* pData,[None] UINT32 DataByteSize)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorBase`1.Reset">
<summary>
Resets variables dependent on frame history.
</summary>
<unmanaged>void IXAPO::Reset()</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorBase`1.LockForProcess(SharpDX.XAPO.LockParameters[],SharpDX.XAPO.LockParameters[])">
<summary>
Called by XAudio2 to lock the input and output configurations of an XAPO allowing it to
do any final initialization before {{Process}} is called on the realtime thread.
</summary>
<param name="inputLockedParameters"> Array of input <see cref="T:SharpDX.XAPO.LockParameters"/> structures.pInputLockedParameters may be NULL if InputLockedParameterCount is 0, otherwise it must have InputLockedParameterCount elements.</param>
<param name="outputLockedParameters"> Array of output <see cref="T:SharpDX.XAPO.LockParameters"/> structures.pOutputLockedParameters may be NULL if OutputLockedParameterCount is 0, otherwise it must have OutputLockedParameterCount elements.</param>
<returns>No documentation.</returns>
<unmanaged>HRESULT IXAPO::LockForProcess([None] UINT32 InputLockedParameterCount,[In, Buffer, Optional] const XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS* pInputLockedParameters,[None] UINT32 OutputLockedParameterCount,[In, Buffer, Optional] const XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS* pOutputLockedParameters)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorBase`1.UnlockForProcess">
<summary>
Deallocates variables that were allocated with the {{LockForProcess}} method.
</summary>
<unmanaged>void IXAPO::UnlockForProcess()</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorBase`1.Process(SharpDX.XAPO.BufferParameters[],SharpDX.XAPO.BufferParameters[],System.Boolean)">
<summary>
Runs the XAPO's digital signal processing (DSP) code on the given input and output buffers.
</summary>
<param name="inputProcessParameters">[in] Input array of <see cref="T:SharpDX.XAPO.BufferParameters"/> structures. </param>
<param name="outputProcessParameters">[in, out] Output array of <see cref="T:SharpDX.XAPO.BufferParameters"/> structures. On input, the value of <see cref="T:SharpDX.XAPO.BufferParameters"/>.ValidFrameCount indicates the number of frames that the XAPO should write to the output buffer. On output, the value of <see cref="T:SharpDX.XAPO.BufferParameters"/>.ValidFrameCount indicates the actual number of frames written. </param>
<param name="isEnabled"> TRUE to process normally; FALSE to process thru. See Remarks for additional information. </param>
<unmanaged>void IXAPO::Process([None] UINT32 InputProcessParameterCount,[In, Buffer, Optional] const XAPO_PROCESS_BUFFER_PARAMETERS* pInputProcessParameters,[None] UINT32 OutputProcessParameterCount,[InOut, Buffer, Optional] XAPO_PROCESS_BUFFER_PARAMETERS* pOutputProcessParameters,[None] BOOL IsEnabled)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorBase`1.CalcInputFrames(System.Int32)">
<summary>
Returns the number of input frames required to generate the given number of output frames.
</summary>
<param name="outputFrameCount">The number of output frames desired.</param>
<returns>No documentation.</returns>
<unmanaged>UINT32 IXAPO::CalcInputFrames([None] UINT32 OutputFrameCount)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorBase`1.CalcOutputFrames(System.Int32)">
<summary>
Returns the number of output frames that will be generated from a given number of input frames.
</summary>
<param name="inputFrameCount">The number of input frames.</param>
<returns>No documentation.</returns>
<unmanaged>UINT32 IXAPO::CalcOutputFrames([None] UINT32 InputFrameCount)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorBase`1.SharpDX#XAPO#ParameterProvider#SetParameters(SharpDX.DataStream)">
<summary>
Sets effect-specific parameters.
</summary>
<param name="parameters"> Effect-specific parameter block. </param>
<unmanaged>void IXAPOParameters::SetParameters([In, Buffer] const void* pParameters,[None] UINT32 ParameterByteSize)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorBase`1.SharpDX#XAPO#ParameterProvider#GetParameters(SharpDX.DataStream)">
<summary>
Gets the current values for any effect-specific parameters.
</summary>
<param name="parameters">[in, out] Receives an effect-specific parameter block. </param>
<unmanaged>void IXAPOParameters::GetParameters([Out, Buffer] void* pParameters,[None] UINT32 ParameterByteSize)</unmanaged>
</member>
<member name="T:SharpDX.XAPO.AudioProcessorParamNative`1">
<summary>
Implements this class to call an existing unmanaged AudioProcessor which supports parameter.
</summary>
<typeparam name="T">the parameter type of this AudioProcessor</typeparam>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorParamNative`1.#ctor(SharpDX.XAudio2.XAudio2)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.XAPO.AudioProcessorParamNative`1" /> class.
</summary>
<param name="device">The device.</param>
</member>
<member name="M:SharpDX.XAPO.AudioProcessorParamNative`1.NativePointerUpdated(System.IntPtr)">
<summary>
Update the Native Pointer. Rebuild ParameterProviderNative.
</summary>
</member>
<member name="P:SharpDX.XAPO.AudioProcessorParamNative`1.Parameter">
<summary>
Get or Set the parameters for this AudioProcessor
</summary>
</member>
<member name="T:SharpDX.XAPO.AudioProcessorShadow">
<summary>
Internal AudioProcessorShadow
</summary>
IXAPO GUID
</member>
<member name="M:SharpDX.XAPO.AudioProcessorShadow.ToIntPtr(SharpDX.XAPO.AudioProcessor)">
<summary>
Return a pointer to the unmanaged version of this callback.
</summary>
<param name="callback">The callback.</param>
<returns>A pointer to a shadow c++ callback</returns>
</member>
<member name="T:SharpDX.XAPO.AudioProcessorShadow.AudioProcessorVtbl.GetRegistrationPropertiesDelegate">
<unmanaged>HRESULT IXAPO::GetRegistrationProperties([Out] XAPO_REGISTRATION_PROPERTIES** ppRegistrationProperties)</unmanaged>
</member>
<member name="T:SharpDX.XAPO.AudioProcessorShadow.AudioProcessorVtbl.IsInputFormatSupportedDelegate">
<unmanaged>HRESULT IXAPO::IsInputFormatSupported([None] const WAVEFORMATEX* pOutputFormat,[None] const WAVEFORMATEX* pRequestedInputFormat,[Out, Optional] WAVEFORMATEX** ppSupportedInputFormat)</unmanaged>
</member>
<member name="T:SharpDX.XAPO.AudioProcessorShadow.AudioProcessorVtbl.IsOutputFormatSupportedDelegate">
<unmanaged>HRESULT IXAPO::IsOutputFormatSupported([None] const WAVEFORMATEX* pInputFormat,[None] const WAVEFORMATEX* pRequestedOutputFormat,[Out, Optional] WAVEFORMATEX** ppSupportedOutputFormat)</unmanaged>
</member>
<member name="T:SharpDX.XAPO.AudioProcessorShadow.AudioProcessorVtbl.InitializeDelegate">
<unmanaged>HRESULT IXAPO::Initialize([In, Buffer, Optional] const void* pData,[None] UINT32 DataByteSize)</unmanaged>
</member>
<member name="T:SharpDX.XAPO.AudioProcessorShadow.AudioProcessorVtbl.ResetDelegate">
<unmanaged>void IXAPO::Reset()</unmanaged>
</member>
<member name="T:SharpDX.XAPO.AudioProcessorShadow.AudioProcessorVtbl.LockForProcessDelegate">
<unmanaged>HRESULT IXAPO::LockForProcess([None] UINT32 InputLockedParameterCount,[In, Buffer, Optional] const XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS* pInputLockedParameters,[None] UINT32 OutputLockedParameterCount,[In, Buffer, Optional] const XAPO_LOCKFORPROCESS_BUFFER_PARAMETERS* pOutputLockedParameters)</unmanaged>
</member>
<member name="T:SharpDX.XAPO.AudioProcessorShadow.AudioProcessorVtbl.UnlockForProcessDelegate">
<summary>
Deallocates variables that were allocated with the {{LockForProcess}} method.
</summary>
<unmanaged>void IXAPO::UnlockForProcess()</unmanaged>
</member>
<member name="T:SharpDX.XAPO.AudioProcessorShadow.AudioProcessorVtbl.ProcessDelegate">
<unmanaged>void IXAPO::Process([None] UINT32 InputProcessParameterCount,[In, Buffer, Optional] const XAPO_PROCESS_BUFFER_PARAMETERS* pInputProcessParameters,[None] UINT32 OutputProcessParameterCount,[InOut, Buffer, Optional] XAPO_PROCESS_BUFFER_PARAMETERS* pOutputProcessParameters,[None] BOOL IsEnabled)</unmanaged>
</member>
<member name="T:SharpDX.XAPO.AudioProcessorShadow.AudioProcessorVtbl.CalcInputFramesDelegate">
<summary>
Returns the number of input frames required to generate the given number of output frames.
</summary>
<param name="thisObject">This pointer</param>
<param name="outputFrameCount">The number of output frames desired.</param>
<returns>No documentation.</returns>
<unmanaged>UINT32 IXAPO::CalcInputFrames([None] UINT32 OutputFrameCount)</unmanaged>
</member>
<member name="T:SharpDX.XAPO.AudioProcessorShadow.AudioProcessorVtbl.CalcOutputFramesDelegate">
<summary>
Returns the number of output frames that will be generated from a given number of input frames.
</summary>
<param name="thisObject">This Pointer</param>
<param name="inputFrameCount">The number of input frames.</param>
<returns>No documentation.</returns>
<unmanaged>UINT32 IXAPO::CalcOutputFrames([None] UINT32 InputFrameCount)</unmanaged>
</member>
<member name="T:SharpDX.XAPO.ParameterProvider27">
<summary>
AudioProcessor interface for XAudio27.
</summary>
</member>
<member name="T:SharpDX.XAPO.ParameterProviderShadow">
<summary>
Internal AudioProcessorShadow
</summary>
<unmanaged>IXAPOParameters</unmanaged>
</member>
<member name="M:SharpDX.XAPO.ParameterProviderShadow.ToIntPtr(SharpDX.XAPO.ParameterProvider)">
<summary>
Return a pointer to the unmanaged version of this callback.
</summary>
<param name="callback">The callback.</param>
<returns>A pointer to a shadow c++ callback</returns>
</member>
<member name="M:SharpDX.XAPO.ParameterProviderShadow.ParameterProviderVtbl.SetParametersImpl(System.IntPtr,System.IntPtr,System.Int32)">
<summary>
Sets effect-specific parameters.
</summary>
<param name="thisObject">This pointer</param>
<param name="paramPointer"> Effect-specific parameter block. </param>
<param name="paramSize">size of the parameters</param>
<unmanaged>void IXAPOParameters::SetParameters([In, Buffer] const void* pParameters,[None] UINT32 ParameterByteSize)</unmanaged>
</member>
<member name="M:SharpDX.XAPO.ParameterProviderShadow.ParameterProviderVtbl.GetParameters(System.IntPtr,System.IntPtr,System.Int32)">
<summary>
Gets the current values for any effect-specific parameters.
</summary>
<param name="thisObject">This pointer</param>
<param name="paramPointer">[in, out] Receives an effect-specific parameter block. </param>
<param name="paramSize">size of the parameters</param>
<unmanaged>void IXAPOParameters::GetParameters([Out, Buffer] void* pParameters,[None] UINT32 ParameterByteSize)</unmanaged>
</member>
</members>
</doc>