Gig Performer & Open Stage Control

Hi all!

Just wanted to share an awesome alternative to Lemur and TouchOSC.

After a brief time using Lemur, I discovered the open source project Open Stage Control.

My template is definitely still a work in progress, but I’m super happy with the results so far:


Nice! Definitely going to try this out!

How do you find this compares to lemur?

Does it run on an iPad? Last time I looked at that it only worked on regular computers

So for me, the uptake seemed quicker than with Lemur? I liked editing right there in the canvas as opposed to using a separate computer program to design.

Lemur does have slightly more widget types, but I’ve not been unable to accomplish anything I’ve needed so far…

The biggest difference is definitely the technical implementation though: there is no dedicated app like Lemur or TouchOSC. Instead, it is installed on a Linux/Windows/OSX machine and serves a web page that can be consumed from any device via a web browser. I use the Kiosker Pro app for IOS on a 12.9" iPad as my client device and run the Open Stage Control server right there on my Gig Performer laptop. You can see in this screenshot how the communication all happens over the loopback address.

@dhj, you’re correct in that the Open Stage Control application itself only runs on on a computer. However, it serves a UI that can be consumed from any mobile device via a web browser app. The screenshots I posted originally were taken on an iPad using Kiosker Pro.

My experience so far is that it’s been very responsive and completely stable, even when using a common/busy wifi network instead of a private ad hoc network.

@speed12 if you want to take a look, here is my current configuration as well as a small custom module I wrote to intercept incoming/outgoing OSC messages and conditionally perform actions based on what is intercepted. (7.5 KB)

Cool, cheers - I’ll take a look! Had only recently got in to Lemur and it works well but even from just a visual perspective I already prefer this; will have a play and see what it’s like to get something set up.

stevmills said it, but I think it’s worth saying again because the Open Stage Control website can make it seem a lot more complicated than it actually is.

Whether you’re running GP on OSX, Windows, or Linux, all you need to download is the right Open Stage Control package for your system.

When you unpack that, it creates a folder with a lot of support files and one executable.

You generally run that executable (open-stage-control.exe on windows) on the same system you run GP on. It will open a configuration window with a couple dozen options, but only two that you need to specify:

  • Send: or whatever port you told GP to listen on
  • Osc: 54345 or whatever you told GP to send on

Then you open a web browser on any device you want to use as a controller. I’ve used three or four different phones of various generations, an old Kindle Fire, my mother in law’s iPad (just to test), and my windows Surface Pro.

After opening the web browser you just connect to your computer’s IP address, port 8080 (unless you changed that in the open state control settings window). For me that’s typically

Then you select the template to load (which I keep in a folder on the GP computer), go full screen, and you’re rolling.

I find building templates easier in Open Stage Control than in Lemur or TouchOSC, but maybe that’s just because I’ve used it a lot more. It’s also a lot more powerful and flexible for template design and functionality from my experience. You can embed scripting and all sorts of stuff into widgets, but I haven’t found a need to go there.

What’s mechanically happening here is that the open-stage-control executable is just starting up a web server that acts as the OSC interface to GP, and it provides a web server interface that you can connect any reasonably modern browser to. So you don’t need a Lemur or TouchOSC app on your display device. In my opinion it’s better than the alternatives, better supported, and free.

Thanks for the example - haven’t had a chance to properly test it but it looks very powerful.

One question - if I’m correct, the ‘server’ application is purely serving up the UI. If that is the case, is it possible to run a different UI on different devices but with them all sending ‘common’ OSC?

My use case is that I use Ableton to run tracks alongside GP. My plan was to use Lemur as a HUD for both what GP is doing and also what the tracks are doing (using some custom Max patches). One massive benefit I could see using OpenStageControl if multiple UIs can be used from the same ‘server’ is that I can have a UI on my iPad for both GP and Ableton info but could also have some simplified UIs showing just Ableton info that my band mates could access so they could a) see track info that might be useful and b) actually control the tracks. As they don’t need GP access it makes sense that they wouldn’t have the UI for that on their screen.

Open Stage Control can do multiple UI’s from the same server. They can be clones of each other, completely different from each other, or any combination.

I’ve toyed around with it using a tablet to control Reaper and an android phone for just small subset of the controls. Right now I’m using it just for displays to show what my control surfaces are controlling. I use different templates for different display devices sitting on different control surfaces.

I don’t know about connecting to Ableton and GP at the same time. I’ve never tried that. I’ve only used it with Reaper and GP, but never looked into doing both at the same time.

Ah cool, thanks for the info.

Thats one thing Lemur does well as it can listen on a few different OSC addresses. But…I don’t think I have had it working previously (not looked at it for a while) with both GP and Live running with TouchOSC which can only handle a single address. I have to admit I’m still getting to grips with OSC as a whole so might not be doing it the best way!

Do you use a motorized keyboard stand like the K&M 18800 Omega-E? Which brand and model is it? :flushed:

@speed12 what you are wanting to do should definitely be possible as the OSC target can be specified on a per-widget basis. Your global OSC target would be either GP or Ableton and then the widgets controlling the other application would be configured to do so down in their individual “OSC” configuration section at the very bottom of the configs. Also, both Ableton and GP can send to the same port Open Stage Control is listening on.

What version/edition of Ableton are you using?

@David-san, my stand was indeed inspired by the Omega-E, but was about $1,000 less…

I had an Autonomous standing desk I picked up for $250 and used in my home office for awhile; ended up repurposing it as a keyboard stand! I just had to remove the old desktop, use a hacksaw to trim down the support arms a bit, and then screwed a painted 1x12" to the top.

I/we absolutely love it. I’m not the only keys player at my church and preferred playing heights among us are pretty extremely varied. Now we each have a slot on the height control memory bank for one-button recalls. The only potential downside I see is that is it pretty heavy; I wouldn’t want to have to take it on the road for sure. On the other hand… it is very stable!

If I had to make another one, I would just go with the DIY version of their stand and make the same mods.

1 Like

Ah cool! I haven’t had a chance to really play properly with Open Stage Control yet so hadn’t spotted that.

I’m on 10.1 - only the standard version but have added M4L to it seperately (I didn’t need all the extra synths and samples that comes with Suite).

@speed12 copy… was hoping you had M4L. You might already know this, but wanted to pass it along in case not. The M4L Connection Kit got me started with Ableton/OSC, but to achieve some things (that were possible with GP out of the box I might add!) required me to also use some of the LiveGrabber M4L devices.

Yeah - I’ve gotten OSC to work by plundering the LiveGrabber devices for my own. Ive had both GP and Live talk to Lemur via OSC; haven’t tried with Stage Control yet although I did have more of a play on Saturday using your template to see how you had set stuff up and understand it a bit more.

Do you have a background in CSS/Web development or did you just pick it up? That’s the bit that will, I think, take a bit more time to pick up for Stage Control but should lead to some really useful templates.

Thank you for posting this. I have only toyed around with OSC and was curious about Open Stage Control. It took me a while to figure out the setup, but got there in the end.