Впервые на русском: Документация Oculus для разработчиков. Руководство ПК SDK для разработчика. Аудио Oculus Rift

Продолжаем публикацию эксклюзивной информации для разработчиков от Oculus. Новый раздел посвящён аудио Oculus Rift.

Документация Oculus для разработчиков:

  1. Введение в рекомендации
  2. Бинокулярное зрение, стереоскопическая визуализация и индикаторы глубины
  3. Поле зрения и масштаб
  4. Методы рендеринга
  5. Движение
  6. «Болезнь симуляции»
  7. Пользовательский интерфейс
  8. Пользовательский ввод и навигация
  9. Заключение
  10. Введение в SDK для ПК
  11. Руководство разработчика
  12. Руководство по началу работы с ПК SDK
  13. Руководство ПК SDK для разработчика. Интеграция LibOVR
  14. Инициализация и перечень сенсоров
  15. Рендеринг в Oculus Rift
  16. Расширенная настройка рендеринга
  17. Управление связью с виртуальной реальностью
  18. Система безопасности Oculus Guardian
  19. Аудио Oculus Rift

Чтобы оставаться в курсе новостей о виртуальной реальности, подписывайтесь на наш Telegram!

При настройке звука для Oculus Rift вам нужно определить, активны ли наушники Oculus Rift и приостановить аудио тогда, когда ваше приложение не отвечает.

Пользователь может включить наушники и микрофон для Oculus Rift в приложении Oculus App или использовать звуковые устройства Windows по умолчанию. Конфигурация производится в приложении Oculus App в меню Settings («Настройки») -> Devices («Устройства») -> Headset («Шлем виртуальной реальности»). На следующем скриншоте показано, что наушники Oculus Rift отключены и включен микрофон:

Рисунок 14. Конфигурация аудио

Настройка наушников обрабатывается автоматически с помощью функции ovr_GetAudioDeviceOutGuid (расположенной в OVR_CAPI_Audio.h), которая возвращает GUID для устройства, на которое нужно настроить таргетинг при воспроизведении аудио. Аналогичным образом, используйте ovr_GetAudioDeviceInGuid для идентификации устройства микрофона, используемого для ввода информации.

FMOD D для разработчиков Oculus Rift

Если вы обнаружили, что наушники Oculus Rift включены, используйте код, аналогичный приведенному ниже, для FMOD:

 

ERRCHECK(FMOD::System_Create(&sys));

GUIDguid;

ovr_GetAudioDeviceOutGuid(&guid);

 

intdriverCount=0;

sys->getNumDrivers(&driverCount);

 

intdriver=0;

while(driver<driverCount)

{

charname[256]={0};

FMOD_GUIDfmodGuid={0};

sys->getDriverInfo(driver,name,256,&fmodGuid,nullptr,nullptr,nullptr);

 

if(guid.Data1==fmodGuid.Data1&&

guid.Data2==fmodGuid.Data2&&

guid.Data3==fmodGuid.Data3&&

memcmp(guid.Data4,fmodGuid.Data4,8)==0)

{

break;

}

 

++driver;

}

 

if(driver<driverCount)

{

sys->setDriver(driver);

}

else

{

// error rift not connected

}

 

Инструкции по использованию FMOD с движком Unreal Engine см. ниже в разделе «Unreal и FMOD.

Wwise для разработчиков Oculus Rift

Если вы обнаружили, что наушники Oculus Rift включены, используйте код, аналогичный ниже проведённому, для Wwise:

 

AkInitSettings initSettings;

AkPlatformInitSettings platformInitSettings;

AK::SoundEngine::GetDefaultInitSettings( initSettings );

AK::SoundEngine::GetDefaultPlatformInitSettings( platformInitSettings );

 

// Configure initSettings and platformInitSettings…

 

WCHAR outStr[128];

if (OVR_SUCCESS(ovr_GetAudioDeviceOutGuidStr(outStr)))

{

initSettings.eMainOutputType = AkAudioAPI::AkAPI_Wasapi;

platformInitSettings.idAudioDevice = AK::GetDeviceIDFromName(outStr);

}

 

Инструкции по использованию Wwise с движком Unity 5 см. ниже в разделах «Unity 5 и Wwise». Инструкции по использованию Wwise с движком Unreal Engine см. ниже в разделе «Unreal и FMOD».

Unity 5

Аудиовход и аудиовыход автоматически используют микрофон и наушники Oculus Rift, если не настроено использовать звуковое устройство Windows по умолчанию пользователем в приложении Oculus. События OVRManager.AudioOutChanged и AudioInChanged происходят, когда аудиоустройства изменяются, что делает невозможным воспроизведение аудио без перезапуска.

Unity 5 и Wwise

Для того, чтобы настроить Wwise на использование настроенного аудиоустройства в Unity 5, передайте настроенное пользователем имя аудиоустройства/GUID (установленное в приложении Oculus) в функцию AkSoundEngine.GetDeviceIDFromName(), расположенную в AkInitializer.cs.

