References: Building a Real-Time Spectrum Analyzer
-
Spectrogram - Wikipedia - Defines a spectrogram as a time-frequency visualization built from successive spectra and describes waterfall-style 3D display variants, matching this chapter's spectrogram and waterfall display sections exactly.
-
Real-time computing - Wikipedia - Explains hard, firm, and soft real-time deadline classifications and why meeting deadlines consistently matters more than raw throughput, the concept this chapter's continuously running real-time processing loop must satisfy every frame.
-
Multiple buffering - Wikipedia - Covers double buffering and buffer-role swapping between a producer and consumer, directly matching this chapter's double buffering and buffer swapping mechanism for overlapping capture with processing.
-
Real-Time Digital Signal Processing: Implementations, Applications and Experiments with the TMS320C55x - Sen M. Kuo, Bob H. Lee, and Wenshun Tian - Wiley - This text is known for its widely copied ping-pong (double) buffer code pattern for keeping real-time audio capture and processing running concurrently on embedded hardware without dropping samples, the exact pattern this chapter's buffer swapping section describes.
-
Digital Processing of Speech Signals - Lawrence R. Rabiner and Ronald W. Schafer - Prentice Hall - This classic text is credited with popularizing the spectrogram as a standard time-frequency analysis tool, with diagrams that became the template most later spectrogram and waterfall displays, including this chapter's, still follow.
-
Ping Pong Buffers - Embedded.fm - Explains, using an audio-sampling example, how alternating between two buffers with DMA lets a processor handle incoming samples continuously without pausing, the exact mechanism behind this chapter's double buffering and buffer swapping.
-
Ping Pong Buffer Audio Stream - Audio DSP Lab - Walks through implementing double-buffered I2S audio capture with DMA on an STM32 microcontroller, a close embedded-hardware parallel to this chapter's capture-while-processing pipeline on the Pico 2.
-
Characteristics of Real-time Systems - GeeksforGeeks - Surveys deadline-driven, deterministic, and fault-tolerant properties of real-time systems, framing this chapter's frame-rate-sustaining real-time processing loop within the broader real-time systems concept it draws on.
-
Bottleneck Conditions Identification in System Design - GeeksforGeeks - Explains how to identify which stage of a multi-stage pipeline limits overall throughput, the general technique this chapter applies as stage profiling to find that compute time, not capture or draw time, is the pipeline's true bottleneck.
-
Lecture 21: Short-Time Fourier Analysis - MIT OpenCourseWare - Course notes on computing a sequence of short-time spectra from a continuous signal, the underlying streaming-FFT and windowed-frame machinery this chapter assembles into a spectrogram and waterfall display.