gpt4 book ai didi

java - 如何从 Java 中的麦克风获取 dB(或任何类型的音量)级别?

转载 作者:行者123 更新时间:2023-11-30 09:49:24 25 4
gpt4 key购买 nike

如果我问的是已经问过的问题,我真的很抱歉,但我到处都找遍了,没有任何结果。

我正在尝试使用 java sound api 即时读取房间中的当前音量。我注意到我从麦克风混音器获得的控件对此没有帮助,据我所见,人们建议从 TargetDataLine 读取一小段声音并使用均方根算法检查音量。

真正的问题 :)问题是,每当我在样本上运行 rms(我为此使用 PCM_SIGNED,44100Hz 16 位),当没有背景噪音时,我得到的值范围在 20-30 之间,当我说话/喊叫/说话时,我得到的值范围在 20-30 之间。(我尝试从大小为 100-44100 的缓冲区中读取该行缓冲区大小越小,rms 越低 - 但总的来说 - 安静约为 10,噪音约为 30。)

问题是,当我播放刚刚录制的内容时,您可以完美地听到所有内容,并且没有背景噪音。

tl;博士谁能(请)告诉我一种从字节数组读数(PCM SIGNED 44100Hz 16 位)中判断音量的方法?

提前感谢您的回答!

最佳答案

参见 this reply对于 RMS。

关于java - 如何从 Java 中的麦克风获取 dB(或任何类型的音量)级别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5808913/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com