Multiple instances Video tutorial - Gig Performer

Hey everyone,

I really wish someone would publish a full-length, step-by-step video on setting up and using multiple instances in Gig Performer.

I read the blog post on the official site, but honestly, I found it pretty unintuitive. I got confused right from the beginning. When I tried setting it up myself, I got lost quickly — I couldn’t find the “Open Instance” option anymore, and I wasn’t sure how to bring up the other instance window again.

I also wasn’t sure what IP I needed to use when setting it up. The whole thing ended up feeling frustrating enough to make me want to give up altogether. :confused:

If anyone has a good walkthrough, or can break it down in simple steps, I’d really appreciate it. And I am quite sure it would be very popular on Youtube

Thanks in advance!

Agreed. :slight_smile:

1 Like

Hi. I don’t have the opportunity to create a video, but I can give you some pointers which may help you:

First consider if you really need multiple instances. If you do have enough CPU resources to run everything in one instance, then that’s probably the best option, because it keeps things easy.

If you have a valid case for multiple instances, here is the way to get started:

Creating and opening instances

Creating

  1. Start the ‘default’ GP (the one without any arguments)
  2. Click the File menu (Windows, but mac should not be too much different):

  1. Click ‘Create New Instance…’, give it a name and click ‘OK’

  1. GP will launch the newly created instance. Please note that instances do not have the menu options for creating and opening instances:

Reopening

If you want reopen an instance later on, you have two options:

  1. Open it using the default GP instance:

  2. Open it from the command line with the extra -in=<name> argument, (here again the Windows version, but I still think mac will not be that different :-)):

Communications between instances

By default, instances do not communicate. They are independent. But that doesn’t mean you cannot have some communication, routing or synchronization.

Synchronization

Using OSC you can synchronize instances. You designate one instance to be the master, the other instance must be setup to follow. To make this possible, rackspaces, variation and/or songs need to have the same name. See this post about achieving that:

About: setting up OSC: The listening port of each instance should be different (except if you’re going to use the broadcast way that’s in the post mentioned above. For now, I advise against that: first get the basics working):

The red box points to the OSC listening port. Theoretically it could be any number, but somewhere between 5000 - 10000 is usually a safe bet. To see which ports are being used at the moment you could use netstat in a terminal.

The yellow box marks the settings for master and follower. Switch on ‘Send rackspace or song changes (Tx)’ for the master. The followers need to have ‘Respond to incoming rackspace or song changes (Rx)’ to be switched on. If you need chaining (when you have more than one extra instance), I guess you need both.

The ‘Remote client port’ of the master instance (blue box) needs to be the same as the ‘Gig Performer listening port’ of the follower instance. If all instances are on the same computer 127.0.0.1 for the ‘Remote client IP address’ should be fine.

Audio and MIDI

Using GP relayer (GP 5.1) you can send audio and MIDI data from one instance to another. It comes at the cost of some latency, however.

  1. In both instances insert a GP Relayer plugin (plugins → System → GP Relayer)
  2. Choose a relay number (the same for each instance)
  3. Switch it to ‘Send’ in the sending instance and to ‘Receive’ in the receiving instance

  1. Hook up the inputs of the relayer of the sending instance to the sound source and the outputs of the relayer in the receiving instance to your effect-chain or audio outputs.

The example above uses a simple oscillator to demonstrate audio being transmitted and received.

You can also transmit MIDI this way.

Wrap up

This is a 101 on using instances. There’s a lot more to it, lots of thing you can do, lots of problem you can run into, but it is considered an advanced topic. That said, it can be very useful. I use multiple instances all the time, but I must admit I don’t need any synchronization at the moment.

Hope this helps somewhat.

6 Likes