---- 也许您还在使用Windows的原因之一是Windows强大的多媒体支持能力,例如制作个性十足的VCD光盘。的确如此,Windows操作系统到目前为止仍然拥有操作系统中最强大的多媒体能力,因为有如此之多的软件可以任您选择,例如WinOnCD、SONY CD Maker、DirectCD、Ahead Nero、Easy CD Creator……一大串耳濡目染的软件名字,但是千万别说Linux就不能制作VCD,其实这一操作也很简单,下面将向您详细介绍。
---- 您不必购买那些昂贵的软件,只要有一段MPEG片断(可以直接找一些VCD盘,把其中的MPEG片断拷贝下来)、Linux以及CD-RW即可。
---- 1.需要有支持SCSI和"generic"SCSI的Linux核心,不用担心您的CD-R或CD-RW是ATAPI/IDE接口,只要把SCSI emulation(SCSI仿真)编译进您的Linux即可。如果您手中的Linux是一个正式发行的Distributed版本,如蓝点(BluePoint)、红旗(Red-Flag)等,那么您就可以跳过编译核心这一步。在LILO启动时,加入参数"/dev/node=ide-scsi"(假设ATAPI/IDE接口的CD-R或者CD-RW是以从盘(Slave Drive)挂接在第二个IDE通道上)。如果系统在找到您的CD-R或CD-RW时花费了大量的时间(进行SCSI仿真),那么可以直接进入第2步。如果不是,就重新编译您的核心以支持SCSI仿真。
---- 重新启动Linux,启动时仍然需要加入"/dev/node=ide-scsi"参数,这是ATAPI/IDE接口的CD-R或CD-RW打开SCSI仿真模式所必须的。
---- 2.硬件就绪后,下载一个VCD Tools的打包文件: vcdtools-0.4.tar.gz(2000年9月15日最新版本0.4)或者更好的mplex。
---- (1)使用gunzip和untar解压缩: tar zxvf vcdtools-0.4.tar.gz。
---- (2)进入目录vcdtools-0.4,输入"make"。
---- 编译完以后,就可以在VCD Tools中使用命令"mkvcdfs"。使用方法如下例所示:
---- mkvcdfs video1.mpg video2.mpg video3.mpg video4.mpg
---- 这一命令将把MPEG文件(video1.mpg~video4.mpg等4个文件)合并成2个文件: vcd.toc和vcd_image.bin,默认保存在当前目录(文件夹)中,vcd.toc说明VCD内容的结构,而vcd_image.bin是用来烧制VCD作品的映像文件。
---- 如果您想要制作SVCD格式的VCD(专业的表示是: 图像大小为480×480/576, 2500MB/s的MPEG-2),那么就需要mpeg2enc(包含在lavtools内)来编码您的MPEG文件,同样可以使用vcdmplex(已经包含在VCD Tools内),使用命令格式为:
---- vcdmplex MPEG_video_stream MPEG_audio_stream MPEG_system_stream
---- 这一命令将把Video视频文件(MPEG_video_stream)和Audio音频文件(MPEG_audio_stream)合成一个标准的MPEG文件(MPEG_system_stream),详细的说明请参见该软件的帮助文档。
---- 3.登录到http://www.ping.de/sites/daneb/cdrdao.html下载一个名为CDRDAO(for Disk-At-Once) 的程序,用来向您的CD-R或CD-RW写数据。2000年8月27日发布的Xcdrdao-1.1.4甚至可以在GNOME环境中使用。编译后,安装,然后输入"ln -s /dev/sg0 /dev/cdrecorder",以保证dev/cdrecorder设备指向CD-R或CD-RW,防止它出错。注意,这里假定您只有一个ATAPI/IDE接口的CD-R或CD-RW,没有其他的SCSI设备,而且使用了SCSI仿真。如果您还有其他的SCSI设备,那么就需要把sg0改成sg?(?代表具体SCSI设备的号码)。
---- 最后,找到刚才制作好的vcd.toc文件,键入命令"cdrdao vcd.toc",一段时间后(视CD-R或CD-RW的速度而定,cdrdao会自动使用刻录设备的最高速来完成刻录工作),利用Linux制作的VCD作品就完成了。您可以利用任何一台可以读取CD-R盘片的电脑或影碟机欣赏您的作品。另外需要特别注意的是,烧制VCD之前别忘了使用Root账号或者其他有权在您的机器上使用CD-R或CD-RW的账号登录,以免Linux系统拒绝。