Changing Song in second instance by OSC

@dhj & @pianopaul

Thanks guys; yes, I want to click the song in the setlist in my main instance and the corresponding song in the setlists of instance 2 and 3 should switch to the song accordingly.

Thanks
Flodder

Super, thanks, I will try it tomorrow when I am in the rehearsal! room!

Well, you should probably try it before you get involved in rehearsal!

OK, I tried it at home.
I open a scriplet in the global rackspace and copied in following:
On Song(oldSongIndex : integer, newSongIndex : integer)
SendOSCMessage { /GigPerformer/SwitchToSong, newSongIndex } to “127.0.0.1”:4568
End

If I click “Compile” it is telling me:
“Scriplet - Semantic error in “Main”: Line 1, Col 4: Allowed in gig script only.”
What means that?

I guess the “4568” in the script is the GP listening port, correct?

The error message “Allowed in gig script only” explicitly says that the callback can only be used in a Gig Script as I said in the instructions " use On Song callback in a gigscript instead"


Edit: you can’t use a scriptlet for this (a scriptlet is a plugin, not something that can be seen gig wide). This script goes in the Gig Script editor

screenshot_7638

Also, please don’t blindly use that IP address and port that I used ( “127.0.0.1”:4568 ) the actual values will depend on your environment

Just need to know what “On Song callback in a gigscript” means…

There are two parts to this - all documented in the GP Script manual

Scripts can live in various places in Gig Performer.

On Song is a piece of code that will be called automatically when the song changes.

Sorry, I do not understand.
I pasted your skript in “Gig Script Editor” and the compile works, but no function.
The port and IP is set correctly.
You mention as well to script it on Song callback so I tried it in the “Song script Editor”.
In this the compiling fails.
As I wrote befor, I never touched the scripting so I have no glue what to do.
Sorry and thanks for your support.

What is your receiving port in the 2nd instance?
And how looks the code in the gig script of the 1st instance?

Please see attached photo, left is main, reight is second instance.
In the code I exchanged the “4568” against “8001”.

Ok, when you open the same gig file in both instances, it does not switch the song in the 2nd instance when you switch the song in the 1st instance?

You have to enable respond to incoming… in the 2nd instance

When I change a song in the setlist of the first instance (the one with the script) it is not switching/ changing to the same song in the second instance.

Is it changing to some other song or not changing at all?

I think he must enable react on incoming… in the 2nd instance

Sorry, I’ve been with the kids in the zoo… :relieved:

I enabled the response at the second instance.
No song is changing, but if I change a song part in the first instance it is changing in the second
instance as well.
It is not changing the song in the second instance.

I do not understand the above two sentences - they contradict each other.The first says it is changing, the second says it is not changing!

IN the first instance I have a setlist with three songs:
Song 1
Song 2
Song 3
Each of this Songs has three song parts
Intro
Verse
Chorus

In the second instance I have exactly the same set up.
If I am at both instances in “Song 1”, and click in the first instance “Song 2”, nothing is changing at the second instance.
If I now change in the first instance and Second Song (Song 2) to Chorus, it is as well changing to Chorus in “Song 1” at the second instance.

Try this:

On Song(oldSongIndex : integer, newSongIndex : integer)
   SendOSCMessage { /GigPerformer/SwitchToSong, GetCurrentSongName(), 0 } to "127.0.0.1":8001
End

@pianopaul
Thanks!
This works, but it is as well changing the song parts, that is what I want to avoid.

Is there any possibility to do it this way that it just will switch to the song with the same name but not
the song parts if I change the in the first instance?
The song parts are currently changing as well, even if the have in the second instance a different name as in the first instance.
Thanks
Flodder