次の方法で共有


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

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

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

 

別のヘッダー ファイル Audiosessiontypes.h は、WASAPI で使用される定数を定義します。 これらのヘッダー ファイルは、\include %MSSdk%ディレクトリにあります。%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 のデバイス固有のインターフェイスを直接または間接的に取得できます。 CoCreateInstanceEx CoCreateInstanceEx の詳細については、Windows SDK のドキュメントを参照してください。 コア オーディオ API のインターフェイスへのアクセスの詳細については、「オーディオ デバイスのの列挙」を参照してください。

Windows Core オーディオ API について