[Top][All Lists]

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

Re: [fluid-dev] Using multiple soundfonts from unix command line

From: Matt Wallis
Subject: Re: [fluid-dev] Using multiple soundfonts from unix command line
Date: Fri, 15 Jun 2018 17:23:42 +0100
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:52.0) Gecko/20100101 Thunderbird/52.8.0

On 15/06/2018 13:12, Tom M. wrote:
Can I now run fluidsynth2 direct from the command line using 
`src/fluidsynth` - will it pick up the correct libraries/Frameworks?
Yes otherwise it wouldnt run.

Running `src/fluidsynth' seems to work for fast-rendering directly to a 
WAV file, but not for playing the audio directly (I get pages of Jack 
Impossible to tell what's wrong without an error log. Try using another audio driver (coreaudio) and make sure jack has worked with 1.1.x.

However, when listening back to the audio, I'm not getting Cello (from sfont 2) on channel 4/5 or Finger bass (from sfont 1) on channel 6/7. 
Try adding "-o player.reset-synth=0" 
BRILLIANT! That fixes it :-)

Alternatively add

set player.reset-synth 0
That did not fix it, but as I say above, the command line version did.
to your config.fluidsynth

I can't find detailed documentation in order to understand what these 
router commands are doing
$ man fluidsynth
Yes, I saw that, but I'm struggling to interpret it with any confidence, I guess because I don't know enough about midi.

       router_chan min max mul add
              Limits the rule for events on min <= chan <= max.  If the channel falls into the window, it is multiplied by 'mul', then 'add' is added.

       router_par1 min max mul add
              Limits parameter 1 (for example note number in a note events). Similar to router_chan.

So, when I look at this:
router_begin cc
router_par1 1 31 0 0
router_begin cc
router_par1 33 127 0 0
My reading of the manpage is that if the first parameter to CC is between 1 and 31, or between 33 and 127, then it is multiplied by 0, and then 0 is added. i.e. it is set to zero.
This means that the only parameter that gets through without being changed to 0 is 32. And I'm guessing that par1 is the MIDI CC Number as in this table: http://nickfever.com/music/midi-cc-list ?
Pure guesswork, probably wrong, and I don't know what's special about 32 .... I need to do some more reading on midi ...
... but maybe I don't need to now that it works with
"-o player.reset-synth=0"

Thanks very much for the help. I am absolutely delighted to now be able to use instruments from different soundfonts in the same piece of music. Fluidsynth is good! All I need to do now is figure out how to glue this into my pipeline from lilypond in a convenient way :-)


reply via email to

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