Ecasound Master Bus Compression and Limiting

Ecasound can function effectively as a lightweight, low-latency master bus processor capable of multi-band compression and peak limiting. By leveraging its command-line routing capabilities, audio chain architecture, and native support for LADSPA plugins, Ecasound allows you to build sophisticated mastering chains directly in Linux and Unix environments. This article explains how Ecasound manages dynamic processing, routes multi-band signal chains, and integrates with system audio to serve as a real-time mastering processor.

Plugin Support for Mastering

Ecasound includes internal filters and envelopes, but dedicated mastering requires standard plugin architectures. Ecasound natively supports the LADSPA (Linux Audio Developer's Simple Plugin API) standard via the -el: command-line flag.

To achieve multi-band compression and brickwall limiting, you must install appropriate LADSPA plugin suites, such as:

Implementing Multi-Band Compression

You can implement multi-band compression in Ecasound using two distinct methods:

1. Dedicated Multi-Band Plugins

The simplest method utilizes a single LADSPA plugin that processes multiple frequency bands internally. You attach the plugin directly to your master audio chain:

ecasound -i:jack -o:jack -a:master -el:calf_multibandcompressor,parameters...

2. Native Multi-Chain Frequency Splitting

Ecasound allows you to split an incoming audio stream into multiple parallel chains, filter each chain by frequency, compress them independently, and mix them back down to a single output.

All chains are assigned to output to the same master output device, where Ecasound sums them back into a single stereo stream.

Applying the Brickwall Limiter

A brickwall limiter must sit as the final processing stage to catch transient peaks and prevent digital clipping.

Using the fastLookaheadLimiter from SWH plugins, you append the limiter to the master output chain after the multi-band compression stage:

-el:fastLookaheadLimiter,20,0,-0.1

This configuration defines the lookahead buffer (in milliseconds), input gain attenuation, and the final output ceiling (e.g., -0.1 dBFS to prevent inter-sample clipping).

Real-Time Master Bus Integration

To use Ecasound as a master bus processor for a Digital Audio Workstation (DAW) or system-wide audio:

  1. Use JACK Audio Connection Kit: Run Ecasound using JACK inputs and outputs (-i:jack -o:jack). This provides low-latency inter-application routing.
  2. Route DAW Master Outs to Ecasound: In your DAW, route the stereo mix output to the Ecasound input ports rather than directly to your hardware interface.
  3. Route Ecasound to Hardware: Route the processed Ecasound output ports to your physical sound card monitors.

Ecasound's headless, non-interactive mode (-B:rt for real-time priority) ensures that the dynamic processing runs with minimal CPU overhead, making it an efficient option for live monitoring and final bus processing.