This function retrieves the capabilities of a specified waveform-audio input device.
MMRESULT waveInGetDevCaps( UINT uDeviceID, LPWAVEINCAPS pwic, UINT cbwic );
Identifier of the waveform-audio output device. It can be either a device identifier or a Handle to an open waveform-audio input device.
Pointer to a WAVEINCAPS structure to be filled with information about the capabilities of the device.
Size, in bytes, of the WAVEINCAPS structure.
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.