Поделиться через


IDirectSound3DBuffer8

[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.]

The IDirectSound3DBuffer8 interface is used to retrieve and set parameters that describe the position, orientation, and environment of a sound buffer in 3D space.

IDirectSound3DBuffer8 is a define for IDirectSound3DBuffer. The two interface names are interchangeable.

The IDirectSound3DBuffer8 interface is obtained from a buffer that was created with the DSBCAPS_CTRL3D flag. You can get it from the IDirectSoundBuffer8 interface by using the QueryInterface method.

In addition to the methods inherited from IUnknown, the IDirectSound3DBuffer8 interface exposes the following methods, arranged by category.

3D mode

Method Description
IDirectSound3DBuffer8::GetMode The GetMode method retrieves the operation mode for 3D sound processing.
IDirectSound3DBuffer8::SetMode The SetMode method sets the operation mode for 3D sound processing.

Batch Parameters

Method Description
IDirectSound3DBuffer8::GetAllParameters The GetAllParameters method retrieves the 3D properties of the sound buffer.
IDirectSound3DBuffer8::SetAllParameters The SetAllParameters method sets all 3D sound buffer properties.

Minimum and Maximum Distance

Method Description
IDirectSound3DBuffer8::GetMaxDistance The GetMaxDistance method retrieves the maximum distance, which is the distance from the listener beyond which sounds in this buffer are no longer attenuated.
IDirectSound3DBuffer8::GetMinDistance The GetMinDistance method retrieves the minimum distance, which is the distance from the listener at which sounds in this buffer begin to be attenuated.
IDirectSound3DBuffer8::SetMaxDistance The SetMaxDistance method sets the maximum distance, which is the distance from the listener beyond which sounds in this buffer are no longer attenuated.
IDirectSound3DBuffer8::SetMinDistance The SetMinDistance method sets the minimum distance, which is the distance from the listener at which sounds in this buffer begin to be attenuated.

Position

Method Description
IDirectSound3DBuffer8::GetPosition The GetPosition method retrieves the position of the sound source.
IDirectSound3DBuffer8::SetPosition The SetPosition method sets the position of the sound source.

Sound Projection Cone

Method Description
IDirectSound3DBuffer8::GetConeAngles The GetConeAngles method retrieves the inside and outside angles of the sound projection cone.
IDirectSound3DBuffer8::GetConeOrientation The GetConeOrientation method retrieves the orientation of the sound projection cone.
IDirectSound3DBuffer8::GetConeOutsideVolume The GetConeOutsideVolume method retrieves the volume of the sound outside the outside angle of the sound projection cone.
IDirectSound3DBuffer8::SetConeAngles The SetConeAngles method sets the inside and outside angles of the sound projection cone.
IDirectSound3DBuffer8::SetConeOrientation The SetConeOrientation method sets the orientation of the sound projection cone.
IDirectSound3DBuffer8::SetConeOutsideVolume The SetConeOutsideVolume method sets the volume of the sound outside the outside angle of the sound projection cone.

Velocity

Method Description
IDirectSound3DBuffer8::GetVelocity The GetVelocity method retrieves the velocity of the sound source.
IDirectSound3DBuffer8::SetVelocity The SetVelocity method sets the velocity of the sound source.

The LPDIRECTSOUND3DBUFFER type is defined as a pointer to the IDirectSound3DBuffer8 interface:

typedef struct IDirectSound3DBuffer  *LPDIRECTSOUND3DBUFFER;

Requirements

Header: Declared in DSound.h.

Library: Use Dsound3d.dll.

See Also

DirectSound Interfaces