MPEG(mpeg1,mpeg2,mpeg4) 与H264 QP值间 关系

H264 Quant与MPEG Quant数值参对表

x264vfw 的1pass 是按照 I q:21 P q:24 B q:26 的量化算的,而且在vfw里面不能改变这些参数. 但在mencoder里则可以定义1pass的 qp_constant=<1−51> 这个和xvid不同的,xvid一般是用q2跑1pass的,当然你也可以在x264设置一下,但是要清楚的是 H.264 的 量化参数和 Xvid 的是不一样的. 也就是说H.264 的 Q2 不等于 Xvid 里的 Q2 以下引用MPlayer的说明档简单介绍H.264 的量化值和MPEG的大致关系: Note that quantization in H.264 works differently from MPEG-1/2/4: H.264’s quantization parameter (QP) is on a logarithmic scale. The mapping is approximately H264QP = 12 + 6*log2(MPEGQP). For example, MPEG at QP=2 is equivalent to H.264 at QP=18.
x264vfw 的1pass 是按照 I q:21 P q:24 B q:26 的量化算的,而且在vfw里面不能改变这些参数. 但在mencoder里则可以定义1pass的 qp_constant=<1−51> 这个和xvid不同的,xvid一般是用q2跑1pass的,当然你也可以在x264设置一下,但是要清楚的是 H.264 的 量化参数和 Xvid 的是不一样的. 也就是说H.264 的 Q2 不等于 Xvid 里的 Q2 以下引用MPlayer的说明档简单介绍H.264 的量化值和MPEG的大致关系: Note that quantization in H.264 works differently from MPEG-1/2/4: H.264’s quantization parameter (QP) is on a logarithmic scale. The mapping is approximately H264QP = 12 + 6*log2(MPEGQP). For example, MPEG at QP=2 is equivalent to H.264 at QP=18.


*050410更新:
正确的算法应该是
QP(H264) =12.0 + 6.0 * log(qscale/0.85) / log(2.0) = 12.0 +6.0 * log2(qscale/0.85)
QP(H264) =12.0 + 6.0 * log(qscale/0.85) / log(2.0) = 12.0 +6.0 * log2(qscale/0.85)

感谢PowerK6提出!

•H.264标准支持52个量化步长,对应于不同的量化参数(QP)如表1-1所示,QP值每增加6,Qstep值增加一倍。QP值每增加1,Qstep值增加12.5%。量化步长取值范围很广,这就为编码中兼顾比特率和编码质量提供了足够多的灵活度和准确度。 •H.264标准支持52个量化步长,对应于不同的量化参数(QP)如表1-1所示,QP值每增加6,Qstep值增加一倍。QP值每增加1,Qstep值增加12.5%。量化步长取值范围很广,这就为编码中兼顾比特率和编码质量提供了足够多的灵活度和准确度。
经验分享 程序员 微信小程序 职场和发展