waveOutGetDevCaps

The waveOutGetDevCaps function retrieves the capabilities of a given waveform-audio output device.

MMRESULT waveOutGetDevCaps(
  UINT uDeviceID,      
  LPWAVEOUTCAPS pwoc,  
  UINT cbwoc           
);
 

Parameters

uDeviceID
Identifier of the waveform-audio output device. It can be either a device identifier or a handle of an open waveform-audio output device.
pwoc
Address of a WAVEOUTCAPS structure to be filled with information about the capabilities of the device.
cbwoc
Size, in bytes, of the WAVEOUTCAPS structure.

Return Values

Returns MMSYSERR_NOERROR if successful or an error otherwise. Possible error values include the following:

Value Description
MMSYSERR_BADDEVICEID Specified device identifier is out of range.
MMSYSERR_NODRIVER No device driver is present.
MMSYSERR_NOMEM Unable to allocate or lock memory.

Remarks

Use the waveOutGetNumDevs function to determine the number of waveform-audio output devices present in the system. If the value specified by the uDeviceID parameter is a device identifier, it can vary from zero to one less than the number of devices present. The WAVE_MAPPER constant can also be used as a device identifier. Only cbwoc bytes (or less) of information is copied to the location pointed to by pwoc. If cbwoc is zero, nothing is copied and the function returns zero.

QuickInfo

  Windows NT: Requires version 3.1 or later.
  Windows: Requires Windows 95 or later.
  Windows CE: Requires version 2.0 or later.
  Header: Declared in mmsystem.h.
  Import Library: Use winmm.lib.
  Unicode: Implemented as Unicode and ANSI versions on Windows NT.

See Also

Waveform Audio Overview, Waveform Functions, WAVEOUTCAPS, waveOutGetNumDevs