Why I switched from Forte to Cantabile

(warning – long post!)

I have been using Forte for over 10 years. In fact, I bought it the day it was released. Overall, it is a very good program and has served me well over the years. I don’t intend for this to be a Forte-bashing post. So why switch? Believe me, I asked myself that question several times. Changing software requires not only a monetary investment, but a huge time commitment, as well. The new software must provide some serious advantages to make the time and expense worth it. It took me about 30 hours of evaluating Cantabile to finally decide it was worth the pain of switching. So far, I haven’t regretted it.

Before I get into my reasons for switching, I do want to say that Brainspawn is a great company with a very good product and I appreciate all they have done to provide a platform designed for live VST use. There are several things I prefer about Forte, which I will get to below. In a nutshell, I think Forte is a better solution for someone that doesn’t require a lot of flexibility and doesn’t want to spend hours just learning the software. But in the end, there are four key reasons I decided to switch to Cantabile – stability, workflow, flexibility, and support.

Stability: At this point, it is hard for me to say definitively that C3 is more stable than F4 since I have spent so much more time with F4. However, my experience so far certainly suggests it. This is the single most important aspect of any software used live, and the main reason I decided to switch. Forte has crashed on me more times than I can count over the years, usually at seemingly random times. I do believe the current version is more stable than ever, but I still run into odd problems with it. I have had it crash several times during a live performance, which is every electronic musician’s biggest fear. Many people say F4 is rock solid for them, so it is probably highly system and plugin-dependent. However, Forte’s plugin scanner often crashes, whereas Cantabile’s scanner gets through my 400+ plugins without any issues. C3 has only crashed on me once, and that was due to a plugin issue when I had the multiprocessor mode set to ‘aggressive’. C3 also seems to be slightly more CPU efficient, and less ‘quirky’. Things work the way you expect them to. F4 has a lot of small issues like plugin windows not opening up to the right size, windows getting stuck in an undocked state, etc. These type of things, while relatively minor, add to the feeling of instability.

Workflow: This is highly subjective, but I prefer the workflow in C3 to F4. It just seems more logical to have separate files for separate songs which can then be easily combined into a set list. F4 is based around having a single monster file (“rack”) that contains all of your plugins you will ever need, permanently loaded. You then create “scenes” where each scene represents a song or a section of a song. It does allow you to disable plugins that are not needed for an individual scene, but to me, it results in an overly complex, cluttered interface. The layout of C3 is more intuitive to me, as well. Things like creating midi filters, state changes, etc. are simpler and often require fewer clicks.

Flexibility: This is where Cantabile really shines, almost to a fault (more on that below). In a live setup, you often need elaborate automation, signal routing, and other creative oddities to make everything work seamlessly and efficiently. C3 is much more flexible than F4. F4 has a simple, fairly fixed routing – linear strips of plugins that feed into a fixed set of buses (you can add as many buses as you want, but the number is constant for the entire rack). I have often been frustrated by Forte’s limitations preventing me from doing something I wanted to do. For example – no media player!

Support: Both products have very good support, but from what I can tell, Brad really makes this a priority. Support requests are answered quickly, he is active on the forum, software updates come out regularly, and the blog keeps everyone abreast of new features and developments. He even asks users to vote on possible new features. Brainspawn does a good job, but response times (for me) are slower and software updates are far more spread out. Both products appear to be developed by a single person, so support for either could change or disappear at any time, but for now, C3 has the edge.

