DirectX 5 Redocumentation
A redocumentation of DirectX 5, brought to you by a bunch of Infomaniacs.
dsound.h File Reference
#include <d3dtypes.h>
#include <objbase.h>

Go to the source code of this file.

Data Structures

struct  _DSCAPS
 
struct  _DSBCAPS
 
struct  _DSBUFFERDESC
 
struct  _DS3DBUFFER
 
struct  _DS3DLISTENER
 
struct  _DSCCAPS
 
struct  _DSCBUFFERDESC
 
struct  _DSCBCAPS
 
struct  _DSBPOSITIONNOTIFY
 

Macros

#define COM_NO_WINDOWS_H
 
#define _FACDS   0x878
 
#define MAKE_DSHRESULT(code)   MAKE_HRESULT(1, _FACDS, code)
 
#define LPDSENUMCALLBACK   LPDSENUMCALLBACKA
 
#define DirectSoundEnumerate   DirectSoundEnumerateA
 
#define DirectSoundCaptureEnumerate   DirectSoundCaptureEnumerateA
 
#define INTERFACE   IDirectSound
 
#define IDirectSound_QueryInterface(p, a, b)   (p)->lpVtbl->QueryInterface(p,a,b)
 
#define IDirectSound_AddRef(p)   (p)->lpVtbl->AddRef(p)
 
#define IDirectSound_Release(p)   (p)->lpVtbl->Release(p)
 
#define IDirectSound_CreateSoundBuffer(p, a, b, c)   (p)->lpVtbl->CreateSoundBuffer(p,a,b,c)
 
#define IDirectSound_GetCaps(p, a)   (p)->lpVtbl->GetCaps(p,a)
 
#define IDirectSound_DuplicateSoundBuffer(p, a, b)   (p)->lpVtbl->DuplicateSoundBuffer(p,a,b)
 
#define IDirectSound_SetCooperativeLevel(p, a, b)   (p)->lpVtbl->SetCooperativeLevel(p,a,b)
 
#define IDirectSound_Compact(p)   (p)->lpVtbl->Compact(p)
 
#define IDirectSound_GetSpeakerConfig(p, a)   (p)->lpVtbl->GetSpeakerConfig(p,a)
 
#define IDirectSound_SetSpeakerConfig(p, b)   (p)->lpVtbl->SetSpeakerConfig(p,b)
 
#define IDirectSound_Initialize(p, a)   (p)->lpVtbl->Initialize(p,a)
 
#define INTERFACE   IDirectSoundBuffer
 
#define IDirectSoundBuffer_QueryInterface(p, a, b)   (p)->lpVtbl->QueryInterface(p,a,b)
 
#define IDirectSoundBuffer_AddRef(p)   (p)->lpVtbl->AddRef(p)
 
#define IDirectSoundBuffer_Release(p)   (p)->lpVtbl->Release(p)
 
#define IDirectSoundBuffer_GetCaps(p, a)   (p)->lpVtbl->GetCaps(p,a)
 
#define IDirectSoundBuffer_GetCurrentPosition(p, a, b)   (p)->lpVtbl->GetCurrentPosition(p,a,b)
 
#define IDirectSoundBuffer_GetFormat(p, a, b, c)   (p)->lpVtbl->GetFormat(p,a,b,c)
 
#define IDirectSoundBuffer_GetVolume(p, a)   (p)->lpVtbl->GetVolume(p,a)
 
#define IDirectSoundBuffer_GetPan(p, a)   (p)->lpVtbl->GetPan(p,a)
 
#define IDirectSoundBuffer_GetFrequency(p, a)   (p)->lpVtbl->GetFrequency(p,a)
 
#define IDirectSoundBuffer_GetStatus(p, a)   (p)->lpVtbl->GetStatus(p,a)
 
#define IDirectSoundBuffer_Initialize(p, a, b)   (p)->lpVtbl->Initialize(p,a,b)
 
#define IDirectSoundBuffer_Lock(p, a, b, c, d, e, f, g)   (p)->lpVtbl->Lock(p,a,b,c,d,e,f,g)
 
#define IDirectSoundBuffer_Play(p, a, b, c)   (p)->lpVtbl->Play(p,a,b,c)
 
#define IDirectSoundBuffer_SetCurrentPosition(p, a)   (p)->lpVtbl->SetCurrentPosition(p,a)
 
#define IDirectSoundBuffer_SetFormat(p, a)   (p)->lpVtbl->SetFormat(p,a)
 
#define IDirectSoundBuffer_SetVolume(p, a)   (p)->lpVtbl->SetVolume(p,a)
 
#define IDirectSoundBuffer_SetPan(p, a)   (p)->lpVtbl->SetPan(p,a)
 
#define IDirectSoundBuffer_SetFrequency(p, a)   (p)->lpVtbl->SetFrequency(p,a)
 
#define IDirectSoundBuffer_Stop(p)   (p)->lpVtbl->Stop(p)
 
#define IDirectSoundBuffer_Unlock(p, a, b, c, d)   (p)->lpVtbl->Unlock(p,a,b,c,d)
 
#define IDirectSoundBuffer_Restore(p)   (p)->lpVtbl->Restore(p)
 
#define INTERFACE   IDirectSound3DListener
 
#define IDirectSound3DListener_QueryInterface(p, a, b)   (p)->lpVtbl->QueryInterface(p,a,b)
 
#define IDirectSound3DListener_AddRef(p)   (p)->lpVtbl->AddRef(p)
 
#define IDirectSound3DListener_Release(p)   (p)->lpVtbl->Release(p)
 
#define IDirectSound3DListener_GetAllParameters(p, a)   (p)->lpVtbl->GetAllParameters(p,a)
 
#define IDirectSound3DListener_GetDistanceFactor(p, a)   (p)->lpVtbl->GetDistanceFactor(p,a)
 
#define IDirectSound3DListener_GetDopplerFactor(p, a)   (p)->lpVtbl->GetDopplerFactor(p,a)
 
#define IDirectSound3DListener_GetOrientation(p, a, b)   (p)->lpVtbl->GetOrientation(p,a,b)
 
#define IDirectSound3DListener_GetPosition(p, a)   (p)->lpVtbl->GetPosition(p,a)
 
#define IDirectSound3DListener_GetRolloffFactor(p, a)   (p)->lpVtbl->GetRolloffFactor(p,a)
 
#define IDirectSound3DListener_GetVelocity(p, a)   (p)->lpVtbl->GetVelocity(p,a)
 
#define IDirectSound3DListener_SetAllParameters(p, a, b)   (p)->lpVtbl->SetAllParameters(p,a,b)
 
#define IDirectSound3DListener_SetDistanceFactor(p, a, b)   (p)->lpVtbl->SetDistanceFactor(p,a,b)
 
#define IDirectSound3DListener_SetDopplerFactor(p, a, b)   (p)->lpVtbl->SetDopplerFactor(p,a,b)
 
#define IDirectSound3DListener_SetOrientation(p, a, b, c, d, e, f, g)   (p)->lpVtbl->SetOrientation(p,a,b,c,d,e,f,g)
 
#define IDirectSound3DListener_SetPosition(p, a, b, c, d)   (p)->lpVtbl->SetPosition(p,a,b,c,d)
 
#define IDirectSound3DListener_SetRolloffFactor(p, a, b)   (p)->lpVtbl->SetRolloffFactor(p,a,b)
 
#define IDirectSound3DListener_SetVelocity(p, a, b, c, d)   (p)->lpVtbl->SetVelocity(p,a,b,c,d)
 
#define IDirectSound3DListener_CommitDeferredSettings(p)   (p)->lpVtbl->CommitDeferredSettings(p)
 
#define INTERFACE   IDirectSound3DBuffer
 
#define IDirectSound3DBuffer_QueryInterface(p, a, b)   (p)->lpVtbl->QueryInterface(p,a,b)
 
#define IDirectSound3DBuffer_AddRef(p)   (p)->lpVtbl->AddRef(p)
 
#define IDirectSound3DBuffer_Release(p)   (p)->lpVtbl->Release(p)
 
#define IDirectSound3DBuffer_GetAllParameters(p, a)   (p)->lpVtbl->GetAllParameters(p,a)
 
#define IDirectSound3DBuffer_GetConeAngles(p, a, b)   (p)->lpVtbl->GetConeAngles(p,a,b)
 
#define IDirectSound3DBuffer_GetConeOrientation(p, a)   (p)->lpVtbl->GetConeOrientation(p,a)
 
#define IDirectSound3DBuffer_GetConeOutsideVolume(p, a)   (p)->lpVtbl->GetConeOutsideVolume(p,a)
 
#define IDirectSound3DBuffer_GetPosition(p, a)   (p)->lpVtbl->GetPosition(p,a)
 
#define IDirectSound3DBuffer_GetMinDistance(p, a)   (p)->lpVtbl->GetMinDistance(p,a)
 
#define IDirectSound3DBuffer_GetMaxDistance(p, a)   (p)->lpVtbl->GetMaxDistance(p,a)
 
#define IDirectSound3DBuffer_GetMode(p, a)   (p)->lpVtbl->GetMode(p,a)
 
#define IDirectSound3DBuffer_GetVelocity(p, a)   (p)->lpVtbl->GetVelocity(p,a)
 
