Cantabile Development Blog

Follow the development of music software Cantabile

Articles | Full Index | RSS Feed


Improved Program Bank Support

Today I've released Cantabile build 2041 with better support for program banks. To start with, I've introduced a new way of specifying program numbers:

  • No bank qualifier - <programnumber> - eg: 12
  • Lsb/msb bank qualifier <msb>.<lsb>.<programnumber> - eg: 10.11.12 = bank msb 12, bank lsb 11 and program number 12
  • Bank qualifier <bank>.<programnumber> - eg: 1000.11.12 = bank msb and lsb automatically calculated for bank 1000 and program number 12

In this new format, program numbers are 1 based while bank numbers are zero based.

This new format can be used and is displayed in a few places:

  • MIDI routings can use this format to specify which program number condition for routing. If the bank isn't specified it will route on any matching program number. If the bank is specified, the bank must match for the routing to occur.
  • Triggers that send program changes.
  • MIDI Controller Assignments can now be made for bank/program combinations and the new format is used to display the bank/program.

Also, MIDI routings can now send program changes. In the Set Program command for a MIDI routing in addition to specifying a source program number (that controls whether the routing applies), you can now also specify a program (and optionally bank) to send before routed events. The effectiveness of this a little questionable because Cantabile can't know if the target of the routing has received a program change from another source, but Cantabile tries to ensure the appropriate program changes are sent as required by sending them before the first event is routed, or on receiving a matching income program change.

images/MidiRoutingProgramNumber.png

Finally, note that the way program numbers for triggers are stored in session files has changed a little. Session files will be automatically upgraded in build 2041, but if you save and reload them in build 2040 or earlier some program settings may no reload correctly. This only applies to trigger send program change settings.

Build 2041 is available now.

Posted on June 11, 2009

Share This

Leave A Comment

All comments will be reviewed for spam before being displayed.