Для того, чтобы получить GUID аудиоустройства из libOVR, вы должны включить Oculus Utilities unitypackage, который предоставляет эту строку через класс OVRManager.

Следующая функция должна быть вызвана до AkSoundEngine.Init(…):

 

void SetRiftAudioDevice(AkPlatformInitSettings settings)

{

string audioDevice = OVRManager.audioOutId;

uint audioOutId = AkSoundEngine.GetDeviceIDFromName (audioDevice);

settings.idAudioDevice = audioOutId;

}

 

Передайте AkPlatformInitSettings в функцию выше и используйте ее для инициализации звукового движка Ak.

Примечание: OVRManager.audioOutId будет устаревать в будущем. Эти незначительные изменения не должны влиять на интеграцию.

VR Audio Output в Oculus Store -> Settings («Настройки) -> Devices («Устройства») -> Rift Headset («Шлем виртуальной реальности») может использоваться для настройки подключаемого микрофона для использования в звуковом двигателе Ak. GUID для этого отображается через OVRManager.audioInId.

Unity 4

Аудиовход и аудиовыход автоматически используют микрофон и наушники Oculus Rift, если не настроено использовать звуковое устройство Windows по умолчанию пользователем в приложении Oculus.

Микрофон Oculus Rift по умолчанию не используется при вызове Microphone.Start(null,..). Найдите запись в Microphone.devices, которая содержит слово Rift, и используйте её.

Unreal

Когда запущены приложения Unreal PC, если включен плагин OculusRift и установлена служба Oculus VR Runtime Service, приложения автоматически переопределяют графические и звуковые устройства Windows по умолчанию и направляет их в Oculus Rift. Oculus VR Runtime Service устанавливается с помощью приложения Oculus.

Если ваше приложение не предназначено для работы в виртуальной реальности, не включайте плагин OculusRift. В противном случае возможно, что аудио и/или видео будет неправильно направляться на Oculus Rift при запуске приложения.

В качестве альтернативы пользователи могут отключить загрузку всех плагинов шлема виртуальной реальности, указав в командной строке «-nohmd».

Unreal и Wwise

Для того, чтобы использовать Wwise в любой версии Unreal, используйте Wwise Unreal Plug-in, предоставляемый Audiokinetic здесь: https://www.audiokinetic.com/library/2016.1.0_5775/?source=UE4&id=index.html.

Примечание: Выше ссылка для сборки Wwise 2016.1 build 5775 для использования с Unity 4.12. Не забудьте выбрать соответствующую сборку для версии Unity в левом верхнем углу.

Unreal и FMOD

Для демонстрации того, как направить наушники Oculus Rift с помощью FMOD в Unreal 4, см. раздел «FMOD» выше.

Oculus Audio Spatialization

Oculus Audio SDK, доступный на нашей странице загрузки, предоставляет бесплатные, простые в использовании плагины пространственных расширений для движков и промежуточного программного обеспечения. Наши функции пространственной поддержки работают с разработчиками Oculus Rift и Gear VR.

Для подробного обсуждения пространственного звучания и звука d виртуальной реальности мы рекомендуем начать с руководства «Введение в аудио в виртуальной реальности» и «Oculus Audio SDK».

Дополнительную информацию об использовании плагинов Oculus spatializer с Unity и Unreal см. в разделах «Unity Audio» и «Unreal VR Audio».

Рекомендации по выбору уровня звука в виртуальной реальности

Аудио – важная часть опыта виртуальной реальности, и очень важно, чтобы все приложения виртуальной реальности обеспечивали удобный уровень прослушивания для пользователей. Разработчики должны ориентироваться на разумный уровень звука, который соответствует различному пользовательскому опыту. Для того, чтобы достичь этого, Oculus рекомендует следующие рекомендации.

Во-первых, установите -18 LUFS во время финального микса, используя такие инструменты, как Avid’s Pro Limited Plugin, VisLM от Nugen, Klangfreund LUFS Meter, Audacity VuMeter или аналогичные инструменты измерения громкости.

Во-вторых, измерьте свой контент в сравнении с уровнями звука в опубликованных опытах Oculus, особенно с аудио в Home и Dreamdeck. Установите общий уровень звука системы для того, чтобы звук Dreamdeck и Home были удобными, а затем настройте микширование для вашего контента на том же уровне.

Наконец, добавьте музыку в приложение и прослушайте её, используя наушники Oculus Rift. Это будет гарантировать, что звуки, которые вы создаете и добавляете, имеют частотный контент, соответствующий наушникам, которые будут использовать большинство пользователей Oculus Rift.

При соблюдении этих рекомендаций мы можем гарантировать, что наши пользователи виртуальной реальности от Oculus получат приятный звук.

 

Примечание: Данный материал представлен для ознакомления, при перепечатывании ссылка на оригинал обязательна. Если вы хотите принять участие в помощи проекту, пишите на editor@vrgeek.ru

 

Если вы разработчик и вы хотите продолжить свою карьеру в лучших компаниях России, пишите на editor@vrgeek.ru с пометкой «Работа мечты», и мы поможем вам с этим.