#define IDirectSound3DBuffer_SetAllParameters(p, a, b)   (p)->lpVtbl->SetAllParameters(p,a,b)
 
#define IDirectSound3DBuffer_SetConeAngles(p, a, b, c)   (p)->lpVtbl->SetConeAngles(p,a,b,c)
 
#define IDirectSound3DBuffer_SetConeOrientation(p, a, b, c, d)   (p)->lpVtbl->SetConeOrientation(p,a,b,c,d)
 
#define IDirectSound3DBuffer_SetConeOutsideVolume(p, a, b)   (p)->lpVtbl->SetConeOutsideVolume(p,a,b)
 
#define IDirectSound3DBuffer_SetPosition(p, a, b, c, d)   (p)->lpVtbl->SetPosition(p,a,b,c,d)
 
#define IDirectSound3DBuffer_SetMinDistance(p, a, b)   (p)->lpVtbl->SetMinDistance(p,a,b)
 
#define IDirectSound3DBuffer_SetMaxDistance(p, a, b)   (p)->lpVtbl->SetMaxDistance(p,a,b)
 
#define IDirectSound3DBuffer_SetMode(p, a, b)   (p)->lpVtbl->SetMode(p,a,b)
 
#define IDirectSound3DBuffer_SetVelocity(p, a, b, c, d)   (p)->lpVtbl->SetVelocity(p,a,b,c,d)
 
#define INTERFACE   IDirectSoundCapture
 
#define IDirectSoundCapture_QueryInterface(p, a, b)   (p)->lpVtbl->QueryInterface(p,a,b)
 
#define IDirectSoundCapture_AddRef(p)   (p)->lpVtbl->AddRef(p)
 
#define IDirectSoundCapture_Release(p)   (p)->lpVtbl->Release(p)
 
#define IDirectSoundCapture_CreateCaptureBuffer(p, a, b, c)   (p)->lpVtbl->CreateCaptureBuffer(p,a,b,c)
 
#define IDirectSoundCapture_GetCaps(p, a)   (p)->lpVtbl->GetCaps(p,a)
 
#define IDirectSoundCapture_Initialize(p, a)   (p)->lpVtbl->Initialize(p,a)
 
#define INTERFACE   IDirectSoundCaptureBuffer
 
#define IDirectSoundCaptureBuffer_QueryInterface(p, a, b)   (p)->lpVtbl->QueryInterface(p,a,b)
 
#define IDirectSoundCaptureBuffer_AddRef(p)   (p)->lpVtbl->AddRef(p)
 
#define IDirectSoundCaptureBuffer_Release(p)   (p)->lpVtbl->Release(p)
 
#define IDirectSoundCaptureBuffer_GetCaps(p, a)   (p)->lpVtbl->GetCaps(p,a)
 
#define IDirectSoundCaptureBuffer_GetCurrentPosition(p, a, b)   (p)->lpVtbl->GetCurrentPosition(p,a,b)
 
#define IDirectSoundCaptureBuffer_GetFormat(p, a, b, c)   (p)->lpVtbl->GetFormat(p,a,b,c)
 
#define IDirectSoundCaptureBuffer_GetStatus(p, a)   (p)->lpVtbl->GetStatus(p,a)
 
#define IDirectSoundCaptureBuffer_Initialize(p, a, b)   (p)->lpVtbl->Initialize(p,a,b)
 
#define IDirectSoundCaptureBuffer_Lock(p, a, b, c, d, e, f, g)   (p)->lpVtbl->Lock(p,a,b,c,d,e,f,g)
 
#define IDirectSoundCaptureBuffer_Start(p, a)   (p)->lpVtbl->Start(p,a)
 
#define IDirectSoundCaptureBuffer_Stop(p)   (p)->lpVtbl->Stop(p)
 
#define IDirectSoundCaptureBuffer_Unlock(p, a, b, c, d)   (p)->lpVtbl->Unlock(p,a,b,c,d)
 
#define INTERFACE   IDirectSoundNotify
 
#define IDirectSoundNotify_QueryInterface(p, a, b)   (p)->lpVtbl->QueryInterface(p,a,b)
 
#define IDirectSoundNotify_AddRef(p)   (p)->lpVtbl->AddRef(p)
 
#define IDirectSoundNotify_Release(p)   (p)->lpVtbl->Release(p)
 
#define IDirectSoundNotify_SetNotificationPositions(p, a, b)   (p)->lpVtbl->SetNotificationPositions(p,a,b)
 
#define _IKsPropertySet_
 
#define KSPROPERTY_SUPPORT_GET   0x00000001
 
#define KSPROPERTY_SUPPORT_SET   0x00000002
 
#define INTERFACE   IKsPropertySet
 
#define IKsPropertySet_QueryInterface(p, a, b)   (p)->lpVtbl->QueryInterface(p,a,b)
 
#define IKsPropertySet_AddRef(p)   (p)->lpVtbl->AddRef(p)
 
#define IKsPropertySet_Release(p)   (p)->lpVtbl->Release(p)
 
#define IKsPropertySet_Get(p, a, b, c, d, e, f, g)   (p)->lpVtbl->Get(p,a,b,c,d,e,f,g)
 
#define IKsPropertySet_Set(p, a, b, c, d, e, f)   (p)->lpVtbl->Set(p,a,b,c,d,e,f)
 
#define IKsPropertySet_QuerySupport(p, a, b, c)   (p)->lpVtbl->QuerySupport(p,a,b,c)
 
#define DS_OK   0
 
#define DSERR_ALLOCATED   MAKE_DSHRESULT(10)
 
#define DSERR_CONTROLUNAVAIL   MAKE_DSHRESULT(30)
 The control (vol,pan,etc.) requested by the caller is not available. More...
 
#define DSERR_INVALIDPARAM   E_INVALIDARG
 An invalid parameter was passed to the returning function. More...
 
#define DSERR_INVALIDCALL   MAKE_DSHRESULT(50)
 This call is not valid for the current state of this object. More...
 
#define DSERR_GENERIC   E_FAIL
 An undetermined error occured inside the DirectSound subsystem. More...
 
#define DSERR_PRIOLEVELNEEDED   MAKE_DSHRESULT(70)
 
#define DSERR_OUTOFMEMORY   E_OUTOFMEMORY
 Not enough free memory is available to complete the operation. More...
 
#define DSERR_BADFORMAT   MAKE_DSHRESULT(100)
 The specified WAVE format is not supported. More...
 
#define DSERR_UNSUPPORTED   E_NOTIMPL
 The function called is not supported at this time. More...
 
#define DSERR_NODRIVER   MAKE_DSHRESULT(120)
 No sound driver is available for use. More...
 
#define DSERR_ALREADYINITIALIZED   MAKE_DSHRESULT(130)
 This object is already initialized. More...
 
#define DSERR_NOAGGREGATION   CLASS_E_NOAGGREGATION
 This object does not support aggregation. More...
 
#define DSERR_BUFFERLOST   MAKE_DSHRESULT(150)
 The buffer memory has been lost, and must be restored. More...
 
#define DSERR_OTHERAPPHASPRIO   MAKE_DSHRESULT(160)
 
#define DSERR_UNINITIALIZED   MAKE_DSHRESULT(170)
 This object has not been initialized. More...
 
#define DSERR_NOINTERFACE   E_NOINTERFACE
 The requested COM interface is not available. More...
 
#define DSCAPS_PRIMARYMONO   0x00000001
 
#define DSCAPS_PRIMARYSTEREO   0x00000002
 
#define DSCAPS_PRIMARY8BIT   0x00000004
 
#define DSCAPS_PRIMARY16BIT   0x00000008
 
#define DSCAPS_CONTINUOUSRATE   0x00000010
 
#define DSCAPS_EMULDRIVER   0x00000020
 
#define DSCAPS_CERTIFIED   0x00000040
 
#define DSCAPS_SECONDARYMONO   0x00000100
 
#define DSCAPS_SECONDARYSTEREO   0x00000200
 
#define DSCAPS_SECONDARY8BIT   0x00000400
 
#define DSCAPS_SECONDARY16BIT   0x00000800
 
#define DSBPLAY_LOOPING   0x00000001
 
#define DSBSTATUS_PLAYING   0x00000001
 
#define DSBSTATUS_BUFFERLOST   0x00000002
 
#define DSBSTATUS_LOOPING   0x00000004
 
#define DSBLOCK_FROMWRITECURSOR   0x00000001
 
#define DSBLOCK_ENTIREBUFFER   0x00000002
 
#define DSSCL_NORMAL   0x00000001
 
#define DSSCL_PRIORITY   0x00000002
 
#define DSSCL_EXCLUSIVE   0x00000003
 
#define DSSCL_WRITEPRIMARY   0x00000004
 
#define DS3DMODE_NORMAL   0x00000000
 
#define DS3DMODE_HEADRELATIVE   0x00000001
 
#define DS3DMODE_DISABLE   0x00000002
 
#define DS3D_IMMEDIATE   0x00000000
 
#define DS3D_DEFERRED   0x00000001
 
#define DS3D_MINDISTANCEFACTOR   0.0f
 
#define DS3D_MAXDISTANCEFACTOR   10.0f
 
