Drum vst problem when changing rackspaces

Ooookay Sir, here we are…
I downloaded a Guitar-Simulation VST to simulate the problem.
It is called “AGM Lite” from Amplesound, which anyone may download here: http://www.amplesound.net/en/download.asp
It also has a picking and a strumming mode and idontknowwhatelse… fair enough for testing!

The screenshot of the whole wiring is shown in guitar_test_01.PNG
Like i said above, i placed two blocks of that VST in my rackspace (one in picking mode, the other one in strumming mode, see guitar_test_05.PNG), and the drum VST “Strike” from AIR Music. Every audio out is connected to a 8-ch Mixer block.
Both guitar blocks get the same midi signal all the time.

The front of the rack has one button which toggles between strumming and picking, and for each mode an adequate LED (also a Label) which indicate the active module. There are also three faders to adjust the level of the three sound blocks. (See also screenshot guitar_test_02.PNG)
The LED-widgets are connected to the “mute” control of the mixer channels, so the one that is lit is unmuted (reversed value!).
Behind the button, there is a small script working which toggels the state of the LED-widgets (and those will switch the mute state of the mixer channels).
You can learn this single toggle button with any midi signal/controller that is available (maybe a single note?).

Unfortunately the upload function of the forum seems to be “on strike” again sigh
Well… then take the screenshots from my dropbox: https://www.dropbox.com/sh/dvrfrujagb7w79y/AAAR4gJ3ISUveYKEa-Qon1Kya?dl=0

…hope i could help. :slight_smile:

You may also download the rackspace from my dropbox: https://www.dropbox.com/s/k0lt6u530jiz1tm/Guitar%20test.rackspace?dl=0

The script is as follows:

var
bt_mode : Widget
lbl_msg1 : widget
led_pick : widget
led_strum : widget

widg_val : double

bt_val : double

on WidgetValueChanged (widg_val : double) from bt_mode
if widg_val ==1
then
SetWidgetValue(led_pick,1)
SetWidgetValue(led_strum,0)
SetWidgetLabel(lbl_msg1 , “Picking mode enabled”)
else
SetWidgetValue(led_pick,0)
SetWidgetValue(led_strum,1)
SetWidgetLabel(lbl_msg1 , “Strumming mode enabled”)
end
end

Erik, you are a champion! That is amazing work! Thank you so much. It’s 8am Tuesday morning here in New Zealand and I have to go to work soon (I am a part time teacher). When I come home I will download the files and begin to try to understand what you have told me. I have never used a script before, so that will be my first challenge. Once again, thank you soooooo much. I’d like to shout you a beer:)

Hi Erik. A couple of problems with the downloads. SS no 5 was only 75% uploaded, so thats all I got. And the test rackspace wasn’t a GP file, so I couldn’t open it. Sorry:)

Erik - I made a mistake thinking the file was a gig file. Sorry. Anyway, I imported the rackspace file into GP, set up the guitars and hey presto, it works really well. Thanks. Now, never having used a script before, I’m at a loss as what to do with it. I presume it is part of the message sent from OnSong for the switch from picking to strumming? What do I insert into OnSong to make the change over happen? I need it to happen as I hit my bluetooth pedal that scrolls from the OnSong verse to chorus and back again. Just not sure where the script fits in.

Hi Alan, good to see it works at last. :slight_smile:
The script is already part of this rackspace and works in the background.
Each rackspace may have it’s own script and the script is automatically embedded.
You can see (or edit it) when you open the script editor window in GP (menu “Window” -> “show script editor”).
I just copied the code into my posting, so anyone interested can see what i did without having to import the rackspace.

So the only “active” element you have to care about is this single button.
As you can see on screenshot #3 (within the “MIDI” frame) i learned this button to listen to Controller 3 on Channel 1 which is sent when i press a button on my “Code 61” (it’s just the name of my master keyboard and has nothing to do with “code”, this might be a bit confusing in the picture).
This means if you manage to send a midi CC3 from your software, the button should react to it. Or you can “learn” the button to any other midi event you like - i have read that OnSong can send MIDI control change events. Maybe you have to re-“learn” the button anyway because you don’t have my master-keyboard. Just click on “Learn” to make it listen for a new command, then send a CC of your choice from OnNote. Et voilà! :wink:
Good luck with that!

Hey Erik. YOU ARE A GENIUS!! I got the script working by using the learn function making it learn by clicking the CC in OnSong. I inserted the #cc3 on ch 1 into OnSong and the change from picking to strumming is seamless. It works absolutely brilliantly. Thank you so much for all your hard work. In the same rackspace where I change from picking to strumming, I need to make the strings vst go louder. Can I do this also with your script?

Hehe… thank you. :smiley:
Good to hear that it works as intended.

