Saving patch names

So far the only way I’ve found to switch patches by name on an external MIDI device has been too create a rack with a crap ton of named rack states and an On Rack State Change trigger that sends a patch change message. Is there a more elegant way to do this? I.e. a way to save a list of patch names and have them come up with the patch change value?

1 Like

That’s the way I have been doing it too. It also varies as to ease of use even then.

For the uninitiated…

Some VST’s show their presets automatically. But the “reporting” of the VST’s to Cantabile varies as to what they tell Cantabile about themselves, so whereas some VST’s show all the patches automatically, others have to be assigned to the list by going to the “hamburger” icon in the VST after loading a patch, hitting “Rename”, and then save the song. Don’t forget to move the slot to the next empty Preset entry before changing patches.

Cantabile Rename VST Program4

Cantabile Rename VST Program7

When done this way, then states can pull up the patches for you. Just make sure the VST’s state awareness is turned on at the bottom left of the states window.

I’m curious to hear whether there is a more elegant route other than having a boatload of states in a rack also.


Looks like you need to update your custom Cantabile theme, Terry :smile:


That is on my other computer where I created that post, where I HAVE Cantabile installed, but it is never actually used for live playing. That is @So_Godly’s Red theme from long, long ago now! :slight_smile:



I found another possible way, but it would involve creating a special bank of patches in the correct order you desire within the preset itself, or use the “Rename” approach I showed above.

It uses a button that sends a controller signal to a binding that sends a “next preset” signal to the VST.

I’m thinking that one could perhaps create a Cantabile binding that responds to specific program messages (or controller numbers?), like a Program Map found in many hardware synths. I’ll fiddle with that idea. It would be nice to have random rather than forced-sequential access to any patch I need at the moment.


Ok, I found a “random access” method that works with my Behringer FCB1010 pedal, sending any program change programmed into that pedal’s foot switches:

This definitely works!

If the presets aren’t in existence yet in the presets list, you’ll need to use the method above - but sending a program change does work using this method, and does not involve using states.

(I wonder if states can be used to pull up different preset lists one has or makes, like when I use a different bank in Spectral? I need to have the bank pre-selected in Spectral at the moment for this to work, and it only switches within that bank. Then again, the pedal is not sending banked program change messages… so of course not! More experimenting to do.)


That’s exactly what I was thinking.

1 Like

Well, on a patch-by-patch basis, you can use the “Rename Program” approach I talked about above if the VST is not updating that list automatically, and then from the hamburger menu use “Export Bank” to save your assortment. Then you can use “Import Program or Bank” to bring that list back again, so you can have a variety of lists. Trouble is, this is independent of Cantabile by itself - no binding will import a bank for us that I have found. Each import has to be done manually.

Perhaps an assortment of racks would work with different imports, having different identifying names so the “cannot add same rack twice” rule does not kick in.

[I just tested that, and indeed you can have two racks with different instances of the plugin, and the imported banks are sustained with saving the rack.]


Just discovered this cool method that uses a “System Wide” keypress to trigger a patch change. Still needs a whole boatload of bindings, but that is more “pretty” than 59 states, perhaps!

Be sure to close Cantabile or disable this binding by un-checking it if you want to use any of the assigned keys later on!

Using a “Main Window” keypress will not take the key out of general use. (Only works when the main “Routing” window is displayed.):

The third option is to have the key work with any (Cantabile) window open:


This is interesting, just shared again in a different thread close by:

Brad’s explanation describes how the import/export bank function works in Cantabile there.

EDIT - see also:


Correct me if I’m wrong, but is the core problem here that the patch names of plugins inside a rack are a bit too hidden away? ie: you want a way to select plugin presets inside a rack without exposing states for every one?

That would be the idea of what is desired - sort of like a Program Map in my Yamaha TX81Z, with an easy to setup arrangement that shows what patch you will be pulling up.

The bindings approach is very close (and can be used in conjunction with the Notes column to name the preset)

Here is what I mean, using the notes to show the name with the “Any Window Keypress” approach"

Not very automatic, of course! :slight_smile:

Some hardware keyboards have very easy Program Map setup screens - you just assign an existing patch/Program to each slot using a drop-down list or a second selector list screen.

Of course, I would love midNam support, too, but…


Terry, Let me send you an updated version later today :slight_smile: I have it ready.
(I just copy the extra files over the old folder)

There it is Terry :slight_smile:

1 Like

The original purpose of the thread was for external hardware patch changes rather than VSTi patches. Cantabile automatically reads the names of the patches from a VSTi and appends them to the numbers in the editor. I was hoping to somehow emulate that behavior for patch change MIDI messages to be sent to external hardware.

Though I myself did not entirely catch that, I will mention that I use MidiQuest 11 Pro to accomplish this.

Further, it will output your hardware setup to a midnam.xls file, which is why I’d love for Cantabile to be able to use midnam.xls files!

I use it as it lists the hardware patch names. I suppose since that list can be exported as a text file that one could incorporate that text file content into a binding setup, editing the song or rack in a text editor.

I may mess with that and will let you know what I find out.


1 Like

MIDI quest pro looks like it would be very useful for setting up per song setups for my hardware, but that price tag! Not this year…

1 Like

Yeah, it is quite an expense alright. Definitely understood! I saved quite a while for it.

I’ve been looking over the Rack settings inside the file, and have not seen an easy way to do replacements of names, but once you do set up bindings with the states, it becomes merely a matter of re-naming (editing) each state to change the name, as the route & bank/patch# stays the same. Here is my Wavestation SR one:

You only need the one binding if you have those two items checked on the lower left - just keep changing the bank and program entry (which you likely already know, but for those who don’t…)


BTW - anybody needing the Cantabile bank numbers for the Korg Wavestation SR - here they are!

Cantabile Wavestation SR Bank Values

And here is my SR rack, with the states to get you to patch 0 of each of the above banks, plus a “Favorites” having a ROM Patches selection that uses the last binding to call those up via states.

WS SR Favorite Rom Banks.cantabileRack (657.6 KB)

May be useful as a model for other applications/hardware.


1 Like

Yup, that’s what I’ve been doing. Setting that up for a device with hundreds of patches can be a beast though.

1 Like

More like an act of cruel and unusual punishment, if you ask me…

Ah, for an easy way to simply insert different names en-masse into an existing state setup, as the bindings do not need to change at all. Perhaps from some two-column editor where one can load a text file of patch names into one column and assign those to slots in the other column? How we acquire that text file of patch names would still be our own problem (not expecting the MidiQuest sort of sysex-querying that is different with each hardware synth).

I’m studying the Rack file format for clues how one might write a Visual Basic or other such program to parse the selections into place. I need to step into Mr. Peabody’s Wayback Machine to remember how to use VB though! (Still have Visual Studio, but … use it or lose it, ya know?) Is this a @Torsten sort of solution? (Hello!)

Using the rack’s “drop-down” menu that changes these kinds of patch-change states does make this sort of operation more sane to actually access this buncha states. Racks Rock! :slight_smile: