Community Q&A

Welcome to Audiokinetic’s community-driven Q&A forum. This is the place where Wwise and Strata users help each other out. For direct help from our team, please use the Support Tickets page. To report a bug, use the Bug Report option in the Audiokinetic Launcher. (Note that Bug Reports submitted to the Q&A forum will be rejected. Using our dedicated Bug Report system ensures your report is seen by the right people and has the best chance of being fixed.)

To get the best answers quickly, follow these tips when posting a question:

  • Be Specific: What are you trying to achieve, or what specific issue are you running into?
  • Include Key Details: Include details like your Wwise and game engine versions, operating system, etc.
  • Explain What You've Tried: Let others know what troubleshooting steps you've already taken.
  • Focus on the Facts: Describe the technical facts of your issue. Focusing on the problem helps others find a solution quickly.

0 votes
While developing on the Quest device we came across an issue with the Convolution Reverb. We reproduced the issue in 2018.1.0 and 2018.1.4.

It looks like the plugin may be stuck in a loop. These are all involved threads at the time of the hang.

1)

CAkLock::Lock() Line 58
CAkAudioMgr::Perform() Line 464
CAkAudioMgr::RenderAudio() Line 368

2)

libc.so!syscall    
libc.so!pthread_cond_wait    
AK::StreamMgr::CAkIOThread::IOSchedThread(void * lpParameter) Line 219    C++

3)

libc.so!syscall    
libc.so!sem_wait    
AKPLATFORM::AkWaitForEvent(AkEvent & in_event) Line 133    C++
AkMonitor::MonitorThreadFunc(void * lpParameter) Line 1267    C++

4)

libc.so!syscall    
libc.so!sem_wait    
AKPLATFORM::AkWaitForEvent(AkEvent & in_event) Line 133    C++
CAkThreadedBankMgr::BankThreadFunc(void * lpParameter) Line 128    C++

5)

libc.so!syscall    
libc.so!sem_wait    
AKPLATFORM::AkWaitForEvent(AkEvent & in_event) Line 133    C++
CAkOutputMgr::SuspendedThread(void * lpParameter) Line 1393    C++

6)

AkMismatchBuffer::GetOutputAudio(AkAudioBuffer & in_processBuffer, AkAudioBuffer & out_pipelineBuffer, AkMismatchBuffer * const this) Line 319    C++
CAkConvolutionReverbFX::Execute(CAkConvolutionReverbFX * const this, AkAudioBuffer * io_pBuffer) Line 792    C++
CAkVPLMixBusNode::ProcessFX(CAkVPLMixBusNode * const this, AkUInt32 in_fxIndex, AkPipelineBufferBase *& io_rpAudioBuffer, bool & io_bfxProcessed) Line 1356    C++
CAkVPLMixBusNode::ProcessAllFX(CAkVPLMixBusNode * const this) Line 1316    C++
CAkVPLMixBusNode::GetResultingBuffer(CAkVPLMixBusNode * const this) Line 1269    C++
CAkLEngine::TransferBuffer(AkVPL * in_pVPL) Line 117    C++
CAkLEngine::PerformMixing(bool in_bRender) Line 2792    C++
CAkLEngine::PerformMixing(bool in_bRender) Line 2761    C++
CAkLEngine::SoftwarePerform() Line 2315    C++
CAkLEngine::Perform() Line 282    C++
CAkAudioMgr::Perform(CAkAudioMgr * const this) Line 543    C++
CAkAudioThread::EventMgrThreadFunc(void * lpParameter) Line 66    C++

 

After disabling the Convolution Reverb everything seems to work as expected. Also note that CAkAudioMgr::Perform is being called from different threads. We would appreciate if a Wwise dev could take a look at this. On a side note, we noticed network discovery with the Quest device connected via wireless stopped working with 2018.1.4 while direct IP connection works.
in General Discussion by Thomas W. (110 points)

Please sign-in or register to answer this question.

...