发信人: humanmale(艺) 
整理人: b8238(2003-11-24 22:19:49), 站内信件
 | 
 
 
首先有三点可以得到证实:
 
 1.XVID的输出质量好于DIVX
 2.国内对XVID的相关介绍教材太少!但是国外已经很流行了。不少超强的工作室都是用他作为其作品在互联网上发布的输出解码方式
 3.XVID以公布源代码的方式开发,任何人可以修改,完善其源代码,团队力量不可低估。
 本文涉及的一些概念在DIVX解码中同样可以作为学习参考
 --------------------------------
 
 
 
 安装好XVID后在任何一个你惯用的开放Vfw标准视频编辑软件(例如VirtualDUB)的Codec列表中,都可以看到并选用XVID Codec编码。 
 
 如果安装后没有出现,建议关闭所有运行程序后再安装,并在安装后重新启动。如果不行就在重启后再安装XVID一次..... 
 
 高级设置XviD codec Advanced Options(VfW前端) 
 
 Main —— 主面板 
 
 注意很多选项是否可选是根据主面板中的Mode模式选项而定的(原因略)。 
 
 
 
 
 
 1-pass 固定码流模式 "1 pass CBR": 
 
 最简单的单线编码,选择平均码流后编码。 
 
 注意:目前亮度蒙版不能与CBR同时使用,详见后。 
 
 在计算码流时注意:XVID遵循新的MPEG4标准,1kb=1000bytes,而不是DivX3.11或一般的1kb=1024kb。 
 
 ----------------------------- 
 1-pass 质量模式(动态码流) 
 
 
 所有帧都依照相同的压缩比例压缩。很适合对一些AVI文件二次编码。 
 
 
 ------------------------------- 
 
 
 1-pass 量化模式(动态码流) 
 
 
 另一种质量控制模式,根据画面的量化程度(也就是画面细节的损失程度)来控制压缩编码。选中此模式时,设定的量化级别将被应用,数字越高,细节损失也越大。其输出文件的质量很稳定(固定量化值)。 
 
 
 不同于1-pass 质量模式的地方是:1-pass 质量模式下量化控制会有变动。 
 
 
 
 
 
 2-pass - 1st pass 二重运算 之 第一重模式: 
 
 
 用最高质量编码(量化值2),同时收集画面信息,生成的AVI文件不到1M,几乎不占用空间。可以在Two Pass控制板选择输出信息(stats)文件的位置和文件名。这个信息(stats)文件将被用在 二重运算 之 第二重模式编码中,并被根据画面运动指标来调整量化值和生成帧大小以其输出最优画面质量且符合用户设置的目标大小的视频文件。 
 
 
 注意:不要在第一重和第二重运算之间变换压缩设置,或者加入变形等滤镜Filter,这将会造成不正确的结果。 
 
 
 
 
 
 2-pass - 2st pass Ext. 二重运算 之 外部第二重模式 : 
 
 
 如果你不相信XVID内建的二重运算内核,你可以用Gordan Knot来编辑第一重运算所生成的信息(Stats)文件。如果你是这样做的,那么说明你是一位高手,不需要我来多做解释(译者按:这是Koepi偷懒)。只要在第二重模式下调入Gordan Knot生成的信息(Stats)控制文件。此模式下,XVID不会再进行任何新的调整或平衡运算。 
 
 
 
 
 
 2-pass - 2st pass Int. 二重运算 之 内部第二重模式 : 
 
 
 此模式利用的是XVID内建的二重运算内核。此模式下,您可以在XVID面板中手动控制各个选项。详情见后。 
 
 
 目标文件大小(desired size):使用1k=1024 bytes的标准,注意这里不包括音频部分。 
 
 高级控制面板Advanced Options: 
 
 ------------------------------- 
 全局变量(Global): 
 
 运动检测精度(Motion search precision): 
 
 
 运动检测精度决定着给定码流下的画面质量。一般2 CD制作选择, “5-Very High”应该足够了,如果是完美主义者则可选择“6 - Ultra High”,代价是多10%的运算时间(不过画质提高有限)。 
 
 技术资讯: 
 
 
 1 - 3 只见基本没有什么区别。 
 
 
 4 开始,XVID使用半像素插值(half pixel interpolation)的技术达到更好的结果,而整个16x16的微区块被标示上两帧之间的运动向量(译者按:ffshow有显示这个向量的功能,很有趣) 
 
 
 5 开始:XviD 使用4分运动向量(inter4v motion vectors)的方式,即16x16的微区块中的4个8x8区块,被标示各自的运动向量。 
 
 
 6 运行更多边的运动检测。 
 
 量化方式(Quantization Type): 
 
 此处应该根据目标码流来决定。高码流,例如2CD,建议使用MPEG量化方式,可以得到最佳结果。如果码流很低,建议使用.h263量化方式。 
 
 如果你使用两重运算,无论1st pass或者是2nd pass在此处都应使用同一设定。 
 调配(Modulated)模式仅限于2nd pass使用。欲使用此模式,请在1st pass时使用MPEG方式。之后此模式将根据需要在MPEG和.h263之间切换。 
 
 如果平均量化值超过3.7,建议用.h263。如果小于2.4,建议使用MPEG方式。 
 
 
 (此处某些设置尚未完全测试过). 
 
 FourCC 
 
 
 改变成其他的FourCC码,可以使文件在播放时利用不同的解码滤镜,不过也可能造成播放错误。 
 
 关键帧距(I-frame interval): 
 
 
 最大关键帧距一般应该为10-12倍的每秒帧数(FPS)。过大会导致播放时跳进控制的响应速度,因为要显示非关键帧必须从关键帧计算起。 
 
 
 最小关键帧距可以避免距离过近的过剩关键帧出现(例如大运动场面),建议10。 
 
 ---------------------------------- 
 亮度蒙版(Lumi masking): 
 
 
 利用“心理视觉”的理论,去除人类不能看到或分辨的亮度层次(例如过亮或过暗处的细节)。在2nd pass中谨慎使用,因为它看起来弊大于利,特别是与“intraframe quantizer locking”共用会造成问题。也不要在1st pass中使用,因为这样会进行两次“校正”,结果可能会惨不忍睹。 
 
 隔行画面处理(Interlacing): 
 
 
 可以用在隔行的源画面处理。建议谨慎使用。 
 
 量化((Quantization): 
 
 
 此处可以分辨控制关键帧(I-Frame)、中间帧(P-Frame)的最高和最低的量化级别限制。请注意量化值越高,画面质量越差。但过低的量化值,尽管有助于提高最终画面的质量,但也会使最终文件的大小难以控制,需要注意。 
 
 量化矩阵(Quantization matrix) 
 
 
 量化矩阵 决定着运动画面中特定量化余弦(DCT)系数所对应的量化值。 
 
 Two Pass(两重运算): 
 
 
 关键帧加强(I-frame boost %):可以为关键帧特别加高码流。例如原本分配给某一关键帧5000bytes,此处设定为20%,实际将为该关键帧分配6000bytes。(个人爱用)结果可能会比默认的好,因为内核会盲目的平衡分配量化值给一些中间帧。 
 
 
 不保存第一重运算(Discard first pass):不保存第一重运算的生成文件 
 
 
 不输出第二重运算(Dummy 2nd pass):不输出第二重运算的视频结果 
 
 
 曲线平衡压缩(curve compression):控制着码流曲线的平滑度。如果将高低极限low/high设置为0,将几乎不限制控制曲线的波动(也就是说码流的波动越大,设定值越高则码流波动越小),并生成一个完全动态码流的文件,此情况下可能需要将payback delay设置为1。 
 
 
 曲线平衡压缩将会给运动场景分配更高的码流,例如曲线平衡压缩(curve compression)中的High为0或更低时,大动态画面就会被分配较多的码流,反之亦然。不过需要提醒您的是,肉眼原本就难以分辨高速运动画面的细节(当然,另一方面连续的静态画面本来就只需要更少的码流)。 
 
 
 补偿段(Payback delay):这里的数字意味着将会有多少帧来补偿之前的某一超出标准码流或是低于标准码流的帧。数字越高,码流将被强制平滑分配。 
 
 
 Payback with bias:补偿倾向于较小的帧 
 
 
 Payback with proportionally:无倾向补偿,对每一帧都同等对待 
 
 Alt. Curve(另一类平衡曲线控制):使用Foxer的平衡曲线算法。(目前暂无资料) 
 
 
 演职员表选项 Credits: 
 
 
 如果你希望影片的演职员表不再使用最佳的质量压缩,就在这里设置演职员表的起止帧数。在XVID中你可以设置两段这样的低压缩比例的片断。 
 
 
 下面的%比例(Rate)控制意味着低压缩段落的码流,相对于全片平均码流的比例,例如全片平均码流为800kbps,那么演职员表部分就将以80kbps的码流生成。 
 
 
 如果你希望在这里选择量化(quantizer)控制而不是比例控制,请注意一定要在1st pass第一重压缩时就设定好,否则可能不会达到符合你预期的码流。 
 
 
 你也可以选择控制演职员表部分的固定大小(fixed size),但是不要在这里设定得太离谱,XVID的最大量化值只能达到31。在此处1kb=1024 bytes 
 
 
 CPU选项:可以选择特定的CPU指令集优化。 
 
 调试选项(Debug options):译者按:此处略,高手应该可以自己读原文资料,不需要我来多嘴(^-^) 
 
 XviD Directshow 解码滤镜 Filter 
 
 
 brightness control控制画面亮度 
 
 post-processing 画面优化措施: 
 
 Horizontal deblock (Y) 柔化水平相的亮度马赛克 
 
 Horizontal deblock (C) 柔化水平相的色度马赛克 
 
 Deringing(Y) 柔化环状亮度色斑 
 
 Seringing (C) 柔化环状色度色斑 
 
 注:人眼对亮度变化最为敏感,因此建议在CPU资源有限的情况下优先考虑两度(Y)上的画面优化措施 
 
 减少蚊状噪点(mosquito):此功能尚未优化,可能会导致播放不流畅。 
 
 
 
  | 
 
 
 |