acmMetrics

The acmMetrics function returns various metrics for the ACM or related ACM objects.

MMRESULT acmMetrics(
  HACMOBJ hao,   
  UINT uMetric,  
  LPVOID pMetric 
);
 

Parameters

hao
Handle of the ACM object to query for the metric specified in uMetric. For some queries, this parameter can be NULL.
uMetric
Metric index to be returned in pMetric.
ACM_METRIC_COUNT_CODECS
Returned value is the number of global ACM compressor or decompressor drivers in the system. The hao parameter must be NULL for this metric index. The pMetric parameter must point to a buffer of a size equal to a doubleword value.
ACM_METRIC_COUNT_CONVERTERS
Returned value is the number of global ACM converter drivers in the system. The hao parameter must be NULL for this metric index. The pMetric parameter must point to a buffer of a size equal to a doubleword value.
ACM_METRIC_COUNT_DISABLED
Returned value is the total number of global disabled ACM drivers (of all support types) in the system. The hao parameter must be NULL for this metric index. The pMetric parameter must point to a buffer of a size equal to a doubleword value. The sum of the ACM_METRIC_COUNT_DRIVERS and ACM_METRIC_COUNT_DISABLED metric indices is the total number of globally installed ACM drivers.
ACM_METRIC_COUNT_DRIVERS
Returned value is the total number of enabled global ACM drivers (of all support types) in the system. The hao parameter must be NULL for this metric index. The pMetric parameter must point to a buffer of a size equal to a doubleword value.
ACM_METRIC_COUNT_FILTERS
Returned value is the number of global ACM filter drivers in the system. The hao parameter must be NULL for this metric index. The pMetric parameter must point to a buffer of a size equal to a doubleword value.
ACM_METRIC_COUNT_HARDWARE
Returned value is the number of global ACM hardware drivers in the system. The hao parameter must be NULL for this metric index. The pMetric parameter must point to a buffer of a size equal to a doubleword value.
ACM_METRIC_COUNT_LOCAL_CODECS
Returned value is the number of local ACM compressor drivers, ACM decompressor drivers, or both for the calling task. The hao parameter must be NULL for this metric index. The pMetric parameter must point to a buffer of a size equal to a doubleword value.
ACM_METRIC_COUNT_LOCAL_CONVERTERS
Returned value is the number of local ACM converter drivers for the calling task. The hao parameter must be NULL for this metric index. The pMetric parameter must point to a buffer of a size equal to a doubleword value.
ACM_METRIC_COUNT_LOCAL_DISABLED
Returned value is the total number of local disabled ACM drivers, of all support types, for the calling task. The hao parameter must be NULL for this metric index. The pMetric parameter must point to a buffer of a size equal to a doubleword value. The sum of the ACM_METRIC_COUNT_LOCAL_DRIVERS and ACM_METRIC_COUNT_LOCAL_DISABLED metric indices is the total number of locally installed ACM drivers.
ACM_METRIC_COUNT_LOCAL_DRIVERS
Returned value is the total number of enabled local ACM drivers (of all support types) for the calling task. The hao parameter must be NULL for this metric index. The pMetric parameter must point to a buffer of a size equal to a doubleword value.
ACM_METRIC_COUNT_LOCAL_FILTERS
Returned value is the number of local ACM filter drivers for the calling task. The hao parameter must be NULL for this metric index. The pMetric parameter must point to a buffer of a size equal to a doubleword value.
ACM_METRIC_DRIVER_PRIORITY
Returned value is the current priority for the specified driver. The hao parameter must be a valid ACM driver identifier of the HACMDRIVERID data type. The pMetric parameter must point to a buffer of a size equal to a doubleword value.
ACM_METRIC_DRIVER_SUPPORT
Returned value is the fdwSupport flags for the specified driver. The hao parameter must be a valid ACM driver identifier of the HACMDRIVERID data type. The pMetric parameter must point to a buffer of a size equal to a doubleword value.
ACM_METRIC_HARDWARE_WAVE_INPUT
Returned value is the waveform-audio input device identifier associated with the specified driver. The hao parameter must be a valid ACM driver identifier of the HACMDRIVERID data type that supports the ACMDRIVERDETAILS_SUPPORTF_HARDWARE flag. If no waveform-audio input device is associated with the driver, MMSYSERR_NOTSUPPORTED is returned. The pMetric parameter must point to a buffer of a size equal to a doubleword value.
ACM_METRIC_HARDWARE_WAVE_OUTPUT
Returned value is the waveform-audio output device identifier associated with the specified driver. The hao parameter must be a valid ACM driver identifier of the HACMDRIVERID data type that supports the ACMDRIVERDETAILS_SUPPORTF_HARDWARE flag. If no waveform-audio output device is associated with the driver, MMSYSERR_NOTSUPPORTED is returned. The pMetric parameter must point to a buffer of a size equal to a doubleword value.
ACM_METRIC_MAX_SIZE_FILTER
Returned value is the size of the largest WAVEFILTER structure. If hao is NULL, the return value is the largest WAVEFILTER structure in the system. If hao identifies an open instance of an ACM driver of the HACMDRIVER data type or an ACM driver identifier of the HACMDRIVERID data type, the largest WAVEFILTER structure for that driver is returned. The pMetric parameter must point to a buffer of a size equal to a doubleword value. This metric is not allowed for an ACM stream handle of the HACMSTREAM data type.
ACM_METRIC_MAX_SIZE_FORMAT
Returned value is the size of the largest WAVEFORMATEX structure. If hao is NULL, the return value is the largest WAVEFORMATEX structure in the system. If hao identifies an open instance of an ACM driver of the HACMDRIVER data type or an ACM driver identifier of the HACMDRIVERID data type, the largest WAVEFORMATEX structure for that driver is returned. The pMetric parameter must point to a buffer of a size equal to a doubleword value. This metric is not allowed for an ACM stream handle of the HACMSTREAM data type.
pMetric
Address of the buffer to receive the metric details. The exact definition depends on the uMetric index.

Return Values

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

Value Description
ACMERR_NOTPOSSIBLE The index specified in uMetric cannot be returned for the specified hao.
MMSYSERR_INVALHANDLE The specified handle is invalid.
MMSYSERR_INVALPARAM At least one parameter is invalid.
MMSYSERR_NOTSUPPORTED The index specified in uMetric is not supported.

QuickInfo

  Windows NT: Requires version 3.1 or later.
  Windows: Requires Windows 95 or later.
  Windows CE: Unsupported.
  Header: Declared in msacm.h.
  Import Library: Use msacm32.lib.

See Also

Audio Compression Manager Overview, Audio Compression Functions, WAVEFILTER, WAVEFORMATEX