Crossfade between music with different BPM

I have a specific music crossfade need and I’m wondering if it is possible to set up in FMOD Studio.

I have two pieces of music that are nearly identical; Level1 and Level2. The number of bars/beats are identical. However, the BPM is different which means the length of the file (minutes/seconds) is different between the two pieces. Level1 has a lower BPM than Level2.

When the game reaches a certain point, I need to crossfade from Level1 to Level2 and I need the music to crossfade at the corresponding bar/beat. For instance, if the game calls the crossfade at bar 10 of the music in Level1, I would need the Level2 music to be at bar 10 as well when the crossfade begins.

I’m not a programmer, but we have been able to accomplish this in C# and Lua by using sample numbers from the music (we render out at 44.1k) and we have the code complete a percentage calculation to determine what sample number Level2 should start playing at based on the current sample number position of Level1.

I’d like to be able to do this in FMOD so I can manipulate different variables (timing, volume levels, etc) on my own.

Is this possible?

The simplest way to do this is to set up your music event with a lot of destination and transition markers. It would make it easy to format these destination markers with section/bar (eg. “level1_10”). You can use transition regions per bar.