波形編集ソフトで音質を設定する「量子化ビット数」の項目の中に32bit Floatという選択肢が存在することがあります。

今回はこの32bit Floatがどのようなものなのか、どういう用途で使えるのかをお伝えしていきます。

そもそも32bit Floatって何?

32bit Floatを理解するに当たって、まずは量子化ビット数やダイナミック・レンジについて理解している必要があります。もし量子化ビット数やダイナミック・レンジがあまり分からないという方は、まずは下記の記事を先に読んでください。

参考:オーディオとは何かを正しく理解する

量子化ビット数には「整数」と「Float(浮動小数点数)」の二種類があります。

16bitや24bitのオーディオには整数のタイプしかありません。しかし、32bitのオーディオには「32bitの整数」と「32bitのFloat」の二種類があります。32bitと32bit Floatは全く別物なので混同しないようにしましょう。

まずは「32bitの整数」なんですが、これは24bitの整数よりさらに8bit高いので音量差を4,294,967,296段階で表現することができます。ダイナミック・レンジで言えば、32bit整数は24bitよりさらに48dB高くなります。つまり「32bitの整数」を簡単に言ってしまうと、24bitのオーディオの音質をさらに高めた形式であるということです。ただ、24bitのオーディオの時点で既に人間の聴覚のレベルを超えているので、24bitと32bitオーディオの音質の差は人間にはほぼ分かりません。

次に「32bitのFloat」を説明していきます。32bitのFloatは表現可能な単位が整数ではなく小数点なので、表現可能な単位が大幅に大きくなります。分かりやすく言うと、「音の劣化しなくなる」ということです。

難しい理屈は抜きにして、実例を挙げて説明していきます。

32bit Floatのオーディオはクリッピングしない

「16bit」や「24bit」や「32bitの整数」のオーディオを用意し、音量を大幅に上げた場合、0dBを超えた分に関してはクリップしてしまいます。

関連記事:オーディオは絶対にクリッピングさせてはいけない

0dBを超えてしまった後に音量を下げても、破綻してしまった波形は元には戻せません。Audacityを使って証明していきます。

通常、クリップしたオーディオは破綻する

audacity_00

Audacityを開き、PreferencesからQualityタブに行き、Default Sample Formatを16bitにします。

16bit_01

ドラムループをAudacityに取り込みます。

16bit_02

オーディオを40dB引き上げます。

16bit_03

音は完全に割れてしまいます。

16bit_04

音量を-10dBにしてみます。

16bit_05

音は一回潰れたら、引き下げても潰れたままです。

32bit Floatのオーディオはクリップしても音が復活する

32bitのFloatは16bitの時のように、0dBを超えたとしても音は破綻しません。つまり、0dBを超えてしまってもクリッピングしないのです。

audacity_01

Audacityを開き、PreferencesからQualityタブに行き、Default Sample Formatを32bit Floatにします。

32bit_01

ドラムループをAudacityに取り込みます。

32bit_02

オーディオを40dB引き上げます。

32bit_03

波形編集ソフトは0dBを超えた音は表示できないので波形は潰れているようには見えます。また、潰れた波形を聞いてみるとオーディオインターフェイスが音を24bitや16bitに変換してしまうので、音はクリッピングしているように聞こえてしまいます。

32bit_04

音量を-10dBにしてみます。おや?-10dBにしてもNew Peak Amplitude(新しいピークの音量)がまだ0dBを大幅に超えていますね。ということは32bit Floatオーディオは0dBを超えても超えた分をちゃんと記録し続けているということですね。

32bit_05

-10dBじゃまだ0dBを超えているようなので、音量は一気に-40.0dBにしてみます。-40.0と入れてやっとNew Peak Amplitudeが-0.1dBになりました。

32bit_06

なんと!音が元の波形に戻ってしまいました。これが32bit Floatの凄さです。

16bitオーディオの音量を下げまくってから音をノーマライズするとノイズだらけ

次は16bitで一旦音量を下げた波形をノーマライズで伸ばす実験をしてみます。

audacity_00

Audacityを開き、PreferencesからQualityタブに行き、Default Sample Formatを16bitにします。

16bit_01

ドラムループをAudacityに取り込みます。

16bit_11

音量を-50.0dBにしてみます。

16bit_12

ちょっとシャカシャカ音が聞こえるくらいで、音量はかなり静かです。

16bit_13

念のためもう一度-50.0dBにしてみます。

16bit_14

これはもう無音です。

16bit_15

ノーマライズをかけてみましょう。

16bit_16

音量が上がりました。聞いてみると、聞いていられない。。ノイズだらけな音質です。

32bit Floatのオーディオの音量を下げまくってから音をノーマライズすると音は元通り

audacity_01

Audacityを開き、PreferencesからQualityタブに行き、Default Sample Formatを32bit Floatにします。

32bit_01

ドラムループをAudacityに取り込みます。

32bit_11

音量を-50.0dBにしてみます。

32bit_12

ちょっとシャカシャカ音が聞こえるくらいで、音量はかなり静かです。

32bit_13

念のためもう一度-50.0dBにしてみます。

32bit_14

これはもう無音です。

32bit_15

ノーラマイズをかけます。

32bit_16

なんと!波形が元通りになりました。音質劣化はありません。

まとめ

32bit Floatを使えば音量が0dBを超えても問題がないことが分かって頂けたと思います。

音量を下げようと上げようと、最終的なミックスを作るときに適切な音量にすればまったく問題がないのです。