Arquitetura de áudio do Windows
Este tópico forneceu um resumo de alto nível da arquitetura de áudio Windows 10/11.
Diagrama de pilha de áudio Windows 10/11
Este diagrama fornece um resumo dos principais elementos da pilha de áudio Windows 10/11.
APIs
APIs de nível superior
As APIs de nível superior são usadas para o desenvolvimento de aplicativos. Essas APIs estão atualmente em uso e têm suporte.
- Classe MediaElement XAML(C#, VB, C++)
- Marcas de objeto de áudio HTML e de objeto<Video (usadas> por sites e Aplicativos Web do Windows)
- Namespace Windows.Media.Capture (C#, VB, C++)
- Microsoft Media Foundation (C++)
Essas APIs mais antigas foram preteridas.
APIs de baixo nível
Essas APIs de nível inferior são recomendadas para streaming de áudio.
Essa API de nível inferior é recomendada para enumeração.
Essas APIs não são recomendadas para aplicativos do Windows.
- Sobre a API MMDevice (substituída por Windows.Devices.Enumeration)
- DeviceTopology API
- EndpointVolume API
Mecanismo de Áudio
O mecanismo de áudio consiste em dois componentes relacionados, o Gráfico de Dispositivo de Áudio (audiodg.exe), que carrega o Mecanismo de Áudio (audioeng.dll).
O mecanismo de áudio:
- Combina e processa fluxos de áudio. Para obter mais informações sobre como o mecanismo de áudio usa buffers para transferir áudio, consulte Noções básicas sobre o driver de porta WaveRT.
- Carrega APOs (Objetos de Processamento de Áudio), que são plug-ins específicos de H/W que processam o sinal de áudio. Para obter mais informações sobre APOs, consulte Objetos de processamento de áudio do Windows.
Serviço de Áudio (audiosrv.dll)
O serviço de áudio:
- É usado para configurar e controlar fluxos de áudio.
- Implementa políticas do Windows para reprodução de áudio em segundo plano, pato, etc.
Construtor de Ponto de Extremidade de Áudio (audioendpointbuilder.exe)
O Construtor de Ponto de Extremidade de Áudio (audioendpointbuilder.exe):
- É usado para descobrir novos dispositivos de áudio e criar pontos de extremidade de áudio de software. Para obter mais informações sobre o algoritmo usado, consulte Algoritmo do Construtor de Ponto de Extremidade de Áudio.
Drivers de áudio
Drivers de áudio:
- Siga o modelo port-miniport. Para obter mais informações, consulte Terminologia de áudio WDM e Desenvolvendo um driver de miniporto WaveRT.
- Permitir que a pilha de áudio renderize e capture áudio de vários dispositivos de áudio, incluindo: alto-falantes e microfones integrados, fones de ouvido/fones de ouvido, dispositivos USB, dispositivos Bluetooth, HDMI etc.
- O modelo port-minport corresponde à ALSA arquitetura de som avançada do Linux
- Para obter informações sobre o código do driver de exemplo, consulte Drivers de áudio de exemplo.
Hardware
O hardware de áudio presente em qualquer dispositivo varia, mas pode incluir:
- Codec de áudio
- DSP (opcional)
- Alto-falantes integrados, microfone etc.
- Dispositivos externos: dispositivos de áudio USB, dispositivos de áudio Bluetooth, áudio HDMI etc.
- O processamento de sinal também pode ser implementado no H/W (por exemplo, o codec ou o DSP), em vez de ou além das APOs.
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários