[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [fluid-dev] Re: Last QSynth issues committed

From: Rui Nuno Capela
Subject: Re: [fluid-dev] Re: Last QSynth issues committed
Date: Tue, 15 Dec 2009 21:52:37 +0000
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv: Gecko/20091130 SUSE/3.0.0-1.1.1 Thunderbird/3.0

On 12/15/2009 07:41 PM, address@hidden wrote:
> Ahh, and I thought that was going to be the golden commit.

aha, ya know, all that glitters ain't gold :)

> Quoting Rui Nuno Capela <address@hidden>:
>> re. svn trunk r278
>> fluid_synth_unset_program() seems to do its deeds now, but ...
>> that fallback logic needs work still. or else. for example, simple
>> soundfonts which define fewer instruments/presets than the number of
>> available channels, are now set initially unassigned, as reported by
>> fluid_synth_get_channel_info().
> I'm not seeing that.  I just loaded up a SoundFont in QSynth 0.3.4 with
> only one preset and it was assigned to every channel, except 10 which is
> unassigned due to lack of percussion preset.  Program/preset 0/0 should
> get assigned to every channel except 10.  Am I misunderstanding what you
> are seeing?

stop right there :) is that's the last released version of qsynth 0.3.4
that's old enough and surely is *not* the new api, neither
fluid_synth_get_channel_info() nor fluid_synth_unset_program().

please try with current svn trunk:

  svn co https://qsynth.svn.sourceforge.net/svnroot/qsynth/trunk qsynth-svn

build it straight:

  cd qsynth-svn
  make -f Makefile.svn
  ./configure && make

and that will get you to qsynth, the one i fuss with ;)

>> furthermore, any attempt to assign any
>> other bank/program to a channel, via fluid_synth_bank_select() and
>> fluid_synth_program_change(), are strangely refused or will fallback to
>> unassigned or default preset quite immediately.
> Weird.  I'm not seeing that in QSynth 0.3.4 though.  I tried a SoundFont
> which has 2 banks of instruments and was able to select from other banks
> just fine, at least according to the channels dialog.

you can select but it won't stay that way for long, at least on my lab.
pressing reset button, which implies fluid_synth_program_reset() will
just put all channels back to default bank/program and not the assigned

>> one other thing, more like a question, is fluid_synth_program_reset()
>> really supposed to reset all channels to the default bank/program
>> assignment and disregard any explicit or discrete bank/program change
>> made so far? i am not sure, but i think that is in complete disruption
>> with older behavior or semantics from pre 1.1.0
> fluid_synth_program_reset() is supposed to work just as before, that is
> (from the API reference):
> Resend a bank select and a program change for every channel.

right, but that's not what it is doing, at least when probed with
fluid_synth_get_channel_info(). nb. older qsynth 0.3.4 is probably
reading channel information via fluid_synth_get_channel_preset(),
instead of fluid_synth_get_channel_info(), remember?

> So it should just resend the bank and program which is already assigned,
> which might cause a new preset to become assigned if the loaded
> SoundFont stack or bank offsets have changed.  If you are seeing
> something else, then that is a bug.
> Do you have some updated QSynth code I could test with?  Perhaps there
> is something going wrong with some of the new functions or something. 
> Or maybe I didn't understand what exactly you are experiencing.  Do you
> have any reproducible steps I could use to observe the problems you are
> seeing?

qsynth as in svn trunk has this new "unset" option on the
channels' context menu, so you can try that too.

rncbc aka Rui Nuno Capela

reply via email to

[Prev in Thread] Current Thread [Next in Thread]