Skip to content

Releases: majockbim/spectrum

v1.2.0 — spectrum: Precision & Polish

Choose a tag to compare

@majockbim majockbim released this 25 May 01:43
b53764c

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

Choose a tag to compare

@majockbim majockbim released this 04 May 16:17
0267def

v1.1.0 — spectrum

What's New

  • Renamed from terminal-equalizer to spectrum
  • Static linking: the .exe now 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

Choose a tag to compare

@majockbim majockbim released this 30 Apr 21:25

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 FFTW3 library.
  • Threading: Lock-guarded std::mutex shared memory state for thread-safe buffer exchange.

Installation & Usage

This release is pre-compiled for Windows x64.

  1. Download Terminal-Equalizer-v1.0.0.zip from the Assets below.
  2. Extract the contents to a folder of your choice.
  3. Important: Ensure libfftw3-3.dll remains in the same directory as terminal-equalizer.exe.
  4. Launch the executable and play any audio on your system.

Known Limitations

  • OS Support: Currently supports Windows only due to the WASAPI dependency.