Program Changer

By prosoloact, 3 May, 2022

 

 Can the sysex or CC info be extracted from the Program Changer?(To show me the sysex of it's action)

 Also, can the the Program Changer be converted to a VST?

 

Mark van den Berg

2 years 8 months ago

Can the sysex or CC info be extracted from the Program Changer?(To show me the sysex of it's action)

When the user presses the Send button in the "MIDI program changer" window, the window sends up to three MIDI Channel messages to the selected output device:

  1. If the "MSB Bank" checkbox is enabled, the window sends a Control Change message, consisting of three bytes: first a status byte of the form $Bx: B indicates that the message is a Control Change message, and x is the hexadecimal representation (0-F) of the selected MIDI channel (1-16) minus 1. Two data bytes follow the status byte: the first data byte indicates the controller, which is always 0 here (for Controller 0 = "Bank Select [MSB]"), and the second data byte is the value (0-127) specified in the "MSB Bank" field.
  2. If the "LSB Bank" checkbox is enabled, the window sends a Control Change message, again starting with a $Bx status byte, but this time with the first data byte being 32 (for Controller 32 = "Bank Select LSB"), and the second data byte being the value (0-127) specified in the "LSB Bank" field.
  3. If the "Program" checkbox is enabled, the window sends a Program Change message, with the status byte being $Cx, and a single data byte indicating the value specified in the "Program" combobox (1-128) minus 1.

As you can see, these MIDI Channel messages are very straightforward, and no MIDI System Exclusive (SysEx) messages are sent. So I don't see the need for a special "extraction" facility.

 Also, can the the Program Changer be converted to a VST?

Maybe it can, but I'm not going to do so, because it would be far too much work for such a small facility: studying the VST system, getting a license from Steinberg etc.