音视频博客
+ -

音频DB概念

2022-11-14 11 0

DB

音频文件数据的垂直标度为分贝。如果没有校准或参考测量,其计算公式为:

dB = 20 * log10(amplitude)

这时幅值这义为(0,1]之间的值,那么其结果为(-∞,0],其中为1时表示最大振幅。

但是我们一般的数据采样用的是AD采样,故AD会有一个最大采样值,最小值当然就是0了。如果是16位AD,那么最小值为0,最大值为65535即0xffff。但是由于振内振是上下振的,故中点为32767,故区间范围为-32768到32767之间。因此为了标识我们的数值,需要进行归一化处理。
如我们的采样值为14731,那么:

amplitude = 14731 / 32767
          = 0.44

dB = 20 * log10(0.44)
   = -7.130946

另外,我们可以通过分贝的公式可以看出,当为+6DB时,表示的是对原声放大2倍。这是因为:

6db 约等于 20 * log10(2) = 20 * 0.30102999566398119521373889472449 = 6.0205999132796239042747778944899

常见的DB值:

  • -80dB=减少至1/10000倍
  • -60dB=减少至1/1000倍
  • -40db=减少至1/100倍
  • -20db=减少至1/10倍
  • -6db=减少至1/2倍
  • 0db = 原声不变
  • +6dB=增大至2倍
  • +20dB=增大至10倍
  • +40dB=增大至100倍
  • +60dB=增大至1000倍
  • +80dB=增大至10000倍

可以看到,对于声压来说每20dB就是10倍的关系,我们可以通过记住这些值来忘掉计算公式。不过如果你实现不会的话,也可以用电脑自带的计算器来计算,当然你数学好,也可以自己心算。
科学计算器

另外,其实DB概念的引入其实就是为了引入倍数关系,因为这些十进值的最大和最小值已经不方便了。所以只能说是原来的多少次方,所以就引入了一个专门的概念,DB.

再另外,我们常用的PCM如16位数据,其使用的是short类型,其取值为-32768~32767之间,这时如果取值超过50db的,基本上都会破音。

0 篇笔记 写笔记

UAC Feedback端点
下面转一段对USB feedback的理解:这段时间一直在做USB Audio Device(UAC)设备的开发工作。由于UAC采用的是isochronous endpoint来传输数据,对时钟的要求较高。但无奈我们的嵌入式平台的时钟并不准,数据同步就成了问题。经过研究,发现只能使用异步模式来解决这......
USB音频设备UAC数据同步方式
对于USB扬声器,USB主机负载发送音频数据,而USB设备负责接收来自主机发送过来的数据,数据的传输方式采用的是同步方式。由于USB主机和USB设备时钟同步的问题,会有一定的偏差,长时间的累积会导致主机和设备之间数据的不同步。如USB主机可能会发送数据相对USB设备播放数据过快,导致USB设备来不及......
高速USB模式下 UAC2.0
UAC2.0 Win10原生驱动已经支持,同时UAC2.0较UAC1.0有天生的高带宽、低延时的优势。支持32bit 384k的音频格式,同时支持USB High Speed!为什么要在高速USB模式下运行UAC2.0???UAC1.0 不支持 32bit音频格式UAC2.0 在USB 全速模式......
音频DB概念
DB音频文件数据的垂直标度为分贝。如果没有校准或参考测量,其计算公式为:dB = 20 * log10(amplitude)这时幅值这义为(0,1]之间的值,那么其结果为(-∞,0],其中为1时表示最大振幅。但是我们一般的数据采样用的是AD采样,故AD会有一个最大采样值,最小值当然就是0了。如......
作者信息
USB中文网
B站搜索 站长漫谈 看视频。
pnpon内核开发网,USB中文网,
busrom硬核技术网站长
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

您的支持,是我们前进的动力!