You could use FFT where you can also make the waves symmetric
which prevents phase cancellations when you blend waves.
Am 29.06.2018 um 16:19 schrieb alexandre niger:
Hello everyone,
I just joined the list in order to find help in making a wavetable
synth. This synth would do both morphing and frequency wavetables.
Morphing is a way to play different waveforms over time and so to get
an additional sound dimension. Frequency wavetables are used to avoid
aliasing by filtering harmonics the higher the frequency go. I started
with the frequency wavetables and then I will do the morphing between
different waveforms.
As an intern at Rebel Technology, I started making wavetables patches
from earlevel articles. In those patches, common waveforms are
generated inside the code (tri, square, saw). Now I want to generate
some more complex waveforms from an editor called WaveEdit (free).
They come as 256 samples single cycle .wav files. Then I change them
into static data in a header file. Once I have this, I can start with
frequency wavetables. The key point of frequency wavetables is the
filtering. I have to filter enough harmonics so the aliased
frequencies do not come back under 18KHz (audiable range). But I must
not filter too much if I don't want to get gain loss.
At the moment I managed to make a 3550 taps FIR to filter every octave
wavetables. Unfortunately, with complex harmonic rich waveforms, I
still have audiable aliasing from 2kHz and gain/amplitude difference
when wavetables cross.
So now I am wondering:
About aliasing, should I cascade two FIR instead of increasing the taps?
That could be a solution if the stop band is not attenuated enough.
According to octave fir1, stop band attenuation is 50dB to 70dB.
About gain loss, will "harmonic rich signal" always sound lower when
filtered even if gain is the same?
I haven't normalize wavetables yet. I might have my answer afterwards.
You can have a look at the patch code but you won't be able to try it
if you don't get Rebel Technology Owl files.
https://github.com/alexniger/OLWpatches-RebelTech/blob/master/WTExtWavePatch.hpp
All other links are in the readme.
Best,
Alex
_______________________________________________
dupswapdrop: music-dsp mailing list
music-dsp@music.columbia.edu
https://lists.columbia.edu/mailman/listinfo/music-dsp
_______________________________________________
dupswapdrop: music-dsp mailing list
music-dsp@music.columbia.edu
https://lists.columbia.edu/mailman/listinfo/music-dsp