Category Archives: Wavetable Oscillators

Further thoughts on wave table oscillators

I see regular questions about wave table oscillators in various forums. While the process is straight forward, I sympathize that it’s not so simple to figure out what’s important if you really want to understand how it works. For instance, … Continue reading

Posted in Digital Audio, Oscillators, Wavetable Oscillators | 12 Comments

WaveUtils updated

WaveUtils needed only a minor change for compatibility with the WaveTableOsc update—addWaveTable changes to AddWaveTable. But I added something new while I was at it. The original wave table articles advocated minimizing the number of tables necessary—one per octave—by allowing … Continue reading

Posted in Source Code, Wavetable Oscillators | 17 Comments

WaveTableOsc optimized

The wave table oscillator developed here in 2012 is pretty lightweight, but I never took a close look at optimization at the time. An efficient design is the number one optimization, and it already had that. I was curious how … Continue reading

Posted in Source Code, Wavetable Oscillators | 6 Comments

Wavetable signal to noise ratio

In our wavetable series, we discussed what size our wavetables needed to be in order to give us an appropriate number of harmonics. But since we interpolated between adjacent table entries, the table size also dictates the signal to noise … Continue reading

Posted in Digital Audio, Oscillators, Wavetable Oscillators | 2 Comments

Wavetable oscillator video

If you find this video helpful, let me know, and I’ll work more video demonstrations into articles.

Posted in Aliasing, Synthesizers, Video, Wavetable Oscillators | 6 Comments

Replicating wavetables

My WaveTableOsc object uses a series of wavetables that are copies of single-cycle waveforms pre-rendered at a progressively smaller bandwidth. By “replicating wavetables” I mean taking a full-bandwidth single cycle waveform, and using it to make a complete set of … Continue reading

Posted in Oscillators, Source Code, Wavetable Oscillators | 53 Comments

A wavetable oscillator—end notes

I wrote the wavetable oscillator code from scratch as I wrote this series of articles, using just the thought process I gave. Hence, no references to other articles on wavetable oscillators. The concept of a phase accumulator is fairly obvious; … Continue reading

Posted in Digital Audio, Oscillators, Wavetable Oscillators | 13 Comments

A wavetable oscillator—the code

The wavetable oscillator code follows the basic structure of most audio processing blocks, with three types of functions: at the start: initialization—create the oscillator and its wavetables as needed: control—change the oscillator frequency, and pulse width for PWM every sample: … Continue reading

Posted in Digital Audio, Oscillators, Source Code, Wavetable Oscillators | 27 Comments

A wavetable oscillator—Part 3

In Part 2, we looked at how to use subtables designed to cover one octave each, removing upper harmonics for each higher octave to avoid aliasing. Here’s a view of the nine wavetables for our sawtooth oscillator, with the starting … Continue reading

Posted in Digital Audio, Oscillators, Wavetable Oscillators | 10 Comments

A wavetable oscillator—Part 2

From Part 1, we have an oscillator. But we need to broaden it to allow scaling of harmonic content based on pitch so that we have all the harmonic content we need at the low frequency end, and, as we … Continue reading

Posted in Aliasing, Digital Audio, Oscillators, Wavetable Oscillators | 25 Comments