ffmpeg x264 参数映射

FFmpeg option

x264 option

说明备注

-g <frames>

–keyint

GOP长度IDR帧一定是I帧,但是I帧不一定都是IDR帧

-b <bits per second>

–bitrate

码率CBR情况下,设置bitrate=vbv-buffersize=vbv-maxrate=vbv-minrate

-bufsize <bits>

–vbv-bufsize

VBV缓冲器http://www.bretl.com/mpeghtml/VBV.HTM

-maxrate <bits>

–vbv-maxrate

VBV最大码率瞬时最大码率

-pass <1,2,3>

–pass

多次编码 

-crf <float>

–crf

恒定质量因子http://slhck.info/articles/crf

-cqp <int>

–qp

恒定量化系数将引起较大的码率波动

-bf <int>

–bframes

B帧数目IBBPBBPBBPBBPI, bf = 2

-coder <0,1>

–no-cabac

 CABAC开关CABAC比CAVLC节省码率约10%~20%

-bframebias <int>

–b-bias

控制用B帧取代P帧的似然程度 

-keyint_min <int>

–min-keyint

关键帧最小间隔 

-sc_threshold <int>

–scenecut

场景检测阈值0~40的取值范围,这个取值越高,场景检测更容易检测到,即用IDR编码该帧

-deblockalpha <int>-deblockbeta <int>

–deblock

环路滤波强度 

-qmin <int>

–qpmin

QP最小值可以根据BPP(bit per pixel)的值来进行计算,根据经验取合理的值

-qmax <int>

–qpmax

QP最大值 

-qdiff <int>

–qpstep

QP变化两个相邻宏块之间的QP最大差值

-qcomp <float>

–qcomp

量化器曲线压缩因子0.0表示恒定比特率,1.0表示固定量化系数

-qblur <float>

–qblur

  

-complexityblur <float>

–cplxblur

  

-refs <int>

–ref

参考帧数目,最大16一般取值2~5,再大也没有什么作用了

-directpred <int>

–direct

  

-me_method <epzs,hex,umh,full>

–me

运动估计方法,默认hex

dia:钻石(菱形法),半径1,最快的编码速度

hex:十字六边形,半径2,速度慢,效果与dia

umh:非对称十字六边形,速度与质量折衷的方法

tesa: 变换全局搜索,最慢的方法

-me_range <int>

–merange

 运动搜索范围运动搜索半径越大,编码质量会提高,俺umh,eas等显著提高编码耗时

-subq <int>

–subme

子像素运动估计

很重要的参数,越高越好;级别6开启RDO(率失真优化), 8 开启运动矢量和帧内预测模式开启RDO,开启RDO耗时明显增加,但质量也会有较大提高;

0- 整像素

1- 1/4像素 SAD 1次迭代

-bidir_refine <0,1>

–bime

  

-trellis <0,1,2>

–trellis

  

-nr <int>

–nr

  

-level <int>

–level

H264的级别http://blog.mediacoderhq.com/h264-profiles-and-levels/

-bt <bits>

–ratetol = -bt / -b

  

-rc_init_occupancy <bits>

–vbv-init = -rc_init_occupancy / -bufsize

  

-i_qfactor <float>

–ipratio = 1 / -i_qfactor

  

-b_qfactor <float>

–pbratio

  

-chromaoffset <int>

–chroma-qp-offset

  

-rc_eq <string>

–rc_eq

  

-threads <int>

–threads

并行编码线程数目线程数的选择根据CPU的类型来确定,系统会自动确定一个值;但在多路并行编码中,需要合理设置,给出一个最优值。

-cmp <-chroma/+chroma>

–no-chroma-me

  

-partitions

–partitions

  

+parti8×8

i8×8

  

+parti4×4

i4×4

  

+partp8×8

p8×8

  

+partp4×4

p4×4

  

+partb8×8

b8×8

  

-flags


  

-loop/+loop

–no-deblock/–deblock

  

-psnr/+psnr

–no-psnr/nothing

  

-flags2


  

+bpyramid

–b-pyramid

是否允许b帧当做参考帧 

+wpred

–weightb

  

+brdo

–b-rdo 我这里的ffmpeg已经不能用这个了

  

+mixed_refs

–mixed-refs

  

+dct8×8

–8×8dct

  

-fastpskip/+fastpskip

–no-fast-pskip

  

+aud

–aud

  

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在使用ffmpeg设置h264参数时,可以通过调用x264_param_apply_profile函数来设置profile。\[1\]另外,如果你在Ubuntu 16.04上安装了libx264库,可以使用以下命令来安装libx264的库:sudo apt install libx264-148和sudo apt install libx264-dev。\[2\] 在设置x264参数时,你可以使用AVCodecContext结构体来设置编码器参数。首先,你需要找到对应的编码器,然后创建编码器上下文。接下来,你可以准备编码器参数,并使用avcodec_open2函数来设置编码器参数。\[2\] 如果你想设置preset参数,可以在准备编码器参数时设置。\[2\] 如果你想设置profile参数,可以使用AVDictionary结构体来设置。你可以创建一个AVDictionary对象,并使用av_dict_set函数来设置profile参数的值。然后,将该AVDictionary对象作为第三个参数传递给avcodec_open2函数。\[2\]\[3\] 总结起来,你可以使用x264_param_apply_profile函数来设置profile参数,使用AVCodecContext结构体来设置编码器参数,使用AVDictionary结构体来设置preset和profile参数。 #### 引用[.reference_title] - *1* *2* [【FFmpeg】设置H264参数](https://blog.csdn.net/u010168781/article/details/107497953)[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^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [ffmpeg 编码h264设置参数](https://blog.csdn.net/qq_32642107/article/details/109668619)[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^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值