分析音频文件过程中,发现16bit的PCM文件,采样值显示为2900,Audition上分贝却显示为-21dB,为啥?
本着知其然,更要知其所以然的原则,进行了一番查阅分析。原来,dB的d即“分”(deci-)指十分之一,B即贝,是贝尔的缩写(bel,纪念发明家亚历山大·格拉汉姆·贝尔)。
那为什么好好的线性域不用,要用10倍对数域呢?显而易见的好处是便于表示有小间隔内,数值的量级动态范围大,数值太大无法直观比较,转换到对数域10倍/20倍对数,用更小的数来表达,便于人们直观比较。
根据维基百科定义,分贝dB的转换公式为:
10lg(Ps / Pn)
20lg(Prms / Pref)
我被这两个公式给迷糊住了,有时候是用第一种,如求SNR信噪比,有时候又是用的第二种,如电路中电压。
分析公式可知,核心来自于10lg(Ps / Pn)
,由于它是能量的比值或者由功率比定义的,10倍时用的是功率比,即数值的平方。如果我们不想求能量,想直接从幅值单位来处理的话,就需要调整下公式,推导过程如下:
10lg(Ps / Pn)
= 10lg(Val^2 / Ref^2)
= 10lg((Val / Ref)^2)
= 20lg(Val / Ref)
= 20lg(Prms / Pref)
于是,就能得到采样值/幅值的比值时,对应的dB转换公式。所以,我们也就知道了前文两个公式的用途:
说回初始问题,那么现在PCM文件中采样值到dB分贝是如何转换的呢?
过程如下:
20lg(Prms / Pref)
变换到db所以问题引入就可以得到解答:
下面以24bit的PCM数据为例,结合具体图例,进行类似分析。
实例分析:
幅值域和分贝对比,上下部都有-6db:
综上,分贝本质是能量比值(无单位)的对数域变化,缩小对应尺度,便于人们直观观察。只是对无量纲的数据,转换了下尺度,带来的好处是更好的观测动态范围极大的数据,不同量级多的。
读到此处,分贝你怎么看?
问题1:常用dB单位dBFS的认识,绝对尺度是多少?
Full Scale