Dynamic Range Compression in Ecasound

In Ecasound, dynamic range compression is natively handled by the -eca peak limiter operator, while full-featured compression curves are achieved using the -el LADSPA plugin host operator. This article covers how to implement and configure the built-in -eca operator to manage dynamic peaks, as well as how to integrate LADSPA-based compressors for advanced dynamic control.

The Native -eca Operator

Ecasound includes a native dynamic processing effect designated by the -eca operator. It functions as a peak limiter—an aggressive, specialized form of dynamic range compression designed to attenuate signals exceeding a specified ceiling.

Syntax and Parameters

-eca:peak-limit,release-time

Command Example

To compress an audio file so that signals do not exceed 85% of full scale with a fast release time of 50 milliseconds, use:

ecasound -i input.wav -eca:85,0.05 -o output.wav

Advanced Compression Using LADSPA (-el)

While -eca works well for limiting peaks, standard multi-parameter dynamic range compression—requiring adjustable attack, knee, ratio, and makeup gain—relies on Ecasound’s LADSPA plugin operator, -el.

Ecasound interfaces with external LADSPA compressor suites such as Steve Harris’s sc4 compressor or the TAP plugins.

Command Example with SC4

Using the SC4 compressor plugin through the -el operator:

ecasound -i input.wav -el:sc4,0,10,0.02,-12,4,0.1 -o output.wav

In this setup, the parameters define the compressor's root behavior:


Dynamic manipulation often involves expansion alongside compression. Ecasound pairs the -eca limiter with the -enm operator, which functions as a noise gate to suppress dynamic range at the lower end:

-enm:threshold_level,pre_hold_time,attack_time,post_hold_time,release_time

Combining -enm for low-level gating and -eca (or -el:sc4) for high-level compression creates a complete dynamic processing chain within a single Ecasound command line.