Use your mobile phone to control your guitar or keyboard effects

Use your mobile phone to control your guitar or keyboard effects

In this article I’ll show you how to use your Android mobile phone or tablet to control your guitar or keyboard effects (or any other instrument effects) by using OSC in Gig Performer.

Gig Performer, our audio plugin host for live performance, supports full OSC implementation. See here how Gig Performer compares to other audio plugin hosts. There are many features unique to Gig Performer, such as ChordPro support, Ableton Link integration, and OSC support.

OSC (Open Sound Control) is a protocol for communication among various multimedia devices and applications, with a particular focus on applications used by artists and performers. In Gig Performer you can associate OSC names with plugins and widgets and then send messages to them from any remote device, such as Android phone or tablet, iPhone, iPad or other laptop to control their operation.

Every parameter available in your VST, VST3 and AU plugin (if you’re on macOS) can be controlled by widgets in Gig Performer, and every widget can be controlled just with a tap of or sliding your fingers on your favorite mobile phone via OSC protocol. Other OSC capable devices, like various digital mixers for example, can be controlled directly from Gig Performer using widgets and OSC. Gig Performer’s proprietary programming language (GPScript) also supports the OSC protocol.

Let’s get started! This article is split into following sections:

  1. Intro
  2. Preparation and OSC setup
  3. Layout and widgets setup in Gig Performer
  4. Layout editor installation and widget configuration
  5. Importing layout in an OSC-compliant application on a smartphone
  6. Outro

.

1.  Intro

.
There are many great paid applications for your smartphone that can be used to control your guitar or keyboard effects. Perhaps the two most popular ones are Lemur (Android, iOS) and TouchOSC (Android, iOS). Since both of them are already covered in this blog (see here for Lemur, and here for TouchOSC), but don’t offer trial versions, I tried to find an application that’s either free or at least includes a trial version, so you can immediately try the techniques presented in this article.

I’m an Android user, so I tried to find out if there were any good free OSC-related apps in the Google Play Store. Unfortunately, I wouldn’t recommend any of the free ones (see in our Community thread why).

Luckily, I stumbled upon this decent commercial app OSCAR (ex OSC-Commander):

OSCAR OSC Controller for Android smartphone or tablet

OSCAR’s developer Dr. Frederik Bertling also provides a free unlimited trial for the testing purposes (the only restriction, however, is that OSCAR randomly deactivates controllers, making their foreground gray, and removes all custom images from widgets. Fair enough!).

Please note OSCAR is an OSC-Controller for Android only.

2. Preparation and OSC setup

.
Before we start preparing OSCAR and Gig Performer to establish the OSC connection, please note they must be on the same local network.

Install OSCAR Trial on your smartphone/tablet via Google Play Store, as you would for any other Android app, and start it:

OSCAR OSC Controller, parameters

Particularly note the IP address of your device, since that will be needed for Gig Performer.

  • Tick the checkbox Enable left server; leave the IP left parameter blank for now (that’s the IP address of the computer or laptop where Gig Performer is installed).
  • Set the Outgoing port left parameter to 6000 (this port matches the Gig Performer listening port),
  • and set the Incoming port left parameter to 6001 (this is the Remote client port in Gig Performer).

For more information on parameters, refer to the OSCAR’s documentation.

Now start Gig Performer; click on the Options menu and then select the OSC Setup… menu item:

Gig Performer OSC configuration

Note the Gig Performer IP address, as you will need this value for the IP left parameter in OSCAR. Please read the Gig Performer’s documentation for more information about the OSC configuration.

Here is a side-to-side view of OSCAR’s and Gig Performer’s parameters respectively:

OSCAR and Gig Performer side-by-side OSC parameters

Network setup is now done and the OSC connection between OSCAR and Gig Performer should now be working (make sure Gig Performer is not blocked by a software firewall).

3. Layout and widgets setup in Gig Performer

.
Switch to the Back view in Gig Performer and create a simple layout:

Gig Performer, Back View Layout, Connect free VST plugins

This is a similar setup as described in this article, where top websites for free VST, VST3, and AU audio plugins were discussed. Refer to that article if you need help downloading, installing and connecting these free plugins.

Now open the Front view of the rackspace, click on the Layout Designer button, and drag two widgets onto the panel surface (I chose the Old School Knob and an LED Button Red):

Gig Performer Front View of the Rackspace

Select one of these widgets, and then click on the Advanced tab; I assigned the OSC names knob1 for the old school knob widget and button1 for the LED button. Note that these names are case sensitive. Tick the Enable OSC check box for both. The knob1 widget controls the reverb parameter of the OrilRiver plugin, and the button1 widget controls the parameter Bypass plugin (see the screenshot above: Plugin – OrilRiver, and Parameter – Bypass plugin).

4. Layout editor installation and widget configuration

