FMOD Studio Crossfade Events Pops

Hi,

One question.
I have a Event which uses some Parameter to crossfade through multiple sounds. (Different air-sounds depending on the distance to the ground). This worked quite well in FMOD Studio 1.06.

Today I replaced the samples I use for different ones and suddenly I recognized strange pops each time the crossfade occurs. Specifically at the very first moment of the crossfade happening, when the second sound is started.

To me it sounds like some internal volume parameter starts off with a setting of 1 and gets set to the correct value one “update” later. I also tried an ADSR modulator (with quite long attack and release values) on each of the sounds and even then I get those pops. Am I doing something wrong?

Edit: I`ve just been playing around some more and It seems that (within FMOD Studio) If I seek (like: drag along) too quickly across those crossfades it does not always fade out the “old” event completely… while “jumping” from before the crossfade region to some point behind it (with the parameter cursor) omits the crossfade completely (both events are playing at full volume)

I am using FMOD Studio 1.07.00 (64 bit) on a Windows 8.1 x64 Machine.

Thanks a million for your help,
Cheers,

Simon

Hi Simon,

As far as I know, there has been no change in the behavior of cross-fading going from Studio 1.06 to 1.07. But there is always the possibility that a bug was inadvertently introduced, and managed to slip past our testing processes.

To clarify, you upgraded to FMOD Studio 1.07, and also switched to different samples? I wonder if it was the upgrade to 1.07 that caused the problem, or if using a different set of samples simply exposed an existing bug. Was it working properly with Studio 1.07 before you replaced the samples?

If you are still having this problem, I think your best bet is to contact support@fmod.org so that we can investigate it further.

2 Likes

Hi Graeme

Thanks for your answer.

I investigated further and indeed you`re correct. It is the same behavior in 1.06 and 1.07. However I have recognized two things: If I create two event sounds (A and B) and “jump” from sound A to B with the parameter cursor the crossfade is happening (I hear B, not A). But the old sounds are not stopped and if I go back to A a new instance is stacked ontop of the old one. Also if there is a gap between the two events if I jump to the gap the events keep on playing.
However this does only happen if I have no loop-region set in the events themselves. If loop-regions are present the events do stop and start anew after a crossfade has happened or the cursor is placed outside of the trigger region.

On the other hand, if I try the same thing with single sounds the following happens: If i am jumping from A to B with the parameter the crossfade is not applied (both sounds are playing). Going back a new instance is added. And here as well: If I enable the loop option of the soundfile everything works as expected: The crossfade from A to B happens and sound A stops.

All of this somehow makes sense regarding the trigger behavior of FMOD and I`ve learned something new. :slight_smile:
So, thanks again,

Cheers,
Simon

Okay, I think you’ve discovered a subtlety in the way Studio handles oneshot vs looping sounds. When the cursor leaves the trigger box of a sound, Studio tries to determine if the sound will end naturally or not. In the case of a onshot, Studio simply allows the sound to play to the end. If the cursor moves back inside the trigger box, a new instance is played. On the other hand, a looping sound will never end, so Studio cuts off the sound as soon as the cursor leaves the trigger box. Note that you can give yourself more control over stopping behavior by putting an AHDSR modulation on the sound’s volume. Also, if you don’t want a new instance playing over the top of the old one upon re-entering a sound’s trigger box, you can adjust the Polyphony setting so that only a single instance can play at a time.

1 Like

That`s it. Indeed I have been using AHDSR and the polyphony settings in the end. Thanks for your always very thorough support.