roland gfc 50 program change to note

grapejuice

2014-06-09 18:03:53

hi there

i'm on the trial version of midi translator, trying to see if it can translate all incoming program change messages on channel 1 to outgoing note on messages. i'm in a rehearsal at the moment and can't figure out how to translate midi to hexadecimal.

could anyone quickly write that translator or rule for me? i'm using this to replace midipipe which has ceased functioning on my macbook.

thanks!

ryan

DvlsAdvct

2014-06-10 18:58:24

Hi Ryan

You do not need to translate MIDI to hex, as MIDI Translator listens to MIDI as hex. It's hard to explain, but what you need to do is think of MIDI as hex, since you are using hex code to tell the computer what MIDI signals it is listening for/sending.

MIDI is made up of three bits of data. The first bit is the message type and channel. The message type is set in the first number, usually a 9 (Note On) or a B (Control Change), though you are looking at a C (Program Change). The second number is the channel (0 is 1, 1 is 2, etc. then A is 11, B is 12, through F for 16). So if a message starts with 90 it is a note on sent on channel 1. If it is BC then it is a CC message on Channel 13. I'm hoping this makes sense.

So if you want to change a Program Change message to a Note message then you need to create a translator that would look like:

Code: Select all

Translator 1: Program to Note
Incoming Message: C0 pp
Outgoing Message: 90 60 pp
So what this translator does is listens for every program change (pp is a local variable, indicating that the translator will activate every time a message is received that begins with C0) and then send out a Note On message for note C 7 at a velocity equal to the local variable that is received. If, instead you were to change the pp to 7F in the outgoing action, every time a program change is received, any program change, a Note On C 7 will be sent at full velocity (127).

Does that makes sense?
Jared