[Top][All Lists]

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

Re: [fluid-dev] Continuous controllers

From: Element Green
Subject: Re: [fluid-dev] Continuous controllers
Date: Fri, 24 Jun 2016 09:30:57 -0600

Hello Christian,

On Fri, Jun 24, 2016 at 1:24 AM, S. Christian Collins <address@hidden> wrote:
On 06/23/2016 08:28 PM, Element Green wrote:
There are a bunch of default modulators which cause SoundFont instruments to respond to some of the defined MIDI controllers as expected (volume control, pitch bender, etc).  When attempting to modify one of these, you have to first define a modulator which reverses the effect of the default modulator (adds a value with the opposite sign).  Then you can define a new modulator which has the desired effect, otherwise both modulators will be active (the default one and the user defined one).

Actually, the way to disable a default modulator is to recreate the modulator but set its value to 0 (not a negative, canceling value). If you want to modify the default modulator do use a different amount (while keeping the same curves), simply recreate the default modulator and then give it a different amount value. No need to cancel the modulator and then re-add it in this case. However, if you wanted to, for example, change the default velocity-to-attenuation modulator curve to be linear instead of concave, you would have to first cancel the modulator (create it and set its value to 0) and then create a new modulator with the different curve.

So in short, to disable a default modulator: create it with an amount of 0.
To modify a default modulator: create it with the desired amount.

Its been a while since I was looking at this.  After reading over the spec, it sounds like you are correct.  This seems contrary to some of the behavior I have observed in Swami in particular.  So it may be that there are some implementation issues (either in Swami and/or FluidSynth).  Needs some testing.  Perhaps my recollection of previous testing is not so good and it could be that it is just fine.

Swami really needs to show these default modulators and allow for easily negating them.  This is on my TODO list.  Otherwise its rather complicated figuring out what the default modulators are and adding one which negates it's effect (see section 8.4 on page 41 of the SoundFont 2.4 spec http://freepats.zenvoid.org/sf2/sfspec24.pdf).

Swami now has support for modulators. You might want to check out the way that they are handling this, although the way that Vienna SoundFont Studio does it is a more elegant solution (I sent you a video about this somewhat recently). Kenneth Rundt, the author of Swami has also created an info page on modulators that is a good reference.

I guess you meant SynthFont, since I'm the author of Swami ;-)  Ha ha.


fluid-dev mailing list



reply via email to

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