EffectsChorus.Delay Property (Microsoft.DirectX.DirectSound)

How Do I...?

  • Use Effect Parameters

Retrieves and sets the number of milliseconds the input is delayed before it is played back, in the EffectsChorus structure.


Visual Basic Public Property Delay As Single
C# public float Delay { get; set; }
C++ public:
property float Delay {
        float get();
        void set(float value);
JScript public function get Delay() : float
public function set Delay(float);

Property Value

Number of milliseconds the input is delayed before it is played back.

This property is read/write. 


Can range from ChorusEffect.DelayMin to ChorusEffect.DelayMax.

The default value is 16 ms.

How Do I...?

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.


//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;