futurevintage
2008-10-22 02:26:16
Hello, I need to map Midi cc's 68 and 69 to to anywhere on my laptops keyboard, and they need to send on midi channel 13....
Is this possible with Bome's? If not, anyone know of a program that will do it? thanks
florian
2008-10-22 10:14:56
Hi, yes, you can use Bome's Midi Translator Pro (MT Pro) to send out any control change in response to pressing keys on the computer keyboard (i.e. keystroke to MIDI translation).
Currently, Midi Translator works with hex codes for the MIDI messages, so a word to that:
A control change message is 3 bytes, the first one being status+channel, the second is the controller number, and the third one is the value.
The status is always hex "B", and the channel is a hex digit, starting with 0. So using B0 means "controller message on channel 1". For channel 13, use hex "C", i.e. your first byte is "BC".
The controller number 68 is hex "44", and 69 -> hex 45. (if using 0-based controller numbers).
So you go ahead and try MT Pro by setting up a "Translator Entry":
- create a new Translator
- Click on the Edit button
- in the "Edit Translator" window, enter this information:
Incoming: Keystroke "A"
Outgoing: MIDI BC 44 00
Now whenever you press the key A (don't need shift for that), a control change message will be sent to the MIDI OUT port selected in the MIDI OUT menu. Check out the Options menu if it doesn't work, there is a setting to disable keystrokes when MT is active. Of course you can enter any other key on the Incoming tab.
And you'll add the second translator just the same, just outgoing is "MIDI BC 45 00".
Now if you get that to work, let me know if you want to send out different values -- right now, the controller always sends out value 0. For example, you can send a different value when pressing down vs. releasing the key. Or increase the value with one key and decrease with a different key. Or increase as long as you press it and decrease afterwards... endless possibilities!
Regards,
Florian
runawaymartin
2008-12-30 05:25:42
Hi Florian,
I'm just evaluating MT at present and was also wondering how to define a specific incoming MIDI channel? I want to do some triggereing using a NOTE ON command from an existing MIDI file which of course has a load of other notes playing. The commands I want are on Ch 16.
I don't understand hex and so don't know how to alter any MIDI input data.
Could it be possible for future versions to have the type of command, MIDI channel, and other values etc displayed in less of a technical way . . . or perhaps drop-down boxes to input the above mentioned data?
The program looks great and I have a couple of other questions which I'll put under seperate headings . . . Cheers
ruediger
2009-01-03 11:57:37
Hi Martin,
sure, we plan a more user friendly program interface for the future. For now, you have to use the hex version . It maybe helpful for you if you use the "Friendly Description" in Options->Settings->Appearance.
Then you can start like trial and error.
For:
9f 00 00
You can read in the list:
Note On #16 C-1, vel 0
That means that you have Note On, Channel 16, C-1 and Velocity 0. The Hex means that you count with the base 16, in decimal you have the base 10. That is the only difference.
So you have 90 = channel 0, 91 = channel 1 and so on until 9F = channel 16.
A small example of how number systems are working:
234 in decimal is: (4 x 10^0) + (3 x 10^1) + (2 x 10^2) = 234 (decimal)
234 in hex is: (4 x 16^0) + (3 x 16^1) + (2 x 16^2) = 564 (decimal)
In decimal you have the base 10, that means that you have 10 characters (0-9), in Hexadecimal you have 16 characters (0-9, A, B, C, D, E, F).
Hope this helps.
RĂ¼di