acmFormatSuggest
The acmFormatSuggest function queries the ACM or a specified ACM driver to suggest a destination format for the supplied source format. For example, an application can use this function to determine one or more valid PCM formats to which a compressed format can be decompressed.
MMRESULT acmFormatSuggest(
HACMDRIVER had,
LPWAVEFORMATEX pwfxSrc,
LPWAVEFORMATEX pwfxDst,
DWORD cbwfxDst,
DWORD fdwSuggest
);
Parameters
had
Handle to an open instance of a driver to query for a suggested destination format. If this parameter is NULL, the ACM attempts to find the best driver to suggest a destination format.
pwfxSrc
Pointer to a WAVEFORMATEX structure that identifies the source format for which a destination format will be suggested by the ACM or specified driver.
pwfxDst
Pointer to a WAVEFORMATEX structure that will receive the suggested destination format for the pwfxSrc format. Depending on the fdwSuggest parameter, some members of the structure pointed to by pwfxDst may require initialization.
cbwfxDst
Size, in bytes, available for the destination format. The acmMetrics and acmFormatTagDetails functions can be used to determine the maximum size required for any format available for the specified driver (or for all installed ACM drivers).
fdwSuggest
Flags for matching the desired destination format. The following values are defined.
Value | Meaning |
ACM_FORMATSUGGESTF_NCHANNELS | The nChannels member of the structure pointed to by pwfxDst is valid. The ACM will query acceptable installed drivers that can suggest a destination format matching nChannels or fail. |
ACM_FORMATSUGGESTF_NSAMPLESPERSEC | The nSamplesPerSec member of the structure pointed to by pwfxDst is valid. The ACM will query acceptable installed drivers that can suggest a destination format matching nSamplesPerSec or fail. |
ACM_FORMATSUGGESTF_WBITSPERSAMPLE | The wBitsPerSample member of the structure pointed to by pwfxDst is valid. The ACM will query acceptable installed drivers that can suggest a destination format matching wBitsPerSample or fail. |
ACM_FORMATSUGGESTF_WFORMATTAG | The wFormatTag member of the structure pointed to by pwfxDst is valid. The ACM will query acceptable installed drivers that can suggest a destination format matching wFormatTag or fail. |
Return Values
Returns zero if successful or an error otherwise. Possible error values include the following.
Value | Description |
MMSYSERR_INVALFLAG | At least one flag is invalid. |
MMSYSERR_INVALHANDLE | The specified handle is invalid. |
MMSYSERR_INVALPARAM | At least one parameter is invalid. |
Requirements
** Windows NT/2000/XP:** Included in Windows NT 3.1 and later.
** Windows 95/98/Me:** Included in Windows 95 and later.
** Header:** Declared in Msacm.h.
** Library:** Use Msacm32.lib.
See Also
Audio Compression Manager, Audio Compression Functions, WAVEFORMATEX, acmMetrics, acmFormatTagDetails