Steam Audio

so, i got occlusion to work, but it seems to be all or nothing. meaning if you walk behind an object, i.e., a wall, it will occlude the sound entirely regardless of setting. I thought the Frequency Dependent Transmission Direct Occlusion Method would handle this based on material type and hopefully, thickness/volume of the actual mesh it was attached to, but it seems to have no effect at all. is there something else i need to do to set this up?
The behavior is captured here (the sphere is the water emitter source):

Settings in the pictures attached.

additionally, FYI, if when i set the direct occlusion method to Raycast (meaning a single raycast, i believe), i am getting dropouts on the water loop. all settings are identical to the previous video with the exception of changing Direct Occlusion Method from Partial to Raycast:

I tried getting new ue4.19 steam audio working, but it is still quite a mess…
I set the inis up like I am supposed to do for 4.19 (I also tried -audiomixer in addition), but the occlusion never worked in standalone game. Only single viewport (multiple with soloaudio is glitching) within the ed seems to support occlusion in my case…
In every case the audio was glitching when spawning sounds which are attached to the pawn. (edit: hmm noticed that it magically disappeared in the ed, will check the packaged game next o.O)

I’m trying to incorporate Steam Audio into my project.

I’ve turned it on in the Plugins section, and enabled it in my Project Settings to use the Unreal Audio Engine.

I added the -audiomixer to the shortcut.

I’ve created a Blue Print with my rifle shot sound playing in a loop for testing. I have Allowed and Enabled Spatialization and clicked Override Attenuation.

I added a Phonon Spatialization Source Setting File for the Attenuation Plugin Settings

I have seen a lot of documentation with the Steam Audio Spatialization HRTF dropdown, which I do not seem to have. I read that it was changed to being called Binaural. Either way, I don’t know if this is working or not because it seems that when I run the level and go into a house in that level, the rifle shot doesn’t seem to change.

I’ve been trying to use LPF, Attenuation Occlusion, and Air Absorption to create a distance effect of the crack of the rifle shot with a reverberated sound across an open moutain range with dismal results. Is there any documentation to explain how these parameters interact with this method, or perhaps a tutorial to make sense of setting shelves within frequencies so that the interpolation actually does what you want it to do?

I have been wrestling with these settings for over 7 hours now with almost 0 effect. I was wondering if there was:

a) a way to see if Steam Audio is actually working
b) confirmation if I am supposed to have the Attenuation Overrides menu, because I do not…
c) a way to check if the HRTF Spatialization is actually working…seemingly it is doing 0 for me. Would walking inside a building change the audio heavily? or do I have to set other frequency shelves in order to set a range for this to work?
d) a way to create a reverb that extends past the actual sound so you get the echoed reverb before you even get the meat of the sound?

Heavily frustrated with this as I’ve been listening to a gun fire in my ear for over 7 hours straight and apart from hearing it in a 360 direction, I can’t seem to get it to do anything else but roll off frequency shelves and sound very thin or very muffled.

Any help would be greatly appreciated.

Thanks!
D

i assume you went step by step with this?
https://valvesoftware.github.io/steam-audio/doc/phonon_unreal.html

i have been able to get it to work for the most part, but it seems to be a bit buggy or perhaps i am still just missing a step in authoring (i.e. user error).

I certainly did follow that, seems to be about the only documentation to follow at the moment haha

I have spacialization working, as I can hear what’s going on when I move around the scene. However, the reverb seems to be either not there at all or causes some serious booming when the camera is backed into a corner or when I look up at the sky or down at the ground.

I have yet to get any occlusion working without using the Unreal Engine audio occlusion… Perhaps I’m not doing this properly in terms of static mesh setup.

At the moment I have houses built in a BP. I assume I cannot just select those in the scene and add a Phonon geo and material to them? I’ve gone into the BPs and added it there and it still doesn’t seem to do anything.

I’ve tried the auto Add All in the scene on the Steam Audio tab…doesn’t seem to do anything either.

My level is a mountain range that requires echo when firing the weapon, but I cannot get it to work. Do I emit the reverb from the actual audio cue attached to the gun? Or do I make the audio of the gun dry, and have the environment create the reverb…if so, do I use a Phonon Probe Volume? Do I just create a giant audio volume and put the reverb on that?..I’ve been wrestling with this for a few weeks with mixed results in every direction I try. I worry that I’m half solving my issues and creating half problems with every step :frowning:

I’ve been trying to play around with steam audio as well and have achieved exactly the same results as @hailstonegames. The fact that there’s been no activity in this thread in the last 24 days isn’t very encouraging.

