CompressorEffect Class (Microsoft.DirectX.DirectSound)

How Do I...?

  • Add Effects to a SecondaryBuffer Object

Represents a Microsoft DirectSound effects object used to set and retrieve effect parameters on a SecondaryBuffer object that supports compression.

Definition

Visual Basic Public Class CompressorEffect
    Inherits MarshalByRefObjectLeave Site
    Implements IDisposableLeave Site
C# public class CompressorEffect : MarshalByRefObjectLeave Site, IDisposableLeave Site
C++ public ref class CompressorEffect : MarshalByRefObjectLeave Site, IDisposableLeave Site
JScript public class CompressorEffect extends MarshalByRefObjectLeave Site implements IDisposableLeave Site

Members Table

The following table lists the members exposed by the object.

Events

Event Description
Disposing Occurs when the Dispose method is called or when the CompressorEffect object is finalized and collected by the garbage collector of the Microsoft .NET common language runtime.

Fields

Field Description
static (Shared in Visual Basic) AttackMax Retrieves the maximum value for the EffectsCompression.Attack property.
static (Shared in Visual Basic) AttackMin Retrieves the minimum value for the EffectsCompression.Attack property.
static (Shared in Visual Basic) GainMax Retrieves the maximum value for the EffectsCompression.Gain property.
static (Shared in Visual Basic) GainMin Retrieves the minimum value for the EffectsCompression.Gain property.
static (Shared in Visual Basic) PreDelayMax Retrieves the maximum value for the EffectsCompression.PreDelay property.
static (Shared in Visual Basic) PreDelayMin Retrieves the minimum value for the EffectsCompression.PreDelay property.
static (Shared in Visual Basic) RatioMax Retrieves the maximum value for the EffectsCompression.Ratio property.
static (Shared in Visual Basic) RatioMin Retrieves the minimum value for the EffectsCompression.Ratio property.
static (Shared in Visual Basic) ReleaseMax Retrieves the maximum value for the EffectsCompression.Release property.
static (Shared in Visual Basic) ReleaseMin Retrieves the minimum value for the EffectsCompression.Release property.
static (Shared in Visual Basic) ThresholdMax Retrieves the maximum value for the EffectsCompression.Threshold property.
static (Shared in Visual Basic) ThresholdMin Retrieves the minimum value for the EffectsCompression.Threshold property.

Methods

Method Description
CompressorEffect Initializes a new instance of the CompressorEffect class. This method supports the .NET Framework Infrastructure and is not intended to be used directly in your code.
Dispose Immediately releases the unmanaged resources used by the CompressorEffect object.
Equals Returns a value that indicates whether the current instance is equal to a specified object.
Finalize Allows the CompressorEffect object to free resources before it is destroyed by the garbage collector.
GetHashCode Returns the hash code for the current instance.
GetObjectByValue This member supports the infrastructure for Microsoft DirectX 9.0 for Managed Code and is not intended to be used directly from your code.
static (Shared in Visual Basic) op_Equality Compares the current instance of a class to another instance to determine whether they are the same.
static (Shared in Visual Basic) op_Inequality Compares the current instance of a class to another instance to determine whether they are different.
raise_Disposing Raises the CompressorEffect.Disposing event when called from within a derived class.

Properties

Property Description
AllParameters Retrieves or sets compression parameters of a SecondaryBuffer object.
Disposed Gets a value that indicates whether the object is disposed.

Inheritance Hierarchy

ObjectLeave Site

MarshalByRefObjectLeave Site

CompressorEffect

Remarks

Obtain this object by calling the GetEffects or GetObjectInPath method of a SecondaryBuffer object that is using the effect.

How Do I...?

Add Effects to a SecondaryBuffer Object

This C# example demonstrates how to add effect objects to a SecondaryBuffer object.

              [C#]
              
//Create and setup the sound device.
Device dev = new Device();
dev.SetCooperativeLevel(this,CooperativeLevel.Normal);

//Create and setup the buffer description.
BufferDescription buffer_desc = new BufferDescription();
buffer_desc.ControlEffects = true; //this has to be true to use effects.
buffer_desc.GlobalFocus = true; //play sound even if application loses focus.

//Create and setup the buffer for playing the sound.
SecondaryBuffer buffer = new SecondaryBuffer(
    @"C:\WINDOWS\Media\ding.wav", 
    buffer_desc, 
    dev);

//Create an array of effects descriptions, 
//set the effect objects to echo and chorus and 
//set it in the buffer.
EffectDescription[] effects = new EffectDescription[2];
effects[0].GuidEffectClass = DSoundHelper.StandardEchoGuid;
effects[1].GuidEffectClass = DSoundHelper.StandardChorusGuid;
buffer.SetEffects(effects);

//Play Buffer.
buffer.Play(0,BufferPlayFlags.Default);

Class Information

Namespace Microsoft.DirectX.DirectSound
Assembly Microsoft.DirectX.DirectSound (microsoft.directx.directsound.dll)
Strong Name Microsoft.DirectX.DirectSound,  Version=1.0.900.0,  Culture=neutral,  PublicKeyToken=d3231b57b74a1492