ACMFORMATDETAILS 構造体 (msacm.h)

ACMFORMATDETAILS 構造体は、ACM ドライバーの特定のフォーマット タグの波形オーディオ形式の詳細を示します。

構文

typedef struct tACMFORMATDETAILS {
  DWORD          cbStruct;
  DWORD          dwFormatIndex;
  DWORD          dwFormatTag;
  DWORD          fdwSupport;
  LPWAVEFORMATEX pwfx;
  DWORD          cbwfx;
  char           szFormat[ACMFORMATDETAILS_FORMAT_CHARS];
} ACMFORMATDETAILS, *PACMFORMATDETAILS, *LPACMFORMATDETAILS;

メンバー

cbStruct

ACMFORMATDETAILS 構造体のサイズ (バイト単位)。 このメンバーは、アプリケーションが acmFormatDetails または acmFormatEnum 関数を呼び出す前に初期化する必要があります。 このメンバーによって指定されるサイズは、基本 ACMFORMATDETAILS 構造体を格納するのに十分な大きさである必要があります。 acmFormatDetails 関数が返されると、このメンバーには返される情報の実際のサイズが含まれます。 返される情報は、要求されたサイズを超えることはありません。

dwFormatIndex

詳細を取得する形式のインデックス。 インデックスの範囲は、書式タグの ACM ドライバーでサポートされている標準書式の数より 0 から 1 未満です。 フォーマット タグのドライバーでサポートされる標準形式の数は、 ACMFORMATTAGDETAILS 構造体に含まれています。 dwFormatIndex メンバーは、アプリケーションがドライバーに関する標準形式の詳細をインデックスで照会する場合にのみ使用されます。それ以外の場合、このメンバーは 0 である必要があります。 また、アプリケーションが形式の詳細を照会する場合、このメンバーは ACM によってゼロに設定されます。つまり、このメンバーは入力にのみ使用され、ACM または ACM ドライバーによって返されることはありません。

dwFormatTag

ACMFORMATDETAILS 構造体が記述する波形オーディオ形式タグ。 このメンバーは、ACM_FORMATDETAILSF_INDEX クエリ フラグの入力に使用されます。 ACM_FORMATDETAILSF_FORMAT クエリ フラグの場合、このメンバーは pwfx メンバーが指定したのと同じ書式タグに初期化する必要があります。 acmFormatDetails 関数の呼び出しが成功した場合、このメンバーは常に返されます。 このメンバーは、他のすべてのクエリ フラグに対してWAVE_FORMAT_UNKNOWNに設定する必要があります。

fdwSupport

指定した形式に固有のドライバーサポート フラグ。 これらのフラグは 、ACMDRIVERDETAILS 構造体と同じです。 このメンバーは、次の値の組み合わせを指定でき、ドライバーが書式タグに対してサポートする操作を示します。

名前 説明
ACMDRIVERDETAILS_SUPPORTF_ASYNC
ドライバーでは、指定した書式タグを使用した非同期変換がサポートされています。
ACMDRIVERDETAILS_SUPPORTF_CODEC
ドライバーでは、指定した形式の 2 つの異なる形式タグ間の変換がサポートされています。 たとえば、ドライバーが指定した形式でWAVE_FORMAT_PCMからWAVE_FORMAT_ADPCMへの圧縮をサポートしている場合、このフラグが設定されます。
ACMDRIVERDETAILS_SUPPORTF_CONVERTER
ドライバーは、指定した形式を使用しながら、同じ書式タグの 2 つの異なる形式間の変換をサポートしています。 たとえば、ドライバーが指定した形式へのWAVE_FORMAT_PCMの再サンプリングをサポートしている場合、このフラグが設定されます。
ACMDRIVERDETAILS_SUPPORTF_FILTER
ドライバーは、指定した形式のフィルター (形式属性を変更せずにデータを変更) をサポートしています。 たとえば、ドライバーがWAVE_FORMAT_PCMでボリューム操作またはエコー操作をサポートしている場合、このフラグが設定されます。
ACMDRIVERDETAILS_SUPPORTF_HARDWARE
ドライバーは、波形オーディオ デバイスを介して指定された形式のハードウェア入力または出力をサポートします。 アプリケーションでは、ACM_METRIC_HARDWARE_WAVE_INPUTとACM_METRIC_HARDWARE_WAVE_OUTPUTメトリック インデックスと共に acmMetrics を使用して、サポートする ACM ドライバーに関連付けられている波形オーディオ デバイス識別子を取得する必要があります。

pwfx

形式の詳細を受け取る WAVEFORMATEX 構造体へのポインター。 この構造体は、ACM_FORMATDETAILSF_FORMAT フラグが acmFormatDetails 関数で指定されていない限り、アプリケーションによる初期化を必要としません。 この場合、WAVEFORMATEX 構造体の wFormatTag メンバーは、ACMFORMATDETAILS 構造体の dwFormatTag と等しい必要があります。

cbwfx

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

szFormat[ACMFORMATDETAILS_FORMAT_CHARS]

dwFormatTag 型の形式を表す文字列。 acmFormatDetails 関数が成功した場合、この文字列は常に返されます。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
Header msacm.h

こちらもご覧ください

ACMDRIVERDETAILS

ACMFORMATTAGDETAILS

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

オーディオ圧縮構造

WAVEFORMATEX

acmFormatDetails

acmFormatEnum

acmFormatTagDetails

acmMetrics