Audiokinetic's Community Q&A is the forum where users can ask and answer questions within the Wwise and Strata communities. If you would like to get an answer from Audiokinetic's Technical support team, make sure you use the Support Tickets page.

+1 vote
UE4使用Editor运行Postevent传入akaudioevent或者eventname都可以正常播放。但在Standalone运行时,传入eventname就不能正常播放,error:not found event ID.看官方说可能使soundbank的问题。我手动加载soundbank后postevent还是不行。这是什么问题呢?希望能有人解答,不胜感激!
in General Discussion by 朋举 (120 points)

1 Answer

0 votes
Hello!

I had the same issue with the new event based system. Found a solution, but i am not sure what the "official way" is how to do it.

The problem is the AkInitBank is not getting packaged in the cooking process. You can confirm this by unpacking your .pak files from the \Content\ Folder of your cooked build.

Please see https://forums.unrealengine.com/community/general-discussion/105459-unpacking-a-pak-file on how to do it.

After unpacking, go to the \Content\ WWise folder where your Init Bank Asset is supposed to be. You won't find it.

To Fix it, you have to go to \WWise\Source\AkAudio\Classes\AkAudioBank.h and go to the Class UAkAudioBank.

Replace the UCLASS() with UCLASS(meta=(BlueprintSpawnableComponent))

Compile the project.

Now make a UAkAudioBank hard reference to your InitBank in some file (e.g. GameInstance or GameMode) which also needs to referenced / used somewhere.

Right Click on Your Init Bank Asset -> View References, in the new window, it should show a reference left of your asset.

The Init Bank is now referenced and should be included in the cooking process.

 

Would be nice to know what the WWise Team thought what the "official way" is, couldn't find anything in the documentation.

 

Cheers

 

edit: Also i've renamed the Bank to "Init" only, because i've noticed they're scanning for a hardcoded "Init" name Bank

constexpr auto AkInitBankName = TEXT("Init"); in AKAudioDevice.h

But i think the actual fix was the hardref
by Carsten Z. (220 points)
...