Steam Audio

@freeman_valve @

I am using 4.20.3 and I don’t see Steam Audio reverb option for Android platform. Do you have an ETA for reverb support on Android ? Thanks

Hi everyone.
I’d like to ask id any Dev knows when the Embree acceleration method will be implemented in Unreal ?
It’s in Unity already, and according to steam accelerates audio raytracing by up to 5/6 times.
I’m starving for this.

Thanks !

I get an ‘Plugin failed to load’ error when I launch a packaged dedicated server with SteamAudio enabled in the project. The client works fine, with the SteamAudio effects when played in single player.

Has anyone else encountered this and know of a fix (other than I guess building the Dedicated Server separately with SteamAudio disabled)? Using 4.20.3.

Constant crashes before exporting scene. Yes, I know, according to documentation, scene must be exported. But it’s still undesired behaviour.


[2019.01.15-16.45.49:049] 43]LogThreadingWindows: Error: Runnable thread AudioMixerRenderThread(2) crashed.
[2019.01.15-16.45.49:049] 43]LogWindows: Error: === Critical error: ===
[2019.01.15-16.45.49:049] 43]LogWindows: Error:
[2019.01.15-16.45.49:049] 43]LogWindows: Error: Assertion failed: (Index >= 0) & (Index < ArrayNum) [File:D:\Build\++UE4\Sync\Engine\Source\Runtime\Core\Public\Containers/Array.h] [Line: 611]
[2019.01.15-16.45.49:049] 43]LogWindows: Error: Array index out of bounds: 1 from an array of size 0
[2019.01.15-16.45.49:049] 43]LogWindows: Error:
[2019.01.15-16.45.49:049] 43]LogWindows: Error:
[2019.01.15-16.45.49:049] 43]LogWindows: Error: [Callstack] 0x00007ffb3e7da388 KERNELBASE.dll!UnknownFunction ]
[2019.01.15-16.45.49:049] 43]LogWindows: Error: [Callstack] 0x00007ffb0effcd1a UE4Editor-Core.dll!FWindowsErrorOutputDevice::Serialize() [d:\build\++ue4\sync\engine\source\runtime\core\private\windows\windowserroroutputdevice.cpp:63]
[2019.01.15-16.45.49:049] 43]LogWindows: Error: [Callstack] 0x00007ffb0edda967 UE4Editor-Core.dll!FOutputDevice::LogfImpl() [d:\build\++ue4\sync\engine\source\runtime\core\private\misc\outputdevice.cpp:71]
[2019.01.15-16.45.49:049] 43]LogWindows: Error: [Callstack] 0x00007ffb0ed10df7 UE4Editor-Core.dll!FDebug::AssertFailed() [d:\build\++ue4\sync\engine\source\runtime\core\private\misc\assertionmacros.cpp:417]
[2019.01.15-16.45.49:049] 43]LogWindows: Error: [Callstack] 0x00007ffad7fb617d UE4Editor-SteamAudio.dll!SteamAudio::FPhononReverb::OnReleaseSource() [d:\build\++ue4\sync\engine\plugins\runtime\steam\steamaudio\source\steamaudio\private\phononreverb.cpp:235]
[2019.01.15-16.45.49:049] 43]LogWindows: Error: [Callstack] 0x00007ffafccc9b31 UE4Editor-AudioMixer.dll!Audio::FMixerSourceManager::ReleaseSource() [d:\build\++ue4\sync\engine\source\runtime\audiomixer\private\audiomixersourcemanager.cpp:383]
[2019.01.15-16.45.49:049] 43]LogWindows: Error: [Callstack] 0x00007ffafccc4cd2 UE4Editor-AudioMixer.dll!Audio::FMixerSourceManager::PumpCommandQueue() [d:\build\++ue4\sync\engine\source\runtime\audiomixer\private\audiomixersourcemanager.cpp:2132]
[2019.01.15-16.45.49:049] 43]LogWindows: Error: [Callstack] 0x00007ffafcc93a41 UE4Editor-AudioMixer.dll!Audio::FMixerSourceManager::ComputeNextBlockOfSamples() [d:\build\++ue4\sync\engine\source\runtime\audiomixer\private\audiomixersourcemanager.cpp:2062]
[2019.01.15-16.45.49:049] 43]LogWindows: Error: [Callstack] 0x00007ffafccbc6b6 UE4Editor-AudioMixer.dll!Audio::FMixerDevice::OnProcessAudioStream() [d:\build\++ue4\sync\engine\source\runtime\audiomixer\private\audiomixerdevice.cpp:504]
[2019.01.15-16.45.49:049] 43]LogWindows: Error: [Callstack] 0x00007ffafccb9b40 UE4Editor-AudioMixer.dll!Audio::FOutputBuffer::MixNextBuffer() [d:\build\++ue4\sync\engine\source\runtime\audiomixer\private\audiomixer.cpp:128]
[2019.01.15-16.45.49:049] 43]LogWindows: Error: [Callstack] 0x00007ffafccd25b8 UE4Editor-AudioMixer.dll!Audio::IAudioMixerPlatformInterface::RunInternal() [d:\build\++ue4\sync\engine\source\runtime\audiomixer\private\audiomixer.cpp:507]
[2019.01.15-16.45.49:050] 43]LogWindows: Error: [Callstack] 0x00007ffafccd22ee UE4Editor-AudioMixer.dll!Audio::IAudioMixerPlatformInterface::Run() [d:\build\++ue4\sync\engine\source\runtime\audiomixer\private\audiomixer.cpp:532]
[2019.01.15-16.45.49:050] 43]LogWindows: Error: [Callstack] 0x00007ffb0effc500 UE4Editor-Core.dll!FRunnableThreadWin::Run() [d:\build\++ue4\sync\engine\source\runtime\core\private\windows\windowsrunnablethread.cpp:76]
[2019.01.15-16.45.49:050] 43]LogWindows: Error: [Callstack] 0x00007ffb0efecac1 UE4Editor-Core.dll!FRunnableThreadWin::GuardedRun() [d:\build\++ue4\sync\engine\source\runtime\core\private\windows\windowsrunnablethread.cpp:33]
[2019.01.15-16.45.49:050] 43]LogWindows: Error: [Callstack] 0x00007ffb40203034 KERNEL32.DLL!UnknownFunction ]
[2019.01.15-16.45.49:050] 43]LogWindows: Error: [Callstack] 0x00007ffb42443691 ntdll.dll!UnknownFunction ]
[2019.01.15-16.45.49:050] 43]LogWindows: Error:
[2019.01.15-16.45.49:050] 43]LogWindows: Error: Crash in runnable thread AudioMixerRenderThread(2)
[2019.01.15-16.45.49:061] 43]LogThreadingWindows: Error: Runnable thread RenderThread 3 crashed.

