我正在尝试获取音频数据线的音量,并且方法getLevel()返回0.0

API文档在这里http://docs.oracle.com/javase/6/docs/api/javax/sound/sampled/DataLine.html#getLevel()

如果有人能提供任何帮助,将不胜感激。

谢谢。

最佳答案

不久前,我遇到了类似的问题,环顾四周找不到很好的解决方案-它似乎可以在某些平台上运行,但并不可靠。

我从来没有弄清楚原因,但是我的解决方法是从数据线中读取字节,然后通过RMS(均方根)计算最后一个字节(例如100ms)中的所有字节(取决于您要的内容)这是一个简单的代码,但是做得很好。

10-04 17:51