Areas for Improvement: Having said all of that, there are some areas where I think Forte excels, or C3 could use some work. Flexibility usually adds complexity, and that is certainly true with Cantabile. I have been working with midi and music production for over 25 years, and have a fair amount of programming experience. Even so, there has been a pretty steep learning curve and a lot of trial and error to come up with a way of working with C3 that fits what I want to accomplish. I would think that for a less technically literate musician, it would be very difficult. Here are my main wishes for C3 improvements:

  1. Signal Flow: In F4, the fixed signal flow means that adding synths and effects is quick, simple, and intuitive. C3 admirably hooks up midi and audio routes for plugins automatically, but surprisingly, it doesn’t do so for racks. Furthermore, plugins inserted into a rack get default routings that connect the plugin directly to the hardware, instead of to the rack in/out ports. Given that racks are designed to be reusable, I haven’t been able to come up with a single situation where it would be advantageous to connect rack plugins to the hardware instead of the rack ports. I would love to hear if anyone finds this better. To me, it would make more sense to have the default routes connect to the rack ports, and have racks get automatic routes to the default hardware ports when inserted.

  2. The fact that C3 requires (as far as I can tell) a preset for each possible state of a plugin adds unnecessary complexity. For example, in F4, let’s say I want to tweak the release time of a plugin for a particular song. All I need to do is adjust the control in the plugin, then hit the ‘Update Scene’ button. Forte captures the current state of the plugin, regardless of whether that state is saved as a preset or not. This is the way most VST hosts work. In C3, I change the parameter, then, “crap!” I just updated this virtual preset which is used in another song. So, I change the parameter back (hoping I remember the old value) to get the preset back to the right state, switch to a new virtual preset (which resets the plugin), reload the sound/preset/whatever, tweak the release time, create a new name for the virtual preset. All of this can take 30-60 seconds, whereas in Forte it took about 2 seconds. Is there something I am missing? It just seems overly complex.

  3. Forte has a “Stress Rack” feature which is great for confirming that a particular project file is going to be stable when used live. It allows you to run a test where random midi events are simulated as the scenes are changed every few seconds. It is highly configurable and can be setup to run for a few minutes or several hours. A report is generated as it runs, so if a particular scene change caused a crash, you can determine which one it was without sitting there and watching it. I suspect Brad has a similar tool already in place for Cantabile, since it would be invaluable for testing and debugging. Incorporating this into C3 would be a great confidence builder when it’s time to hit the road.

  4. Tooltips! C3 could really use them. It would make learning the interface much easier.

  5. For new users, a walkthrough guide would be very helpful. I know this has been mentioned on the forum before, and I know there is a manual and various demo videos, but they tend to focus on specific features. What I am thinking of is a guide that explains in detail how to choose a workflow and file structure based on what you are trying to accomplish. Should you place plugins directly into a song or use racks? Use rack states, or export behaviors to the parent song, or maybe a combination of the two? When would you want to let a behavior be controlled by both the rack and parent song? Should you use a separate rack for each instrument, or a monster rack for each song? These are all difficult questions to answer until you really understand the ins and outs of the software. It makes me wonder how many people download the demo, but give up because they find it too complex.

So, to summarize, I am really impressed with Cantabile and am excited to be on board with it. In the grand scheme of things, my issues above are fairly minor compared to all of the positives. I welcome any feedback, especially on my suggestions. Maybe I am just missing a setting or a better way of doing something?


Constructive comments!
There is definitely a case to be made for rack plugins to default to the Rack output rather than the hardware.
The Rack is far more likely to be plumbed to the hardware output with additional outputs to address, for example, FX racks.
It’s not always the case - but defaults should provide the most often used scenario,
I wouldn’t object to this change. You can end up with preferences lists as long as your arm, so I’m not advocating for this to be a choice which is ticked in options; the choice would be the same as you have now - if you require a different destination, change it! I’m trying to find a downside to this fundamental change. I can’t. Perhaps others can.
Good suggestion, I think.

C3 can can do that with one less step; In State Behavior set Entire Bank.
This is not recommended for sample playback devices such as Kontakt, but for a synth, it’s dead easy.
As far as making a change then saving that to a new virtual preset, I am seeing an issue in C3. C3’s virtual bank doesn’t appear to allow copying between slots or a ‘save to slot x’ function. This would achieve what you’re suggesting very easily.
@brad - Am I correct in saying that the current cantabile preset for a given plugin cannot be copied to another slot with a new name?

This forum is probably the best way to get answers to your specific questions. It has absolutely been the best resource in helping my migration from C2 to C3 thanks to the excellent contributions of some notable members, not forgetting brad’s regular presence here.
I noticed that one of your criticisms of Forte was the ‘one big project’ issue - and that you prefer the way that C3’s structure allows for a clearer and less cluttered environment.
It is C3’s strength that allows it to operate easily to your desired level of compartmentalization!
I actually like having a master song in which its States become the Set List.
If, for some reason, I need to have a radically different setup, Cantabile doesn’t force me to break a Song to make a Song which can be incorporated into a Set List.
It allows the user several approaches to achieving the desired result.

