Delen via


Windows Audio-architectuur

In dit onderwerp is een algemeen overzicht gegeven van de audioarchitectuur van Windows 10/11.

Diagram van de Audiostack voor Windows 10/11

Dit diagram bevat een overzicht van de belangrijkste elementen van de Audiostack van Windows 10/11.

Diagram met de Windows 10/11-audiostack, waaronder apps, audio-engine, stuurprogramma's en hardware.

APIs

API's op het hoogste niveau

De API's op het hoogste niveau worden gebruikt voor het ontwikkelen van toepassingen. Deze API's zijn momenteel in gebruik en worden ondersteund.

Deze oudere API's zijn afgeschaft.

API's op laag niveau

Deze API's op lager niveau worden aanbevolen voor audiostreaming.

  • WASAPI (hoge prestaties, maar ingewikkelder)
  • IXAudio2 (meestal gebruikt voor games)
  • MIDI

Deze API op lager niveau wordt aanbevolen voor opsomming.

Deze API's worden niet aanbevolen voor Windows-toepassingen.

Audioengine

De audio-engine bestaat uit twee gerelateerde onderdelen, de Audio Device Graph (audiodg.exe), waarmee de audio-engine (audioeng.dll) wordt geladen.

De audio-engine:

Audioservice (audiosrv.dll)

De audioservice:

  • Wordt gebruikt voor het instellen en beheren van audiostreams.
  • Implementeert Windows-beleid voor het afspelen van achtergrondaudio, audio ducking, enz.

Audio Endpoint Builder (audioendpointbuilder.exe)

De audio-eindpuntbouwer (audioendpointbuilder.exe):

  • Wordt gebruikt om nieuwe audioapparaten te detecteren en software-audio-eindpunten te maken. Zie Het algoritme audio-eindpuntbouwer voor meer informatie over het gebruikte algoritme.

Audiostuurprogramma's

Audiostuurprogramma's:

  • Volg het poort-miniportmodel. Zie WDM Audio Terminologie en Ontwikkelen van een WaveRT Miniport Driver voor meer informatie.
  • Sta de audiostack toe om audio van verschillende audioapparaten weer te geven en vast te leggen, waaronder: geïntegreerde luidsprekers en microfoons, headsets/hoofdtelefoons, USB-apparaten, Bluetooth-apparaten, HDMI, enzovoort.
  • Het poort-miniportmodel komt overeen met de Advanced Linux Sound Architecture ALSA
  • Zie Voorbeeldstuurprogramma's voor audio voor meer informatie over voorbeeldstuurprogrammacode.

Apparatuur

De audiohardware die aanwezig is op een bepaald apparaat varieert, maar kan het volgende omvatten:

  • Audiocodec
  • DSP (optioneel)
  • Geïntegreerde luidsprekers, microfoon, enz.
  • Externe apparaten: USB-audioapparaten, Bluetooth-audioapparaten, HDMI-audio, enzovoort.
  • Signaalverwerking kan ook worden geïmplementeerd in de H/W (bijvoorbeeld de codec of de DSP), in plaats van of naast de API's.