x264参数设置及脚本编写

来源:互联网 发布:天安号事件 知乎 编辑:程序博客网 时间:2024/05/17 05:18

上午写了下x264的bat脚本,来总结下x264的参数设置。
1、默认情况下,x264采用random access的IPBBBPBBB…编码结构,也就是会周期性地插入I帧,且bframes等于3。而JM中默认是low delay的IPPP…编码结构,不会中途插入I帧,且参数NumberBFrames默认为0。
2、要想在编码过程中不插入I帧,需设置两个选项,将min-keyint设为比序列总长度还大,以及no-scenecut,缺一不可。
3、x264的信息是往stderr输出的,对应C++中的cerr/clog,Windows下对应重定向流是%2。而HM中输出是用printf,也就是stdout,Windows下对应重定向流是%1。
4、x264在编码时,不会输出每帧的编码信息,而是间隔的输出一些帧的编码信息,估计是为了加速吧。
5、建议在exe文件名前面加上if not exist filename.txt,使得不同的CPU核不会重复编码同一个QP点。
6、输出重定向建议用>>(对应于C语言的”a”模式)而不是>(对应于C语言的”w”模式)。因为如果在不同的CPU核重复编码同一个QP点的时候,>会将已有的文件里的内容清空;当然,如果在脚本语句开头添加了if not exist,则>和>>不存在区别。
7、JM的解码器可以设置解码帧数:-n 帧数,HM的参数配置文档中好像没有这样的选项。
8、如果想注释掉一部分脚本,在前面加”::”。如果想让核在跑到某个地方停下来,用pause命令。

0 0