The hidden power of the MIDI In Block

The hidden power of the MIDI In Block

Gig Performer’s MIDI In block is not just your everyday block for receiving MIDI events. It can do much more than just receive MIDI messages from an external MIDI device and feed them to connected soft-synth plugins.

It has important other functionality that often relieves you from having to use multiple separate MIDI processing plugins.

First of all, let’s just look at the plugin editor for a MIDI In block in Gig Performer 3. As you can see, the functions are broken up into different sections.

Plugin editor for a MIDI In Block, in Gig Performer

Let’s now examine each section, going from top to bottom.


Transpose incoming MIDI note events up or down, in Gig Performer, the audio plugin host

You can transpose incoming MIDI note events up or down by up to 4 octaves

Channel routing

Remap incoming events on one channel to another channel or block certain channels.

You can remap incoming events on one channel to another channel or block certain channels.

Keyboard splits

Create a keyboard split by selecting the lowest through highest keys, Gig Performer

You can create a keyboard split by selecting the lowest through highest keys that are allowed to pass through.

Tip: if you want multiple keyboard splits (including the ability to do partial layering), simply create multiple MIDI In Blocks and configure each of them to the desired range.

See also this forum article for the way to split your keyboard to control sounds that are on different MIDI channels of the same plugin.

Velocity layering and scaling

Velocity layering and scaling, MIDI in plugin, Gig Performer

You can restrict the range of note velocities that are allowed through. For example, you might allow only softly played notes to go through while loud notes are blocked. This is extremely useful if you want to have two instruments on the same range but only have one of them sound, depending on whether you play notes softly or loudly. The trick (much like with layering) is to use multiple MIDI In Blocks, each one configured to a different velocity range.

Velocity scaling (currently only linear) lets you remap incoming velocities to either expand or (more typically) compress the outgoing velocity values. However, it’s also extremely useful when you are restricting the velocity range. For example, even though you might have configured one sound to only play if you hit notes hard, you probably don’t want the sound to be only played loud. So for example, if you set the Min and Max values to 80 and 127 respectively and then you set the scaling From 1 To 60 respectively, your loudly “played” notes will be heard more softly.

Velocity constraining

Velocity Constraining, MIDI in plugin block, Gig Performer

If you switch from Scale to Constrain, then you are defining the minimum and maximum velocity values that are allowed. For example, if you set From and To to 50 and 80 respectively, then any notes with incoming velocities less than 50 will be set to 50 and any notes with incoming velocities greater than 80 will be set to 80

Event blocking

Block certain events from being passed through, in Gig Performer

You can block certain events from being passed through. For example, if you are laying two sounds using multiple MIDI In Blocks that receive MIDI from the same physical device, you may want your ModWheel or PitchWheel (say) only apply to one of the sounds. Or you might want to be able to adjust the volume of your lead sound without impacting the volume of your pad sound. Of course, you can also do this kind of thing by using widgets in a rackspace but sometimes it’s just convenient to send MIDI CC events directly into a plugin and so this blocking mechanism gives you finer control

Monophonic options

Monophonic options in Gig Performer

You can arrange for only the lowest or highest note of a chord to be sent out. Combined with layering, this allows you to play chords but have the top (or bottom) note of your chord play a lead sound.

Intentionally left blank

Keep checking back in, Gig Performer, MIDI in plugin

We have great plans for the remaining empty space on the bottom right of the MIDI In block plugin editor. Check Gig Performer 4 documentation for more information.

Related plugins

Gig Performer also has a MIDI Filter plugin that can be used to either block events or to remap them to various other events. More on this in an upcoming article.


If you’re still not satisfied, there’s always our proprietary language, GPScript, which allows you to perform arbitrary processing of incoming MIDI events, not only for more sophisticated splitting, layering and filtering, but you can also “send” MIDI events into the future, allowing you to create such effects as MIDI delay, arpeggiation and to use MIDI events to trigger other behavior inside Gig Performer itself.

Host Automation

We would be remiss to point out that pretty much every function described above can be controlled using host automation. By using rackspace variations or switching song parts, you can instantly change your velocity scaling, modify the split range, turn on or off blocking and so forth. The possibilities are endless.

Enjoy and Own the Stage® with Gig Performer®.

Related topics:
Gig Performer built-in plugins

Scaling curves allow you to control the shape of the output of a widget or convert an incoming note velocity to a new velocity. Various predefined curves are available and they can be tweaked as necessary. You can also just draw your own curve as well to achieve the effect you require.


MIDI File Player Plugin

You can load up to 128 MIDI song files in a single plugin instance. Switch from one song to another, mute tracks and/or change their channel numbers. Tempo can be controlled by individual songs or you can use the global tempo and tap tempo to control the BPM interactively.


Favorites and Presets

Create a sound by placing and interconnecting your desired plugins, such as a synth, some effects and perhaps a mixer. Select them all and then save the selection as a named favorite. The favorite will subsequently show up in all plugin insert menus, making it easy for you to recreate that configuration whenever you need it again. This feature is also very powerful for creating your needed sounds on your studio computer and then transferring them to your touring laptop.


Probabilistic Sound Designer

Parameters you select in an open plugin are captured into the Probabilistic Sound Designer dialog window. When you click Randomize, you're only adjusting those selected parameters. Each entry in the PSD dialog has a curve but unlike widgets where the curve controls scaling, in the PSD the curves are used to define the probability of particular values being selected. Make sure the filter cutoff never gets too slow so as to block all sound. Perhaps adjust the max range of the VCA attack parameter so that the sound doesn't have too much delay. Constrain the octave ranges of the oscillators, perhaps ensuring that 1/3rd of the time we select 8' and 2/3rds of the time we select 4'. The possibilities are endless.


