音声フォーマットの違い ~VorbisとMP3の音質を実際にデータで比べてみた~

録音中のパソコン画面 皆さまこんにちは。ソニー・ミュージックエンタテインメントで生成AIの調査・検討 を行っている みみずくです。

生成AIといえば画像生成や文章生成のイメージが強いですが、ここ1、2年で音楽を生成するAIも盛り上がりつつあります。そこで今回は、知っておくと役に立つ音声データの話をしていきたいと思います。

皆さんはVorbis(ogg)という音声フォーマットについてご存知でしょうか。

Vorbis(ogg)形式は一般的な知名度は低く、初めて目にしたという方も多いかもしれません。しかし実のところ、音楽業界ではVorbis(ogg)は同じくライセンスフリーで使うことのできるMP3よりも圧縮性能が良く、低容量で音質が良いと注目されているフォーマットなのです。

そこで今回の記事では音声データの仕組みと特徴について解説しながら、「MP3 」形式と「Vorbis (Ogg)」形式のどちらが優れているかを、実際の音声データを用いて比較しながら 確認していきたいと思います。

さまざまな音声データ

私たちは日頃から我々はさまざまな音声データを介して音を聴いています。.mp3、.wav、.oggなどの拡張子に見覚えのある方も多いのではないでしょうか。これらのデータ形式はどれも音声に関する情報を表現するものでありながら、その性質には少しずつ違いがあります。

音声データの3つの種類

音声データの形式には「非圧縮」「可逆圧縮」「不可逆圧縮」の3つの種類があります。

1.非圧縮形式

音声収録の際に使われるのは、基本的に最も音質が良くデータサイズの大きい「非圧縮」形式です。非圧縮形式にはアナログの音声をデジタルに変換した飛び飛びの波形データが保存されており、「WAV」形式や「AIFF」形式がこれに該当します。

非圧縮形式では、Hz(ヘルツ)で表されるサンプリングレートという単位と、bitで表されるビット深度という単位があります。これらの数字が大きければ大きいほど、定量的に音質が良いということになります。CDに収録されている音声は、非圧縮形式の中でも「44,100Hz(44.1kHz)・16bit」という音質となっていますが、これは以下の図のようにイメージすることができます。

まず、「44,100Hz」とは、一秒間を44,100分割した時間(=1/44,100秒)を最小単位として波形データが入っていることを意味します。次に、「16bit」とは、波形における深さ(ビット深度)が216=65536段階であることを意味します。上の図では横線の本数はかなり間引いてありますが、実際には65536本存在していると考えてください。216=65536通りの情報を記録するには、16bitの容量を使います。

つまり無圧縮形式において、単純計算では16bit×44100Hz=705,600bit/s=705.6kbpsもの容量を1秒の音声で使用することになります(kbps:キロビット/秒)。なお、実際の音声ファイルはほとんどがステレオ(左右の耳に違う音が聞こえる)なので、それを2倍した約1411kbpsが1秒あたりの容量となります。たった1分のデータで1411×60kbit=84,660kbit=84.66Mbit=約10.58MBもの容量を消費してしまうため、データの送受信や長時間のデータの保存の際には不便です。

そこで、音質を損なわずにデータ容量だけ小さくする方法が考え出されました。それが可逆圧縮形式です。

2.可逆圧縮形式

可逆圧縮形式では、データ容量を小さくする圧縮(エンコード)と呼ばれるデータの加工がなされています。再生する際にはこれを元に戻す(デコードする)ことによって、無圧縮音源と同様の音質で再生することができます。一般的には「FLAC」や「ALAC(Appleロスレス)」と呼ばれるものがよく知られています。

なぜ音質を損なわずに容量を削減することが可能なのでしょうか。ここで一つの例について考えてみましょう。

波形の深度の値が「65535」である時間が5/44100秒間連続し、次に「65534」である時間が5/44100秒間連続したとします。(下図参照)

これを「65535,65535,65535,65535,65535,65534,65534,65534,65534,65534」と記録する無圧縮音源では16bit*10=160bitの容量を使用します。しかし例えば、可逆圧縮音源では、これを工夫して「1,65535,0,0,0,0,1,65534,0,0,0,0」と記録することもできます。

この数字の羅列のことは、「1という数字が来たら、次の16bitを使って新たな波形の深度を記録する」「0が来たら、前の瞬間と同じ波形の深度として扱う」と読むことができます。 この表記に書き換えることで、容量を1+16+4+1+16+4=42bitまで削減することが可能となりました。

