Share via


ヘッダー ファイルとシステム コンポーネント

次の表に、4 つのコア オーディオ コンポーネントのインターフェイス定義を含むヘッダー ファイルを示します。

コア オーディオ コンポーネント ヘッダー ファイル
MMDevice API Mmdeviceapi.h
WASAPI Audioclient.h、Audiopolicy.h
DeviceTopology API Devicetopology.h
EndpointVolume API Endpointvolume.h

 

別のヘッダー ファイル Audiosessiontypes.h は、WASAPI で使用される定数を定義します。 これらのヘッダー ファイルは %MSSdk%\include ディレクトリにあります。ここで、%MSSdk% は、コンピューター上の Windows SDK インストールのルート ディレクトリです。

前の表の各 API は、関連する一連の COM インターフェイスで構成されています。 オーディオ ストリーミングの一部の側面は低遅延と正確な同期に依存するため、MMDevice、WASAPI、DeviceTopology、EndpointVolume API の実装では、Microsoft .NET Framework やマネージド実行環境は使用されません。

コア オーディオ API は、Audioses.dll および Mmdevapi.dll のユーザー モード システム コンポーネントに実装されます。 クライアント アプリケーションは、これらの DLL 内のエントリ ポイントに直接アクセスしません。 代わりに、クライアントは CoCreateInstance または CoCreateInstanceEx 関数を呼び出して、MMDeviceEnumerator クラス オブジェクトの IMMDeviceEnumerator インターフェイスを取得します。 このオブジェクトは、システム内のオーディオ エンドポイント デバイスを列挙します。 IMMDeviceEnumerator インターフェイスは MMDevice API の一部です。 このインターフェイスから、クライアントは、IMMDevice インターフェイスを含む MMDevice API 内の他のインターフェイスを直接または間接的に取得できます。 IMMDevice は、特定のオーディオ エンドポイント デバイスを表します。 クライアントは、IMMDevice を通じて、WASAPI、DeviceTopology API、EndpointVolume API のデバイス固有のインターフェイスを直接または間接的に取得できます。 CoCreateInstanceCoCreateInstanceEx の詳細については、Windows SDK のドキュメントを参照してください。 コア オーディオ API のインターフェイスへのアクセスについて詳しくは、「オーディオ デバイスの列挙」をご覧ください。

Windows コア オーディオ API について