X264算法参数(analyse parameters)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/CrystalShaw/article/details/90405879
参数名称 参数类型 参数含义 参数配置
intra unsigned int 帧内预测模式

默认:

X264_ANALYSE_I4x4

| X264_ANALYSE_I8x8

inter unsigned int 帧间预测模式

默认:

X264_ANALYSE_I4x4 
| X264_ANALYSE_I8x8
| X264_ANALYSE_PSUB16x16 
| X264_ANALYSE_BSUB16x16

b_transform_8x8 int 是否使用亮度信号8x8帧内预测模式  
i_weighted_pred int 使x264能够使用明确加权预测(explicit weighted prediction)来改善P帧的压缩。亦改善淡入/淡出的品质。模式越高越慢。  
b_weighted_bipred int B帧隐式加权  
i_direct_mv_pred int 时间空间运动向量预测模式  
i_chroma_qp_offset int 色度量化步长偏移量  
i_me_method int 全像素(full-pixel)运动估计方法。5种选择 dia(diamond菱形搜索) 是最简单的搜索方式,从最优预测值出发,往上、左、下、右一个像素处检测运动向量,挑选最好值,然后重复该步骤,直至找不到更优的运动向量。

hex(hexagon六角形搜索) 的策略类似,但它对周围六个点进行range-2搜索,因此称为六角形搜索。此方法效率大大高于dia,且速度相当,因此通常编码常用此项。

umh(uneven multi-hex不对称多六角形搜索)比hex慢很多,但能搜索复杂的多六角形,以避免错过很难找到的运动向量。与hex和dia相似,merange参数直接控制umh的搜索半径,使用者可自行增减搜索的空间尺寸。

esa(exhaustive全面搜索) 在最优预测值附近merange范围内的整个空间内,以高度优化的智能方式搜索运动向量。相当于数学上的穷举法,搜索区域内的每一个运动向量,但是更快些。然而,此方法远远慢于UMH,且好处不多,对于普通编码没有太大用处。

tesa (transformed exhaustive变换全面搜索)算法尝试对各个运动向量近似哈达玛变换比较法。与exhaustive类似,但效果略好,速度略慢。
i_me_range int 整像素运动估计搜索范围 (from predicted mv)   
i_mv_range int 运动矢量最大长度  
i_mv_range_thread int 线程之间的最小运动向量缓冲  
i_subpel_refine int 亚像素运动估计质量。设定子像素(subpixel)估算复杂度。值越高越好。层级1~5只是控制子像素细分(refinement)强度。层级6为模式决策启用RDO,而层级8为动态向量和内部预测模式启用RDO。RDO层级明显慢于先前的层级。使用小于2的值不但会启用较快且质量较低的lookahead模式,而且导致较差的--scenecut决策,因此不建议。 

0:Fullpel only
1:QPel SAD 1 iteration
2:QPel SATD 2 iterations
3:HPel on MB then QPel
4:Always QPel
5:Multi QPel+bi-directional motion estimation
6:RD on I/P frames
7:RD on all frames
8:RD refinement on I/P frames
9:RD refinement on all frames
10:QP-RD(requires --trellis=2,--aq-mode>0)
11:Full RD: disable all early terminations

设置7-10。低于默认值不推荐。速度快选择7-9配合--trellis 1

b_chroma_me int 亚像素色度运动估计和P帧的模式选择  
b_mixed_references int 允许每个宏块的分区有它自己的参考号  
i_trellis int Trellis量化是一种可以改善基于DCT的编码方法的数据压缩的算法。它用于在有损视频压缩编码器(例如Xvid和x264)中的运动估计之后优化残差DCT系数。
Trellis量化减小了一些DCT系数的大小,同时恢复了其他DCT系数取代它们的位置。此过程可以提高质量,因为Trellis选择的系数具有最低的RD失真率。
Trellis量化有效地找到每个块的最佳量化,以使PSNR相对于比特率最大化。根据输入数据和压缩方法,它具有不同的有效性。
0. 禁用;1. 仅用于最终编码的宏块;2. 用于所有模式决策。用于宏块能较好地平衡速度和效率,用于所有模式(2)时会进一步降低速度,有时还会令细节模糊。 
b_fast_pskip int 快速P帧跳过检测  
b_dct_decimate int P帧变换系数阈值  
i_noise_reduction int 自适应伪盲区  
f_psy_rd float Psy RD强度

参考https://blog.csdn.net/CrystalShaw/article/details/94721617

psy功能还是慎用。建议使用默认值。

f_psy_trellis float Psy Trellis强度  
b_psy int   Psy优化开关,可能会增强细节  
b_mb_info int      
b_mb_info_update int      
i_luma_deadzone[2] int   亮度量化中使用的盲区大小  
b_psnr int   计算和打印PSNR信息  
b_ssim int   计算和打印SSIM信息  

猜你喜欢

转载自blog.csdn.net/CrystalShaw/article/details/90405879
今日推荐