一、mic及声音的指标:
(1)声音的分贝(dB)
分贝 Decibel
分贝(dB)是一个对数单位(logarithmic unit), 它和很多常见的单位如“米”,“秒”或者“千克”等物理单位是不同的,它并不能直接用来描述一个物理量的大小或者多少,它表示的是两个相同单位物理量的比值。分贝经常用来描述声音,如超过50dB的噪声就会影响人的睡眠和休息,但分贝不仅仅用来描述声音,它还被用来描述电子学等其他领域的物理量,如描述信号强度的衰减 、信噪比等等。
前面提到分贝表示的是两个物理量的比值,作为分母的那个量通常是一个标准的基准值(standard reference value),分贝描述的就是作为分子的物理量相对于这个基准值的大小,分贝的计算公式如下:
dB=10×log10(valuevalueref)
其中,valueref是基准值。在使用分贝表示物理量基准值是非常重要的,基准值用分贝表示的话是0dB。
描述声音的分贝
分贝可以描述很多的物理量,本文主要介绍分贝来描述声音的信号的强弱。
用来描述声音强度的物理量有很多:声压,功率,产生声音信号的电压等,使用不同的物理量来表示声音的强度,其得到的分贝也是不同的。
dB(dBSPL)
声音本质上来说是一种波,通过空气传播,传到人耳朵里引发鼓膜的振动。所以,声音的大小,实际就是对这种振动强度的反映。而由于空气的振动会引起大气压强的变换,可以使用压强变化的程度来描述声音的大小,这就是“声压(SPL,Sound Pressure Levels)”概念,其单位是Pa。例如:1米外步枪射击的声音大约是7000Pa;10米外开过汽车大约是0.2Pa。
使用声压作为测量量的分贝就是dBSPL,通常用来表示声音大小的dB多说指的就是dBSPL。声压和声音大小的关系,可以使用如下公式表示
其中,I是声音的强度;P是声压;ρ是空气阻力,通常在室温下,空气阻力大约是400。
分贝的计算还需要一个选择一个特定的声压值作为“标准值”(0分贝),该值是固定的。有了这个基准值后代入上面的公式:
其中,P是声压测量值;Pref是标准值(0dBSPL)。这里选择的声压标准值为2×10−5Pa,20μPa,是人耳在1KHz这个频率下能听到的最小的声音,大致相当于3米外一只蚊子在飞的声音。将标准值代入上式:
dBm,dBu,dBV
前面根据声音的振动,在传播的过程引起大气压强的变化,使用声压作为测量量来计算声音的分贝值。除了自然产生的声音外,现在大多数的声音都是使用电信号作为存储和传播的载体的,例如电视广播,各种音频文件等。dBm,dBu,dBV是使用和电信号相关的物理量作为被测物理量,计算其产生声音的分贝值。
dBm是使用产生声音信号的功率作为被测物理量,选择1毫瓦(1mW)作为基准值,计算分贝值。计算公式:
在物理,功率P可以有电压V和电阻R计算得到
P = \frac{V^2}{R}
由上面的公式可以得到∗∗dBu∗∗,使用电压作为测量量,计算声音的分贝值。在十九世纪三十年代,音频设备的输入电阻都是600欧姆,也就上面公式中的R=600欧姆。在dBm中,使用1mW作为基准值,那么在R=600欧姆时就可以得到此时的电压为∗∗0.775V∗∗。所以,∗∗dBu∗∗是以电压作为测量量,计算声音的分贝值,选择的基准电压为0.775V。计算公式:
dBu = 20 \times \log_{10}(\frac{V}{0.775}),V是被测电压
∗∗dBV∗∗又是咋回事呢。在上上个实际音频设备的输入阻抗都是600欧姆,是固定不变的。但是到了现代,就有了更高阻抗的设备,例如1000欧姆,这样再选择0.775作为电压的基准值,显然是不合理的。所以,就有了一个新基准值1V。本质上dBu和dBV是没有区别的,都是选择电压作为被测单位,只是选择的基准值不同罢了。∗∗dBV∗∗仍然是以电压作为被测量,计算声音的分贝值,选择1V作为基准值。计算公式:
dBV = 20 \times \log_{10}(\frac{V}{1})
dBFS
前面的几个被测量都是模拟量,在数字时代更多的音频分贝表示是dBFS。dBFS的全称为Decibels Full Scale,全分贝刻度,是数值音频分贝值的表示方法。和前面几个不一样的时,dBFS的基准并不是最小的或者是中间的某一个值,是最大的那个值!也就是说0dBFS是数字设备能达到的最大值,除了最大值外都是负值。
以数字音频的sample为16位无符号为例,16位的无符号的最大值为65536,因此dBFS的计算公式:
dBFS = 20 \times \log_{10}(\frac{sample}{65536})
这样,最小的dBFS = 。也就是说16位无符号音频的动态范围为0 ~ -96dBFS。
dBFS 和 dBu之间的转换
dBu是度量模拟信号的,而dBFS是度量数字信号的,并且dBFS不会用于度量模拟信号,所以没有在dBu和dBFS之间没有统一的转换公式,依赖于具体的数字设备。在dBu和dBFS转换时,需要规定一个峰值电压,该电压下产生的音频信号经过AD转换后得到的sample为0dBFS。例如,+18dBu对应于0dBFS,在该条件下 求 xdBu对应于ydBFS,那么就有
总结
本文主要介绍和声音相关的分贝概念,分贝不同于其他的物理单位,表示的是相同物理量的比值,其具体的值依赖于选择的被测量。
- dBSPL,通常所说的dB,使用声压作为被测量,选择作为基准值。
- dBm,使用功率作为被测量,选择1mW作为基准值。
- dBu,使用电压作为被测量,选择0.775V作为基准值。
- dBV,和dBu一样,使用电压作为被测量,选择1V作为基准值。
- dBFS,和上面的量都不相同,上面的量都是测量模拟值的,dBFS是测量数字音频的,其选择的基准值为sample的最大值为0dBFS,其他的值都为负值。
dBFS和模拟量之间的转换,例如dBu,需要规定一个基础的对应关系。例如+18dBu 对应于0dBFS,则ydBFS = x - 18。
介绍几个数字麦克风的常用指标:
1、最大声压级 Acoustic Overload Point ,AOP
2、灵敏度 Sensitivity
3、本底噪声 Noise floor
4、信噪比 Signal to Noise Ratio,SNR
5、动态范围 Dynamic Range
一、最大声压级 Acoustic Overload Point ,AOP
麦克风在总谐波失真小于10%时所能承受的最大声压级,又叫声过载点。常见的数字麦克风最大声压级为120dB SPL,低灵敏度的可以达到130dB SPL。
二、灵敏度 Sensitivity
数字麦克风灵敏度定义为:在94 dB 的声压级(SPL)下,用1 kHz 正弦波进行测量,麦克风在该输入激励下的数字输出信号幅度,即是灵敏度。由于数字麦克风最大输出信号幅度一般归一化为1(满幅值为1,即0dB),因此其输出信号幅度在归一化后仅具备相对值的意义,其单位记为 dBFS(dB Full Scale),代表相对于数字满量程的分贝数。
例如,某数字麦克风在94 dB SPL激励下,输出的信号幅值为-26dBFS,那么该麦克风灵敏度即为 -26dBFS。同时不难理解,当麦克风输出幅值为满幅值0dBFS时,其输入的激励信号应比原输入激励信号(94dB SPL)高26dB,即94dB+26dB=120dB SPL,这正是该麦克风的最大声压级,为120dB SPL。
因此,数字麦克风灵敏度和最大声压级存在直接关系,即94(dB SPL)-Sensitivity(dBFS)=AOP(dB SPL)。
三、本底噪声 Noise floor
数字麦克风的固有噪声,即无输入激励时的输出信号大小。
例如,某常见的麦克风本底噪声30dB SPL ,最大声压级为120dB SPL,那么换算为数字麦克风归一化的本底噪声级为 30dB-120dB=-90dBFS
四、信噪比 Signal to Noise Ratio,SNR
数字麦克风在输入激励为94 dB SPL下的输出信号幅值与输入激励切断时的输出信号幅值(本底噪声)之比。
例如,某数字麦克风本底噪声级为30dB SPL,那么其信噪比为 94dB-30dB=64dB。
也可以归一化的dBFS单位来计算,结果一致:以该麦克风最大声压级120dB SPL为例,分别计算其归一化灵敏度为94dB-120dB=-26dBFS,和归一化底噪为30dB-120dB=-90dBFS,得最终信噪比为-26dBFS-(-90dBFS)=64dB。
五、动态范围 Dynamic Range
是指麦克风输出最小信号和最大信号之差。足够大的动态范围能够最大程度保留原始音质而不发生失真。
例如,某数字麦克风最大声压级为120dB SPL,本底噪声为25dB SPL,那么该数字麦克风最佳的动态范围至少应当大于120dB-25dB=95dB。如果采样量化精度使用16bit,那么对应的最大动态范围约为20*log10(2^15)=90dB 小于95dB,意味着无法发挥该麦克风的最佳录音性能,原因在于量化精度不够而引入的量化噪声高于麦克风本底噪声,降低了麦克风信噪比。
为什么说降低了信噪比,回顾信噪比的定义,可计算该麦克风的信噪比得SNR=94dB-本底噪声25dB=69dB。而按照16位量化精度,其动态范围只有90dB,那么最小可描述的归一化本底噪声级别为-90dBFS,对应本底噪声压级=最大声压级(120dB SPL)+归一化本底噪声级别(-90dB)=30dB SPL > 实际本底噪声 25 dB SPL。
综上,在选用数字麦克风时,应当认真分析研究麦克风的各项性能指标,合理选取符合应用场景需求的产品并正确配置相关参数,发挥最优录音性能。
二、mic数据及其传输:
模拟mic和数字mic:
大多数情况下,模拟mic是驻极体的,数字mic是mems;数字mic相对于模拟mic,内部集成了ADC,所以输出的为数字信号。
I2S速度快,专门用于传音乐。
从MCU往Codec传音乐数据,一般使用I2S。包含主时钟、左右声道时钟、正反两根数据线。
如下图的I2S接口的时序,最典型的特征是LRCLK,用于区分左右声道的时钟。
音频接口设计详解!智能硬件设计,I2S、PDM、TDM选什么接口?
I2S接口的时序
PCM/TDM,主要用来传语音
这里讲的PCM不是PCM编码,而是PCM接口。和I2S差不多,也是4根线,通常用于AP处理器和通信MODEM之间传输语音数据(就是双向打电话的数据)。
AP处理器和蓝牙之间也是通过PCM来传输语音数据,打电话的蓝牙数据走的是PCM,放音乐的蓝牙数据走的是串口(不是PCM)。
I2S只能传2个声道的数据,PCM可以传多达16路数据,采用时分复用的方式,就是TDM。像现在最流行的语音智能音箱的7麦克风矩阵,一般都是用TDM来传的数据,同时可以传输7路麦克风输入和3路以上的音频反馈信号。
如下图是某智能音箱,7个麦克风通过5个ADC,接入一组TDM接口上,传输给AP处理器。
音频接口设计详解!智能硬件设计,I2S、PDM、TDM选什么接口?
某智能音箱TDM接口(局部)
PDM,只有2根线,传音乐,编码方式和I2S不同。
很多数字麦克风使用的PDM接口,有数据和时钟两根线。PDM接口和I2S最大的区别是编码方式不同。
音频接口设计详解!智能硬件设计,I2S、PDM、TDM选什么接口?
PDM和I2S接口的数字麦克风