dBFSの計算方法は?


回答:


13

これは、1と-1の間の値に対して非常に単純です。

valueDBFS = 20*log10(abs(value))

16ビットなど、別の範囲の値がある場合は、次のようになります。

valueDBFS = 20*log10(abs(value)/32768)

(16ビットの符号付きは-32768から+32767の間の値を持つため、たとえば2 ^ 15 = 32768)

したがって、一般的な式は次のとおりです。

valueDBFS = 20*log10(abs(value)/maxValue)

コード例は、MATLABコードで提供されています。


1
これは技術的には正しいですが、ほとんどのdBFSメーターは実際にはヘッドルームを表示するため、これらの値の負の値を表示することがよくあります。
ビョルンロシュ

1
私が読んだすべての規格から、dBFSは厳密にはRMS測定であり、ピーク測定ではないようですので、これは正しくありません。
endolith

2

すべての規格では、dBFSをRMS測定として定義し、フルスケールの正弦波のRMSレベルを基準にしているため、計算は次のようになります。

value_dBFS = 20*log10(rms(signal) * sqrt(2)) = 20*log10(rms(signal)) + 3.0103
  • フルスケールの正弦波は0 dBFS
  • フルスケールの方形波は+3 dBFS

同様の単位dBovは、フルスケールDCまたは方形波が0 dBovとなるように、電力比との関係で定義されているため(RMS測定値でもあります)、計算は次のようになります。

value_dBov = 20*log10(rms(signal))
  • フルスケールの正弦波は−3 dBov
  • フルスケールの方形波は0 dBovです
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.