On Wed, 5 Feb 2003, Steve Harris wrote:
On Wed, Feb 05, 2003 at 10:31:06 +0200, Sami P Perttu
wrote:
The more I'm thinking about this the more
biased I am toward just one
process() that replaces values. And an in-place-is-okay hint. No gains or
DRY and WET controls. The host can probably reserve some host-global
buffers for mixing, no? The cache impact wouldn't be big in that case.
Somebody should do some actual measurements to find out.
You still need WET and DRY, even if you have mixing.
True... sorry, I have confused DRY with the value (not control) that tells
what to multiply previous output buffer contents with. The host cannot do
that if more than two output buffers are the same. DRY, on the other
hand, is supposed to be the input gain. WET and DRY actually have nothing
to do with mixing in this context - wouldn't the user rather provide them?
A complete mix-in-place process() would need that one value, let's call it
PRE, per output buffer: what to multiply previous output buffer values
with before adding plugin's own output. PRE would normally be 0 or 1.
Mixing as a musical control is another matter.
I'm still
having problems understanding why logarithmic frequency is
better than linear. Doesn't it violate the principle of keeping plugins as
simple as possible? Most plugins need linear frequency. How is the
conversion done? Well, maybe there could be a control iterator that
provides for it. Please tell me about your plan.
Linear pitch (logartihmic frequency) is just what people expect. When you
modulte the cutoff of a filter (for example) you expect it to modulate
logarithmicly.
That is no answer. What do people's expectations have to do with it? We
are discussing a plugin API here. Or are you saying that logarithmic
interpolation gives better sounding results than piece-wise linear
approximation of the same with a segment length of, say, 64 samples?
--
Sami Perttu "Flower chase the sunshine"
Sami.Perttu(a)hiit.fi
http://www.cs.helsinki.fi/u/perttu