Releases: majockbim/spectrum
Releases · majockbim/spectrum
Release list
v1.2.0 — spectrum: Precision & Polish
What's New
- Winamp-style peak physics with gravity-based decay and peak hold
- Hann windowing + perceptual frequency weighting for cleaner bass/treble balance
- Recalibrated AGC and noise floor for accurate movement at any volume
- 95% window overlap in signal processor for sharper transient response
- Oscilloscope mode (M) now works across all themes
- Eliminated screen flicker on theme transitions
- Refactored to strict C++17 for full MinGW/MSVC parity
- JSON theme parser + tokenization (thanks to @Joe.r - see #19)
- Documentation fixes (thanks to @Yug - #20)
New Themes
- Gradient (Green → Red fade)
- Pink (minimalist solid block)
Documentation
See THEMES.md to build your own themes.
Full Changes
See PR #19 for the complete technical breakdown.
Download
Grab the lone spectrum.exe from the assets and run - no compiler required. :)
For theme customization, grab spectrum.zip instead.
v1.1.0 - spectrum: static linking + compiler agnosticism
v1.1.0 — spectrum
What's New
- Renamed from
terminal-equalizertospectrum - Static linking: the
.exenow runs on machines without a compiler or FFTW installed - Compiler agnosticism: now builds with MinGW, MSVC, and Clang via smart CMake configuration
- Added colour support (thanks to @Joe.r)
- Cleaned up duplicate
#includes and added contributing guidelines
Full Changes
See PR #18 for the complete technical breakdown.
Download
Grab spectrum.exe from the assets below, no compiler required. :)
v1.0.0 - Initial Release: Terminal Equalizer
Terminal Equalizer v1.0.0
This is the first stable release of Terminal Equalizer, command line audio visualizer written in C++17. It intercepts your computers audio to provide a mathematically accurate frequency spectrum directly in your standard Windows console.
Key Features
- Zero-Flicker ANSI Rendering: Uses VT100 escape codes to overwrite the console framebuffer rather than clearing it, enabling a buttery-smooth, tear-free visual experience.
- True Logarithmic Scaling: Implements decibel (dB) normalization with an adjustable noise floor to ensure the visualizer's response matches human hearing perception.
- Dynamic UI Scaling: Real-time frequency binning and resolution adjustments that automatically adapt to your terminal's window dimensions.
- High-Concurrency Engine: Features a decoupled Producer-Consumer threading model to separate low-latency audio capture from compute-intensive DSP rendering.
- Data Integrity: Built-in "data scrubbing" to filter out driver-level anomalies like
NaN,Inf, and buffer overflows before they reach the visualizer.
Under the Hood
- Language: C++17 (compiled with GCC 15.2.0 / MinGW-w64).
- Audio Pipeline: Windows Audio Session API (WASAPI) in Loopback mode.
- DSP Engine: Discrete Fourier Transform (DFT) powered by the industrial-grade
FFTW3library. - Threading: Lock-guarded
std::mutexshared memory state for thread-safe buffer exchange.
Installation & Usage
This release is pre-compiled for Windows x64.
- Download
Terminal-Equalizer-v1.0.0.zipfrom the Assets below. - Extract the contents to a folder of your choice.
- Important: Ensure
libfftw3-3.dllremains in the same directory asterminal-equalizer.exe. - Launch the executable and play any audio on your system.
Known Limitations
- OS Support: Currently supports Windows only due to the WASAPI dependency.