Unable to load banks for another platform at runtime

Hi!

I’ve come across with a deadend while trying to manage different speaker setups at runtime. As you explain in the documentation, I try to approach this by using different platforms for each speaker setup:

  • Desktop (for TV)
  • Desktop Headphones
  • Desktop Surround (5.1)

The problem is that, once I “Build for All Platforms” to the UE path (Content\FMOD), this is the folder structure I get:
imagen

There is no trace of other platforms rather than Desktop, as you can see, and it seems to have unique folders for Events, Banks, etc. So if I want to Load a bank metadata to switch the speaker setup, there is only one Master.bank in all the project.

If I go to the Content/FMOD folder using Windows Explorer, the different platforms folder are actually there, but they don’t show in Unreal.
Besides, if I change the name of the Desktop platform within FMOD Studio and Build, it doesn’t load/update anything on Unreal.

Is this a known issue or am I the only one struggling with this? How should I proceed to manage different platforms?

Thanks!

Hi,

Thank you for all the information. What version of the FMOD integration are you using?

Could I please get a screenshot of your Project Platform in your Build Preferences

Could I please get a link to the documentation you are referencing?

When saying platforms here, are you referencing Windows, macOS, Android, or the platforms or possible speaker setups?

Could I get a screenshot of this too, please?

Hopefully, this is not a bug and we can figure it out.

Hi Connor,

First of all, thanks for your reply.

I am using 2.02.

This is the documentation I mentioned:
https://fmod.com/docs/2.02/studio/advanced-topics.html#setting-up-different-audio-configurations-for-your-game

And according to it, the Build settings should look like this:


, where you add a platform to handle each speaker setup for each “real” platform. I guess the problem is that the Output Sub-Directory is hardcoded in the Unreal Integration, so you can’t actually rename it “PC Headphones” (as in the screenshot) because the integration is expecting “Desktop” only.

I mean possible speaker setups per platform: Headphones, TV and Surround 5.1 on PC, XBOX Series and PS5.

I removed the extra platforms from the project because it didn’t work, but it looked like this:


being Desktop Surround the one with the Output sub-directory as “Desktop”.

Correct me if I am wrong but I assume it’s not possible to use this “platform per speaker setup” approach with the Unreal integration if the Output sub-directories are hardcoded, right?

Thanks!

Thank you for the screenshots and the information.

Not necessarily, an option may be to manually load the desired banks from your custom locations using: FMOD Engine | Studio API Reference: Studio::System::loadBankFile.

This would require disabling the Load all banks setting:
image
and creating a class to load the desired banks for you. Please let me know if you need assistance implementing this.

I will suggest creating some tools in our integration to improve this workflow. Thank you for bringing this to our attention.