Hi there,
I’m still playing around / wrestling with Steam Audio. I still think that the Spatialization is good, but I’m having some issues with occlusion and reverb.

Occlusion: I think I’m correct in stating that steam audio occlusion only works for static geometry. Please correct me if I’m wrong. In my tests, I have found the occlusion on static geometry to sound OK, with the ability to set different frequency bands / transmission characteristics quite useful. BUT… I’ve been working on some levels with doors, and not having the occlusion change when the door opens is a deal breaker for me. I can imagine this being an issue for a vast amount of games, but have read that there are maybe plans to hook the Steam Audio occlusion system into the UE4 ray tracer which would be a big help. If anyone can shed any light on this, then please let us know.

Also, with the reverb, I’m finding that it can sound OK in tight spaces (although @hailstonegames I know what you mean about it being boomy) but I have not yet been able to get an environment to sound good with a longer reverb, e.g. a canyon or a hall. For that kind of stuff, the built in reverb in UE4 or something like the FMOD reverb seems to sound much nicer. Anyone managed to get decent longer reverbs out of Steam?

I wanted to give Steam Audio a good run and try and use it for all 3 systems (Spatialization, Occlusion and Reverb) but as it stands at the moment, I’m thinking of going back to Steam Audio for Spatialization, and UE4 for Occlusion and 'verb.

Having said all this, another potentially awesome solution would be to have the Audio plug in selector in UE4 available per level, as opposed to per platform. This would be massively useful, as I can immediately think of level designs where UE4 would be better for some things, and Steam Audio for others. I can see why UE4 audio selection is set up to be per platform, due to the vast amount of tech variables that need to be covered when developing a cross-platform game, but if there was a secondary layer beneath that allowing to load up different plug ins for different levels that would be super useful. If this is simply not possible, then so be it. I am not a programmer but it could be worth looking into?

Cheers

Put me down for also having a lot of issues with the reverb in 4.19.

I followed the Valve documentation as carefully as I could (except where it was out of date), and currently I have a map with phonon geometry components on everything, a phonon volume with probes generated, and scene exported. I have the reverb set to Baked in my project settings and phonon reverb source settings. When I try to Bake Indirect Sound, it completes instantly (regardless of the quality setting) and lists the Baked Data Size as 0.0 B, and I don’t seem to have any reverb at all.

Yesterday I was able to get realtime reverb working (although had similar issues with it getting super loud in corners), but after saving, closing project and reopening, it stopped working and I haven’t been able to get it back at all. I have my indirect contribution set to 10 and I’m just hearing no reverb at all.

edit: the binaural spatialization sounds really nice though :wink:

Just want to chime in to say I gave this a really good shot.

I feel the like the audio produced by this plugin in VR is the best but it’s a gigantic pain to setup and iterate level development on that it’s hard to justify using.

I’ll be keeping an eye on it but for now I’m respectfully going to pass.

The plugin is very nice, the problem is that at least occlusion does not work anywhere else than in the editor with the current in-engine version; not in a a packaged game…
This is kinda awkward even for a beta plugin.

Sadly it does not support linux (I mean cmon volvo)

This plugin could be sooo awesome but sadly …

Did you follow Steam Audio’s packaging procedure? There are extra steps.

Yup, I followed these instructions: https://valvesoftware.github.io/stea…on_unreal.html
(I added the runtimes folder in the project settings and the .phononscene files are in the right place in the packaged game)

I think the stuff I said about linux is appearently wrong since it seems that only our linux server spams the log with this: steamaudio linux server meeeh - Pastebin.com on map start.
I will check the client later.

Soo, I just tested running the standalone game without packaging and it results in the same errors:


[2018.06.15-13.13.04:400][938]LogSteamAudio: Error: Unable to find environmental renderer for occlusion. Audio will not be occluded. Make sure to export the scene.
[2018.06.15-13.13.04:402][938]LogSteamAudio: Error: Unable to find environmental renderer for reverb. Reverb will not be applied. Make sure to export the scene.

In the editor it runs perfectly fine.
For me this looks like it isn’t able to find the folder with the files when running the standalone game…

Which version of the Engine are you using?

edit: Currently using 4.19.2

edit2:
Sooo, I created a new project based on 4.19 (ours started on 4.11 I guess) and tried to reproduce the issue, but failed; it works.
I even copied all the ini files (just changed the relevant gameinstance etc)…
Now I am kinda baffled.

edit3: I found out the ue4 occlusion works likea charm in my new 4.19 project while it does actually not work for my 4.19 game (filter is applied every time)

