改めて並べてみると、音質面で最も優れたエンコーダはCore Audio、次いで2番目がlame 3.99.5mという結果であった。
Core Audioは謝花ミカさんのブログ等でも絶賛されており納得の結果だが、2015年にリリースされたlame 3.99.5mが未だ現役であることに正直驚いた。
いずれも音質とサイズは比例するということがはっきりと見て取れる。
lameにオワコンという印象を持っている方も多いと思うが、音質とサイズのバランス面で優れており、今でも十分圧縮音源の選択肢の一つになり得るはずだ。
ただし、lameはバージョンによって使用できるオプションが異なるため、上記のように数学的にCore Audioに肉薄する結果を出すのであれば、3.99.5mと専用オプションを用いてエンコードする必要がある。
なお、3.99.5oでも同様の検証を行った結果は、
Difference (rms) = -45.88dB [-48.38dBA] / DF Metric (Median)=-38.6dB / サイズ=11.6MBとなり、lame3.99.5mより若干劣る結果となった。
と、これで検証を終了するつもりだったが、オーディオ愛好家のコミュニティサイト「Hydrogenaud」内で、halb27氏自らlame 3.99.5mの性能を最大限引き出すオプションをユーザーに指南していたことから、この場を借りて試してみることにする。
上の比較表で用いた数値は、halb27氏オススメのローパスフィルター設定(-V0 --cvbr 0 --lowpass 17 --noreplaygain - [outfile])でエンコードされており、ローパスフィルターで人間の可聴範囲を超える高音域をリミット(制限)している状態だ(図1-1)。
【図1-1】17kHz以上が容赦なく切り捨てられており、ローパスフィルターがきちんと機能していることが見て取れる。
リミッターを解除する設定(-V0 --cvbr 0 --lowpass -1 --noreplaygain - [outfile])でエンコードしてみた結果、Core Audioよりもサイズが小さく、音質面に優れた高品質なmp3ファイルが生成された(図1-2、1-3)。
Difference (rms) = -46.82dB [-48.09dBA] / DF Metric (Median)=-39.5dB / サイズ=11.6 MB
【図1-2(元のflacファイル)】
ハイレゾ音源だけあって、人間の可聴域を超えた高周波数帯にまできちんと音が詰っている。
【図1-3(ローパスフィルター解除による高品質なmp3)】
当たり前だが、巧みな間引きによりスペクトログラムが原形を保っている。
更にhalb27氏は、可聴品質の向上は期待できない非常識な設定としながらも、lameで究極を追い求めるユーザーに対して以下のコマンドを示している。
-V0 --insane_factor 1.0 --lowpass -1 --noreplaygain - [outfile]
このコマンドを用いて生成されたmp3は、
Difference (rms) = -46.85dB [-48.13dBA] / DF Metric (Median)=-39.5dB / サイズ=11.6 MB
で、先に紹介した【-V0 --cvbr 0 --lowpass -1 --noreplaygain - [outfile]】を更に上回る結果になった。
数学的な一致率を追求するのであれば、非可逆圧縮であるmp3ではなく数学的にも聴覚的に完璧なロスレス(flac等)に行き着くため、圧縮音源としてはこの辺りが限界か。
興味のある方は関連ファイルを以下からダウンロードし、自身で検証を行ってください。
【lame v3.99.5m+dBpoweramp CLI Encoder set】
(オリジナルファイルとの一致率確認は、DeltaWaveを使用)
※ cvbrとinsane_factorはいずれも3.99.5m固有のコマンドであり、他バージョンや正規lameには流用できない。