I’m trying to figure out why, when I close Ardour and the session, the MIDI programs in the General MIDI Synth MIDI bus are reset. For example I set in C1 Finger Bass and in C2 Steel Guitar but when I close the session they are gone. This happens only in the MIDI Bus. If I try to insert the General MIDI Synth in a MIDI track it works perfectly.
As opposed to tracks, busses don’t save MIDI state. Note how the heading reads volatile.
The solution here is to save the instrument bank/program with each track, and play it into the bus.
One way to do that is to use the Patch Selector from each MIDI track’s track-header.
On session re-load the patch is restored for the track by sending MIDI CC/PGM events to the track, which then arrive at the bus and update the synth there.
Another way is to directly add Patches to a MIDI region on the timeline.