Re: [linux-audio-user] Need single-input, eight processed-output app

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: Re: [linux-audio-user] Need single-input, eight processed-output app
From: Eric Dantan Rzewnicki (rzewnickie_AT_rfa.org)
Date: Mon Oct 11 2004 - 18:32:19 EEST


On Sat, Oct 09, 2004 at 12:57:37PM -0700, Robert Hamilton wrote:
> Folks,
> I'm trying to find an application that will allow me to break up a
> single-input audio signal into eight to ten separately bandpass-filtered
> outputs. I need to do this in real-time (low latency). It would also be
> nice to be able to perform other processes on each output, such as
> limiting, clipping or compressing. Preferably the application would also
> work with the "Jack Audio Connection Kit." I know it's a tall order.
> I'm running the RedHat 9, Planet CCRMA distribution.
> I've been searching for something for some time, but haven't found
> anything yet that quite fills the bill. So, I've come to the experts! Any
> suggestions?

As Dave already suggested, ecasound can do this quite well. A
commandline might look something like this:

ecasound -a:1,2,3,4,5,6,7,8 -i:jack_alsa \
         -a:1 -o:band1.wav \
         -a:2 -o:band2.wav \
         -a:3 -o:band3.wav \
         -a:4 -o:band4.wav \
         -a:5 -o:band5.wav \
         -a:6 -o:band6.wav \
         -a:7 -o:band7.wav \
         -a:8 -o:band8.wav \
         -a:1 -efl:<cutoff-freq> \
         -a:2 -efb:<center>,<width> \
         -a:3 -efb:<center>,<width> \
         -a:4 -efb:<center>,<width> \
         -a:5 -efb:<center>,<width> \
         -a:6 -efb:<center>,<width> \
         -a:7 -efb:<center>,<width> \
         -a:8 -efh:<cutoff-freq>

-create 8 chains, 1-8, with jack used as input for each.

-assign output individually for each of the eight chains to its own
 file. These could be output to jack instead if desired.

-add a filter to each chain: -efl is a lowpass filer, -efb a bandpass
 and -efh a high pass.

Any additional effects per chain would be tacked on to the end of the
line for each filter band. If you so desire the parameters of the
effects can be controlled via midi CC, arbitrary envelopes or
oscillators. If you are not pleased with ecasound's builtin filters you
can easily use any LADSPA filter instead. If the commandline becomes too
cumbersome the settup can be stored and edited in a .ecs (ecasound chain
settup) file. There is also an interactive ncurses console interface
based on the ECI (ecasound control interface). ECI itself can be
scripted from C, C++, python, perl, ruby, php and emacs-lisp.

The ecasound documentation is included with the package and available
online here:

http://www.wakkanet.fi/~kaiv/ecasound/Documentation/

Hope that helps,
Eric Rz.


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Mon Oct 11 2004 - 18:36:20 EEST