搜索 社区服务 统计排行 帮助
  • 3282阅读
  • 17回复

稍微测试了一下x264的几种--me

楼层直达
级别: 侠客
注册时间:
2005-02-09
在线时间:
0小时
发帖:
512
除了--me外的参数均为
x264 --level 4.1 --crf 20.0 --keyint 240 --min-keyint 24 --ref 4 --mixed-refs --no-fast-pskip --bframes 16 --b-pyramid --b-rdo --bime --weightb --direct auto --subme 7 --trellis 2 --analyse all --8x8dct --merange 64 --threads auto --thread-input --progress --no-psnr --no-ssim

片源为2520帧FullHD 24p H264,静态和动态画面均有,比较干净的动画片段

dia
x264 [info]: slice I:19Avg QP:14.16 size: 7220400:00
x264 [info]: slice P:1219 Avg QP:15.34 size: 28201
x264 [info]: slice B:1282 Avg QP:18.01 size: 3834
encoded 2520 frames, 3095.42 kb/s

hex
x264 [info]: slice I:19Avg QP:14.32 size: 7131700:00
x264 [info]: slice P:1198 Avg QP:15.34 size: 28440
x264 [info]: slice B:1303 Avg QP:17.99 size: 3883
encoded 2520 frames, 3081.84 kb/s

umh
x264 [info]: slice I:19Avg QP:14.32 size: 7131700:00
x264 [info]: slice P:1200 Avg QP:15.34 size: 28138
x264 [info]: slice B:1301 Avg QP:18.04 size: 3743
encoded 2520 frames, 3044.16 kb/s

esa
x264 [info]: slice I:19Avg QP:14.32 size: 7131700:00
x264 [info]: slice P:1200 Avg QP:15.34 size: 28129
x264 [info]: slice B:1301 Avg QP:18.08 size: 3717
encoded 2520 frames, 3040.72 kb/s

tesa
x264 [info]: slice I:19Avg QP:14.28 size: 7156800:00
x264 [info]: slice P:1182 Avg QP:15.36 size: 28195
x264 [info]: slice B:1319 Avg QP:18.03 size: 3814
encoded 2520 frames, 3023.39 kb/s

隐去fps是因为设成low优先度让它在后台玩的,还开了大量的其他程序,没有参考价值,大致esa比umh慢5倍以上,tesa比esa慢20%左右

从码率上可以看出来,很自然的线性关系,越慢的所需码率越低,umh到esa显然很不经济,用速度换质量的话,tesa的效率要高得多

结论:追求平衡选择umh,追求极限质量选择tesa,esa已经没有意义了[/TX]
级别: 风云使者
注册时间:
2006-03-12
在线时间:
54小时
发帖:
6604
只看该作者 1楼 发表于: 2008-03-05
终于有人测 tesa 了 赞一个

请教下
--ref 4 --bframes 16 是什么意思?
一般不都是--ref 大于等于--bframes 的么

级别: 侠客
注册时间:
2005-02-09
在线时间:
0小时
发帖:
512
只看该作者 2楼 发表于: 2008-03-05
--ref 4是1080p@level4.1的极限

--bframes 16其实无关紧要,不关闭自适应bframe时,bframe的使用数量是自动选择的,这个参数只是指定自动选择的最大值而已
级别: 工作组
注册时间:
2003-05-11
在线时间:
201小时
发帖:
36355
只看该作者 3楼 发表于: 2008-03-05
引用
最初由 qyqgpower 发布
--ref 4是1080p@level4.1的极限


求qyq大解...

why ref4是极限...

1080p的片子做的少

  
级别: 骑士
注册时间:
2005-05-11
在线时间:
0小时
发帖:
1269
只看该作者 4楼 发表于: 2008-03-05
引用
最初由 yujin630 发布


求qyq大解...

why ref4是极限...

1080p的片子做的少


硬解関係
avc level3.1以上參考幀最大只能是4

级别: 工作组
注册时间:
2003-05-11
在线时间:
201小时
发帖:
36355
只看该作者 5楼 发表于: 2008-03-05
呀...

sb了sb了

多谢LS提醒 忘了这么一说了 囧

还是基础不扎实 嗯

  
级别: 侠客
注册时间:
2005-02-09
在线时间:
0小时
发帖:
512
只看该作者 6楼 发表于: 2008-03-06
引用
最初由 Rouble 发布


硬解関係
avc level3.1以上參考幀最大只能是4

不是,这和分辨率有密切关系,而且在721之前,ref还要考虑bframe和b-pyramid的设置,因为后两者会影响DPB(Decoded Picture Buffer)的大小

721开始,--ref设置会考虑到DPB大小,所以在level4.1(MaxDPB=12582912 byte)时
1280x720 --ref最大9
1920x1080 --ref最大4

指定level后--ref过限(实质上为DPB越界)会有提示,比如
x264 [warning]: DPB size (13824000) > level limit (12582912)
级别: 工作组
注册时间:
2003-05-11
在线时间:
201小时
发帖:
36355
只看该作者 7楼 发表于: 2008-03-06
嗯 受教了
谢qyq大

