acmFormatSuggest 関数 (msacm.h)

acmFormatSuggest 関数は、ACM または指定された ACM ドライバーに対してクエリを実行して、指定されたソース形式の変換先の形式を提案します。 たとえば、アプリケーションはこの関数を使用して、圧縮形式を圧縮解除できる 1 つ以上の有効な PCM 形式を決定できます。

構文

MMRESULT ACMAPI acmFormatSuggest(
  HACMDRIVER     had,
  LPWAVEFORMATEX pwfxSrc,
  LPWAVEFORMATEX pwfxDst,
  DWORD          cbwfxDst,
  DWORD          fdwSuggest
);

パラメーター

had

ドライバーの開いているインスタンスを処理して、推奨される変換先の形式を照会します。 このパラメーターが NULL の場合、ACM は変換先の形式を提案する最適なドライバーを見つけようとします。

pwfxSrc

ACM または指定されたドライバーによって変換先の形式が提案されるソース形式を識別する WAVEFORMATEX 構造体へのポインター。

pwfxDst

pwfxSrc 形式の推奨される変換先形式を受け取る WAVEFORMATEX 構造体へのポインター。 fdwSuggest パラメーターによっては、pwfxDst によって指される構造体の一部のメンバーが初期化を必要とする場合があります。

cbwfxDst

コピー先の形式で使用できるサイズ (バイト単位)。 acmMetrics 関数と acmFormatTagDetails 関数を使用して、指定したドライバー (またはインストールされているすべての ACM ドライバー) で使用できる任意の形式に必要な最大サイズを決定できます。

fdwSuggest

目的の変換先の形式を一致するためのフラグ。 次の値が定義されています。

説明
ACM_FORMATSUGGESTF_NCHANNELS pwfxDst が指す構造体の nChannels メンバーが有効です。 ACM は、 nChannels に一致する宛先形式を提案したり、失敗したりする可能性がある、インストールされている許容されるドライバーに対してクエリを実行します。
ACM_FORMATSUGGESTF_NSAMPLESPERSEC pwfxDst が指す構造体の nSamplesPerSec メンバーが有効です。 ACM は、 nSamplesPerSec または fail に一致する宛先形式を提案できる、許容されるインストール済みドライバーに対してクエリを実行します。
ACM_FORMATSUGGESTF_WBITSPERSAMPLE pwfxDst が指す構造体の wBitsPerSample メンバーが有効です。 ACM は、 wBitsPerSample または fail に一致する宛先形式を提案できる、インストールされている許容されるドライバーに対してクエリを実行します。
ACM_FORMATSUGGESTF_WFORMATTAG pwfxDst が指す構造体の wFormatTag メンバーは有効です。 ACM は、 wFormatTag に一致する変換先の形式を提案したり、失敗したりする可能性がある、インストールされている許容されるドライバーに対してクエリを実行します。

戻り値

成功した場合は 0 を返し、それ以外の場合はエラーを返します。 考えられるエラー値は次のとおりです。

リターン コード 説明
MMSYSERR_INVALFLAG
少なくとも 1 つのフラグが無効です。
MMSYSERR_INVALHANDLE
指定されたハンドルが無効です。
MMSYSERR_INVALPARAM
少なくとも 1 つのパラメーターが無効です。

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー msacm.h
Library Msacm32.lib
[DLL] Msacm32.dll

関連項目

オーディオ圧縮関数

オーディオ圧縮マネージャー