ACMFILTERTAGENUMCB callback function

The acmFilterTagEnumCallback function specifies a callback function used with the acmFilterTagEnum function. The acmFilterTagEnumCallback function name is a placeholder for an application-defined function name.


ACMFILTERTAGENUMCB Acmfiltertagenumcb;

BOOL Acmfiltertagenumcb(
  DWORD_PTR dwInstance,
  DWORD fdwSupport



Handle to the ACM driver identifier.


Pointer to an ACMFILTERTAGDETAILS structure that contains the enumerated filter tag details.


Application-defined value specified in acmFilterTagEnum.


Driver-support flags specific to the driver identifier hadid. These flags are identical to the fdwSupport flags of the ACMDRIVERDETAILS structure. This parameter can be a combination of the following values and identifies which operations the driver supports with the filter tag.

Value Meaning
ACMDRIVERDETAILS_SUPPORTF_ASYNC Driver supports asynchronous conversions with the specified filter tag.
ACMDRIVERDETAILS_SUPPORTF_CODEC Driver supports conversion between two different format tags while using the specified filter tag. For example, if a driver supports compression from WAVE_FORMAT_PCM to WAVE_FORMAT_ADPCM with the specified filter tag, this flag is set.
ACMDRIVERDETAILS_SUPPORTF_CONVERTER Driver supports conversion between two different formats of the same format tag while using the specified filter tag. For example, if a driver supports resampling of WAVE_FORMAT_PCM with the specified filter tag, this flag is set.
ACMDRIVERDETAILS_SUPPORTF_FILTER Driver supports a filter (modification of the data without changing any of the format attributes). For example, if a driver supports volume or echo operations on WAVE_FORMAT_PCM, this flag is set.
ACMDRIVERDETAILS_SUPPORTF_HARDWARE Driver supports hardware input, output, or both with the specified filter tag through a waveform-audio device. An application should use the acmMetrics function with the ACM_METRIC_HARDWARE_WAVE_INPUT and ACM_METRIC_HARDWARE_WAVE_OUTPUT metric indices to get the waveform-audio device identifiers associated with the supporting ACM driver.

Return Value

The callback function must return TRUE to continue enumeration or FALSE to stop enumeration.


The acmFilterTagEnum function returns MMSYSERR_NOERROR (zero) if no filter tags are to be enumerated. Moreover, the callback function will not be called.

The following functions should not be called from within the callback function: acmDriverAdd, acmDriverRemove, and acmDriverPriority.


Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header msacm.h

See Also

Audio Compression Functions

Audio Compression Manager