この手法を利用すれば、同じ波形の深度が連続することが頻繁にあると期待される音源では、データ容量が大幅に小さくなるといえます。

また、例えば1秒間無音の時間が続く場合、無圧縮形式では「00000,00000,00000,…」などと44,100回連続で記さなければなりませんが、これをただ一言「1秒間の無音が続きます」と何らかの符号で示せれば、容量を節約できるのは明らかでしょう。

これらはあくまでもイメージとしての一例であり、実際のエンコードのアルゴリズムとは少々異なります。

しかしこのような工夫の数々により、全ての情報を几帳面に記録しなくても無圧縮形式と同じ内容を表現できるようになったのが可逆圧縮形式です。とはいえ、勘の良い方はもうお気づきかもしれませんが、この可逆圧縮には欠点もあります。それはどんな音源にでも効果的に適用可能なわけではないという点と、なおかつそこまで大幅な容量の節約が実現できるものではないという点です。音楽をストリーミング配信したり、スマートフォンにダウンロードして持ち歩いたりするには、より大幅な容量の削減が求められます。

3.不可逆圧縮

不可逆圧縮音源は、音質を多少犠牲にすることで、大幅に容量を削減するものです。 我々がよく耳にしている「MP3」や「Vorbis(Ogg)」、「MP4(AAC)」形式などは、この不可逆圧縮に分類されています。不可逆圧縮音源ではデータサイズを小さくするため、どの部分の情報を犠牲にするか選ぶことになります。

具体的には音質をできるだけ保つため、実際の聴こえ方にほとんど影響が出ない部分の情報がカットされるようになっています。大抵は、人間にとってほとんど聴こえない高音域や低音域を削ることになります。実際、320kbpsのMP3ファイルではデータ容量を無圧縮形式の1/4程度に削減する代わりに、20kHz以上の超高音や20Hz以下の超低音がカットされているという調査結果があります。

それに加えて、聴覚心理モデルと呼ばれる人間の聴覚に関する研究結果が活用されています。例えばよく知られている人間の聴覚の特性の一つとして、聴覚マスキングと呼ばれる現象があります。これは、大きい音と同時に、近い周波数でより小さい音が鳴った場合、小さい方の音はほぼ知覚されないという現象のことです。これを利用して、大きい音の近くで鳴っている小さい音の情報をカットすることで、聞こえ方をほとんど変えずに容量を節約することができます。

なお、この処理を実現するには、波形のデータを周波数ごとに分解する必要があります。

この手法は、数学用語でFFT(高速フーリエ変換)などと呼ばれています。 実際の音声データの波形はここまで規則正しいわけではないのでより複雑な処理が必要になるのですが、ここでは詳細は省きます。

どの不可逆圧縮方式でも、音声データをこのように分解してから、聴覚マスキングが働くと思われる小さな音をカットする工程がエンコードに含まれています。しかしながら、そのモデルやアルゴリズムのわずかな違いによって、音質に差が出る場合があります。

MP3とVorbis(Ogg)の比較

上述のように、不可逆圧縮音源ではある程度は音質が犠牲になってしまいます。しかしどのようなアルゴリズムで圧縮するかによって、人間にとっての聞こえ方を比較的高品質にすることは可能です。

ただし、不可逆圧縮音源でメジャーな形式であるMP3、Vorbis(Ogg)、AACの3形式は、圧縮の際のアルゴリズムが異なるため、聞こえ方も違ってくる場合があります。

そこでここでは、その中から、ライセンスフリーで使うことのできるMP3とVorbis(Ogg)について、元の非圧縮データと周波数の分布を比べながら、その音質を比較してみました。 噂によれば、同じ容量ではMP3と比べてVorbis(Ogg)の方が音質が良いとのことですが、実際のところ、どうなのでしょうか?

実験1 女性の声

まず最初に、音声素材サイトから女性が喋っているWAVデータをダウンロードし、ほとんど同じサイズのMP3データとVorbis(Ogg)データに変換しました。その後、それぞれの音声の波形を調べ、比較しました。

周波数を比較すると、MP3は低~中音域はほとんど元のWAVと変わらないものの、20kHz以上の帯域が急激にカットされているのがわかりました。

一方、Vorbis(Ogg)はほぼWAVと変わらない周波数グラフを描いており、周波数ベースで見た時にはほとんど圧縮による音質の低下が見られませんでした。このグラフだけを見れば、Vorbis(Ogg)の方が音質が保たれていると言えるでしょう。

実験2 J-POPの楽曲

次に、手持ちのCDからJ-POPの楽曲を取り込み、再度MP3データとVorbis(Ogg)データに変換しました。こちらの周波数を比較したグラフは、次のようになります。

こちらでも、MP3は20kHz以上の帯域が急激にカットされているのが分かります。更に、47Hz以下の低音域も少し削れており、圧縮による影響が見られます。一方でこの音声でもoggでは周波数グラフの形状がかなり保たれており、MP3よりも高品質に見えます。

実験3 環境音の中で話す男性の声

最後に、音声素材サイトから男性が話しているWAVデータをダウンロードし、今まで同様MP3とVorbis(Ogg)に変換しました。こちらの音源は実験1とは異なり、男性の声の後ろで環境音が鳴り続けています。結果は次の通りです。

MP3では、低音域にはほとんど影響が見られないものの、高音域に非常に大きな変化が出ているのが分かります。今までのように20kHz以上の音が急激に削られているのに加えて、8kHz前後から既に差が出ているのが分かります。これは推測ですが、聴覚マスキングによって聴こえにくいと判断された、環境音よりも小さい音が大量にカットされたものと思われます。一方で、Vorbis(Ogg)はこの音源でもほとんど周波数に関する変化が見られませんでした。

実験の結果……「周波数ベースの音質比較」ではVorbis(Ogg)では優秀という結論に

以上の実験によって得られた結果を総合すると、周波数ベースで分析した場合、MP3では高音域や低音域が大幅に削れているのに対し、Vorbis(Ogg)ではそういった影響は見られませんでした。周波数にほとんど影響を出さずに同等の圧縮率を実現しているという点においては、Vorbis(Ogg)の方が規格としては優れていると言えるのかもしれません。

もっとも、Vorbis(Ogg)もデータ容量を圧縮しているからには、このような分析に現れない形でデータの品質が低下しているのは確かなので、最終的にどちらの音質が良いかというのは聴き比べて個人の主観で測るしかありません。

例えば、Vorbis(Ogg)は可変ビットレートという方式を取り入れており、音の内容によってどれだけの情報量を割くかを変動させています。そのため、今回比較に用いたのとは異なる種類の音声や、より長い音声では、違いがよりわかりやすい形で現れてくる可能性も否定できません。

MP3はなくなってしまうのか

実験では、噂通りVorbis(Ogg)の方が音質が良いという結論に至りました。では、負けてしまったMP3は今後淘汰されてなくなってしまうのでしょうか。私は当分はそうならないと考えています。

現時点でMP3がまだ生き残っていることがその証左でもあるのですが、Vorbis(Ogg)には少々扱いにくい性質があるのです 。例えば、先述の可変ビットレートという方式は、AVI形式などの映像と組み合わせて使用する際に音ずれが発生してしまう可能性があります。また、MP3と比べて複雑なアルゴリズムでデコードしなければならないため、メモリが貧弱なコンピューターでは高負荷がかかってしまいます。そしてそういった背景もあり、Vorbis(Ogg)の再生に対応している再生機やソフトウェアは、MP3と比べてかなり少なくなっています。

こういった理由から、手軽さや使用できる場面の多さという観点では、MP3の使い勝手の良さが光るのです。

まとめ

今回は音声フォーマットの違いについて、特に不可逆圧縮形式であるMP3とVorbis(Ogg)、おまけでAACについて比較しました。今回の比較ではVorbis(Ogg)に軍配が上がりましたが、別の着眼点で分析した場合には異なる結果が出るかもしれません。興味がある方は、ぜひ聴き比べてみたり、分析してみたりしてはいかがでしょうか。

個人的には、再生機そのもののスペックが低かった2000~2010年代と比べて、スマートフォンやパソコンの処理速度がアップしている現在では、MP3よりもVorbis(Ogg)の方が役に立つ場面も増えてきているのではないかと推測します。昨今では音質を求めてハイレゾ音源がストリーミングで配信されることもありますが、より手軽に高音質な音声を楽しむ方法としてVorbis(ogg)を検討する余地はあっても良いのではないかと考えます。

SMEでは、業界のスタンダードなフォーマットだけにとらわれず、実際のデータ形式の性質を理解した上で開発ができるよう、常にさまざまな可能性を検討していきます。