What String-VST are you talking about?
Is there also another VST in your rackspace?
If so, why don’t you just connect that string-VST to channel 7-8 of the mixer block?
Then simply place another fader at the rack and assign it to the volume control of Ch 7/8.
Finally learn this fader widget to listen to another CC that is also sent by OnSong.
The value may vary between 0 to 127… just how loud you want it to be.
No need for the use of a script here - it’s just the basic functionality of GP (learn widgets to MIDI).
You also could remote control the other fader widgets by learning them to diffrent CC events. :slight_smile:
Just give it a try. :wink:

This is all good stuff Erik. You must visit New Zealand so we can have that beer together. I’m very interesated in what you’ve shown me using scripts and widget control etc. Did you learn it from the manual or are there Ytube videos giving instructions.

I have a problem Erik. I see Strike 2 is responding to midi ch 1 for its fill and sets etc. You’ve also set the picking/strumming to react on ch 1. The Strike 2 info on ch 1 is clashing. How do I change the midi channel for pick and strum please?

I had a similar problem with my master keyboard… it has a pad field which i use for triggering drum patterns.
Those pads are configured to send on channel 10, but strike is (just like in your case) on channel 1.
And when i played on the keyboard, the drums also played some crazy stuff because they got their signal from the keyboard on ch1.
I solved it by using a second MIDI-IN block which listens only to channel 10 and forwards that to channel 1.
This second MIDI-IN block is only connected to the Strike VST, so the incoming signals may well be on diffrent channels but each of the plugin-branches is fed with its own signals on the desired channel 1. This way none of the VSTs is affected from the others signals.
I (once again) try to attach some screenshots… but i assume, i have to use my dropbox again. Lets see… nope. No chance.

So this the link to the screenshot: https://www.dropbox.com/s/k8mas95bhwggkkh/guitar_test_06.PNG?dl=0

Just send the trigger signals for the drum patterns on diffrent channel than that for the guitars and configure two separate MIDI-IN blocks like i showed on the picture. I hope i could explain this well enough. :smiley:
It’s logical but also a bit confusing.
Good luck with that.

Yes that looks like a good solution. Thanks once again Erik (must be up to 4 beers by now!). I’ll work on it later on today and let you know how it all goes.

Erik, if I want to add extra guitars to your sample rackspace strumming and picking file, can I just copy them somehow? I would need each new guitar to have its own channel so I can pan each one differently. How do I go about adding more guitars that respond to your special strum/pick switch?

Uuhhm… could you be more specific about what you want to do?
I don’t really understand your intent.

Ok, sorry. Real Guitar has 7 acoustics and three electrics. I often use two or three together and sometime up to five together. A typical use would be a Les Paul picking panned hard left, a Strat picking panned hard right and a twelve string strumming in the middle. So what I want to do is add more guitars in pairs (one to strum and one to pick) so that I have them available. Because I haven’t an understanding so far of how you’ve done the pick/strum switch, I wondered if I could just copy the guitars, change them to electric or nylon etc, and have them still respond to your picking/strum switch.

You may of course copy the rackspace and change the two guitar-blocks on your demands.
But there still was only two blocks per rackspace if you do so.
The switch (and its script) in this rackspace just controls the two LED-widgets which are bound to the mute-function of the mixer.
So there are only two switching-conditions (on/off = strum/pick) to toggle the two leds (strum/pick) and the muting of the two mixer-channels (strum/pick). The switch is therefore limited to two signal sources.
But maybe you could place some additional mixer-blocks before the script-controlled mixer block?
Like you’d have two pre-mixes for all the strumming and all the picking guitars, which you lead then into the two script controlled channels… just an idea.
Maybe this fits your needs?

I made a screenshot to show you what i meant… :slight_smile:

Hi Erik. Double genius:)! That looks so simple and should work just great. You have given me such good help over the last few days. I think you have solved most of my concerns. You have shown me just how flexible and powerful Gig Performer is compared to the host I was using before. I have come to realise that GP’s graphic representation of midi blocks and the way that they can be connected and re-ordered so simply is far ahead of any other software I’ve looked at. I’m looking forward to making some great music using all of your wonderful input. Once again, thank you so very much.

What shall i say? You’re welcome! :slight_smile:
And if i ever come over to New Zealand it may well be that i’ll be drunk all the time - because of all the beers you owe me. :smiley: :wink:
Just kidding. It was fun to help you with your problem… well… most of the time at least. :wink:
Have fun and make good music.

Ha Ha Ha. We can be drunk together. Thanks again.

Hi Erik - I’m back. I asked you about controlling the volume of a strings vst and you said:

“Why don’t you just connect that string-VST to channel 7-8 of the mixer block?
Then simply place another fader at the rack and assign it to the volume control of Ch 7/8.
Finally learn this fader widget to listen to another CC that is also sent by OnSong.
The value may vary between 0 to 127… just how loud you want it to be”

I added the extra fader ok and assigned it to the string vst, but I’m not sure how to tell the fader to control the volume. Midi learn didn’t seem to work this time, unless I did it wrong. Can you help just one more time please? Many thanks.