#define DS3D_DEFAULTDISTANCEFACTOR   1.0f
 
#define DS3D_MINROLLOFFFACTOR   0.0f
 
#define DS3D_MAXROLLOFFFACTOR   10.0f
 
#define DS3D_DEFAULTROLLOFFFACTOR   1.0f
 
#define DS3D_MINDOPPLERFACTOR   0.0f
 
#define DS3D_MAXDOPPLERFACTOR   10.0f
 
#define DS3D_DEFAULTDOPPLERFACTOR   1.0f
 
#define DS3D_DEFAULTMINDISTANCE   1.0f
 
#define DS3D_DEFAULTMAXDISTANCE   1000000000.0f
 
#define DS3D_MINCONEANGLE   0
 
#define DS3D_MAXCONEANGLE   360
 
#define DS3D_DEFAULTCONEANGLE   360
 
#define DS3D_DEFAULTCONEOUTSIDEVOLUME   0
 
#define DSBCAPS_PRIMARYBUFFER   0x00000001
 
#define DSBCAPS_STATIC   0x00000002
 
#define DSBCAPS_LOCHARDWARE   0x00000004
 
#define DSBCAPS_LOCSOFTWARE   0x00000008
 
#define DSBCAPS_CTRL3D   0x00000010
 
#define DSBCAPS_CTRLFREQUENCY   0x00000020
 
#define DSBCAPS_CTRLPAN   0x00000040
 
#define DSBCAPS_CTRLVOLUME   0x00000080
 
#define DSBCAPS_CTRLPOSITIONNOTIFY   0x00000100
 
#define DSBCAPS_CTRLDEFAULT   0x000000E0
 
#define DSBCAPS_CTRLALL   0x000001F0
 
#define DSBCAPS_STICKYFOCUS   0x00004000
 
#define DSBCAPS_GLOBALFOCUS   0x00008000
 
#define DSBCAPS_GETCURRENTPOSITION2   0x00010000
 
#define DSBCAPS_MUTE3DATMAXDISTANCE   0x00020000
 
#define DSCBCAPS_WAVEMAPPED   0x80000000
 
#define DSSPEAKER_HEADPHONE   0x00000001
 
#define DSSPEAKER_MONO   0x00000002
 
#define DSSPEAKER_QUAD   0x00000003
 
#define DSSPEAKER_STEREO   0x00000004
 
#define DSSPEAKER_SURROUND   0x00000005
 
#define DSSPEAKER_GEOMETRY_MIN   0x00000005
 
#define DSSPEAKER_GEOMETRY_NARROW   0x0000000A
 
#define DSSPEAKER_GEOMETRY_WIDE   0x00000014
 
#define DSSPEAKER_GEOMETRY_MAX   0x000000B4
 
#define DSSPEAKER_COMBINED(c, g)   ((DWORD)(((BYTE)(c)) | ((DWORD)((BYTE)(g))) << 16))
 
#define DSSPEAKER_CONFIG(a)   ((BYTE)(a))
 
#define DSSPEAKER_GEOMETRY(a)   ((BYTE)(((DWORD)(a) >> 16) & 0x00FF))
 
#define DSCCAPS_EMULDRIVER   0x00000020
 
#define DSCBLOCK_ENTIREBUFFER   0x00000001
 
#define DSCBSTATUS_CAPTURING   0x00000001
 
#define DSCBSTATUS_LOOPING   0x00000002
 
#define DSCBSTART_LOOPING   0x00000001
 
#define DSBFREQUENCY_MIN   100
 
#define DSBFREQUENCY_MAX   100000
 
#define DSBFREQUENCY_ORIGINAL   0
 
#define DSBPAN_LEFT   -10000
 
#define DSBPAN_CENTER   0
 
#define DSBPAN_RIGHT   10000
 
#define DSBVOLUME_MIN   -10000
 
#define DSBVOLUME_MAX   0
 
#define DSBSIZE_MIN   4
 
#define DSBSIZE_MAX   0x0FFFFFFF
 
#define DSBPN_OFFSETSTOP   0xFFFFFFFF
 

Typedefs

typedef struct IDirectSound * LPDIRECTSOUND
 
typedef struct IDirectSoundBuffer * LPDIRECTSOUNDBUFFER
 
typedef struct IDirectSound3DListener * LPDIRECTSOUND3DLISTENER
 
typedef struct IDirectSound3DBuffer * LPDIRECTSOUND3DBUFFER
 
typedef struct IDirectSoundCapture * LPDIRECTSOUNDCAPTURE
 
typedef struct IDirectSoundCaptureBuffer * LPDIRECTSOUNDCAPTUREBUFFER
 
typedef struct IDirectSoundNotify * LPDIRECTSOUNDNOTIFY
 
typedef struct _DSCAPS DSCAPS
 
typedef struct _DSCAPSLPDSCAPS
 
typedef const DSCAPSLPCDSCAPS
 
typedef struct _DSBCAPS DSBCAPS
 
typedef struct _DSBCAPSLPDSBCAPS
 
typedef const DSBCAPSLPCDSBCAPS
 
typedef struct _DSBUFFERDESC DSBUFFERDESC
 
typedef struct _DSBUFFERDESCLPDSBUFFERDESC
 
typedef const DSBUFFERDESCLPCDSBUFFERDESC
 
typedef struct _DS3DBUFFER DS3DBUFFER
 
typedef struct _DS3DBUFFERLPDS3DBUFFER
 
typedef const DS3DBUFFERLPCDS3DBUFFER
 
typedef struct _DS3DLISTENER DS3DLISTENER
 
typedef struct _DS3DLISTENERLPDS3DLISTENER
 
typedef const DS3DLISTENERLPCDS3DLISTENER
 
typedef struct _DSCCAPS DSCCAPS
 
typedef struct _DSCCAPSLPDSCCAPS
 
typedef const DSCCAPSLPCDSCCAPS
 
typedef struct _DSCBUFFERDESC DSCBUFFERDESC
 
typedef struct _DSCBUFFERDESCLPDSCBUFFERDESC
 
typedef const DSCBUFFERDESCLPCDSCBUFFERDESC
 
typedef struct _DSCBCAPS DSCBCAPS
 
typedef struct _DSCBCAPSLPDSCBCAPS
 
typedef const DSCBCAPSLPCDSCBCAPS
 
typedef struct _DSBPOSITIONNOTIFY DSBPOSITIONNOTIFY
 
typedef struct _DSBPOSITIONNOTIFYLPDSBPOSITIONNOTIFY
 
typedef const DSBPOSITIONNOTIFYLPCDSBPOSITIONNOTIFY
 
typedef LPDIRECTSOUNDLPLPDIRECTSOUND
 
typedef LPDIRECTSOUNDBUFFERLPLPDIRECTSOUNDBUFFER
 
typedef LPDIRECTSOUND3DLISTENERLPLPDIRECTSOUND3DLISTENER
 
typedef LPDIRECTSOUND3DBUFFERLPLPDIRECTSOUND3DBUFFER
 
typedef LPDIRECTSOUNDCAPTURELPLPDIRECTSOUNDCAPTURE
 
typedef LPDIRECTSOUNDCAPTUREBUFFERLPLPDIRECTSOUNDCAPTUREBUFFER
 
typedef LPDIRECTSOUNDNOTIFYLPLPDIRECTSOUNDNOTIFY
 
typedef LPVOIDLPLPVOID
 
typedef const WAVEFORMATEX * LPCWAVEFORMATEX
 
typedef BOOL(CALLBACK * LPDSENUMCALLBACKW) (LPGUID, LPCWSTR, LPCWSTR, LPVOID)
 
typedef BOOL(CALLBACK * LPDSENUMCALLBACKA) (LPGUID, LPCSTR, LPCSTR, LPVOID)
 
typedef struct IKsPropertySet * LPKSPROPERTYSET
 

Functions

 DEFINE_GUID (CLSID_DirectSound, 0x47d4d946, 0x62e8, 0x11cf, 0x93, 0xbc, 0x44, 0x45, 0x53, 0x54, 0x0, 0x0)
 Direct Sound Component GUID {47D4D946-62E8-11cf-93BC-444553540000}. More...
 
 DEFINE_GUID (CLSID_DirectSoundCapture, 0xb0210780, 0x89cd, 0x11d0, 0xaf, 0x8, 0x0, 0xa0, 0xc9, 0x25, 0xcd, 0x16)
 DirectSound Capture Component GUID {B0210780-89CD-11d0-AF08-00A0C925CD16}. More...
 
HRESULT WINAPI DirectSoundCreate (LPGUID, LPDIRECTSOUND *, LPUNKNOWN)
 
HRESULT WINAPI DirectSoundEnumerateW (LPDSENUMCALLBACKW, LPVOID)
 
HRESULT WINAPI DirectSoundEnumerateA (LPDSENUMCALLBACKA, LPVOID)
 
HRESULT WINAPI DirectSoundCaptureCreate (LPGUID, LPDIRECTSOUNDCAPTURE *, LPUNKNOWN)
 
HRESULT WINAPI DirectSoundCaptureEnumerateW (LPDSENUMCALLBACKW, LPVOID)
 
