RecognitionListener の onRmsChanged(float rmsdB) を使用すると、root min squere dB で取得されます。0 から 100 のスケールに変換したいのですが、誰か助けてもらえますか?
1662 次
RecognitionListener の onRmsChanged(float rmsdB) を使用すると、root min squere dB で取得されます。0 から 100 のスケールに変換したいのですが、誰か助けてもらえますか?
音量のIMHO線形スケールはかなり役に立たない。
rms値は-120から60まで変化するため、0〜100のスケールに正規化する最良の方法は次のとおりです。
float volumeNo = (volumeDB+120)/1.8
ウィキペディアで少し調べて、これを使用しました:
10*Math.pow(10, ((double)volume/(double)10))