waveInGetDevCaps

A version of this page is also available for

Windows Embedded CE 6.0 R3

4/8/2010

This function retrieves the capabilities of a specified waveform-audio input device.

Syntax

MMRESULT waveInGetDevCaps(
  UINT uDeviceID, 
  LPWAVEINCAPS pwic, 
  UINT cbwic 
); 

Parameters

  • uDeviceID
    Identifier of the waveform-audio output device. It can be either a device identifier or a Handle to an open waveform-audio input device.
  • pwic
    Pointer to a WAVEINCAPS structure to be filled with information about the capabilities of the device.
  • cbwic
    Size, in bytes, of the WAVEINCAPS structure.

Return Value

One of the values described in the following table is returned.

Value Description

MMSYSERR_NOERROR

Success.

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 this function to determine the number of waveform-audio input 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 cbwic bytes (or less) of information is copied to the location pointed to by pwic. If cbwic is zero, nothing is copied and the function returns zero.

You can determine which of the standard audio formats a driver supports by examining the contents of WAVEINCAPS.dwFormats. To determine whether a driver supports a particular format that is not explicitly described in WAVEINCAPS, call waveInOpen and specify the audio format and the WAVE_FORMAT_QUERY flag. If the device does not support the format, it will return WAVERR_BADFORMAT.

Requirements

Header mmsystem.h
Library coredll.lib
Windows Embedded CE Windows CE 2.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also

Reference

Waveform Audio Functions
WAVEINCAPS
waveInOpen