The IDirectSound::Compact method moves the unused portions of on-board sound memory, if any, to a contiguous block so that the largest portion of free memory will be available.
HRESULT Compact();
Parameters
None.
Return Values
If the method succeeds, the return value is DS_OK.
If the method fails, the return value may be one of the following error values:
DSERR_INVALIDPARAM 
DSERR_PRIOLEVELNEEDED 
DSERR_UNINITIALIZED 
Remarks
The application's DirectSound object must have at least the DSSCL_PRIORITY cooperative level. See IDirectSound::SetCooperativeLevel.
This method will fail if any operations are in progress.
QuickInfo
  Windows NT: Use version 4.0 or later.
  Windows: Use Windows 95 OSR2 or later. Available as a redistributable for Windows 95.
  Windows CE: Unsupported.
  Header: Declared in dsound.h.
  Import Library: Use dsound.lib.