Feature Request: Prevent Sound Cut-Off When Changing Songs – Delayed Song Unload & Global Kill Action

I’ve created over 1000 song-overlaps with SST-like behavior in Cantabile, so I feel like I should comment on this thread even though my opinion will probably be unpopular:

To be honest, if @brad were to add SST support for song playlists, I don’t think I would use it (even though that’s my main Cantabile use-case) because I can’t think of any better solution than what Cantabile already offers in the form of song-states and racks. Here’s why:

I create every “song” as a linked rack that can be loaded into a master Cantabile-song that I reuse/customize as my “song set”. This master song has one song-state per “song”. Cantabile’s state control features allow me to dictate exactly which plugins persist during song transitions, which get deactivated or unloaded, which routes get rewired during transitions, which effects get turned off or bypassed during transitions, etc. It’s all fully customizable because song-states are awesome.

This level of customization is critical for making transitions sound clean, and I don’t see how it would be possible with an SST-like feature for song sets. For example, I have a rack that controls my MIDI control surface, and I need that rack to stay operational and blink lights, slide faders, etc., during transitions. I have it coded so that I can gracefully “back out” of a transition (e.g., un-transition back to the previous song mid-transition to cope with unexpected events).

Addressing @Lowell’s two main concerns about this approach:

Linked racks can be loaded as embedded racks. This allows you to have a separate song-specific copy of each linked rack with song-specific tweaks.

I too use Unify, but I find it very inadequate as a replacement for Cantabile racks. It doesn’t have Cantabile’s binding system, its route filters are too primitive, it doesn’t allow complex wiring flows, etc. Only my very simplest songs can be represented entirely in Unify.

From my experience, there’s really one major Cantabile limitation that prevents perfectly clean transitions: Cantabile does not support polytempo+polymeter. When consecutive songs have tempo-sync’ed arps/fx/LFOs, transitions must somehow simultaneously run multiple racks with different tempos and transport positions. I get around this by running such plugins inside Unify and using its “Don’t Follow Host” transport option. But it’s hard to keep Unify and Cantabile synchronized when I do that, so I wish Cantabile had built-in support for polytempo+polymeter. There are also issues with external clock sync, which I’ve raised in a separate thread.

–Kevin

2 Likes