帧类型选项:

 -I/--keyint i_keyint_max 最大IDR帧间距,默认为250
 -i/--min-keyint i_keyint_min 最小IDR帧间距,默认为25
 --scenecut i_scenecut_threshold 画面动态变化阈值,当超出此值时插入I帧,默认为40
-b/--bframes i_bframe 在IP帧之间可插入的B帧数目最大值,范围0~16,默认值为0
-no-b-adapt b_bframe_adaptive  关闭自适应B帧判定(-b为1时可用,其他不推荐)
--b-bias i_bframe_bias 控制插入B帧判定,范围-100~+100,越高越容易插入B帧,默认为0
--b-pyramid  b_bframe_pyramid  允许B帧做参考帧
--no-cabac b_cabac  关闭内容自适应二进制算术编码(CABAC,高效率的熵编码),会提高速度,但会严重影响质量
 -r/--ref  i_frame_reference  最大参考帧数,范围0~16,默认为1
 --nf  b_deblocking_filter  关闭环路滤波
 -f/--filter  i_deblocking_filter_alphac0

i_deblocking_filter_beta

 设置环路滤波的AlphaC和Beta的参数,范围-6~6,默认都为0

码率控制选项:

 -q/--qp  rc.i_qp_constant  固定量化模式并设置使用的量化值,范围0~51,0为无损压缩默认为26
 -B/--bitrate  rc.i_bitrate,rc.b_cbr  设置平均码率
 --crf  rc.i_rf_constant  质量模式,量化值动态可变
 --qpmin  rc.i_qp_min  设置最小量化值,范围0~51,默认为10
 --qpmax  rc.i_qp_max  设置最大量化值,范围0~51,默认为51
 --qpstep  rc.i_qp_step  量化步长,范围0~50,默认为4
 --ratetol  rc.f_rate_tolerance  平均码率下,瞬时码率可以偏离的倍数,范围0.1~100.0,默认为1.0
 --vbv-maxrate  rc.i_vbv_max_bitrate  平均码率下,最大瞬时码率,默认为0(与-B设置相同)
 --vbv-bufsize  rc.i_vbv_buffer_size  码率控制缓冲区的大小,单位Kbit,默认为0
--vbv-init  rc.f_vbv_buffer_init  码率控制缓冲区数据保留的最大数据量与缓冲区大小之比,范围0~1.0,默认为0.9
--ipratio  rc.f_ip_factor I帧和P帧之间的量化系数,默认为1.40
--pbratio  rc.f_pb_factor P帧和B帧之间的量化系数,默认为1.30
--chroma-qp-offset analyse.i_chroma_qp_offset 色度和亮度之间的量化差,范围-12~+12,默认为0
-p/--pass rc.b_stat_write,b_stat_read 多次压缩编码控制
--stats rc.psz_stat_in,rc.psz_stat_out 统计文件的名称,默认"x264_2pass.log"
 --rceq  rc.psz_rc_eq  速率控制公式,默认"blurCplx^(1-qComp)"
--qcomp  rc.f_qcompress  线性量化控制,0.0为固定码率,1.0为固定量化值,默认0.6只用于2-pass和质量模式
--cplxblur  rc.f_complexity_blur  根据相邻帧平滑量化值比例的最大值,范围0~99.0,默认20.0,只用于2-pass和质量模式
 --qblur  rc.f_qblur  对统计文件结果平滑量化值比例的最大值,范围0~99.9,默认0.5只用于2-pass
 --zones  rc.psz_zones  分段量化,格式为:<开始帧>,<结束帧>,<选项>可选项为:q=<整数>或b=<小数>
模式抉择分析选项:
 -A/--analyse  analyse.inter  块划分方法,默认"p8x8,b8x8,i8x8,i4x4",可选项:p8x8/p4x4/b8x8/i8x8/84x4;none/all
 --direct  analyse.i_direct_mv_pred  动态预测方式,默认"spatia"。可选项:none/spatial/temporal/auto
 -w/--weightb  analyse.b_weighted_bipred  允许B帧加权预测
 --me  analyse.i_me_method 对全像素块动态预测搜索的方式,默认"hex",可选项如下:

dia:菱形搜索,半径1

hex:正六边形搜索,半径2

umh:可变半径六边形搜索;

esa:全局搜索

--merange  analyse.i_me_range 选项--me为umh/esa时的搜索半径,最大64,默认16
 -m/--subme  analyse.i_subpel_refine  动态预测和分区方式,可选项1~7,默认5

