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

[请教]如何用crf来做2pass的1th pass

楼层直达
级别: 精灵王
注册时间:
2008-04-08
在线时间:
44小时
发帖:
2855
只看该作者 30楼 发表于: 2009-04-15
引用
最初由 zjhray 发布
要在megui里在2nd pass时导入stats,是否只要和avs同名就可以了?


我不用MeGUI的,所以不清楚。
既然用bat了那就1st pass和2nd pass一起写好,最好连最后的mux也放进去,这样不是最好吗

最终qp和码率 x264.exe在编码完后会打在控制台上,MeGUI又不会凭空弄出数据来,所有的信息都是从x264的输出里取的
级别: 新手上路
注册时间:
2006-04-16
在线时间:
0小时
发帖:
286
只看该作者 31楼 发表于: 2009-04-15
难道说用了命令行连最终qp值都看不到吗,有办法输出吗,或者在编码结束后不要让dos框消失。
还有1pass时用crf,2pass时不能再指定任意bitrate去压吗
级别: 新手上路
注册时间:
2006-04-16
在线时间:
0小时
发帖:
286
只看该作者 32楼 发表于: 2009-04-15
引用
最初由 雷鸣 发布


这不是编码输出啊……我觉得应该是一些只有x264自己看得懂的东西写在里面才对

第二pass的时候,megui主界面上面config按钮按了以后弹出的窗口里面可以看到 logfile 这个框框, 选择生成的log就好。log文件按理来说会和avs放在一起

x264 [info]: slice I:7 Avg QP:15.21 size:155667

x264 [info]: slice P:427 Avg QP:17.87 size: 69838

x264 [info]: slice B:308 Avg QP:20.21 size: 26461

x264 [info]: consecutive B-frames: 30.5% 38.9% 6.1% 24.5%

x264 [info]: mb I I16..4: 5.2% 90.1% 4.7%

x264 [info]: mb P I16..4: 1.8% 16.2% 0.8% P16..4: 48.8% 19.0% 9.4% 0.2% 0.2%skip: 3.5%

x264 [info]: mb B I16..4: 0.3% 1.8% 0.1% B16..8: 46.8% 2.0% 2.9% direct: 8.3% skip:37.8% L0:42.9% L1:45.1% BI:12.0%

x264 [info]: 8x8 transform intra:86.1% inter:71.1%

x264 [info]: direct mvs spatial:97.1% temporal:2.9%

x264 [info]: ref P L0 57.2% 23.5% 19.3%

x264 [info]: ref B L0 75.6% 24.4%

x264 [info]: kb/s:10097.1
借用一下,我说的log是这样的
级别: 精灵王
注册时间:
2008-04-08
在线时间:
44小时
发帖:
2855
只看该作者 33楼 发表于: 2009-04-15
引用
最初由 zjhray 发布
难道说用了命令行连最终qp值都看不到吗,有办法输出吗,或者在编码结束后不要让dos框消失。
还有1pass时用crf,2pass时不能再指定任意bitrate去压吗


你在cmd里运行bat,或者在bat最后加上一行pause,这样结束后console不会关掉
1pass用crf,2pass当然可以用任意bitrate,不过最好两个pass的最终码率不要相差太远,不然可能效果不好,所以1pass的crf需要大致估算一下,这个就靠经验了

P.S. Win2000以后的命令行除了继承了些命令其他和dos一点关系没有,所以不要叫应该叫命令行
级别: 精灵王
注册时间:
2008-04-08
在线时间:
44小时
发帖:
2855
只看该作者 34楼 发表于: 2009-04-15
引用
最初由 zjhray 发布

x264 [info]: slice I:7 Avg QP:15.21 size:155667

x264 [info]: slice P:427 Avg QP:17.87 size: 69838

x264 [info]: slice B:308 Avg QP:20.21 size: 26461

x264 [info]: consecutive B-frames: 30.5% 38.9% 6.1% 24.5%

x264 [info]: mb I I16..4: 5.2% 90.1% 4.7%

x264 [info]: mb P I16..4: 1.8% 16.2% 0.8% P16..4: 48.8% 19.0% 9.4% 0.2% 0.2%skip: 3.5%

x264 [info]: mb B I16..4: 0.3% 1.8% 0.1% B16..8: 46.8% 2.0% 2.9% direct: 8.3% skip:37.8% L0:42.9% L1:45.1% BI:12.0%

x264 [info]: 8x8 transform intra:86.1% inter:71.1%

x264 [info]: direct mvs spatial:97.1% temporal:2.9%

