Subject: [linux-audio-dev] Plugin design decisions
From: Steve Harris (S.W.Harris_AT_ecs.soton.ac.uk)
Date: Wed Jan 16 2002 - 17:11:31 EET
I've hacked together a low(-ish) latency convolver for LADSPA. The are
some unusual design decisions that I'm not sure how to resolve though.
It currently runs a 3ms latency, which is good for a convolver, but lousy
comapred to a filter.
I can cut this down to 0 or 1.5ms (depending on the host's block size,
<256 samples its 1.5, >=256 its 0), but only if all the block are 2^n long. If
the're odd sizes you get clicks. This seems too awkward, ladspa make no
guarantees about block size.
Also I can halve the latency by doubling the CPU cost. Its not *too*
expensive at the moment (about the same as my retro flanger), and as the
quality won't go up that seems like a high price too.
Existing restrictions are that the inpulses are limited to 1800 odd
samples and it will only run properly at 44k1, but I don't plan to fix
that in a plugin. Full on, dynamicly loaded convolution with variable
latency is more of a jack thing, and brutefir is much better for high
latency, big convolutions.
You can try it from
http://plugin.org.uk/snapshots/swh-plugins-2002-01-16.tar.gz or
http://plugin.org.uk/ladspa-swh/imp_1199.so (if you really like the
bleeding edge!) but theres only three impulses in there at the moment, the
delta function, my flat and a marshal stack simulator. Youl need fftw
installed of course.
Lastly, if anyone has any short impulses they think people might appreciate,
please send them to me.
- Steve
This archive was generated by hypermail 2b28 : Wed Jan 16 2002 - 17:03:29 EET