VCD结构与Mplayer播放.DAT文件
发表于:2007-07-04来源:作者:点击数:
标签:
VCD碟片由一个或多个音轨组成: 第一个轨道是一个小的2048字节/扇区的数据轨,有一个iso9660文件系统,通常包含 Windows VCD播放程序可能还有其他信息(图像,文字等等)。 第二和之后的轨道是未处理的2324字节/扇区的MPEG(电影)轨,每个扇区包含一个MPEG PS数
VCD碟片由一个或多个音轨组成: 第一个轨道是一个小的2048字节/扇区的数据轨,有一个iso9660文件系统,通常包含
Windows VCD播放程序可能还有其他信息(图像,文字等等)。
第二和之后的轨道是未处理的2324字节/扇区的MPEG(电影)轨,每个扇区包含一个MPEG PS数据包而没有文件系统。音频CD的轨道也类似。
这些轨道是无法被mount的(你曾经mount一个音频CD然后播放过吗?)。大部分电影都在这个轨道,所以你应该先试试-vcd 2。
有些VCD碟片没有第一个轨道(单轨道而根本没有文件系统)。它们也可以播放,但是不能mount。
关于.DAT文件: 在mount了的VCD的第一轨上看到的~600 MB的文件不是一个真正的文件!这是所谓的ISO通道,用来使Windows能够处理这样的轨道(Windows根本不允许程序直接访问未处理的设备)。在
Linux下你不能复制或者播放这些文件(它们里面是些垃圾)。在Windows下这是可以的,因为它的iso9660驱动能模拟在这个文件中读取未处理的音轨。要播放一个.DAT文件你需要Linux版的PowerDVD中的内核驱动。它有一个经过修改的iso9660文件系统(vcdfs/isofs-2.4.X.o)驱动,可以通过这个.DAT影子文件模拟读取未处理音轨。如果你用它们的驱动来mount,你可以复制甚至用mplayer直接播放.DAT文件。但如果用Linux内核的标准的iso9660驱动是不会有用的!应该使用-vcd选项。另一种复制VCD的方法是新的cdfs内核驱动(不是官方内核的一部分),它能够把CD的sessions显示成镜像文件,或者cdrdao,一个bit-by-bit的CD抓取/复制程序。
原文转自:http://www.ltesting.net