34 User Guide | Oxygen 88 |
10: MIDI Messages Defined
Program and Bank Changes
When the MIDI standard was first established, it enabled the user to access only 128 different sounds using program change messages
128 banks with 128 sounds in each bank is the basic principle used | Bank MSB |
| Bank LSB |
| Program |
|
|
|
|
| |
to expand the number of accessible sounds. However, to avoid |
|
|
|
| Program 0 |
reaching the new limit of the resulting 16,384 possible sounds (128 |
|
|
|
| |
|
|
|
| Program 1 | |
banks x 128 programs) accessible using a bank change combined |
|
|
|
| |
|
|
|
| Program 2 | |
with a program change, another layer of banks was added. The |
|
| Bank LSB 0 |
| Program 127 |
result is a system of 128 banks that can contain 128 |
|
|
| ||
|
|
|
| Program 0 | |
each of them, which, in turn, can contain 128 sounds (programs). | Bank MSB 0 |
| Bank LSB 1 |
| Program 1 |
|
|
|
|
| Program 2 |
Bank change messages are useful when calling up sounds from a |
|
| Bank LSB 2 |
| Program 127 |
large library that may exist in a particular sound module or software |
|
|
|
| Program 0 |
synthesizer. For example, devices that are built according to the |
|
| Bank LSB 127 |
| Program 1 |
|
|
| Program 2 | ||
GS specification from Roland or the XG specification (Appendix E) |
|
|
|
| Program 127 |
from Yamaha require you to specify a bank change in order to |
|
|
|
| |
|
|
|
|
| |
access the extra voices that these devices provide. MIDI CC 0 is |
|
|
|
|
|
the bank select MSB (Most Significant Byte) message. This MIDI |
|
|
|
| Program 0 |
message is |
|
|
|
| Program 1 |
|
|
|
| Program 2 | |
banks. |
|
|
|
| |
|
| Bank LSB 0 |
|
| |
|
|
|
| Program 127 | |
This message can be used in conjunction with MIDI CC 32 which is | Bank MSB 1 |
|
|
| Program 0 |
| Bank LSB 1 |
| Program 1 | ||
bank select LSB (Least Significant Byte): a separate |
|
| |||
|
|
|
| Program 2 | |
allowing additional selection of any of another 128 |
|
| Bank LSB 2 |
| Program 127 |
combination of Bank MSB and LSB messages gives a |
|
|
| ||
|
|
|
| Program 0 | |
message that can select any of a possible 16,384 banks. Each |
|
| Bank LSB 127 |
| Program 1 |
bank can in turn contain 128 possible sounds selected via a |
|
|
| Program 2 | |
|
|
|
|
| |
separate program change MIDI message. This enables a user to |
|
|
|
| Program 127 |
theoretically recall over two million programs directly, using only |
|
|
|
|
|
MIDI commands. However, most devices only use a few different |
|
|
|
|
|
banks, and you can often ignore the LSB message. |
|
|
|
| Program 0 |
|
|
|
|
| Program 1 |
You will find many MIDI devices respond to program change |
|
|
|
| Program 2 |
|
| Bank LSB 0 |
|
| |
commands and many are organized according to the GM listing. In |
|
|
| Program 127 | |
|
|
|
| ||
General MIDI devices, different sounds are organized in the same | Bank MSB 2 |
| Bank LSB 1 |
| Program 0 |
|
| Program 1 | |||
way from device to device. Piano sounds are in their particular |
|
| |||
|
|
|
| Program 2 | |
place, string sounds are in their place, drum sounds are in their |
|
| Bank LSB 2 |
| Program 127 |
place, and so on. All GM devices (both hardware and software |
|
|
| ||
|
|
|
| Program 0 | |
sound modules) are clearly labeled as such, so you know that their |
|
|
|
| |
Bank MSB 127 |
| Bank LSB 127 |
| Program 1 | |
sounds are organized in the General MIDI structure. When a GM |
|
| Program 2 | ||
|
|
|
|
| |
device receives a MIDI program change, it calls up a type of sound |
|
|
|
| Program 127 |
that you expect from the GM sound set. All
modules call up unique sounds from their memory upon receiving MIDI program changes. Since the sounds in a
You can send Program Change, Bank LSB and Bank MSB messages directly from Oxygen 88.
Please consult the documentation for your sound module, DAW or software instrument for further information.