SecondaryBuffer.GetEffects Method |
Language: |
Retrieves a Microsoft DirectSound effect object or objects from a SecondaryBuffer object.
public object GetEffects(int); public object[] GetEffects(int, int);
Exceptions
ArgumentException An invalid parameter was passed to the called method. ControlUnavailableException The buffer control (volume, pan, and so on) requested by the caller is not available. Controls must be specified when the buffer is created. ObjectNotFoundException The requested object was not found. SoundException Root exception type for all DirectSound exceptions. Derives from DirectXException.
Use Effect Parameters
This C# example demonstrates how to use the parameters of an effect object from a SecondaryBuffer object.
The buffer object in this code snippet is assumed to be the SecondaryBuffer from the code in Add Effects to a SecondaryBuffer Object.
[C#]
//Retrieve the effects object and //the effect param sturctures and edit parameters. EchoEffect echo = (EchoEffect)buffer.GetEffects(0); EffectsEcho echo_params = echo.AllParameters; echo_params.LeftDelay = 250.0f; echo_params.RightDelay = 100.0f; echo_params.Feedback = 85.0f; echo_params.PanDelay = 1; echo_params.WetDryMix = 50.0f; ChorusEffect chorus = (ChorusEffect)buffer.GetEffects(1); EffectsChorus chorus_params = chorus.AllParameters; chorus_params.Delay = 15.0f; chorus_params.Depth = ChorusEffect.DepthMax; chorus_params.Phase = ChorusEffect.PhaseNegative90; chorus_params.Waveform = ChorusEffect.WaveSin; chorus_params.WetDryMix = 50.0f; //Set the new parameters and play the buffer. echo.AllParameters = echo_params; chorus.AllParameters = chorus_params; buffer.Play(0,BufferPlayFlags.Default);
Send comments about this topic to Microsoft. © Microsoft Corporation. All rights reserved.
Feedback? Please provide us with your comments on this topic.