mcmahon48
2018-04-28 20:55:55
I am trying to get miditranslator to automatically see the channel of the vst instrument that I am using than assign that channel to the port of another device
Kontakt and VIP 3 and other has 8 spots you can assign different vsts or sounds (synthesizer) each with their own channel Keyboard one send notes to the selected vst Launch controller xl sends notes via channel 1 only to change the articulation played by selected vst so when I switch from one vst to another vst the channel number will change but the Launch controller will stay on channel 1 so I need for it to see the midi channel has changed and assign the channel to the router to be routed to the new channel in use
Steve-Bome Forum Moderator
2018-04-28 22:20:06
Hi,
When you change the the channel on the vst, is there any type of message that is sent that we can use to trigger the change within MT Pro? We need some sort of MIDI input in order to trigger and let know we want MT Pro to do something. Once we know what the trigger is, we can then set up translators to uses that trigger to redirect any incoming MIDI from you Launch controller.
Steve-Bome Forum Moderator
2018-04-29 00:08:07
comment
Another idea is just to set up a set of translators that all monitor channel one on input and then and set the output of each to a separate channel. You will then be broadcasting MIDI on all channels your performance would go to any and all VST’s that are enabled.
mcmahon48
2018-04-29 04:46:12
comment
A note that would be sent from the keyboard is what is going to message carrier with the channel number so I would make the selection of the instrument and start playing the translator would be set to monitor that keyboard port then set a global variable to hold that channel number so I would be most likely use
Steve-Bome Forum Moderator
2018-04-29 06:32:21
OK, so what you are talking about is something like this.
Keyboard 1 sends C4 to Bome MIDI Translator Pro . MTPro then determines this is to route everything to MIDI channel 2 from Launch Controller XL. So translator now set up to send everything to Channel 1. Send C#4 and it routes from Launch Controller XL to MIDI channel 3. Something like this?
Or something like this. Keyboard 1 sends note any note on any channel. Bome MIDI translator looks at the channel it is sending on and then switches the channel to that channel from Launch Controller XL.
In both cases Launch Controller XL always sends on channel 1 but global variable controls where where output signal goes. Both of these (and other scenarios) are entirely possible and actually pretty simple to set up.
For the first scenario would determine the note to set the variable, (say ga). For the second scenario, we would set the variable based on which channel the keyboard is transmitting. I think this is what you are asking so let’s proceed with that.
Note on from Keyboard 1 Any note any channel ga to channel number. Output none.
Launch Control input raw midi pp qq rr
Rules
//First lets mask off the channel number this is a bit wise and function
pp=pp&0xf0
//Now pp contains the upper half of the midi message only (note on, note off, controller)
// Now lets add the target channel (bitwise OR operation)
pp=pp|ga
// Now pp contains the status byte in the upper nibble and the channel in the lower nibble
// So pp is the complete status byte with the channel, qq is either note number for note, rr is value for controller
// or velocity for note
Output pp qq rr
There you have it.
I hope this helps!
Steve
bome@sniz.biz
Independent Bome Programming Specialist
Bome Q&A moderator
mcmahon48
2018-04-30 19:36:22
I was thinking I could capture raw data apply a mask to cancel out the note and velocity data going out of the
I am thinking I am going to have to use two cc controllers(example cc127 cc 128) and have a preset of values that will then have to point to the channel I want to be using 0-15 =channnel 1 ,16-31=channel so on one controller cc for * channels and then the same for the next 8 channel for the keyboards have their own routing programs
so I am trying to think of the best way to set up a thing simular to case1 case 2 case3 multipointer set up case
case 1 cc127 if cc nv=>0 and nv<16 set channel to 1
case 2 cc127 if cc nv=>16 and nv<31 set channel to 2
case 3 cc127 if cc nv=>32 and nv<47 set channel to 3
Steve-Bome Forum Moderator
2018-04-30 20:03:28
comment