DPB大概也知道点点,但是根本没想到和这个东西有关联...
看最前边的帖子,猜测是和分辨率有关但是不知怎解

也感谢rouble大指点XDDDDDD

  
级别: 新手上路
注册时间:
2007-02-26
在线时间:
0小时
发帖:
185
只看该作者 8楼 发表于: 2008-03-06
merange竟然开到64????
级别: 新手上路
注册时间:
2007-02-26
在线时间:
0小时
发帖:
185
只看该作者 9楼 发表于: 2008-03-06
另外,如果真要符合Level4.1的要求,除了VBV相关设置要设置外,P4*4也要去掉~
级别: 侠客
注册时间:
2005-02-09
在线时间:
0小时
发帖:
512
只看该作者 10楼 发表于: 2008-03-06
引用
最初由 techneek 发布
另外,如果真要符合Level4.1的要求,除了VBV相关设置要设置外,P4*4也要去掉~

VBV现在没有定论,全部都是猜测性的,有人测试到80Mbps左右DXVA开始不正常,但标准里说的level4.1的CPB是62500
级别: 新手上路
注册时间:
2007-02-26
在线时间:
0小时
发帖:
185
只看该作者 11楼 发表于: 2008-03-06
VBV实际上就是硬件播放器的帧缓存容量,max rate就是硬件播放器从存储媒体到内存或者内存到解码核心的带宽峰值,取二者间比较小的值。对于不同的解码芯片,不同的硬件体系(包括电脑里使用的DXVA,实际上就是显卡内置的解码模块)VBV的具体情况是不同的。可以理解的是,电脑的显卡显然是众多硬件解码方案中最强的一种,恐怕比BD播放机的硬件还要强。所以,以DXVA为参考设置VBV并不是一个很好的方案。

虽然硬件的素质各有不同,但是AVC的标准只有一个,对4.1来说,AVC标准里规定Buffer Size是12MB,峰值码率为50Mbps。但是以次世代DVD标准BD来说,实际的VBV尺寸是30000Kbits,Max Rate为38000Kbps。后者为BRD的Video最高传输率(1.5x),前者应为BD标准里规定的缓存最小值。

BRD-Video是Level 4.1现实中最高层次的应用实例,所以我个人认为以BRD-Video的标准设置VBV比较合理。

EDIT:回到原来的问题:merange为什么要开到64?
级别: 侠客
注册时间:
2005-02-09
在线时间:
0小时
发帖:
512
只看该作者 12楼 发表于: 2008-03-06
为什么不能64,我只知道umh的质量相对于merange的大小不是线性关系(图形是个锯齿),但总体趋势仍旧是约大效率越高

还有p4x4在level3以上不能开启的问题
理论上来说,是为了防止超过MaxMvsPer2Mb=16

但实际应用中,打开p4x4并不会造成问题,因为MaxMvsPer2Mb的目的是限制计算能力的消耗,但由于p4x4只会被用在极少数(0.5%)的MB中,相对于整帧的MV数量来说根本可以忽略不计,所以不会对解码器造成额外的负担

所以对于解码器,无论硬件还是软件,在高level下开p4x4并不会造成什么后果
级别: 新手上路
注册时间:
2007-02-26
在线时间:
0小时
发帖:
185
只看该作者 13楼 发表于: 2008-03-06
Well, 首先merange在dia hex模式下被限制到16,设置到64只在umh和之后的模式中有效,另外比起merange带来的增益(有些时候没有增益还有反作用),我觉得牺牲的时间代价太大了,未免不太经济。

下面是doom9上的一些数据:
引用

x264 foo_640x368.yuv -r 3 -b 3 --me umh --merange 16
x264 [info]: PSNR Mean Y:42.24 U:46.86 V:47.51 Avg:43.34 Global:42.98 kb/s:797.4
encoded 1000 frames, 9.37 fps, 797.59 kb/s

x264 foo_640x368.yuv -r 3 -b 3 --me umh --merange 32
x264 [info]: PSNR Mean Y:42.24 U:46.85 V:47.50 Avg:43.33 Global:42.98 kb/s:795.9
encoded 1000 frames, 8.00 fps, 796.12 kb/s

x264 foo_640x368.yuv -r 3 -b 3 --me umh --merange 64
x264 [info]: PSNR Mean Y:42.23 U:46.84 V:47.48 Avg:43.32 Global:42.97 kb/s:796.3
encoded 1000 frames, 5.75 fps, 796.46 kb/s
级别: 侠客
注册时间:
2005-02-09
在线时间:
0小时
发帖:
512
只看该作者 14楼 发表于: 2008-03-06
40%而已,比起从umh到esa的500%速度差距只是小case :D

umh时提高merange的确没有什么意义,我前面就说了,对质量的影响有高有底,并不是线性

但对于esa和tesa来说,merange的提升对于质量的提高是绝对线性且明显的,特别是tesa,你可以自己去测一下,画个图表就知道了
快速回复

限150 字节
上一个 下一个