Subject: Re: [ecasound] Chorus, flanger, phaser
From: Kai Vehmanen (email@example.com)
Date: Thu May 04 2000 - 19:42:37 EEST
On Wed, 3 May 2000, Remco Poelstra wrote:
> Well, I want to develop some new effects, especially to calculated 3d
> sound, but I don't like C++ much. So I thought, Pascal is also object
> oriented (AFIAK) and other people would be able to use the effects as
> well, wenn I would program them in ecasound. I'll see what I'll do with
> it,and I'll take a better look at the LAD website, since I couldn't find
> that it's also possible to develop effects, without knowing C++.
Hmm, combining modules written in different OO-languages is a bit
difficult (you need CORBA, COM, etc). But there are alternatives:
Probably the easiest way is to write native effects. You don't necessarily
have to know much about C++, experience with C should be enough (you can
use C-code for the actual algorithm). Just copy-and-paste an existing
ecasound effect class, rename it and add the necessary the necessary
functions (process, init, set_parameter, get_parameter, construct,
destruct and a few others). Take a look at libecasound/include/audiofx*.h
and libecasound/src/audiofx*.cpp ... quite simple, isn't it? :)
Another possibility is to use LADSPA. Quoting David Olofson "LADSPA (is a)
simple, low level, VST 1.0-like plugin API. There are input and output
ports for audio (a buffer per run() call) and control data (a value per
run() call)." The whole LADSPA API is in a single C-header file, ladspa.h.
You'll find more info about it from
http://www.muse.demon.co.uk/ladspa.html ... Currently only ecasound and
gdam support it, but more will come. I'm quite sure of this, because the
API was developed on the linux-audio-dev mailing list, so it's not
a one man project.
-- Kai Vehmanen <firstname.lastname@example.org> ---------------- CS, University of Turku . . audio software for linux ... http://www.eca.cx . . armchair-tunes mp3/wav/ra .. http://www.wakkanet.fi/sculpcave .
-- To unsubscribe send message 'unsubscribe' in the body of the message to <email@example.com>.
This archive was generated by hypermail 2b28 : Thu May 04 2000 - 21:30:36 EEST