Ecasound LADSPA Port Diagnostics and Verification
This guide outlines the built-in diagnostic features and command-line procedures within Ecasound used to inspect LADSPA plugins, verify audio and control port compatibility, and prevent runtime failures before audio processing begins.
The Ecasound Interactive Mode (ECI) Diagnostics
Ecasound includes an interactive command-line interface
(ecasound -c) that allows real-time inspection of chains,
operators, and plugin configurations prior to launching the processing
engine.
Within this interface, several commands inspect plugin availability and metadata:
ladspa-list: Scans theLADSPA_PATHenvironment variable and returns a full index of discovered plugins, their unique numeric IDs, and their label strings.ladspa-describe <id|label>: Prints detailed port information for a designated plugin. This reveals the total number of audio input ports, audio output ports, control inputs, and control outputs, along with their default values and valid bounds.
Using these commands confirms whether a plugin matches the channel count of your target chain setup before connecting inputs or starting playback.
Static Port Topology Verification
Ecasound automatically checks LADSPA port requirements when compiling
a chain setup (cs). It does not dynamically adapt mono
plugins to stereo chains unless explicitly configured.
When an operator is added using the -el:plugin_name
syntax, Ecasound cross-references the plugin's descriptor against the
chain's channel count:
- Audio Port Matching: If a chain is configured for stereo processing (2 channels) but the selected LADSPA plugin exposes only a single audio input and output port, Ecasound flags a topology mismatch during the setup phase.
- Control Port Validation: Parameters passed via the
-eloption are matched sequentially against the plugin’s control input ports. If an incorrect number of parameters is supplied, Ecasound halts configuration parsing.
Debug and Verbose Logging Flags
To diagnose port discovery and binding issues before initiating an audio run, Ecasound provides diagnostic logging flags:
-d:1through-d:4(Debug Level): Controls verbosity. Runningecasound -d:2or higher outputs detailed engine initialization data, including LADSPA subsystem initialization, library loading, and individual port mapping.-D(Debug Output): Prints internal state transitions to standard error. If a LADSPA shared library fails to load due to missing symbols or invalid port descriptors, the-Dflag exposes the specific system-level dynamic linker errors.
Chain Setup Dry-Run
(cs-status)
To verify full system readiness without streaming audio:
- Launch Ecasound in interactive mode with your setup script or
arguments:
ecasound -c -a:1 -i:input.wav -o:output.wav -el:plugin_label,params - Run
cs-statusto inspect the chain setup. - Check the operator list to verify that Ecasound successfully attached the LADSPA operator to the audio chain without port binding warnings.
- Issue
cs-connectto test stream and port connectivity without triggering engine processing (start). If port counts do not align, Ecasound rejects connection and outputs the mismatch directly to the console.