How to Create an Ecasound Band-Reject Filter

This guide explains how to construct an audio band-reject (notch) filter using native Ecasound operators. While Ecasound does not feature a single dedicated band-reject operator, you can build an effective band-reject filter natively by splitting the signal into two parallel chains—one running a lowpass filter and the other running a highpass filter—and summing their outputs. The sections below outline the signal architecture, provide the precise command syntax, and detail frequency configuration.

Native Signal Routing Concept

A band-reject filter attenuates frequencies within a specified range while leaving frequencies below and above that range intact. Native Ecasound processing includes:

To configure band rejection, split the audio stream across two independent chains (chain1 and chain2). Set the lowpass operator on chain1 to retain audio below the lower cutoff frequency, and set the highpass operator on chain2 to retain audio above the upper cutoff frequency. Both chains are then routed to the same output device or file, summing them to form the final notched signal.

Command-Line Syntax

Run the following command structure in your terminal:

ecasound -a:1,2 -i:input.wav \
         -a:1 -efl:800 \
         -a:2 -efh:2000 \
         -a:1,2 -o:output.wav

Parameter Breakdown

Interactive ECI Configuration

If configuring this via the Ecasound Control Interface (ECI) or inside an .ecs preset file, use the equivalent commands:

c-add chain_low
c-add chain_high

cs-set-audio-format s16_le,2,44100
ai-add input.wav
ao-add output.wav

c-select chain_low
cop-add -efl:800

c-select chain_high
cop-add -efh:2000

Frequency Calibration Considerations