renoise.song().instruments.midi_output_properties.program = 5
renoise.song().instruments.midi_output_properties.bank = 8193
Although issuing these commands to the API do in fact change the instrument's values as shown in the instrument settings, the newly-assigned values do not seem to take effect immediately. Instead, the "Ext. MIDI" button in the instrument settings turns yellow, and remains so until another change to the instrument is made in-GUI (e.g. setting the device to "None", then setting it back to the intended device).
So if I had a piano instrument selected from within the GUI, and I change to a guitar from my tool via the renoise API, the instrument will continue to play a piano even though the program and bank values have visibly changed. Only after changing any of the midi settings in the GUI again do those new program/bank settings take effect.
I initially thought that I was missing a step to 'refresh' the midi settings and have them take effect, but after consulting the documentation and the IRC channel I find no mention of any such command.
Is this a bug? Or does anyone have a suggestion to get around this?
EDIT: vV has confirmed my suspicion that this may be a bug, possibly related to this thread. Hopefully there should be enough information here to for the devs to reproduce the issue.
Edited by linq, 19 February 2013 - 02:01.