2

すでに質問されていることを質問している場合は本当に申し訳ありませんが、どこを見ても何も見つかりませんでした。

JavaサウンドAPIを使用して、部屋の現在の音量をオンザフライで読み取ろうとしています。マイク ミキサーから取得したコントロールが役に立たないことに気付きました。私が見たところ、TargetDataLine から小さな音の塊を読み取り、二乗平均平方根アルゴリズムで音量をチェックすることを提案する人がいます。

実際の質問:)問題は、サンプルでrmsを実行するたびに(これにはPCM_SIGNED、44100Hz 16ビットを使用しています)、バックグラウンドノイズがない場合は20〜30の範囲の値を取得し、話したり叫んだりすると最大60の値を取得します/話。(100〜44100のバッファサイズから行を読み取ってみましたが、バッファサイズは小さくなりましたが、rmsは低くなりましたが、全体的に静かで約10、大きなノイズが約30です。)

問題は、今録音したものを再生すると、すべてが完全に聞こえ、バックグラウンド ノイズがないことです。

tl;drバイト配列の読み取り値(PCM SIGNED 44100Hz 16bit)から音量を知る方法を誰か(お願いします)教えてもらえますか?

答えてくれてありがとう!

4

1 に答える 1

2

RMSについては、この返信を参照してください。

于 2011-04-27T18:59:59.677 に答える