"Blank Slate" Global Normalizing Patch

I’d like to request the ability to define, for each MIDI out, a patch number that will be sent when switching AWAY from a rackspace.

This would be useful in ensuring that external devices are not left in ‘weird’ states by the previous song.

For example, if I program my Behringer x32 to add a bass guitar chorus effect on “Sweet Child O’ Mine,” it works great.

However, if none of my other 80 songs send patch changes to the x32, the next song in my setlist will have chorus applied to my bass guitar. The fix is (unless I’ve missed something, which usually I have!) to add a ‘default x32’ patch change to the x32 output on my other 80 songs… and if I ever need to change the default, I need to change all 80 once again.

If a rackspace sent out global-default patch changes to all connected midi-receiving devices just before a new rackspace was selected, the x32 would receive the ‘default’ patch change, quickly followed by the patch change from the subsequent rackspace (if any.) The Chorus would be cleared out, and then any new patch applied.

Bonus points if Gig Performer could recognize when a “Default-NewPatch” pair was being triggered and simply send the “NewPatch” in place of the default. This would avoid the need to play around with timing on each controlled device to ensure both patches are picked up.

Any thoughts?

Why not just create a MIDI Out block, enable the PC option, set it to some value, then just copy the block to the clipboard and paste it into all the other rackspaces as appropriate?

1 Like


Yes, I could do this. However, doing anything dozens of times increases the chances of missing a rackspace or disrupting something accidentally. Not to mention that 30 seconds per rackspace is still 40 minutes that could be spent practicing or programming something else.
Between the risk and the time investment, it would be preferable to have the app developers include a null tertiary operator to say “send this patch… or this one if the other is null… or nothing if they are both null.”

Also, it bears mentioning that my Gig Performer controls a full bands’ worth of instruments: 5 keyboards, e-drums, digital mixer, lighting scenes, video scenes, bass amp, guitar amp, and three voice channel strips. Lots of copying if we decide to change things up.

I get it – the problem is that the idea doesn’t really generalize very well. For example, what happens when the next person wants the MIDI Out block to send three different messages out when switching away. And then what happens when somebody else wants some other arbitrary actions to occur when switching away.

Further, I am uncomfortable with the concept of an “old” song (or rackspace) being responsible to make sure that a “new” song works properly. I think it’s up each song to make sure that everything is set correctly for it. For example, why would you send that patch change out when leaving a rackspace only to have the next rackspace to which you switch turn it on again.

First of all, it’s not like you have to repeat that 40 minutes often. Secondly, it seems to me it’s going to take almost as long to configure each MIDI Out to send that default patch as it is to just set the desired value in a MIDI Out in the rackspace to which you switch.

In any case, if you must do this, you could always use GPScript but I would reiterate that I think it’s a bad idea to have old songs be responsible for new songs.


I think you’re right, actually.

There is no need to add this function to a new callback occurring when switching away.

It would make more sense to assign these globally and have them stand in for the “open rackspace” patches if nothing else is specified there. No need for double-sends or adding new callbacks.