1. A short summary of changes
Support for JACK and LADSPA 1.1 added, more intelligent runtime
parameter selection, ECI licence changed from GPL to LGPL,
new NetECI client API, ecasound emacs mode added, largefile
support, new resample, reverse and typeselect audio objects,
new peak amplitude chain operator and new utilities ecalength,
ecamonitor and ecasignalview.
2. What is ecasound?
Ecasound is a software package designed for multitrack audio
processing. It can be used for simple tasks like audio playback,
recording and format conversions, as well as for multitrack effect
processing, mixing, recording and signal recycling. Ecasound supports
a wide range of audio inputs, outputs and effect algorithms.
Effects and audio objects can be combined in various ways, and their
parameters can be controlled by operator objects like oscillators
and MIDI-CCs. A versatile console mode user-interface is included
in the package.
Ecasound is licensed under the GPL. The Ecasound Control Interface
(ECI) is licenced under the LGPL.
3. Changes since last release
Although over a year has passed since the last major stable
release, ecasound development work has not stopped. To put things
into perspective, a diff between 2.0.0 and 2.2.0 takes about
1.7MB of space. Considering the whole 2.2 codebase is just
over 2MB, this is quite a lot! In the future there will hopefully
be much more frequent releases. Here's a list of most notable
* Intelligent parameter configuration. Instead of one set of
default parameters, ecasound lets user specify different parameters
for three predefined profiles: real-time, real-time-low-latency and
non-real-time. When starting processing, ecasound will automatically
select and use most suitable profile for the given configuration.
Ecasound will not only consider the types of objects, but also the
runtime environment: whether it is possible to lock memory, to use
RT-scheduling and so on.
* The Ecasound Control Interface is now licensed under LGPL.
In addition, the ECI implementations are now standalone, and do
not require linking against libecasound and libkvutils. Only
thing needed to run ECI apps is to have a working ecasound
* JACK support added. This is a major new addition as it involved
making relatively large changes to the ecasound engine.
* Up-to-date support for ALSA-0.9 and LADSPA-1.1.
* Effect preset improvements. Support for parametrized presets
has been improved. For instance it's now possible to write
a wrapper effect preset for a complex ecasound effect
or LADSPA plugin, and only publish a subset of original
* The disk i/o buffering subsystem that was introduced
in ecasound 2.0 has been integrated more closely to
the ecasound engine leading to better performance and
* NetECI API. Ecasound now has a daemon mode that allows
multiple clients, using the NetECI protocol, to connect to
a running ecasound session. A proof-of-concept client,
ecamonitor, is included in the package. It can be used
to monitor ecasound session status from a separate console.
This is especially useful in combination with ecasound's
console mode user interface. The console interface can
be used for control and the NetECI monitor client for
getting real-time status information. In addition,
NetECI can be used with all ECI apps.
* Ecasound.el, an emacs ecasound mode and a Lisp ECI
* Largefile support for reading and writing audio files larger
* New audio object types: JACK, resample, reverse, typeselect.
* New chain operators: peak amplitude monitor
* Utilities: ecalength and ecamonitor added, ecasignalview
* New ECI implementations: Lisp, Perl and PHP (the last two
are not included in the main ecasound package)
Full list of changes is available at
4. Interface and configuration file changes
* Command line options: 2.2 is backward compatible with
2.0 releases, so old scripts and .ecs files should
continue to work. See ecasound(1) for more info.
* Ecasound Interactive Mode (EIAM): No changes to the commands
available in 2.0 releases. See ecasound-iam(1) for more
* Library interfaces: Major changes in all library interfaces.
Direct use of these libraries is no longer encouraged.
The ECI and NetECI APIs are preferred for developing new
applications on top of ecasound.
* Ecasound Control Interface (ECI): No interface changes.
* The ~/.ecasoundrc config file is no longer used. The
new location is ~/.ecasound/ecasoundrc. As there's now
a separate global configuration file, it is no longer
necessary to duplicate all config variables in the
user config files. See ecasoundrc(5) for further info.
5. Links and files
Source and binary packages:
Distributions with maintained ecasound support:
Agnula - http://www.agnula.org
Debian - http://packages.debian.org/stable/sound/ecasound.html
DeMuDi - http://www.demudi.org
FreeBSD - http://www.freebsd.org/ports/audio.html
Gentoo Linux - http://www.gentoo.org
PLD Linux - http://www.pld.org.pl
PlanetCCRMA - http://www-ccrma.stanford.edu/planetccrma
SuSE Linux - http://www.suse.de/en
Note! Distributors do not necessarily provide packages for
the latest ecasound version.
Audio software for Linux!