Optimal workflow using many patches/presets in a song?


Hi, I’m working since many years with Cantabile 2.
Here I use setlists with behind in average 100 subsessions.
My aim is, playing live/improvise by switching from one preset/patch/multi
to another…my personal “best of” not all! :slight_smile: For that I have easy midi assigns to my hardware synthesizers (C0+B1)
in order switch to next or previous patch.
Since some weeks I test Cantabile 3 and work hard in understanding and learn the
best workflow for me :slight_smile:

Meanwhile I work with linked racks coming from having for each patch/preset/multi a
song with an VSTi instance behind. My aim was to use the great preload function in C3.
But, using e.g. up to 50 Kontakt instances caused very fast RAM issues. I have only
16GB RAM. I don’t know, how many GB RAM I would need, to come with Kontakt not
into RAM issues.
I tested the same in placing 40-50 Kontakt instances into linked Racks. Naturally I
get the same RAM issues as with the song function.
The purge function in Kontakt doesn’t help, even I saved each rack state with the purge
of Kontakt. This surprised me: the RAM is high as without purgin the Kontakt samples.

C3 needs naturally loading times then preloading is activated. So my idea of spreading
my Kontakt songs over some setlists would cause longer setlist loading times in switching
from one setlist to an other.

The classical way would be - as in C2 - to load one instance as song or rack and
have for each patch of Kontakt a state or song. But, then I have for each patch loading

Has somebody an idea, how I should make that work in C3?

Or is it on the end naturally not possible switching fluid trough a lot of Kontakt patches?

I had yesterday the idea, if C3 would only preload the next and previous state/song, that I wouldn’t
have the RAM limitation, cause loading up to 10-12 Kontakt instances is not a problem for C3.
Even C3 doesn’t work in that way: do you have an idea for an equal workaround?


That is a brilliant suggestion that would definitely solve that problem. @brad might be willing to add that to his (ever lengthening) list! :slight_smile:

Meanwhile, there are a few Kontakt experts here that will possibly know of a workaround.

Speaking of Kontakt, there is a video by Steve Steele that might be useful to you, though it is more an optimization for folks who use only certain notes during a gig or recording session, not perhaps useful to those needing to improvise across the entire keyboard. (I’ve shared this here before a few times now!)



The problem with this, as @brad has mentioned on the forum previously, is that it would mean Cantabile is loading plugin instances and sample data etc. in the background, and it could impact on Cantabile’s ability to provide a smooth, glitch-free experience, especially as some plugins (Kontakt being one example) bring up message boxes during loading.




Thanks a lot for the interesting video.
As I wrote, I use already the purge function in Kontakt, but in the video are more settings in order to reduce RAM usage; great.
I’m excited what happens with the RAM, if I load again more Kontakt, after the optimisation settings.
And you’re right, I have also to check the behavoir after the settings in improvised playing.



Is that already tested? I guess, it has something to do, which VSTi you use with which patches/presets.
Cause C3 works until 10-12 Kontakt instances in preloading pretty good, could it might be also working, then the preloading is happen while playing without glitches.
Perhaps it is more workable, to preload e.g. the last 3 and previous 3 song/rack state and not only one.
I don’t know, how difficult the programming of such function would be. But give the user the opportunity, to decide on their own in using this kind of feature…perhaps incl. some setting opportunities…e.g. load only next, load next and previous, load next 3 and last 3…would be maybe great.
Then I read all the Blogs/postings here in the forum also concerning the Kontakt issues, I see, that not only I try to get it working :slight_smile:
The good thing is: C3 has already a big advantage to provide the preload function. Yes…maybe the preload function was only developed in principle for songs with e.g. max. 3-4 different VSTi and not in order to preload different patches on one time in ONE AND THE SAME VSTi…but maybe a good starting point to build on :wink:



Now I followed each tip in the video and made them in Kontakt under C3.
There are also included purge, reset markers and update sample pool.
I have in my test setlist 20 Kontakt instances in a linked rack.
After the optimization settings I updated directly the states. Then
I saved all before leaving/closing C3.

Then I reopen C3 the RAM usage is as high as before without the optimization.
Is it the Kontakt instance itself, which causes such hugh RAM?



I don’t know. One thought has to do with the “Preset 0” item - I am not certain about this, but I seem to recall needing to click the “hamburger” icon in a plugin and having to “Rename” the preset in order for the state to be able to remember the settings. It might have been something else, though, and it wasn’t Kontakt where this happened.



@Bladerunner as per our email discussion, this really comes down to effectively using linked racks to get all your preloading done upfront and then using those racks across songs so the same plugin instances can be re-used.

It sounds like though you’re trying to have alot of Kontakt patches on call and if that’s the case you’re going to need enough memory to back that up - or, you’re going to have to have load times in between.

This is not something I’m keen to add. It’s been raised a number of times and I’m continuing to push back on it for reasons like described by Neil. I’m not convinced that having things loading while trying to perform is a good idea.


Yeah, I got the gist of that immediately upon reading Neal’s reasoning. Loading big items while playing does NOT sound like a good idea!



