作者tedyu002 (tedyu)
看板AVEncode
标题[情报] 适合动画的编码
时间Thu Jan 28 22:49:39 2010
看前面的文章好像没有人提到
x264 的主要开发者Dark Shikari去年在他的blog写有关动画编码的一些难题
并针对现行的编码进行了测试
原文:
http://x264dev.multimedia.cx/?p=102
网路上可以找到非常多翻译文章(内容都一样...)
我大概贴一些重点
=======================
背景:
=======================
很多人以为动画静态图多,画面又乾净,所以很好进行编码,但是
1.动画拥有大量的锐利边缘,编码代价高
2.动画中的物体忽然移动使以时间轴为主的动态搜寻难以进行
以编码器角度来看
1.边缘耗费码流,导致分配给其他部份(如背景)的码率较低。
2.对於码率控制,常规的预测方法往往无能为力。
=======================
以下是测试
=======================
测试片源
东方二次同人《梦想夏乡》中的5000祯
以 SSIM(结构相似度)作为指标
以 1/(1-SSIM) 进行比较
SSIM=0.98 比 0.96 好上一倍,0.96比0.92好上一倍
要注意的是好上一倍不见得要用多上一倍的码率才能得到同样的效果
由於每个编码器输出的档案大小未必精准,会尽量调整到一致。
并使用最慢的参数
码率定在 250kbps及250最大关键影格
参与比较的编码器如下
x264(r1206) Baseline
格式: H.264/AVC Baseline profile
设定: (1)preset:placebo tune:ssim rc-lookahead:250 two-pass
(2)preset:ultrafast tune:ssim two-pass
(3)*preset:placebo tune:psnr rc-lookahead:250 two-pass
注:原文网站上这是 High Profile参数却下 baseline...
x264(r1206) High
格式: H.264/AVC High profile
设定: (1)preset:placebo tune:ssim rc-lookahead:250 two-pass
(2)preset:veryfast tune:ssim two-pass
(3)preset:medium tune:ssim two-pass
(x264 有 tune animation 不知道为什麽不用囧,而且对自家编码器测真多...)
Ateme(1.11)
格式: H.264/AVC High Profile
*其实有 2.0 版本,不过作者找不到只好用1.1版
Elecard Converter Studio(3.1)
格式: H.264/AVC High Profile
Quicktime(7.6.2)
格式: H.264/AVC Main Profile
Badaboom(1.2.1)
格式: H.264/AVC Main Profile
WMV(Expression Encoder 3)
格式:VC-1 Advanced Profile
Xvid(1.2.1)
格式: MPEG-4 Part 2 ASP
Thusnelda(ffmpeg2theora 於8月7日的 build)
格式: Theora
ffmpeg mpeg2
格式: Mpeg-2 Video
ffmpeg mpeg4
格式: MPEG-4 Part2 ASP
ffmpeg flv1
格式: Soreson Spark H.263(FLV1)
ffmpeg snow
格式: Snow
ffmpeg SVQ1
格式: SVQ1
On2 VP7
格式: VP7
Real Producer(10)
格式: RV40
Bink Video
格式: Bink Video
Indeo 5(5.1)
格式: Indeo 5
结果:
http://x264dev.multimedia.cx/wp-content/uploads/2009/08/quality_chart1.png

排名为
01. x264 02. x264 PSNR
======== 100 (SSIM=0.99 分隔线) =======
03. x264 Medium
======== 80 (SSIM=0.9875 分隔线) ======
04. x264 Baseline 05. Elecard H.264
06. x264 veryfast 07. Ateme H.264
======== 60 (SSIM~=0.9833 分隔线)======
08. VP7 09. Real
======== 40 (SSIM=0.975 分隔线) =======
10. ffmpeg MPEG-4 11. WMV
12. Snow 13. Apple H.264
14. Xvid 15. Badaboom H.264
16. ffmpeg FLV1 17. x264 Ultrafast
======== 20 (SSIM=0.95 分隔线) ========
18. ffmpeg MPEG-2 19. ffmpeg SVQ1
20. Theora 21. Bink
22. Indeo 5
评论
1. x264 baseline 击败其他编码器
2. 最佳化 PSNR (另一种画面评断指标)仍然打败其他编码器
3. ffmpeg 表现优异
4. 同样是 H.264 编码器表现参差不齐
5. WMV 表现差劲
注意事项
1. 这只是针对动画压缩的结果,且有些编码器注重压缩速度导致比较不是那麽公平
2. 解码器可能没有精确的输出每格画面导致 SSIM值低落
,这个问题有解决但不敢保证完全正确
3. 针对 WMV,real,使用ffmpeg 的解码器进行影格同步,所以有可能对结果有所影响
4. 在这个片段Theora 的码率控制有些问题(来自 theora 开发者),所以未来可以改进
5. Indeo 5.1 舍弃一些影格,这是其 SSIM 值如此低的原因
这个测试结果显示了选择一个优秀的解决方案比选择优秀的格式的重要性
===================
我论这只是 x264 开发者自吹自擂的文章囧
最近他还发了一篇:x264:世界上最好的低延迟影像串流平台...
--
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 123.204.100.2
1F:推 andy199113:就算是x264 编码器也是很重要 01/28 23:18
2F:推 web2312:Thanks for translation^^ 01/28 23:20
※ 编辑: tedyu002 来自: 123.204.100.2 (01/28 23:22)
3F:→ ishiwara:一楼应该要说 "就算是H.264 编码器也是很重要" 01/29 16:36
4F:→ ishiwara:因为x264就是x264 既不伟大也不卑微(?)XDD 01/29 16:37