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.

+2 votes

Hey all,

I found an extremely annoying bug that popped up after updating from Wwise 2022.1.8 to 2023.1.4, and from Unreal 5.3 to 5.4: external sources don’t work anymore when cold starting the editor. Simply regenerating soundbanks using Wwise authoring makes external sources to work again, but this is only feasible for sound designers who have Wwise installed.

Is this already a known issue?

-----------

Edit:

We found that by commenting out line 531 of WwiseSimpleExtScrManager.cpp (ExternalSourceLoadCount = 0;) the bug doesn't happen, however this seems hacky :) What would be the proper way to fix this?

in General Discussion by Félix Tiévant (280 points)
edited by Félix Tiévant

I have additional information about this ticket. 

External source events are always missing their media and thus fail to play. The only way to 'fix' this is having the External Source Default Media table is assigned in the external source settings and have every external source assigned default media in the table. 

If this is not done, media never loads in because of the flawed loading logic in code. The logic sequence goes as follows:

1. Call UWwiseExternalSourceStatics::SetExternalSourceMedia...
2. FWwiseSimpleExtSrcManager::SetExternalSourceMedia checks if external source state exsists (ExternalSourceStatesById)
3. If it does exist, it further checks SharedSimpleExtSrcManager->CookieToMediaId, which at this point is not yet assigned because we are loading the first media for the external source
4. ExternalSourceLoadCount is forced-set to 0
5. SharedSimpleExtSrcManager->CookieToMediaId.Add is called, but since ExternalSourceLoadCount is set to 0, the method hits early return without ever calling SharedSimpleExtSrcManager->LoadExternalSourceMedia

Having the External Source Default Media table assigned in external sources settings circumvents the issue we are seeing in points 3 and 4. External source is considered loaded, because it has default media assigned. 
The external sources documentation states that the External Source Default media is optional, but this doesn't seem to be the case. External sources never work without this table set in the settings.
I hope it helps fix the issue in the next release yes

Please sign-in or register to answer this question.

...