MIDI Program Changes are commands transmitted via MIDI to switch presets/sounds of plug-ins and instruments from MIDI clips or MIDI sequencers.
Ideal for creative combinations in electronic music, this technique is especially popular in dubstep - just think of artists like Skrillex or James Blake.
This technique is especially useful to avoid having to use a new track with a new VST plugin every time you want a different sound - this saves CPU resources enormously.
Why do we need MIDI program changes?
A common use for Program Changes is in live performances, where a musician wants to switch between different sounds during the performance.
For example, a keyboard player can switch between a piano sound and a synthesizer sound during a song. A program change command can be sent from a MIDI controller, such as a foot pedal, to switch between the two sounds.
Another use for Program Change commands is in the recording studio, when a musician or producer wants to switch between different sounds during recording.
If a musician wants to switch between a pad and a lead sound on the synthesizer while recording, a Program Change command can be sent from the DAW to switch between the two sounds without the musician having to do anything himself.
And when a guitarist is at home in his home studio, playing his electric guitar through virtual amps, he can switch between a clean and a distorted sound at the touch of a button or a MIDI pedal - just like a real amp.
How do MIDI program change messages work?
MIDI Program Changes are handled differently by each instrument, VST plugin and DAW. Most DAWs can generate such commands, and most (modern) analogue synthesizers can interpret them.
In Ableton Live, you can find the section for this on the left side of the Note window under Pgm Change when you select a MIDI clip.
Important to know: According to ableton.com Program Changes can only be applied to whole clips, not to each individual note. To do this, you would simply have to split the MIDI sequence into multiple clips to apply a different preset to each note.
Then you can select a program, a bank and a sub-bank for each clip. Since MIDI messages only have 128 memory locations, you can always select 128 presets for each of these 3 groups. Theoretically, that's 128x128x128, or over 2 million memory locations.
I wrote theoretically because many plugins and instruments do not support so many "subgroups" and only allow 128 different program changes. But most people should be able to live with that.
Depending on the plugin, it switches between banks and programs as soon as the command comes from the DAW. So you have to make sure that the sound you have is also saved as a preset.
MIDI program changes are now possible with all DAWs, and the process is similar to Ableton.
Also interesting: 7 useful ChatGPT prompts for musicians and music producers
Creative applications
With MIDI Program Changes, extreme sound changes can be made in a very short time and perfectly timed. This is very popular in electronic music, especially in dubstep.
Of course, this also works with different tracks - and makes more sense for production, as long as you have enough CPU power. For live applications, however, this is particularly practical, especially if you control the program change parameters with a MIDI controller.
You don't have to have notes in the clip for the program change to work. So you can use empty clips as presets. If you have a controller like the Ableton Push, you can change presets with the push of a button - it's incredibly handy on stage.
Keep reading: The best studio monitors