1:用全像素块进行动态搜索,对每个块再用快速模式进行四分之一像素块精确搜索。
2:用半像素块进行动态搜索,对每个块再用快速模式进行四分之一像素块精确搜索。
3:用全像素块进行动态搜索,对每个块再用质量模式进行四分之一像素块精确搜索。
4:用快速模式进行四分之一像素块精确搜索
5:用质量模式进行四分之一像素块精确搜索
6:进行I,P帧像素块的速率失真最优化(rdo)
7:进行I,P帧运动矢量及块内部的速率失真最优

 --b-rdo  analyse.b_bframe_rdo  B帧也进行RDO,需要--subme在6以上
 --mixed-refs  analyse.b_mixed_references  可以在一帧内使用不同参考帧
 --no-chroma-me  analyse.b_chroma_me  不进行色度的动态预测
 --bime  analyse.b_bidir_me  可以平均B参考块的运动矢量
 -8/--8x8dct  analyse.b_transform_8x8  可以使用8x8的DCT
 -t/--trellis  analyse.i_trellis  Trellis量化,对每个8x8的块寻找合适的量化值,需要CABAC,默认0,其取值代表意义如下:

0:关闭

1:只在最后编码时使用

2:一直使用

 --cqm  i_cqm_preset  设置外部量化矩阵,默认"flat",可选项"jvt/flat"
 --cqmfile  psz_cqm_file  读取JM格式的外部量化矩阵文件,自动忽略其他--cqm*选项
 --cqm4  i_cqm_preset

cqm_4iy,cqm_4ic,cqm_4py,cqm_4pc

 设置4x4的量化矩阵,用逗号分开,范围1~255的16个整数
 --cqm8  i_cqm_preset

cqm_8iy,cqm_8py

 设置8x8的量化矩阵,用逗号分开,范围1~255的64个整数
 --cqm4i/--cqm4p/--cqm8i/--cqm8p    设置IP帧不同的量化矩阵
 --cqm4iy/--cqm4ic/

--cqm4py/--cqm4pc

   设置亮度,色度不同的量化矩阵

视频标准化选项:

 --sar
width:height
 vui.i_sar_width,vui.i_sar_height  设置长宽比
 --overscan  vui.i_overscan  过扫描线,默认"undef",可选项:show/crop
 --videoformat  vui.i_vidformat  视频模式,默认"undef",可选项:component/pal/ntsc/secam/mac/undef
 --fullrange  vui.b_fullrange  Specify
full range samples setting,默认"off",可选项:off/on
 --colorprim  vui.i_colorprim  原始色度格式,默认"undef",可选项:undef/bt709/bt470m/bt70gbg,smpte170m/smpte240m/film
 --transfer  vui.i_transfer  转换方式:默认"undef",可选项:undef/bt709/bt470m/bt470bg/inear,log100/log316/smptel70m/smpte240m
 --colormatrix  vui.i_colmatrix  色度距阵设置,默认"undef",可选项:undef/bt709/fcc/bt470bg,smpte170m/smpte240m/GBR/YcgCo
 --chromaloc  vui.i_chroma_loc  色度样本指定,范围0~5,默认0

输入/输出选项:

 --level  i_level_idc  设定等级
 --fps  i_fps_num,i_fps_den  设定帧率
 --seek    设定起始帧
 --frames  i_frame_total  最大编码帧数
 --o/--output    指定输出文件
 --threads  i_threads  编码线程数目
 --thread-input    在编码线程中运行Avisynth
 --no-asm  cpu  关闭全部CPU优化命令
 --no-psnr  analyse.b_psnr  关闭PSNR计算
 --quiet  i_log_level  安静模式
 -v/--verbose  i_log_level  显示每一个帧的信息
 --visualize  b_visualize  显示运动矢量
 --sps-id    设置SPS和PPS的ID值,默认为0
 --aud  b_aud  使用数据单元定义符号
 --progress  b_progress  显示编码进程

