Since there are several people interested, I include the gig file and some explanation as the routing is not so trivial at first.
Band1x.zip (6.7 MB)
Note that I did not include the necessary GP Preset files and the scripts and wiring is work in progress.
Below is a rough explanation:
First a text file is read (called songs.txt), containing the configuration for each song, below is a fragment for one song shown:
How Did You Love
| 1:HA:1, 3:K7/Grandeur:19, 5:SU/Surge Synth 1:9, 7:PN/Pneuma Synth 1:7, 13:PH/Choir:25
| Light = Mood:Uptempo
This means that MIDI Channel 1 will be used for HA(mmond), using the preset name ‘How Did You Love’, which end up at audio channel 1 (for Left and 2 for Right), then MIDI Channel 3 is for for Kontakt 7’s with GP Preset Grandeur, output to 19/20, then MIDI Channel 5 Surge using GP Preset Surge Synth, etc.
Below is the full songs.txt file:
Songs.txt (9.0 KB)
Below is the local rackspace for one song shown … The global rackspace has a Hammond section which will automatically be enabled (shown) when a Hammond is used.
Also there are some generic buttons and some light panel using for the light (DMX) system (work in progress).
The next picture shows the local rackspace wiring. Here things are getting interested.
First, the MIDI inputs are placed, and optional transposes etc. These are then changed to a MIDI Channel Constrainer, to make sure that each MIDI block will change it’s MIDI channel to the one selection in the songs.txt file.
After that everything is routed to the bypassed rechannelizer on the right. This is ONLY for nicer layout, and all MIDI channels are sent then to the global rackspace.
This is the global rackspace, which is the ‘heart’ of the system and will be split in smaller chunks.
First, all MIDI channels from the local rackspace (a mixture of 16 channels) are now split again.
A script (see attachment below, also some shared parts)
scripts.zip (12.4 KB)
The script calculates how to MIDI-map the input MIDI channels to the output MIDI channels and since there are more than 16 plugins, mixers are used to make sure the correct routings are set.
Then before each plugin there is a MIDI Channel Constrainer to change it’s MIDI channel back to 1 and lead it into the plugin, to be output to the mixer.
After that, the audio is routed back to the local rackspace, where effects, audio mixers can be used, and routed back to the global rackspace again for post processing.
Finally there is some post processing.
The script may look complicated (with more than 1,500 lines), however, it has a lot of functionality:
- Bypassing everything that is unused
- Parsing the songs.txt file and setting the channel constrainers and MIDI rechannelizer.
- Loading the correct presets
And some other goodies unrelated to this, like:
- having some buttons for going forward/backward 5 songs in the set list (to prevent loading times)
- stream audio file player support
- post processing
- using pads for the light (DMX) controller.
If you have any questions, please let me know.