đ FFT so pretty, your ears will be jealous. See your soundâspectrograms, mel, chroma, and more.
81
stars
59
commits
Go
primary language
Sep 5, 2026
updated

brew install steipete/tap/songsee
go install github.com/steipete/songsee/cmd/songsee@latest
Docker:
docker build -t songsee .
docker run --rm -v "$PWD:/input:ro" -v "$PWD/out:/output" songsee /input/track.mp3 --output /output/track.png
The image includes ffmpeg, so batch and server runs do not depend on host audio tooling.
# Basic spectrogram
songsee track.mp3
# Mel spectrogram with magma palette
songsee track.mp3 --viz mel --style magma
# All 9 modes combined
songsee track.mp3 --viz spectrogram,mel,chroma,hpss,selfsim,loudness,tempogram,mfcc,flux
# Custom output
songsee track.mp3 --viz hpss,chroma --style inferno -o viz.png --width 2560 --height 1440
| Mode | Description |
|---|---|
spectrogram | Time Ă frequency magnitude |
mel | Perceptual frequency scale |
chroma | 12-bin pitch class |
hpss | Harmonic vs percussive separation |
selfsim | Self-similarity matrix |
loudness | Volume over time |
tempogram | Tempo variation |
mfcc | Timbre fingerprint |
flux | Spectral change detection |
classic · magma · inferno · viridis · gray · claw
--output Output path (default: input name + extension)
--format jpg or png (default: jpg)
--width Output width (default: 1920)
--height Output height (default: 1080)
--window FFT window size (default: 2048)
--hop Hop size (default: 512)
--min-freq Minimum frequency in Hz
--max-freq Maximum frequency in Hz
--start Start time in seconds
--duration Duration in seconds
--style Palette name
--viz Visualization list (repeatable or comma-separated)
Built by @steipete
Go
69.4%
JavaScript
30.1%
đ FFT so pretty, your ears will be jealous. See your soundâspectrograms, mel, chroma, and more.
81
stars
59
commits
Go
primary language
Sep 5, 2026
updated

brew install steipete/tap/songsee
go install github.com/steipete/songsee/cmd/songsee@latest
Docker:
docker build -t songsee .
docker run --rm -v "$PWD:/input:ro" -v "$PWD/out:/output" songsee /input/track.mp3 --output /output/track.png
The image includes ffmpeg, so batch and server runs do not depend on host audio tooling.
# Basic spectrogram
songsee track.mp3
# Mel spectrogram with magma palette
songsee track.mp3 --viz mel --style magma
# All 9 modes combined
songsee track.mp3 --viz spectrogram,mel,chroma,hpss,selfsim,loudness,tempogram,mfcc,flux
# Custom output
songsee track.mp3 --viz hpss,chroma --style inferno -o viz.png --width 2560 --height 1440
| Mode | Description |
|---|---|
spectrogram | Time Ă frequency magnitude |
mel | Perceptual frequency scale |
chroma | 12-bin pitch class |
hpss | Harmonic vs percussive separation |
selfsim | Self-similarity matrix |
loudness | Volume over time |
tempogram | Tempo variation |
mfcc | Timbre fingerprint |
flux | Spectral change detection |
classic · magma · inferno · viridis · gray · claw
--output Output path (default: input name + extension)
--format jpg or png (default: jpg)
--width Output width (default: 1920)
--height Output height (default: 1080)
--window FFT window size (default: 2048)
--hop Hop size (default: 512)
--min-freq Minimum frequency in Hz
--max-freq Maximum frequency in Hz
--start Start time in seconds
--duration Duration in seconds
--style Palette name
--viz Visualization list (repeatable or comma-separated)
Built by @steipete
Go
69.4%
JavaScript
30.1%