Sounds drowning out music

I’m having an issue where loud sounds drown out other sounds, so whenever there is a lot of action in the game the music (and other sounds) is almost completely silent. This isn’t an issue with a max number of channels, because the sounds still play, just very quietly.
Is there some built in ducking or max volume or something like that?

1 Like

There is no feature in FMOD Studio that automatically ducks certain events based on the quantity and loudness of other events. However, I’m not sure I understand this question; Why shouldn’t loud sounds drown out quieter ones? Have you tried adjusting your project’s mix in the mixer, and what happened when you did?

1 Like

Maybe it should happen, I don’t know, but it certainly sounds weird. I’m not sure what I can do in the mix to change it, boosting the volume of the music helps a bit, but the underlying issue is still there. Here is a demonstration: https://www.youtube.com/watch?v=gfeF3I0bWF8
We tried creating a fresh project and just adding three events, music, shoot and hit. The issue is still there, so the issue does not seem to be some sidechain or snapshot or anything like that.

The behaviour in that video definitely seems wrong, but it’s hard to determine the cause; It’s possible that your sound driver or operating system may have a built-in compressor or limiter that automatically kicks in when the volume exceeds a certain value. Does the problem still occur if you reduce your project’s master bus volume?

1 Like

If adjusting the master bus volume doesn’t solve your problem, please record a profiler session of your game exhibiting this problem, package your project (using the ‘File > Package Project…’ menu item), and send it to support@fmod.com; This will allow us to inspect what’s going on under-the-hood.

So the problem doesn’t exist on Linux, and if we lower the master bus then it does disappear. Thanks!

Perhaps the default 3D panning module on your mixer is altering things unexpectedly? I found it strange that it was even ON by default, since it seriously alters the mix on music by playing with the stereo separation.

The problematic behaviour is due to the operating system automatically ducking or limiting audio output over a certain volume. To prevent this from occurring, reduce the output volume of your project.

To reduce the output volume of your project without otherwise altering the mix, reduce the project’s master bus volume.

3 Likes

I moved from Unity (aka old fmod) to FMOD and now all of my sounds are ducked when player’s gun shot audio is played and its volume is boosted.

This is very easy to reproduce simply play 2 audio events and add few +10db Gain dsps to one of them.

It didn’t happen before when using Unity audio. I’m increasing volume of ChannelGroup (above 1) in FMOD, before in Unity was increasing Attenuation of mixer group.

There are only 2 explanations:

  • something was changed and is wrong with FMOD
  • Unity’s attenuation works differently

This behavior is due to the way Unity Audio/old FMOD handles headroom/clipping. When a signal exceeds the 32-bit audio depth that Unity Audio uses (i.e. the signal exceeds 0db), it will clip the signal to 0db before passing it off to the OS audio system. On the other hand, FMOD Studio will pass the output to the OS audio system without clipping it, where the OS will limit the signal by attenuating it to 0db, effectively ducking all sounds except the loudest.

To enable this clipping behavior in FMOD Studio, you must use the Core API system initialization flag FMOD_INIT_CLIP_OUTPUT. - to use this flag in Unity, you’ll need to add the flag to line 347 of RuntimeManager.cs, modifying it to be the following:

result = studioSystem.initialize(virtualChannels, studioInitFlags, FMOD.INITFLAGS.CLIP_OUTPUT, IntPtr.Zero);

Amazing, thank you for quick help, I’ll try that.

Would be nice to be able to change these flags in PlatformCallbackHandler instead of changing source.

No problem! And I agree, it would be better to handle it from the callback - I’ve added your suggestion to our internal feature/improvement tracker.

1 Like