Thanks for the replies, Ade. I am familiar with the ‘Entire Bank’ option, but that has a big disadvantage - changing states means the preset gets reloaded even if it is the same preset in both states. Most of the instruments I use require a second or longer to load sounds, so reloading a sound in the middle of a song will produce a noticeable dropout.

I have come up with a workflow that works well for me and yes, the forum was helpful in that regard. My point was that it took a long time to get there and I had to reorganize my songs several times through the process. I have seen several comments on the forum from others expressing the same issue, so it seems to be the one stumbling block that new users have with Cantabile. To some extent, it is inevitable due to the flexibility Cantabile provides. Flexibility means choices, it’s just that now, it’s tough for a new user to understand the consequences of those choices.

In the end, I would rather have the flexibility even though it adds complexity. My suggestion is meant to try to make C3 more accessible to new users.

1 Like

Yes, load time is the caveat.
As you may have noticed, Cantabile offers a virtual bank of presets.
I think it’s here that the solution is to be found once the save as issue is addressed.


If I understand what you are asking for, I completely agree. The fact that virtual presets auto-update when you make changes is not the way most software works, including audio software. IMO, editing a virtual preset should not update the stored version of the preset until you explicitly save it. It should be possible to edit a preset, then save it as a new preset.


I don’t know if this will help but have you tried unchecking "Automatically Update States " ? Then you can update state with Ctrl+U input.

Edit: After a re-read I see your problem and also see that this advice won’t help. Sorry about that. I do like you request for this capability though.

Correct (referring to your edit).

Hi @tomboughner

Wow, not sure how I missed this post until just now… but thank you for writing it up and I’m glad to hear you’re enjoying Cantabile. Thanks too for the ideas/suggestions - I’ll keep all that in mind.

Some comments:

  • Defaulting the routes in racks to to the rack ports - agree
  • Defaults routes for racks - agree.

You can avoid this by turning on the state behaviour for any of the plugin’s parameters that you want varied across states. eg:

Note you can multi-select all the parameters in the state behaviour panel and press enter to toggle them all on-off. Would a new state behaviour “All Parameters” be handy?

I have some hacky non-friendly stuff that I use for my own testing. It’s logged as feature here

Surprisingly rarely asked for, but perhaps something I should just do. Logged it.

Getting new users up to speed is one of the biggest problems I’m facing right now and it’s leading to posts like this and this. I agree walkthroughs would be good, but right now I’m thinking about some improvements in the software itself.

Thanks again for your insight!


An “all parameters” state behavior would be wonderful!

I think you can achieve this by using “entire bank” …

To avoid delay a ‘bank’ recall is not really the thing.
It’s just the parameters, as would be the case if you were using DAW automation, that would be addressable I’m assuming.

It’s similar but different. All Parameters would save/recall all the parameters without reloading the plugin’s other internal content (eg: selected sample sets etc…).

1 Like

Spent the day working on tool tips. Coming soonish…


Wow, thanks Brad! This is exactly what I was talking about when I mentioned the great support with Cantabile. What other software can you make a feature request for and have it in development two days later?


Brad, to answer your question, yes, an all parameters Behavior would be very nice. I also wonder if it wouldn’t be helpful to make CTRL-A select everything except Entire Bank, even though that is not standard Behavior for CTRL-A. What I find myself doing with almost every rack is selecting all behaviors with CTRL-A, then manually deselecting Entire Bank, then exporting all those behaviors to the parents song. I understand why Entire Bank is an option, but even this thread shows there’s some confusion about what it does and it seems that for most people it’s best to leave it off.

This potentially ties in with my suggestion here. Perhaps one nice solution might be a drop-down at the top of the state behaviour list, for making pre-configured selections, with entries like “All”, “None”, perhaps some other useful combinations such as omitting Entire Bank, plus the ability to store the current state behaviour in a selection preset for applying to other objects.


New build hot of the press with a bunch of changes designed to help with usability/getting started.

All the details in this blog post


All very useful stuff - I especially like the split view editor!