header

ビット・レートとバス幅

DAWでマイクやラインの信号を録音するとき、入力信号されたアナログ信号はA/Dコンバータによりデジタル・データに変換されます。

早い話、入力信号の電圧を一定間隔で測ることで、連続する値として記録するわけです。信号波形を方眼紙のマス目に落とし込んだような図は、どこかでご覧になったことがあるかも知れません。

おさらいがてら、次の2つの語句を再確認しましょう。

  1. ビット・レート…測定する瞬間瞬間の電圧を測る、タテ軸の解像度。ビット・レートが高くなるほど、方眼紙のタテの目が細かくなる。1ビット増えるたびに解像度は2倍に。2ビットで4倍、8ビットで256倍に。
  2. サンプル・レート…ヨコ軸の解像度。一秒当たりの測定回数が多いほどヨコの目が細かくなる。

ここまでの説明は、多くのコンバータやDAWが使用する「パルス符号変調(PCM)方式」に関するものです。SACDなどが使用する「DSD方式」は、まったく異なる手法で信号をデジタル化します。

ビット・レートの解像度

DAWユーザであれば、16/24ビットという表現は馴染みがあるでしょう。
ご存知のように、CDはサンプルあたり16ビットの解像度で収録されています。 いわゆるハイレゾ音源は、大抵24ビットで配信されています。また、執筆時点では業務用A/D、D/Aコンバータの多くは24ビットが上限です。

デジタル・オーディオで使用される16/24ビットは、正確には「符号付整数」とよばれる数値として扱われます。これは、プラス、マイナスの範囲を持つ整数値です。

たとえば16ビットであれば、先頭の1ビットは「符号」、つまり「+」「-」のいずれかを表し、残りの15ビットが整数を表します。

※「符号なし整数」というのもあります。0以上のプラスの値しか表現できない代わりに、同じビット長で表せる最大値は「符号付き」の2倍です。

表現可能な範囲は以下の通りです。

  • 16ビット: -32,768 ~ 32,767
  • 24ビット:-8,388,608 ~ 8,388,607

1ビット増えるたびに表現できる解像度は2倍になりますので、24ビットは、16ビットに比べて、ざっと256倍細かい値が表現できます。
ただし、いずれも0.5といった小数は表現できません。

では、32ビットはどうでしょう。実はこれは、先ほどの16/24ビットとは根本的に性質が異なります。

先ほどの16/24ビットが符号付整数であったのに対し、32ビットは「浮動小数点数」、または32 bit floatといいます。

この「浮動」というのがポイントです。なにが「浮いて動いて」いるのかというと、数値に対して小数点を打つ場所です。

これにより、16ビットや24ビットのオーディオファイルでは表現が不可能な、123.45や、0.000012345といった小数値も表現可能になります。(この例で小数点を除く数値部「12345」は共通ですが、小数点の位置のみ変化している点にご注目ください。)
※実際は2進数のため、処理は若干異なりますが、概念を説明するため簡略化してあります。

16/24ビット符号付整数から32ビット浮動小数点数に変換するときは、元の上限、下限がそれぞれ +1.0、-1.0 に対応します。

浮動小数点数では -1.0 ~ +1.0 の範囲外にある数値も取り扱えます。 例えば、+1.0 より 0.1 だけレベル・オーバーしてしまっても、+1.1 という値として扱えばよいわけです。ですので、トラックやAUXバスの出力がで0dBFSを越えてしまっても、マスターバスを出る(=D/Aコンバータに送られる)までに、また -1.0 ~ +1.0の範囲に戻してやれば、音がクリップすることはありません。もうお判りのように、これは32ビットの方が器が大きいからというわけではなく、小数を扱えるという性質に由来します。

ここでいう「32ビット(浮動小数点数であれば)マスター・バスを出るまでレベル・オーバーしてもよい」場面というのは、トラックのバウンスやWAVファイルの書き出しも含みます。

DAWにおいてトラックのピーク・メータに「6dBオーバー」と表示されることがありますが、もしバスが16/24ビットであれば、取り扱える最大値をオーバーしたことは判っても、そもそも何dBオーバーしたかは計算のしようがないことがわかるかと思います。

ただし、32ビット浮動小数点数で表現できる範囲のうち、大部分はDAWなど音楽編集では使用されません。これまで説明したように作業はおおよそ -1.0 ~ +1.0 の範囲で行われますので、たとえば 123,450,000.0といった大きな値が使用される状況は、ちょっと考えられません。

※浮動小数点数が非常に小さい数字を表現できることからもわかるように、0に近付くほど解像度が高くなる性質があるため、浮動小数点数は「方眼紙」のマス目の幅が均等ではありません。

制作時のビットレート管理

DAWのプロジェクトを管理するとき、ムダに品質を損なうことなく、また必要以上のストレージ消費を避けるためには、まず以下を把握する必要があります。

16/24ビット(符号付整数)が使用される場面

  • A/Dコンバータから入力された信号
  • A/Dコンバータから録音された音(マイク、ライン入力など)
  • D/Aコンバータに出力される信号

32ビット浮動小数点数が使用される場面

  • 一般的なDAWのバス(トラック、AUX問わず)
  • VSTプラグインの出入り口(エフェクト、シンセともに同じ)

※ProToolsの9以前のバージョンは48bit 符号付整数バスを使用していました。

上記のうち、変換が必要になる場面では、特に意識せずともDAWが自動的に処理してくれます。
要約すると以下の図のようになります。

録音されたオーディオ・ファイルは、再生時にDAWが32ビット浮動小数点数に変換してくれるので、A/Dコンバータの設定以上のビット・レートで音声を記録することは、ストレージ容量を消費するばかりでメリットはありません。
※唯一の例外は、VSTエフェクトの「掛け録り」などを行う場合です。

図中、フリーズ・トラックが2つあります。フリーズ・トラックを16/24ビットで書き出すと、VSTエフェクトやシンセの出力(32ビット)を一旦ダウン・コンバートすることになり、信号は確実に劣化します。逆にフリーズ・トラックを32ビットで書き出すと、理論上劣化は起りません。 これはバウンス・トラックについても同じことがいえます。

ミックス・バス(マスター・バス)を出た音声は、最終的にDACに送られる直前に16/24ビットに変換されます。

DAW内でプロジェクトを新規作成するとき、おそらくビット長を16/24のいずれにするかを尋ねられるでしょう。ここでの設定は、あくまで図中両端の16/24ビット領域に適用されるもので、途中のバスはこの設定とは関係ありません。

今度は、ミックスしたファイルを書き出してマスタリングに出す場合を考えてみましょう。
もしマスタリング環境で32ビット浮動小数点数のバスを持つDAW(つまり、現在世に出ている大半の製品)を使用することがわかっているのでしたら、32ビットで書き出すのが確実です。というのも、理論上ミックス時のDAWの出力をマスタリングDAWの入力に直結するのと同じことになり、ファイル書き出しによる劣化は起りません。
記録媒体の容量に制限があった時代ならともかく、現在において32ビット以外のビット長でミックスを書き出すメリットはありません。