Aliased wavetables - a problem?
- KVRist
- Topic Starter
- 281 posts since 10 Apr, 2020
I understand aliasing is in general an undesirable effect. For example using a "trivial" sawtooth oscillator without BLIT / BLEP or bandlimiting can produce frequencies which are not part of the harmonic series of the base note being played. These aliased freqs could even be below the fundamental or be DC.
However, here's an example I'm not so sure of: Let's say I take a wavetable in my synth: And apply some non-linear processing in time domain, in this example a hard clipper Now I do FFT to get this shaped wavetable into the spectral domain again. From here I operate like a normal bandlimited wavetable oscillator again: Bandlimit the waveform, i.e. zero out bins which would alias at the current freq, do iFFT and play this waveform back in my oscillators.
Now here's my point: Whatever the content of the spectral representation of the waveform is at this point, all it can ever contain are the fundamental + overtones, since it's basically a Fourier row to the wavetable (DFT of a periodic signal). For all we know, this table could have been generated in an additive / spectral bin editor by the user. So... what's the harm?
I see that the result should not be the exact same as doing the clipper in true analog domain and then recording it through an ADC and antialiasing filter pipeline. However the result is also not aliased like I described in the first paragraph, since albeit aliased, it can contain only "musical" overtones. This could for example never produce a DC freq.
So is this a kind of "musical aliasing"? Is it a valid approach? What am I missing? After all I'm doing waveshaping without ever touching an oversampler or anything. Maybe the harm comes from the fact that I still don't know how the spectrum folds down into the musical bins and hence leaves me without control over what's happening exactly?
However, here's an example I'm not so sure of: Let's say I take a wavetable in my synth: And apply some non-linear processing in time domain, in this example a hard clipper Now I do FFT to get this shaped wavetable into the spectral domain again. From here I operate like a normal bandlimited wavetable oscillator again: Bandlimit the waveform, i.e. zero out bins which would alias at the current freq, do iFFT and play this waveform back in my oscillators.
Now here's my point: Whatever the content of the spectral representation of the waveform is at this point, all it can ever contain are the fundamental + overtones, since it's basically a Fourier row to the wavetable (DFT of a periodic signal). For all we know, this table could have been generated in an additive / spectral bin editor by the user. So... what's the harm?
I see that the result should not be the exact same as doing the clipper in true analog domain and then recording it through an ADC and antialiasing filter pipeline. However the result is also not aliased like I described in the first paragraph, since albeit aliased, it can contain only "musical" overtones. This could for example never produce a DC freq.
So is this a kind of "musical aliasing"? Is it a valid approach? What am I missing? After all I'm doing waveshaping without ever touching an oversampler or anything. Maybe the harm comes from the fact that I still don't know how the spectrum folds down into the musical bins and hence leaves me without control over what's happening exactly?
You do not have the required permissions to view the files attached to this post.
- KVRer
- 17 posts since 29 Oct, 2014
This is no different than the problem with any wavetables. That harmonic content is baked into the table, and are harmonic until they alias. You would use your table to resample to different pitches, low notes will be fine, and high notes will alias more. My experiments were to generate a tone at 4-5khz (realistically the highest fundeental you'd need) and see if the aliasing is acceptable at that frequency.
- KVRAF
- 7899 posts since 12 Feb, 2006 from Helsinki, Finland
It can produce DC if either the waveform or the clipper isn't symmetrical, but otherwise you got it right: the results aren't quite the same as clipping in analog domain and band-limiting afterwards.. but any aliasing falls on top of the regular harmonics (or DC).TheWaveWarden wrote: ↑Tue Feb 06, 2024 1:51 pm I see that the result should not be the exact same as doing the clipper in true analog domain and then recording it through an ADC and antialiasing filter pipeline. However the result is also not aliased like I described in the first paragraph, since albeit aliased, it can contain only "musical" overtones. This could for example never produce a DC freq.
As Z1202 pointed out, whether this is "valid" is entirely a matter of taste. If you specifically want the harmonic series produced by an analog clipper, then you'd need something more complicated. If you don't care about that, then really anything you do with the contents of a wavetable will only ever result in harmonic partials (or DC), because that's all the wavetable can store and if the goal is simply to generate "sonically interesting" results, then go nuts.