edit4: tested ue4’s occlusion again and it only seems to work when running. If I stop while still having nothing between me and the source it is muffled again o.O

Okay, I finally tracked down the issue (on 4.19.2; Launcher version)

It seems that SteamAudio ONLY uses the phononscene from the first level the game gets initialised on and never changes it when loading a new level (in my example it was the main menu which had no phonon scene).
I started the game directly on my map and it works perfectly fine.
If I start on the main menu (I have exported its scene now) and load my map from there it actually does no longer print the errors, but the right occlusion and reverb does not get applied anymore (actually no effect got applied but maybe the reason is that in this area the main menu had no phonon geometry anyway).

If I start on my map the occluded audio sometimes seems to miss the attack/transient when moving.

I’d be happy if someone could provide a fix. I intend to use an own engine version built from source anyway so I do not have to wait for the fix in the launcher version.

Thanks for examining this issue, I was definitely not reproducing the problem in my simple test map which defaulted to my test map. I’ll include this in my feedback to Clinton/Valve.

According to the Steam Audio forum on steam and this topic here Steam Audio seems kinda dead to me; no response from the devs anywhere.
Do you have a direct contact to the devs and is this plugin still in development?
I have seen that there is an actually old pull request for a more recent SteamAudio version, but the bug described has not been listed anywhere (haven’t tested it yet).
Were you able to reproduce it with the steps I mentioned? I also use seamless travel I think, not sure whether that actually affects anything.
I was able to reproduce it in a fresh UE 4.19 launcher project tho.

I am not sure currently whether it actually make sense to wait for an update or toss the Steam Audio occlusion and reverb completely, switching to the plugin [USER=“434”]BrUnO XaVIeR[/USER] created for occlusion and the stock ue4 reverb.
I know that steam audio is a beta plugin but I did expect better support by valve tbh.

Well steam audio seems to stop working on 4.20 in general … :frowning:
Compiling problems on a root server that has no graphics card, …

I guess 42 channels are not enough ._.’
Apparently each channel gets blocked after playing a sound since I have exact 42 shots before it crashes.


