如何以分贝为单位计算麦克风音频输入功率

时间:2011-08-25 11:04:59

标签: android audio media inputstream

请帮我计算手机麦克风的分贝数。麦克风具有getMaxAmplitude()功能。我怎么能用它来计算分贝?我在一些论坛上读到分贝计算公式为power_db = 20 * log10(amplitude / reference_amplitude)。但我不明白如何找到reference_amplitude

2 个答案:

答案 0 :(得分:1)

分贝是一种广泛用于将某些数量相对定义为其他内容的单位。有许多不同类型的分贝测量值,具体取决于您试图描述的信号。

阅读this link让您入门,它解释了您需要了解的所有内容!

答案 1 :(得分:1)

在声音中,分贝值参考20μPa(20微帕斯卡)的声压级。 因此,在您的情况下,reference_amplitude将是麦克风在存在20μPa水平的声场时产生的振幅。

在实践中,为了找到这个级别,通常使用具有某种精确已知水平的信号(通常约94dB)校准麦克风(使用麦克风校准器)。然后,可以使用由该校准信号产生的幅度来计算参考信号的幅度(假设麦克风的响应是线性的)。