How to Chain Multiple LADSPA Plugins in Ecasound
Ecasound fully supports chaining multiple LADSPA plugins sequentially within a single chainsetup or command-line chain. By appending multiple effect operators to the same audio chain, Ecasound routes the signal through each plugin in the exact order they are declared. This article explains how to configure sequential LADSPA processing in Ecasound, covers the required syntax, and provides working command-line examples.
Sequential Processing in Ecasound
When processing audio in Ecasound, each chain acts as a linear signal path. Audio flows from input sources, passes through chain operators (such as filters, controllers, and LADSPA plugins), and exits through outputs.
When you define multiple LADSPA plugins on a single chain, Ecasound processes them strictly from left to right. The processed output of the first plugin immediately becomes the input to the next plugin in the sequence, allowing you to build complex effects racks inside a single chain without creating intermediate audio files or complex routing networks.
Command-Line Syntax
LADSPA plugins are attached to an active chain using the
-el option followed by the plugin label and its
comma-separated control parameters:
-el:plugin_unique_label,param1,param2,...To chain multiple plugins sequentially, declare the -el
flag multiple times consecutively within the definition of your
chain:
ecasound -i input.wav -o output.wav -el:first_plugin,params -el:second_plugin,params -el:third_plugin,paramsYou can also use -eli:plugin_id_number if you prefer
referencing plugins by their numeric LADSPA ID rather than their string
label.
Practical Example
Consider a scenario where an audio file needs a high-pass filter to remove low-frequency rumble, followed by a compressor to balance dynamics, and finally an amplifier plugin to adjust the master gain:
ecasound -i input.wav -o processed.wav \
-el:highpass_iir,100,2 \
-el:sc4,0,50,0,-20,4,2,0.1,10 \
-el:amp_mono,3In this command:
input.waventers the default chain.- The
highpass_iirfilter removes frequencies below 100 Hz. - The resulting audio is passed directly into the
sc4stereo compressor. - The compressed signal enters the
amp_monoplugin, applying a 3 dB gain boost. - The final audio stream is written to
processed.wav.
Configuration Considerations
- Channel Compatibility: Ensure that each plugin in
the sequence supports the channel layout of the stream. For example,
inserting a single-channel (mono) plugin into a stereo chain without
channel routing can cause phase discrepancies or processing errors
unless handled with appropriate channel routing operators
(
-erc,-ea). - Parameter Verification: Before chaining, verify the
exact plugin label and parameter order by running
analyseplugin <plugin_name>.soor using Ecasound's interactive mode withladspa-listto avoid configuration errors.