情報ラボ > 音のデジタル化
音は空気の振動です。それをどうやって0と1にするのか、実際に聴き比べながら確かめましょう。
青い線が元の音の波、赤い点が標本化で取り出した値、青い階段が量子化した結果
うすい線:元の音 赤い点:はかった値 金色の線:点から復元される音
標本化周波数を下げると高い音から失われ、ビット数を下げるとザラザラした雑音が混じります。
いまの設定で作られる波形
灰色の欄は、人の耳の上限(約20,000Hz)を超えている部分です。 データ量は、ステレオで1分間、圧縮しない場合の値です。
ブラウザが音を出すときは、パソコンやスマートフォンの再生装置の設定(多くは 44,100Hz か 48,000Hz)に合わせて変換されます。 そのため、96,000Hz や 192,000Hz のデータを用意しても、ここでは同じ音になってしまいます。
また、CD の 44,100Hz でも、人の耳の上限をこえる 22,050Hz まで再現できます。 ハイレゾの違いを聞き分けられるかどうかは、わずかに聞き分けられるとする研究もあれば、差はほとんどないとする研究もあり、 はっきりした結論は出ていません。ハイレゾには、録音や編集のときに余裕をもたせられるという利点もあります。
音の正体は、空気の振動です。太鼓の皮が震えると、まわりの空気が押されたり引かれたりして、その変化が波となって耳に届きます。この空気の圧力の変化を、時間とともに描いたものが波形です。
波形の上下は空気の圧力の強さ、つまり音の大きさを表します。波が細かく振動していれば高い音、ゆっくり振動していれば低い音です。1秒あたりに何回振動するかを周波数といい、単位はヘルツ(Hz)です。ピアノの中央のラの音は440Hz、つまり1秒間に440回振動しています。
この波は、時間的にも大きさ的にも切れ目なく連続しています。つまりアナログの量です。コンピュータで扱うには、0と1に置きかえる必要があります。
画像のときと同じで、標本化・量子化・符号化の順に進みます。
連続している波を、一定の時間間隔で区切り、その瞬間の値を取り出します。1秒間に何回はかるかを標本化周波数(サンプリング周波数)といいます。
CDでは44,100Hz、つまり1秒間に44,100回はかっています。1回あたり約0.0000227秒という細かさです。
この回数が少ないと、波の細かい変化を拾いきれません。特に高い音は波が細かいので、先に失われます。上のツールで標本化周波数を下げていくと、シャリシャリした高音成分が消えて、こもった音になるのが確かめられます。
どこまで下げてよいかには、はっきりした基準があります。再現したい音の最も高い周波数の、2倍より高い周波数で標本化する必要があるというものです。これを標本化定理(サンプリング定理)といいます。
人が聞き取れる音は、およそ20Hzから20,000Hzまでといわれます。その上限の20,000Hzを再現するには40,000Hzより高い標本化周波数が必要です。CDの44,100Hzという数字は、この条件を満たすように決められています。
逆に、電話は約8,000Hzで標本化しています。再現できるのは4,000Hzまでですが、人の話し声を聞き分けるにはこれで足ります。電話の声が少しこもって聞こえるのは、このためです。
標本化周波数が元の音の2倍に届かないと、どうなるのでしょうか。音が少し粗くなるだけではありません。まったく別の、低い音に化けてしまいます。
たとえば1秒に1,000回はかる設定で900Hzの音を記録すると、はかった点をつなぐと100Hzの波になります。900Hzの音は記録から消え、代わりに元の音には含まれていなかった100Hzの音が現れます。この現象をエイリアシング(折り返し)といいます。
映画で走る車のタイヤが、止まって見えたり逆回転して見えたりすることがあります。これも同じ現象です。1秒に24コマという撮影の回数が、タイヤの回転に対して足りないために起こります。
実際の録音機器では、標本化する前に、上限をこえる高い音をあらかじめ取り除いておきます。そうしないと、聞こえないはずの高い音が、聞こえる低い音に化けて混ざってしまうからです。
取り出した値を、決められた段階のうち最も近いものに置きかえます。何段階で表すかを量子化ビット数で決めます。
| ビット数 | 段階数 | 使われる場面 |
|---|---|---|
| 8ビット | 256 | 昔のゲーム機の音など |
| 16ビット | 65,536 | CD、一般的な音楽ファイル |
| 24ビット | 16,777,216 | 音楽制作の現場、ハイレゾ |
段階が少ないと、本来の値との間にずれが生じます。このずれは量子化誤差と呼ばれ、耳にはザラザラした雑音として聞こえます。上のツールでビット数を下げていくと、この雑音が増えていくのが分かります。
量子化で求めた段階の値を、2進数に変換します。16ビットなら、1つの点が16桁の0と1で表されます。この数値の並びが、音楽ファイルの中身そのものです。
音のデータ量は、次の式で求められます。
チャンネル数は、モノラルなら1、ステレオなら2です。左右の音を別々に記録するので、ステレオは2倍のデータ量になります。
CD品質で3分の曲を計算してみます。
3分の曲1つで30メガバイト以上です。CD1枚(約74分)が約740メガバイトなのは、この計算によります。
実際に配信されている音楽ファイルは、これよりずっと小さくなっています。MP3やAACといった形式で圧縮されているからです。
これらは、人間の耳の性質を利用しています。大きな音の直後の小さな音は聞こえにくい、聞こえる範囲を超えた高い音は削ってもわからない。そうした「聞こえない部分」のデータを削ることで、音質をあまり損なわずにデータ量を10分の1程度まで減らせます。もとに完全には戻せないので、非可逆圧縮と呼ばれます。
一方、ZIPのようにもとに完全に戻せる圧縮を可逆圧縮といいます。音楽ではFLACなどがこれにあたり、CD品質のまま6割程度まで小さくできます。
音楽配信サービスで「ハイレゾ」と表示されているものがあります。これは高解像度(High-Resolution)の略で、CDを超える品質という意味です。
具体的には、標本化周波数が96,000Hz以上、量子化ビット数が24ビット以上といった規格が使われます。CDの44,100Hz・16ビットと比べると、時間方向にも音の大きさ方向にも、より細かく記録していることになります。
ただし、人が聞き取れる音の上限は約20,000Hzです。標本化定理からすると、CDの44,100Hzでその範囲は十分カバーできています。それでもハイレゾが使われるのは、標本化するときに必要な処理の余裕が生まれることや、量子化ビット数を増やすことで小さな音の表現が細かくなることに理由があります。データ量はCDの3倍以上になるので、音質と容量のどちらを優先するかという判断になります。
デジタル化には、はっきりした利点があります。何度コピーしても劣化しないこと、ノイズが混入しにくいこと、コンピュータで加工や検索ができることです。カセットテープは再生やダビングを重ねると音が悪くなりますが、デジタルデータは何度コピーしても同じです。
一方で、デジタル化は必ず情報の一部を捨てます。標本化で時間の隙間の情報が失われ、量子化で細かな値の差が失われます。どこまで細かくするかは、必要な品質とデータ量のバランスで決めることになります。
音質の違いは、説明を読むだけでは実感しにくいものです。実際に同じ音を違う設定で聴き比べると、はっきり分かります。
上のツールの「自分の音で試す」では、手持ちの音楽ファイルや自分の声を読み込んで、設定を落とした音と聴き比べられます。読み込んだファイルは端末の中だけで処理され、どこにも送信されません。
標本化周波数を下げると、まず高い音から失われます。シンバルやハイハットのシャリシャリした音、歯擦音(サ行の子音)などが最初に消えます。全体がこもった印象になります。
量子化ビット数を下げると、小さい音の表現が粗くなります。静かな部分にザラザラした雑音が乗り、音の余韻が不自然に途切れます。
どちらも、大きな音が鳴っているときは気づきにくく、静かな部分や音が消えていく瞬間に差が表れます。聴き比べるときは、曲の静かな部分に注目してみてください。
ツールでは、元の波形と設定を落とした波形を上下に並べて表示しています。標本化周波数を下げると波形が階段状に粗くなり、ビット数を下げると縦方向の段差が大きくなります。耳で感じる違いが、目でも確認できます。
人が聞き取れる音の高さには限りがあります。一般に上限は約20,000Hzといわれ、年齢とともに下がっていきます。上のツールの「聞こえる範囲とハイレゾ」で、自分の耳の上限を確かめられます。
CDの標本化周波数44,100Hzは、この上限をこえる22,050Hzまで再現できるように決められています。ハイレゾの96,000Hzや192,000Hzは、さらにその上まで記録できますが、その範囲は人の耳には聞こえません。
ハイレゾの価値は、聞こえる音を増やすことよりも、録音や編集の途中で余裕をもたせられる点にあるとも考えられています。量子化ビット数を24ビットにすると、小さな音から大きな音までの幅(ダイナミックレンジ)が広がり、音量を調整しても細部が失われにくくなります。