アプリ版:「スタンプのみでお礼する」機能のリリースについて

+1.0~-1.0の値を取る音声の波形データから音量を単位dBとして取得したいです。
どのようにすればいいのでしょうか?
また、もしこの条件がdBを得るのに十分でない条件なら必要な条件を教えてください。

A 回答 (1件)

音声の波形データの +1.0~-1.0 というのはV単位の電圧のことですね?


電圧波形のデータから音圧(dB単位)を計算するには、マイクの感度とアンプの利得が分かっている必要があります。それが分かっていれば、電圧(の実効値)は以下のようになります。
   電圧(V) = 音圧(Pa)×マイク感度(V/Pa)×アンプ利得(倍)
マイク感度の V/Pa という単位は、1Paの音圧で1Vの出力電圧(実効値)が出るという意味です。音圧 0dB というのは20μPaのことなので
   音圧(Pa) = 2×10^(-6)×10^{音圧(dB)/20}
になります( 1Pa の音圧は 94dB )。したがって元の音量が dB 単位のときは次式で計算できます。
   電圧(V) = 2×10^(-6)×10^{音圧(dB)/20}×マイク感度(V/Pa)×アンプ利得(倍)
逆に電圧の実効値から音圧を計算するには
   音圧 (dB) = 20*log10[ 電圧(V)/{ 2×10^(-6)×マイク感度(V/Pa)×アンプ利得(倍)} ]
になります。 log10 は自然対数です。

マイクの感度はいろいろな表記法があります。例えば -52 dBV/Pa なら、0 dBV = 1V のことなので、マイク感度は
   -52 dBV/Pa = 10^(-52/20) V/Pa = 2.5×10^(-3) V/Pa
です。マイクの感度が単に -70dB と書いてある場合は 0dB = 1 V/Pa という意味なので、マイク感度は
   -70 dB = 10^(-70/20) V = 3.16×10^(-4) V/Pa
となります。

電圧波形から実効値の計算式は
   電圧(V) =√{ ( 1/N )*Σ[ n = 1, 2, ..., N ] V(n)^2 }
です。N はデータ数、V(n) は電圧データです。データの範囲は基本周波数の整数倍になるようにしてください(基本周波数が分からないときはなるべく大きく)。
    • good
    • 1
この回答へのお礼

なるほど!詳しい説明ありがとうございました。
これでいろいろな事ができそうです。

お礼日時:2009/07/06 18:32

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています