MIDI-OX User Forum (http://www.midiox.com/cgi-bin/yabb/YaBB.pl)
MIDI-OX >> Questions and Discussion >> Switching output device (or port)
(Message started by: rkurbatov on Feb 11th, 2022, 8:51pm)

Title: Switching output device (or port)
Post by rkurbatov on Feb 11th, 2022, 8:51pm
Sorry if this question was asked before, but I didn't find it after some search.

I want to use small PC in a box as a host for several VST instruments with the dedicated MIDI port for each of them. The input port should be MIDI to USB device that will be connected to one of the several retro computers (only one retro PC at a time).

Is there a way to switch the output port by sending some special SysEx from the input MIDI device? Or probably way of muting other ports if I want only specific one to be active? Like now I want it to be Munt, now - Sound Canvas and now - Yamaha XG? The goal is to exclude any manual actions with that synth MIDI box so it could work without the keyboard and monitor.

Title: Re: Switching output device (or port)
Post by Breath on Feb 12th, 2022, 10:03pm
In Options / Patch Mappings... you can switch in Data Filtering and/or Port Routing using a Patch change message.

It is a bit complicated, so perhaps it is is best if I give you an example.
Just in case you need it later, save your current setup: Go to Options / Midi Devices and type in at the Presets label 'Original' and click on the floppy disk icon to the right to save it.


Lets say you have 3 Midi interfaces (physical hardware or they could also be MidiOx or loopMidi virtual Midi interfaces)
Midi 1 is to be connected to Munt
Midi 2 is connected to Sound Canvas and
Midi 3 is connected to the XG

Set up MidiOx Port Routing so you can play all of them together
Have Midi-Ox Event port connected to all of them as well (you will see why in a minute)

Go to Options / Midi Devices and type in at the Presets label 'PreMapAllOn' and click on the floppy disk icon to save it.
Now you should be able to select either Original or PreMapAllOn to swap between setups with the Midi Port Routing window showing you the changes.

Go to Options / Midi Devices and select 'PreMapAllOn' and click OK.

Right click in the Midi Port Routing window and
The Midi1 to Munt is connected so leave it as it is.
Delete the Midi2 to SC connection
Delete the Midi3 to XG connection
Go to Options / Midi Devices and type in at the Presets label 'PreMapMUNT' for just the Munt and save it.
Press OK

No Midi1 to Munt connection.
Connect the Midi2 to SC .
No Midi3 to XG connection .
Go to Options / Midi Devices and type in at the Presets label 'PreMapSC' for just the SC and save it.
Press OK

No Midi1 to Munt connection.
Delete the Midi2 to SC .
Connect the Midi3 to XG connection .
Go to Options / Midi Devices and type in at the Presets label 'PreMapXG' for just the XG and save it.
Press OK

Goto Options / Preset Mapping...
Clear
Select '0' and the press Assign
In the Port Map Preset use the drop down box to select PreMapAll
Select '1',  the press Assign and use the drop down box to select PreMapMUNT
Select '2',  the press Assign and use the drop down box to select PreMapSC
Select '3',  the press Assign and use the drop down box to select PreMapXG

Select the channel you want to send the Preset message on in the boxes at the bottom.
Next to the OK button check "Turn Map on" and click OK

Now when a Patch change message comes in that is 0 or 1 or 2 or 3  on the selected channel, the port routing will change.

Why have  'Midi-Ox Event port connected to all'.
If you change the routing before all the notes are released they will hang.
You can send the Panic command (the '!' icon in the top tool bar) to stop all the notes and it comes out of the Midi-Ox event port that are connected to those ports.

Hope that helps.

Royce







Title: Re: Switching output device (or port)
Post by rkurbatov on Feb 13th, 2022, 9:19am
Thank you very much for such a detailed explanation!



MIDI-OX User Forum » Powered by YaBB 1 Gold - SP 1.3.1!
YaBB © 2000-2003. All Rights Reserved.