x264命令参数与代码中变量的对应关系的更多相关文章

  1. Java -D命令对应的代码中获取-D后面的参数 和 多个参数时-D命令的使用

    1. Java代码: public class TestDPara { public static void main(String[] args) { String flag = System.ge ...

  2. 在Visual Studio代码中使用Flask

    Flask是一个用于Web应用程序的轻量级Python框架,它提供了URL路由和页面呈现的基础知识. Flask被称为“微”框架,因为它不直接提供表单验证,数据库抽象,身份验证等功能.这些功能由称为F ...

  3. Keil C51中变量的使用

    引言 8051内核单片机是一种通用单片机,在国内占有较大的市场份额.在将C语言用于51内核单片机的研究方面,Keil公司做得最为成功.由于51内核单片机的存储结构的特殊性,Keil C51中变量的使用 ...

  4. [51单片机] Keil C51中变量的使用方法详解

    引言    8051内核单片机是一种通用单片机,在国内占有较大的市场份额.在将C语言用于51内核单片机的研究方面,Keil公司做得最为成功.由于51内核单片机的存储结构的特殊性,Keil C51中变量 ...

  5. @有两个含义:1,在参数里,以表明该变量为伪参数 ,在本例中下文里将用@name变量代入当前代码中2,在字串中,@的意思就是后面的字串以它原本的含义显示,如果不

    @有两个含义:1,在参数里,以表明该变量为伪参数 ,在本例中下文里将用@name变量代入当前代码中 2,在字串中,@的意思就是后面的字串以它原本的含义显示,如果不加@那么需要用一些转义符\来显示一些特 ...

  6. 代码中看见一共8个变量参数{SEO,0,0,0,0,0,0,0} 解读!{Top,0,0,0,0,0,0,Top}{Nav,0,0,0,0,0,0,Nav}

    代码中看见{SEO,0,0,0,0,0,0,0}{Top,0,0,0,0,0,0,Top}{Nav,0,0,0,0,0,0,Nav}解读! 举个例子: {GetNew,977,0,23,500,0,0 ...

  7. Python之TensorFlow的变量收集、自定义命令参数、矩阵运算、梯度下降-4

    一.TensorFlow为什么要存在变量收集的过程,主要目的就是把训练过程中的数据,比如loss.权重.偏置等数据通过图形展示的方式呈现在开发者的眼前. 自定义参数:自定义参数,主要是通过Python ...

  8. js中变量含(参数、数组)作用域传递问题

    js没有块级作用域(你可以自己闭包或其他方法实现),只有函数级作用域和全局作用域,函数外面的变量函数里面可以找到使用,函数里面的变量外面无法访问到. 写这个是因为ES6中的一个例子开始的.首先看下例子 ...

  9. 【openresty】向lua代码中传递参数

    前面介绍FormInputNginxModule模块时,明白了openresty如何获取post提交的数据. 然后,如果需要通过lua处理这些数据,需要把数据作为参数传递到lua中,lua获取了这些数 ...

随机推荐

  1. Bootstrap迁移系列 - Navbar

    在V2.3.2版本中一个标准的导航栏模版如下: <div class="navbar"> <div class="navbar-inner"& ...

  2. TypeScript学习笔记(三):类

    类 在TypeScript中,类似于C#的结构,即一个文件中可以存在多个类,且文件名可以任意取,我们先看一个简单的类的示例. class Person { private name: string; ...

  3. XML操作:1.XML类(http://blog.csdn.net/happy09li/article/details/7460521)

    XML绑定TreeView private void XmlOperation_Load(object sender, EventArgs e) { path = AppDomain.CurrentD ...

  4. C++的辅助工具介绍

    1 文档类  (1) Doxygen  参考站点:http://www.doxygen.org  Doxygen是一种适合C风格语言(如C++.C.IDL.Java甚至包括C#和PHP)的.开放源码的 ...

  5. xmlBean学习二

    由上一遍的准备工作完成后,可以很简单的就进行对xml文件的操作, package com; import java.io.File; import java.io.IOException; impor ...

  6. ADO.NET 快速入门(十四):使用 SQL Server 检索数据

    SqlDataReader 类提供了一种从数据源读取数据记录只进流的方法.如果想使用 OLE DB 接口的数据库或者 SQL Server7.0 之前的版本,请参考文章:使用 OLE DB 检索数据. ...

  7. 得到内网域管理员的5种常见方法<转>

    1.Netbios and LLMNR Name Poisoning 这个方法在WIN工作组下渗透很有用,WIN的请求查询顺序是下面三个步骤:本地hosts文件(%windir%\System32\d ...

  8. 在Flash Builder或者Eclipse统计代码行数的方法

    在Flash  Builder或者Eclipse统计代码行数的方法如下图菜单栏--搜索--搜索文件

  9. sql 指令

    SELECT 是用来做什么的呢?一个最经常使用的方式是将资料从数据库中的表格内选出.从这一句回答中.我们立即能够看到两个keyword:从 (FROM)数据库中的表格内选出 (SELECT).(表格是 ...

  10. SPOJ LIS2 Another Longest Increasing Subsequence Problem 三维偏序最长链 CDQ分治

    Another Longest Increasing Subsequence Problem Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://a ...