I am using FMOD Studio 2.03.01. This occurs both in FMOD Studio and the game engine.
Occasionally, seemingly arbitrarily, during the release of an AHDSR modulator on an event’s master fader (this also occurs on track faders and parameters, but I haven’t tested anything else), when the event stop is triggered, the volume level will jump to some arbitrary point (sometimes all the way to the bottom) and continue fading out from there - as if the release had already been active for a second or two. Is this a bug or is there any way to remedy or work around this?
Yes! I found this out the other day too. We also just switched to 2.03.01. ADHSR seems to be broken engine-side somehow. Everything works fine in FMOD studio but when stopping sounds in engine (UE5.3.1) there’s some odd behaviour going on. And I think its partially to do with curves.
Lets say I have an event with a Gain FX on the master track modulated by an AHDSR with a 5 second release. If that release curve is linear and the event is stopped in engine then the event stops immediately with no fade out. If the curve is fully logarithmic (curves down slowly at first) then the audio fades out correctly I believe. If the curve is somewhere in between then its as OP described in their post. When stop is called the audio dips and fades from a different level.
I’ll note again that this happens in FMOD Studio itself as well as the engine - seemingly identical behavior in both. The curve seems to be unrelated in my case - I’m seeing it happen no matter what the curve looks like.
Here’s an example of a problematic AHDSR setup, though it’s nothing special. I’m able to reproduce this in any project and with essentially any AHDSR values.
These issues must be related somehow though. This is from a profiler session where I called stop on an event in-engine. The event has an AHDSR with a 5 second release.
My temporary workaround is variables with seek speed/modulator and having a fade out event with two command instruments - one to set the fade-out variable and another to stop the event.
Here’s another much simpler solution that I recently thought of: Async instrument with Cut enabled, a loop region around part of it and a fade just outside. Then a transition region (trigger: event stopping) to the part that fades out.
Thanks for bringing this to our attention. Could I grab some reproduction steps? Is there anything you are doing differently to what has already been noted?
Doing a simple test with AHDSR I was not able to reproduce the issue in 2.03.14 on Windows.
Nothing in particularly different, just a sound in a timeline event with AHDSR on it’s Pitch. Every 1 or 2 out of 10 drops to 0 instantly and stays there until the sound fades out.
Thank you for the info, are you applying the modulation to the instrument pitch or the events pitch? I have been able to reproduce unexpected behavior applying modulation to the event pitch.