HRESULT WINAPI DirectSoundCaptureEnumerateA (LPDSENUMCALLBACKA, LPVOID)
 
 DEFINE_GUID (IID_IDirectSound, 0x279AFA83, 0x4981, 0x11CE, 0xA5, 0x21, 0x00, 0x20, 0xAF, 0x0B, 0xE5, 0x60)
 
 DECLARE_INTERFACE_ (IDirectSound, IUnknown)
 
 DEFINE_GUID (IID_IDirectSoundBuffer, 0x279AFA85, 0x4981, 0x11CE, 0xA5, 0x21, 0x00, 0x20, 0xAF, 0x0B, 0xE5, 0x60)
 
 DECLARE_INTERFACE_ (IDirectSoundBuffer, IUnknown)
 
 DEFINE_GUID (IID_IDirectSound3DListener, 0x279AFA84, 0x4981, 0x11CE, 0xA5, 0x21, 0x00, 0x20, 0xAF, 0x0B, 0xE5, 0x60)
 
 DECLARE_INTERFACE_ (IDirectSound3DListener, IUnknown)
 
 DEFINE_GUID (IID_IDirectSound3DBuffer, 0x279AFA86, 0x4981, 0x11CE, 0xA5, 0x21, 0x00, 0x20, 0xAF, 0x0B, 0xE5, 0x60)
 
 DECLARE_INTERFACE_ (IDirectSound3DBuffer, IUnknown)
 
 DEFINE_GUID (IID_IDirectSoundCapture, 0xb0210781, 0x89cd, 0x11d0, 0xaf, 0x8, 0x0, 0xa0, 0xc9, 0x25, 0xcd, 0x16)
 
 DECLARE_INTERFACE_ (IDirectSoundCapture, IUnknown)
 
 DEFINE_GUID (IID_IDirectSoundCaptureBuffer, 0xb0210782, 0x89cd, 0x11d0, 0xaf, 0x8, 0x0, 0xa0, 0xc9, 0x25, 0xcd, 0x16)
 
 DECLARE_INTERFACE_ (IDirectSoundCaptureBuffer, IUnknown)
 
 DEFINE_GUID (IID_IDirectSoundNotify, 0xb0210783, 0x89cd, 0x11d0, 0xaf, 0x8, 0x0, 0xa0, 0xc9, 0x25, 0xcd, 0x16)
 
 DECLARE_INTERFACE_ (IDirectSoundNotify, IUnknown)
 
 DEFINE_GUID (IID_IKsPropertySet, 0x31efac30, 0x515c, 0x11d0, 0xa9, 0xaa, 0x00, 0xaa, 0x00, 0x61, 0xbe, 0x93)
 
 DECLARE_INTERFACE_ (IKsPropertySet, IUnknown)
 

Macro Definition Documentation

◆ _FACDS

#define _FACDS   0x878

◆ _IKsPropertySet_

#define _IKsPropertySet_

◆ COM_NO_WINDOWS_H

#define COM_NO_WINDOWS_H

◆ DirectSoundCaptureEnumerate

#define DirectSoundCaptureEnumerate   DirectSoundCaptureEnumerateA

◆ DirectSoundEnumerate

#define DirectSoundEnumerate   DirectSoundEnumerateA

◆ DS3D_DEFAULTCONEANGLE

#define DS3D_DEFAULTCONEANGLE   360

◆ DS3D_DEFAULTCONEOUTSIDEVOLUME

#define DS3D_DEFAULTCONEOUTSIDEVOLUME   0

◆ DS3D_DEFAULTDISTANCEFACTOR

#define DS3D_DEFAULTDISTANCEFACTOR   1.0f

◆ DS3D_DEFAULTDOPPLERFACTOR

#define DS3D_DEFAULTDOPPLERFACTOR   1.0f

◆ DS3D_DEFAULTMAXDISTANCE

#define DS3D_DEFAULTMAXDISTANCE   1000000000.0f

◆ DS3D_DEFAULTMINDISTANCE

#define DS3D_DEFAULTMINDISTANCE   1.0f

◆ DS3D_DEFAULTROLLOFFFACTOR

#define DS3D_DEFAULTROLLOFFFACTOR   1.0f

◆ DS3D_DEFERRED

#define DS3D_DEFERRED   0x00000001

◆ DS3D_IMMEDIATE

#define DS3D_IMMEDIATE   0x00000000

◆ DS3D_MAXCONEANGLE

#define DS3D_MAXCONEANGLE   360

◆ DS3D_MAXDISTANCEFACTOR

#define DS3D_MAXDISTANCEFACTOR   10.0f

◆ DS3D_MAXDOPPLERFACTOR

#define DS3D_MAXDOPPLERFACTOR   10.0f

◆ DS3D_MAXROLLOFFFACTOR

#define DS3D_MAXROLLOFFFACTOR   10.0f

◆ DS3D_MINCONEANGLE

#define DS3D_MINCONEANGLE   0

◆ DS3D_MINDISTANCEFACTOR

#define DS3D_MINDISTANCEFACTOR   0.0f

◆ DS3D_MINDOPPLERFACTOR

#define DS3D_MINDOPPLERFACTOR   0.0f

◆ DS3D_MINROLLOFFFACTOR

#define DS3D_MINROLLOFFFACTOR   0.0f

◆ DS3DMODE_DISABLE

#define DS3DMODE_DISABLE   0x00000002

◆ DS3DMODE_HEADRELATIVE

#define DS3DMODE_HEADRELATIVE   0x00000001

◆ DS3DMODE_NORMAL

#define DS3DMODE_NORMAL   0x00000000

◆ DS_OK

#define DS_OK   0

◆ DSBCAPS_CTRL3D

#define DSBCAPS_CTRL3D   0x00000010

◆ DSBCAPS_CTRLALL

#define DSBCAPS_CTRLALL   0x000001F0

◆ DSBCAPS_CTRLDEFAULT

#define DSBCAPS_CTRLDEFAULT   0x000000E0

◆ DSBCAPS_CTRLFREQUENCY

#define DSBCAPS_CTRLFREQUENCY   0x00000020

◆ DSBCAPS_CTRLPAN

#define DSBCAPS_CTRLPAN   0x00000040

◆ DSBCAPS_CTRLPOSITIONNOTIFY

#define DSBCAPS_CTRLPOSITIONNOTIFY   0x00000100

◆ DSBCAPS_CTRLVOLUME

#define DSBCAPS_CTRLVOLUME   0x00000080

◆ DSBCAPS_GETCURRENTPOSITION2

#define DSBCAPS_GETCURRENTPOSITION2   0x00010000

◆ DSBCAPS_GLOBALFOCUS

#define DSBCAPS_GLOBALFOCUS   0x00008000

◆ DSBCAPS_LOCHARDWARE

#define DSBCAPS_LOCHARDWARE   0x00000004

◆ DSBCAPS_LOCSOFTWARE

#define DSBCAPS_LOCSOFTWARE   0x00000008

◆ DSBCAPS_MUTE3DATMAXDISTANCE

#define DSBCAPS_MUTE3DATMAXDISTANCE   0x00020000

◆ DSBCAPS_PRIMARYBUFFER

#define DSBCAPS_PRIMARYBUFFER   0x00000001

◆ DSBCAPS_STATIC

#define DSBCAPS_STATIC   0x00000002

◆ DSBCAPS_STICKYFOCUS

#define DSBCAPS_STICKYFOCUS   0x00004000

◆ DSBFREQUENCY_MAX

#define DSBFREQUENCY_MAX   100000

◆ DSBFREQUENCY_MIN

#define DSBFREQUENCY_MIN   100

◆ DSBFREQUENCY_ORIGINAL

#define DSBFREQUENCY_ORIGINAL   0

◆ DSBLOCK_ENTIREBUFFER

#define DSBLOCK_ENTIREBUFFER   0x00000002

◆ DSBLOCK_FROMWRITECURSOR

#define DSBLOCK_FROMWRITECURSOR   0x00000001

◆ DSBPAN_CENTER

#define DSBPAN_CENTER   0

◆ DSBPAN_LEFT

#define DSBPAN_LEFT   -10000

◆ DSBPAN_RIGHT

#define DSBPAN_RIGHT   10000

◆ DSBPLAY_LOOPING

#define DSBPLAY_LOOPING   0x00000001

◆ DSBPN_OFFSETSTOP

#define DSBPN_OFFSETSTOP   0xFFFFFFFF

◆ DSBSIZE_MAX

#define DSBSIZE_MAX   0x0FFFFFFF

◆ DSBSIZE_MIN

#define DSBSIZE_MIN   4

◆ DSBSTATUS_BUFFERLOST

#define DSBSTATUS_BUFFERLOST   0x00000002

◆ DSBSTATUS_LOOPING

#define DSBSTATUS_LOOPING   0x00000004

◆ DSBSTATUS_PLAYING

#define DSBSTATUS_PLAYING   0x00000001

◆ DSBVOLUME_MAX

#define DSBVOLUME_MAX   0

◆ DSBVOLUME_MIN

#define DSBVOLUME_MIN   -10000

◆ DSCAPS_CERTIFIED

#define DSCAPS_CERTIFIED   0x00000040

◆ DSCAPS_CONTINUOUSRATE

#define DSCAPS_CONTINUOUSRATE   0x00000010

