藤本健のDigital Audio Laboratory
第946回
WMAコーデックに使い道はあるか? オーディオ性能を画像比較した
2022年6月28日 08:00
以前、MP3やAAC、OPUSといった各種エンコーダーのオーディオ性能がどんなものなのか、チェックしてみたことがあった。こうした性能チェックは、20年前のDigital Audio Laboratoryの連載開始当初から何度も行なってきているものだが、昨年見つけた“スペクトログラムを画像で比較して差分を表示させる”という手法は、視覚的に違いが分かりやすいのとともに、さまざまなエンコード方式を比較する上で扱いやすいものとなっていた。
「Opus」と「AAC」どっちが高音質? 周波数分析でコーデック比較した
今回はこの手法でチェックしていなかった「Windows Media Audio」にターゲットを絞り、各種設定でどのような違いがあるのかをチェックしていくことにしよう。
マイクロソフト発の「WMA」。使用頻度は少なく過去のコーデック?
Windows Media Audio(=WMA)は名前からも分かる通り、マイクロソフトが開発したオーディオ圧縮コーデックで、初期バージョンはこの連載がスタートする2年前の1999年に誕生し、その翌年に公開された「Windows Media Player 7」に標準搭載されたことで広く普及。アップルが初代iPodをリリースした頃でもあったため、当時はWMAを標準採用したデジタルオーディオプレーヤーも誕生した。
またWindows Media Playerでは、オーディオCDからのリッピング機能を標準搭載するが、デフォルトのコーデック設定が当初WMAであったため、知らず知らずのうちにWMAでライブラリを構築していた……という方もいるかもしれない。
その後WMAは、Windows Media Playerとともに、バージョンアップを繰り返し、より高圧縮を可能にした「WMA Pro」や「WMAロスレス」も誕生。CBR(固定ビットレート)に加え、VBR(可変ビットレート)にも対応するなどの進化を続けていった。
Windows 10の時代になると「Grooveミュージック」(後のメディアプレーヤー)が前面に立つ形へ。オーディオCDの再生やリッピングを行なう際はWindows Media Playerを使うことになるが、デフォルトコーデックがMP3に変更された事、そもそもオーディオCDから配信試聴へと主流が変わった事を考えれば、使用頻度は少ないと思われる。
Windows11の新アプリ「メディアプレーヤー」検証。カーネルミキサー問題も
その意味では、WMAは過去のコーデックと切り捨ててしまってもいいとは思うのだが、Windows 11の時代でも一応Windows Media Player 12というバージョンが残っているし、「WMA 9.2」や「WMA Pro 10」というコーデックでエンコードすることも可能な事から、2002年の記事(第71回および第72回)以来の検証をしてみたというわけだ。
コーデックの検証方法
WMAをサポートしているサードベンダーソフトはいろいろあるが、最新のエンコーダ、デコーダが搭載されているのはWindows Media Player 12だと思うので、本ソフトを使って手元のWAVデータをエンコードしていく。
先程も紹介した通り、大きく4種類の選択肢がある。通常のWMA、高圧縮をうたうWMA Pro、そして可変ビットレートでの圧縮となるWMA VBR、そしてWMAロスレスだ。もっともロスレスは結果的にWAVと同じなので、ここでは除外。調査するのは3種類だ。
また、それぞれで異なるビットレートが選択できるようになっており、その内訳は下表のとおり。全18通りとバリエーションが多いが、各変換を行なっていった。
種類 | レート |
---|---|
WMA | 48kbps |
64kbps | |
96kbps | |
128kbps | |
160kbps | |
192kbps | |
WMA Pro | 32kbps |
48kbps | |
64kbps | |
96kbps | |
128kbps | |
160kbps | |
192kbps | |
WMA-VBR | 40~75kbps |
50~95kbps | |
85~145kbps | |
135~215kbps | |
240~355kbps |
Windows Media Playerという実質的に過去のものとなったソフトに文句を言ったところで始まらないが、かなり実験し難かったのも事実。というのも、WAVデータをWMAに変換しようと思ったら、それができないのだ。以前はできたはずなのだが、いつのまにかその機能が削除されていた。
そこで行なったのが、予めWAVデータをオーディオCDに焼いておき、これをあとからリッピングするという方法。
これでなんとかWMAへのエンコードはできたが、別のビットレートなどで再エンコードするには、すでにエンコードされたデータを削除した上で、Windows Media Playerを再起動し、改めてCDドライブからリッピングを行なう必要がある。実験では、リッピングの時間を減らすべく、作成したオーディオCDのイメージファイルを作り、それを仮想ドライブとしてマウントしてからリッピングするという手法で時間を節約をしている。
こうして18種類のWMAデータは作ったものの、このままでは比較実験ができない。なぜなら、WMAのデコーダを用いてこれらを再度WAVファイルに戻す必要があるためだ。しかし、これをWindows Media Playerでファイル変換することはできない。
そこでWMAからオーディオCDを焼くという方法は用意されているので、これでオーディオCDを作成し、そこからリッピングしてWAVファイルを生成するという手法をとってみた。なお、この過程でひとつ気が付いたのはWMA Proの32kbpsを使うと、サンプリングレートが32kHzに落ちてしまうということ。これだと正しい比較ができなくなってしまうため、WMA Proの32kbpsだけは除いて、計17種類をチェックしていくことにした。
実験1:WaveSpectraによる検証
それでは、従来から行なってきたのと同じWaveSpectraを利用したチェックから始めよう。
WaveSpectraでは再生時にリアルタイムにFFT解析結果を示す黒、最大値を記録したいく赤、300サンプル分の平均値を示す青で表示することができるので、ちょうど16秒のところで、一時停止して画面キャプチャしたものが以下のものだ。
これらを見て思うのは、3種類とも基本的には、ビットレートを上げていくとより高域までの成分を含むようになるが、少し妙なのがWMA Pro。48kbps、64kbps、96kbpsと順調に伸ばしていくけれど、128kbpsになると高域がバッサリ削れてしまう。しかし、160kbps、192kbpsとまた上げていくと、再び高域成分が増えていくという形になっている。
「何かミスをしたのでは…」と思ってデータを見直してみたけれど問題はなさそう。推察されるのは、WMA Proが内部的にエンコード方式を128kbpsあたりで切り替えているのでは? ということ。詳細はあとのスペクトログラムでの比較を見ていくことにする。
実験2:WMAとAAC、WMAとMP3を比較する
では、これらをAACやMP3と比較してみたらどうだろうか?
詳細は以前の記事のグラフ(第883回、第931回)と比較してもらいたいのだが、iTunes搭載のAACエンコーダ、およびWindows Media Player搭載のMP3エンコーダでの128kbpsと192kbpsの結果がそれぞれこちら。これらを比較してみると、やはりWMAは“MP3以上、AAC以下”のように見える。
実験3:オリジナルのWAVとWMAの差分を比較する
次に、オリジナルのWAVと比較して、スペクトログラム的に見てどのくらいの差分があるのかを確認する。
これも以前と同様、SteinbergのWaveLab Pro 11でスペクトログラム表示させた結果(上写真参照)を、Diffimgというツールで差分を表示させた。画像が真っ暗になるほど、オリジナルに近い事を意味する。差分の結果は下記の通り。
これを見ると、ビットレートが低い場合にはWMA Proが優位だが、ビットレートを上げていくとどれも大きな差がなくなることが分かる。
また、先ほどのWMA Pro 96kbpsと128kbpsの違いもより細かなことが見えてくる。ローパスフィルタを入れているのか、エンジンを切り替えているのかは定かではないが、明らかに違いがある。
128kbpsにすると高域は出なくなる一方、中低域は96kbpsより128kbpsのほうが原音に近くなっている。聞いた感じでも、96kbpsと128kbpsには差があり、高域が…というよりも、音の雰囲気が128kbpsのほうがキレイだ。
なお、このスペクトログラムの差分においても、AACの128kbpsと192kbps、MP3の128kbpsと192kbpsの結果を見てみると、AAC、WMA、MP3の順であることが見えてくる。
以上、Windows Media Audioの性能チェックを行なってみたが、いかがだったろうか。もしかしたら何か利用価値があるのでは? と淡い期待をしながら細かく実験をしてみたが、結果はやはり「あまり必要性が感じられないコーデック」というものだった。
むかしWMAでリッピングしたライブラリを構築した……という方もいると思うが、もし今のサブスク・ストリーミングには存在していない貴重なデータが残っているようなら、早めにWAVに変換して保存しておくのが良さそうだ。