My curated list of audio digital signal processing resources. New resources may be added in the future. Feel free to open a PR if you wish!
-
Designing Software Synthesizer Plug-Ins in C++
andDesigning Audio Effect Plugins in C++
by Will Pirkle- Great beginner resource that teaches fundamental DSP concepts with examples.
- The synthesizer one is better than the effect one imo, so go for that if you plan on only buying one.
- Focuses on teaching concepts, not on writing performant code. His coding sytle is quite ineffecient.
- There will also be
newer edition
in 2021 as well.
-
The Scientist and Engineer's Guide to Digital Signal Processing
by Steven W. Smith, Ph.D.- Free online book on DSP in general.
3Blue1Brown
- An excellent YouTube channel on complex algebra, linear algebra, calculus, and differential equations.- His videos on
Euler's Formula
and theFourier Transform
are particularly excellent.
- His videos on
- This video on the
Laplace Transform
by Zach Star.
Musicdsp.org
- A collection of open source DSP algorithms by the community.Cytomic Technical Papers
- Excellent real-world useable filters and explanations by Cytomic.deip.pdf
- High quality resampling and oversampling.Freeverb
- An open-source reverb algorithm.DAFx
- An archive of scientific papers and presentations given during an annual DSP research conference.
While this is not strictly development related, knowing how plugins are actually used can give valuable insight.
SeamlessR
- This guy is a great teacher and really knows his stuff.Au5
- A beast legend. Need I say more?
Intel Intrinsics Guide
- x86 processor instrinsics- Follow these rules:
Desmos
- Free online graphing calculator.Wolfram Alpha
- A helpful math partner.Curcuit JS
- A cool little circuit simulation tool.
MrsWatson
- Command-line audio plugin host with support for printing to the terminal from your DSP code.Carla
- System-wide virtual audio and MIDI patching software, usingJack
as the backend. Available as a standalone application or a VST/LV2 plugin.Jack
- Cross-platform audio driver with support for system-wide patching.Cadence
- A suite of tools for configuring, monitoring, and controlling system-wide audio in Linux (includesCarla
).Ardour
- Open-source DAW with useful plugin analysis tools.Bertom EQ Curve Analyzer
- Analyze the frequency and phase response of any plugin.
baseplug
- Create VST plugins in Rust. (GUI and other plugin formats are still a work in progress.)simdeez
- Write generic SIMD code across an array of architectures.FunDSP
- An audio DSP library with a nifty clean syntax.
Learn Rust the Dangerous Way
- Tips on writing low-level Rust code from a C background.How-to Optimize Rust Programs on Linux
- How-to guide on profiling Rust code on Linux.
Rust Audio Discord Server
- A community of passionate Rust audio programmers.KVR DSP Forum
- A large community of plugin developers.