[LAU] Fluidsynth: map each channel to individual jack audio output
Lorenzo Sutton
lorenzofsutton at gmail.com
Sun Apr 24 15:01:55 UTC 2016
Hi Tito,
On 24/04/16 14:15, Tito Latini wrote:
> On Sun, Apr 24, 2016 at 03:13:42AM +0200, Lorenzo Sutton wrote:
[...]
>>
>> However the behaviour isn't as expected at least according to this (very
>> old post):
>>
>> https://lists.nongnu.org/archive/html/fluid-dev/2004-02/msg00027.html
>>
>> Ideally is there a way to have each channel routed to a separate audio
>> output on jack these days? Any help appreciated.
>
> '-o synth.audio-groups=4' fails: `fluid_settings_getint' returns 1
> after `process_o_cmd_line_option' (also tested with a printf).
>
> sh> fluidsynth -a jack -o synth.audio-groups=4 <<< settings 2>/dev/null \
> | grep audio-groups
> synth.audio-groups 1
>
> Idem with "-o synth.audio-channels=4 -o synth.audio-groups=4",
> but "-G 4" works:
>
> sh> fluidsynth -a jack -G 4 <<< settings 2>/dev/null | grep audio-groups
> synth.audio-groups 4
>
> There is a comment in `src/fluidsynth.c:594':
>
> /* The 'groups' setting is only relevant for LADSPA operation
> * If not given, set number groups to number of audio channels, because
> * they are the same (there is nothing between synth output and 'sound card')
> */
>
> tested with:
>
> sh> fluidsynth -a jack -L 4 <<< settings 2>/dev/null | grep audio-groups
> synth.audio-groups 4
>
> The follow example works (audio.jack.multi=no by default):
>
> sh> fluidsynth -a jack -L 4
> load /usr/share/sounds/sf2/FluidR3_GM.sf2
> select 0 1 0 0
> select 1 1 0 20
> select 2 1 0 30
> select 3 1 0 40
>
Thanks for testing... However I'm not really sure what to make out of
that apart from assuming that the use case isn't directly covered by
fluidsynth?
I imagine the easiest workaround would be starting multiple fluidsynth
instances, maybe lowering poliphony (not sure what impact this has on
resource consumption), possibly scripting it...
Lorenzo.
More information about the Linux-audio-user
mailing list