What is the audio flow of binaural output?

Can you please explain me the signal flow to achieve Binaural output?

I have a 7.1.4. setup in FMOD that goes to Unity. Now does UNITY take care of a binaural conversion or is it something I have to set up in FMOD? Basically I need 3 output variants.

  1. Atmos or 5.1 output for those who have a capable Soundsystem at home.
  2. Stereo for desktop speakers or embedded screen-speakers. (not sure if virtual surround can be simulated here)
  3. Headphones Binaural output.

I think I will go with creating different Mixer Setups in FMOD for that that will be set in the Game preferences. I see 3rd party add-ons like Atmoky Spacial Sound that can do that but I need to understand at which point in the signal flow the transformation takes place.

There’s a couple of stages to this:

  • The format the FMOD mixer is processing audio in
  • The output format of the FMOD system
  • The format the driver expects.

FMOD will perform an up/downmix as needed between each stage as needed, using these mixing rules. Our general recommendation is to make sure all of them match so that the signal is processed as expected, especially when working with binaural formats where, unlike channel based formats, audio info may be lost in the up/downmix.

There’s a couple of ways to approach this:

  • Setting up sends/returns in the mixer that adjust how audio is mixed, and using a global parameter or snapshots to adjust which mix is used
  • Using separate build platforms for each mix (i.e. DesktopStereo, Desktop5.1, Desktop7.1, etc.), and using platform exclusion settings to exclude specific effects per-platform as needed

The first option assumes no effect differences per platform, and allows you to adjust the mix without reloading banks.

The second option allows you to include specific effects per platform (i.e. Atmoky spatializer) and set the mixer format to match the spatializer output. It can also be used alongside the first option. However, if you don’t want apply the effects to the output of all platforms, then you’ll need to reload all banks to swap platforms and therefore channel formats, which can be more of a hassle.

By the sounds of it, I’d recommend using the 2nd option since you’re making use of Atmoky spatializer.

thanks for explaining. I think I will start small with the FMOD spatializer and then build on that later.