[2018.09.17-18.04.05:103][631]LogMemory: Platform Memory Stats for Windows
[2018.09.17-18.04.05:103][631]LogMemory: Process Physical Memory: 6509.98 MB used, 6510.75 MB peak
[2018.09.17-18.04.05:103][631]LogMemory: Process Virtual Memory: 9056.18 MB used, 9057.58 MB peak
[2018.09.17-18.04.05:103][631]LogMemory: Physical Memory: 16809.84 MB used,  15869.12 MB free, 32678.95 MB total
[2018.09.17-18.04.05:103][631]LogMemory: Virtual Memory: 14523.56 MB used,  15869.12 MB free, 134217728.00 MB total
[2018.09.17-18.04.08:662][844]LogSlate: FSceneViewport::OnFocusLost() reason 2
[2018.09.17-18.04.08:666][844]LogThreadingWindows: Error: Runnable thread AudioMixerRenderThread(2) crashed.
[2018.09.17-18.04.08:666][844]LogWindows: Error: === Critical error: ===
[2018.09.17-18.04.08:666][844]LogWindows: Error:
[2018.09.17-18.04.08:666][844]LogWindows: Error: Assertion failed: (Index >= 0) & (Index < ArrayNum) [File:U:\TO4Dev	o4_ue4.20\Engine\Source\Runtime\Core\Public\Containers/Array.h] [Line: 611]
[2018.09.17-18.04.08:666][844]LogWindows: Error: Array index out of bounds: 42 from an array of size 42
[2018.09.17-18.04.08:666][844]LogWindows: Error:
[2018.09.17-18.04.08:666][844]LogWindows: Error:
[2018.09.17-18.04.08:666][844]LogWindows: Error: [Callstack] 0x00007ff9405ba388 KERNELBASE.dll!UnknownFunction ]
[2018.09.17-18.04.08:666][844]LogWindows: Error: [Callstack] 0x00007ff9079c6850 UE4Editor-ApplicationCore.dll!FWindowsErrorOutputDevice::Serialize() [u:	o4dev	o4_ue4.20\engine\source\runtime\applicationcore\private\windows\windowserroroutputdevice.cpp:65]
[2018.09.17-18.04.08:666][844]LogWindows: Error: [Callstack] 0x00007ff8de7c614c UE4Editor-Core.dll!FOutputDevice::LogfImpl() [u:	o4dev	o4_ue4.20\engine\source\runtime\core\private\misc\outputdevice.cpp:70]
[2018.09.17-18.04.08:666][844]LogWindows: Error: [Callstack] 0x00007ff8de75502b UE4Editor-Core.dll!FDebug::AssertFailed() [u:	o4dev	o4_ue4.20\engine\source\runtime\core\private\misc\assertionmacros.cpp:425]
[2018.09.17-18.04.08:666][844]LogWindows: Error: [Callstack] 0x00007ff8c20333f5 UE4Editor-SteamAudio.dll!SteamAudio::FPhononSpatialization::OnInitSource() [u:	o4dev	o4_ue4.20\engine\plugins\runtime\steam\steamaudio\source\steamaudio\private\phononspatialization.cpp:83]
[2018.09.17-18.04.08:666][844]LogWindows: Error: [Callstack] 0x00007ff8cbf46405 UE4Editor-AudioMixer.dll!<lambda_451b924806593425b748cff838bc5c49>::operator()() [u:	o4dev	o4_ue4.20\engine\source\runtime\audiomixer\private\audiomixersourcemanager.cpp:582]
[2018.09.17-18.04.08:666][844]LogWindows: Error: [Callstack] 0x00007ff8cbf826b8 UE4Editor-AudioMixer.dll!Audio::FMixerSourceManager::PumpCommandQueue() [u:	o4dev	o4_ue4.20\engine\source\runtime\audiomixer\private\audiomixersourcemanager.cpp:2132]
[2018.09.17-18.04.08:666][844]LogWindows: Error: [Callstack] 0x00007ff8cbf531f1 UE4Editor-AudioMixer.dll!Audio::FMixerSourceManager::ComputeNextBlockOfSamples() [u:	o4dev	o4_ue4.20\engine\source\runtime\audiomixer\private\audiomixersourcemanager.cpp:2062]
[2018.09.17-18.04.08:666][844]LogWindows: Error: [Callstack] 0x00007ff8cbf7b9d3 UE4Editor-AudioMixer.dll!Audio::FMixerDevice::OnProcessAudioStream() [u:	o4dev	o4_ue4.20\engine\source\runtime\audiomixer\private\audiomixerdevice.cpp:441]
[2018.09.17-18.04.08:666][844]LogWindows: Error: [Callstack] 0x00007ff8cbf79020 UE4Editor-AudioMixer.dll!Audio::FOutputBuffer::MixNextBuffer() [u:	o4dev	o4_ue4.20\engine\source\runtime\audiomixer\private\audiomixer.cpp:128]
[2018.09.17-18.04.08:666][844]LogWindows: Error: [Callstack] 0x00007ff8cbf8f228 UE4Editor-AudioMixer.dll!Audio::IAudioMixerPlatformInterface::RunInternal() [u:	o4dev	o4_ue4.20\engine\source\runtime\audiomixer\private\audiomixer.cpp:483]
[2018.09.17-18.04.08:666][844]LogWindows: Error: [Callstack] 0x00007ff8cbf8ef5e UE4Editor-AudioMixer.dll!Audio::IAudioMixerPlatformInterface::Run() [u:	o4dev	o4_ue4.20\engine\source\runtime\audiomixer\private\audiomixer.cpp:508]
[2018.09.17-18.04.08:666][844]LogWindows: Error: [Callstack] 0x00007ff8dea2640c UE4Editor-Core.dll!FRunnableThreadWin::Run() [u:	o4dev	o4_ue4.20\engine\source\runtime\core\private\windows\windowsrunnablethread.cpp:76]
[2018.09.17-18.04.08:666][844]LogWindows: Error: [Callstack] 0x00007ff8dea21057 UE4Editor-Core.dll!FRunnableThreadWin::GuardedRun() [u:	o4dev	o4_ue4.20\engine\source\runtime\core\private\windows\windowsrunnablethread.cpp:33]
[2018.09.17-18.04.08:666][844]LogWindows: Error: [Callstack] 0x00007ff9431c3034 KERNEL32.DLL!UnknownFunction ]
[2018.09.17-18.04.08:666][844]LogWindows: Error: [Callstack] 0x00007ff9438c1461 ntdll.dll!UnknownFunction ]
[2018.09.17-18.04.08:666][844]LogWindows: Error:
[2018.09.17-18.04.08:666][844]LogWindows: Error: Crash in runnable thread AudioMixerRenderThread(2)
[2018.09.17-18.04.08:674][845]LogExit: Executing StaticShutdownAfterError
[2018.09.17-18.04.08:678][845]LogWindows: FPlatformMisc::RequestExit(1)