LADSPA plugins in Liquidsoap

LADSPA is a standard that allows software audio processors and effects to be plugged into a wide range of audio synthesis and recording packages.

If enabled, Liquidsoap supports LADSPA plugins. In this case, installed plugins are detected at run-time and are all available in Liquidsoap under a name of the form: ladspa.plugin, for instance ladspa.karaoke, ladspa.flanger etc..

The full list of those operators can be found using liquidsoap --list-plugins. Also, as usual, liquidsoap -h ladspa.plugin returns a detailed description of each LADSPA’s operators. For instance:

./liquidsoap -h ladspa.flanger           
  *** One entry in scripting values:
  Flanger by Steve Harris <steve@plugin.org.uk>.
  Category: Source / Sound Processing
  Type: (?id:string,?delay_base:'a,?feedback:'b,
   ?lfo_frequency:'c,?max_slowdown:'d,
   source(audio='#e,video='#f,midi='#g))->
  source(audio='#e,video='#f,midi='#g)
  where 'a, 'b, 'c, 'd is either float or ()->float
  Flag: hidden
  Parameters:
  * id : string (default "")
      Force the value of the source ID.
  * delay_base : anything that is either float or ()->float (default 6.32499980927)
      Delay base (ms) (0.1 <= delay_base <= 25).
  * feedback : anything that is either float or ()->float (default 0.)
      Feedback (-1 <= feedback <= 1).
  * lfo_frequency : anything that is either float or ()->float (default 0.334370166063)
      LFO frequency (Hz) (0.05 <= lfo_frequency <= 100).
  * max_slowdown : anything that is either float or ()->float (default 2.5)
      Max slowdown (ms) (0 <= max_slowdown <= 10).
  * (unlabeled) : source(audio='#e,video='#f,midi='#g) (default None)

For advanced users, it is worth nothing that most of the parameters associated with LADSPA operators can take a function, for instance in the above: max_slowdown : anything that is either float or ()->float . This means that those parameters may be dynamically changed while running a liquidsoap script.