Hi David,

you need to change the channel type of that channel, by calling:

fluid_synth_set_channel_type(synth, 9, CHANNEL_TYPE_MELODIC);

After this, fluidsynth will treat all program change events for channel 10 as 
it does for the other channels by default. Note that fluidsynth uses zero based 
counting of channels, so its channel 9 here.

Also make sure to select your personally preferred bank selection mode with the 
"synth.midi-bank-select" setting:

http://www.fluidsynth.org/api/fluidsettings.xml#synth.midi-bank-select

> I have tried fluid_synth_unset_program(synth, 9); and this returns 0 (OK) 
> however the command is ignored and ch10 remains at its default.

On every program change, fluidsynth tries to find a preset that the soundfont 
provides. For drum channels it tries bank 128, which is why percussion 
instruments keep being selected.


Tom




_______________________________________________
fluid-dev mailing list
fluid-dev@nongnu.org
https://lists.nongnu.org/mailman/listinfo/fluid-dev

Reply via email to