ACMFORMATTAGDETAILS  2AI5IF3 

The ACMFORMATTAGDETAILS structure details a waveform-audio format tag for an ACM driver.

typedef struct { 

    DWORD cbStruct;

    DWORD dwFormatTagIndex;

    DWORD dwFormatTag;

    DWORD cbFormatSize;

    DWORD fdwSupport;

    DWORD cStandardFormats;

    char szFormatTag[ACMFORMATTAGDETAILS_FORMATTAG_CHARS];

} ACMFORMATTAGDETAILS;

 

Members

cbStruct

Size, in bytes, of the ACMFORMATTAGDETAILS structure. This member must be initialized before an application calls the acmFormatTagDetailsB6RNTS or acmFormatTagEnumUN7ECP function. The size specified by this member must be large enough to contain the base ACMFORMATTAGDETAILS structure. When the acmFormatTagDetails function returns, this member contains the actual size of the information returned. The returned information will never exceed the requested size.

dwFormatTagIndex

Index of the format tag for which details will be retrieved. The index ranges from zero to one less than the number of format tags supported by an ACM driver. The number of format tags supported by a driver is contained in the cFormatTags member of the ACMDRIVERDETAILS9RSWQJ structure. The dwFormatTagIndex member is used only when querying format tag details on a driver by index; otherwise, this member should be zero.

dwFormatTag

Waveform-audio format tag that the ACMFORMATTAGDETAILS structure describes. This member is used for input for the ACM_FORMATTAGDETAILSF_FORMATTAG and ACM_FORMATTAGDETAILSF_LARGESTSIZE query flags. If the acmFormatTagDetailsB6RNTS function is successful, this member is always returned. This member should be set to WAVE_FORMAT_UNKNOWN for all other query flags.

cbFormatSize

Largest total size, in bytes, of a waveform-audio format of the dwFormatTag type. For example, this member will be 16 for WAVE_FORMAT_PCM and 50 for WAVE_FORMAT_ADPCM.

fdwSupport

Driver-support flags specific to the format tag. These flags are identical to the fdwSupport flags of the ACMDRIVERDETAILS9RSWQJ structure. This member may be some combination of the following values and refer to what operations the driver supports with the format tag:

ACMDRIVERDETAILS_SUPPORTF_ASYNC

Driver supports asynchronous conversions with the specified format tag.

ACMDRIVERDETAILS_SUPPORTF_CODEC

Driver supports conversion between two different format tags where one of the tags is the specified format tag. For example, if a driver supports compression from WAVE_FORMAT_PCM to WAVE_FORMAT_ADPCM, this flag is set.

ACMDRIVERDETAILS_SUPPORTF_CONVERTER

Driver supports conversion between two different formats of the specified format tag. For example, if a driver supports resampling of WAVE_FORMAT_PCM, 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 the specified format tag, this flag is set.

ACMDRIVERDETAILS_SUPPORTF_HARDWARE

Driver supports hardware input, output, or both of the specified format tag through a waveform-audio device. An application should use the acmMetrics0KXYCH function with the ACM_METRIC_HARDWARE_WAVE_INPUT and ACM_METRIC_HARDWARE_WAVE_OUTPUT metric indexes to get the waveform-audio device identifiers associated with the supporting ACM driver.

cStandardFormats

Number of standard formats of the dwFormatTag type; that is, the combination of all sample rates, bits per sample, channels, and so on. This value can specify all formats supported by the driver, but not necessarily.

szFormatTag

String that describes the dwFormatTag type. If the acmFormatTagDetailsB6RNTS function is successful, this string is always returned.

 

See Also

ACMDRIVERDETAILS, acmFormatTagDetails, acmFormatTagEnum, acmMetrics