◆ DSCAPS_EMULDRIVER

#define DSCAPS_EMULDRIVER   0x00000020

◆ DSCAPS_PRIMARY16BIT

#define DSCAPS_PRIMARY16BIT   0x00000008

◆ DSCAPS_PRIMARY8BIT

#define DSCAPS_PRIMARY8BIT   0x00000004

◆ DSCAPS_PRIMARYMONO

#define DSCAPS_PRIMARYMONO   0x00000001

◆ DSCAPS_PRIMARYSTEREO

#define DSCAPS_PRIMARYSTEREO   0x00000002

◆ DSCAPS_SECONDARY16BIT

#define DSCAPS_SECONDARY16BIT   0x00000800

◆ DSCAPS_SECONDARY8BIT

#define DSCAPS_SECONDARY8BIT   0x00000400

◆ DSCAPS_SECONDARYMONO

#define DSCAPS_SECONDARYMONO   0x00000100

◆ DSCAPS_SECONDARYSTEREO

#define DSCAPS_SECONDARYSTEREO   0x00000200

◆ DSCBCAPS_WAVEMAPPED

#define DSCBCAPS_WAVEMAPPED   0x80000000

◆ DSCBLOCK_ENTIREBUFFER

#define DSCBLOCK_ENTIREBUFFER   0x00000001

◆ DSCBSTART_LOOPING

#define DSCBSTART_LOOPING   0x00000001

◆ DSCBSTATUS_CAPTURING

#define DSCBSTATUS_CAPTURING   0x00000001

◆ DSCBSTATUS_LOOPING

#define DSCBSTATUS_LOOPING   0x00000002

◆ DSCCAPS_EMULDRIVER

#define DSCCAPS_EMULDRIVER   0x00000020

◆ DSERR_ALLOCATED

#define DSERR_ALLOCATED   MAKE_DSHRESULT(10)

The call failed because resources (such as a priority level) were already being used by another caller.

◆ DSERR_ALREADYINITIALIZED

#define DSERR_ALREADYINITIALIZED   MAKE_DSHRESULT(130)

This object is already initialized.

◆ DSERR_BADFORMAT

#define DSERR_BADFORMAT   MAKE_DSHRESULT(100)

The specified WAVE format is not supported.

◆ DSERR_BUFFERLOST

#define DSERR_BUFFERLOST   MAKE_DSHRESULT(150)

The buffer memory has been lost, and must be restored.

◆ DSERR_CONTROLUNAVAIL

#define DSERR_CONTROLUNAVAIL   MAKE_DSHRESULT(30)

The control (vol,pan,etc.) requested by the caller is not available.

◆ DSERR_GENERIC

#define DSERR_GENERIC   E_FAIL

An undetermined error occured inside the DirectSound subsystem.

◆ DSERR_INVALIDCALL

#define DSERR_INVALIDCALL   MAKE_DSHRESULT(50)

This call is not valid for the current state of this object.

◆ DSERR_INVALIDPARAM

#define DSERR_INVALIDPARAM   E_INVALIDARG

An invalid parameter was passed to the returning function.

◆ DSERR_NOAGGREGATION

#define DSERR_NOAGGREGATION   CLASS_E_NOAGGREGATION

This object does not support aggregation.

◆ DSERR_NODRIVER

#define DSERR_NODRIVER   MAKE_DSHRESULT(120)

No sound driver is available for use.

◆ DSERR_NOINTERFACE

#define DSERR_NOINTERFACE   E_NOINTERFACE

The requested COM interface is not available.

◆ DSERR_OTHERAPPHASPRIO

#define DSERR_OTHERAPPHASPRIO   MAKE_DSHRESULT(160)

Another app has a higher priority level, preventing this call from succeeding.

◆ DSERR_OUTOFMEMORY

#define DSERR_OUTOFMEMORY   E_OUTOFMEMORY

Not enough free memory is available to complete the operation.

◆ DSERR_PRIOLEVELNEEDED

#define DSERR_PRIOLEVELNEEDED   MAKE_DSHRESULT(70)

The caller does not have the priority level required for the function to succeed.

◆ DSERR_UNINITIALIZED

#define DSERR_UNINITIALIZED   MAKE_DSHRESULT(170)

This object has not been initialized.

◆ DSERR_UNSUPPORTED

#define DSERR_UNSUPPORTED   E_NOTIMPL

The function called is not supported at this time.

◆ DSSCL_EXCLUSIVE

#define DSSCL_EXCLUSIVE   0x00000003

◆ DSSCL_NORMAL

#define DSSCL_NORMAL   0x00000001

◆ DSSCL_PRIORITY

#define DSSCL_PRIORITY   0x00000002

◆ DSSCL_WRITEPRIMARY

#define DSSCL_WRITEPRIMARY   0x00000004

◆ DSSPEAKER_COMBINED

#define DSSPEAKER_COMBINED (   c,
 
)    ((DWORD)(((BYTE)(c)) | ((DWORD)((BYTE)(g))) << 16))

◆ DSSPEAKER_CONFIG

#define DSSPEAKER_CONFIG (   a)    ((BYTE)(a))

◆ DSSPEAKER_GEOMETRY

#define DSSPEAKER_GEOMETRY (   a)    ((BYTE)(((DWORD)(a) >> 16) & 0x00FF))

◆ DSSPEAKER_GEOMETRY_MAX

#define DSSPEAKER_GEOMETRY_MAX   0x000000B4

◆ DSSPEAKER_GEOMETRY_MIN

#define DSSPEAKER_GEOMETRY_MIN   0x00000005

◆ DSSPEAKER_GEOMETRY_NARROW

#define DSSPEAKER_GEOMETRY_NARROW   0x0000000A

◆ DSSPEAKER_GEOMETRY_WIDE

#define DSSPEAKER_GEOMETRY_WIDE   0x00000014

◆ DSSPEAKER_HEADPHONE

#define DSSPEAKER_HEADPHONE   0x00000001

◆ DSSPEAKER_MONO

#define DSSPEAKER_MONO   0x00000002

◆ DSSPEAKER_QUAD

#define DSSPEAKER_QUAD   0x00000003

◆ DSSPEAKER_STEREO

#define DSSPEAKER_STEREO   0x00000004

◆ DSSPEAKER_SURROUND

#define DSSPEAKER_SURROUND   0x00000005

◆ IDirectSound3DBuffer_AddRef

#define IDirectSound3DBuffer_AddRef (   p)    (p)->lpVtbl->AddRef(p)

◆ IDirectSound3DBuffer_GetAllParameters

#define IDirectSound3DBuffer_GetAllParameters (   p,
 
)    (p)->lpVtbl->GetAllParameters(p,a)

◆ IDirectSound3DBuffer_GetConeAngles

#define IDirectSound3DBuffer_GetConeAngles (   p,
  a,
 
)    (p)->lpVtbl->GetConeAngles(p,a,b)

◆ IDirectSound3DBuffer_GetConeOrientation

#define IDirectSound3DBuffer_GetConeOrientation (   p,
 
)    (p)->lpVtbl->GetConeOrientation(p,a)

◆ IDirectSound3DBuffer_GetConeOutsideVolume

#define IDirectSound3DBuffer_GetConeOutsideVolume (   p,
 
)    (p)->lpVtbl->GetConeOutsideVolume(p,a)

◆ IDirectSound3DBuffer_GetMaxDistance

#define IDirectSound3DBuffer_GetMaxDistance (   p,
 
)    (p)->lpVtbl->GetMaxDistance(p,a)

◆ IDirectSound3DBuffer_GetMinDistance

#define IDirectSound3DBuffer_GetMinDistance (   p,
 
)    (p)->lpVtbl->GetMinDistance(p,a)

◆ IDirectSound3DBuffer_GetMode

#define IDirectSound3DBuffer_GetMode (   p,
 
)    (p)->lpVtbl->GetMode(p,a)

◆ IDirectSound3DBuffer_GetPosition

#define IDirectSound3DBuffer_GetPosition (   p,
 
)    (p)->lpVtbl->GetPosition(p,a)

◆ IDirectSound3DBuffer_GetVelocity

#define IDirectSound3DBuffer_GetVelocity (   p,
 
)    (p)->lpVtbl->GetVelocity(p,a)

◆ IDirectSound3DBuffer_QueryInterface

#define IDirectSound3DBuffer_QueryInterface (   p,
  a,
 
)    (p)->lpVtbl->QueryInterface(p,a,b)

◆ IDirectSound3DBuffer_Release

#define IDirectSound3DBuffer_Release (   p)    (p)->lpVtbl->Release(p)

◆ IDirectSound3DBuffer_SetAllParameters

#define IDirectSound3DBuffer_SetAllParameters (   p,
  a,
 
)    (p)->lpVtbl->SetAllParameters(p,a,b)

◆ IDirectSound3DBuffer_SetConeAngles

#define IDirectSound3DBuffer_SetConeAngles (   p,
  a,
  b,
 
)    (p)->lpVtbl->SetConeAngles(p,a,b,c)

◆ IDirectSound3DBuffer_SetConeOrientation

#define IDirectSound3DBuffer_SetConeOrientation (   p,
  a,
  b,
  c,
 
)    (p)->lpVtbl->SetConeOrientation(p,a,b,c,d)

