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.

+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 (130 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.

...