随着H.264编码器质量的不断提升,基于H.264的编码也越来越流行。今天本人就带给各位x.264的基本压制教程。
首先介绍一下要使用到的工具。由于这是新手教程,因此我们暂且不提命令行压制,而采用GUI方式进行。
x264是一款免费的H.264编码器。有VFW(适用于VDM)和CLI(命令行界面)两种。
mencoder可以用来调用x264的库进行编码。
meGUI - x264 CLI & mencoder (XviD, lavc, Snow) GUI with (HE)AAC encoding and MP4 mux,看名字就知道,是x264 CLI、mencoder的GUI界面,而且同时可以进行(he-)aac音频编码和mp4的视频/音频合并工作。
我们的压制工作将使用meGUI挂接mencoder/x264 CLI来完成。
首先请下载压制所需要的工具(并解压或者安装):
.NET Framework 1.1 .net运行库 - 如果你没有安装VS.net 2003的话,还是下载吧……
最新版本的 x264 CLI最新版本的 mplayer 需要注意的是,最新版本是在最下面。请选用适合你的CPU的版本。mplayer内附有mencoder程序。
mencoder必须的一个动态链接库 下载完后,请把它安放在与mencoder相同的目录下。否则是无法压制x264的。
meGUI 不好意思忘记了最重要的东东的链接……就在那贴的
附件里
解压完成以后,请运行meGUI,在tools - settings中定位好mencoder和x264的路径。
下方的default priority请选择low。
x264 encoder这个选项与你想要的输出格式有关。输出mp4请使用x264,输出avi则使用mencoder。
注意:关于输出格式:
mp4:通常情况下mp4输出是第一选择。因为通常输出mp4以后,可以将视频和音频、字幕等一起封装在mkv中(推荐)。mmg对mp4的支持是native mode,兼容性很好;而对于avi中的avc则不能很好地封装。
avi:通常只有在成品是avi的情况下才用这个选项。avi可以很容易地被VDM处理,而且拆分avi不需要独立的拆分器(splitter)。但就我实际测试下来看,MPC在播放avc的avi时,当你沿关键帧进行跳跃的时候,会产生非法操作。因此不推荐。压制:
首先这里处理的都是avs,因此如果你要进行avi压制,那就得自己开一个avs写上avisource()
在MeGUI里打开avs,然后选codec为AVC,单击旁边的config,配置AVC的设置。
除了压制方法外,图中给出的是我的推荐设置。
关于压制方法的说明:
ABR: 类似普通rmvb的压制法,一次成形。码率的分配来自即时验算。通常不应该使用这个模式。
CQ: 固定量化值输出。与xvid中的qr模式相同。每一类帧采用相同的量化值来量化,使得全片的质量大体相近。这里指定的应该是P帧的qr。I和B帧的qr由第2页的比例计算来得到。CQ模式适用与追求质量而不计全片码率和文件大小的片子使用。
2pass - 1st/2nd: 手动进行2pass压制。和rmvb一样。1st时可以用turbo以加快压制速度。在1st pass时MeGUI不会输出任何的视频信息,也不会生成一个空的mp4/avi。(而VDM会。)
automated 2pass: 自动2pass压制。一次设置就能生成2个任务,加快了处理速度。
3pass: 高级功能,供高级用户使用。xvid做过3pass的朋友应该会比较熟悉。由于这是初心教程,所以跳过……
第2页如图
其中min/max quantizer 分别是量化的限制。如果你压的片码率较高,可以把这两个数值往下调。反之亦然。也可以放宽两者的差,但会造成不同帧的质量差距较大。
Nb. thread 是线程数。开1线和2线差距不大。但是如果你是双cpu或者是双核心,开2线程可以大大提高压制速度。HT我没有条件试。试过的朋友别忘记说一下效果。
Factor between I and P (P and B) frame quants 就是我之前说过的那个ipb量化比例。设置为1/1能够在提供比较好的质量的情况下降低码率提高压缩比。特别是B帧,用得越多,整体画质就越好。
credits quantizer 是一部影片最后的演员表的量化。设置成多少无关紧要,因为我们通常采用相同的量化值来压制。
最底下的 logfile 就是我们在XviD里说的stats file了,记录了1st-pass的信息。如果你想保留这些文件而不被重复覆盖,那么为每个任务设置不同的文件名是很重要的。
第3页是区域设置
通常情况下我们进行全局压制。区域只有在有特殊要求的时候才使用,用于控制某一段的质量。
一切设置完成以后,单击OK出来,然后设置好文件的输出地址及名称,单击右边的Queue按钮就可以将任务添加到任务队列中。然后到MeGUI的第2页(Queue),按下Start按钮,就开始压制了。
值得注意的是,压制很耗费内存,请留出足够的内存以供压制……
x.264的1st-pass(with Turbo)压制速度比XviD的常规速度要慢一些。实际输出文件的pass更慢一些。不过显然比Nero的AVC编码器要快得多。
压制完成后,我们得到mp4/avi文件。mp4可以用MMG来合成mkv(别忘记加音频啊)。avi则用VDM处理(要用1.5.x+版本才行哦)!
祝大家压制愉快 ^_^
MR
6.24
转载请务必保留出处及本人大名,否则将追究责任!!!期待大家的讨论!!!