次の方法で共有


Windows オーディオ アーキテクチャ

このトピックでは、Windows 10/11 オーディオ アーキテクチャの概要について説明しました。

Windows 10/11 オーディオ スタック図

この図では、Windows 10/11 オーディオ スタックの主要な要素の概要を示します。

アプリ、オーディオ エンジン、ドライバー、ハードウェアなど、Windows 10/11 オーディオ スタックを示す図。

API(アプリケーションプログラミングインターフェース)

最上位レベルの API

最上位レベルの API は、アプリケーション開発に使用されます。 これらの API は現在使用中であり、サポートされています。

これらの古い API は非推奨です。

低レベル API

オーディオ ストリーミングには、これらの下位レベルの API をお勧めします。

  • WASAPI (高パフォーマンスですが、より複雑)
  • IXAudio2 (通常はゲームに使用)
  • MIDI

列挙には、この下位レベルの API をお勧めします。

これらの API は、Windows アプリケーションには推奨されません。

オーディオ エンジン

オーディオ エンジンは、オーディオ エンジン (audioeng.dll) を読み込むオーディオ デバイス グラフ (audiodg.exe) という 2 つの関連コンポーネントで構成されています。

オーディオ エンジン:

  • オーディオ ストリームをミックスして処理します。 オーディオ エンジンがバッファーを使用してオーディオを転送する方法の詳細については、「 WaveRT ポート ドライバーについて」を参照してください。
  • オーディオ信号を処理する H/W 固有のプラグインであるオーディオ処理オブジェクト (API) を読み込みます。 API の詳細については、「 Windows オーディオ処理オブジェクト」を参照してください。

Audio Service (audiosrv.dll)

オーディオ サービス:

  • オーディオ ストリームのセットアップと制御に使用されます。
  • バックグラウンド オーディオの再生、ダッキングなどの Windows ポリシーを実装します。

オーディオ エンドポイント ビルダー (audioendpointbuilder.exe)

オーディオ エンドポイント ビルダー (audioendpointbuilder.exe):

オーディオ ドライバー

オーディオ ドライバー:

  • ポート ミニポート モデルに従います。 詳細については、「 WDM オーディオ用語 」および 「WaveRT ミニポート ドライバーの開発」を参照してください。
  • オーディオ スタックで、統合されたスピーカーとマイク、ヘッドセット/ヘッドフォン、USB デバイス、Bluetooth デバイス、HDMI など、複数のオーディオ デバイスからオーディオをレンダリングしてキャプチャできるようにします。
  • ポート ミニポート モデルは、高度な Linux サウンド アーキテクチャ ALSA に対応します。
  • サンプル ドライバー コードの詳細については、「 サンプル オーディオ ドライバー」を参照してください。

ハードウェア

特定のデバイスに存在するオーディオ ハードウェアは異なりますが、次のような場合があります。

  • オーディオ コーデック
  • DSP (省略可能)
  • 内蔵スピーカー、マイクなど
  • 外部デバイス: USB オーディオ デバイス、Bluetooth オーディオ デバイス、HDMI オーディオなど。
  • また、APO の代わりに、または API に加えて、H/W (コーデックや DSP など) で信号処理を実装することもできます。