Revert "allow bank changes on drum channels"

This reverts commit 2fb69e2187.

From the user perspective it is not clear how banks are substituted if the requested preset / bank combination is not available in the soundfont, because the internal channel type still matters
This commit is contained in:
derselbst 2017-08-04 17:50:01 +02:00
parent 25e7eb0c6b
commit 883b640bef
3 changed files with 3 additions and 5 deletions

View file

@ -481,8 +481,7 @@ The following table provides details on all the settings used by the synthesizer
<li>gs: (default) CC0 becomes the bank number, CC32 is ignored.</li>
<li>xg: CC32 becomes the bank number, CC0 is ignored.</li>
<li>mma: bank is calculated as CC0*128+CC32.</li>
</ul>
Note: Drum channels are initialized to \c DRUM_INST_BANK (==128). Since 1.1.7 mma mode also allows the bank of drum channels to be changed the same way as for melodic channels.
</ul>
</td>
</tr>

View file

@ -264,7 +264,7 @@ fluid_channel_set_bank_msb(fluid_channel_t* chan, int bankmsb)
}
if (style == FLUID_BANK_STYLE_GM ||
(chan->channel_type == CHANNEL_TYPE_DRUM && style != FLUID_BANK_STYLE_MMA))
chan->channel_type == CHANNEL_TYPE_DRUM)
return; /* ignored */
oldval = chan->sfont_bank_prog;

View file

@ -1945,8 +1945,7 @@ fluid_synth_program_change(fluid_synth_t* synth, int chan, int prognum)
FLUID_API_ENTRY_CHAN(FLUID_FAILED);
channel = synth->channel[chan];
if (channel->channel_type == CHANNEL_TYPE_DRUM &&
synth->bank_select != FLUID_BANK_STYLE_MMA)
if (channel->channel_type == CHANNEL_TYPE_DRUM)
banknum = DRUM_INST_BANK;
else
fluid_channel_get_sfont_bank_prog(channel, NULL, &banknum, NULL);