◆ IDirectSound3DBuffer_SetConeOutsideVolume

#define IDirectSound3DBuffer_SetConeOutsideVolume (   p,
  a,
 
)    (p)->lpVtbl->SetConeOutsideVolume(p,a,b)

◆ IDirectSound3DBuffer_SetMaxDistance

#define IDirectSound3DBuffer_SetMaxDistance (   p,
  a,
 
)    (p)->lpVtbl->SetMaxDistance(p,a,b)

◆ IDirectSound3DBuffer_SetMinDistance

#define IDirectSound3DBuffer_SetMinDistance (   p,
  a,
 
)    (p)->lpVtbl->SetMinDistance(p,a,b)

◆ IDirectSound3DBuffer_SetMode

#define IDirectSound3DBuffer_SetMode (   p,
  a,
 
)    (p)->lpVtbl->SetMode(p,a,b)

◆ IDirectSound3DBuffer_SetPosition

#define IDirectSound3DBuffer_SetPosition (   p,
  a,
  b,
  c,
 
)    (p)->lpVtbl->SetPosition(p,a,b,c,d)

◆ IDirectSound3DBuffer_SetVelocity

#define IDirectSound3DBuffer_SetVelocity (   p,
  a,
  b,
  c,
 
)    (p)->lpVtbl->SetVelocity(p,a,b,c,d)

◆ IDirectSound3DListener_AddRef

#define IDirectSound3DListener_AddRef (   p)    (p)->lpVtbl->AddRef(p)

◆ IDirectSound3DListener_CommitDeferredSettings

#define IDirectSound3DListener_CommitDeferredSettings (   p)    (p)->lpVtbl->CommitDeferredSettings(p)

◆ IDirectSound3DListener_GetAllParameters

#define IDirectSound3DListener_GetAllParameters (   p,
 
)    (p)->lpVtbl->GetAllParameters(p,a)

◆ IDirectSound3DListener_GetDistanceFactor

#define IDirectSound3DListener_GetDistanceFactor (   p,
 
)    (p)->lpVtbl->GetDistanceFactor(p,a)

◆ IDirectSound3DListener_GetDopplerFactor

#define IDirectSound3DListener_GetDopplerFactor (   p,
 
)    (p)->lpVtbl->GetDopplerFactor(p,a)

◆ IDirectSound3DListener_GetOrientation

#define IDirectSound3DListener_GetOrientation (   p,
  a,
 
)    (p)->lpVtbl->GetOrientation(p,a,b)

◆ IDirectSound3DListener_GetPosition

#define IDirectSound3DListener_GetPosition (   p,
 
)    (p)->lpVtbl->GetPosition(p,a)

◆ IDirectSound3DListener_GetRolloffFactor

#define IDirectSound3DListener_GetRolloffFactor (   p,
 
)    (p)->lpVtbl->GetRolloffFactor(p,a)

◆ IDirectSound3DListener_GetVelocity

#define IDirectSound3DListener_GetVelocity (   p,
 
)    (p)->lpVtbl->GetVelocity(p,a)

◆ IDirectSound3DListener_QueryInterface

#define IDirectSound3DListener_QueryInterface (   p,
  a,
 
)    (p)->lpVtbl->QueryInterface(p,a,b)

◆ IDirectSound3DListener_Release

#define IDirectSound3DListener_Release (   p)    (p)->lpVtbl->Release(p)

◆ IDirectSound3DListener_SetAllParameters

#define IDirectSound3DListener_SetAllParameters (   p,
  a,
 
)    (p)->lpVtbl->SetAllParameters(p,a,b)

◆ IDirectSound3DListener_SetDistanceFactor

#define IDirectSound3DListener_SetDistanceFactor (   p,
  a,
 
)    (p)->lpVtbl->SetDistanceFactor(p,a,b)

◆ IDirectSound3DListener_SetDopplerFactor

#define IDirectSound3DListener_SetDopplerFactor (   p,
  a,
 
)    (p)->lpVtbl->SetDopplerFactor(p,a,b)

◆ IDirectSound3DListener_SetOrientation

#define IDirectSound3DListener_SetOrientation (   p,
  a,
  b,
  c,
  d,
  e,
  f,
 
)    (p)->lpVtbl->SetOrientation(p,a,b,c,d,e,f,g)

◆ IDirectSound3DListener_SetPosition

#define IDirectSound3DListener_SetPosition (   p,
  a,
  b,
  c,
 
)    (p)->lpVtbl->SetPosition(p,a,b,c,d)

◆ IDirectSound3DListener_SetRolloffFactor

#define IDirectSound3DListener_SetRolloffFactor (   p,
  a,
 
)    (p)->lpVtbl->SetRolloffFactor(p,a,b)

◆ IDirectSound3DListener_SetVelocity

#define IDirectSound3DListener_SetVelocity (   p,
  a,
  b,
  c,
 
)    (p)->lpVtbl->SetVelocity(p,a,b,c,d)

◆ IDirectSound_AddRef

#define IDirectSound_AddRef (   p)    (p)->lpVtbl->AddRef(p)

◆ IDirectSound_Compact

#define IDirectSound_Compact (   p)    (p)->lpVtbl->Compact(p)

◆ IDirectSound_CreateSoundBuffer

#define IDirectSound_CreateSoundBuffer (   p,
  a,
  b,
 
)    (p)->lpVtbl->CreateSoundBuffer(p,a,b,c)

◆ IDirectSound_DuplicateSoundBuffer

#define IDirectSound_DuplicateSoundBuffer (   p,
  a,
 
)    (p)->lpVtbl->DuplicateSoundBuffer(p,a,b)

◆ IDirectSound_GetCaps

#define IDirectSound_GetCaps (   p,
 
)    (p)->lpVtbl->GetCaps(p,a)

◆ IDirectSound_GetSpeakerConfig

#define IDirectSound_GetSpeakerConfig (   p,
 
)    (p)->lpVtbl->GetSpeakerConfig(p,a)

◆ IDirectSound_Initialize

#define IDirectSound_Initialize (   p,
 
)    (p)->lpVtbl->Initialize(p,a)

◆ IDirectSound_QueryInterface

#define IDirectSound_QueryInterface (   p,
  a,
 
)    (p)->lpVtbl->QueryInterface(p,a,b)

◆ IDirectSound_Release

#define IDirectSound_Release (   p)    (p)->lpVtbl->Release(p)

◆ IDirectSound_SetCooperativeLevel

#define IDirectSound_SetCooperativeLevel (   p,
  a,
 
)    (p)->lpVtbl->SetCooperativeLevel(p,a,b)

◆ IDirectSound_SetSpeakerConfig

#define IDirectSound_SetSpeakerConfig (   p,
 
)    (p)->lpVtbl->SetSpeakerConfig(p,b)

◆ IDirectSoundBuffer_AddRef

#define IDirectSoundBuffer_AddRef (   p)    (p)->lpVtbl->AddRef(p)

◆ IDirectSoundBuffer_GetCaps

#define IDirectSoundBuffer_GetCaps (   p,
 
)    (p)->lpVtbl->GetCaps(p,a)

◆ IDirectSoundBuffer_GetCurrentPosition

#define IDirectSoundBuffer_GetCurrentPosition (   p,
  a,
 
)    (p)->lpVtbl->GetCurrentPosition(p,a,b)

◆ IDirectSoundBuffer_GetFormat

#define IDirectSoundBuffer_GetFormat (   p,
  a,
  b,
 
)    (p)->lpVtbl->GetFormat(p,a,b,c)

◆ IDirectSoundBuffer_GetFrequency

#define IDirectSoundBuffer_GetFrequency (   p,
 
)    (p)->lpVtbl->GetFrequency(p,a)

◆ IDirectSoundBuffer_GetPan

#define IDirectSoundBuffer_GetPan (   p,
 
)    (p)->lpVtbl->GetPan(p,a)

◆ IDirectSoundBuffer_GetStatus

#define IDirectSoundBuffer_GetStatus (   p,
 
)    (p)->lpVtbl->GetStatus(p,a)

◆ IDirectSoundBuffer_GetVolume

#define IDirectSoundBuffer_GetVolume (   p,
 
)    (p)->lpVtbl->GetVolume(p,a)

◆ IDirectSoundBuffer_Initialize

#define IDirectSoundBuffer_Initialize (   p,
  a,
 
)    (p)->lpVtbl->Initialize(p,a,b)

◆ IDirectSoundBuffer_Lock

#define IDirectSoundBuffer_Lock (   p,
  a,
  b,
  c,
  d,
  e,
  f,
 
)    (p)->lpVtbl->Lock(p,a,b,c,d,e,f,g)

◆ IDirectSoundBuffer_Play

#define IDirectSoundBuffer_Play (   p,
  a,
  b,
 
)    (p)->lpVtbl->Play(p,a,b,c)

◆ IDirectSoundBuffer_QueryInterface

#define IDirectSoundBuffer_QueryInterface (   p,
  a,
 
)    (p)->lpVtbl->QueryInterface(p,a,b)

◆ IDirectSoundBuffer_Release

#define IDirectSoundBuffer_Release (   p)    (p)->lpVtbl->Release(p)

