音频分析器最好的第一步,并不总是“允许访问麦克风”。
有时你想先认识仪表;有时问题已经在某个文件里;有时只需要录下一段参考并在之后检查。SignalMetric 把这些情形分开处理,又让它们进入同一组工作区。
This diagram could not be rendered. Its source is still available below.
View diagram source
flowchart LR
A[打开 SignalMetric] --> B{选择来源}
B --> C[Demo]
B --> D[Live Mic]
B --> E[打开本地音频]
B --> F[点击 Record]
C --> G[Monitor、Spectrum、Timeline、Scope]
D --> G
E --> G
F --> H[可见的本地录音状态]
H --> I[本地 M4A 历史]
I --> G
想知道“我在看什么”时,从 Demo 开始
Demo 不需要麦克风权限。它提供一条参考信号,因此可以在不创建文件、也不授权访问麦克风的情况下熟悉仪表。
先看 Monitor:
- 主电平区域显示 RMS dBFS、Sample Peak、True Peak estimate 和 Headroom;
- 测量面板汇集响度、动态、频谱、音乐和信号健康读数;
- 来源控件清楚标出 Demo、Mic、文件或 Recording;
- 工作区选择器让 Monitor、Spectrum、Timeline 和 Scope 可以在同一次会话中对照。
第一次不必阅读每个数字。先挑一个问题:“离数字上限还有多少?”属于 Monitor;“那条尖锐的窄带是什么?”属于 Spectrum;“它是从什么时候开始出现的?”属于 Timeline。
Demo 用于理解各个视图之间的关系,但它仍是参考来源,不是麦克风测试,也不能代替需要检查的真实文件。
用 Live Mic 获得即时、本地的读数
点按 Mic 后,iOS 才会请求权限。允许后,SignalMetric 配置面向测量的输入会话,在内存中分析麦克风 buffer。
普通 Live Mic 有意不是录音模式:
- 没有文件进度条;
- 麦克风样本在形成当前分析帧后被丢弃;
- 应用不会上传来源;
- 进入后台会停止麦克风图,而不是继续捕获。
这在真实房间里很实用。你可以走动检查说话位置、乐器频谱或几个摆位,而不会在无意间积累一堆没有打算保留的录音。
选择与来源匹配的响应模式:
| 模式 | 适合什么情况 |
|---|---|
| Fast | 希望瞬态和语音以更小视觉滞后到达屏幕。 |
| Balanced | 音乐和常规检查的稳定默认值。 |
| Smooth | 观察嘈杂房间或持续环境声,希望曲线更平稳。 |
这些配置只改变显示平滑,不会重写原始 RMS、峰值、响度或诊断值。喜欢平静的曲线,不应改变正在测量的数值。
让工作区跟随观察问题
切换工作区应当像在同一张工作台上换仪器,而不是打开四个互不相干的应用。
Monitor:先建立基线
确认信号存在,再查看电平与余量。若界面已经提示输入过热或 clipping,问题通常并不微妙。若电平看起来正常而声音仍不对,就不要停留在电平条上,继续问频率问题。
Spectrum:有目的地检查频率
Spectrum 将 2,048 点 FFT 显示为 64 个对数频段,并给出少量强局部成分。拖动图表即可检查一个频率;选择点与频率、电平、周期、最近音名和可用的谐波拟合保持关联。
- 持续的窄线可能是值得隔离的音调或共振。
- 低频区域过重,能解释为什么总体电平合理却仍显拥挤。
- 较高的 Centroid 或 roll-off 可以解释更亮的平衡,但它们只是可比较的证据,不是品质分数。
六个分量波形并不等于完整的逆重建。它们是经过选择和稳定处理的强候选峰,目的是在相邻 bin 能量变化时仍然可读。
Timeline:找到信号发生变化的时刻
Timeline 保存最近 30 秒的频谱历史。它适合检查间歇问题:某句话时突然出现的低频、剪辑后进入的窄带音,或高频纹理的变化。
历史以每秒 8 帧发布,最多 240 列。它是当前会话的可视证据,不是后台测量档案。
Scope:观察数字背后的形状
Scope 展示触发后的 256 bin 时域包络。瞬态异常、波形不对称或 clipping event 需要上下文时,它特别有用。DC estimate 和 zero-crossing rate 进一步提供采样层面的线索。
这份波形是为显示而缩减的,不是全分辨率音频编辑器;每个 bin 保留 min/max 证据,使形状在一眼之内可读。
来源已知时,导入本地文件
已有音频可通过 iOS 文件选择器或其他应用的 Open In 打开。SignalMetric 先将选中的项目复制到受保护的一项本地缓存,再进行播放和分析。
- 导入项必须是本地文件,最大 500 MB;
- 导入新项目会移除旧缓存;
- 应用不会构建云端媒体库,也不会扫描通用音乐库;
- 文件播放具有独立控制:播放、暂停、前后 15 秒、当前时间、总时长和可拖动的位置。
播放经过 main mixer 并进入与麦克风相同的分析器。因此 Spectrum 和 Timeline 读取的是正在播放的音频,而不是另一个子系统离线生成的摘要。
文件适合重复检查:暂停在可疑位置、回退、查看频段,再重放一次。这与 Live Mic 的即时工作流不同,界面也会明确区分。
只在需要保留本地证据时录音
Record 与 Mic 分开,因为它改变了存储和隐私约定。
点击 Record 后,如有需要会请求麦克风权限,并开始同样的实时分析,同时打开 AAC M4A 写入器。活动状态明显为红色,并显示已录时长。停止、路由改变、会话中断或进入后台都会收尾文件,而不会留下状态不明的半截录音。
This diagram could not be rendered. Its source is still available below.
View diagram source
sequenceDiagram
participant You as 用户
participant App as SignalMetric
participant Engine as 音频引擎
participant Disk as 本地 M4A 写入器
You->>App: 点击 Record
App->>Engine: 启动 input tap 和实时分析
Engine->>Disk: 将已接收 buffer 复制到受限串行写入器
Disk-->>App: 可见的录音时长
You->>App: 点击 Stop
App->>Engine: 拒绝新的录音 buffer
Engine->>Disk: 排空已接收写入并关闭文件
Disk-->>App: 完成本地录音
App->>App: 作为暂停文件打开并加入本地历史
写入器有上限。存储跟不上时,应用停止录音而不是无限增长内存。M4A 完成后会进入本地历史,可播放、分析、分享或删除。
这就是为什么普通 Live Mic 不被描述为“后台录音”:它不是。只有用户明确进入 Record 后,本地音频文件才会存在。
分享正确的对象
SignalMetric 有两种不同的分享操作:
- 仪表盘分享将当前可见仪表本地渲染成 PNG,分享的是看到的证据,不是音频样本。
- 文件分享针对当前显示的导入或录制音频,只有你点开 iOS 分享面板并选择目的地后才发送文件。
你可以明确选择:是展示测量结果,还是交付源音频。
会话结束时的隐私检查
SignalMetric 不需要账户,没有广告和分析追踪,不上传实时或导入音频;它是一次购买,没有订阅或功能付费墙。工作区、响应模式和外观偏好保存在设备上;会话范围和时长是临时状态,不会变成隐藏的测量档案。
可选 Feedback 是唯一的网络路径:只在你提交后发送填写内容和有限版本上下文,音频分析不依赖它。
这就是应用预期的节奏:
- 用 Demo 学习。
- 用 Live Mic 检查,不生成文件。
- 需要可重复播放时使用本地文件。
- 只在希望保留本地材料时录音。
- 只在明确选择目的地时分享仪表图或音频。
SignalMetric 产品指南提供了工作区、来源控件、响应模式和隐私边界的完整地图。