Bypass Toggle for Song Part Midi Messages

What is the use case for this?

I am trying to temporally stop the midi from the Song Part only from going out USB Midi to my master keyboard which is passed along to another PC running OBS studio - where the midi sent by that Part Selection changes the scene in OBS. Works every time.
If it was stopped, I could make those scene changes with a midi foot switch direct into OBS - without a scene change being triggered by another song selection in GP.
For the most part I let the song selection in GP change the scenes. But some scenes are specific to the audience I’m streaming too. So the scene I want to stay the same might be the stage at local venue.

definitely not a common use case…

The solution suggested by dhj isn’t working for me - even with NO MIDI OUT plugin the Midi Helper still sends the midi out of that port.

Because the MIDI Out helper sends out to devices and not MIDI Out Plugins.
But why do you define messages in MIDI Out Helper when you do not want to send them?

You are confusing a MIDI Out block with a MIDI Out physical device.

Analogy:
Suppose you walk into a room and then somebody locks the door (deletes the MIDI Out block) so you can’t get out. Well — you can, if there’s another way — perhaps through the window

MIDI Out blocks are simply one of many ways to send MIDI messages to external synths. They’re just “doors” you can go through — but there can be windows and chimneys and holes in the wall, etc.

I’m sorry I wasn’t clear that I was only talking about the Midi Helper window to the midi port specified in it.

I just wanted to have the option to switch control of OBS with midi from the Midi Helper to a direct foot pedal to keep the scene from changing with each song selection…sometimes.

Can’t be done?

So in general you want the MIDI Message defined in the helper tool to be sent out,
but sometimes not?

Not from song parts properties — there are no conditionals.

You’d have to use GP Script

If a script will do it, can anyone write the script for me?

I have used and adjusted a few scripts provided here but I wouldn’t know how to start with this one.

Yes - that’s it.

@dhj’s original suggestion of sending the message to the Local GP Port works fine.
You would need to change the midi messages in the Song Part Properties to use the Local GP Port rather than your controller.

This allows the midi messages to then be received by the Local Port’s MIDI In block, where you can route and block the messages however you need. In addition to using the Constrainer to block the messages, I think even mapping a widget to bypass the Local Port MIDI In block works as well.

screenshot_8356

1 Like

If I change the SPP to the local GP Port the message is not sent to the midi out plugin - as shown when I click the Send Now Button and it doesn’t show up in the Midi Monitor.

Why do you have the Local Port set up as a ‘merge’? It’s hard to say why you don’t see the message in the monitor without seeing a screenshot of the Local Port window, as you can block channels and message types there.

I tested with CC messages and it worked.

Here is the Midi In (Local GP) image - nothing blocked, midi merge removed (no longer needed).
but it still doesn’t send midi to the Midi Monitor or OBS if that is the chosen port for the Helper Tool
I wish I could understand the Routing of the Midi Helper Tool.
For me it doesn’t need a Midi Out Plugin at all. I select the Midi Output Port for the Yamaha MOXF8 in the Helper and on Song Select - it’s sent.

Ok, it looks like the MIDI In Block is only registering a Note Off message if had previously received a Note On.

Is there a particular reason why you have to send a Note Off, and not configure your setup to use Control Change messages?

Well I finally got it working.
I’m very grateful for everyone’s input as your suggestions did work.
I opened up an earlier save of GP and duplicated the Audio Streamer song number message In the Midi Helper and changed the CC number and it worked and sends out to the monitor and OBS through a Filter that I can use to block them.
I also had to restart the interface bringing the midi into OBS.
Thanks again!

1 Like