[LAU] Sanity check needed: Fons's Auto Wah on 64-bit system and CPU usage?

fons at kokkinizita.net fons at kokkinizita.net
Thu Jan 14 13:08:26 EST 2010


On Thu, Jan 14, 2010 at 09:48:08AM -0800, Ken Restivo wrote:

> Fons' code is like a finely-crafted jewel, and it is written
> in a terse style that looks to me like hand-optimised ASM code
> (i.e., variable names that are more like register names:
> "_s1", "gy", "dx"), but I'm starting to understand it a little bit.

It's not ASM style, it's mathematical notation.
 
> It looks like he's windowing through the frames, and if the
> frame is > 80 bytes, he windows through it in 64-byte
> increments.

That's something you'll find in many of my plugins.
Its purpose is to normally have a block size of 64 frames,
but avoid a very short (e.g. one frame) final block when
'nframes' can take arbitrary values, as could happen when
parameters are automated and a host wants to update them
in the middle of a period.

while (nframes)
{
    k = (nframes < 80) ? nframes : 64;

    // Process k frames, 16 <= k <= 64

    nframes -= k;
}

With your Jack settings the result will normally be two
blocks of 64 frrames. Filter paramters are updated at
block rate, with linear interpolation in between.

Ciao,

-- 
FA



More information about the Linux-audio-user mailing list