x264 quantizer 量化相关 [学习笔记2]

1)qscale

-qscale <string> E.V.. Force constant QP (0=lossless)

-cqp <string> E.V.. Force constant QP (0=lossless)

-qscale < value > or -cqp < value >

暂且认为qscale  cqp 都表示一种意思吧,如果指定cqp 就很少用了qmin qmax啦。
Specify a fixed quantizer that will be used for every frame. This is a VBR encoding method.

建议:一般使用cqp ,如果指定恒定的cqp 就不要设定qmin qmax 了。


2)qmin  qmax

qmin [optional] - Minimum quantizer.
Allowed values: integer
qmin=<quantizer> allows to set the minimum quantizer scale, 
Default: 10
 
qmax [optional] - Maximum quantizer.
Allowed values: integer
qmax=<quantizer> allows to set the maximum quantizer scale, 
Default: 50

<使用了这两个参数就可以不使用qscale 参数。>


3)qdiff

qdiff [optional] - Set max QP step.
Allowed values: integer
-qdiff <string> E.V.. Set max QP step
Default: 4



4)i_qfactor ,b_qfactor 

i_qfactor [optional] - Qscale difference between I-frames and P-frames.
修改I帧量化值相比P帧量化值的目标平均增量。越大的数值会提高I帧的品质?
Allowed values: float
Default: 0.71

b_qfactor [optional] - Qscale difference between P-frames and B-frames.
修改 B帧量化值 相比P帧量化值的目标平均减量。越大的值会降低B帧的品质。
当mbtree启用时(预设启用),此设定无作用,mbtree会自动计算最佳值。
也有这样说的
当mbtree启用时,它会影响mbtree的强度(qcomp越大,mbtree越弱)。
Allowed values: float
Default: None (设置成1.25?)

5)qcomp

qcomp [optional] - QP curve compression: 0.0 => CBR, 1.0 => CQP.
Allowed values: float
Default: 0.60
This gives a short explanation of qcomp and qblur.

qcomp expresses the compression:

qcomp = 0 -> constant bitrate
qcomp = 0.5 -> default value
qcomp = 1 -> constant quality


6)qblur

qblur [optional] - Reduce fluctuations in QP (after curve compression) .
在曲线压缩之后,以给定的半径范围套用高斯模糊于量化值曲线。不怎么重要的设定。
Allowed values: float
Default: 0.5

For what regards the qblur: it is used to *detect the quantization
factor* or (or quantization parameter or QP or simply Q) for the frame
using as reference the previous frames.

The "level of blurring" refers to the quantization parameter: since
the HVS (human vision system) is rather susceptible to the variation
of quality, the QP blurring tells how to average the current QP to use
with reference to the previous ones.
The ratecontrol mechanism may work because it stores the quantization
values as well as other statistics used by the encoder (they are
stored in the entries field inside the rate control context).

So we have:
qblur = 0 -> no previous frames are considered when computing the
current QP.
qblur = 0.5 -> default value
qblur = 1 -> the QP to use is computed as the average of all the




参考网页:

http://ffmpeg-users.933282.n4.nabble.com/attachment/935622/0/ratecontrol-notes.txt

http://www.nmm-hd.org/doc/index.php?title=X264%E8%A8%AD%E5%AE%9A&variant=zh-sg#pbratio

http://www.nmm-hd.org/doc/index.php?title=X264%E8%A8%AD%E5%AE%9A&variant=zh-sg#pbratio








你可能感兴趣的:(c,c,encoding,encoding,x264,compression,compression)