可逆音声圧縮の比較
KbMedia Player が The True Audio (TTA) に対応していることが分かったので,TTA と Monkey's Audio と FLAC を色々比較してみる.
可逆音声圧縮は他にも WMA Lossless とか WavPack とかあるらしいが,とりあえず今回はこれだけで.ちなみに,KbMedia Player は WavPack にも対応しているようだ.foobar2000 などのプレイヤーもこれらの音声圧縮形式に対応している.DirectShow Filter や Winamp Plugin も開発されているので,インストールすれば Windows Media Player や Winamp でも再生できる.
エンコーダの説明
http://www.true-audio.com/ にある GUI の Tau Producer 1.1 とコマンドラインの ttaenc 3.2 を試した.TTA には圧縮率を指定するオプションは存在しないようだ.Tau Producer は TTA のライブラリが組み込まれているらしく ttaenc が無くても単体で動作する.Tau Producer と ttaenc で生成されるバイナリは同一のようだ.
- Monkey's Audio (*.ape)
http://www.monkeysaudio.com/ にある GUI の Monkey's Audio 3.99 を試した.指定できる圧縮率には従来で最高の Extra High よりも高圧縮な Insane(基地外仕様?)が追加されているようだ.Monkey's Audio には基本的に下位互換性はない.
http://www.rarewares.org/lossless.html にあるコマンドラインの FLAC 1.1.1 (ICL7.1 compile) を試した.Pentium 4 に最適化されているので速いはず.動作には同所で配布されている Intel libmmd.dll が必要.時間計測のために Monkey's Audio の GUI をフロントエンドにした.方法は「Monky's Audio でFLAC」(妖精現実フェアリアル)を参考に.
比較対象
- ape (Normal)
Monkey's Audio の標準
- ape (Extra High)
従来の Monkey's Audio の最高圧縮
- ape (Insane)
Monkey's Audio 3.99 の最高圧縮
Tau Producer と ttaenc は生成するバイナリが同一であり,エンコード時間もCD1枚で数秒しか変わらないので,Tau Producer のみを採用
- flac (Normal)
FLAC の標準.--compression-level-5 相当
- flac (High)
FLAC の最高圧縮.--compression-level-8 相当
- wav
無圧縮の WAVE ファイル
比較項目
- 圧縮率
実ファイルサイズと無圧縮 WAVE との比を示す
- エンコード時間
実エンコード時間と演奏時間との倍率を示す
- シーク時間
再生開始に掛かる時間やシーク時間を示す参考データ.再生環境は KbMedia Player
サンプルデータ
I've の SHORT CIRCUIT をリッピングした WAV ファイル
シーク時間の比較は Track 04 の「さくらんぼキッス」で
比較結果
- 圧縮率
ape (Insane) 68.2% 424 MB (445,325,588 バイト) ape (Extra High) 68.5% 426 MB (447,510,688 バイト) ape (Normal) 69.6% 433 MB (454,966,116 バイト) tta 71.0% 442 MB (463,933,986 バイト) flac (High) 71.4% 444 MB (466,415,715 バイト) flac (Normal) 71.7% 446 MB (468,284,924 バイト) wav 100.0% 623 MB (653,360,300 バイト)
どんなに高圧縮にしても可逆圧縮では 2/3 にもならないということか.ただ,ape (Insane) や ape (Extra High) と flac (High) や flac (Normal) を比較すると 20MB ほどの差があるので,高圧縮のために ape を選ぶのは悪くはない.ただ,後述するエンコード時間やシーク時間を考えると,ape (Insane) を使うのはやはり基地外であるとしか言いようがない.
- エンコード時間
tta x29.9 02:04 flac (Normal) x24.7 02:30 ape (Normal) x20.5 03:01 ape (Extra High) x10.1 06:05 flac (High) x6.1 10:08 ape (Insane) x3.3 18:45 wav x1.0 61:43
tta の異常な速さと ape (Insane) の異常な遅さが印象的.flac (Normal) と flac (High) や ape (Extra High) と ape (Insane) を比較すると,それぞれ 2MB 程度しか差がないので,3〜5倍の時間を掛けてまで flac (High) や ape (Insane) を使用するのはあまりにコストパフォーマンスが悪い.
- シーク時間
tta, flac (Normal), flac (High) ほぼノンストップ ape (Normal), wav 瞬断 ape (Extra High) 1 秒程度 ape (Insane) 10 秒弱
ape (Insane) を使用するのはやはり基地外だ.ape (Extra High) の 1 秒程度の途切れはそれほど気にならない.