It seems that Steam Audio is abandoned. The bug described a year ago still persists. So, Steam Audio can’t be used in its current state for games with more then one map.

Can confirm the scene loading problem. The scene is loaded once in InitializePluginListeners at startup and then seemingly never again.

Hello everyone,

Steam Audio plugin just got some love. I updated it to SDK 2.0 beta15: https://github.com/EpicGames/UnrealEngine/pull/5940

This update includes full thread support & Embree ray tracing. It’s able to give you about %200 speed boost on bake times, and increases real time performance drastically. There are also various minor changes.

Also fixed the bug where Steam Audio was not able to load new world’s scene data: https://github.com/EpicGames/UnrealEngine/pull/5979

Cheers!

@muchcharles

@YuriNK

@

@

@Raphy-san

Wow, that’s great! I’ll give it a try later this week - need to download UE4 sources.

interesting. Maybe I will give it a test later, but sadly we scrapped that whole steam audio plugin in favour of fmod since valve never answered anywhere (and also for other reasons).

Just a heads up, I was able to fix reverb crash problem introduced with beta 16.

Now we’re able to use latest version on Steam Audio in Unreal Engine, beta 17 :slight_smile:

I have updated same PR : https://github.com/EpicGames/UnrealEngine/pull/5940

I’m going to implement dynamic actor support soon, which is introduced with beta 17. Can’t wait to see results :slight_smile:

