警告
この内容は2014年の古い結果です。
2024年2月現時点では、AACへのエンコードならばFFmpeg公式推奨の Fraunhofer FDK AAC 外部ライブラリ(-c:a libfdk_aac) を推奨します。
- 2015年10月より、FFmpeg内蔵AACエンコーダの音質は、以下に説明するv7パッチよりも少し良い程度の音質となっています。すでに修正が終わった状態でFFmpegが配布されているため、パッチを当てる必要はありません。
- libfaac のサポートは2016年10月に廃止されました。使おうとするとFFmpegからUnknown encoder ‘libfaac’と言われるはずです。コマンドライン中のlibfaacをlibfdk_aacに書き換えてください。
概要
FFmpegで使える音声エンコーダの音質比較。比較対象は、FFmpeg内蔵AACエンコーダ(v4パッチ ABR、v7パッチ ABR、v7パッチ VBR)、FAAC(libfaac)、FDK-AAC(libfdk_aac)、LAME(libmp3lame)、FFmpeg内蔵AC3の7種類。ビットレートは128kbps。
FFmpeg内蔵AACエンコーダの品質を改善するv4パッチ、v7パッチはhttps://trac.ffmpeg.org/ticket/2686から入手できるが、自分で適用してビルドする必要がある。
(注:2015年10月より、パッチは新しいFFmpegに取り込まれた上、さらに細かい改善が行われています。そのため最新のFFmpegに内蔵されているAACエンコーダは図のv7よりも少し良い程度の音質となっています。2016年3月11日現在追記。)
結果
FDK-AAC > LAME ≒ FAAC > FFmpeg内蔵AACエンコーダ(v7パッチABR ≒ v4パッチABR ≒ v7パッチVBR) ≒ 内蔵AC3
FDK-AACが最も高い評価点となった。ただしFDK-AACとFAACはFFmpegのバイナリプログラムが配布不可であり、FDK-AACとFAACを使うためには、自分でFFmpegをビルドする必要がある。パッチ適用済みのFFmpeg内蔵AACエンコーダは2014年3月現在まだ一般的には配布されていない。それらを除くと、LAMEが最も高い評価となった。
評価
エンコーダ | 内AAC | 内AAC | 内AAC | FAAC | FDK | LAME | 内AC3 | |
---|---|---|---|---|---|---|---|---|
バージョン | v4 | v7 | v7 | 1.28 | 0.1.2 | 3.99.5 | r57288 | |
リリース年 | 2013 | 2013 | 2013 | 2009 | 2013 | 2012 | 2013 | |
レート制御 | ABR | ABR | VBR | VBR | ABR | VBR | CBR | |
指定レート | 128k | 128k | 0.7 | 97 | 128k | V5 | 128k | |
ファイル形式 | AAC | AAC | AAC | AAC | AAC | MP3 | AC3 | |
41_30sec | 打楽器 | 1.8 | 2.2 | 1.7 | 2.7 | 3.6 | 3.9 | 2.5 |
finalfantasy | 撥弦楽 | 2.6 | 3.5 | 1.9 | 3.9 | 4.4 | 3.0 | 2.6 |
ATrain | ジャズ | 3.8 | 4.2 | 3.2 | 3.8 | 4.3 | 4.0 | 2.7 |
BigYellow | POPS | 3.4 | 3.3 | 2.5 | 3.4 | 3.8 | 3.5 | 2.2 |
FloorEssence | テクノ | 3.1 | 2.7 | 3.3 | 3.5 | 3.9 | 3.4 | 3.4 |
macabre | オケ | 2.6 | 3.2 | 2.4 | 3.3 | 3.5 | 3.6 | 2.0 |
mybloodrusts | 弦楽器 | 2.0 | 2.9 | 2.2 | 3.5 | 4.3 | 3.2 | 2.8 |
Quizas | ラテン | 3.4 | 3.2 | 2.8 | 3.5 | 4.2 | 3.8 | 2.9 |
VelvetRealm | テクノ | 2.6 | 2.4 | 2.2 | 4.1 | 3.6 | 3.9 | 3.3 |
雨降花 | POPS | 3.3 | 2.9 | 2.8 | 3.4 | 4.0 | 3.7 | 2.4 |
Trust | Gosp | 3.4 | 3.1 | 3.4 | 4.3 | 4.0 | 3.8 | 2.3 |
Waiting | ロック | 2.7 | 3.1 | 2.9 | 3.4 | 3.8 | 3.5 | 3.0 |
Experiencia | ラテン | 3.3 | 3.1 | 2.4 | 3.4 | 5.0 | 3.6 | 2.3 |
HeartToHeart | POPS | 3.1 | 2.9 | 2.4 | 3.8 | 5.0 | 3.5 | 2.5 |
Tom's Diner | 女声 | 3.3 | 3.0 | 2.7 | 3.6 | 4.1 | 3.5 | 3.0 |
ReunionBlues | ジャズ | 3.5 | 3.2 | 3.1 | 3.6 | 3.8 | 3.7 | 2.5 |
French | 男女声 | 2.5 | 3.3 | 2.8 | 3.1 | 5.0 | 3.8 | 3.5 |
undelete | POPS | 2.9 | 2.8 | 3.3 | 3.5 | 4.1 | 3.7 | 3.1 |
Dimmu Borgir | メタル | 2.2 | 3.3 | 2.9 | 3.7 | 4.0 | 3.8 | 2.7 |
Run up | POPS | 3.2 | 3.3 | 2.4 | 3.7 | 4.4 | 3.6 | 2.6 |
German | 男声 | 2.8 | 2.6 | 3.2 | 3.0 | 5.0 | 3.6 | 3.4 |
ItCouldBeSweet | POPS | 2.7 | 2.9 | 2.9 | 3.2 | 4.0 | 3.9 | 2.6 |
ontheroofwith | POPS | 2.7 | 3.0 | 3.5 | 4.1 | 5.0 | 3.8 | 3.8 |
easy game | POPS | 2.6 | 3.4 | 3.1 | 5.0 | 3.9 | 4.1 | 2.5 |
Tears Infection | POPS | 3.9 | 3.6 | 2.4 | 4.0 | 4.3 | 3.1 | 2.5 |
↑音源 | 平均点 | 2.94 | 3.08 | 2.74 | 3.62 | 4.20 | 3.64 | 2.76 |
実レート | 129k | 129k | 138k | 132k | 130k | 135k | 128k | |
エンコーダ | 内AAC | 内AAC | 内AAC | FAAC | FDK | LAME | 内AC3 | |
バージョン | v4 | v7 | v7 | 1.28 | 0.1.2 | 3.99.5 | r57288 |
テストに利用した音源を試聴したい方、ダウンロードしたい方、ログを見たい方はこちらへ。
http://zak.s206.xrea.com/bitratetest/main.htm
[file:kamedo2:bitratetest_wav30-34.zip]
方法
銘柄に対する先入観が影響しないように、PSP ABC/HR v2.4とRP-HT560を利用して、7個のエンコードされた圧縮音源をランダムに並び替えて、銘柄を伏せて採点した。1=音質劣化が非常に気になる 2=気になる 3=わずかに気になる 4=原音からの音質変化が分かるが、気にならない 5=音質変化がわからない、区別できない。4.9点以下の評点をつける場合は、ABXYテストを15回行い、12回以上(これ以上の成績をまぐれで出す確率は約2%)正解して、違いを聞き取れることを確認してからそうした。このテストでの採点は、25(音源)×7(エンコーダ)×1(回)=175(回)。
使用したオプション
FFmpeg内蔵AACエンコーダ r.55212、v4パッチ、ABR
ffmpeg -i input.wav -c:a aac -strict experimental -b:a 128k out.mp4
FFmpeg内蔵AACエンコーダ r.57288、v7パッチ、ABR
ffmpeg -i input.wav -c:a aac -strict experimental -b:a 128k out.mp4
FFmpeg内蔵AACエンコーダ r.57288、v7パッチ、VBR
ffmpeg -i input.wav -c:a aac -strict experimental -q:a 0.7 out.mp4
FDK-AAC エンコーダ 0.1.2 (これを含むFFmpegバイナリはライセンスの問題から配布されていない、使うには自分でビルドする必要がある。)
ffmpeg -i input.wav -c:a libfdk_aac -b:a 128k -afterburner 1 out.mp4
FAAC 1.28 (これを含むFFmpegバイナリはライセンスの問題から配布されていない)(2024年2月追記:2016年10月に廃止済み)
ffmpeg -i input.wav -c:a libfaac -q:a 97 out.mp4
LAME 3.99.5 V5
ffmpeg -i input.wav -c:a libmp3lame -q:a 5 out.mp3
FFmpeg's AC3 encoder r.57288
ffmpeg -i input.wav -c:a ac3 -b:a 128k out.ac3
詳細な優劣の分析
FRIEDMAN version 1.24 (Jan 17, 2002) http://ff123.net/ Blocked ANOVA analysis Number of listeners: 25 Critical significance: 0.05 Significance of data: 2.22E-016 (highly significant) --------------------------------------------------------------- ANOVA Table for Randomized Block Designs Using Ratings Source of Degrees Sum of Mean variation of Freedom squares Square F p Total 174 78.35 Testers (blocks) 24 8.63 Codecs eval'd 6 45.26 7.54 44.41 2.22E-016 Error 144 24.46 0.17 --------------------------------------------------------------- Fisher's protected LSD for ANOVA: 0.230 Means: fdkabr lameV5 faacQ97 v7abr v4abr ac3cbr v7vbr 4.20 3.64 3.62 3.08 2.94 2.76 2.74 ---------------------------- p-value Matrix --------------------------- lameV5 faacQ97 v7abr v4abr ac3cbr v7vbr fdkabr 0.000* 0.000* 0.000* 0.000* 0.000* 0.000* lameV5 0.864 0.000* 0.000* 0.000* 0.000* faacQ97 0.000* 0.000* 0.000* 0.000* v7abr 0.206 0.007* 0.003* v4abr 0.142 0.088 ac3cbr 0.811 ----------------------------------------------------------------------- fdkabr is better than lameV5, faacQ97, v7abr, v4abr, ac3cbr, v7vbr lameV5 is better than v7abr, v4abr, ac3cbr, v7vbr faacQ97 is better than v7abr, v4abr, ac3cbr, v7vbr v7abr is better than ac3cbr, v7vbr
整形済みデータ
v4abr v7abr v7vbr faacQ97 fdkabr lameV5 ac3cbr %feature 7 FFmpeg's_native_AAC FFmpeg's_native_AAC FFmpeg's_native_AAC AAC AAC MP3 ATSC_A/52 1.800 2.200 1.700 2.700 3.600 3.900 2.500 2.600 3.500 1.900 3.900 4.400 3.000 2.600 3.800 4.200 3.200 3.800 4.300 4.000 2.700 3.400 3.300 2.500 3.400 3.800 3.500 2.200 3.100 2.700 3.300 3.500 3.900 3.400 3.400 2.600 3.200 2.400 3.300 3.500 3.600 2.000 2.000 2.900 2.200 3.500 4.300 3.200 2.800 3.400 3.200 2.800 3.500 4.200 3.800 2.900 2.600 2.400 2.200 4.100 3.600 3.900 3.300 3.300 2.900 2.800 3.400 4.000 3.700 2.400 3.400 3.100 3.400 4.300 4.000 3.800 2.300 2.700 3.100 2.900 3.400 3.800 3.500 3.000 3.300 3.100 2.400 3.400 5.000 3.600 2.300 3.100 2.900 2.400 3.800 5.000 3.500 2.500 3.300 3.000 2.700 3.600 4.100 3.500 3.000 3.500 3.200 3.100 3.600 3.800 3.700 2.500 2.500 3.300 2.800 3.100 5.000 3.800 3.500 2.900 2.800 3.300 3.500 4.100 3.700 3.100 2.200 3.300 2.900 3.700 4.000 3.800 2.700 3.200 3.300 2.400 3.700 4.400 3.600 2.600 2.800 2.600 3.200 3.000 5.000 3.600 3.400 2.700 2.900 2.900 3.200 4.000 3.900 2.600 2.700 3.000 3.500 4.100 5.000 3.800 3.800 2.600 3.400 3.100 5.000 3.900 4.100 2.500 3.900 3.600 2.400 4.000 4.300 3.100 2.500 %samples 41_30sec hihats %samples finalfantasy cemb %samples ATrain Jazz %samples BigYellow Pops %samples FloorEssence Techno %samples macabre orch %samples mybloodrusts guitar %samples Quizas Latin %samples VelvetRealm Techno %samples Amefuribana Pops %samples Trust Gospel %samples Waiting Rock %samples Experiencia Latin %samples HearttoHeart Pops %samples Tom'sDiner Vocal %samples ReunionBlues Jazz %samples French Speech %samples undelete Pops %samples DimmuBorgir Metal %samples Run_up Pops %samples German Speech %samples ItCouldBeSweet Pops %samples OnTheRoofWith Pops %samples easy_game Pops %samples TearsInfection Pops
注:公開試聴試験での多人数の平均評点と管理人の評点が似たような傾向になることは確認しているので言えるが、ある個人がある再生環境で、ある価値観のもとに聞いたときの評価が、ここに書いた管理人の評価に似るかどうかまでは何とも言えない。また、今回利用した音源とは傾向の異なる音を多くエンコードした場合、結果や順位が異なる可能性があります。