Sending MIDI CC to TheatreMix to control next/prior cue selection

I am trying to create a widget in GigPerformer to trigger TheatreMix (formerly x32TheatreControl) to advance or go back 1 cue. It is not working… I am trying port 3200 in GigPerformer MIDI Out (OSC) to the IP of the PC running TheatreMix. I have added the MIDI Out Widget to my “wiring.” I am using MIDI Channel 1 CC 11 value 11 for next. Has anyone had success of know if these values are correct or incorrect? Do I need more than to assign a value and CC message in and Set up the MIDI out Target IP and Port in GigPerformer? Thanks!

What do you want to send?
A MIDI message or an OSC message?
What is a MIDI Out widget?

I was trying to send a MIDI CC on MIDI channel 1 with a value of 11 for next, value of 12 for prior…like configured on an x32 when using mute group buttons to handle cue next/prior navigation. Sorry, I did miscommunicate that though…MIDI Outputs PLUGIN with values set in a Widget.

But you want to send that midi message over a network to a different machine?

Yes, to the PC running TheatreMix on the same local network.

It supports OSC, I think that’s the way to go:

https://theatremix.com/features#oscAPI

Ok, in the documentation I see that OSC is supported.
So you should send OSC messages.
In scripting it can be done with simple coding or when you use direct OSC even without any coding

Yes, thanks, I will go that route instead.

https://theatremix.com/features#oscAPI

Ok, I have tried the direct OSC route…but when I wireshark trace the traffic I find that I cannot just send “/go” because if I use the default type choice GigPerformer adds ,f and if I select string it adds ,s and the string…so I cannot send just “/go” with no parameters. How do I send an OSC command that does not have any parameters?

What do you mean by “direct OSC”?

How exactly are you sending the /Go message?

In the Widget’s settings Enable Widget Direct OSC and set the OSC Address as /go and the target as the IP of the computer running TheatreMix and the port as 3200 and I tried various Type choices and values…but there is no option to have no arguments to the OSC “address”

The point is to send out the current value of the widget. That said, it might be useful to have a No Argument” option.
If the other system can’t be configured to ignore arguments then I guess the only other way to do it is via GP Script

I am trying to find out from the other software if there is something they will ignore… Is there an OSC_Send function that does not require a second parameter to be included after the “address”? I was unable to see one in the list. I do see OSC_Send but it has an argument of m : OSCMessage…and I cannot figure out what that implies. The other OSC_Send… functions all include a specific type of additional parameter.

You use OSC_SetAddress to define the address for a message, don’t add any args to it and then just use OSC_Send to send out that message

1 Like

I checked with the author of TheatreMix. They ignore the arguments. I ran some WireShark traces and it looks like the packets coming across are not being recognized as OSC protocol…WireShark does not see them as OSC anyway… Any ideas on this?

Screenshot of WireShark of OSC sent from an x32 to TheaterMix that is recognized as OSC:

Screenshot of WireShark of OSC sent from GigPerformer to TheaterMix that is not recognized as OSC:

Sorry, but if OSC wasn’t working in GP, there would have been major problems detected years ago.

Maybe you haven’t configured wireshark properly to decode OSC messages, e.g.

Try a tool specifically designed to monitor OSC messages, such as OSCShark

It was a Windows Defender firewall problem…need to figure out the right way to fix it now! FYI: OSCShark is Mac Only at this time so I cannot use it.

The right way to fix Windows Defender is to disable it, specially the real-time protection stuff!

Try this one - it’s available for pretty much every platform and is quite recent

https://hexler.net/protokol