AVC/H264编码教程(十)

来源:互联网 发布:python 调用外部命令 编辑:程序博客网 时间:2024/06/07 06:25
  • x264生成的AVI文件的FourCC(K)是其中(指AVI容器中)的视频流的标识符。如果没有特别指定,Xvid生成的AVI文件具有“XVID”的FourCC。对AVC文件来说,H264是一个可以被广泛接受和支持的FourCC,依照AVC 1.1标准所建议,你最好保持其默认的H264。

  • CABAC,即双向适应二进制算法编码(L),是x264的main profile中的一项能够允许视频流的构成基础参照之前和之后来进行预算的关键特性。它主要是用以在品质无损耗的前提下提升压缩效率(依具体视频和比特率的不同在10%~15%之间波动),而解码速度会有轻微的下降(通常高比特率和低量化值会导致复杂的CABAC解码)。如果将其禁止,x264会采用较低品质的CAVLC,同时你也就会失去使用Trellis量化特性的机会。我强烈建议你勾选该选项,除非你想要获得一个尽可能快的解码速度(Xbox、掌上电脑等等)。

  • “Trellis”(M)是一个通过选取在压缩过程中存在于编码文件中的数据来提升编码的视觉品质的高级特性。它看上去像是提高了比特率的利用率,但是由于当你选择一直开启该选项(框格呈灰色并被选中)时会造成约10%的速度下降(即CLI中trellis 1和trellis 2的区别),而相对(正常选择状态)提升的品质比较有限,我建议将该选项置于正常选取状态,而当你知道它将会造成问题时,完全取消勾选该项。

  • “交错编码(Interlacing)”(S)是一个可以使得x264对视频源文件进行简单的固定交错编码的特性。如果你的视频源文件不是隔行的,或者你不知道这个选项的作用,最好是敬而远之。反之,如果你确切地知道你的视频源文件是隔行的,则勾选该项。注意:你必须取消勾选Trellis (M)并设定最大连续B帧(max consecutive B-frames,在“体积与帧(MBs&Frames)”选项卡下)为0。

  • “降噪(Noise Reduction)”(O):如果你的视频源文件有很多噪点(比如带有很多类似电影的斑点或者录像/抓取视频时的静电干扰),你可以在这里设定一个降噪值。如果你没有其他的降噪操作,这就是一个很好的预处理特性。范围从0(关闭)到100(极大程度的降噪)。我通常将其设为0,然而,这是在我事先知道我的视频源文件看起来是我想要的那样的前提下。如果我的目的是很低的比特率,由于降噪可以去除那些难以(被通过编码的方式)压缩的噪点,它就会对品质和比特率有所助益。

  • 参照下面的“去马赛克教程”来获得有关如何正确设置使用“去块插件(Deblocking Filter)”(N)的相关信息。