x264 [info]: ref P L0 57.2% 23.5% 19.3%

x264 [info]: ref B L0 75.6% 24.4%

x264 [info]: kb/s:10097.1
借用一下,我说的log是这样的


这些log就是x264输出到命令行的,而且就是给用户看的,而且我觉得不难看懂啊
级别: 新手上路
注册时间:
2007-06-24
在线时间:
14小时
发帖:
123
只看该作者 35楼 发表于: 2009-04-16
1pass用crf后, 在2pass里指定的bitrate是没用的吗?
级别: 精灵王
注册时间:
2008-04-08
在线时间:
44小时
发帖:
2855
只看该作者 36楼 发表于: 2009-04-16
bitrate当然有用,不然要2pass干嘛
级别: 新手上路
注册时间:
2006-04-16
在线时间:
0小时
发帖:
286
只看该作者 37楼 发表于: 2009-04-16
引用
最初由 roozhou 发布


这些log就是x264输出到命令行的,而且就是给用户看的,而且我觉得不难看懂啊

问题差不多解决了,谢谢。
1th pass时好像还要用--direct auto,否则用megui做2nd pass时会有警告。
还有就是命令行的框太小了,超出框的部分看不到,框又不能改变大小,能拷贝出来吗
级别: 新手上路
注册时间:
2006-04-16
在线时间:
0小时
发帖:
286
只看该作者 38楼 发表于: 2009-04-16
b-adapt2的1th pass之所以变慢了,是因为只有一线程在做b frame decision,用了turbo后,其他参数变弱处理速度加快,等待b frame decision的完成再进行下一步,造成处理器大部分资源。
既然这样,那就提高其他参数,顺便也能让1th pass的qp值更接近2nd pass,那哪些参数是必要的,会影响到最终结果,哪些参数即使开高也无济于事的?
级别: 精灵王
注册时间:
2008-04-08
在线时间:
44小时
发帖:
2855
只看该作者 39楼 发表于: 2009-04-16
我用给你的参数编码,CPU占用始终在95%以上(E8400),即使用你说的b6,也在85%左右

1st pass可以开低的参数包括
ref, me, subme, merange
说实话,将这些参数开高基本对2nd pass没有作用,而且肯定会使1st pass变慢,即使原先CPU没有占满

你可以在x264命令行结尾加上2>xxx.txt将输出重定向到xxx.txt文件中
级别: 工作组
注册时间:
2007-12-16
在线时间:
0小时
发帖:
88
只看该作者 40楼 发表于: 2009-04-16
引用
最初由 雷鸣 发布


我的gui支持。但是不支持新版的x264


你的是--8x8dct 1这个的问题。。现在X264只需要加上 --8x8dct就好了

级别: 新手上路
注册时间:
2006-04-16
在线时间:
0小时
发帖:
286
只看该作者 41楼 发表于: 2009-04-16
ref, me, subme, merange开高看来只能使1th pass的码率更有参考价值。
在2nd pass时使用aq,1th pass时也要用吗?
级别: 精灵王
注册时间:
2008-04-08
在线时间:
44小时
发帖:
2855
只看该作者 42楼 发表于: 2009-04-16
aq两个pass应该设成一样
你的1st pass是crf,想要码率更有参考价值最好的办法是让最终码率更接近而不是开高ref,me,subme,merange,2pass并不是越慢质量越好的。如果你还是坚持这样的理论,我对你也没什么可说的了,你去用最慢的参数好了,3pass,4pass都能用,反正从理论上讲总是能越来越好的
级别: 新手上路
注册时间:
2006-04-16
在线时间:
0小时
发帖:
286
只看该作者 43楼 发表于: 2009-04-16
引用
最初由 roozhou 发布
aq两个pass应该设成一样
你的1st pass是crf,想要码率更有参考价值最好的办法是让最终码率更接近而不是开高ref,me,subme,merange,2pass并不是越慢质量越好的。如果你还是坚持这样的理论,我对你也没什么可说的了,你去用最慢的参数好了,3pass,4pass都能用,反正从理论上讲总是能越来越好的

你误会我的意思了,比如说1pass用低参数crf22得出1000k/s的码率,2pass时ref8,me9,subme hex,merange24用1000k去压,可能得出同参数下crf20的结果,那就与我设定的crf22的目标不符了。
级别: 精灵王
注册时间:
2008-04-08
在线时间:
44小时
发帖:
2855
只看该作者 44楼 发表于: 2009-04-16
2pass的目的就是要一个指定的文件大小,不然你直接crf22不就行了
快速回复

限150 字节
上一个 下一个