Is there a way to lock the Min note and Max note from being changed when gig performer 4 is closed?

Hi All,
I have a scenario where I would like a Midi imput Max and Min note to return to the original way I configured on a one keyboard setup.
There are 2 sliders widgets controlled by the same midi cc setup for the described function below.

One slider when invoked raises the Max Note of an electric bass and increases the Min note of the piano so there is no overlap. both functions work using one slider.
The MIDI Input name for the Bass is called “MIDI In (KRONOS KEYBOARD) Bass”
The MIDI Input Name for the Piano is called “MIDI In Piano F#3 66 > C7 108 C7 (Piano Low range for Bass Solo Range)”

I also have buttons assigned to enable or disable both these Midi inputs in case I am playing a full piano or other config.

The 3rd slider lowers or raises the Max Note o f"MIDI In Piano F#3 66 > C7 108 C7 (Piano Low range for Bass Solo Range)" as there are times when I take a solo with one of the SWAM suite of acoustic instruments as I need the Max Note of the MIDI input “MIDI In Piano F#3 66 > C7 108 C7 (Piano Low range for Bass Solo Range)” to be reduced from C7 108 to F#3 66 by means of a button.

The problem I am having is the MIDI input called “MIDI In Piano F#3 66 > C7 108 C7 (Piano Low range for Bass Solo Range)” commonly gets changed and I have to manually enable the MIDI input and do aLearn on the Max note again so it’s C7 108

Is there a way to lock this MIDI input so it saves with the original setting I intended for it?
or is there another way to accomplish this? The MIDI input is in the Global Rackspace.
I tried uploading my Gigfile but oddly this program says it’s empty.

When you say the MIDI input “gets changed”, do you mean that no messages sent from that controller are received by GP?

So if I understand correctly, is it the widget value that changes?

No the Midi input which is OMNI key input and the the 3 widgets do control it. Where I run into problems is when I make a change to the Gig file and need to save it. There is nothing in the Min and Max note commands telling it to return it to the original way I saved it.
That is why I named the Midi In Omni to: “MIDI In Piano F#3 66 > C7 108 C7 (Piano Low range for Bass Solo Range”
so I would remember what values to reset the Min and Max note to prior to making any saves to the Gig file.
I only have a rudimentary understanding of GP4 so there are probably better ways of doing this.

For my understanding, you want the ranges be always the same,independent how you saved it?

With widgets you can set to a defined value when a rackspace is loaded.

Yes there is one Min Note and two Max Note widgets setup to control the MIDI In Omni: “MIDI In Piano F#3 66 > C7 108 C7 (Piano Low range for Bass Solo Range”
The problem does tend to occur with the Max Note of the input since there are two of them which is why it would be hand to have a way to lock this specific MIDI In Omni from be being updated on Gig file saves.

I was wondering if this might be a future feature for GP.

Yes, Assuming you are referring to the specific MIDI In Omni.
This is in the Global Rackspace also.

Would this work similar in the Global Rackspace?

Assuming yes how would I configure the Widgets to do this?
Which one of the two Max Notes widgets would I apply this control?

Try this


Thanks Pianopaul. For some reason the options for Initial Value on gig load (default) on my Gig file are all greyed out in the Global Rack. I tried creating a test one in one of the regular backspaces and it showed the properties like your example.
Is there something further needed to enable this feature for the Global Rackspace?

What about using a global script initialization section to set those parameters

You could also use the first rackspace in your gig file, along with the ‘global parameter’ feature, as the way to reset your widgets in the global rackspace.

2 Likes

Thanks rank13,
I tried creating this just as described in the provided hyperlink with two fader knobs in both the Global and specific local workspace that I use most but I have a few questions.

  1. Since my original widgets to manage changes were buttons and then setting a value for the Min and Max note shouldn’t I be using buttons instead of faders?
  2. How do I get them to run automatically when my Gig file loads?

Thanks dhj
That sounds like a perfect solution assuming it would run on opening of the gig file but I would not know how how to code it.

Right-click on the MIDI In block in the global rackspace and give it a GP Script handle

I used the the handle GlobalMidi
screenshot_5953

Then open the Global Rackspace Script Editor (from the Windows menu), copy/paste the script below into it and press the Compile button. If you have the Midi In block editor window open, you’ll see the values set immediately.

In the example below, the min and max are defined as C2 and C4 respectively but you can easily

Var
   GlobalMidi : MidiInBlock


// For convenience define the min and max desired notes 
// Change as needed

var
   MinNote : Integer = C2
   MaxNote : Integer = C4

Initialization

// Parameter 16 is Min Note

   SetParameter(GlobalMidi, 16, Scale(MinNote, 0, 127, 0.0, 1.0))
   
// Parameter 17 is Max Note
   SetParameter(GlobalMidi, 17, Scale(MaxNote, 0, 127, 0.0, 1.0))
   

End

Thank you dhj,
I followed your instructions and altered the var section to:

MinNote : Integer = F2
MaxNote : Integer = C8
I then saved after moving one the Max Note faders so it was no longer showing F2 (53) for Min Note and C8 (127) on the Midi In Omni.
It continued to save the Max Note at what is was set to prior to my save when I reopened Gig Performer 4

I am not sure if this is pertinent but I also have that Midi In Omni transposed down -12

No controls have been added to change the octave though from -12.
Oddly the symptom is always the max note that is changed from the one I set it to, not the Min Note.
Am I misinterpreting you instructions?

That’s very strange — I realized after writing this that it shouldn’t actually work at all as written since your widgets will trigger after initialization which means that you might have to get clever and use an On Rackspace callback to handle this but I’m not sure why one of them is working.

Can you upload the most basic gigfile possible that demonstrates this problem?

It has never been a problem with Min Note so if it wasn’t working then there was nothing to change. I just wanted a way to insure but ranges were what I setup initially on gig file load.
I tried uploading the gig file with my initial post to this site and it said it was empty.
I’ll try stripping down a copy to try again.