hudao 发表于 2008-1-15 11:17:51

了解DVD光盘的文件(Z)

说到DVD格式,一定很多用户都会说这有什么难的,DVD只不过就是把视频信息和音频信息放在不同的文件中。对,你说的没有错,不过说的不是很对,虽然DVD的音频和视频是分开播放的,但它们却存放在一个文件系统中。那么,DVD光盘中那么多文件到底是干什么用的,而DVD盘片里面到底存放了多少信息,以下我们就来简单看一下。

    DVD确实分成两个部分,不过DVD的视频和音频部分都存放在一个文件中,这个文件的标准的存储格式在计算机文件格式中称为-MicroUDF文件系统,这种文件规范属于UDF文件的一个子集,那么很多用户可能又会对UDF文件格式感到茫然了。UDF文件格式其实是针对ISO9660文的不足而推出的文件格式,ISO9660是目前CD和CD-R读取/刻录使用的标准文件格式,光盘上存储数据的文件结构和目录形式在刻录之前就已确定,因此无法更改,当然也无法追加刻录新的数据。

另外,操作系统无法识别CD-R和CD-RW,用户必须要使用各种刻录软件才能进行ISO9660文件格式进行读写操作,这样就给用户带来很多不便。针对这一状况,国际标准化组织属下的光学存储技术协会(OSTA)于1996年发布了一种新的通用光盘文件系统――UDF文件系统。它采用Packet Writing包刻录方式,许在CD-R或CD-RW光盘上任意追加数据,为CD-R和CD-RW刻录机提供了类似于硬盘的随机读写特性。UDF的另一突出优点是可以防止出现缓存器欠载情况。

在使用包刻写方式时,刻录机可以在缓存器积累足够数据之前等待任意长的时间,即使主机输出的数据流速度大大低于刻写速度,也不会出现中断刻录过程而使盘片报废的情况。这么说可能大家还不是很容易理解,在著名刻录软件Nero-Burning Rom中的DirectCD刻录和Easy CD Creator中的Easy CD Creator Delux、Sony刻录软件中的FileCD程序都是遵循了UDF规范的软件,因此使用这种软件后我们可以像使用硬盘一样使用CD-RW光盘,不过前提是我们必须通过这些软件来把光盘变为UDF格式。另外如果光盘采用了UDF文件系统后只能在具有MulitRead功能的CD-ROM上读取。对不支持MulitRead功能的CD-ROM来说,使用相关软件的支持也可以读取UDF文件系统。UDF文件系统支持的操作系统为Windows9x/NT,OS/2,Linux,MAC OS等(或以上版本的)操作系统。

那么说了这么多东西,我们看起来MicroUDF文件系统和DVD有和联系呢?为何DVD又会采用MicronUDF格式的文件系统呢?其实很容易理解,因为ISO 9660的规范是目前所有光驱识别的格式,那么如果DVD采用这种文件格式,当然即使使用CD-ROM都可以识别DVD盘片了(呵呵,其实这个一个玩笑回答,因为DVD和CD盘片的密度是不同的根本不存在能识别的可能性)。其实使用UDF文件格式还是为了可写式DVD而服务的,因为目前DVD写入方式没有统一的标准,但如果再去开发复杂的文件格式,这样的话刻录出来的DVD盘片在普通的DVD驱动器上就无法实现了。并且采用UDF文件格式实现更加容易,可以节省DVD格式开发的周期。既然采用了MicronUDF格式,因此DVD盘片会在物理上遵循一定的规范,由于MicronUDF格式并没有指定一个头信息排序,因此如果要让DVD播放器可以识别就必须通过固定的文件存放规范或者格式。所DVD的视频内容都存放在一个固定的文件夹下--VIDEO_TS目录。

