Everything you wanted to know about Transform

the ‘Settings’ section of Transform

A message-type can carry up to 3 pieces of information with it.

For the message-types we use quite often, I use a shorthand of the ‘id’ and ‘value’ of the message (in addition to the Channel)…

…that tells me the ‘What’, ‘Where’, ‘Which’ and ‘How Much’ of certain MIDI events

for example
(type & Channel) ‘id’ ‘value’
Note On Channel Note Number Velocity
Note Off Channel Note Number Velocity
Control Change Channel CC Number Value
Poly Aftertouch Channel Note Number Pressure
Program Change Channel Program Number n/a
‘What’ ‘Where’ ‘Which’ ‘How Much’

this is very much not standard language, but it helps me to think a little more generally about MIDI messages without using formal language

This informal language will be used in the Ranges section


As hinted at earlier, we have a choice of using the information carried by the incoming message and/or the values stored as “Argument” :asterisk: properties.

This gives us a lot of options…

…which might be a bit overwhelming at first, but soon becomes familiar.

We’ll work through some examples in the “Using Transform” tutorial


Bear in mind that the diagrams show that you’ll always be ignoring some of the data available to you:

  • sometimes we might use none of the values stored in the “arguments”
  • for some uses we might use all three!


:asterisk: why this word “Argument”? see the note later


Most settings combinations in the diagrams above are straight swaps of numbers.

When Channel data is used for other settings –or vice versa– we need to do a little conversion.
We saw this in action in the animated examples

This is explained more here

1 Like