Привет, скорей всего то, о чем ты написал это дополнительный параметр MIDI: Program Change.
На счёт FL Studio не знаю, но Cubase это поддерживает точно, можешь поэксперементировать с плагином Halion, т.к. он работает на основе General MIDI и позволяет менять звуки в реальном времени.

Если знаешь английский, следующие линки возможно тебе пригодятся:
Program Change

Purpose

To cause the MIDI device to change to a particular Program (which some devices refer to as Patch, or Instrument, or Preset, or whatever). Most sound modules have a variety of instrumental sounds, such as Piano, and Guitar, and Trumpet, and Flute, etc. Each one of these instruments is contained in a Program. So, changing the Program changes the instrumental sound that the MIDI device uses when it plays Note On messages. Of course, other MIDI messages also may modify the current Program's (ie, instrument's) sound. But, the Program Change message actually selects which instrument currently plays. There are 128 possible program numbers, from 0 to 127. If the device is a MultiTimbral unit, then it usually can play 16 "Parts" at once, each receiving data upon its own MIDI channel. This message will then change the instrument sound for only that Part which is set to the message's MIDI channel.

For MIDI devices that don't have instrument sounds, such as a Reverb unit which may have several Preset "room algorithms" stored, the Program Change message is often used to select which Preset to use. As another example, a drum box may use Program Change to select a particular rhythm pattern (ie, drum beat).
А так же таблица стандартных MIDI программ (General MIDI Patch Map)