Windows-Audioarchitektur

Dieses Thema enthält eine allgemeine Zusammenfassung der Windows 10/11-Audioarchitektur.

Windows 10/11-Audiostapeldiagramm

Dieses Diagramm enthält eine Zusammenfassung der wichtigsten Elemente des Windows 10/11-Audiostapels.

Diagramm, das den Windows 10/11-Audiostapel zeigt, einschließlich Apps, Audio-Engine, Treibern und Hardware.

APIs

APIs der obersten Ebene

Die APIs der obersten Ebene werden für die Anwendungsentwicklung verwendet. Diese APIs werden derzeit verwendet und unterstützt.

Diese älteren APIs sind veraltet.

APIs auf niedriger Ebene

Diese APIs der niedrigeren Ebene werden für das Audiostreaming empfohlen.

  • WASAPI (Hohe Leistung, aber komplizierter)
  • IXAudio2 (in der Regel für Spiele verwendet)
  • MIDI

Diese API der niedrigeren Ebene wird für die Enumeration empfohlen.

Diese APIs werden für Windows-Anwendungen nicht empfohlen.

Audio-Engine

Die Audio-Engine besteht aus zwei verwandten Komponenten, dem Audiogerätegraphen (audiodg.exe), der die Audio-Engine (audioeng.dll) lädt.

Die Audio-Engine:

  • Mischt und verarbeitet Audiodatenströme. Weitere Informationen dazu, wie die Audio-Engine Puffer zum Übertragen von Audio verwendet, finden Sie unter Grundlegendes zum WaveRT-Porttreiber.
  • Lädt Audioverarbeitungsobjekte (Audio Processing Objects, APOs), bei denen es sich um H/W-spezifische Plug-Ins handelt, die das Audiosignal verarbeiten. Weitere Informationen zu APOs finden Sie unter Windows-Audioverarbeitungsobjekte.

Audiodienst (audiosrv.dll)

Der Audiodienst:

  • Dient zum Einrichten und Steuern von Audiostreams.
  • Implementiert Windows-Richtlinien für die Audiowiedergabe im Hintergrund, Ducking usw.

Audioendpunkt-Generator (audioendpointbuilder.exe)

Audioendpunkt-Generator (audioendpointbuilder.exe):

  • Wird verwendet, um neue Audiogeräte zu ermitteln und Softwareaudioendpunkte zu erstellen. Weitere Informationen zum verwendeten Algorithmus finden Sie unter AudioEndpunkt-Generator-Algorithmus.

Audiotreiber

Audiotreiber:

  • Befolgen Sie das Port-Miniport-Modell. Weitere Informationen finden Sie unter WDM-Audioterminologie und Entwickeln eines WaveRT-Miniporttreibers.
  • Lassen Sie dem Audiostapel das Rendern und Aufzeichnen von Audiodaten mehrerer Audiogeräte zu, einschließlich integrierter Lautsprecher und Mikrofone, Headsets/Kopfhörer, USB-Geräte, Bluetooth-Geräte, HDMI usw.
  • Das Port-Minport-Modell entspricht der Advanced Linux Sound Architecture ALSA.
  • Informationen zum Beispieltreibercode finden Sie unter Beispielaudiotreiber.

Hardware

Die Audiohardware, die auf einem bestimmten Gerät vorhanden ist, variiert, kann jedoch Folgendes umfassen:

  • Audiocodec
  • DSP (optional)
  • Integrierte Lautsprecher, Mikrofon usw.
  • Externe Geräte: USB-Audiogeräte, Bluetooth-Audiogeräte, HDMI-Audio usw.
  • Die Signalverarbeitung kann auch im H/W (z. B. codec oder DSP) anstelle von oder zusätzlich zu den APOs implementiert werden.