Hi all,
many articles have been written about bandlimited waveform generation. But for various reasons I am not able to implement any solution to my synthesiser that are feasible. The synth allows blending smoothly between different shapes (http://codepen.io/andremichelle/full/8341731a1ff2bdc90be3cb88e6509358/). It also provides phase modulation (by LFO), frequency gliding, hard sync and parameter automation. The following I already understand: Functions other than a sinus have overtones that may overlap the Nyquist-frequency reflecting back into the audible spectrum. I tried the following to reduce the alias: Oversample (32x) and apply multiple BiQuad[4] filter (Cutoff at Nyquist or less), Oversample and down-sample with a Finite Impulse Response filter, use a Sync function window to be applied to each sample (sinc Fc/Fs), apply a FFT and sum up sin(x) up to the Nyquist. All those technics seem to be either static (FFT) or very costly or are not perfectly reducing the alias. The synthesiser runs online inside your browser (https://www.audiotool.com/product/device/pulverisateur/). So CPU time is crucial. Most articles are explaining how to create the usual suspects such as Sawtooth, Square and Triangle. The other articles are filled with complex math. I am not a complete dummy but most articles are really hard to follow and not pointing out the key ideas in plain english. A simple question remains: Is it possible to sample an arbitrary dynamic(changing over time) waveform function f(x) excluding frequencies over Nyquist? Any suggestions are highly appreciated! ~ André Michelle https://www.audiotool.com _______________________________________________ dupswapdrop: music-dsp mailing list music-dsp@music.columbia.edu https://lists.columbia.edu/mailman/listinfo/music-dsp