Guide to Ecasound Chainsetup Configuration

This article provides an overview of the chainsetup architecture in Ecasound, detailing the mandatory components and structural rules required to establish a valid, fully functioning audio processing environment. Readers will learn how signal routing paths, inputs, and outputs interact within a chainsetup to form a complete, executable configuration for multitrack recording, processing, and playback.

In Ecasound, a chainsetup serves as the central framework for defining an entire audio processing session. It encapsulates the routing configuration, audio formats, input/output assignments, and any signal-processing effects applied to the audio streams. For a chainsetup to be considered complete and ready for execution, it must satisfy a precise set of structural requirements within the Ecasound configuration framework.

1. At Least One Active Chain

A chain represents a single signal path through which audio flows. Within a chainsetup, you must define at least one chain (commonly named default or designated by an explicit name such as chain1). Chains serve as the intermediate conduits that bind inputs to outputs and host digital signal processing (DSP) operators, filters, and controllers.

2. At Least One Audio Input

Every functional chainsetup requires an audio source assigned to one or more chains. An input can be:

An input must be explicitly attached to at least one valid chain to direct where its incoming audio data should flow.

3. At Least One Audio Output

Similar to inputs, a complete chainsetup requires a designated destination for processed audio. Valid outputs match the types supported for inputs, including audio files, hardware sound cards, JACK ports, or null endpoints. Audio outputs must also be mapped to at least one chain that receives processed signal data.

4. Unbroken Signal Routing

A valid chainsetup requires an unbroken signal pathway connecting inputs to outputs through the defined chains:

If an input is connected to a chain, but that chain does not terminate at an output, or if an output is connected to a chain with no corresponding input, the chainsetup is incomplete and Ecasound will either report an error or produce no audio output upon engine activation.

5. Compatible Audio Stream Properties

A complete configuration requires consistent or properly converted audio parameters across all interconnected elements. These parameters include:

While Ecasound provides internal resampling and format conversion capabilities, these parameters must resolve cleanly across the chains without conflicting constraints.

6. Optional Components (Operators and Controllers)

While not strictly required for a setup to be complete, a chainsetup often includes:

A chainsetup is formally complete when at least one audio input routes through at least one chain to at least one audio output with matched audio parameters, creating a runnable state that the Ecasound engine can initialize, buffer, and process.