Generate spectrograms and multi-panel audio feature visualizations from audio files.
Requires Go:
go install github.com/steipete/songsee/cmd/songsee@latest
Optional: ffmpeg for formats beyond WAV/MP3.
# Basic spectrogram
songsee track.mp3
# Save to specific file
songsee track.mp3 -o spectrogram.png
# Multi-panel visualization grid
songsee track.mp3 --viz spectrogram,mel,chroma,hpss,selfsim,loudness,tempogram,mfcc,flux
# Time slice (start at 12.5s, 8s duration)
songsee track.mp3 --start 12.5 --duration 8 -o slice.jpg
# From stdin
cat track.mp3 | songsee - --format png -o out.png
Use --viz with comma-separated values:
| Type | Description |
|---|---|
spectrogram |
Standard frequency spectrogram |
mel |
Mel-scaled spectrogram |
chroma |
Pitch class distribution |
hpss |
Harmonic/percussive separation |
selfsim |
Self-similarity matrix |
loudness |
Loudness over time |
tempogram |
Tempo estimation |
mfcc |
Mel-frequency cepstral coefficients |
flux |
Spectral flux (onset detection) |
Multiple --viz types render as a grid in a single image.
| Flag | Description |
|---|---|
--viz |
Visualization types (comma-separated) |
--style |
Color palette: classic, magma, inferno, viridis, gray |
--width / --height |
Output image dimensions |
--window / --hop |
FFT window and hop size |
--min-freq / --max-freq |
Frequency range filter |
--start / --duration |
Time slice of the audio |
--format |
Output format: jpg or png |
-o |
Output file path |
ffmpegvision_analyze for automated audio analysis