社区问答

欢迎来到 Audiokinetic 社区问答论坛。在此,Wwise 和 Strata 用户可互帮互助。如需我们团队直接提供协助,请前往技术支持申请单页面。若要报告问题,请在 Audiokinetic Launcher 中选择“报告错误”选项(注意,问答论坛并不会接收错误报告)。我们内部设有专门的错误报告系统,会有专人查看报告并设法解决问题。

要想尽快得到满意的解答,请在提问时注意以下几点:

  • 描述尽量具体:比如,想达到什么样的目的,或者具体哪里有问题。
  • 包含关键细节:比如,Wwise 和游戏引擎版本以及所用操作系统等等。
  • 阐明所做努力:阐明自己为了排除故障都采取了哪些措施。
  • 聚焦问题本身:聚焦于问题本身的相关技术细节,以便别人可以快速找到解决方案。

0 投票

Hi guys.

I'm working on connecting a new 3D audio headset with Unity 5.2.2f1 and Wwise 5.1.2. So far everyone goes right except when the headset is connected via wireless Bluetooth and when I use Wwise. I get voice starvations in the profiler when running the app on Android, and the audio is stuttering. If I circumvent Wwise and just play audio from an audio source in Unity and profile this in Wwise, I still get messages of voice starvation, but the sound is without stutters, so really it's working fine. In short this is the outcome of my experience with and without audio cable between the headset and the Android phone:

Cable + Unity audio = No Voice Starvation messages, No Stutters

Bluetooth wireless + Unity audio = Voice Starvation messages, No Stutters

Cable + Wwise audio = No Voice Starvation messages, No Stutters

Bluetooth wireless + Wwise audio = Voice Starvation messages + Stutters

I have a log snippet of the voice starvation messages in Wwise here: https://dl.dropboxusercontent.com/u/9959158/AWE/Wwise-Profiler-Log-BluetoothHeadsetVoiceStarvationIssue.prof

 

On this page https://www.audiokinetic.com/library/2015.1_5418/?source=Help&id=setting_output_buffer_latency you can set the buffer latency for Wwise authoring tool itself. 

Is it possible to adjust something similar like this for the various devices Wwise eventually will be deployed to? I want to be able to use a BT device without Wwise + Unity creating voice starvations.

In Unity I have tried setting DSP Buffer Size in AudioManager to Default, Best Latency and Best Performance without better results. I tried changing sample rate lower without better results. I use Vorbis format but tried packing the soundbank with Wav PCM files instead in Wwise to no succes either. I even tried removing all Wwise audio sources in Unity, started profiling the app, and it still gives me voice starvations despite no audio is playing! The Audio CPU usage has never been over 8%, and usually hovers around 3-5%, with about 0.8% without any audio sources.

All in all it seems like Wwise doesn't like bluetooth wireless connections? Can someone please help me figuring out what's wrong with this?

 

分类:General Discussion | 用户: Egil S. (1.1k 分)
修改于 用户:Egil S.
Still very much looking for an answer!
There's clearly still voice starvation going on if I change Wwise from Profile to Release, so it isn't due to profiling. Anyone?
Unfortunately, there is not much that can be done.  The only solution is adding more latency buffers to avoid the glitches (change AkPlatformInitSettings.uNumRefillBuffers to 5 or 6).  This is a common problem on Android and iOS with bluetooth, altough some hardware models are more affected than others.  Bluetooth is not a protocol made for interactivity, it was made for streaming low-bandwidth data (compressed voice band-limited at 8khz).   You can read the bug reports at Google:
https://code.google.com/p/android/issues/detail?id=31556
https://code.google.com/p/android/issues/detail?id=58265
https://code.google.com/p/android/issues/detail?id=187917

Sorry to say, but there is no solution.
Great answer which led me to solving the issue. I did not find any uNumRefillBuffers, but I changed uNumRefillsInVoice = 5 which worked!! Woohoo :)
I guess this will increase latency a bit, but that's a compromise I'm willing to accept.

Thanks again for responding :)

Please sign-in or register to answer this question.

...