1st Edition

Digital Audio Theory A Practical Guide

By Christopher L. Bennett Copyright 2021
    254 Pages 123 B/W Illustrations
    by Focal Press

    254 Pages 123 B/W Illustrations
    by Focal Press

    254 Pages 123 B/W Illustrations
    by Focal Press

    Also available as eBook on:

    Digital Audio Theory: A Practical Guide bridges the fundamental concepts and equations of digital audio with their real-world implementation in an accessible introduction, with dozens of programming examples and projects.

    Starting with digital audio conversion, then segueing into filtering, and finally real-time spectral processing, Digital Audio Theory introduces the uninitiated reader to signal processing principles and techniques used in audio effects and virtual instruments that are found in digital audio workstations. Every chapter includes programming snippets for the reader to hear, explore, and experiment with digital audio concepts. Practical projects challenge the reader, providing hands-on experience in designing real-time audio effects, building FIR and IIR filters, applying noise reduction and feedback control, measuring impulse responses, software synthesis, and much more.

    Music technologists, recording engineers, and students of these fields will welcome Bennett’s approach, which targets readers with a background in music, sound, and recording. This guide is suitable for all levels of knowledge in mathematics, signals and systems, and linear circuits. Code for the programming examples and accompanying videos made by the author can be found on the companion website, DigitalAudioTheory.com.

    1 Introduction

    1.1 Describing audio signals

    1.2 Digital audio basics

    1.3 Describing audio systems

    1.4 Further reading

    1.5 Challenges

    1.6 Project – audio playback

    2 Complex vectors and phasors

    2.1 Complex number representation and operations

    2.2 Complex conjugates

    2.3 Phasors

    2.4 Beat frequencies

    2.5 Challenges

    2.6 Project – AM and FM synthesis


    3 Sampling

    3.1 Phasor representation on the complex plane

    3.2 Nyquist frequency

    3.3 Time shift operators

    3.4 Sampling a continuous signal

    3.5 Jitter

    3.6 Challenges


    4 Aliasing and reconstruction

    4.1 Under-sampling

    4.2 Predicting the alias frequency

    4.3 Anti-aliasing filter

    4.4 Reconstruction

    4.5 Challenges

    4.6 Project – aliasing


    5 Quantization

    5.1 Quantization resolution

    5.2 Audio buffers

    5.3 Sample-and-hold circuit

    5.4 Quantization error (eq)

    5.5 Pulse code modulation

    5.6 Challenges


    6 Dither

    6.1 Signal-to-Error Ratio (SER)

    6.2 SER at low signal levels

    6.3 Applying dither

    6.4 Triangular PDF dither

    6.5 High-frequency dither

    6.6 Challenges

    6.7 Project – dither effects


    7 DSP basics

    7.1 Time-shift operators

    7.2 Time-reversal operator

    7.3 Time scaling

    7.4 Block diagrams

    7.5 Difference equations

    7.6 Canonical form

    7.7 Challenges

    7.8 Project – plucked string model


    8 FIR filters

    8.1 FIR filters by way of example

    8.2 Impulse response

    8.3 Convolution

    8.4 Cross-correlation

    8.5 FIR filter phase

    8.6 Designing FIR filters

    8.7 Challenges

    8.8 Project – FIR filters


    9 z-Domain

    9.1 Frequency response

    9.2 Magnitude response

    9.3 Comb filters

    9.4 z-Transform

    9.5 Pole/zero plots

    9.6 Filter phase response

    9.7 Group delay

    9.8 Challenges

    10 IIR filters

    10.1 General characteristics of IIR filters

    10.2 IIR filter transfer functions

    10.3 IIR filter stability

    10.4 Second-order resonators

    10.5 Biquadratic filters

    10.6 Proportional parametric EQ

    10.7 Forward-reverse filtering

    10.8 Challenges

    10.9 Project – resonator


    11 Impulse response measurements

    11.1 Noise reduction through averaging

    11.2 Capturing IRs with MLS

    11.3 Capturing IRs with ESS

    11.4 Challenges

    11.5 Project – room response measurements


    12 Discrete Fourier transform

    12.1 Discretizing a transfer function

    12.2 Sampling the frequency response

    12.3 The DFT and inverse discrete Fourier transform

    12.4 Twiddle factor

    12.5 Properties of the DFT

    12.6 Revisiting sampling in the frequency domain

    12.7 Frequency interpolation

    12.8 Challenges

    12.9 Project – spectral filtering

    13 Real-time spectral processing

    13.1 Filtering in the frequency domain

    13.2 Windowing

    13.3 Constant overlap and add

    13.4 Spectrograms

    13.5 Challenges

    13.6 Project – automatic feedback control

    14 Analog modeling

    14.1 Derivation of the z-transform

    14.2 Impulse invariance

    14.3 Bilinear transformation

    14.4 Frequency sampling

    14.5 Non-linear modeling with ESS

    14.6 Challenges



    Christopher L. Bennett is a Professor in the Music Engineering Technology program at the University of Miami, Frost School of Music. He conducts research, teaches, and publishes in the fields of digital audio, audio programming, transducers, acoustics, psychoacoustics, and medical acoustics.

    "Your background in music, sound, and recording makes you a power-user of digital audio signal processors. Wouldn’t you like to understand what’s going on inside those converters, delays, filters and more? Don’t you want to know what to listen for when it’s time to choose which one to use? And don’t you sort of want to create your own FX? Me too. There is the calculus and coding way into this, and then there is Christopher Bennett’s way in. If you want to understand digital audio theory – to have mastery of the theories and intuition about the possibilities – you don’t need an engineering degree, you need this book."

    Alex U. Case, Sound Recording Technology, University of Massachusetts Lowell, Past President of the Audio Engineering Society, and author of Sound FX: Unlocking the Creative Potential of Recording Studio Effects and Mix Smart: Pro Audio Tips for Your Multitrack Mix

    "This book is part of a fresh approach to the challenges that aspiring audio programmers face. Rather than serving as a reference manual, Bennett presents Digital Audio Theory as part of a journey, supplementing the reading material with over 30 video tutorials and code samples. It is essential reading for anyone trying to understand the fundamentals of signal processing. The explanations are clear and well thought out – easy enough for those with a casual math background to follow along, but challenging enough to introduce concepts that reach beyond algorithms covered by other books. Highly recommended!"

    Joshua Hodge, a.k.a. The Audio Programmer