BufferDescription Class (Microsoft.DirectX.DirectSound)

Contains properties and methods that describe the characteristics of a new buffer object.


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

Members Table

The following table lists the members exposed by the object.


Method Description
BufferDescription Initializes a new instance of the BufferDescription class.
Dispose Immediately releases the unmanaged resources used by the BufferDescription object.
Finalize Allows the BufferDescription object to free resources before it is destroyed by the garbage collector.


Property Description
BufferBytes Retrieves or sets the size of the new buffer.
CanGetCurrentPosition Determines whether the application can get a more accurate play cursor.
Control3D Determines whether the buffer has 3-D control capability.
ControlEffects Specifies whether the buffer supports effects processing.
ControlFrequency Specifies whether the buffer has frequency control capability.
ControlPan Specifies whether the buffer has pan control capability.
ControlPositionNotify Specifies whether the buffer has position notification capability.
ControlVolume Specifies whether the buffer has volume control capability.
DeferLocation Specifies whether the buffer can be assigned to a hardware or software resource at play time.
Flags Retrieves or sets the capabilities of the buffer.
Format Retrieves or sets the the waveform format for the buffer.
GlobalFocus Specifies whether the buffer is a global sound buffer.
Guid3DAlgorithm Retrieves or sets the unique identifier of the two-speaker virtualization algorithm to be used by DirectSound3D hardware emulation.
LocateInHardware Specifies whether the buffer must use hardware mixing.
LocateInSoftware Specifies whether the buffer must use software memory and use software mixing, even if BufferDescription.StaticBuffer is specified and hardware resources are available.
Mute3DAtMaximumDistance Specifies whether the sound is reduced to silence at the maximum distance.
PrimaryBuffer Specifies whether the buffer is a primary sound buffer.
StaticBuffer Specifies whether the buffer is placed in on-board hardware memory, if available.
StickyFocus Specifies whether the buffer has sticky focus.

Inheritance Hierarchy

ObjectLeave Site

MarshalByRefObjectLeave Site



When creating a primary buffer, applications must set the BufferBytes member to zero. Microsoft DirectSound will determine the best buffer size for the particular sound device in use. To determine the size of a created primary buffer, check the BufferBytes property of the BufferCaps structure for the primary buffer.

On virtual device drivers (VxD), a sound buffer created with ControlPositionNotify is always a software buffer, because the VxD driver model does not support notifications. With Windows Driver Model (WDM) drivers, a notification-enabled buffer can be in hardware, if hardware resources are available.

The LocateInHardware and LocateInSoftware flags are optional and mutually exclusive. LocateInHardware forces the buffer to reside in hardware, meaning that it will be mixed by the sound card. LocateInSoftware forces the buffer to reside in software, where it is mixed by the CPU.

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