Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Замечание
Эта документация предназначена для аудитории разработчиков. Сведения о поддержке конечных пользователей включения пространственного звука на устройстве см. в разделе Как включить пространственный звук в Windows 10.
Майкрософт Spatial Sound — это решение уровня платформы Майкрософт для поддержки пространственного звука на Xbox, Windows и HoloLens 2, что позволяет использовать как объемные звуковые сигналы, так и сигналы по высоте (выше или ниже слушателя). Пространственный звук может быть использован классическими приложениями Windows (Win32), а также приложениями Universal Windows Platform (UWP) на поддерживаемых платформах. API пространственного звука позволяют разработчикам создавать звуковые объекты, которые выдают звук из позиций в трехмерном пространстве. Динамические звуковые объекты позволяют выдавать звук из произвольной позиции в пространстве, что может меняться с течением времени. Можно также указать, что звуковые объекты выдают звук из одного из 17 предварительно определенных статических каналов (8.1.4.4), которые могут представлять реальные или виртуализированные динамики. Текущий формат вывода выбирается пользователем и может быть абстрагирован от реализаций Майкрософт Spatial Sound; звук будет воспроизведен на существующих динамиках, наушниках и приемниках домашнего театра без необходимости изменять код или содержание. Платформа полностью поддерживает кодировку Dolby Atmos в режиме реального времени для HDMI и стереофонических наушников, DTS:X для наушников, а также Windows Sonic for Headphones для стереофонических наушников. Наконец, приложения для пространственного звука от Майкрософт соблюдают политику смешивания системы, и их звук также будет смешан с приложениями, не поддерживающими пространственный звук. Майкрософт поддержка пространственного звука также интегрирована в Media Foundation; приложения, использующие медиа-фонд, могут успешно воспроизводить содержимое Dolby Atmos без дополнительной реализации.
Пространственный звук с Майкрософт Spatial Sound поддерживает телевизоры, домашние кинотеатры и саундбары, поддерживающие Dolby Atmos. Пространственный звук также можно использовать с любой парой наушников, которые принадлежат потребителю, с обработкой звука платформой, используя Windows Sonic для наушников, Dolby Atmos для наушников или DTS Headphone:X.
Включение пространственного звука Майкрософт
Независимо от того, является ли он разработчиком или потребителем, пользователь должен включить Майкрософт Spatial Sound на своем устройстве, чтобы услышать пространственный звук.
Windows
На Windows компьютерах это делается с помощью страницы свойств для заданного выходного устройства звука. На панели управления "Звук " выберите выходное устройство и щелкните свойства устройства. В разделе "Пространственный звук " страницы, если устройство поддерживает пространственный звук, можно выбрать один из доступных форматов в раскрывающемся списке "Пространственный формат звука ".
Вы также можете включить Майкрософт пространственный звук, щелкнув правой кнопкой мыши значок Volume на панели задач.
Xbox
На Xbox возможности пространственного звука Майкрософт всегда доступны для потребителя и включаются через настройки Windows в разделе Общие -> Громкость и аудиовыход.
Кнопка звука HDMI заполняется всеми форматами, поддерживаемыми приемником аудио (AVR) или звуковой панелью или телевизором, который напрямую подключен к консоли Xbox. Параметр "Оптическое аудио" доступен только на старых Xbox консоли, а не на Xbox Series X|S и выше.
Обратите внимание, что выбор параметров "Dolby Atmos для домашнего кинотеатра (только HDMI)" или "DTS:X для домашнего кинотеатра (только HDMI)" в звуке HDMI предложит пользователю скачать и установить Dolby Access или приложения DTS Sound Unbound, если они еще не установлены.
Выберите Dolby Atmos для наушников, DTS Headphone:X или Windows Sonic для наушников из выпадающего списка формат гарнитуры в разделе звук гарнитуры
Снимок экрана страницы настроек общих параметров громкости и вывода, на котором показано включение пространственного звука для наушников.
Если пространственный звук Майкрософт недоступен (например, при воспроизведении на встроенных стереофонических динамиках ноутбука или если пользователь явно не включил пространственный звук Майкрософт, как указано выше), количество доступных динамических объектов, возвращаемых ISpatialAudioClient::GetMaxDynamicObjectCount приложению, будет равно 0.
HoloLens 2
В HoloLens 2 пространственный звук Майкрософт включен по умолчанию и использует аппаратную разгрузку DSP, разработанную специально для Windows Sonic для наушников.
Майкрософт Spatial Sound и аудиопромежуточное ПО
Многие разработчики приложений и игр используют сторонние решения аудио-рендеринг движков, которые часто включают сложные инструменты разработки и прослушивания. Майкрософт сотрудничает с несколькими из этих поставщиков решений для реализации Майкрософт пространственного аудио в существующих средах разработки. Это часто означает, что API, рассмотренные здесь, отделяются от представления приложения; они упаковываются в виде подключаемых модулей обработки цифровых сигналов (DSP), которые приложение может инициализировать, и которые средство аудио-реализации приложения может использовать для смешивания с платформой Майкрософт Spatial Sound, субмиксом или направления отдельных голосов в подключаемые модули динамического экземпляра объектов по мере необходимости. Обратитесь к поставщику решений по промежуточному аудио программному обеспечению, чтобы узнать об уровне поддержки пространственного звука Майкрософт.
Майкрософт пространственный звук для отрисовщиков звука
Многие аудио рендеры нацелены на API сеанса аудио Windows (WASAPI) IAudioClient конечной точкой, куда приложение передает буферы звуковых данных, согласованных по формату, приемнику звука WASAPI; доставленные буферы затем используются для смешивания с другими источниками, выполнения окончательной системной обработки и рендеринга.
Майкрософт пространственные конечные точки Spatial Sound реализуются как ISpatialAudioClient, который имеет множество сходств с IAudioClient. Он поддерживает статические звуковые объекты, формируя базу канала, с поддержкой до 8.1.4.4 каналов (8 каналов вокруг прослушивателя – Слева, Справа, Центр, Слева от центра, Справа от центра, Слева сзади, Справа сзади и Центр сзади; 1 канал низких частот; 4 канала выше прослушивателя; 4 канала ниже прослушивателя). Он поддерживает динамические звуковые объекты, которые могут быть произвольно расположены в трехмерном пространстве.
Общий шаблон кода реализации для ISpatialAudioClient :
- Создайте статические и /или динамические звуковые объекты.
- Заполняйте аудиобуфер каждого объекта на каждом кадре, чтобы система могла его отрисовать.
- Обновите трехмерные позиции динамических объектов по требованию — как часто (или редко), в зависимости от потребностей приложения.
Обратите внимание, что текущий формат вывода (динамики или наушники; Windows Sonic для наушников, Dolby Atmos или DTS Headphone:X) является абстракцией от реализации, описанной выше — разработчик приложения может сосредоточиться на пространственном звуке без необходимости изменять подход в зависимости от формата. Приложения, которые хотят, чтобы их поведение различалось в зависимости от формата выходных данных, могут запрашивать используемый формат, но абстракция означает, что от приложений не требуется обрабатывать эти форматы.
Интеграция пространственного звука Майкрософт с аудио-рендерами
Так как ISpatialAudioClient — это приемник звука, который потребляет данные, средство отрисовки звука имеет несколько вариантов взаимодействия с данными и доставки звуковых данных в него. Существует три часто используемых метода интеграции (и для звуковых названий с помощью промежуточного слоя вы можете увидеть эквивалентные подключаемые модули, доступные на основе этих вариантов):
- 7.1.4 панорамирование и голос управления: Отрисовщики, которые уже поддерживают 7.1 аудиораздельных каналов, могут просто добавить поддержку четырех дополнительных высотных каналов, поддерживаемых набором статичных каналов ISpatialAudioClient. Любое зонирование канала, которое они ранее выполняли (вероятно, уже используя координаты x, y, z), теперь можно обновить для включения в него каналов высоты. Это часто обеспечивает минимальное нарушение работы отрисовщика и звуковых процессов приложений, сигналов, потоков и управления смешиваниями. Используя наушники, обратите внимание, что полное звучание приложения будет пространственным — так что даже стерео музыка может ощущаться как вынесенная наружу от слушателя.
- Поддержка существующей конечной точки, а также добавление шины 7.1.4 (и панорамировщиков): некоторые заголовки могут выбирать использовать две конечные точки: существующую стерео WASAPI конечную точку (для содержимого "прямо в уши", не предназначенного для пространственной обработки) вместе со статической конфигурацией каналов ISpatialAudioClient, поддерживающей 7.1.4 (или даже до 8.1.4.4). Конечно, управление взаимодействием между двумя миксами представляет дополнительные проблемы создателям содержимого, хотя синхронизация поддерживается, так как экземпляры WASAPI и ISAC, активные в данный момент времени, используют одинаковый размер буфера и одинаковые часы для обработки.
- Используйте динамические звуковые объекты для определенных голосов или подмиксов: этот метод, возможно, предлагает наиболее подробное и точное позиционирование, но может привести к загрязнению микса, и включает использование динамических звуковых объектов ISpatialAudioClient. Обратите внимание, что метаданные и аудиобуфер доставляются в рендерер, поэтому эти звуки будут недоступными для остальной части микса данных приложения. Кроме того, поскольку существует ограниченное количество динамических звуковых объектов, которые доступны, системе обработки придется обдумать реализацию методов приоритизации — отсечения, совместного размещения звука, смешивания со статическим каналом и т. д. Игры часто использовали этот метод для отдельных "героев" звуков, таких как вертолет, который будет двигаться над слушателем.
Отрисовщики также могут смешивать и комбинировать эти подходы.
Ресурсы среды выполнения Майкрософт Spatial Sound: влияние.
В Windows и Xbox количество доступных голосов зависит от используемого формата. Форматы Dolby Atmos поддерживают в общей сложности 32 активных объекта (поэтому, если используется канальная основа 7.1.4, 20 дополнительных динамических звуковых объектов могут быть активными). Windows Sonic for Headphones поддерживает 128 общих активных объектов, при этом канал LFE не учитывается в качестве объекта, поэтому, когда используется канальная основа 8.1.4.4, 112 динамических звуковых объектов могут быть активными.
Для приложений универсальная платформа Windows, работающих на игровых консолях Xbox One, кодирование в режиме реального времени (для Dolby Atmos для домашнего театра, Dolby Atmos для наушников, DTS:X для домашнего театра, DTS Headphone:X и Windows Sonic для наушников) выполняется аппаратно без затрат процессорного времени.
Начиная с обновления ОС Xbox 2303 и GDK, ограничения ресурсов на Xbox обновляются до следующих значений:
| Формат | Максимальное количество статических объектов (Дно канала) | Максимальное число динамических объектов Xbox Series X|S, приложения UWP и >=2303 GDK |
Максимальное число динамических объектов Xbox Series X|S, XDK и <2303 GDK |
Максимальное число динамических объектов Xbox One |
|---|---|---|---|---|
| Dolby Atmos для домашнего театра (HDMI) | 12 (7.1.4) | 20 | 20 | 20 |
| DTS:X для домашнего театра (HDMI) | 17 (8.1.4.4) | 20 | 20 | 16 |
| Dolby Atmos (Наушники) | 17 (8.1.4.4) | 128 | 20 | 16 |
| DTS Headphone:X (наушники) | 17 (8.1.4.4) | 200 | 20 | 16 |
| Windows Sonic (Наушники) | 17 (8.1.4.4) | 220 | 20 | 15 |
Начиная с выпуска майского обслуживания для Windows сборки 22621, ограничения ресурсов на Windows устанавливаются на следующие значения:
| Формат | Максимальное количество статических объектов (Дно канала) | Максимальное число динамических объектов Windows |
Максимальное число динамических объектов HoloLens 2 |
|---|---|---|---|
| Dolby Atmos домашний кинотеатр (HDMI) | 12 (7.1.4) | 20 | N/A |
| DTS:X для домашнего театра (HDMI) | 17 (8.1.4.4) | 32 | N/A |
| Dolby Atmos (Наушники) | 17 (8.1.4.4) | 128 | N/A |
| Dolby Atmos (встроенные динамики) | 17 (8.1.4.4) | 128 | N/A |
| DTS Headphone:X (наушники) | 17 (8.1.4.4) | 128 | N/A |
| DTS:X Ultra (встроенные динамики) | 17 (8.1.4.4) | 128 | N/A |
| Windows Sonic (Наушники) | 17 (8.1.4.4) | 128 | 31 |
Для предыдущих Windows, Xbox и HoloLens выпусков применяются следующие ограничения ресурсов.
| Формат | Максимальное количество статических объектов (Дно канала) | Максимальное число динамических объектов Xbox One |
Максимальное число динамических объектов Windows |
Максимальное число динамических объектов HoloLens 2 |
|---|---|---|---|---|
| Dolby Atmos для домашнего театра (HDMI) | 12 (7.1.4) | 20 | 20 | N/A |
| DTS:X для домашнего театра (HDMI) | 17 (8.1.4.4) | 16 | 32 | N/A |
| Dolby Atmos (Наушники) | 17 (8.1.4.4) | 16 | 16 | N/A |
| Dolby Atmos (встроенные динамики) | 17 (8.1.4.4) | N/A | 16 | N/A |
| DTS Headphone:X (наушники) | 17 (8.1.4.4) | 16 | 32 | N/A |
| DTS Ultra (встроенные динамики) | 17 (8.1.4.4) | N/A | 32 | N/A |
| Windows Sonic для наушников | 17 (8.1.4.4) | 15 | 112 | 31 |
Приложения также должны учитывать следующие последствия ресурсов:
- Пропускная способность хранилища/диска: линейное содержимое, предварительно созданное для 7.1.4, обычно больше линейного содержимого 7.1 (хотя перцептуальные кодеки уже часто используют корреляцию каналов, чтобы сделать это значительно менее заметным, чем 50% дополнительных фактических каналов аудиоданных).
- Другие затраты на обработку цифровых сигналов: некоторые ранее глобальные эффекты теперь могут быть инстанцированными для каждого динамического звукового объекта. Кроме того, некоторые создатели содержимого могут потребовать обновления некоторых эффектов DSP для поддержки дополнительных каналов или их уникального использования.
Майкрософт пространственный звук и сигналы пространственной обработки звука
Майкрософт Spatial Sound ориентирован на имитацию расположения звука на идеализированной сфере вокруг слушателя. Windows Sonic для наушников, DTS Headphone:X и Dolby Atmos реализуют распределение звука и виртуализацию для наушников, но обратите внимание, что многие другие аспекты пространственного моделирования звука, как настраивается создателями контента, остаются на существующих движках. Создатели содержимого продолжают использовать существующие игровые инструменты и процессы, которые они ранее имели для таких пространственных сигналов, как Doppler, дистанцирование и фильтрация, окклюзии и препятствия, а также реверберации окружающей среды.
Дополнительные ресурсы
- Репозиторий Майкрософт GitHub с образцами пространственного звука
- Dolby предлагает ряд ресурсов поддержки, связанных с Dolby Atmos и приложением Dolby Access, включая базу знаний разработки приложений и поддержку Dolby Access .
Интерфейсы пространственного звука
| Интерфейс | Description |
|---|---|
| ISpatialAudioClient | Позволяет клиенту создавать звуковые потоки, которые выдают звук из положения в трехмерном пространстве. |
| ISpatialAudioObject | Представляет объект, предоставляющий звуковые данные для воспроизведения из расположения в трёхмерном пространстве относительно пользователя. |
| ISpatialAudioObjectRenderStream | Предоставляет методы для управления потоком отрисовки пространственного звукового объекта, включая запуск, остановку и сброс потока. |
| ISpatialAudioObjectRenderStreamNotify | Предоставляет уведомления для клиентов пространственного звука для реагирования на изменения состояния ISpatialAudioObjectRenderStream. |
Замечание
При использовании интерфейсов ISpatialAudioClient в заголовке пакета средств разработки Xbox One (XDK) необходимо сначала вызвать EnableSpatialAudio перед вызовом IMMDeviceEnumerator::EnumAudioEndpoints или IMMDeviceEnumerator::GetDefaultAudioEndpoint. Невыполнение этого приведет к ошибке E_NOINTERFACE, которая будет возвращена из вызова функции Activate. EnableSpatialAudio доступен только для продуктов XDK и не требует вызова для приложений универсальная платформа Windows, работающих на Xbox One, а также для устройств, которые не являются Xbox One.
Пространственные звуковые структуры
| Структура | Description |
|---|---|
| SpatialAudioObjectRenderStreamActivationParams | Представляет параметры активации для потока пространственной отрисовки звука. |
| SpatialAudioClientActivationParams | Представляет необязательные параметры активации для потока рендеринга пространственного звука. |
Перечисления пространственных звуков
| Enumeration | Description |
|---|---|
| AudioObjectType | Указывает тип ISpatialAudioObject. |