On Saturday 08 February 2003 13.17, Steve Harris wrote:
[...brachless clamp...]
Its not an instruction its just a bit of maths using
fabs().
Yes, of course! I keep forgetting that fabs() is an FPU operation. :-)
(Life's not that nice with ints on most CPUs...)
[...]
Besides, if
you have seriously heavy plugins in combination with
this "a few effects at a time" behavior, the host could probably
optimize this a bit without plugins explicitly supporting it. It
means the host has to test buffers and figure out a clean way of
activating and deactivating plugins without side effects, but if
the plugins, or whole sub nets of plugins can be disabled, it's
still a big win. ...and doesn't require any API support
whatsoever, apart from the (de)activation stuff, which is needed
anyway.
You still have unpredicatable CPU load, which makes it pretty
useless.
If you want to make sure you *cannot* overload the CPU with the
current net, just have the host test it by turning all silent buffers
into cleared non-silent buffers.
Varying CPU load is not a problem in RT systems, but non-determinism
is. They may look confusingly similar from a practical POV, but
they're different things.
//David Olofson - Programmer, Composer, Open Source Advocate
.- The Return of Audiality! --------------------------------.
| Free/Open Source Audio Engine for use in Games or Studio. |
| RT and off-line synth. Scripting. Sample accurate timing. |
`--------------------------->
http://olofson.net/audiality -'
---
http://olofson.net ---
http://www.reologica.se ---