On Tue, 12 Nov 2002, Mario Lang wrote:
So I'd need to connect a audio/controller output
to a controller input of another LADSPA plugin. Do
ladspa hosts like ecasound support this? Or am I
taking a completely wrong route here and it should
be done differently?
A bit complicated, but possible:
ecasound -b:128 -f:16,2,44100 \
-a:generator -i null -o null -el:analogueOsc,1,5,0.5,0.5 -eS:1 \
-a:target -i foo.wav -o alsa -el:pitchScale,1.0 -ksv:1,0.5,2,1,1 -c
- analogueOsc generates audio data (5Hz sine wave, warmth=0.5,
instability=0.5) to the otherwise silent 'generator' chain
- -eS:1 stores the passing audio data to an audio stamp (ie. allows
other parts of the network to access the audio data it sees)
- chain 'target' reads from foo.wav, applies the pitchScale LADSPA plugin
and writes the processed data to the default ALSA pcm output
- -ksv converts the audio data from stamp 1 (-eS:1, ie. the analogueOsc
output) into control data, scales the value to range [0.5,2.0], and
uses the resulting value to control the pitchScale coefficient
- the audio->control conversion is done by calculating RMS-volume for
each 128 (-b:128) sample block which is then used to update the
LADSPA plugin parameter value
Of course, it's possible to use any audio input source (files,
real-time inputs, LADSPA plugins, effect presets, etc) in
the 'generator' chain.
PS Ecasound has had this functionality since 1.9dev1 (Feb/2001),
so for once (!) you don't have to get the latest CVS version
to try this out. ;)
--
http://www.eca.cx
Audio software for Linux!