songsee 是一个通过 CLI 使用的音频频谱图与特征可视化工具,主要用途是从音频文件生成频谱图以及多面板的音频特征可视化图像。
用途
songsee 用于对音频进行可视化分析,生成频谱图和多面板音频特征图,帮助用户观察音频的频率、音高、响度、节奏等特征。官方说明中提到的适用场景包括:比较音频输出、调试合成(synthesis)以及记录音频处理流程(documenting audio processing pipelines)。
主要能力
songsee 的核心能力是通过 --viz 参数选择并组合多种可视化类型,使用逗号分隔;当指定多个 --viz 类型时,会在单张图片中以网格(grid)形式渲染。支持的可视化类型如下:
| 类型 | 说明 |
|---|---|
spectrogram |
标准频率频谱图 |
mel |
Mel 标度频谱图 |
chroma |
音高类别分布 |
hpss |
谐波/打击乐分离 |
selfsim |
自相似矩阵 |
loudness |
随时间变化的响度 |
tempogram |
节奏(tempo)估计 |
mfcc |
梅尔频率倒谱系数 |
flux |
频谱通量(起音/onset 检测) |
除可视化类型外,songsee 还提供以下常用参数:
| 参数 | 说明 |
|---|---|
--viz |
可视化类型(逗号分隔) |
--style |
调色板:classic、magma、inferno、viridis、gray |
--width / --height |
输出图像尺寸 |
--window / --hop |
FFT 窗口与 hop 大小 |
--min-freq / --max-freq |
频率范围过滤 |
--start / --duration |
音频的时间切片 |
--format |
输出格式:jpg 或 png |
-o |
输出文件路径 |
使用方式
前置条件:需要安装 Go。安装命令为:
go install github.com/steipete/songsee/cmd/songsee@latest
可选:对于 WAV/MP3 之外的格式需要 ffmpeg。
快速开始示例:
基本频谱图:
songsee track.mp3
保存到指定文件:
songsee track.mp3 -o spectrogram.png
多面板可视化网格:
songsee track.mp3 --viz spectrogram,mel,chroma,hpss,selfsim,loudness,tempogram,mfcc,flux
时间切片(从 12.5 秒开始,持续 8 秒):
songsee track.mp3 --start 12.5 --duration 8 -o slice.jpg
从标准输入读取:
cat track.mp3 | songsee - --format png -o out.png
限制与说明
- WAV 和 MP3 为原生解码;其他格式需要 ffmpeg。
- 官方资料提到,输出图像可用
vision_analyze进行检查,以用于自动化音频分析。 - 关于收费、价格、平台支持范围等事实,资料中暂未提供。