Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
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.
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.
- XAML MediaElement-klasse(C#, VB, C++)
- HTML-audioobject- en videoobjecttags<> (gebruikt door websites en Windows Web Apps)
- Windows.Media.Capture-naamruimte (C#, VB, C++)
- Microsoft Media Foundation (C++)
Deze oudere API's zijn afgeschaft.
API's op laag niveau
Deze API's op lager niveau worden aanbevolen voor audiostreaming.
Deze API op lager niveau wordt aanbevolen voor opsomming.
Deze API's worden niet aanbevolen voor Windows-toepassingen.
- Over MMDevice-API (vervangen door Windows.Devices.Enumeration)
- DeviceTopology-API-
- EndpointVolume-API-
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:
- Mixen en verwerkt audiostreams. Zie Understanding the WaveRT Port Driver (Meer informatie over het WaveRT-poortstuurprogramma) voor meer informatie over hoe de audio-engine buffers gebruikt om audio over te dragen.
- Laadt audioverwerkingsobjecten (API's), die H/W-specifieke invoegtoepassingen zijn die het audiosignaal verwerken. Zie Windows Audio Processing Objects voor meer informatie over API's.
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.