分贝检测仪
在线噪音检测工具,实时测量环境声音分贝值
分贝等级参考
什么是分贝检测仪?
分贝计通过麦克风估算环境声音强度,并以 dB 显示结果。在浏览器中测得的数值应视为实用参考,而不是经过校准的专业声学测量,因为内置麦克风、自动增益、系统滤波、浏览器行为和设备摆放都会影响准确性。它仍然适合比较安静与嘈杂环境、粗略观察风扇或街道噪声、检查音频设备,或确认降噪措施前后的变化。若用于职业安全、法律证据、工程验收或专业声学分析,应使用校准声级计和明确的测量流程。本工具的音频处理在本地完成。
使用方法
使用方法
- 点击「开始检测」并允许浏览器访问麦克风
- 等待设备初始化——仪表盘将显示实时分贝值
- 观察电平条了解当前噪音水平
- 统计面板记录最小、最大和平均分贝值
- 点击「重置统计」清空历史记录并重新开始
测量提示
- 浏览器分贝读数取决于麦克风灵敏度、系统增益和设备位置,因此仅作为近似参考,并非专业测量。
- 为获得更稳定的结果,请保持麦克风位置不变,录制时避免触碰设备。
使用场景
技术原理
浏览器中的声级估算从 MediaDevices.getUserMedia({audio: true}) API 开始,它将选定的输入设备暴露为 MediaStream。该流被路由到 AudioContext,然后经过 MediaStreamAudioSourceNode 和 AnalyserNode。每帧动画调用 AnalyserNode.getFloatTimeDomainData(buffer) 填充一个归一化到 [-1, 1] 范围的 Float32Array 采样值;页面从这些采样值计算均方根幅度 rms = sqrt(sum(x_i^2) / N),并将其转换为满量程分贝 dBFS = 20 * log10(rms)。由于 dBFS 是数字参考(0 dBFS = 满量程方波),它不是绝对的物理压力级。 将 dBFS 转换为 dB SPL(IEC 61672 一类和二类声级计使用的物理压力标尺)需要使用参考源(如 94 dB SPL 活塞发声器)测量的校准偏移量,而未经校准的笔记本和手机麦克风不提供此功能。getFloatFrequencyData() 频谱可以从同一 AnalyserNode 派生,用于基于 FFT 的倍频程分析,但 IEC 61672 中定义的 A 计权和慢/快时间积分(125 毫秒 / 1 秒)不是 Web Audio 默认功能的一部分。 读数会因自动增益控制、echoCancellation/noiseSuppression 约束中的操作系统级噪声抑制、麦克风指向性(全向 MEMS vs 心形 USB)以及遵循反平方定律的衰减(自由场中每距离翻倍衰减 6 dB)而漂移。仪表标注的公共健康阈值包括 WHO 推荐的 85 dBA 暴露 8 小时和 OSHA 1910.95 允许的 90 dBA 暴露 8 小时、5 dB 交换率。
- MediaDevices.getUserMedia({audio: true}) 需要安全上下文(HTTPS 或 localhost)和每个源的用户手势;拒绝后无法撤销,除非重置站点权限。
- AnalyserNode.fftSize 必须是 32 到 32768 之间的 2 的幂;getFloatTimeDomainData() 在音频上下文采样率(通常 44100 或 48000 Hz)下每帧运行 O(fftSize)。
- RMS 转 dBFS 使用 20*log10(rms);通过将 rms 限制到一个很小的 epsilon(如 1e-10)来防止 log10(0) 产生 -Infinity。
- 浏览器 AGC 和 noiseSuppression 约束在 Chrome 和 Edge 中默认启用;传递 {echoCancellation: false, noiseSuppression: false, autoGainControl: false} 以防止声级计追逐自身增益。
- dBFS 不是 dB SPL:需要校准过的 94 dB SPL 活塞发声器或声校准器才能将浏览器读数转换为 OSHA、ISO 9612 或 NIOSH 工作场所使用的物理压力值。
- WHO 推荐 85 dBA / 8 小时暴露,3 dB 交换率;OSHA 1910.95 使用 90 dBA / 8 小时,5 dB 交换率,因此相同的 dBA 读数在两个标准下对应不同的允许持续时间。
- 反平方定律在自由场中每距离翻倍约衰减 6 dB,因此麦克风放置的几厘米重复性通常是主要的测量误差来源。
示例
日常声音对照表
0 dB - 听觉阈值
30 dB - 耳语、夜间安静卧室
40 dB - 图书馆、冰箱嗡嗡声
60 dB - 普通对话、办公室交谈
70 dB - 吸尘器、热闹的餐厅
85 dB - 繁忙的城市交通(WHO 听力损伤阈值)
90 dB - 地铁列车、8 米外的摩托车
110 dB - 摇滚音乐会现场、电锯
120 dB - 30 米外的喷气发动机(疼痛阈值)
140 dB - 烟花、枪声(瞬时即可造成听力损伤)WHO / OSHA 暴露指南
在出现听力损伤风险前,每日推荐最长暴露时间:
85 dB -> 8 小时
88 dB -> 4 小时
91 dB -> 2 小时
94 dB -> 1 小时
97 dB -> 30 分钟
100 dB -> 15 分钟
110 dB -> 不到 2 分钟
资料来源: WHO Make Listening Safe、OSHA 1910.95客厅 60 秒采样示例
麦克风 : MacBook Air 内置麦克风
位置 : 距窗户 1 米,午后
当前值 : 38 dB
最小值 : 32 dB(安静片段)
最大值 : 71 dB(窗外汽车鸣笛)
平均值 : 44 dB -> 判定为安静 -> 正常耳机降噪 A/B 对比测试
测试: 空调风机持续运行,麦克风位置固定
关闭 ANC: 平均 58 dB,最高 64 dB
开启 ANC: 平均 41 dB,最高 47 dB
差值 : 平均 -17 dB,峰值 -17 dB
结论 : 主观响度大约下降到原来的 1/6(每 10 dB 约对应 2 倍响度)。常见问题
分贝读数有多准确?
网页麦克风未经绝对声压级(SPL)校准。本页读取的是相对的 dBFS(数字满刻度)值,再通过一个标定常数近似映射为 dB SPL。真正的噪声测量需要使用经过校准的声级计;网页读数仅供观察相对趋势,不可作为合规级数据。
使用了哪种计权方式?
大多数版本输出的是不计权(线性)值。专业声级计可提供 A 计权(贴近人耳响应,用于环境噪声)或 C 计权(用于机械峰值噪声)。对人耳感知响度来说,浏览器的不计权读数只能给出大致参考,并非严格的 A 计权。
合理的分贝范围是多少?
悄声约 30 dB;正常对话约 60 dB;繁忙交通约 80 dB;割草机约 90 dB;摇滚演出约 110 dB;枪声约 140 dB。长时间暴露在 85 dB 以上会逐渐损害听力。网页读数不能用于职业合规——只能作为粗略参考,不能替代 OSHA 等标准的测量。
音频会被上传吗?
不会。麦克风信号在本地处理——本页通过 Web Audio API 读取音频波形并在本地计算分贝,不录制也不传输任何数据。
为什么读数波动很大?
麦克风位置、房间声学、自动增益控制(AGC)和背景噪声都会改变输入电平。专业声级计采用全向麦克风并禁用 AGC;消费级设备麦克风通常具有指向性且会自动调整增益,因此难以得到稳定读数。
可以用它来判断房间是否安静到适合录音吗?
可以做大致判断——播客或音乐录制建议低于 30 dB(非常安静)。具体读数不可全信,但同一支麦克风在两个房间的明显差异是有参考价值的。
不授权麦克风权限能用吗?
不能。本页需要明确的麦克风授权才能读取音频流。请在浏览器弹窗中允许,使用完毕后可在地址栏的权限图标处撤销。