Microsoft DirectX 8.0 (C++) |
Used to create buffer objects and set up the environment.
The IDirectSound8 interface supersedes IDirectSound and adds new methods. See Remarks.
Obtain this interface by using the DirectSoundCreate8 or DirectSoundFullDuplexCreate8 function, or by using CoCreateInstance or CoCreateInstanceEx to create an object of class CLSID_DirectSound8.
The methods of the IDirectSound8 interface can be organized into the following groups:
Initialization | Initialize |
SetCooperativeLevel | |
Buffer creation | CreateSoundBuffer |
DuplicateSoundBuffer | |
Device capabilities | GetCaps |
VerifyCertification | |
Memory management | Compact |
Speaker configuration | GetSpeakerConfig |
SetSpeakerConfig |
The IDirectSound8 interface, like all COM interfaces, inherits the IUnknown interface methods. The IUnknown interface supports the following three methods:
IUnknown | AddRef |
QueryInterface | |
Release |
The LPDIRECTSOUND8 type is defined as a pointer to the IDirectSound8 interface:
typedef struct IDirectSound8 *LPDIRECTSOUND8;
Only objects of class CLSID_DirectSound8 support this interface. All DirectSound objects created by DirectSoundCreate8 and DirectSoundFullDuplexCreate8 fall into this category. Objects of class CLSID_DirectSound, which include all those created by using DirectSoundCreate, support only the earlier IDirectSound interface.
The behavior of CLSID_DirectSound8 objects is somewhat different than that of CLSID_DirectSound objects. These differences are found in the IDirectSound interface as well as the IDirectSound8 interface. Specific differences in the behavior of the newer object include the following:
Header: Declared in dsound.h.