Архитектура Windows Audio
В этом разделе представлен общий обзор архитектуры звука Windows 10/11.
Схема стека звука Windows 10/11
На этой схеме представлена сводка основных элементов звукового стека Windows 10/11.
Программные интерфейсы
API верхнего уровня
API верхнего уровня используются для разработки приложений. Эти API в настоящее время используются и поддерживаются.
- Класс Xaml MediaElement(C#, VB, C++)
- Теги>объектов HTML Audio и Video<(используются веб-сайтами и Windows веб-приложения)
- Пространство имен Windows.Media.Capture (C#, VB, C++)
- Microsoft Media Foundation (C++)
Эти старые API являются устаревшими.
Низкоуровневые API
Эти API более низкого уровня рекомендуется использовать для потоковой передачи звука.
Этот API более низкого уровня рекомендуется для перечисления.
Эти API не рекомендуется использовать для приложений Windows.
- Сведения об API MMDevice (заменено Windows.Devices.Enumeration)
- DeviceTopology API
- EndpointVolume API
Обработчик звука
Звуковой модуль состоит из двух связанных компонентов, графа звуковых устройств (audiodg.exe), который загружает обработчик звука (audioeng.dll).
Обработчик звука:
- Микширует и обрабатывает звуковые потоки. Дополнительные сведения о том, как обработчик звука использует буферы для передачи звука, см. в разделе Общие сведения о драйвере порта WaveRT.
- Загружает объекты обработки звука (APOs), которые являются подключаемыми модулями для H/W, которые обрабатывают звуковой сигнал. Дополнительные сведения об API см. в разделе Объекты обработки звука Windows.
Аудиослужба (audiosrv.dll)
Аудиослужба:
- Используется для настройки и управления звуковыми потоками.
- Реализует политики Windows для фонового воспроизведения звука, утки и т. д.
Audio Endpoint Builder (audioendpointbuilder.exe)
Конструктор конечных точек аудио (audioendpointbuilder.exe):
- Используется для обнаружения новых звуковых устройств и создания конечных точек аудио программного обеспечения. Дополнительные сведения об используемом алгоритме см. в разделе Audio Endpoint Builder Algorithm.
Аудиодрайверы
Аудиодрайверы:
- Следуйте модели порт-минипорт. Дополнительные сведения см. в разделах Терминология звука WDM и Разработка драйвера miniport WaveRT.
- Разрешите стеку аудио отрисовки и записи звука с нескольких звуковых устройств, включая встроенные динамики и микрофоны, гарнитуры и наушники, USB-устройства, устройства Bluetooth, HDMI и т. д.
- Модель port-minport соответствует advanced Linux Sound Architecture ALSA
- Сведения о примере кода драйвера см. в разделе Примеры аудиодрайверов.
Оборудование
Звуковое оборудование, которое присутствует на любом устройстве, может быть разным, но может включать:
- Аудиокодек
- DSP (необязательно)
- Встроенные динамики, микрофон и т. д.
- Внешние устройства: аудиоустройства USB, аудиоустройства Bluetooth, звук HDMI и т. д.
- Обработка сигналов также может быть реализована в H/W (например, кодек или DSP) вместо или в дополнение к APOs.
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по