When using the inverted offset of a transition region or a magnet region respectively with quantisation on, everything works fine unless you’re transitioning from the beginning or end of the loop. In that case, the playback stops entirely or when using a magnet region, the transition bit replays once again without playing back any source file.
Also, the loop has a small hiccup when the loop starts over entering the transition, but that happens every time independently of the offset and is a different problem…
I hope it’s somewhat clear what I mean :).
Am I doing something wrong or is the inverted offset just not designed to be used with loops?
I’m afraid I haven’t been able to reproduce this issue. When I try, playback continues as normal regardless of whether or not a loop region ends or begins at the point of transition. I therefore suspect that I must be missing some important detail of your setup. Are you able to post a screenshot of an event that exhibits this issue?
Looking at your example, I can see it would produce a number of behaviors that might be confusing. I’m not sure which ones are causing problems for you, so I’ll explain each of them in turn.
First, your first transition region has a transition timeline. I can’t tell whether your transition timeline has any content, but if it has none, the expected behavior is for your event to fall silent while the playback position passes through the transition timeline, i.e.: when the playback position transitions from the left instrument to the right.
Second, there is a known bug in inverted offset mode that causes the playback position to transition from the last value of the transition region to the last value of the destination region, instead of the first value as you might expect. Transitions from other positions on the transition region are not affected by this issue, so it only comes up when using transition region quantization. This issue is on our bug tracker, and will be fixed in an upcoming release of FMOD Studio.
Third, when a transition causes the playback position to jump to the very last position on a loop region, the loop region isn’t triggered. This behavior exists because many events make use of multiple loop regions arranged back-to-back, such that the endpoint of one loop region is in the same position as the start of the next; if each such loop region’s endpoint was respected when a transition occurred, then the last loop region’s endpoint being reached would cause the cursor to jump back instantly to the first loop region’s start. In the case of your event, this means that when the playback position transitions from the end of your transition region it arrives at the end of the other section’s loop region and immediately exists the instrument.
Thank you very much for taking your time, Joseph.
I didn’t know about this bug. That’s probably the problem. It’s not jumping back to the start and because it lands spot on the end it reaches the end of the event and stops.
Until the second issue is fixed, you could potentially work around the third issue by adding a slightly larger loop region around each of your existing loop regions to recapture the playback position when it escapes, or by replacing each loop region with a transition marker/destination marker pair.