|
半年多笔者曾经前写过一份 x264 新手上路教程。由于x264的飞速发展,有很多新的概念和选项加入了。因此笔者特地在原文基础上,编写了这份2.0版的教程,并对原先不太正确的部分进行了修正。
什么是x264:
x264是一个能够编码H.264/AVC视频流的免费库。其代码由 Laurent Aimar, Eric Petit(OS X), Min Chen (vfw/nasm), Justin Clay(vfw), Måns Rullgård 和 Loren Merritt 编写。它在GNU GPL许可协议下分发
网站: http://www.videolan.org/x264.html
上路:
首先介绍一下要使用到的工具。由于这是新手教程,因此我们暂且不提命令行压制,而采用GUI方式进行。
x264有VFW(适用于VDM)和CLI(命令行界面)两种。
meGUI - x264 CLI & mencoder (XviD, lavc, Snow) GUI with (HE)AAC encoding and MP4 mux,看名字就知道,是x264 CLI、mencoder的GUI界面,而且同时可以进行(he-)aac音频编码和mp4的视频/音频合并工作。
注意,关于x264输出格式:
mp4:通常情况下mp4输出是第一选择。因为通常输出mp4以后,可以将视频和音频、字幕等一起封装在mkv中(推荐)。mmg对mp4的支持是native mode,兼容性很好;而对于avi中的avc则不能很好地封装。
avi:通常只有在成品必须要是avi的情况下才用这个选项。avi可以很容易地被VDM处理,而且拆分avi不需要独立的拆分器(splitter)。但就笔者实际测试下来看,如果你用MPC播放avc in avi,当你沿关键帧进行跳跃的时候,会容易产生非法操作。因此不推荐。
因此,在本文中,我们只讨论输出mp4的情况。
我们的压制工作将使用meGUI挂接x264 CLI来完成。
首先请下载压制所需要的工具(并解压或者安装):
.NET Framework 2.0 .net 2.0 运行库 (22.4 MB)
最新版本的 x264 CLI (版本最好要400以上)
meGUI (本文以0.2.3.2107为例讲解) (272 KB)
AVISynth 2.55
解压完成以后,请运行meGUI,在tools - settings - program paths中定位好x264的路径。
如果你想在压制的时候同时做其它事情,那么main - default priority请选择low。
x264 encoder请选择x264。
压制:
首先这里处理的都是avs,因此如果你要进行avi压制,那就得自己开一个avs写上avisource("将被压制的avi的文件名")
在MeGUI里打开avs,然后选codec为AVC,单击旁边的config,配置AVC的设置。
除了压制方法外,图中给出的是我的推荐设置。
关于压制方法的说明:
ABR: 类似普通rmvb的压制法,一次成形。码率的分配来自即时验算。通常不应该使用这个模式。
Const. Quantizer: 固定量化值输出。与xvid中的qr模式相同。每一类帧采用相同的量化值来量化,使得全片的质量大体相近。这里指定的应该是P帧的qr。I和B帧的qr由第4页的比例计算来得到。CQ模式适用于追求质量而不计全片码率和文件大小的情况。
2pass - 1st/2nd: 手动进行2pass压制,和压制XviD一样。1st时可以用turbo以加快压制速度,并不影响最后的结果。在1st pass时MeGUI不会输出任何的视频信息,也不会生成一个空的mp4/avi。(而VDM会)
automated 2pass: 自动2pass压制。一次设置就能生成2个任务,加快了处理速度。
3pass: 高级功能,供高级用户使用。xvid做过3pass的朋友应该会比较熟悉。由于这是快速上手教程,所以跳过……囧
中间的 logfile 就是我们在XviD里说的stats file了,记录了1st-pass的信息。如果你想保留这些文件而不被重复覆盖,那么为每个任务设置不同的文件名是很重要的。
Nb. thread 是线程数。开1线和2线差距不大。但是如果你是双cpu或者是双核心,开2线程可以大大提高压制速度。HT我没有条件试,不过据说效果不太好。
min/max quantizer 分别是量化的限制。如果你压的片码率较高,可以把这两个数值往下调。反之亦然。也可以放宽两者的差,但会造成不同帧的质量差距较大;或者缩小两者的差,使得不同帧的质量差距变小。
Factor between I and P (P and B) frame quants 就是我之前说过的那个ipb量化比例。个人建议使用1.1/1.1,能够在提供比较高的质量的情况下降低码率,提高压缩比。特别是B帧,用得越多,整体画质就越好。
credits quantizer 是一部影片最后的演员表的量化。设置成多少无关紧要,因为我们通常不会用到这个选项。
相关的图片:
(x264_v2_1.png)
(x264_v2_2.png)
(x264_v2_3.png)
另外,第2页是区域设置
通常情况下我们对压制参数的控制是全局的。区域只有在有特殊要求的时候才使用,用于控制某一段的质量。
一切设置完成以后,单击OK出来,然后设置好文件的输出地址及名称,单击右边的Enqueue按钮就可以将任务添加到任务队列中。然后到meGUI的第2页(Queue),按下Start按钮,就开始压制了。
值得注意的是,压制很耗费内存,请留出足够的内存以供压制……
x264的1st-pass(with Turbo)压制速度比XviD的常规速度要慢一些。实际输出文件的那一遍pass更慢一些,所以要有耐心哦。
压制完成后,我们得到mp4文件。mp4可以用MMG来合成mkv(别忘记加音频啊)。
祝大家压制愉快 ^_^
MR
3.13
转载请务必保留出处及本人大名,否则将追究责任!!!
期待大家的讨论!!!
[ 本帖最后由 MeteorRain 于 2006-3-13 21:44 编辑 ] |
|