DirectSound Structures

[The feature associated with this page, DirectSound, is a legacy feature. It has been superseded by WASAPI and Audio Graphs. Media Casting have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use Media Casting instead of DirectSound, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]

This section contains reference information about structures provided by the Microsoft DirectSound API.

Structure Description
D3DVECTOR Describes a vector.
DS3DBUFFER Contains all information necessary to uniquely describe the location, orientation, and motion of a 3D sound buffer.
DS3DLISTENER Describes the 3D world parameters and position of the listener.
DSBCAPS Describes the capabilities of a DirectSound buffer object.
DSBPOSITIONNOTIFY Describes a notification position.
DSBUFFERDESC Describes the characteristics of a buffer.
DSCAPS Describes the capabilities of a device.
DSCBCAPS Describes the capabilities of a capture buffer.
DSCBUFFERDESC Describes a capture buffer.
DSCCAPS Describes the capabilities of a capture device.
DSCEFFECTDESC Contains parameters for an effect associated with a capture buffer.
DSCFXAec Contains parameters for acoustic echo cancellation in a capture buffer.
DSCFXNoiseSuppress Contains parameters for noise suppression in a capture buffer.
DSEFFECTDESC Describes an effect associated with a buffer.
DSFXI3DL2Reverb Contains parameters for an I3DL2 (Interactive 3D Audio Level 2) reverberation effect.
DSFXChorus Contains parameters for a chorus effect.
DSFXCompressor Contains parameters for a compression effect.
DSFXDistortion Contains parameters for a distortion effect.
DSFXEcho Contains parameters for an echo effect.
DSFXFlanger Contains parameters for a flange effect.
DSFXGargle Contains parameters for an amplitude modulation effect.
DSFXParamEq Contains parameters for a parametric equalizer effect.
DSFXWavesReverb Contains parameters for a Waves reverberation effect.
WAVEFORMATEX Defines the format of waveform-audio data.
WAVEFORMATEXTENSIBLE Defines the format of waveform-audio data for formats having more than two channels or higher resolutions than allowed by WAVEFORMATEX.

Note

The memory for all DirectX structures must be initialized to 0 before use. In addition, all structures that contain a dwSize member must set the member to the size of the structure, in bytes, before use. The following example performs these tasks on a common structure, DSCAPS:

 DSCAPS dscaps;   ZeroMemory(&dscaps, sizeof(dscaps)); dscaps.dwSize = sizeof(dscaps);