About midi bank, About midi bank selects & program changes, Раздел tutorial – Инструкция по эксплуатации MuTools MuLab

Страница 71

Advertising
background image

5. About MIDI Bank Selects & Program Changes

When you want to select another program (AKA sound, patch, preset, ...) on your synth or effect unit via
MIDI, you need to send a Program Change.

A Program Change has only 1 parameter value, which can go from 0 to 127. And so a single Program

Change can select 1 out of 128 programs.
However some synths or effects have more than 128 programs.

And that's where the Bank Select message comes into play.

There are 2 Bank Select messages:

Bank Select MSB (Most Significant Byte) = MIDI Controller 0

Bank Select LSB (Least Significant Byte) = MIDI Controller 32

Also a Bank Select message has 1 parameter value which can go from 0 to 127. (It's typical for MIDI)

When combined, these Bank Select messages can select 1 out of 128 * 128 = 16384 banks!

And as each bank can contain up to 128 programs, that means more than 2 million possible programs! Not
bad huh

Ok, back to reality.

For example, let's say that a synth has 512 programs. It may divide these into 4 banks of 128 programs
each.

Now if you want program 160, which is the 32nd program within the second bank, you need to send a Bank

Select to switch to the second bank, then send a Program Change with value 31 to select that 32nd program
in the selected bank. (MIDI values start from 0 so value 31 is the 32nd value!)

In MuLab, you can insert Bank Selects and Program changes in the Event List Editor.

As in this example:

You can ignore the numeric decimals in the above picture.

MuLab is a modern host/sequencer and allows for more precise values for MIDI Controllers than the

standard 0-127 range.

But in case you're sending out Bank Selects, these values are rounded to the nearest integer anyway.

Now which Bank Select and Program Change messages do you effectively have to send to select e.g.

program 578 out of 2048 programs?

Well, it depends on the manufacturer of the synth/effect how they divided their programs into banks, and

which Bank Select messages should be sent to select a proper bank. So you have to look that up in the

documentation of your synth/effect.

Last but not least: Note that a Bank Select selects the bank for the next Program Change message. This

means the program does not change until the Program Change is received, i.e. bank messages alone are not
enough to change a program!

71

Раздел Tutorial

Advertising