fix a-fluidsynth bank select (use MMA style, 14 bit MSB/LSB)
This commit is contained in:
parent
9a13a563d0
commit
2a7ad06e79
|
@ -327,6 +327,7 @@ instantiate (const LV2_Descriptor* descriptor,
|
|||
fluid_settings_setnum (self->settings, "synth.sample-rate", rate);
|
||||
fluid_settings_setint (self->settings, "synth.parallel-render", 1);
|
||||
fluid_settings_setint (self->settings, "synth.threadsafe-api", 0);
|
||||
fluid_settings_setstr (self->settings, "synth.midi-bank-select", "mma");
|
||||
|
||||
self->synth = new_fluid_synth (self->settings);
|
||||
|
||||
|
@ -763,9 +764,8 @@ mn_file (LV2_Handle instance)
|
|||
pf (" <PatchBank Name=\"Patch Bank %d\">\n", i->first);
|
||||
if (i->second.size() > 0) {
|
||||
pf (" <MIDICommands>\n");
|
||||
// this seems wrong (swapped MSB/LSB) but works - double check fluid + ardour.
|
||||
pf (" <ControlChange Control=\"0\" Value=\"%d\"/>\n", i->first & 127);
|
||||
pf (" <ControlChange Control=\"32\" Value=\"%d\"/>\n", (i->first >> 8) & 127);
|
||||
pf (" <ControlChange Control=\"0\" Value=\"%d\"/>\n", (i->first >> 7) & 127);
|
||||
pf (" <ControlChange Control=\"32\" Value=\"%d\"/>\n", i->first & 127);
|
||||
pf (" </MIDICommands>\n");
|
||||
pf (" <PatchNameList>\n");
|
||||
int n = 0;
|
||||
|
|
Loading…
Reference in New Issue
Block a user