32-bit Float セッション、音源の理解は非常に難しい。
追記: 2025/12/02
例えば、32-bit Float のダイナミックレンジの理論値で言えば、いろいろな DAW メーカーが 約1680dB、約1679dB、約1638dB、などと、まず メーカーでも表現が錯綜 し、そのダイナミックレンジが然も DAW 上で扱えるかのような表現をしていますが、これは 32-bit Float で表現が可能な dB 範囲のことです。
そして扱える範囲も、資料によってまちまちですが、簡単に計算で割り出すなら、255*6.02 = 1535 dB です。そこから 144 dB を足して、1679 dB と説明している方もいます。
そもそもダイナミックレンジという表記が理解をややこしくしていて、AES 2008 でプレゼンを行った方の資料によれば 32-bit Float では整数として扱える範囲は 約150.5dB です。また瞬間ダイナミックレンジという言葉を使用しています。詳しくは →https://dsp.stackexchange.com/questions/38832/more-instantaneous-dynamic-range-with-fixed-point-or-floating-point
(※これは SN 比の相対値です。23bit の仮想部と符号ビット、ケチ計算合わせて 25-bit、これに丸め誤差 1-bit を含めて 26-bit で算出した、156dB が SN 比の理論値という資料もあります。どっちが整数ビットとして正しい値なのかよくわかりません。有効ビット数 25-bit というのが実際の値に一番近いと仮定して話を勧めます。)
確かに、32-bit Float の信号を ±750dB くらいしてもオーバーフローやアンダーフローせず、元の音源を復元できますが、±750dB の信号をマスターチャンネルで 0dBFS 付近の領域まで信号を調整しなくては、音が聞けるというレベルでなく、16**dB のダイナミックレンジと言い張るのは、非常に疑問で実用数値ではありません。
また、32-bit Float の SN 比は、音量を 0dBFS 以上や -150dBFS 以下に動かしても、どこをとっても理論的には 150dB となるため、ダイナミックレンジが 16**dB というのは正しい表記とは言えません。非常に難しい話なので、FFT Example と以下の図を参照してください。

ちなみに、簡易的な計算だと 32-bit Float の SN 比 は「SN 比 ≒ 6.02 × 24 + 1.76 ≒ 146 dB」となります。Pro Tools が -146 dBFS 以下を切り捨てたのはこの単純計算からかもしれません。また、32-bit Float の最小値を求めると、約 −758.6 dB であり、最大値を求めると約 +770.6 dB です。

さっきから SN 比と言っていますが、ここでは「SN 比 = 実用ダイナミックレンジ」です。SN 比は 150dB だから実用ダイナミックレンジは 150dB でいいと思います。確かにクリッピングする段階と最小音の段階は 16**dB ほどありますが、たとえ + 500dB の音源があっても、その領域でも SN 比は 150dB 程度になってしまいます。だから実際に利用できるダイナミックレンジは 32-bit Float のどこでも 150dB 程度じゃんってなります。
32-bit Float は 16**dB ほどのダイナミックレンジがあるけど、ノイズの下限は理論的に 150dB 程度しかのです。これだから近年の DAW の信号の扱いについて理解が深まりません。通常の 24-bit データであれば、ダイナミックレンジが 144.5dB が理論値で、デジタルの純粋な信号であれば SN 比も 144.5dB になるのですが、Float だとダイナミックレンジの解釈が拡張してしまうので、SN 比の議論がされてないことが問題です。
また、SN 比と ダイナミックレンジを間違えて教えている DTM スクールのページもあります。間違えて覚えちゃった人は、今 覚え直しましょう。以下の図は間違いの図です。このように覚えていたら直しましょう。
ダイナミックレンジはシグナルが入力されていない状況で扱える最大値と最小値までのことであり、SN 比は信号を入力した時の最大値からノイズ (フロア) や歪みまで、ですが、デジタル領域でデジタルの純粋な信号を扱う場合であれば「ダイナミックレンジ = SN 比」が成立します。これはアナログ信号の話とは違うのであくまで 32-bit Float の信号運用の話です。
もちろん、デジタルの信号でもノイズがあるものはあるので、そうすると SN 比はそのデジタルの信号に依存するので SN 比 ≠ ダイナミックレンジ にはなりますが、このダイナミックレンジの話と SN 比の話はあくまで DAW の運用側上の数学的な解釈の話をしています。

この Dynamic Range と SNR の関係について、間違いだ、と言われる方がいましたので補足ですが、現在話をしているのは、32-bit float システム上の Dynamic Range の話で、32-bit float 下限と Signal-Noise 比の話をしているので、Dynamic Range = SNR が説明で成り立ちます。もちろん、Dynamic Range の定義ツゲも問題もありますが、我々の使うデジタルシステム上では Dynamic Range = SNR が成り立つのは自然のことです。アナログ領域をまたぐものは異なります。補足: https://www.ap.com/technical-library/signal-to-noise-ratio-snr-dynamic-range-and-noise/
話を戻しますが、DAW 出力の 32−bit Float の信号はオーディオドライバが受け取ったら 下位 8−bit を切り捨てて 24−bit Fixed に変換し 24−bit DAC に送っています。この時の変換では量子誤差は出ませんが、下図の画像では測定してみると、発生しているのが観測できました。
もしかすると、これは単にシグナルの歪みか、DAW が 64-bit Float から 32-bit float に変換した時の量子誤差である可能性があり、測定側の問題かもしれません。
DAW 上で信号をフェーダーで -60dBFS 以上下げているのでその分の解像度誤差、あるいは DAW 出力を内部仮想ドライバで測定ソフトに入力しているのでその仮想ドライバの問題が考えられる。測定時期は 2019 年、2025 年現在、すべてが Float 対応であるがゆえ、内部的に測定しても誤差は検出されなかった。
ProTools は -146dB 以下の音はマスターフェーダーに出力すらされていませんでした。おそらく 32-bit Float の SN 比で表せない音量以下は切り捨てしていると思います。だから ProTools の場合は 32−bit Float でも -146dB 以下の整数は切り捨て、と考えるべきなのでしょうか。

Studio One は -192dB の信号でもちゃんとマスターから出力はされていました。Logic はまず、32−bit Float 音源を読み込めないので論外です (2025 年現在は読み込めます)。Cubase は仕事で使わないので調べていません。

実際に録音する音は 24−bit 整数なので、144dB 以下は表現できないし、ADC の有効ビット数を考えると、120dB くらいが実用なんですが、例えば、32−bit Float で動作するシンセサイザーの場合、どのように考えればいいのでしょうか?
結局、この場合も 150dB に計算できない雑音、ノイズが溜まると考えて良さそうだ。https://forum.juce.com/t/vst-2-4-double-floats/3985/7
ちなみに、0dBFS 付近では 32−bit Float を 24−bit DAC に送っても量子誤差はほぼ発生しない。32−bit Float を再生中に DAC のスペクトラム測定を行ってみたが、結局誤差が発生しても DAC の分解能ではほぼ無視できるレベルであった。結局、普通に使っている分には本当に何も考えなくて良さそう。










