问题描述
如何从 maxAmplitude 计算分贝,我写了一个 android 应用程序来定期获取 maxAmplitude,我需要以分贝为单位向用户显示 o/p.
How to calculate decibel from maxAmplitude, I wrote an android application to get maxAmplitude at regular interval, I need to show the o/p to the user in decibels.
推荐答案
分贝是一个相对单位,它们表示您的信号相对于某个参考功率的功率.
Decibels are a relative unit, they express the power of your signal relative to some reference power.
如果您使用的是振幅,则公式为:
If you are working with amplitudes, then the formula is:
power_db = 20 * log10(amp / amp_ref);
(参见 http://en.wikipedia.org/wiki/Decibel#Field_quantities).
还要注意,最大幅度通常不是响度(甚至功率)的一个很好的指标.更典型的是,您应该测量信号的 RMS 功率,并且将其转换为 dB.
Note also that maximum amplitude is not usually a very good indicator of loudness (or even of power). More typically, you should measure the RMS power of your signal, and convert that to dB instead.
这篇关于从振幅计算分贝 - Android 媒体记录器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!