You are here

Add new comment

rncbc's picture

You seem to be quite right. The MIDI channels setup setting doesn't seem to work as one would expect. No matter what, it always sticks to 16 channels. I suspect this is a (lib)fluidsynth issue, as qsynth just uses the synth.midi-channels fluidsynth engine property to setup the number of MIDI channels.

We'll see...

[UPDATE] It is qsynth setup dialog which is at fault here. The MIDI channels spin-box DO NOT allow any number of channels less than 16. Blame me who never thought of it eventually being ever necessary. Guess I was wrong :)

It is very simple to fix that though: just fire up src/qsynthSetupForm.ui into your favorite text editor and change the following (line 288 to be precise)

280        <widget class="QSpinBox" name="MidiChannelsSpinBox" >
281         <property name="toolTip" >
282          <string>Number of MIDI channels</string>
283         </property>
284         <property name="maximum" >
285          <number>256</number>
286         </property>
287         <property name="minimum" >
288          <number>16</number>
289         </property>
290         <property name="singleStep" >
291          <number>16</number>
292         </property>
293        </widget>

just change the 16 into 1, save and rebuild. I'll try to remember to get that right on CVS ASAP.

[UPDATE2] I've made the changes to CVS (qsynth However it's now evident that this change is pretty irrelevant: internally, libfluidsynth just rounds up the number of MIDI channels to the nearest multiple of 16. In fact that's exactly what was implicit in the MIDI channels spin-box minimum value property, before this change was taken. I should have figure it out in the first place :)

IOW, you'll get this messages on the console/stderr if you look closer:

fluidsynth: warning: Requested number of MIDI channels is not a multiple of 16. I'll increase the number of channels to the next multiple.

I guess you'll have to pest the fluid-dev guys now.