注册 登录
NORM TEAM论坛 返回首页

ibud的个人空间 https://www.normteam.com/?1782 [收藏] [复制] [分享] [RSS]

日志

x264的三种码率控制模式

热度 1已有 708 次阅读2014-5-13 06:52

qp
  三种位元率控制方法之一。设定x264以固定量化值(Constant Quantizer)模式来编码视讯。这里给的值是指定P帧的量化值。I帧和B帧的量化值则是从--ipratio和--pbratio中取得。CQ模式把某个量化值作为目标,这意味着最终档案大小是未知的(虽然可以透过一些方法来准确地估计)。将值设为0会产生无失真输出。对于相同视觉品质,qp会比--crf产生更大的档案。qp模式也会停用弹性量化,因为按照定义“固定量化值”意味着没有弹性量化。 
  虽然qp不需要lookahead来执行因此速度较快,但通常应该改用--crf。 
bitrate
  三种位元率控制方法之二。以目标位元率模式来编码视讯。目标位元率模式意味着最终档案大小是已知的,但最终品质则未知。x264会尝试把给定的位元率作为整体平均值来编码视讯。参数的单位是千位元/秒(8位元=1位元组)。注意,1千位元(kilobit)是1000位元,而不是1024位元。 
  此设定通常与--pass在两阶段(two-pass)编码一起使用。 

crf

  预设值:23.0 
  最后一种位元率控制方法:固定位元率系数(Constant Ratefactor)。当qp是把某个量化值作为目标,而bitrate是把某个档案大小作为目标时,crf则是把某个“品质”作为目标。构想是让crf n提供的视觉品质与qp n相同,只是档案更小一点。crf值的度量单位是“位元率系数(ratefactor)”。 

  CRF是借由降低“较不重要”的帧之品质来达到此目的。在此情况下,“较不重要”是指在复杂或高动态场景的帧,其品质不是很耗费位元数就是不易察觉,所以会提高它们的量化值。从这些帧里所节省下来的位元数被重新分配到可以更有效利用的帧。 

  CRF花费的时间会比两阶段编码少,因为两阶段编码中的“第一阶段”被略过了。另一方面,要预测CRF编码的最终位元率是不可能的。根据情况哪种位元率控制模式更好是由你来决定。 


----------
总结:

  CRF是最值得推荐的码率控制模式。不建议使用ABR模式和QP模式,ABR模式(单趟bitrate)的质量是最差的。如果你不嫌转码时间慢,而且觉得自定的码率值是最优的,那么用2pass模式也未尝不可。2pass的质量和crf是一致的。(同码率下)

  大部分人不喜欢CRF,一个是历史原因(各大PT组仍然沿用2PASS模式,包括各种所谓教程),一个是CRF模式的码率不可控,同一个参数压720p,有可能1000kbps,也有可能4000kbps,视画面复杂性而定。想问问那些用abr或2pass的RIPPER:你们追求一致的码率(体积)想干嘛?假设同一部动画的某一集是静态场景居多,另一集是战斗场景居多,难道,为了体积一致,两集用一样的码率?! 什么逻辑!要是放在五六年前,还能理解(刻盘收藏需控制体积),现在什么年代了……



路过

雷人

握手
1

鲜花

鸡蛋

刚表态过的朋友 (1 人)

全部作者的其他最新日志

评论 (0 个评论)

小黑屋|手机版|NORM TEAM论坛 ( 粤ICP备16015586号-3 )

GMT+8, 2024-5-17 11:00 , Processed in 0.033604 second(s), 8 queries , File On.

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

返回顶部