fluid-dev
[Top][All Lists]
Advanced

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

Re: [fluid-dev] Supporting different reverb engines


From: Jan Flikweert
Subject: Re: [fluid-dev] Supporting different reverb engines
Date: Fri, 27 May 2022 10:20:15 +0200

Hi all,

The wish of Tom M and Reinhold Hoffmann are clear.

Without answering the question an option but as remark the next. Just add 
Asio/JackRouter support to fluidsynth. I work with REAPER. With Rearoute you 
can use DAW REAPER.

Then you are free to choose your own reverb. I use Liquidsonics Reverberate.

Kind regards,

Jan Flikweert 

-----Original Message-----
From: fluid-dev [mailto:fluid-dev-bounces+flkwrt=zeelandnet.nl@nongnu.org] On 
Behalf Of Reinhold Hoffmann
Sent: Friday, May 27, 2022 9:34 AM
To: 'FluidSynth mailing list'
Cc: 'Tom M.'
Subject: Re: [fluid-dev] Supporting different reverb engines

I appreciate having the great reverb capability of Lexicon 224 as part of
fluidsynth.

I vote for option (1)

Reasons why option (1):
-----------------------
Regarding option (2): Using the LADSPA architecture on Windows is possible
according to the documentation, but dealing with an additional plugin (dll)
would have a wider impact (building, intregrating into installers). I guess
that the overall file size would be bigger than option (1). Setting the
reverb level per effect-groups (effect-group == midi channel == instrument)
is key when using the MIDI CC event 91 as reverb indicator for each
instrument.  
Regarding option (3). Option (3) is not an option because we use our own
midi player software.

Reinhold 

-----Ursprüngliche Nachricht-----
Von: fluid-dev [mailto:fluid-dev-bounces+reinhold=notation.com@nongnu.org]
Im Auftrag von Tom M. via fluid-dev
Gesendet: Donnerstag, 26. Mai 2022 14:34
An: FluidSynth mailing list
Cc: Tom M.
Betreff: [fluid-dev] Supporting different reverb engines

Would it make sense for fluidsynth to implement different reverb engines?

I recently came across a Lexicon 224 reverbator, which I quite like. To my
ears it sounds better than the FDN reverbator which fluidsynth currently
implements. Now, I don't want to go through the discussion of changing our
default reverb engine again, as fluidsynth has just changed it in 2.1.0 from
freeverb to FDN. But I would really like to hear fluidsynth's output with
the Lexicon 224. So, I do wonder how this could be implemented. I see three
possible options:

1) Extend synth.reverb.active from boolean to an enum integer, to allow
selecting different reverb engines when the synth is created.

2) Write a LADSPA plugin that implements a Lexicon 224 and can be hooked up
by fluidsynth.

3) Render dry audio from the synth and manually post-process it in my own
MIDI player.


Option 1) would allow to also re-add support for the freeverb engine, which
we dropped in 2.1.0 (in case anybody misses it). It would also allow to
simply read the reverb-send level from fluidsynth's internal buffer setup
and apply it to the correct rvoice buffer on-the-fly (potentially
parallelized for multi-channel output in the future). Reverb related
fluidsettings, like roomsize, level, etc, could be respected as well. On the
other hand, one might argue that fluidsynth should not serve as playground
for various sound effects. Other people might come and want their
reverbators, chorus engines, etc. implemented in fluidsynth.

Option 2) seems like the most generic approach. I just don't know if it
would be possible to correctly apply the reverb-send level to the individual
LADSPA buffers (i.e. MIDI channels) on-the-fly. Looking at our API there is
a function fluid_ladspa_effect_set_control() which might be usable for this
use-case. But I'm afraid supporting settings like roomsize, level, etc.
would not be possible (even though I could live without it).

Obviously option 3) would be my fallback. I would use fluid_synth_process()
to render a dry, multi-channel output from the synth and apply the Lexicon
reverb as post processing step in synth-context, by using
fluid_synth_get_gen() to read the GEN_REVERBSEND for every MIDI channel.


Any opinions on that?

Tom


_______________________________________________
fluid-dev mailing list
fluid-dev@nongnu.org
https://lists.nongnu.org/mailman/listinfo/fluid-dev


_______________________________________________
fluid-dev mailing list
fluid-dev@nongnu.org
https://lists.nongnu.org/mailman/listinfo/fluid-dev




reply via email to

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