What are extensions in Gig Performer and how to use them

What are extensions in Gig Performer and how to use them

In this article you will learn what are extensions in Gig Performer and how to use them.

What are extensions and the SDK?

Extensions are basically libraries (.dll files on Windows and .dylib files on macOS) independently developed that Gig Performer can load so as to provide additional functionality, i.e., additional support for a hardware device, some new GUI functionality or even additional GPScript functions. For the first, an extension would make your hardware device usable directly from within Gig Performer as if it was already built-in.

Gig Performer 4 exposes an API (application programming interface) that allows third-party developers to create libraries that can be used to interface with Gig Performer. The primary purpose of the API is to enable the creation of libraries to manage control surfaces and other hardware that one might want to use with Gig Performer but it is also possible to create 3rd party GUI tools as well.

Extensions are developed using Gig Performer’s SDK (software development kit) that is freely available under the GPL-3.0 license and can be downloaded from GitHub. Visit that link to learn more about SDK and fundamentals.

Important: Deskew Technologies LLC does not officially support third-party extensions and cannot be responsible for any impact they may have on Gig Performer itself. Please test your extensions thoroughly before using them in a live performance. Should you have issues with an extension, please contact the developer of that extension.

Are there any published extensions to try out?

Gig Performer power user @rank13 published three extensions on GitHub. They are very well documented with usage info, GIFs, etc. so you can easily check their functionality. We’ll briefly present them and provide the download links.

[1] Gig Performer Selector

The Gig Performer Selector extension provides you with an additional resizable window for selecting rackspaces/variations or songs/parts:

The Gig Performer Selector extension, developed by rank13

It has two display modes: a compact list of rackspaces/songs, or an expanded window with a large display of the current and previous/next rackspace or song. The visibility of the window can also be controlled via widgets (thereby allowing it to be triggered from an external MIDI controller). You can see Gig Performer Selector in action in this Community thread.

Download: GitHub

[2] Heads-Up Display

The Heads-Up Display (HUD) extension adds GPScript functions to show a heads-up display (HUD) window, as shown in the screenshot below:

The Head Up Display (HUD) extension for Gig-Performer

A basic knowledge of Gig Performer’s scripting language (GPScript) is required to use this extension.

Download: GitHub

[3] Radio Buttons

The Radio Button extension implements radio button widgets. Radio buttons are mutually exclusive, meaning you can only activate one widget at a time from a defined group of widgets.

The Radio Button extension for Gig Performer by rank13

The extension adds 4 panel templates for 2, 4, 8 or 16 radio buttons. These can be accessed from the New panel menu while in Edit mode of the Panels view in Gig Performer.

Download: GitHub

If you are interested in developing a Gig Performer extension, here are some small examples that will help you along the way:

  • Example extension, written in C – LINK
  • Example extension, written in C++ – LINK
  • Example extension, written in C++ using JUCE framework and CMake – LINK
  • Example extension, written in C++ using JUCE and Projucer – LINK

How to install an extension in Gig Performer?

We already stated that an extension is a file (.dll file on Windows or .dylib file on macOS), so when you download an extension for your operating system, just simply move it to the Extensions folder:

On macOS: /Users/Shared/Gig Performer/Extensions
On Windows: C:\Users\Public\Documents\Gig Performer\Extensions

Afterwards, restart Gig Performer and a prompt will appear asking to confirm whether to install the extension. Check out this user manual page for more information. Gig Performer extensions can easily be disabled or enabled again through the Options window.

If you suspect that an extension is preventing Gig Performer to start normally, you can temporarily disable extensions in the Temporary Startup Options dialog. Check this blog to learn more.

Every developer is welcome to contribute and build an extension for Gig Performer. If you are an end-user and (say) have a keyboard with a display, you can contact your keyboard’s manufacturer to create an extension for Gig Performer so Gig Performer can communicate directly with your keyboard, and show various parameters, such as Song name, Rackspace name or Tempo on the display (or assign buttons and knobs with functions in Gig Performer).

The relevant new community category is GP Extensions with two sub-categories: Using GP Extensions and Developing GP Extensions. If you have any questions or want to share your feedback, please visit this Community thread (I’ll also create there an index of extensions, available for Gig Performer).

Share this article it to support Gig Performer and spread the word! 🙂

Own The Stage® with Gig Performer®

Nemanja Pudar

Related topics
Extensions (User Manual)

Scaling Curves

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.