Platform SDK: DirectX

DSCAPS

The DSCAPS type specifies the capabilities of a DirectSound device for use by the DirectSound.GetCaps method.

Type DSCAPS
    lFlags As CONST_DSCAPSFLAGS
    lFreeHw3DAllBuffers As Long
    lFreeHw3DStaticBuffers As Long
    lFreeHw3DStreamingBuffers As Long
    lFreeHwMemBytes As Long
    lFreeHwMixingAllBuffers As Long
    lFreeHwMixingStaticBuffers As Long
    lFreeHwMixingStreamingBuffers As Long
    lMaxContigFreeHwMemBytes As Long
    lMaxHw3DAllBuffers As Long
    lMaxHw3DStaticBuffers As Long
    lMaxHw3DStreamingBuffers As Long
    lMaxHwMixingAllBuffers As Long
    lMaxHwMixingStaticBuffers As Long
    lMaxHwMixingStreamingBuffers As Long
    lMaxSecondarySampleRate As Long
    lMinSecondarySampleRate As Long
    lPlayCpuOverheadSwBuffers As Long
    lPrimaryBuffers As Long
    lReserved1 As Long
    lReserved2 As Long
    lTotalHwMemBytes As Long
    lUnlockTransferRateHwBuffers As Long
End Type

Members

lFlags
Device capabilities. Can be one or more of the constants from the CONST_DSCAPSFLAGS enumeration.
lFreeHw3DAllBuffers, lFreeHw3DStaticBuffers, and lFreeHw3DStreamingBuffers
Description of the free, or unallocated, hardware 3-D positional capabilities of the device.
lFreeHwMemBytes
Size, in bytes, of the free memory on the sound card.
lFreeHwMixingAllBuffers, lFreeHwMixingStaticBuffers, and lFreeHwMixingStreamingBuffers
Description of the free, or unallocated, hardware mixing capabilities of the device. An application can use these values to determine whether hardware resources are available for allocation to a secondary sound buffer. Also, by comparing these values to the members that specify maximum mixing capabilities, the resources that are already allocated can be determined.
lMaxContigFreeHwMemBytes
Size, in bytes, of the largest contiguous block of free memory on the sound card.
lMaxHw3DAllBuffers, lMaxHw3DStaticBuffers, and lMaxHw3DStreamingBuffers
Description of the hardware 3-D positional capabilities of the device.
lMaxHwMixingAllBuffers
Total number of buffers that can be mixed in hardware. This member can be less than the sum of lMaxHwMixingStaticBuffers and lMaxHwMixingStreamingBuffers. Resource tradeoffs frequently occur.
lMaxHwMixingStaticBuffers
Maximum number of static sound buffers.
lMaxHwMixingStreamingBuffers
Maximum number of streaming sound buffers.
lMaxSecondarySampleRate and lMinSecondarySampleRate
Maximum and minimum sample rate specifications that are supported by this device's hardware secondary sound buffers.
lPlayCpuOverheadSwBuffers
Description of the processing overhead, as a percentage of the central processing unit, needed to mix software buffers—those located in main system memory. This varies according to the bus type, the processor type, and the clock speed.

The unlock transfer rate for software buffers is zero because the data need not be transferred. Similarly, the play processing overhead for hardware buffers is 0 because the mixing is done by the sound device.

lPrimaryBuffers
Number of primary buffers supported. This value is always 1.
lReserved1 and lReserved2
Reserved.
lTotalHwMemBytes
Size, in bytes, of the memory on the sound card that stores static sound buffers.
lUnlockTransferRateHwBuffers
Rate, in kilobytes per second, at which data can be transferred to hardware static sound buffers.