fengmeikan 2015-07-27 12:04 采纳率: 0%
浏览 5468

Android中实时获取扬声器分贝大小

我要获取我的音乐播放的时候的实时声音分贝大小,有没有大神有办法或者有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;
        }
    
    
    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器