Spek 音频频谱分析器完整指南:1 条命令看清频率分布
【免费下载链接】spekAcoustic spectrum analyser项目地址: https://gitcode.com/gh_mirrors/sp/spek
你把一批 FLAC 转成了 MP3,怀疑高频细节被压缩掉了,可播放试听只能凭感觉,很难说清损失发生在哪。Spek 是一个音频频谱分析器,它把音频文件变成一张彩色频谱图,让你用眼睛直接对比频率上的差异。
音频频谱分析器能解决什么问题:3 个真实场景
无损与有损的音质对比。音频工程师会把原版 FLAC 和转码出的 MP3 分别打开:右侧 16kHz 以上的高频"尾巴"在 MP3 里明显变细,那就是编码器削掉的部分。不用靠耳朵争,截图直接甩进群。
老录音里的干扰定位。修复一段旧磁带录音时,如果低频区有一条贯穿全曲的横线,多半是 🔌 50Hz 交流声干扰。频谱图让这类问题一目了然,省得整段整段地听。
混音前后的爆音与截断检查。制作人完成一条 track 后打开 Spek 看一眼:顶部大面积饱和色说明有过载爆音,文件末尾出现大片空白则可能是填充或截断。
一次装好 Spek:包管理器命令与源码编译
Linux 用户从官方软件源一条命令就能装好:
sudo apt install spek其他平台的获取方式如下:
- Fedora / Arch:分别用
dnf install spek或pacman -S spek - Windows:有现成的 MSI 安装包,也有免安装 ZIP(解压后运行
Spek\spek.exe即可) - macOS:下载 DMG 拖进 Applications 就能用
想从源码编译的话,依赖 wxWidgets(提供 Spek 窗口和菜单的跨平台 GUI 框架)和 FFmpeg(负责音频解码的库):
git clone https://gitcode.com/gh_mirrors/sp/spek cd spek && ./autogen.sh && make启动后你看到的是一面带左侧频率标尺和底部时间标尺的空白绘图区。按 Ctrl+O 选中文件,分析就开始了。
分析一段 MP3 全流程:如何读懂音频频谱图
打开文件后,Spek 自动完成解码、FFT 运算并画出颜色图,整个过程无需任何设置。仓库里tests/samples目录备有 19 个各格式的样例音频,拿其中那个 2ch-44100Hz-128cbr.mp3 练手正合适。看懂这张图只需三步:
- 认坐标:横轴是时间,纵轴是频率,下低上高;某个频率上的信号越强,颜色越亮。
- 找能量分布:底部粗亮条是低频鼓点和贝斯,顶部细碎亮线是镲片等高频瞬态,末尾空白段通常是静音填充。
- 确认具体问题:怀疑有底噪?找一条亮度几乎不变、贯穿整首歌的细线,那就是噪声底。
确认完结论后按 Ctrl+S,整张频谱图导出为图像文件,可以直接贴进报告或帖子。
频谱分析参数与快捷键速查表
绘图区上有几个值得动的参数,每个都绑定了一个单键:
| 参数 | 调它会发生什么 | 适用场景 |
|---|---|---|
| DFT 窗口大小(w 增减) | 窗口越大,频率越精细但时间上越模糊 | 分析持续的低音音色,定位某个具体频率的问题 |
| DFT 窗函数(f 循环切换) | 换汉宁、海明等窗,改变能量扩散的形状 | 频谱边缘发糊、干扰太多时逐个试试 |
| 动态范围(l / u 调上下限) | 抬高下限让弱信号变暗,画面整体"变瘦" | 突出主信号、对比不同文件的噪声底 |
快捷键方面:c 在左右声道间切换,s 在多个音轨流间切换,p 循环 3 种配色方案(谱色、SOX、黑白灰),Ctrl+E 打开偏好设置。所有设置以 INI 格式存在~/.config/spek/preferences,下次启动自动生效。
常见问题速查:启动报错、格式打不开怎么办
Q:Linux 上装完提示找不到库,程序起不来?A:多半是缺开发依赖。Ubuntu/Debian 上装好libwxgtk2.8-dev、wx-common、libavcodec-dev、libavformat-dev再重新编译即可。
Q:某个格式打不开,提示不支持?A:Spek 自己不内置解码器,全部走 FFmpeg,升级系统的 FFmpeg 库就能扩大格式支持范围。
Q:长音频分析得很慢?A:按 w 键把 DFT 窗口调小,每帧计算量会明显下降;再慢就先检查 CPU 是否被别的大任务占满。
Q:设置改乱了想恢复默认?A:删掉~/.config/spek/preferences再启动,一切回到默认。
源码结构速览:从哪个模块开始读、如何贡献
源码集中在src目录,模块职责划分清晰:
src/spek-audio.cc:用 FFmpeg 读取音频,统一转成可供分析的数字采样src/spek-fft.cc:FFT(快速傅里叶变换,把时间波形拆成各个音高的能量)核心实现src/spek-pipeline.cc:多线程流水线调度,保证大文件分析能吃满多个核心src/spek-spectrogram.cc:绘制频谱图、处理快捷键交互并导出图像src/spek-window.cc:主窗口、菜单与事件分发po/:30 多种语言的翻译文件,不会改 C++ 也能从翻译入手tests/:单元测试,samples子目录附带 19 个各格式样例
下次对某个音频文件的品质存疑时,别只靠耳朵——用 Spek 打开它,让频谱图先说话。现在就可以挑手边一段老录音或压缩过的 MP3,按上面的流程走一遍,半分钟内你就知道它的低频里有没有藏着电流声。
【免费下载链接】spekAcoustic spectrum analyser项目地址: https://gitcode.com/gh_mirrors/sp/spek
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考