当我使用 RecognitionListener 的 onRmsChanged(float rmsdB) 时,我以 root min squere dB 得到它。我想将其转换为 0 到 100 的比例。有人可以帮忙吗?
问问题
1662 次
当我使用 RecognitionListener 的 onRmsChanged(float rmsdB) 时,我以 root min squere dB 得到它。我想将其转换为 0 到 100 的比例。有人可以帮忙吗?
恕我直言,音量的线性刻度非常没用。
由于 rms 值从 -120 到 60 不等,将其标准化为 0-100 范围的最佳方法是:
float volumeNo = (volumeDB+120)/1.8
我在Wikipedia中进行了一些调查,并使用了这个:
10*Math.pow(10, ((double)volume/(double)10))