Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ acmMetrics(3mms) — Multimedia Services 2.4B

Media Vault

Software Library

Restoration Projects

Artifacts Sought

acmMetrics(3mms)  —  Subroutines

 

Name

 
acmMetrics --- Return metrics for the ACM or related ACM objects
 

Syntax

 

 #include <mme/mme_api.h>
 MMRESULT acmMetrics(HACMOBJ hao,
                    UINT uMetric,
                    LPVOID pMetric)
 

 
 

Arguments

 
HACMOBJ hao
Specifies the ACM object to query for the metric specified in the uMetric argument. This argument can be NULL for some queries. 

 
UINT uMetric
Specifies the metric index to be returned in the pMetric argument. The following flags are defined:
 
 

ACM_METRIC_COUNT_DRIVERS
This flag specifies that the returned value is the total number of enabled global ACM drivers (of all support types) in the system. The hao argument must be NULL for this metric index. The pMetric argument must point to a buffer of a size equal to a DWORD. 
 

ACM_METRIC_COUNT_CODECS
This flag specifies that the returned value is the number of global ACM compressor or decompressor drivers in the system. The hao argument must be NULL for this metric index. The pMetric argument must point to a buffer of a size equal to a DWORD. 
 

ACM_METRIC_COUNT_CONVERTERS
This flag specifies that the returned value is the number of global ACM converter drivers in the system. The hao argument must be NULL for this metric index. The pMetric argument must point to a buffer of a size equal to a DWORD. 
 

ACM_METRIC_COUNT_FILTERS
This flag specifies that the returned value is the number of global ACM filter drivers in the system. The hao argument must be NULL for this metric index. The pMetric argument must point to a buffer of a size equal to a DWORD. 
 

ACM_METRIC_COUNT_DISABLED
This flag specifies that the returned value is the total number of global disabled ACM drivers (of all support types) in the system. The hao argument must be NULL for this metric index. The pMetric argument must point to a buffer of a size equal to a DWORD. The sum of the ACM_METRIC_COUNT_DRIVERS and ACM_METRIC_COUNT_DISABLED metrics is the total number of globally installed ACM drivers. 
 

ACM_METRIC_COUNT_HARDWARE
This flag specifies that the returned value is the number of global ACM hardware drivers in the system. The hao argument must be NULL for this metric index. The pMetric argument must point to a buffer of a size equal to a DWORD. 
 

ACM_METRIC_COUNT_LOCAL_DRIVERS
This flag specifies that the returned value is the total number of enabled local ACM drivers (of all support types) for the calling task. The hao argument must be NULL for this metric index. The pMetric argument must point to a buffer of a size equal to a DWORD. 
 

ACM_METRIC_COUNT_LOCAL_CODECS
This flag specifies that the returned value is the number of local ACM compressor and decompressor drivers for the calling task. The hao argument must be NULL for this metric index. The pMetric argument must point to a buffer of a size equal to a DWORD. 
 

ACM_METRIC_COUNT_LOCAL_CONVERTERS
This flag specifies that the returned value is the number of local ACM converter drivers for the calling task. The hao argument must be NULL for this metric index. The pMetric argument must point to a buffer of a size equal to a DWORD. 
 

ACM_METRIC_COUNT_LOCAL_FILTERS
This flag specifies that the returned value is the number of local ACM filter drivers for the calling task. The hao argument must be NULL for this metric index. The pMetric argument must point to a buffer of a size equal to a DWORD. 
 

ACM_METRIC_COUNT_LOCAL_DISABLED
This flag specifies that the returned value is the total number of local disabled ACM drivers, of all support types, for the calling task. The hao argument must be NULL for this metric index. The pMetric argument must point to a buffer of a size equal to a DWORD. The sum of the ACM_METRIC_COUNT_LOCAL_DRIVERS and ACM_METRIC_COUNT_LOCAL_DISABLED metrics is the total number of locally installed ACM drivers. 
 

ACM_METRIC_HARDWARE_WAVE_INPUT
This flag specifies that the returned value is the waveform input device identifier associated with the specified driver. The hao argument must be a valid ACM driver identifier (HACMDRIVERID) that supports the ACMDRIVERDETAILS_SUPPORTF_HARDWARE flag. If no waveform input device is associated with the driver, then MMSYSERR_NOTSUPPORTED is returned. The pMetric argument must point to a buffer of a size equal to a DWORD. 
 

ACM_METRIC_HARDWARE_WAVE_OUTPUT
This flag specifies that the returned value is the waveform output device identifier associated with the specified driver. The hao argument must be a valid ACM driver identifier (HACMDRIVERID) that supports the ACMDRIVERDETAILS_SUPPORTF_HARDWARE flag. If no waveform output device is associated with the driver, then MMSYSERR_NOTSUPPORTED is returned. The pMetric argument must point to a buffer of a size equal to a DWORD. 
 

ACM_METRIC_MAX_SIZE_FORMAT
This flag specifies that the returned value is the size of the largest WAVEFORMATEX data structure. If hao is NULL, then the return value is the largest WAVEFORMATEX data structure in the system. If hao identifies an open instance of an ACM driver (HACMDRIVER) or an ACM driver identifier (HACMDRIVERID), then the largest WAVEFORMATEX data structure for that driver is returned. The pMetric argument must point to a buffer of a size equal to a DWORD. This metric is not allowed for an ACM stream handle (HACMSTREAM). 
 

ACM_METRIC_MAX_SIZE_FILTER
This flag specifies that the returned value is the size of the largest WAVEFILTER data structure.  If hao is NULL, then the return value is the largest WAVEFILTER data structure in the system. If hao identifies an open instance of an ACM driver (HACMDRIVER) or an ACM driver identifier (HACMDRIVERID), then the largest WAVEFILTER data structure for that driver is returned. The pMetric argument must point to a buffer of a size equal to a DWORD. This metric is not allowed for an ACM stream handle (HACMSTREAM). 
 

ACM_METRIC_DRIVER_SUPPORT
This flag specifies that the returned value is the fdwSupport flags for the specified driver. The hao argument must be a valid ACM driver identifier (HACMDRIVERID).  The pMetric argument must point to a buffer of a size equal to a DWORD. 
 

ACM_METRIC_DRIVER_PRIORITY
This flag specifies that the returned value is the current priority for the specified driver. The hao argument must be a valid ACM driver identifier (HACMDRIVERID). The pMetric argument must point to a buffer of a size equal to a DWORD. 
 
LPVOID pMetric
Specifies a pointer to the buffer that will receive the metric details. The exact definition depends on the uMetric index. 

The pMetric argument must be allocated with the mmeAllocMem function. See mmeAllocMem(3mms) for more information about memory allocation. 
 
 

Description

 
The acmMetrics function returns various metrics for the Audio Compression Manager (ACM) or related ACM objects. 
 

Extensions

 
None.
 

Return Values

 
Returns zero if the function is successful; otherwise, it returns a nonzero error number or one of the following error codes:
 
 

 
MMSYSERR_INVALHANDLE@T{ The specified handle is invalid. T} MMSYSERR_INVALPARAM@T{ One or more arguments passed is invalid. T} MMSYSERR_NOTSUPPORTED@T{ The uMetric index is not supported.  T} ACMERR_NOTPOSSIBLE@T{ The uMetric index cannot be returned for the specified hao argument.  T}

 

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026