On 13/02/15 11:19, Claude Heiland-Allen wrote:
On 13/02/15 10:32, Roman Haefeli wrote:
I'll do some tests later today (but if you want to get there first the
ramp is somewhere in "bl-gen-abs~.pd", perhaps try making it 1 all the
way to SR/2).
2 weeks later, I finally got around to it...
I tried adjusting the filter ramp, it only made things worse (more
aliasing). So it's still the same as it was.
There's also an offset in the index generation, [-~ 1]
somewhere after the [log~ 2] in "bl-tabread4~.pd", changing this to [-~
0.5] or even [-~ 0] should brighten the sound but risks audible aliasing.
In fact the offset was too high already - I added a spectrum view, there
were (small, but visible) peaks moving to the right when the frequency
of the oscillator was moving to the left. I changed the offset to [-~
1.5] and the problem seems gone, at least when using [bl-tabread4c~].
The repository now has a [tabread4c~] abstraction using 4x [tabread~]
and some maths (still vanilla core, no [expr~] even), and a
[bl-tabread4c~] that uses it (same as [bl-tabread4~] except for much
nicer sounding interpolation and presumably somewhat higher CPU usage).
Perhaps you just need to copy a larger table region
I increased the size of the source waveform table in the example, now
copying shouldn't reduce harmonics (as the largest table is the same size).
Claude
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.
--
http://mathr.co.uk
_______________________________________________
[email protected] mailing list
UNSUBSCRIBE and account-management ->
http://lists.puredata.info/listinfo/pd-list