Re: [linux-audio-dev] LADSPA Specs ?

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

Subject: Re: [linux-audio-dev] LADSPA Specs ?
From: Richard Guenther (rguenth_AT_tat.physik.uni-tuebingen.de)
Date: Mon May 13 2002 - 23:39:32 EEST


On Sun, May 12, 2002 at 06:06:32PM -0400, Paul Davis wrote:
> >> I certainly agree that envelope control can be implemented by the host
> >> passing dynamically changing parameters to the plugin. I have already
> >> given a lot of thought on that. Consider the situation of a volume
> >> adjustment plugin with host-controlled parameter as the envelope.
> >> Suppose each buffer size is 128 samples, which is reasonably small for
> >> dynamic parameter. When we want to do a fade-out, the host sends the
> >> buffer to the volume adjustment plugin, specifying a decreasing,
> >> negative gain each time. The problem is, for every 128 samples, there is
> >> a leap of the control parameter, resulting in audiable steps of the
> >> volume. Depending on the amount of parameter changes, this can be quite
> [ ...]
> >The easiest solution to this kind of problem (parameter change faster than
> >nr. of run() calls) is to make the parameter (here: the envelope) another
> >audio input stream - this way you get 1:1 parameter:sample mapping.
>
> We discussed this about 2 months ago (or less). The consensus appeared
> to me to be that its the responsibility of a *plugin* to interpolate
> in the most appropriate fashion whenever the value of a control port
> changes. The host *cannot* know the best way to do this without a
> ridiculous amount of information being supplied by the the plugin, and
> the code is the same in either case. So, the host can choose its own
> level of resolution for automated parameters - for example, it can
> choose to subdivide its own "natural" blocksize into smaller chunks
> for calling process() with - and then the plugin finishes off by some
> parameter-specific interpolation.
>
> Does this need to be discussed again? Does anyone disagree with this
> "annotation" to the API?
>
> >host can be used to feed generated waves to such a port quite easily [for
> >GLAME we of course use another plugin for this wave generation, but that
> >again is not possible with LADSPA].
>
> Why not?

Because you cannot have source/sink plugins with LADSPA? Only the host
can do those.

Richard.

-- 
--
Richard Guenther <richard.guenther_AT_uni-tuebingen.de>
WWW: http://www.tat.physik.uni-tuebingen.de/~rguenth/
The GLAME Project: http://www.glame.de/


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

This archive was generated by hypermail 2b28 : Tue May 14 2002 - 00:16:06 EEST