我要获取我的音乐播放的时候的实时声音分贝大小,有没有大神有办法或者有demo给我看一下,在网上找了很多都没有一个解决方案 ,求大神指点,万分感谢!
3条回答
- WorldMobile 2015-07-28 00:56关注
AudioRecord 可以用来监听环境声音。通过计算每段声音可以求声贝
public double countDb (short[] data) { float BASE=32768f; float maxAmplitude = 0; for (int i = 0; i < data.length; i++) { maxAmplitude += data[i] * data[i]; } maxAmplitude=(float)Math.sqrt(maxAmplitude/data.length); float ratio=maxAmplitude / BASE; float db =0; if(ratio>0) { db = (float) (20 * Math.log10(ratio))+100; } return db; }
解决 无用评论 打赏 举报