• SONAR
  • Strum GS-2 - patch change
2016/06/06 11:17:25
dsurkin
I am running an instance of GS-2, and I want to insert a patch change. GS-2 has a bunch of different banks, but I can't seem to access them from the Sonar patch change commands. When I go to view the event list, and I insert a patch change, the program only lets me access bank 0.
 
In an older file, I substituted GS-2 for the Roland GS module (the one that came with Cakewalk, years ago), and the patch change commands already present in the file seemed to randomly select different GS-2 patches from different banks. I suspect that Sonar might treat all the GS-2 banks are bank 0, and then reassigns patch numbers to the various patches - but I'm not convinced this is correct.
 
Has anyone had any success selecting different banks for patch change messages with GS-2?
2016/06/06 20:04:00
msorrels
I think you need to setup the MIDI events with two messages.  A Control 32 message, with the bank number and then a Patch change using Normal mode and -- as the bank.  You also have to make sure MIDI bank/patch changes are turned on in GS-2 by clicking on the MIDI "light" and checking the boxes.  All the AAS instruments are like this, I never could get the Sonar insert Bank/Patch change to work.
 
Here's a screen shot.

 
Screenshot is from an Ultra Analog VA-2 project which has a bank 13.  Strum only has 6 banks so those bank numbers won't work, but you get the idea, I just checked it and it does work on GS-2 as well.  The Control 32 message is the bank number (1-6 for GS-2), the Patch is the patch number -1 (since it starts at 0).  You can insert these two messages using the Event Editor into the MIDI track.
 
2016/06/06 20:05:26
promidi
dsurkin
Has anyone had any success selecting different banks for patch change messages with GS-2?



The Strum GS-2 responds to bank changes via CC messages, specifically CC0 and CC32.  Both values are required and in that order.  The value of the CC0 is expected to be zero while the value of the CC32 represents the bank number.

Of course, you need to make sure that Strum GS-2's MIDI bank changes is enabled.  This is done by clicking on the MIDI button in Strum GS-2 and checking the Enable Bank Changes option.

I hope that helps.
2016/06/07 11:13:00
dsurkin
Thank you both for your comments. I was also thinking of trying to create an instrument definition - although some of the Cakewalk documentation says that only applies to hardware synths, there does seem to be a few instrument definitions extant for VST plug-ins.
 
I will report back after I try the suggestions of msorrels and promidi.
2016/06/08 09:37:05
dsurkin
Your suggestion worked like a charm. Thanks!
2017/04/11 03:55:49
garrett.scroggin
While this did work for me as well (took me a while to realize I wasn't actually using Kind = Control), I found that I must place the Bank and Patch events at least a quarter of a measure ahead of the first note in order to avoid a gap in audio with any VST I've tried. For some reason the engine will not play the first note if the change events are any closer.
2017/04/12 00:48:58
dsurkin
garrett.scroggin [snip] I found that I must place the Bank and Patch events at least a quarter of a measure ahead of the first note in order to avoid a gap in audio with any VST I've tried. For some reason the engine will not play the first note if the change events are any closer.



Yes, that's right. Insert the change before you want it to take effect.
2017/04/12 03:22:39
synkrotron
I'm curious... Patch changes via MIDI is something I have never bothered with while using VST instruments. If I want a new patch I just insert another instance.

Other than saving the need to insert another instrument and perhaps save CPU usage, what are the advantages of patch changes?

Like I said, just genuinely curious here

cheers

andy
2017/04/12 10:35:39
promidi
I use patch changes evens in projects all the time.  Mind you , this is with MIDI only projects. 

But for vsts, you have hit the nail on the head. 

You would save on CPU cycles, especially on some of these CPU hungry VSTs (Yes, Meldaproduction's mPowersynth, I'm looking at you).   However, issuing patch changes would only make sense with physically modelled synths, as they tend to change patches on a dime.  Not so much with sample based synths - they take a while for the patch to load and for the actual sound to become available (Certain Sonivox synths suffer this issue).  Unless you issue the patch change command well in advance of hitting that note, you would be better of having multiple instances.  It really depends on the synth.

Some effects can change presets by sending patch change commands to the VST's MIDI in (VST2 versions of Meldaproduction effects can do this, for example). Of course, you would have to have a separate track just for the patch changes. 

So having just one instance of an effect but issuing patch change commands can save memory and CPU usage.

It really depends on the layout of your project that determines whether to use patch changes or multiple instances.
2017/04/12 13:01:33
azslow3
I think the only case when changing patches can significantly save on something is very bad written VST Synth.
 
For CPU, if there is no input at all (so for Soft Synth with no MIDI events), no "tail" from previous MIDI event and the Synth is not self generating, CPU consumption should be no more then from a "Rack spacer".
 
For RAM, if plug-in consume significant amount of not shared memory than it is sample based plug-in and can not change patches on the fly.
 
I repeat, there can be some exceptions, but only as exceptions.
© 2026 APG vNext Commercial Version 5.1

Use My Existing Forum Account

Use My Social Media Account