x264参数设置及脚本编写

上午写了下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
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Shell脚本是一种可以执行的文本文件,其中包含了一系列需要按顺序执行的命令。编写Shell脚本时,需要遵循以下规则: 1. 文件扩展名:通常,Shell脚本的文件扩展名为.sh,以便区分其他类型的文件。 2. 脚本头部:在Shell脚本的第一行,使用Shebang行来指定脚本解释器。例如,#!/bin/bash表示使用Bash解释器执行脚本。不同的Shell解释器可能有不同的Shebang行。 3. 注释:可以在脚本中使用注释来提供额外的说明。注释以#开头,可以单独一行或在命令行后面。 4. 可执行权限:在使用Shell脚本之前,需要给脚本文件添加可执行权限。可以使用chmod命令来设置脚本的执行权限,例如chmod +x script.sh。 5. 命令的书写:在Shell脚本中,每个命令都需要单独的一行,或使用分号来分隔多个命令。命令的参数可以在同一行上,也可以分行书写。 6. 变量:可以在Shell脚本中使用变量来保存数据。变量名需要以字母或下划线开头,并由字母、数字和下划线组成。变量的值可以是字符串、数字等。 7. 控制流语句:通过使用条件语句(如if语句)、循环语句(如for和while循环)和函数等控制流语句,可以实现更复杂的操作。 8. 输入输出:Shell脚本可以从标准输入(键盘)读取数据,并向标准输出(屏幕)打印结果。也可以使用重定向和管道来进行输入输出的处理。 以上是编写Shell脚本的一些基本规则。根据具体需求,还可以结合各种Shell控制语句和命令来完成更复杂的操作。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Shell编程规范](https://blog.csdn.net/weixin_45305723/article/details/123852926)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值