GP5 Relayer - send MIDI between instances?

I have 2 GP instances - a master and a slave, with identical sets/songs, just different plugins.

What I want to do: When a song is selected on the ‘master’ instance, I want it to select the same song in the ‘slave’ instance. I had this working with the OSC stuff, but it wasn’t exactly straightforward. The Relayer seems to be a better choice - but I cannot find a working example, and I cannot get it working myself.

TIA,
Mike

GP Relayer is a plugin, its not operating on the system level you’d need for changing songs or receiving commands of that type.
.
For what you’ve described, OSC is what you’re looking for. You can use the built in sync option under Options > OSC > Sync. You just have to make sure the receiving instance is listening on the same port as the master instance is sending. If they are both on the same computer, use the localhost 127.0.0.1 as the IP address.

1 Like

I know about OSC. I tried using it, I don’t want to use it. It’s a complex setup and unreliable for live performances.

From the GP5 User Manual:
“GP Relayer is a new plugin in Gig Performer 5 that allows you to transport audio and MIDI effortlessly between Gig Performer instances”

I’m wanting to send MIDI between GP instances … seems like GP Replayer can do exactly that.

Yes but the purpose is to send MIDI (or audio) from the transmitting plugin in one instance to the receiving plugin in the second instance so that MIDI messages sent from the first instance can be used to control synth plugins in the second instance or to control a synth in a DAW if that’s where you have a receiving GP Relayer plugin.

In other words, the Relayer plugin in one instance lets you send MIDI to the Relayer plugin in another instance — the messages are not being sent to Gig Performer application, they are being sent to a plugin inside the Gig Performer application

How did you do that?
There are options to be made in Master and Slave instance and then it is working out of the box.

2 Likes

Our best friend @MulletOver80s … the manual :wink:
How to set up OSC

If you don’t want to use OSC and have the ability to route MIDI between applications (with Bome or loopMidi for instance), then you can use Song Part actions to send PC messages to a 2nd instance of GP.

Maybe worth a try…

That will have the same issue as GP Relayer, in that it is sending MIDI data from one plugin to another plugin inside of GP, not at the system level.

But they say “or create your own routings within a single application”… wouldn’t that be what is neded?

Yes, meaning you could send it from the local rackspace to the Global rackspace—or in a DAW you could route between channels. It all still happens within the application as it is one plugin to another, and to change songs at the system level requires messages received from outside the application.

You are right.
I also think that using OSC would be the easiest and most direct way to communicate between instances.

1 Like

In my own use case, I use OSC…but I don’t use the built-in OSC sync options because each instance has their own song part changes that don’t necessarily occur at the same time as each other. I use scripting to send OSC messages to the other instances only when changing to a new song. Each instance is then free to change song parts within itself without affecting/being affected by song part changes in other instances.

Thanks, but I read the manual on OSC, and did have OSC working.
I’m asking IF the Relayer can do what I’m trying to do.

Why is the inbuilt OSC mechanism not working for you?
Without some scripting Relayer will not work for what you want to do.

Unreliable for live performances ??? Why do you think that ? The OSC sync is what you need the GP Relayers are not specifically made to sync two instances.

Rubbish - I’ve been using OSC between Gig Performer and several iPads and iPhone for live performance and never had an issue. And that’s over a local wifi network.

In your case where both instances are on the same machine, there isn’t even a “real” network and OSC packets sent between instances will be 100% received.