Ecasound Offline Mixdown Faster Than Real-Time

Ecasound is fully capable of rendering multitrack projects faster than real-time during an offline mixdown. Because the engine decouples signal processing from audio hardware clocks when reading from and writing to disk, processing speeds are limited only by the host system's CPU and disk I/O performance. This article explains how Ecasound executes offline rendering, how to structure commands for maximum speed, and what factors influence render performance.

How Offline Rendering Works in Ecasound

Real-time audio constraints exist only when an audio chain interfaces directly with physical sound hardware (such as ALSA or OSS drivers) or an audio server running on a hardware clock (such as JACK).

When an Ecasound session routes exclusively from file inputs to a file output, the engine does not wait for a DAC clock. Instead, it pulls sample blocks through the assigned signal chain as rapidly as the CPU can compute them and writes the resulting stream to disk. On modern hardware, a project with basic gain staging, panning, and summing will typically render at dozens of times real-time speed.

Command-Line Structure for File-to-File Mixdown

To execute an offline mixdown, ensure all inputs and outputs specify standard audio files (such as WAV, FLAC, or raw PCM) rather than audio devices.

An example command mixing two stereo tracks down to a master stereo file:

ecasound \
  -a:1 -i:track1.wav -ea:100 \
  -a:2 -i:track2.wav -ea:80 \
  -a:1,2 -o:mixdown.wav

In this setup:

Because no device parameters (such as /dev/dsp or alsa) are present, Ecasound operates entirely in batch mode, processing audio frames sequentially without throttling.

Performance Influences on Mixdown Speed

Several technical factors determine how much faster than real-time a render will run:

Avoiding Accidental Real-Time Throttling

To ensure Ecasound does not fall back to real-time speeds:

  1. Avoid using real-time connection bridges (such as -i:jack or -o:alsa).
  2. Ensure external plugins invoked through LADSPA do not rely on external hardware timers or system clock synchronization.
  3. If running Ecasound within scripts or automated pipelines, run it directly without wrapper utilities that force real-time scheduling locks unless explicitly required by your operating environment.