3段階の音声測定パイプライン
ブラウザ標準のHTML5 Web Audio APIを利用し、音のキャプチャから解析・描画までを瞬時に行います。
1. マイク音声の入力取得
「測定開始」をクリックすると、navigator.mediaDevices.getUserMedia を通じてマイクアクセスを要求し、非圧縮データを取得します。
2. RMSエネルギーと周波数解析
連続した音声データを解析ノードへ通し、60 FPSで実効値(RMS)と高速フーリエ変換(FFT)スペクトラムを算出します。
3. dB変換と滑らかなメーター制御
RMS値を対数計算式 (dB = 20 * log10(RMS) + Offset) でデシベルに変換し、物理的な減衰制御で針のブレを抑えて描画します。
デシベル(dB)の数学的基礎
デシベルはメートルやグラムのような絶対単位ではなく、人間の最小可聴値(1 kHzで20 μPa)を基準とした対数比率です。
デシベルの主な法則:
- +3 dB の増加: 音の物理的エネルギー(音響パワー)が2倍になります。
- +10 dB の増加: エネルギーが10倍になり、人間の耳には約2倍の大きさに感じられます。
- +20 dB の増加: エネルギーが100倍になり、約4倍のうるささに感じられます。
100% 端末内処理の安全設計:
すべての計算はブラウザのメモリ内でのみ実行され、音声がファイルとして保存されたり通信されることは一切ありません。