Hi @dyanikoglu, I tried your update to beta 15 (pull request #5940). I don’t want to recompile a whole engine from sources, so didn’t try the second fix. As for SteamAudio, I compiled it as a project plugin.

Seems that everything works well (improvement of baking time is impressive!). Still, I faced a crash once:


Unhandled exception

KERNELBASE
phonon
phonon
phonon
UE4Editor_SteamAudio!SteamAudio::FPhononReverb::ProcessMixedAudio() [g:\mydocuments\unreal projects\potab\plugins\steamaudio\source\steamaudio\private\phononreverb.cpp:312]
UE4Editor_Engine!FSoundEffectSubmix::ProcessAudio() [d:\build\++ue4\sync\engine\source\runtime\engine\private\soundeffectsubmix.cpp:23]
UE4Editor_AudioMixer!Audio::FMixerSubmix::ProcessAudio() [d:\build\++ue4\sync\engine\source\runtime\audiomixer\private\audiomixersubmix.cpp:681]
UE4Editor_AudioMixer!Audio::FMixerSubmix::ProcessAudio() [d:\build\++ue4\sync\engine\source\runtime\audiomixer\private\audiomixersubmix.cpp:600]
UE4Editor_AudioMixer!Audio::FMixerDevice::OnProcessAudioStream() [d:\build\++ue4\sync\engine\source\runtime\audiomixer\private\audiomixerdevice.cpp:504]
UE4Editor_AudioMixer!Audio::FOutputBuffer::MixNextBuffer() [d:\build\++ue4\sync\engine\source\runtime\audiomixer\private\audiomixer.cpp:128]
UE4Editor_AudioMixer!Audio::IAudioMixerPlatformInterface::RunInternal() [d:\build\++ue4\sync\engine\source\runtime\audiomixer\private\audiomixer.cpp:507]
UE4Editor_AudioMixer!Audio::IAudioMixerPlatformInterface::Run() [d:\build\++ue4\sync\engine\source\runtime\audiomixer\private\audiomixer.cpp:532]
UE4Editor_Core!FRunnableThreadWin::Run() [d:\build\++ue4\sync\engine\source\runtime\core\private\windows\windowsrunnablethread.cpp:96]

@YuriNK

Can you try again with my latest force push into the PR? I also fixed that crash.

and also as a side note, did you correctly placed .dll and .lib files into third party directories (I assume you did, but it would be better if you can confirm that before proceeding further)?

Update about movable actor support:

I was able to fully implement the feature into plugin by reverse engineering Unity plugin, but somehow instanced meshes are still not affecting simulation… Current situation is a little bit hopeless. If anyone wants to check out the implementation & provide some feedback, commits are there: https://github.com/ProjectBorealisAdmin/UnrealEngine/tree/4.23-PB-SteamAudio

I’ll try the lastest update to beta 17 at this weekend.

I added new dlls, libs and header to the plugin itself as a third-party module.

@dyanikoglu
I updated to beta 17 yesterday. Everything is good so far.

What’s the situation with iOS support? I see Android, Linux, Windows, even OSX, but no iOS?

It’s not supported by the Steam Audio SDK itself.

Steam Audio is going to be updated in 4.24, it’s officially confirmed in my PR :slight_smile:

https://github.com/EpicGames/UnrealEngine/pull/5940

Congratulations!

@dyanikoglu
Here https://github.com/EpicGames/UnrealEngine/pull/5979 ] in comments you said about OnWorldCleanup and OnPostWorldInitialization delegates. Does it mean it’s possible to keep all changes within SteamAudio plugin and avoid changing engine’s sources?