不过即使打开了这个目录还是会让很多不了解DVD格式的用户感到迷惑的,因为这个目录下包含三种类型的文件:.VOB文件、.IFO文件和.BUP文件。这些文件分别干什么用的呢?以下慢慢解释:.VOB文件用来保存所有MPEG-2或MPEG-1格式的音视频数据。这些数据不仅包含影片本身,而且还有供菜单和按钮用的画面以及多种字幕的子画面流。而.IFO文件则是控制.VOB文件播放的,这个文件中可以找到有关怎么样以及何时播放.VOB文件中数据的控制信息。由于.IFO文件对于保证光盘的正常播放是至关重要的,因此.IFO文件的副本保存在.BUP文件中。所以从这些文件的格式的作用我们也应该知道文件是如何排列的了:IFO-VOB-VOB...-BUP。在每一个DVD光盘中都应该有视频管理器(VMG)。视频管理器存放在一个VIDEO_TS.IFO文件,它保存光盘的全局信息,比如光盘可以在哪个地区播放。同时,还保存如何显示可选菜单的信息。其中用于显示菜单的数据保存在VIDEO_TS.VOB文件中。当光盘插入到光驱中时播放器首先显示这个菜单。大多数菜单可以让观众跳到影片中指定场景,选择语言字幕以及观看增加或删除的场景等。在每一个DVD视频光盘中至少应该有一个视频节目(video title)。这个视频节目包含实际呈现给观众的信息,比如一部电影。其他的节目可以包含剪辑下来的场景、影片预告、拍摄花絮或者其他的信息。

不同的视频节目存储在名字为VTS_xx_y.VOB文件中,这里\"xx\"是节目编号(从01到99),\"y\"是从0到9的编号。由于MicroUDF系统中一个文件最大只能1 GB,因此大多数影片不得不保存在多个文件中。VTS_xx_y.IFO同样提供所有相应的VOB文件音视频格式的信息。

以下是视频管理器(VMG)使用的IFO文件和其它IFO文件内存放的信息:

视频管理器使用的IFO文件结构如下:
    1.视频管理器信息管理表:其主要包括区域代码管理、视频属性(MPEG-1还是MPEG-2,PAL还是NTSC,长宽比4:3还是16:9, 全景和扫描Pan&scan模式还是信箱模式Letterbox还是二者兼有以画面的分辨率),音频属性(杜比AC-3还是MPEG-2,MPEG-1或者PCM声音编码方案,量化还是动态范围控制数据、采样率以及通道个数)以及编码模式和子画面流的个数。

    2.节目搜索指针表:描述在哪个视频节目集可以找到哪个节目,怎么样连接到其他节目中以及相应VTS的起始地址。
    3.视频管理器菜单PGCI单元表:提供不同语言下VMG菜单的指针。

    4.父母锁定管理信息表(这个就不用解释了吧)。

    5.视频节目集属性表:保存光盘中每个VTS属性信息的副本。

    6.文本数据管理器:保存光盘或者每个节目的卷名、节目名、唱片名和/或制片人名字。

    7.视频管理器菜单单元地址表:存储视频管理器VOB中所有单元的起始和结束地址。

    8.视频管理器菜单视频对像单元地址图:提供所有VOB单元的起始地址。

    VTS使用的IFO文件结构如下:

1.视频节目集信息管理表:包含VMG 信息表中描述的所有VTS信息,供VMG 使用 。
2.视频节目集节目部分搜索指针表:仅保存节目部分的指针,通过它可以播放节目。
3.视频节目集程序链信息表:这里保存指向程序链信息(PGCI)的指针。PGCI描述如何显示VOB文件(包括对不同音频/子画面流的控制,用户控制约束等)。
4.视频节目集菜单PGCI单元表:提供不同语言下VTS菜单的指针。
5.视频节目集时间图表:描述VOB文件中的图像在每个时间的位置。
6.视频节目集菜单视频对像单元地址图:视频节目集单元地址表。
7.视频节目集视频对像单元地址图。

通过以上的介绍,我们应该明白一个简单的DVD光盘的格式和每个文件的作用。

gn8452 发表于 2008-1-15 17:20:25

谢谢朋友分享

FLZXD 发表于 2008-1-16 21:16:36

这种文章看看有益...

yb584135118 发表于 2009-12-10 16:00:02

谢谢分享

QRY2006 发表于 2010-1-9 19:54:09

好东东,多谢楼主的分享。

w5mail 发表于 2010-1-9 19:57:58

学习了,谢谢

laomu 发表于 2011-2-19 21:57:08

学习了,谢谢分享!
页: [1]
查看完整版本: 了解DVD光盘的文件(Z)