◆ IDirectSoundBuffer_Restore

#define IDirectSoundBuffer_Restore (   p)    (p)->lpVtbl->Restore(p)

◆ IDirectSoundBuffer_SetCurrentPosition

#define IDirectSoundBuffer_SetCurrentPosition (   p,
 
)    (p)->lpVtbl->SetCurrentPosition(p,a)

◆ IDirectSoundBuffer_SetFormat

#define IDirectSoundBuffer_SetFormat (   p,
 
)    (p)->lpVtbl->SetFormat(p,a)

◆ IDirectSoundBuffer_SetFrequency

#define IDirectSoundBuffer_SetFrequency (   p,
 
)    (p)->lpVtbl->SetFrequency(p,a)

◆ IDirectSoundBuffer_SetPan

#define IDirectSoundBuffer_SetPan (   p,
 
)    (p)->lpVtbl->SetPan(p,a)

◆ IDirectSoundBuffer_SetVolume

#define IDirectSoundBuffer_SetVolume (   p,
 
)    (p)->lpVtbl->SetVolume(p,a)

◆ IDirectSoundBuffer_Stop

#define IDirectSoundBuffer_Stop (   p)    (p)->lpVtbl->Stop(p)

◆ IDirectSoundBuffer_Unlock

#define IDirectSoundBuffer_Unlock (   p,
  a,
  b,
  c,
 
)    (p)->lpVtbl->Unlock(p,a,b,c,d)

◆ IDirectSoundCapture_AddRef

#define IDirectSoundCapture_AddRef (   p)    (p)->lpVtbl->AddRef(p)

◆ IDirectSoundCapture_CreateCaptureBuffer

#define IDirectSoundCapture_CreateCaptureBuffer (   p,
  a,
  b,
 
)    (p)->lpVtbl->CreateCaptureBuffer(p,a,b,c)

◆ IDirectSoundCapture_GetCaps

#define IDirectSoundCapture_GetCaps (   p,
 
)    (p)->lpVtbl->GetCaps(p,a)

◆ IDirectSoundCapture_Initialize

#define IDirectSoundCapture_Initialize (   p,
 
)    (p)->lpVtbl->Initialize(p,a)

◆ IDirectSoundCapture_QueryInterface

#define IDirectSoundCapture_QueryInterface (   p,
  a,
 
)    (p)->lpVtbl->QueryInterface(p,a,b)

◆ IDirectSoundCapture_Release

#define IDirectSoundCapture_Release (   p)    (p)->lpVtbl->Release(p)

◆ IDirectSoundCaptureBuffer_AddRef

#define IDirectSoundCaptureBuffer_AddRef (   p)    (p)->lpVtbl->AddRef(p)

◆ IDirectSoundCaptureBuffer_GetCaps

#define IDirectSoundCaptureBuffer_GetCaps (   p,
 
)    (p)->lpVtbl->GetCaps(p,a)

◆ IDirectSoundCaptureBuffer_GetCurrentPosition

#define IDirectSoundCaptureBuffer_GetCurrentPosition (   p,
  a,
 
)    (p)->lpVtbl->GetCurrentPosition(p,a,b)

◆ IDirectSoundCaptureBuffer_GetFormat

#define IDirectSoundCaptureBuffer_GetFormat (   p,
  a,
  b,
 
)    (p)->lpVtbl->GetFormat(p,a,b,c)

◆ IDirectSoundCaptureBuffer_GetStatus

#define IDirectSoundCaptureBuffer_GetStatus (   p,
 
)    (p)->lpVtbl->GetStatus(p,a)

◆ IDirectSoundCaptureBuffer_Initialize

#define IDirectSoundCaptureBuffer_Initialize (   p,
  a,
 
)    (p)->lpVtbl->Initialize(p,a,b)

◆ IDirectSoundCaptureBuffer_Lock

#define IDirectSoundCaptureBuffer_Lock (   p,
  a,
  b,
  c,
  d,
  e,
  f,
 
)    (p)->lpVtbl->Lock(p,a,b,c,d,e,f,g)

◆ IDirectSoundCaptureBuffer_QueryInterface

#define IDirectSoundCaptureBuffer_QueryInterface (   p,
  a,
 
)    (p)->lpVtbl->QueryInterface(p,a,b)

◆ IDirectSoundCaptureBuffer_Release

#define IDirectSoundCaptureBuffer_Release (   p)    (p)->lpVtbl->Release(p)

◆ IDirectSoundCaptureBuffer_Start

#define IDirectSoundCaptureBuffer_Start (   p,
 
)    (p)->lpVtbl->Start(p,a)

◆ IDirectSoundCaptureBuffer_Stop

#define IDirectSoundCaptureBuffer_Stop (   p)    (p)->lpVtbl->Stop(p)

◆ IDirectSoundCaptureBuffer_Unlock

#define IDirectSoundCaptureBuffer_Unlock (   p,
  a,
  b,
  c,
 
)    (p)->lpVtbl->Unlock(p,a,b,c,d)

◆ IDirectSoundNotify_AddRef

#define IDirectSoundNotify_AddRef (   p)    (p)->lpVtbl->AddRef(p)

◆ IDirectSoundNotify_QueryInterface

#define IDirectSoundNotify_QueryInterface (   p,
  a,
 
)    (p)->lpVtbl->QueryInterface(p,a,b)

◆ IDirectSoundNotify_Release

#define IDirectSoundNotify_Release (   p)    (p)->lpVtbl->Release(p)

◆ IDirectSoundNotify_SetNotificationPositions

#define IDirectSoundNotify_SetNotificationPositions (   p,
  a,
 
)    (p)->lpVtbl->SetNotificationPositions(p,a,b)

◆ IKsPropertySet_AddRef

#define IKsPropertySet_AddRef (   p)    (p)->lpVtbl->AddRef(p)

◆ IKsPropertySet_Get

#define IKsPropertySet_Get (   p,
  a,
  b,
  c,
  d,
  e,
  f,
 
)    (p)->lpVtbl->Get(p,a,b,c,d,e,f,g)

◆ IKsPropertySet_QueryInterface

#define IKsPropertySet_QueryInterface (   p,
  a,
 
)    (p)->lpVtbl->QueryInterface(p,a,b)

◆ IKsPropertySet_QuerySupport

#define IKsPropertySet_QuerySupport (   p,
  a,
  b,
 
)    (p)->lpVtbl->QuerySupport(p,a,b,c)

◆ IKsPropertySet_Release

#define IKsPropertySet_Release (   p)    (p)->lpVtbl->Release(p)

◆ IKsPropertySet_Set

#define IKsPropertySet_Set (   p,
  a,
  b,
  c,
  d,
  e,
 
)    (p)->lpVtbl->Set(p,a,b,c,d,e,f)

◆ INTERFACE [1/8]

#define INTERFACE   IDirectSound

◆ INTERFACE [2/8]

#define INTERFACE   IDirectSoundBuffer

◆ INTERFACE [3/8]

#define INTERFACE   IDirectSound3DListener

◆ INTERFACE [4/8]

#define INTERFACE   IDirectSound3DBuffer

◆ INTERFACE [5/8]

#define INTERFACE   IDirectSoundCapture

◆ INTERFACE [6/8]

#define INTERFACE   IDirectSoundCaptureBuffer

◆ INTERFACE [7/8]

#define INTERFACE   IDirectSoundNotify

◆ INTERFACE [8/8]

#define INTERFACE   IKsPropertySet

◆ KSPROPERTY_SUPPORT_GET

#define KSPROPERTY_SUPPORT_GET   0x00000001

◆ KSPROPERTY_SUPPORT_SET

#define KSPROPERTY_SUPPORT_SET   0x00000002

◆ LPDSENUMCALLBACK

#define LPDSENUMCALLBACK   LPDSENUMCALLBACKA

◆ MAKE_DSHRESULT

#define MAKE_DSHRESULT (   code)    MAKE_HRESULT(1, _FACDS, code)

Typedef Documentation

◆ DS3DBUFFER

typedef struct _DS3DBUFFER DS3DBUFFER

◆ DS3DLISTENER

typedef struct _DS3DLISTENER DS3DLISTENER

◆ DSBCAPS

typedef struct _DSBCAPS DSBCAPS

◆ DSBPOSITIONNOTIFY

◆ DSBUFFERDESC

typedef struct _DSBUFFERDESC DSBUFFERDESC

◆ DSCAPS

typedef struct _DSCAPS DSCAPS

◆ DSCBCAPS

typedef struct _DSCBCAPS DSCBCAPS

◆ DSCBUFFERDESC

typedef struct _DSCBUFFERDESC DSCBUFFERDESC

◆ DSCCAPS

typedef struct _DSCCAPS DSCCAPS

◆ LPCDS3DBUFFER

typedef const DS3DBUFFER* LPCDS3DBUFFER

◆ LPCDS3DLISTENER

typedef const DS3DLISTENER* LPCDS3DLISTENER

◆ LPCDSBCAPS

typedef const DSBCAPS* LPCDSBCAPS

◆ LPCDSBPOSITIONNOTIFY

◆ LPCDSBUFFERDESC

typedef const DSBUFFERDESC* LPCDSBUFFERDESC

◆ LPCDSCAPS

