Hey
Very nice. Having band-limitation for free waveforms is awesome. I still have to dig into it, especially in order to understand how the filtering is done.
My two cents:
initially designed to avoid aliasing in scaled images? It seems to me that they are too 'tight' for audio. With higher notes the perceived volume is reduced. Without any proof, I suspect it cuts off more of the harmonics than actually necessary.
or also in CPU usage? Obviously, you need more CPU time to calculate the tables, but once they're calculated, does it require more CPU to have more tables? I'd like to have a version with many more tables (so that one could get lower notes without the higher harmonics being cut-off).
Roman
On Thu, 2015-02-12 at 16:06 +0000, Claude Heiland-Allen wrote:
Hi all,
Today I implemented bandlimited wavetables in Pd vanilla using the idea behind mipmapping in OpenGL (ie, generate many filtered and downsampled versions of a source, use the most appropriate version(s) by a function of the derivative of the lookup index).
More info and full source (quick start tutorial: bl-example.pd):
https://gitorious.org/maximus/pd-bl
License: same as Pd vanilla.
Advantages over other implementations:
- Can generate wavetables from any waveform stored in a table.
Disadvantages:
- The higher harmonics are reduced compared to an optimal method.
Claude