.
To be able to create a layout in OSCAR and use your mobile phone to control your guitar or keyboard effects, you need to install OSCAR’s layout editor, add widgets to your layout, and then import this layout to your Android device.

Download OSCAR’s layout designer named OSC-Commander Editor from this link, and install it. Note you need to have Java installed to run this application. Start the application:

OSC Commander Layout Designer OSCAR

Click on File and then on New File. Right click on the layout surface and add a Knob and a Toggle Button onto it (alternatively, click on the Edit menu, then on the Add widget menu item and then choose the corresponding widgets); name them knob1 and button1 respectively. Be careful – these names are case-sensitive:

OSC Commander Layout Designer Add Widgets

The most important tab here is OSC Settings tab; set the parameters for knob1 and button1 to match the side-by-side picture below:

OSCAR, OSC settings, knob1 and button1

The OSC Address consists of the widget_OSC_name/function (the widget OSC name is an “oscHandle” – the name you assigned to a widget in Gig Performer; you can learn more about functions, such as “SetValue” here).

When defining the +Obj data type, always select Float (or Double). Don’t select Integer (or Int) data type.

Click on the File menu, and then on Save, to save your layout in the XML file format. I like that the developer decided to store all the parameters in XML, so you can (with care) edit some of the parameters manually, for example in Notepad++ (or on your phone or tablet). You can’t do this with (say) TouchOSC’s layout file. Compare these two:

TouchOSC vs OSCAR Layout file type comparison

In the next section, we’ll import this layout to OSCAR.

5. Importing the layout to OSCAR

.
Transfer your layout to your smartphone or tablet (use an SD card, a cloud file service, transfer from the computer via cable, etc.), and start OSCAR; tap on the menu icon and then select Layouts:

Add layout OSC Commander in OSCAR

Here you can see a couple of predefined layouts for REAPER and RME TotalMixFX. Additionally, visit OSCAR’s website to check these default layouts, and example layouts. When you’re ready, tap on Add layout:

Add layout, File Path, OSC-Commander, OSCAR

Afterwards, tap on Active Layouts:

OSCAR OSC Manager Select Active Layouts

Set your layout to be in the Active layouts list, and then tap OK. Great, all set! Now you’re ready to use your mobile phone to control your guitar or keyboard effects – tap on START CONTROL SCREEN:

OSCAR OSC Live GIG, Gig Performer

Now you should be able to control widgets in Gig Performer by controlling the widgets on your Android device and vice-versa. Your widget changes in Gig Performer will be reflected on your Android device.

6. Outro

.
I hope you succeeded in configuring Gig Performer and OSCAR without issues. If you got stuck in any of these steps, download here the ZIP file which contains my XML layout and the GIG file for Gig Performer. If you still can’t manage to get things running, turn off your firewall. If it works, allow ports 6000 and 6001 in your firewall’s settings.

Consider visiting our Community to post screenshots of your layouts, and share your experience with OSCAR and Gig Performer. I’ll post more information there, behind-the-scenes info, tips, etc. I hope this article gives you lots of ideas with which to work.

There are lots of benefits when you can control your computer-based setup using your tablet or smartphone. Besides sheer usefulness, to manipulate widgets with a tap, you can show off a bit on stage – play your guitar or any other instrument and activate phasers, delays, overdrive, and other effects. Make a show your audience will remember!

7. Encore

.
OK, if you got this far, here’s a bonus section – Encore! 😉 You might wonder is it possible to control the same Gig Performer setup with multiple Android or iOS devices? When you perform live, you might want your FoH engineer to have access to your controls, too.

Yes, this is possible with OSC Broadcast mode! Simply open Gig Performer OSC settings and set the last three digits of the Remote Client IP address to 255:

Gig Performer OSC Broadcast Mode

That’s it. Now Gig Performer sends OSC messages to all listening clients on port 6001.

I wanted to test this further. I have a very old Android smartphone Samsung Galaxy S2 (I bought it in 2011, and it initially came with Gingerbread v2.3.4 !) and I wanted to check how it behaves in this configuration. Everything works! Here are the widgets in Gig Performer:

Guitar effects manipulated by a smartphone

Their state is perfectly in sync with widgets on my two phones:

Control your keyboard and guitar with phone

This way I can control effects on my guitar using my phones, and the very best part is that everything is in sync. If I move the knob in Gig Performer, both phones instantly update their knob widget. When I tap on the button on my old phone, both Gig Performer and the new phone instantly pick up the change.

Happy experimenting and visit our community for more tips. If you like this article, please share it.

Own the Stage® and enjoy Gig Performer®!

Nemanja Pudar

.

Related topics:
How to control your guitar or keyboard effects from a Web browser
OSC support in Gig Performer
OSC messages in Gig Performer User Manual



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


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.