继续.
下面的
b-frame quantizer ratio和 offset又是怎么回事?它是用来控制b-frame的量化的, b-frame量化的quantizer将用下面的公式得出:
[(前1桢的quantizer + 后1桢的quantizer)/2* ratio + offset]/100
其中"前1桢","后1桢"指I或P桢,而B桢将不会被考虑。比如您设定的ratio和offset分别为150/100, 前1个p-frame quantizer =4, 后1个=5,那么其间的b-frame quantizer=
[(4+5)/2 * 150 + 100]约等于8, 那么这儿的b-frame将用quantizer=8来量化。
b-frame threshold, (-255至255?), 值越大XviD加入b-frame的概率或者敏感度越大.
那么究竟什么时候用b-frame,什么时候不用呢?
b-frame有很大的压缩率,由于它参考前后的画面(p-frame只参考前面的画面), 所以bframe所要记录的信息比较少, 但由于bframe会用很少的码率给画面,所以效果会稍稍有所下降(当然也有开启b-frame后画面得到了提升的例子).那么, b-frame会让做出来的片子很糟糕吗?会吗?会的话XviD干嘛用它?相反, b-frame是个大大提高压缩率的好东西,b-frame节省下来的信息给i和p frame,使得电影的整个效果变得更好起来了。
总结一下,并鉴于b-frame的其它特性,
1. 若您的目标文件大小很小,码率较低 600-900, 比如只做1cd, 那么开启b-frame会很合适, 并且bframe会从vhq中获得更多好处,所以不妨也设置vhq=4(vhq=4会在同样质量下文件比vhq=1小10%, 不过编码时间会翻1倍).
2. 较高码率的, 2cd-3cd, 码率在1500以上, 或DVD原本画面特别干净, 特别多的高动态(如matrix), 高品质的动画[不是动画片, bframes是压动画片的法宝, 这儿是指高清晰高动态的电脑动画如FF系列提取出来的动画, 包括像Final Fantasy (The Spirits Within)这样的电影]不适合用bframe
如图40,Encoding Mode里是2pass- 2nd pass Int
这个....hmmmm....我从来不用GKnot, 不过若是用它的话, 2nd-pass应该选"2pass- 2nd pass Ext."才是。
Int.= internal, Ext. = External, Gknot是用自己码率统计,所以相对XviD自身的统计来说, Gknot是External.
不过我不肯定啊,或许现在Gknot也可以直接使用XviD的stats,若是那样那也可以2nd pass Int.
当然也可以在Second Pass中把Quantization Type改成MPEG(增加画面锐度,推荐)
这个就不敢苟同了甚至, 恕我直言,它是完全错误的.
首先, 2nd-pass是对1st-pass的统计来实际的分配码率,达到画质和压缩率的最佳平衡, 其间用到h263或MPEG的方法被称为量化--"quantization"(1st-pass也是quantization的结果). h.263和MPEG是非常不同的量化方法, 1st pass 用h.263, 2nd-pass用MPEG会使XviD对1stpass下来的统计数据处理得异常混乱,把握不了合适的码率。导致文件大小超标或不足,即使刚好合适相信其码率的分配也不够合理。
第2, 1st-pass下来就是"在这个设置下的最佳画质", 改称mpeg不会比1stpass增加锐利度。
第3, 无论哪种设置都应该保持1st-pass, 2nd-pass一模一样, 这样XviD的码率控制器(Rate Controler)才能好好的工作。这也是Xvid开发人员的意思。
当然, 对于那些2nd-pass独有的而1st-pass没有的选项,诸如quantizer restrictions, 可以在2nd pass时设置.实际上这个设置在1st-pass中根本就不会用, 1st-pass将用quant.=2恒定的去量化。 |