自己动手制作MPEG4文件
作者:赵江 来源:赛迪网 添加时间:2006-5-21 16:36:26●复制DVD文件
大家都知道DVD影片采用的是vob格式文件来存放的,而且这些文件大都是经过加密处理的,所以我们需要做的第一步就是将DVD光盘上的文件复制到硬盘中,然后才能进行其它的处理工作。

图1

图2
●文件格式转换
此时在硬盘中的文件是vob格式的,离MPEG4还有十万八千里,现在就要将文件格式转换为普通播放器可以识别的通用格式。目前有好几种工具可以实现这种转换目的,但是在此向大家介绍一个笔者认为是最好用的转换工具---flask mpeg-encoder。利用它能够把vob格式的文件转换为avi(MPEG4格式)或者是mpeg-1(vcd格式)的文件。

图3
【video】(见图3)
其中的“frame size”是最后生成影像的播放窗口大小,你可以根据自己的需要来调整,但是提醒大家注意,这两个值一定要是16的整数倍,不然在转换过程中会出错。下部的“time base”是根据电视机的制式来转换文件,选择29.97、23.976或者是24,就可以得到ntsc制式的文件;对于pal制式来说,则需要25。右边的“idct options”提供了三种转换法则,它们分别为mmx、无mmx和ieee-1180,其中mmx采用了浮点运算,因此是最快的一种转换算法;而ieee-1180则保证了转换时的影像损伤最小,所以是最慢的算法。如果你的机器够快,那么ieee-1180是最佳的选择,不然还是选用mmx作为折中的选项。
【post processing】
左边的“resizing quality options”用来设定转换后得到文件的视觉质量,从上到下的四个选项依次能够使视觉效果得到改观,但是转换所需的时间也在成正比例增加,建议大家采用“bilinear filtering”来达到速度和质量的平衡点。右边的区域可以给影像添加自己设计的logo,在此仅提及一下,有兴趣的话不妨自己试试。

图4
上面两步解决了视频文件的转换,但是并没有获得音频文件,所以下面就想办法得到DVD碟片上的音频文件。由于DVD光盘的特殊性,我们采取的也是先提取音频文件再将其转换为可以合成的wav文件方法。

图5
目前能够从DVD光盘中截取音频文件的软件好像只有vob-snoopy了,它可以从vob文件里把声音取出来并保存为ac3格式。
运行vob-snoopy之后,先通过“file/open”命令将DVD光盘上相关路径下的vob文件添加进来,然后将会看见图4所示的界面。在窗口中显示了每一条音频文件的信息,你可以用“details”按钮来获得详细信息,或者是“hex”来查看相关的16进制信息。但是最简单的截取音频文件的方法就是点击“extract”按钮,然后在弹出的窗口中选择“audio to *.ac3”文件,并按下“ok”按钮即可(见图5)。

图6
上面三步完成之后,可以说是已经完成了大部分工作,下面最后一步就是将得到的两个文件合并起来就能够得到完整的MPEG4影像文件了。
●生成MPEG4文件
我们采用一个名叫virtualdub的工具来完成最后一步,它是一个功能非常强大的影像编辑工具,能够实现avi、mpeg等影像的编辑和截取,也可以将影像文件中的视频文件和音频文件分离开,当然也能够把分开的视频和音频文件合二为一。下面就简单介绍一下利用virtualdub来合并文件的操作步骤。

图7
但是,在使用virtualdub生成MPEG4文件的时候,还有一些参数需要设置,比如在“options”选单中,有“performance”和“preference”两个选项,它们都是用来设定生成文件的属性。其中前者可以设置输出影像的色彩位数、合并工作的优先级别、cpu的工作模式以及生成文件的大小限制等等有关视频方面的内容,后者主要是针对合并音频文件时的缓冲、生成avi文件时的缓冲、数据流操作等涉及到音频方面的内容(见图7)。这些设置都很简单,只要用鼠标点击复选框进行选取或者是拖动滑动条即可,在此也就不再详述了,只是提醒大家注意一下,正确的设置不仅能够得到更佳的视听效果,而且还可以加快生成文件的速度。
●制作中的常见问题
1.用来制作MPEG4文件的机器应具备怎样的配置?
首先最重要的一点就是要安装了DVD光驱。通常安装了DVD光驱的机器配置都不会差,cpu当然是越快越好,内存则是多多益善。不过说起来,如果你借用一台DVD光驱来制作MPEG4文件的话,那么cpu至少带有mmx处理功能,而且内存最少为64m。不然的话,光是前面两个文件复制和格式转换就要花费你半天时间了。当然理想的配置是pⅢ667、256m内存之类的超级机器。
2.我有一张DVD光盘,上面的文件没有加密,这时可以直接进行第二步工作吗?
对于一些DVD光盘来说,没有采用加密数据的方式来存放文件,因此这时可以跳过第一步,直接从第二步开始转换文件。但是这样是从DVD上读取数据的同时进行转换,因此对于系统资源的占用率非常高,速度也非常慢,同时由于光盘放置在机器内高速转动,对于碟片和DVD光驱来说都有损伤,所以还是建议大家按照上述四个步骤按部就班地进行。
3.使用vob-snoopy截取音频文件的时候会发生缺少文件的出错信息,怎么办?
这主要是因为每个人的具体情况不一样,所以vob-snoopy在安装的时候没有建立临时目录,其实只要在c盘根目录下分别手工建立名为“temp”和“template”的目录就可以正常使用了。
4.制作完MPEG4文件之后,为什么在媒体播放器上不能播放观看?
遇到这种情况,可千万不要以为是上面的制作步骤出错了,这是因为MPEG4是在老版本的媒体播放器出来之后问世的,所以不能利用它来进行播放。如果需要采用媒体播放器来观看还要安装一个divx视频技术的补丁程序,而另外一个解决之道就是升级你的媒体播放器到最新的7.0版本,不过呢,它的个头有点儿大。
5.为什么我得到的MPEG4文件清晰度并不是很高,似乎连vcd都不如?
这主要取决于视频文件格式转换以及生成MPEG4文件时候的设置选项,如果你在这两个步骤中都没有选择最佳效果选项的话,那么很有可能导致最终的影像文件效果不佳。所以建议那些对影像质量要求比较高的朋友在转换格式的时候采用“ieee-1180”模式,而生成文件时也要注意相关的设置选项以达到理想效果的MPEG4文件。
站内搜索