-
Recent Posts
Archives
- January 2023
- April 2022
- November 2021
- September 2021
- April 2021
- October 2020
- January 2020
- April 2019
- September 2018
- August 2017
- May 2017
- January 2017
- December 2016
- September 2016
- February 2016
- September 2015
- January 2015
- March 2014
- January 2014
- October 2013
- June 2013
- May 2013
- April 2013
- March 2013
- February 2013
- December 2012
- November 2012
- May 2012
- March 2012
- January 2011
- December 2010
- November 2010
- July 2007
- March 2003
- February 2003
- August 2002
- January 1997
- November 1996
- October 1996
- August 1996
- July 1996
Categories
- Digital Audio (67)
- Aliasing (9)
- Convolution (3)
- Dither (7)
- Filters (24)
- DC Blocker (1)
- FIR Filters (7)
- IIR Filters (18)
- Biquads (12)
- Fourier (3)
- FFT (3)
- Fun Facts (3)
- Impulse Response (5)
- Jitter (2)
- Oscillators (12)
- Phase (2)
- Reverb (2)
- Sample Rate Conversion (10)
- Sampling Theory (6)
- Effects (1)
- Envelope Generators (5)
- Math (5)
- MIDI (2)
- Source Code (10)
- Synthesizers (9)
- Uncategorized (4)
- Video (7)
- Widgets (14)
- Digital Audio (67)
Author Archives: Nigel Redmon
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
8 Comments
How I write code
Next article I’ll post an update of our wave table oscillator, but first I’ll take the opportunity to discuss how I write code these days. Maybe it will help make sense of some of the choices in the code I … Continue reading
Posted in Source Code
19 Comments
Floating point denormals
There’s another issue with floating point hardware that can easily cause serious performance problems in DSP code. Fortunately, it’s also easy to guard against if you understand the issue. I covered this topic a few years ago in A note … Continue reading
Posted in Math
10 Comments
Floating point caveats
The equivalent of “When I was your age, we use to walk to school in the snow. Barefoot”, in DSP, is to say we used to do DSP in fixed point math. The fixed-point system could be made of integer … Continue reading
Posted in Math
9 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
Sampling theory, the best explanation you’ve ever heard—End notes
A few words before moving on to other topics… We’ve looked at why digital sample represent ideal impulses, and why any point between samples represents a value of zero. And, as a result, audio samples don’t represent the audio itself, … Continue reading
Sampling theory, the best explanation you’ve ever heard—Part 3
We look at what Pulse Amplitude Modulation added to our analog source audio. What did PAM add? Earlier, we noted that the PAM signal represents the the source signal plus some additional high frequency content that we need to remove … Continue reading
Sampling theory, the best explanation you’ve ever heard—Part 2
In this article, we explore the origins of sampling. Discrete time For many, discrete time and digital sampling are synonymous, because most people have little experience with discrete time analog. But perhaps you’ve used an old-style analog delay stompbox, with … Continue reading