Architecture audio Windows
Cette rubrique offre un résumé de haut niveau de l’architecture audio de Windows 10/11.
Diagramme de la pile audio Windows 10/11
Ce diagramme résume les principaux éléments de la pile audio de Windows 10/11.
API
API de niveau supérieur
Les API de niveau supérieur sont utilisées pour le développement d’applications. Ces API sont actuellement utilisées et prises en charge.
- Classe XAML MediaElement(C#, VB, C++)
- Tags>Objet audio et Objet vidéo< (utilisés par les sites web et les applications web Windows)
- Espace de noms Windows.Media.Capture (C#, VB, C++)
- Microsoft Media Foundation (C++)
Ces anciennes API sont dépréciées.
API de bas niveau
Ces API de bas niveau sont recommandées pour le streaming audio.
Cette API de bas niveau est recommandée pour l’énumération.
Ces API ne sont pas recommandées pour les applications Windows.
- À propos de l’API MMDevice (remplacée par Windows.Devices.Enumeration)
- DeviceTopology API
- EndpointVolume API
Moteur audio
Le moteur audio se compose de deux composants liés, le graphe de périphériques audio (audiodg.exe), qui charge le moteur audio (audioeng.dll).
Le moteur audio :
- Mixe et traite les flux audio. Pour plus d’informations sur la manière dont le moteur audio utilise les tampons pour transférer l’audio, veuillez consulter la section Comprendre le pilote de port WaveRT.
- Charge les objets de traitement audio (APO), qui sont des plugins spécifiques au matériel qui traitent le signal audio. Pour plus d’informations sur les APO, consultez la section Windows Audio Processing Objects.
Service audio (audiosrv.dll)
Le service audio :
- Est utilisé pour configurer et contrôler les flux audio.
- Implémente les politiques Windows pour la lecture audio en arrière-plan, le ducking, etc.
Constructeur de points de terminaison audio (audioendpointbuilder.exe)
Le constructeur de points de terminaison audio (audioendpointbuilder.exe) :
- Est utilisé pour découvrir de nouveaux périphériques audio et créer des points de terminaison audio logiciels. Pour plus d’informations sur l’algorithme utilisé, veuillez consulter la section Algorithme du constructeur de points de terminaison audio.
Pilotes audio
Les pilotes audio :
- Suivent le modèle port-miniport. Pour plus d’informations, veuillez consulter la section Terminologie audio WDM et Développement d’un pilote miniport WaveRT.
- Permettent à la pile audio de restituer et de capturer l’audio de plusieurs périphériques audio, y compris : haut-parleurs et microphones intégrés, casques/écouteurs, périphériques USB, périphériques Bluetooth, HDMI, etc.
- Le modèle port-miniport correspond à l’Architecture sonore avancée Linux (ALSA).
- Pour des informations sur le code d’exemple de pilote, veuillez consulter la section Pilotes audio d’exemple.
Matériel
Le matériel audio présent sur un appareil donné varie, mais peut inclure :
- Codec audio
- DSP (facultatif)
- Haut-parleurs intégrés, microphone, etc.
- Périphériques externes : périphériques audio USB, périphériques audio Bluetooth, audio HDMI, etc.
- Le traitement du signal peut également être implémenté dans le matériel (par exemple, le codec ou le DSP), en plus ou à la place des APO.