Hmmm, you’re underestimating Cantabile’s powers - my current setlist (complete repertoire for one of my bands) currently loads at 140 plugins, amongst which e.g. 4 instances of Korg M1 with different sound sets (one for strings, one for bread-and-butter sounds, one for solo sounds only,…) and about 25 instances of Sonalksis FreeG (volume control for each of my instrument racks).

But maybe one way to address your issues with sample-based instruments and Kontakt instances is to differentiate between the actual sample sets and their processing afterwards. Let me give you an example:

In my main piano rack, I use XLN Audio Addictive keys as my main piano. I use only one sample set with it (a studio grand without any effects or EQings added), which is loaded with the rack and never changed. But I have a powerful effects chain after it (compressor, chorus, EQ, delay, reverb), which allows me to create numerous different piano rack patches from this same piano sound without ever having to change the sample set, simply by changing effects setting in the processing chain.

So maybe, you can reduce your live setup to a set of very few large sample sets that stay static and change their sounds by adding flexible effects processing, which can be re-configured easily. If there are some smaller song-specific samples, you can easily load those between songs via “whole bank” state behavior in Kontakt, but as long as your large sample sets stay constant, you’ll be in good shape.




Hi @Torsten,

thank you for all the tips!

I also made the same expierience as you, using other VSTi in C3. Also Omnisphere for example: I can
load quiet a lot of Omnisphere instance and have not notable RAM issues. Same as with e.g. M1, Keyscape, Nexus, Synth 2, ElectraX and so on. I guess, there are really “hundrets” possible with perfect/easy preloading.

You’re absolutly right, that I could build my own Kontakt multies/instruments, clear select only necessary
samples behind and save changes per song/state. But, here I have a lot of respect in order to rework
my best of mutlies/instruments manually. This would cause a huge time and concentration work :wink:
…even I use mostly today already ready patches, multies, instruments. It’s always a work to combine
e.g. pads with effects and rhyhtm/beats.



As C3 is a consistent work in forward progress, so is my continual tweaking and improvement of my setup. I used to think…“well, I have it all working now, and life is good”…then a new improvement appears, or I make a discovery that improves my setup, and the “tweak itch” overcomes me. One thing I do know…as in my performance, there is always room for improvement in my setup…and I love it! :sunglasses:


sorry for posting in two threads the same

I get it worked :slight_smile:

On the end the best was for me the RAM upgrade solution.
I upgraded to 32gb RAM. The intersting thing: even I have so far now nearly 100 hundred Kontakt orchestra instances (as a test), it needs “only” 20-22gb RAM. So always enough in reserve (for more).
So I added so far also a lot of Omnisphere, Zebra, Nexus patches. Everything is preloaded. Great!
And, I had not to rework my Kontakt multies.
Also great: all the instances of the VSTi preloads quite fast.

Off topic: I always working now only with linked racks and states (beside song). This is really great!
I made racks for single VSTi with the best of presets behind (by genre). Now I can/could combine each VSTi/preset with other VSTi/presets and everything is preloaded. So, with C3 have now such much more opportunities and get them work out very fast.
C3 is really a great or the best DAW :wink:


Again an update :slight_smile:

So far I built nearlly for each of my VSTi a linked rack by genre, like for example Omnisphere Pads, Omnisphere Arps, Omnisphere Beats and so on. Naturally only the best of each! :slight_smile:

Yes, this is a hard work. But…only once! :slight_smile: Cause, now I can easy build/combine crossover all VSTi (by genre) my songs in loading the finished linked racks. I have now also racks, there all best of presets of my hardware synthesizers are included (via sysex).

And this is really great, cause I can try like by “try and error” to combine pads, presets, drums, arps and so on crossover with all my sevearl VSTi (quit a lot :-)) very fast to build a song (state). From my point of view this is the best feature ever! And…a big big step forwards in addition to C2. So much opportunities now to easy build (great) songs/states
Also set up e.g. orchestra songs are now much more easier to build.

An interesting thing is also, that I don’t struggle with RAM, even I upgraded to 32GB RAM. What I described above depends on: everything is preloaded! In some setlists I have above 200 preloaded VSTi with a lot of multiple instances of same VSTi. In average it uses “only” between 21-25GB RAM.
So I can fluid switch from one song/state to another without (nearlly/mostly) breaks. This gives me opportunity in live playing, to e.g. add/remove patches/presets while live playing. Great great great! :slight_smile: .

I read somethere in the web, that somebody said, that C3 changes his live. I would agree! :slight_smile:


That is awesome! I’ve yet to try sending sysex to my hardware synths to install patches via Cantabile - that sounds like a really fun thing to do! (I use MidiQuest for that, so I should capture the sysex it sends one of these days…)

And yes, Cantabile can certainly manage a TON of VST data preloaded, alright! Stable as a rock.



Really delighted to see that all your hard configuration work is now starting to pay off! You’re now seeing some of the power of Cantabile 3 :slight_smile:



@Bladerunner -

So pleased to hear you’re enjoying Cantabile3. Like I said in my earlier emails with you. It’s not straightforward to move from v2 to v3, but those who do never look back. :slight_smile: