Edited at

音声コーデック 音質比較 AAC vs MP3 vs Opus vs Vorbis

More than 1 year has passed since last update.

スペクトログラムの差分で比較する。

具体的には、オリジナルファイルのスペクトログラムと、コーデックを通し、変換後のスペクトログラムを画像編集ソフトのレイヤーに貼り付け、レイヤー効果で差分を取る。最終的に視覚化されるのは非可逆コーデック(Lossy)で失われた情報となる。

ネット上には、高音域がどこまで出るかだけを見て音質を評価する情報がある。これは意味がなく、より重要なのは可聴域における音質である。 大多数の人間は17kHzとかそれ以上の高音はほぼ感じない。(これもまた、ネット上に音声でテストするサイトがあるが、こういったサイトはクリッピングが発生しており、歪みの形で可聴域で聴こえている場合があるWaveGeneAudacityで正しくトーンを生成してテストすべきである。)

テスト曲:Perfect sky Chorus ver.

前に書いた 音楽ファイルが96kbpsになる日――Opus音声コーデックの実力 では差分は取らずに、スペクトログラムだけを貼ってある。今回は視覚的にコーデックの比較をするために画像の差分をとった。


128kbps

画像を拡大して画面の輝度を最高にし、部屋を暗くして、黒く見える部分に緑が見えることに注目してほしい。

128kbpsでの比較。以下のように Opus > qaac = Vorbis > LAME となる。ここで注意して見たいのは、目立つ高域のロスではなく、人の耳にとりわけ影響がある中音域の可聴域である。LAMEでは明らかに可聴域に緑の部分が見られることがわかる。VorbisとAACでは若干Vorbisのほうが緑っぽいが大体同じものとなる。Opusは緑の部分が少なくロスは少ないが、高音域を若干犠牲にしている。これはだいたい16〜17kHzとなり、そこに緑が若干目立つ。

このビットレートではどのコーデックもローパスフィルターを通している。LAMEは16kHz、AACとVorbisは18kHz、Opusは20kHzである。Opusは(CELTモードでは)ビットレートにかかわらず、ローパスフィルターは20kHzとなる。だがローパスフィルターが16kHzに掛かっていたとしても、聴覚上の違いはほぼわからない。このローパスフィルターは、どうせ高域にビットを割り当てても意味が薄いので、その代わりに可聴域へビットレート割り当てするためにある。


AAC: qaac (Apple) CVBR 128

aaccvbr128.png

不自然な点が気になるが可聴域の品質は高い。


MP3: LAME VBR v5

mp3vbrv5.png

全体的に見劣りする。


Opus: opusenc VBR 128

opusvbr128.png

原音と差が少なく、抜きん出た品質の高さである。16kHz以上は少しロスが増え20kHz以上は完全にロスとなる。


Vorbis: aoTuV 20110424 (based on Xiph.Org's libVorbis 1.3.5) VBR q4.0

vorbisq4.png

緑が目立つものの、拡大してみると、8kHz以下はかなりロスが少ない。


256kbps

Opus > AAC = MP3 = Vorbisのように見える。なぜならば、AACとVorbisは可聴域に緑の斑点がよく見えるがLAMEは意外と見られない。また、Opusは緑の斑点が最も見えず、最高の品質である。一方で、高音域はローパスフィルターを通していないAACとVorbisが勝る(が、可聴域の再現性はOpusより若干悪い)。

以下の画像は拡大して黒く見える部分をよく見てほしい。黒く見えても、緑の濃さに違いがある。


AAC: qaac (Apple) VBR q109

aacq109.png

全体的に安定。AppleのAACエンコーダは優秀。


MP3: LAME VBR V0

mp3v0.png

可聴域の部分は意外と良い結果になっている。が、MP3はコーデックの仕様上高い音が苦手(まあ、人間には劣化は知覚できないけど)。


Opus: opusenc VBR 240

opusvbr240.png

拡大すると、可聴域の部分ではAACやVorbisよりも緑の部分が少ない(というか、ほぼ真っ黒で、すなわち、原音に近い)。ただし、LPFのために超音波より上はカット(聞こえないので無問題)。


Vorbis: aoTuV 20110424 (based on Xiph.Org's libVorbis 1.3.5) VBR q8.0

vorbisq8.png

AACと似ているが、Opusよりは微妙に悪いようである。


結論


  • Opus最強。実際に音楽ファイルを扱う際は、メタタグの運用上の便利さとしてはMP3かVorbisとなるだろう。AACはReplayGainの取り扱いがソフトによって異なるらしい。OpusはFoobar2000で付けたReplayGainがVLCで読めないなどがある。

  • 総合的に評価するなら Opus>AAC=Vorbis>MP3


    • AACはAppleのエンコーダーを使うと、 AAC>Vorbis となる印象



  • 意外と高ビットレートのVBRにおけるLAMEは音質が高い。


おまけ: 原音のスペクトログラム

上記画像ファイルとこれの差分を取れば、上記コーデックの完全なスペクトログラムが手に入ると思われる。

002. Will-316O2.flac.png