More Widgets

Numerous new widgets are included in Gig Performer - a new sustain pedal, plastic knobs, drum pads and more colored sliders. Shapes can be colored with different borders and fill colors and morphed from rectangular to circular. Your creativity is now the limit to creating fabulous front panels in Gig Performer.


MIDI Message Helper

Select MIDI devices by name. Choose the MIDI message type and adjust the appropriate parameters for the specific type



Layout management

Gig Performer supports arbitrary resizing. Layout your widgets the way you want - resize the main window and the widgets will grow or shrink as necessary to maintain the same interrelationships. No matter what size screen you have, your front panels will still be neat and usable.


Undo Support

If you move your widgets around and/or resize them, or even delete them by mistake, the Undo facility will correct your mistake. Minor moves to a widget by mistake will no longer spoil your design


Plugin Channel Count

Some plugins support a large number of outputs and they depend on the traditional channel strip to control how many ports should be available.   When you only need a stereo pair, it is convenient not to have a large horizontal block. In Gig Performer, the number of available ports  is controlled by the channel count override, which can be applied to individual plugins and will be remembered when the gigfile is reloaded or if the plugin is saved as a favorite.


Input muting and output fading

Rather than a single audio length tail, Gig Performer 4 gives you the ability to control input muting and output fading separately. Input muting controls how much time it takes for audio input to be silenced when you leave the rackspace. Output fading controls how much time will be taken for audio to fade out when you leave the rackspace.


Faster Plugin Finder

Instead of searching through menus of perhaps hundreds of plugins (you know who you are!), the Quick Plugin Finder makes it easy to find the plugin you need by simply typing partial strings. For example, as shown here, to find the Modartt Pianoteq 7 plugins, it's enough to type pia mod 7 (in any order, by the way)  to restrict the list of available plugins to those matching your query. The Quick Plugin Finder also knows about manufacturers, presets and favorites.



Touch Friendly Input

Any entry field can be changed by either dragging your mouse (or finger) up or down, or by using the large popup touchpad where you can just tap on the squares to enter a value. The large popup keypad also does validation so you can't enter an invalid value. You can also just tap the BPM field to pop up a larger view where you can quickly change tempo, tranpose, trigger Tap Tempo and enable Ableton Link, the last allowing you to synchronize Gig Performer with any other application that also supports Ableton Link.


New Tuner Display

The tuner view makes it easy for guitarists to quickly check and adjust their tuning. You can toggle into the tuner view from any other view and toggle right back as soon as you're done. All output will be silenced automatically while you're in tuning mode. You can adjust the concert reference pitch from its default of 440 Hz to suit your own needs. The tuner view fills the entire screen so you can easily see it from a distance.


GP Script Enhancements

GP Script adds new language improvements such as multiple initialization sections, initialization with declarations and enhanced callbacks. The WidgetValueChanged callback now supports multiple widgets. Sysex messages are now built-in with numerous supporting functions. String array handling is much faster. Integer bit manipulation is now built-in. A new global GigScript allows incoming MIDI messages to be modified and redirected on the fly. It also allows you to define keyboard macros for your computer keyboard to control Gig Performer itself. For complete information, please review the GP Script Language Manual available through the Help menu.



Scriptlets make creating custom MIDI processors easy. You don't have to be a programmer to use them - you can just download scriptlets from our ever-growing collection on our website and drop them right into your rackspaces to use them. Use scriptlets for simple operations such as turning your single notes into chords, modifying, duplicating or converting one kind of message into another, automatic chord latching (AutoSustain), threshold detection, sysex manipulation... imagination is the limit.


Other Improvements

  • System Actions plugin
  • MIDI Out to OSC converter
  • Comment plugin
  • New GUI dialog to define MIDI events to send on song part change
  • MIDI Out blocks can automatically send multiple MIDI events
  • Open/close a plugin editor from a widget
  • Choose default startup view
  • Quick find for plugin parameters
  • Large collection of startup hints
  • OSC Patchbay mode
  • Plugins now default to stereo I/O
  • Dragging presets into the wiring view will automatically create the required plugin
  • Numerous other minor (but nice) usability and workflow enhancements

Numerous other enhancements and optimizations serve to make Gig Performer 4 a superb platform for performing artists.


Songs and Setlists

You can organize your rackspaces into songs and your songs into setlists and then just select the setlist you need for a show. Then simply cycle down through the parts, or use your control surface or a MIDI Guitar pedal controller to select individual parts directly.


Predictive Loading

Predictive Loading™ is an advanced feature that reduces your RAM and CPU resources by only loading rackspaces (or songs) as needed.



The Global Rackspace

The Global Rackspace can receive audio from whatever rackspace is currently active. Instead of inserting effects in every rackspace, simply insert them once in the Global Rackspace and all your local rackspaces will have access to them. The Global Rackspace can also send audio to the currently active rackspace. So you can insert a looper that receives audio directly from your guitar (say) and then send the looped audio to different effects in different rackspaces. If a particular instrument such as a piano or organ is needed everywhere (or almost everywhere), put it in the Global Rackspace.



Zoomable Wiring View

Gig Performer 4 provides a virtual view allowing you to spread out your blocks and connections to make them easier to see and manage, even if you have a very small screen. You can zoom in or out and you can use the Auto-Fit option to position your blocks to fit in the available space.