为什么我们打开一个音频文件,看到的dB是负数
音频信号的正负值记录了声波的振动方向,其幅度则反映了强度。由于数字系统存在最大可表示的“天花板”(Full Scale),以及不同音频设备所能表现的绝对音量差异,所以音频文件使用 dBFS作为音量的指标。核心要点:记录声波的瞬时方向(密部或疏部)与强度。数字音频系统的绝对上限,任何超过 0 dBFS 的信号都会导致削波失真。表示信号电平低于系统最大容量,负数值越大(如 -20 dBFS 比 -6
音频信号中的正负值与 dBFS:深入解析数字音频的“音量”度量
你是否曾好奇,为什么在数字音频软件里看到的dBFS是负数?为什么单位是dBFS而不是dB?当听到“0 dBFS 是最大值时,是不是感觉有点奇怪?
1. 音频信号的本质:声波的疏密与数字采样
当你对着麦克风说话时,你的声音本质是声波,即空气分子的周期性疏密振动。这种振动会在介质中产生局部的压强变化——高于正常大气压的**“密部”(压缩)和低于正常大气压的“疏部”(膨胀)**。
- 声电转换: 当声波的密部(高压)抵达麦克风时,会对振膜施加一个向前的推力,使其向一个方向位移。麦克风将这种机械位移转化为正电压的电信号。
- 压强变化与电信号: 相反,当声波的疏部(低压)抵达麦克风时,会对其施加一个向后的拉力(相对周围正常大气压),使其向相反方向位移。此时,麦克风产生负电压的电信号。
因此,你在数字音频文件中看到的那些正负值,正是对这种随时间变化的电压波形(或其数字表示)的离散采样。它们忠实地记录了声波在每个瞬间的振动状态——方向和强度。
这些正负采样值本身并不直接等同于我们感知的“音量”。音量或响度更多地与这些波动的幅度(即波形的最高点或最低点离零点的距离,无论正负)以及声波所携带的能量有关。一个振幅在 +500 和 -500 之间波动的信号,通常会比一个在 +50 和 -50 之间小幅波动的信号听起来更响亮。
2. 为何需要 dBFS 这个相对标尺?
原始的采样值(例如,16 位系统中从 -32768 到 +32767)直接反映了信号的瞬时幅度,但它们并不能直观地告诉我们信号距离数字系统能处理的“最大音量”有多远。由于不同的音频设备和系统所能表现的“最大音量”能力各不相同(例如,高功率音响能发出远超普通耳机的声压级),使用一个绝对的数值来衡量音量是不合适的。这就是 dBFS(Decibels relative to Full Scale)诞生的根本原因。
数字系统的“天花板”:满刻度 (Full Scale, FS)
每个数字音频系统都有一个它能表示的绝对最大信号幅度,这被称为满刻度 (Full Scale, FS)。这是系统在不引起失真的情况下所能处理的最高电平。
- 对于定点整数系统(如 CD 音质的 16 位 PCM),满刻度对应于最大的正负整数值(例如,16 位有符号整数是 215−1=327672^{15}-1=32767215−1=32767 和 −215=−32768-2^{15}=-32768−215=−32768)。
- 对于浮点系统(现代音频处理中常见),满刻度通常被标准化为 ±1.0\pm 1.0±1.0。
任何试图超过这个“天花板”的信号都会被“削平”,即发生削波 (Clipping)。削波会导致信号波形被硬性截断,引入大量非线性谐波,从而产生严重且通常刺耳的失真。
dBFS 的引入:一个标准化、相对的“电平参照”
为了有效管理数字音频电平并避免削波,dBFS (Decibels relative to Full Scale) 应运而生。
- Decibels (dB): 分贝是一个对数单位,用于表示两个值之间的比例关系。它非常适合描述声音强度,因为人耳对声音响度的感知也是近似对数式的。这意味着,响度增加一倍,我们感知到的可能只是“响了一些”,而不是“两倍响”。使用分贝可以将非常大的数值范围压缩到一个更易于管理的区间。
- relative to Full Scale (FS): 这是关键!dBFS 的**“0 点”并非绝对静音**,而是数字系统所能处理的最大信号电平 (Full Scale)。
因此,0 dBFS 代表信号已达到系统的峰值能力,是数字领域最高的非失真电平。所有其他电平都相对于这个“天花板”进行衡量,所以 dBFS 是一个相对的、标准化的度量单位。
3. 为什么 dBFS 值通常是负数?
理解了 **0 dBFS 是数字系统的“天花板”**后,就很容易明白为什么我们看到的 dBFS 值大多是负数了。
dBFS 的计算公式:
dBFS=20⋅log10(Signal AmplitudeMaximum Possible Amplitude (Full Scale))dBFS=20 \cdot \log_{10} \left( \frac{\text{Signal Amplitude}}{\text{Maximum Possible Amplitude (Full Scale)}} \right)dBFS=20⋅log10(Maximum Possible Amplitude (Full Scale)Signal Amplitude)
- 如果当前信号的幅度 (Signal Amplitude) 小于 系统最大可能幅度 (Full Scale),那么分数 Signal AmplitudeMaximum Possible Amplitude (Full Scale)\frac{\text{Signal Amplitude}}{\text{Maximum Possible Amplitude (Full Scale)}}Maximum Possible Amplitude (Full Scale)Signal Amplitude 的值就会小于 1 (但大于 0)。
- 任何大于 0 且小于 1 的数值,其以 10 为底的对数 (log10\log_{10}log10) 结果都是负数。例如,log10(0.5)≈−0.301\log_{10}(0.5) \approx -0.301log10(0.5)≈−0.301,log10(0.1)=−1\log_{10}(0.1)=-1log10(0.1)=−1。
因此:
- 当信号电平恰好达到满刻度时,Signal AmplitudeMaximum Possible Amplitude (Full Scale)=1\frac{\text{Signal Amplitude}}{\text{Maximum Possible Amplitude (Full Scale)}}=1Maximum Possible Amplitude (Full Scale)Signal Amplitude=1,log10(1)=0\log_{10}(1)=0log10(1)=0,所以是 0 dBFS。
- 当信号电平低于满刻度时,其 dBFS 值必然为负数。例如我们要达到50%的最大音量,里面就是log(1/2),值为-0.3:

再乘以20,我们就得到了一个我们常用的超参数-6dBFS
20∗−0.3=−620 * -0.3=-620∗−0.3=−6
- 即信号幅度为满刻度的一半 (0.5),大约是 -6 dBFS。
- 同理,信号幅度为满刻度的十分之一 (0.1),是 -20 dBFS
20⋅log10(0.1)=20⋅(−1)=−2020 \cdot \log_{10}(0.1)=20 \cdot (-1)=-2020⋅log10(0.1)=20⋅(−1)=−20。
- 理论上的数字静音(信号幅度为 0),log10(0)\log_{10}(0)log10(0) 趋近于负无穷大 (−∞-\infty−∞),所以是 −∞-\infty−∞ dBFS。
4. dBFS 的核心作用与重要性
dBFS 在数字音频工作流程中扮演着至关重要的角色:
- 避免削波 (Clipping Prevention): 这是 dBFS 最首要和最重要的用途。音频工程师通过观察电平表上的 dBFS 值,确保信号峰值(通常的目标是比如 -6 dBFS 到 -18 dBFS,具体取决于应用场景和后续处理)远低于 0 dBFS,从而留出足够的**“动态余量”或“顶峰空间” (Headroom)**。这能有效防止意外的峰值导致削波失真。
- 标准化电平参考: 在数字音频工作流程中,dBFS 提供了一个通用的标准来讨论和设置电平。无论你使用的是 Pro Tools、Logic Pro、Cubase、Audacity 还是 Pydub,-12 dBFS 的含义(相对于该系统的满刻度)是相同的。这种标准化使得不同平台和软件之间的协作更为顺畅。
- 优化信噪比 (Signal-to-Noise Ratio): 虽然要避免削波,但信号电平也不能过低。如果信号太弱(例如 -60 dBFS),那么数字系统固有的本底噪声(如量化噪声)相对于有用信号就会更明显,导致信噪比不佳。dBFS 帮助工程师在“过响”(削波)和“过静”(噪声明显)之间找到一个理想的平衡点。
- 混音与母带处理的指导: 在多轨混音时,工程师会参照 dBFS 来平衡各个音轨的响度,并确保总输出(Master Output)不会超过 0 dBFS。在母带处理阶段,母带工程师也会精确控制最终成品的 dBFS 电平,以符合不同发行平台(如 CD、流媒体服务)的响度标准,例如 LUFS 响度标准通常会指定一个目标 dBFS 值。
5. dBFS 与原始采样值的关系
原始的采样值(正负数)是波形在时间轴上的直接描绘,它们反映了信号的瞬时电压。
而 dBFS 值则是对这些采样值(的峰值或 RMS 值)与系统最大容量之间关系的一种对数度量。它提供了一个关于**“响度”或“电平强度”的标准化视角。例如,Pydub 中的 .dBFS 属性就是计算了整个音频片段的平均有效值 (RMS)** 相对于满刻度的分贝值,而 .max_dBFS 则是音频片段中峰值采样点相对于满刻度的分贝值。
6. 总结与关键点回顾
音频信号的正负值记录了声波的振动方向,其幅度则反映了强度。由于数字系统存在最大可表示的“天花板”(Full Scale),以及不同音频设备所能表现的绝对音量差异,所以音频文件使用 dBFS作为音量的指标。
核心要点:
- 正负采样值: 记录声波的瞬时方向(密部或疏部)与强度。
- 0 dBFS: 数字音频系统的绝对上限,任何超过 0 dBFS 的信号都会导致削波失真。
- 负数 dBFS: 表示信号电平低于系统最大容量,负数值越大(如 -20 dBFS 比 -6 dBFS 更大),表示信号越弱。
- 重要性: dBFS 是数字音频的“罗盘”,用于防止削波、标准化电平、优化信噪比,并在专业音频制作中提供关键指导。
写得还是有点乱,后面读者多的话,我再优化一下
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)