C-0060 MP3 などの音声ファイルの音質と容量
- 2000/6/1
※ここに掲載している情報は間違っている可能性が非常に高いので、信用してはならない。これらの情報を信用してアナタが不利益を被ったとしても、それは全てアナタの責任である。
意外と知らない、音声ファイルの音質とファイルサイズに関する知識。知ってればどうだというわけでもないけど、話の種にでも。
サンプリングレート
音は空気の振動でできていて、振動の回数が多ければ「高い音」、低ければ「低い音」となります。この振動回数を「周波数」といい、1秒間の振動回数を「1秒間に15回の振動」=「 15Hz (ヘルツ)」といった具合で表します。ちなみに人間の耳に聞こえるのはだいたい 20Hz (低音)〜 20000Hz ( 20kHz )(高音)までと言われていて、これより高い音を「超音波」、これより低い音を「超低周波」と言います。これはまぁ常識ですね。なお、実際の音は複数の音が重なり合っているため、このサンプルのような複雑なカーブを描いています。
サンプリングレート(サンプルレートともいう)とは、空気の振動のデータを 1 秒間に何回サンプリング(記録)するかを示す値で、例えば「1秒間に15回データを記録する」場合、サンプリングレートは「 15Hz 」と表されます。
実際に図で説明してみましょう。
シンバルなどの高い音は高い周波数で振動=細かく振動しているので、サンプリングレートが低いと細かい振動が記録できない=高音が消えたくもぐったような音になります。
サンプルレートを高くすれば、細かい振動=高い音も記録することができますが、その代わり、比例してデータ量が増えます(この例では、下のサンプルは上の4倍のデータ量になっています)。
一般的なサンプリングレートと音質
- 11kHz ( 11025Hz )
- 電話並
- 22kHz ( 22050Hz )
- AM ラジオ並
- 33kHz ( 33075Hz )
- FM ラジオあるいは TV 並
- 44kHz ( 44100Hz )
- CD ・ MD 並
- 48kHz
- DAT ( CD の原版などに使われる)並
コンピュータで使われるサンプリングレートと音質については、このような解説がなされます。 CD の 44kHz くらいあると人間の可聴域を大体カバーできるので、一般には 44kHz が「いい音」の規準とされています(※1)。ちなみに、プレイステーション標準の XA 形式( R4 などで使われています)は 37kHz なんて中途半端な値だったりします。
サンプリングレートが高すぎるのでは?
人間の可聴域は 20Hz 〜 20kHz ……じゃあ、 44kHz なんて超音波まで何故記録するのか? と感じるところですが、実はこれにはワケがあります。
音波には周波数特性というものがあり、コンピュータだとサンプリングレートの1/2以下までの周波数の音までしか再現することができません。これをナイキストの定理( Nyquist's theorem )といい、これに従うと、周波数 22kHz の音を記録するにはサンプリングレートが 44kHz 必要ということになります。
というわけで、前述のサンプリングレートの一覧で挙げたちょうど半分くらいの値が、実際に記録できる(再生される)音の周波数と思ってください。
ちなみに、サンプリングレートの1/2以上の周波数の音は折り返し雑音( aliasing noise )というものになってしまうため、アナログ→デジタル変換( D-A 変換)や低い周波数へのリサンプリング時には、(低い)サンプリングレートの1/2の周波数(=ナイキスト周波数)を超える周波数成分を(普通は)除去するそうです。
サンプリングサイズ
サンプリングサイズとは、音の強弱の精度です。ダイナミックレンジとも言うようです。
「 PCM 16bit 44kHz 」のように書かれていることが多いですが、要するに、音の大きさを記録するときの目盛りの細かさのことで、この値が大きいとより細かい音の強弱が再現できる=自然な音になります。逆に、この値が低いと、ざらざらした感じの音になります。
サンプリングサイズの値もファイルサイズに大きく関係していて、やはり高ければ高いほどファイルサイズは大きくなってしまいます。
ちなみに Windows で一般的な WAVE ファイルでは 8bit (= 28 =256段階)もしくは 16bit (= 216 =65536段階)の精度でデータを記録していますが、最近では( DVD などで) 24bit (= 224 =16777216段階)というより綺麗な音のデータが使われるようになってきているようです。
チャンネル数
チャンネルとは平たくいえば「ステレオ」とか「モノラル」とかいうもの――音のライン(パート)のことです。この数、つまり再生に使うスピーカーの数(再生される音の数)が、チャンネル数です。
普通、ひとつのマイクだとひとつの音の振動しか記録できません。しかし人間の耳は二つあり、それぞれで違う音を感じるので、ひとつの音だけしか再生されないと「なんとなく単調」と感じてしまいます。そこで、「右耳用の音( R チャンネル)」「左耳用の音( L チャンネル)」の二つを同時に記録して、合わせて聞いたときに音の広がりを感じられるような仕組みが考え出されました。これがステレオシステムです。
チャンネル数は多ければ多いほどより「自然」に聞こえますが、複数の音声を同時に記録するので、当然チャンネル数の分だけデータ量は増えます。
ちなみに CD などの音は L/R の2チャンネルステレオですが、 DVD の音声などでは、音の周波数や音の位置ごとにチャンネルを分けたりして右前・左前・右後・左後・正面(+ウーファー1)の「5.1チャンネル」(だったように思う……)を実現しています。
ビットレート
前述の「サンプリングレート」「サンプリングサイズ」「チャンネル数」は音質に主眼をおいた考え方ですが、 MP3 などの圧縮音声でよく聞く「ビットレート」はこれらとは全く違う視点の規準です。
ビットレートは 1 秒あたりのデータ量を示す値で、例えば 10bps ( bit per second ……ビット毎秒)ならば、10秒では 100bit のデータサイズになるということを表しています。 MP3 や SoundVQ ・ WMA などの圧縮音声ではまず音質よりもデータサイズの方に着目するため、この数値が頻繁に出てきます。
ビットレートは要するに、「データの器の大きさ」――器が大きければ(ビットレートが高ければ)その分ものを多く入れられる(データ量を大きくできる=音質をよくできる)ということを表すものです。
MP3 ファイルなどを作成する際には、前述の3項目と同時にこのビットレートの値も指定します。エンコーダ(変換ツール)は指定したビットレートに収まるように音声データを圧縮するので、音質をよくするためにはビットレートを上げる必要があるということになります。ちなみに、 MP3 では 128kbps が「観賞に耐えうる音質(を保てる圧縮率)」の規準とされています。
どの程度圧縮されるのか?
CD と全く同じ品質の音声データ( 44kHz 16bit ステレオ 2ch )は、圧縮していない状態ではおよそ 1400kbps 相当(※2)のデータ量です。 MP3 で一般的なのは 128kbps なので、データ量は1/10以下……1/10以下のデータ量でほぼ同等品質の音を記録できるのですから、 MPEG Audio Layer-3 がどれだけ高度な計算を行っているのかがよくわかりますね。
WAVE ファイルのビットレート換算
Windows 標準の WAVE ファイルなどはビットレートの話題があまり出ません( MP3 ではビットレートを自由に変えられるが、 WAVE ファイルではできないため)ので、ビットレートでどのくらいの値に相当するのかは自分で計算する必要があります。
(サンプリングレート)×(サンプリングサイズ)×(チャンネル数)=1秒あたりのデータ量(ビットレート)
計算式は上の通りです。例えば CD 品質のデータ( 44kHz 16bit ステレオ 2ch )では、このようになります。
44100( Hz )× 16 ( bit )× 2 ( ch )= 1411200 ( bit/sec. = bps )(≒ 1.4Mbps )
ファイルタイプ
音声ファイルには、圧縮されたものと非圧縮のものがあります。前者の代表は MP3 や WMA 、後者は WAV などですね。
同じ「圧縮フォーマット」でも、圧縮の方式(アルゴリズム)の違いでファイルサイズも違ってきます。 MP3 では観賞に耐えうる音質は 128kbps 以上ですが、 WMA では 80kbps 以上、 SoundVQ では 64kbps とされています。同じ音質を確保するのにより少ないデータ量で済む=より効率よく圧縮できる(圧縮率が高い)ということなので、最近では MP3 以外に WMA などのより優秀なフォーマットが使われることも増えてきています。ただ、圧縮率が高いデータというのは複雑な計算で作られるので、圧縮率が高いほど再生に大きな負荷がかかります(逆に考えると、圧縮率が低ければ再生時の負荷は小さいということになります)。
ちなみに、ビットレートは「1秒あたりのデータ量をどれだけ使うか」なので、ビットレートが同じならどんなフォーマットでもファイルサイズは同じになる……と思っていたのですが、どうもそうではないようですね。参った。詳しい方、教えて下さい(汗)