typedef const DSCAPS* LPCDSCAPS

◆ LPCDSCBCAPS

typedef const DSCBCAPS* LPCDSCBCAPS

◆ LPCDSCBUFFERDESC

◆ LPCDSCCAPS

typedef const DSCCAPS* LPCDSCCAPS

◆ LPCWAVEFORMATEX

typedef const WAVEFORMATEX* LPCWAVEFORMATEX

◆ LPDIRECTSOUND

typedef struct IDirectSound* LPDIRECTSOUND

◆ LPDIRECTSOUND3DBUFFER

typedef struct IDirectSound3DBuffer* LPDIRECTSOUND3DBUFFER

◆ LPDIRECTSOUND3DLISTENER

typedef struct IDirectSound3DListener* LPDIRECTSOUND3DLISTENER

◆ LPDIRECTSOUNDBUFFER

typedef struct IDirectSoundBuffer* LPDIRECTSOUNDBUFFER

◆ LPDIRECTSOUNDCAPTURE

typedef struct IDirectSoundCapture* LPDIRECTSOUNDCAPTURE

◆ LPDIRECTSOUNDCAPTUREBUFFER

typedef struct IDirectSoundCaptureBuffer* LPDIRECTSOUNDCAPTUREBUFFER

◆ LPDIRECTSOUNDNOTIFY

typedef struct IDirectSoundNotify* LPDIRECTSOUNDNOTIFY

◆ LPDS3DBUFFER

typedef struct _DS3DBUFFER * LPDS3DBUFFER

◆ LPDS3DLISTENER

typedef struct _DS3DLISTENER * LPDS3DLISTENER

◆ LPDSBCAPS

typedef struct _DSBCAPS * LPDSBCAPS

◆ LPDSBPOSITIONNOTIFY

◆ LPDSBUFFERDESC

typedef struct _DSBUFFERDESC * LPDSBUFFERDESC

◆ LPDSCAPS

typedef struct _DSCAPS * LPDSCAPS

◆ LPDSCBCAPS

typedef struct _DSCBCAPS * LPDSCBCAPS

◆ LPDSCBUFFERDESC

typedef struct _DSCBUFFERDESC * LPDSCBUFFERDESC

◆ LPDSCCAPS

typedef struct _DSCCAPS * LPDSCCAPS

◆ LPDSENUMCALLBACKA

typedef BOOL(CALLBACK * LPDSENUMCALLBACKA) (LPGUID, LPCSTR, LPCSTR, LPVOID)

◆ LPDSENUMCALLBACKW

typedef BOOL(CALLBACK * LPDSENUMCALLBACKW) (LPGUID, LPCWSTR, LPCWSTR, LPVOID)

◆ LPKSPROPERTYSET

typedef struct IKsPropertySet* LPKSPROPERTYSET

◆ LPLPDIRECTSOUND

◆ LPLPDIRECTSOUND3DBUFFER

◆ LPLPDIRECTSOUND3DLISTENER

◆ LPLPDIRECTSOUNDBUFFER

◆ LPLPDIRECTSOUNDCAPTURE

◆ LPLPDIRECTSOUNDCAPTUREBUFFER

◆ LPLPDIRECTSOUNDNOTIFY

◆ LPLPVOID

typedef LPVOID* LPLPVOID

Function Documentation

◆ DECLARE_INTERFACE_() [1/8]

DECLARE_INTERFACE_ ( IDirectSound  ,
IUnknown   
)

References DWORD().

◆ DECLARE_INTERFACE_() [2/8]

DECLARE_INTERFACE_ ( IDirectSound3DBuffer  ,
IUnknown   
)

References DWORD().

◆ DECLARE_INTERFACE_() [3/8]

DECLARE_INTERFACE_ ( IDirectSound3DListener  ,
IUnknown   
)

References DWORD().

◆ DECLARE_INTERFACE_() [4/8]

DECLARE_INTERFACE_ ( IDirectSoundBuffer  ,
IUnknown   
)

References DWORD().

◆ DECLARE_INTERFACE_() [5/8]

DECLARE_INTERFACE_ ( IDirectSoundCapture  ,
IUnknown   
)

◆ DECLARE_INTERFACE_() [6/8]

DECLARE_INTERFACE_ ( IDirectSoundCaptureBuffer  ,
IUnknown   
)

References DWORD().

◆ DECLARE_INTERFACE_() [7/8]

DECLARE_INTERFACE_ ( IDirectSoundNotify  ,
IUnknown   
)

References DWORD().

◆ DECLARE_INTERFACE_() [8/8]

DECLARE_INTERFACE_ ( IKsPropertySet  ,
IUnknown   
)

◆ DEFINE_GUID() [1/10]

DEFINE_GUID ( CLSID_DirectSound  ,
0x47d4d946  ,
0x62e8  ,
0x11cf  ,
0x93  ,
0xbc  ,
0x44  ,
0x45  ,
0x53  ,
0x54  ,
0x0  ,
0x0   
)

Direct Sound Component GUID {47D4D946-62E8-11cf-93BC-444553540000}.

◆ DEFINE_GUID() [2/10]

DEFINE_GUID ( CLSID_DirectSoundCapture  ,
0xb0210780  ,
0x89cd  ,
0x11d0  ,
0xaf  ,
0x8  ,
0x0  ,
0xa0  ,
0xc9  ,
0x25  ,
0xcd  ,
0x16   
)

DirectSound Capture Component GUID {B0210780-89CD-11d0-AF08-00A0C925CD16}.

◆ DEFINE_GUID() [3/10]

DEFINE_GUID ( IID_IDirectSound  ,
0x279AFA83  ,
0x4981  ,
0x11CE  ,
0xA5  ,
0x21  ,
0x00  ,
0x20  ,
0xAF  ,
0x0B  ,
0xE5  ,
0x60   
)

◆ DEFINE_GUID() [4/10]

DEFINE_GUID ( IID_IDirectSound3DBuffer  ,
0x279AFA86  ,
0x4981  ,
0x11CE  ,
0xA5  ,
0x21  ,
0x00  ,
0x20  ,
0xAF  ,
0x0B  ,
0xE5  ,
0x60   
)

◆ DEFINE_GUID() [5/10]

DEFINE_GUID ( IID_IDirectSound3DListener  ,
0x279AFA84  ,
0x4981  ,
0x11CE  ,
0xA5  ,
0x21  ,
0x00  ,
0x20  ,
0xAF  ,
0x0B  ,
0xE5  ,
0x60   
)

◆ DEFINE_GUID() [6/10]

DEFINE_GUID ( IID_IDirectSoundBuffer  ,
0x279AFA85  ,
0x4981  ,
0x11CE  ,
0xA5  ,
0x21  ,
0x00  ,
0x20  ,
0xAF  ,
0x0B  ,
0xE5  ,
0x60   
)

◆ DEFINE_GUID() [7/10]

DEFINE_GUID ( IID_IDirectSoundCapture  ,
0xb0210781  ,
0x89cd  ,
0x11d0  ,
0xaf  ,
0x8  ,
0x0  ,
0xa0  ,
0xc9  ,
0x25  ,
0xcd  ,
0x16   
)

◆ DEFINE_GUID() [8/10]

DEFINE_GUID ( IID_IDirectSoundCaptureBuffer  ,
0xb0210782  ,
0x89cd  ,
0x11d0  ,
0xaf  ,
0x8  ,
0x0  ,
0xa0  ,
0xc9  ,
0x25  ,
0xcd  ,
0x16   
)

◆ DEFINE_GUID() [9/10]

DEFINE_GUID ( IID_IDirectSoundNotify  ,
0xb0210783  ,
0x89cd  ,
0x11d0  ,
0xaf  ,
0x8  ,
0x0  ,
0xa0  ,
0xc9  ,
0x25  ,
0xcd  ,
0x16   
)

◆ DEFINE_GUID() [10/10]

DEFINE_GUID ( IID_IKsPropertySet  ,
0x31efac30  ,
0x515c  ,
0x11d0  ,
0xa9  ,
0xaa  ,
0x00  ,
0xaa  ,
0x00  ,
0x61  ,
0xbe  ,
0x93   
)

◆ DirectSoundCaptureCreate()

HRESULT WINAPI DirectSoundCaptureCreate ( LPGUID  ,
LPDIRECTSOUNDCAPTURE ,
LPUNKNOWN   
)

◆ DirectSoundCaptureEnumerateA()

HRESULT WINAPI DirectSoundCaptureEnumerateA ( LPDSENUMCALLBACKA  ,
LPVOID   
)

◆ DirectSoundCaptureEnumerateW()

HRESULT WINAPI DirectSoundCaptureEnumerateW ( LPDSENUMCALLBACKW  ,
LPVOID   
)

◆ DirectSoundCreate()

HRESULT WINAPI DirectSoundCreate ( LPGUID  ,
LPDIRECTSOUND ,
LPUNKNOWN   
)

◆ DirectSoundEnumerateA()

HRESULT WINAPI DirectSoundEnumerateA ( LPDSENUMCALLBACKA  ,
LPVOID   
)

◆ DirectSoundEnumerateW()

HRESULT WINAPI DirectSoundEnumerateW ( LPDSENUMCALLBACKW  ,
LPVOID   
)