
Recent Posts
 Floating point denormals
 Floating point caveats
 Wavetable signal to noise ratio
 Sampling theory, the best explanation you’ve ever heard—End notes
 Sampling theory, the best explanation you’ve ever heard—Part 3
 Sampling theory, the best explanation you’ve ever heard—Part 2
 Sampling theory, the best explanation you’ve ever heard—Part 1
 Sampling theory, the best explanation you’ve ever heard—Prologue
Archives
 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 (56)
 Aliasing (9)
 Convolution (3)
 Dither (7)
 Filters (23)
 DC Blocker (1)
 FIR Filters (7)
 IIR Filters (17)
 Biquads (11)
 Fourier (3)
 FFT (3)
 Impulse Response (5)
 Jitter (2)
 Oscillators (9)
 Phase (2)
 Reverb (2)
 Sample Rate Conversion (10)
 Sampling Theory (6)
 Effects (1)
 Envelope Generators (5)
 Math (2)
 MIDI (2)
 Source Code (7)
 Synthesizers (9)
 Uncategorized (6)
 Video (4)
 Widgets (12)
 Digital Audio (56)
Category Archives: Widgets
Filter frequency response grapher
Here’s a tool that plots frequency response from filter coefficients. Hz linearlog 10log 2 Plot auto40 dB30 dB20 dB10 dB0 dB10 dB20 dB30 dB40 dB Max 60 dB80 dB100 dB120 dB140 dB160 dB180 dB Range a coefficients (zeros) b coefficients … Continue reading →
Cascading filters
Sometimes we’d like to cascade biquads to get a higher filter order. This calculator gives the Q values for each filter to achieve Butterworth response for lowpass and highpass filters. Order: 234567891011121314151617181920 Q values: You can calculate coefficients for all biquad … Continue reading →
PoleZero placement v2
Pair Pole mag Pole angle Pair Zero mag Zero angle Sample rate (Hz) linearlog Plot A new polezero calculator An JavaScript remake of the old Javabased polezero placement applet—visit that page for tips on polezero locations for standard biquads. The … Continue reading →
Biquad calculator v2
Type:lowpasshighpassbandpassnotchpeaklow shelfhigh shelfonepole lponepole hp Plot:linearlog Sample rate (Hz) Fc (Hz) Q Gain (dB) Here’s an update of the biquad calculator. It adds onepole highpass and lowpass filters, and frequency, Q, and gain sliders. The sliders cover the range of … Continue reading →
Envelope generators—ADSR widget
Attack Decay Sustain Release Attack Curve Decay/Release Curve Plot:linearlog This is the widget I used in making the ADSR video. It’s a JavaScript recreation of my C++ source code.
A biquad calculator
Something useful: a biquad filter coefficient calculator… Continue reading →
A closer look at upsampling filters
Interpolation type:NoneZeroorder holdLinearSinc 1Sinc 2Sinc 3 Show impulse response Sweep! In this demonstration, we generate a sine wave sweep from low in the audio band to near the Nyquist Frequency, which is half the sample rate. You can view it … Continue reading →
Posted in Aliasing, Digital Audio, Filters, FIR Filters, Impulse Response, Sample Rate Conversion, Widgets

Leave a comment
Building a windowed sinc filter
As promised, here’s our windowed sinc calculator for building a 2x oversampling filter: Factor Length Rejection Gain Notes: Use the Tab or Enter keys to effect changes (most browsers), or press Calculate. The frequency axis is in multiples of the … Continue reading →
Posted in Digital Audio, Filters, FIR Filters, Impulse Response, Sample Rate Conversion, Widgets

9 Comments
PoleZero placement
Use the new, improved polezero calculator—but be sure to read the “Experiments with standard biquads” section below for tips on placing poles and zeros for standard filters. Here’s a Java applet that illustrates polezero placement. It lets you design a … Continue reading →