Nigel, You wordpress blog was crucial to understand how to implement a band limited oscillator. I confess there were some small details I couldn’t figure out by that time and then moved on.
Right now I have a really complete synthesiser engine and I haven’t changed or improved the oscillators section since then. Question: How should I calculate the minimum table length size to have no artefacts on a LFO? To build the oscillators tables I’m using that multi table technic you describe on your waveforms series posts where maxHarms is: int maxHarms = 44100.f / (3.0 * BASE_FREQ) + 0.5; Is this an heuristic? For the LFO tables I have only one table and the maxHarms is SAMPLE_RATE/2 And YES Alan, I’m using a interpolation algorithm but currently only on core Delay unit. No interpolation on the oscillators unit right now. I’m using the cubic hermit and it definitely contributes for a better sound. Nuno Santos Founder / CEO / CTO www.imaginando.pt +351 91 621 69 62 > On 11 Sep 2015, at 17:39, Nigel Redmon <earle...@earlevel.com> wrote: > > Hi Nuno, > > First, can I suggest that you take a look at my series on wavetable > oscillators? It covers some of the questions you have, and in particular goes > into detail about table length. > > Well, this is annoying, I think an automated WordPress update killed my site, > I need to look into it. But normally, go to earlevel.com > <http://earlevel.com/> and click the right-column topics for oscillators and > the series will come up. But you can get the gist of it from my video: > > https://youtu.be/k81hoZODOP0 > > Note that linear interpolation would help your low frequency oscillator > issue, and help your oscillator at high frequencies too. 2048 is a good > minimum table length for 20 Hz and up, so you’re in the right ballpark. > (Longer if you aren’t using interpolation between samples, and longer to get > sharp edges for LFO—for instance, a low frequency sawtooth won’t have a crisp > “tick tick tick”, but a more muffled one, at 1 Hz if your table is only 2048.) > > Nigel > > >> On Sep 11, 2015, at 8:13 AM, Nuno Santos <nunosan...@imaginando.pt >> <mailto:nunosan...@imaginando.pt>> wrote: >> >> Hi, >> >> Curiosity, by sinc do you mean sin function? >> >> Before anything: I’m a newbie. If I say something stupid don’t throw fire at >> me, please! :) >> >> During this last year I have been developing a synthesizer. My lookup table >> hadn’t more than 2048 samples. The sounds coming out from the oscillators >> was alright. >> >> When I got to develop a chorus, I was using the very same table for the lfo >> oscillators. The modulation was causing artifacts. It took me a while to >> understand that the problem was being caused by the lack of resolution of my >> tables. I ended up with a table 441000 length, for a 44100 sample rate. The >> artifacts were gone! My conclusion was that the raw steps were causing >> audible artifacts and increasing the resolution was the solution. >> >> I haven’t tried to find the lowest point of resolution that doesn’t cause >> artifacts. I was so tired of trying to solve the artifacts that I have only >> remember this problem when I saw this question from Victor. >> >> For the oscillators table I have simply doubled the initial value and now >> i’m using 4096. >> >> What do you guys think of this? >> >> Thanks, >> >> Regards, >> >> Nuno >> >>> On 10/09/2015, at 20:15, Victor Lazzarini <victor.lazzar...@nuim.ie >>> <mailto:victor.lazzar...@nuim.ie>> wrote: >>> >>> Is there much to gain in going above a 1024 window, when doing sinc >>> interpolation (for table lookup applications)? >>> >>> (simple question; no intention of starting flame wars; not asking about any >>> other method, either ;) ) >>> >>> Victor Lazzarini >>> Dean of Arts, Celtic Studies, and Philosophy >>> Maynooth University >>> Ireland >>> _______________________________________________ >>> dupswapdrop: music-dsp mailing list >>> music-dsp@music.columbia.edu <mailto:music-dsp@music.columbia.edu> >>> https://lists.columbia.edu/mailman/listinfo/music-dsp >> >> >> _______________________________________________ >> dupswapdrop: music-dsp mailing list >> music-dsp@music.columbia.edu <mailto: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
_______________________________________________ dupswapdrop: music-dsp mailing list music-dsp@music.columbia.edu https://lists.columbia.edu/mailman/listinfo/music-dsp