Rift音频

当为Rfit配置音频时,你需要判断是否Rift耳机是有效的和暂停音效当你的应用没有焦点时。

用户能使能Rift耳机和扩音器在Oculus应用中或者使用默认的Window音频设备。下面的屏幕截图展示Rift耳机不使能和扩音器使能:



耳机设置通过函数ovr_GetAudioDeviceOutGuid自动处理,它返回目标硬件的GUID当播放音频时。类似的,使用ovr_GetAudioDeviceInGuid来识别使用的作为输入的扩音器设备。

FMOD

如果你察觉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
}
Wwise

如果你觉察到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);
}    
VR声音最佳实践

音频是一个重要的部分在虚拟体验中,它也是重要的所有的VR应用提供一个舒服的听觉效果为用户。开发者应用选择一个合理的声音大小(它是一致大小的在不同体验中)。为了达到这,Oculus推荐下面的最佳实践。

首先,目标-18LUFS在最终的配置中,使用工具就像Avid的pro Limited Plugin,Nugen的VisLM,KlangFreund LUFS Meter,Audacity VuMeter,或者类似的响度测量工具。

其次,测量你的体验反对的音频大小在发布的Oculus体验中,特别是周围音频在房间和理想仓中体验。设置所有系统的滚动条让理想仓和房间声音舒服,随后你的体验配置这个声音大小。

最后,配置你的应用使用Rift耳机。这能确保你正创建和配置的声音有一个频繁适当内容为耳机(很多Oculus用户会使用)。

为了坚持这是指导,我能能保证我们的Oculus VR用户会有一个令人舒适的音频体验。


你可能感兴趣的:(Rift音频)