FMOD, Unity and Steam Audio integration issue

Hello! I’m using FMOD 2.03.06, Unity 2022.2.12 and Steam Audio 4.7.0. OS: Windows 11. Currently developing a small VR game, testing it on Meta Quest 3.

I downloaded everything and integrated the Steam Audio plugin into FMOD and Unity (so that FMOD was installed before the Steam Audio). In FMOD settings “phonon_fmod“ was written as a Dynamic Plugin for Editor and Default. In Steam Audio settings FMOD Studio was chosen as the Audio Engine.
FMOD project is located in the Unity project directory, in FMOD project’s folder I have the Plugins folder with phonon.dll, phonon_fmod.dll and phonon_fmod.plugin.js.

In Unity’s Assets/Plugins I have FMOD and SteamAudio, the second was installed through adding it as a custom package.The path of phonon_fmod is:

Assets\Plugins\FMOD\platforms\win\lib\x86_64
However, after pressing “Play“ it was is x86 folder (the editor threw some errors of phonon_fmod being absent from this x86_64 folder), I cut it and placed it in the correct folder.

Plugin is visible in FMOD, however by default, when Steam Audio Spatializer is applied, the sound plays more to the left.

In Unity, I got this error from the start after pressing play:

NullReferenceException: Object reference not set to an instance of an object
SteamAudio.SteamAudioManager.OnApplicationStart (SteamAudio.ManagerInitReason reason) (at Assets/Plugins/SteamAudio/Scripts/Runtime/SteamAudioManager.cs:298)
SteamAudio.SteamAudioManager.Initialize (SteamAudio.ManagerInitReason reason) (at Assets/Plugins/SteamAudio/Scripts/Runtime/SteamAudioManager.cs:683)
SteamAudio.SteamAudioManager.AutoInitialize () (at Assets/Plugins/SteamAudio/Scripts/Runtime/SteamAudioManager.cs:1560)

And then:

NullReferenceException: Object reference not set to an instance of an object
SteamAudio.SteamAudioManager.NotifyAudioListenerChanged () (at Assets/Plugins/SteamAudio/Scripts/Runtime/SteamAudioManager.cs:491)
SteamAudio.SteamAudioManager.OnSceneLoaded (UnityEngine.SceneManagement.Scene scene, UnityEngine.SceneManagement.LoadSceneMode loadSceneMode) (at Assets/Plugins/SteamAudio/Scripts/Runtime/SteamAudioManager.cs:466)
UnityEngine.SceneManagement.SceneManager.Internal_SceneLoaded (UnityEngine.SceneManagement.Scene scene, UnityEngine.SceneManagement.LoadSceneMode mode) (at <61c05f8d81804e929ff4198c5bcc7a62>:0)

**When pressing the “Install FMOD Studio Plugin Files“ button in the Steam Audio tab in the editor I have this error in the terminal:
**
NullReferenceException: Object reference not set to an instance of an object
SteamAudio.SteamAudioManager.InstallFMODStudioPluginFiles () (at Assets/Plugins/SteamAudio/Scripts/Runtime/SteamAudioManager.cs:1117)

I also tried integrating Meta XR SDK for FMOD, but even though I installed everything correctly, I still faced similar issues: no sound in game from events that had the Meta XR plugin and similar issues when trying to back the scene: NullReference errors, as far as I remember

Lastly, the event with the Steam Audio Spatializer did not produce any sound in Unity, all other FMOD events without it played as usual.

Would appreciate any help….

Thank you for the information.

Just to confirm the order Unity components being added:

  1. fmodstudio20306.unitypackage
    • Run through the Set up wizard
  2. SteamAudio.unitypackage
  3. SteamAudioFMODStudio.unitypackage

Could I please grab a screenshot of your FMOD integration settings:


And the Steam Audio settings:

I noticed this as well, I will make a task to investigate the issue.

Thank you for the detail and hopefully if is just an issue with the order things were installed.

Hello!

And for FMOD in Dynamic Plugins it was indeed “phonon_fmod”

Yes, the order of downloads should be correct. At first I had FMOD, and then I downloaded the packages (for Unity: both SteamAudio and SteamAudioFMODStudio, and then dlls for FMOD itself).

I no longer experience the first two errors after initialising (I redownloaded SteamAudio and SteamAudioFMODStudio), but I still have the one after clicking on “Install FMOD Studio Plugin Files“. When I add the default SteamAudio Spatialiser, my sound plays in 2d with the sound shifted to the left, even though the fmod event emitter is attached to an object. Steam Audio Manager script is placed after initalising FMOD in the Project Settings. Placing the Steam Audio Source on an object with the FMOD Event Emitter 3D with nothing enabled makes Unity crash every single time.

Hi,

Sorry for the late response. Since Connor is away at the moment, I’ll see if there’s anything I can help with.

I’m seeing the same error message on my side. It looks like the Steam Audio Unity plugin is trying to read the FMOD settings but fails. I’d recommend reaching out to the Steam Audio team so they can investigate this on their end. Alternatively, as mentioned in the Steam Audio documentation, you can manually drag the .dll files into your FMOD Studio project’s plugins directory instead of using the “Install FMOD Studio Plugin Files” menu option.

Could you please share a screenshot of the event’s master track in FMOD Studio? On my side, I only added the Steam Audio Spatialiser to the event’s master track and the spatialization sounds correct on the Quest 3.

Unfortunately I wasn’t able to reproduce this issue here. Could you please elaborate a bit more on what you mean by “with nothing enabled”? For example, which checkboxes or options under the Steam Audio Source component are disabled when the crash happens?