藤本健のDigital Audio Laboratory
第721回
MP3ファイルを作るエンコーダは進化した? 昔と今のiTunesで比較検証
2017年5月8日 13:01
「MP3のエンコーダも年々進化しているんだよ」、先日そんな話を聞いた。なるほどそうかもしれないとも思ったが、聴いてすぐに分かるほどの違いがあるのか、周波数分析をかけて違いが見えるのだろうか? そうした周波数分析・比較はこのDigital Audio Laboratoryの得意とするところではあるが、考えてみればMP3エンコーダ性能の年代による比較はしたことがなかった。そこで、改めてそんな比較をしてみた。
エンコーダの新旧で、MP3ファイルが変わったどうかを検証
改めてDigital Audio Laboratoryのバックナンバーを読み返してみると、MP3についての検証を行なったのは連載スタート当初の2001年のこと。「パッケージソフト全盛時代の現代MP3事情」と題して5回の連載を行なったのが最初だ。まだMP3自体の普及もしだしたばかりで、音質についてもそれほど言われていない時代ではあったが、周波数分析してみると高域がバッサリ切り捨てられているのが一目瞭然であったため、結構いろいろなところで話題になった。その当時、MP3のエンコーダもいろいろなものが存在していた。当初はXingの製品が中心であったのが、MP3の特許元であるFraunhofer IISが主流になりつつも、フリーウェアのGOGOエンジン(午後のこ~だ)などもよく使われていた時代。WindowsにおいてはiTunesも登場する前であったこともあり、MP3に変換するためのパッケージソフトがよく売れていたのだ。
そんな中、この連載では各パッケージのエンコーダを用いて、WAVをMP3に変換。デコーダを使ってWAVに戻した上で、周波数分析を行なっていたのだ。が、その後の記事でも、このデータを流用していたため、新しいMP3のエンコーダをしっかりチェックしたことがなかった。「MP3のエンコーダが進化した」なんて発想がなかったので、チェックしていなかったのだが、確かにそれから16年も経過しているので、改めて試してみたい。
ここでの問題は、どうやって古いエンコーダと新しいエンコーダを比較するか、という点。昔にエンコードしたデータを利用するのはいいが、たとえば当時使っていたジャストシステムの「MP3 BeatJam XX-TREAME」なんていうソフトを持ち出しても、あまりピンと来ない。もうちょっと分かりやすいものはないだろうかと探していたら、面白いものを発見した。筆者の収集癖のためか、iTunesの各バージョンのインストーラをいろいろ保存していたので、これを使ってみるのが手ではと思った。
もちろん全バージョン保存しているわけではないが、手元に残っている一番古いバージョンが2005年7月のiTunes 4.9。2001年当時のものではないが、今から12年前のものなので、試してみる価値はありそうだ。これと最新の64bit版iTunes 12.6でのエンコードと比較するとともに、途中経過としてWindowsの64bit版が最初のころだったiTunes 9.04の3つで比較してみることにした。
「iTunesなのに、なぜMac版でなく、Windows版? 」という声も上がりそうだが、それは単に筆者の実験マシン環境がWindows中心となっているから。またMacの場合、古いiTunesを現行のマシンで動作させるのは、いろいろと難しそうだが、Windowsであれば64bit版Windows 10環境で32bit版アプリも問題なく動作させられるというメリットもあるからだ。
12年前と現在のiTunesでMP3変換したファイルはどう違う?
今回の実験の手順について紹介していこう。まず使ったマシンは、先日アップデートさせたWindows 10 Creators Updateが入っているまっさらな状態。ここにまず一番古いiTunes 4をインストールした。この際、下手にインターネット経由で新しいエンコーダが読み込まれてしまうとマズいのでLANケーブルを強制的にとり外して遮断した状態でインストール。実プログラムはクラウド上にあったりしないかと少し心配したのだが、問題なく完了したようだ。ここでサンプル曲を1つ用意した。曲はいつもリニアPCMレコーダのテストで使っているTINGARAのambient JUPITERから抜き出した約45秒のWAV。これをiTunesに読み込ませた上でMP3へ変換するわけだ。
さっそく、iTunes 4を起動してみると、ずいぶ懐かしい感じ。個人的には、現在の全部入りソフトになったiTunes 12より、シンプルなプレイヤーソフトだったiTunes 4のほうが分かりやすくて好印象。これを使ってWAVをMP3に変換するには、まずCDのインポート設定で、デフォルトのAACからMP3エンコーダに設定。
ビットレートをどうしようかと思ったが、2001年の連載時にも標準ビットレートとして扱っていた128kbpsに設定した上で変換してみた。せっかくなので、iTunesがおすすめする192kbpsでもMP3変換するとともに、AACエンコーダでも128kbpsで試すという、計3種類の形式でエンコードを行なった。
最終的には、これをいつも利用させてもらっているフリーウェア、WaveSpectraで解析してみるのだが、これはWAVしか読み込むことができないので、何らかの方法でMP3やAAC化したファイルをWAVへ変換する必要がある。もちろん、これを最新のデコーダで行なってもいいのだが、デコーダ側も進化している可能性があるので、このiTunes 4を使って再度デコードも行なってみた。この際、元のファイルをそのまま置いておくと、そちらが優先されてしまうため、ファイルを移動したり、リネームするなどして、混乱が起こらないようにした。
このようにしてiTunes 4での変換が無事に行なえたので、続いて2009年リリースのiTunes 9.0.2。iTunes 4をいったんアンインストールした上で、やはりネットを遮断したままインストールした。
起動すると、また懐かしい画面。こうした古いソフトをそのままの状態で再現できるのがWindowsのメリットかもしれない。ここでもiTunes 4とまったく同じ手順でMP3の128kbpsと192kbps、さらにAAC 128kbpsの設定でエンコード、そしてWAVへデコードしてみた。
そして最後は最新のiTunes 12.6。ここで、ネット接続を復活させ、iTunes 9をアンインストールするとともに、ネットからダウンロードしたてのiTunes 12.6をインストール。
同じように、CDのインポート設定のところでMP3、AACを選択し、これらのフォーマットへエンコードしようとしたのだが、iTunes 4、iTunes 9とUIが変わっていて、エンコードメニューが見当たらない。そんなはずがない、と探してみると、ファイルメニューに変換というメニューが用意されており、こちらに変わっていたことに今さら気づいた。こうしてiTunes 12でも3つのフォーマットでエンコード・デコードを行なった。
以上の手続きによって、計9種類のWAVファイルが生成された。一覧にしてみてみると、やはりファイルサイズも微妙に違っているのが分かる。やはりエンコーダ、デコーダに何らかの違いがあるということなのだろう。
ファイルサイズをよく見てみるとiTunes 9のMP3 192kHzとiTunes 12のMP3 192kHz、同じくiTunes 9とiTunes 12のAACのファイルサイズが一緒のように見える。試しに詳細ファイルサイズを確認してみても、やはり同じ。もしかして、この辺で進化が止まり、同じものが使われている可能性もありそうだが、MP3 128kbpsだけはファイルサイズが異なるのも妙な気がする。
いい加減な予想をしても仕方ないので、ここではファイルを1bit単位ですべて比較できるツールWaveCompareを用いて確認してみた。結論からするとファイルサイズは同じだけれど、出力される内容は異なるということのようだった。進化かどうかはともかく変化していることだけは間違いないようだ。
以前に行なった実験では、再生した音の中の最大値だけを記録したものを掲載したが、最大値は必ずしも実態を表すわけではない。そこで、ここでは最大値(赤)とともに、300サンプルごとの平均値(青)、そしてリアルタイムの解析結果(黒)の3種類で表示してみた。
これを見てどうだろうか? 確かに波形は違うけれど、何か明らかに進化しているところがここから見えるか、というと微妙なところだ。単純に「高い周波数が出ていることがいいことである」と定義したとすると、MP3の場合、128kbpsも192kbpsも進化というより退化にも見えるが、もちろん音質は高域が出ていればいいというものではない。例えばMP3 128kbpsの場合、黒のリアルデータを見ると、14kHzちょっとまでしっかり音が出ているのはiTunes 4より9、12のほう。とはいえ、msec単位で同じ瞬間とはいえないから、確実とはいえない。青の平均で見るとどれもそれほど変わってないのだ。
では、音を聴くとどうか? 残念ながら筆者の耳もそれほど感度が高くないようで、あまり違いが分からないというのが正直なところ。ビットレートが違うものは、音の違いがなんとなく分かるけれど、世代の違いでの差は感じられない。
【オリジナルのWAVファイル】
・WAV(8.98MB)
【iTunes 4で生成したMP3/AAC】
・MP3 128kbps(0.82MB)
・MP3 192kbps(1.22MB)
・AAC 128kbps(0.86MB)
【iTunes 9で生成したMP3/AAC】
・MP3 128kbps(0.82MB)
・MP3 192kbps(1.22MB)
・AAC 128kbps(0.84MB)
【iTunes 12で生成したMP3/AAC】
・MP3 128kbps(0.82MB)
・MP3 192kbps(1.22MB)
・AAC 128kbps(0.84MB)
※編集部注:編集部ではファイル再生の保証はいたしかねます。再生環境についての個別のご質問にはお答えいたしかねますのでご了承下さい
楽曲データ提供:TINGARA
ずいぶん時間をかけていろいろ実験はしたものの、結論からいうと、各エンコーダとも、いろいろ改善の努力はしているのかもしれないけれど、実際は今も昔も大して変わりはしない、ということのようだ。もしかしたら、使うソフトや音楽ソースを変えると、もっとハッキリした違いがでるのかもしれないので、興味のある方は試してみてはいかがだろうか?