昙花梦1988:DVD里的两个文件分别是什么作用

来源:百度文库 编辑:高校问答 时间:2024/04/19 11:40:49
我想将DVD影片存到电脑硬盘里,可是打开却有两个文件夹.我将它们全部复制过却,播放时,我只选择第一个文件,它却可以播放完全的影片.
我想试一下第二个文件夹是否可以播放却不可以.
我又把另一个DVD影片里的文件夹只复制了第一个,也可以正常播放完.
那第二个文件夹是干什么的.在电脑上播放不需要它,那在DVD影碟机上它有什么作用.
小第是新手,望各位大侠多多指教.小第先谢谢了!!!!!!!!!!

是两个文件夹吧:

光盘上会有两个文件夹:<Audio_ts>和<Video_ts>:

  1. Audio_ts是保留给DVD版的激光唱片DVD-AUDIO使用的,所以在DVD影片光盘中,这个文件夹是空的

  2. Video_ts中则保存着影片所有的视频、音频和字幕信息。

  依照DVD影片光盘(DVD-VIDEO)标准的规定,一个标准的Video_ts文件夹中应该包含三种类型的文件:VOB、IFO、BUP,其作用如下: 

  1. VOB(Video OBjects视频目标文件):VOB文件用来保存DVD影片中的视频数据流、音频数据流、多语言字幕数据流以及供菜单和按钮使用的画面数据。由于一个VOB文件中最多可以保存1个视频数据流、9个音频数据流和32个字幕数据流,所以DVD影片也就可以拥有最多9种语言的伴音和32种语言的字幕。   

  2.  IFO(InFOrmation信息文件):IFO文件用来控制VOB文件的播放。文件中保存有怎样以及何时播放VOB文件中数据的控制信息,比如段落的起始时间、音频数据流的位置、字幕数据流的位置等信息。DVD驱动器或者播放软件通过读取IFO文件,才能把组成DVD影片的各种数据有机地结合起来进行播放。    

  3. BUP(BackUP备份文件):BUP文件和IFO文件的内容完全相同,是IFO文件的备份。由于IFO文件对于保证影片的正常播放非常重要,所以需要保留一个副本,以备在IFO文件的读取发生错误时仍然可以通过读取BUP文件来得到相应的信息。

DVD上都有些什么呢?

DVD上面的东西到底都是什么?VOB、IFO、BUP文件都是做什么用的?这里我们会详细讲解。

打开一张DVD光盘的时候你会看到至少两个目录:

22.08.2000 03:20 <DIR> AUDIO_TS
22.08.2000 05:53 <DIR> VIDEO_TS

AUDIO_TS 是用作DVDAudio的(目前我还没见过这种盘)而VIDEO_TS是用来存储电影数据的。可能还有其他一些给个人电脑使用的包含了dvd-rom特性的目录。

让我们看看VIDEO_TS目录:

22.08.2000 05:53 <DIR> .
22.08.2000 03:20 <DIR> ..
22.08.2000 05:23 12'288 VIDEO_TS.BUP
22.08.2000 05:23 12'288 VIDEO_TS.IFO
22.08.2000 05:23 333'824 VIDEO_TS.VOB
22.08.2000 05:23 59'392 VTS_01_0.BUP
22.08.2000 05:23 59'392 VTS_01_0.IFO
22.08.2000 05:23 8'192 VTS_01_0.VOB
22.08.2000 05:27 1'073'643'520 VTS_01_1.VOB
22.08.2000 05:31 1'073'631'232 VTS_01_2.VOB
22.08.2000 05:32 104'785'920 VTS_01_3.VOB
22.08.2000 05:32 88'064 VTS_02_0.BUP
22.08.2000 05:32 88'064 VTS_02_0.IFO
22.08.2000 05:32 59'379'712 VTS_02_0.VOB
22.08.2000 05:36 1'073'436'672 VTS_02_1.VOB
22.08.2000 05:40 1'073'549'312 VTS_02_2.VOB
22.08.2000 05:45 1'073'502'208 VTS_02_3.VOB
22.08.2000 05:49 1'073'371'136 VTS_02_4.VOB
22.08.2000 05:53 1'073'555'456 VTS_02_5.VOB
22.08.2000 05:57 810'952'704 VTS_02_6.VOB

你可以看到DVD上有三种文件: .VOB、 .IFO、 .BUP

VOBs - Video OBjects

VOB文件包括数个混在一起的流:视频、音频和字幕。视频流是MPEG-2格式的,音频流可以是AC3、Linear PCM、Mpeg2多声道或者Mpeg1 layer2 双声道音频。AC3基本上是标准了,而MPEG-2多声道只能在很少的盘上看到。(one example is "Inthe line of fire, PAL edition") 虽然这种格式最初是作为2区(欧洲和日本)的标准格式设计的,但是最终还是放弃了这样的设计。PCM通常出现在音乐DVD和廉价制作的MP2上。PCM是高质量未压缩的音频格式,占据很大的空间。对于一个全长的,需要多语种的电影来说,它很不合适。AC3的比特率在192和448kbit/s之间。192kbit/s是给双声道用的,384-448kbit/s是给5.1环绕立体声用的。

VOB文件可以包含一个主要的视频流和数个多角度视频流,使你可以在观看的时候切换不同视角。这个功能通常是在回放时用来显示情节串联图板(storyboards)或者一些其他的附加功能。视频流的最大比特率是9.8mbit。视频流和音频流加在一起任何时刻都要小于10mbit/s。最多可以加入9个不同的音轨,使你可以在回放的时候切换(这个功能可以在制作DVD的时候屏蔽掉)。最多可以有32个字幕流。字幕是4色的位图,覆盖到视频流上,而不是直接编码到视频流内。

让我们用vStrip来仔细看看VOB文件:

Scanning for stream id's, press control-c to quit...
Found 0xBF = Private 2 [@LBA 0]
Found VOB-ID: 01/CELL-ID: 01 [@LBA 0]
Encountered encrypted sector, attempting key recovery [@LBA 1]
Deduced key: 0xC00374C61C (2/2 vkey(s))
Found 0xE0 = Video 0 [PTS 0:00:00.290 @LBA 1]
Width = 720
Height = 480
Aspect-ratio = [3] 16:9 display
Frame-rate = [4] 29.97 (30000/1001) fps
Found 0xBD = Private 1, sub 0x80 [PTS 0:00:00.224 @LBA 99]
Found 0xBD = Private 1, sub 0x81 [PTS 0:00:00.224 @LBA 100]
Found 0xBD = Private 1, sub 0x82 [PTS 0:00:00.224 @LBA 101]
Found 0xBD = Private 1, sub 0x83 [PTS 0:00:00.224 @LBA 102]
Found 0xBE = Padding [@LBA 117]
Found 0xBD = Private 1, sub 0x20 [PTS 0:00:00.724 @LBA 169]
Found 0xBD = Private 1, sub 0x21 [PTS 0:00:00.724 @LBA 170]
Found VOB-ID: 02/CELL-ID: 01 [@LBA 378]

如前所述通常只有一个视频流,它的ID永远是0xE0。PTS是Program Time Stamp程序时间标志,在VOB的开始部分描述一个流在什么时间开始。你可以看到分辨率是720x480,这是一张NTSC制式的DVD。帧率是29.97。DAR是16:9。有四个音频流:0x80 - 0x83。注意这都是AC3音频流。所有的AC3音频流都在 0xBD 数据流,子数据流0x8x中。DTS流往往ID是 0xBD 0x88 或 0xBD 0x89。PCM流在 0xBD 0xAx,从0xA0到0xA9。MP2在0xCx。这里有一个PCM和MP2流的例子:

Found 0xBD = Private 1, sub 0xA0 [PTS 0:11:01.479 @LBA 4]
Found 0xC0 = Audio 0 [PTS 0:00:00.440 @LBA 25]

这里还有两个子数据流,0x20 和 0x21。所有的字幕流也在0xBD。

另外还有一些填充流(0xBE)但我们不用去关心他们。

你可能注意到VOB ID和Cell(单元) ID。一个Cell是DVD上最小的单位。一张简单的DVD上可能只有一个章节但是大多数DVD都要复杂得多。如果你对Cell感兴趣我建议你学着使用Scenarist,这样你才能真正了解他们的工作方法。我不知道VOB ID是如何建立的,也不知道他们对应于什么结构,通常每一个单位都有他自己的VOB ID,比如说电影本身和电影预告。在多角度和多分支盘片中每个角度都有自己的VOB ID。

IFOs - InFOrmation

IFO文件为播放器提供十分重要的导航信息。比如一个章节从什么地方开始,一个特定的音频流或者字幕流在什么地方,等等。这就是为什么我们只能用可以读取这种文件的Ripper软件来提取部分电影(比如说一个章节)。

vStrip可以做到这一点。我们来看看使用ifo处理的时候的输出。(命令举例:vStrip f:\video_ts\vts_02_1.vob -if:\video_ts\vts_02_0.ifo)

Parsing "f:\video_ts\vts_02_0.ifo"...
0. Length: 02:07:15:24 in 15 cell(s).
1. Length: 00:00:01:01 in 1 cell(s).
Scanning for stream id's, press control-c to quit...

你可以看到这里有两个PGC(ProGram Chains,故事链)。PGC 0展示的是电影本身,而PGC 1是最开始的制片商Logo。这个结构可能非常复杂,不过很好理解。多角度电影有很多相同长度的PGC,而多分支电影有很多不同长度的PGC。为了选择正确的电影版本你需要选择正确的PGC。PGC是对应于你播放器里面显示的标题数字的。举个例子:Matrix - follow the white rabbit feature = 标题 6或者说PGC 5,因为pc内部是从0开始计数的。

最后一点,IFO文件是不加密的。

BUPs - BackUP

BUP文件是IFO的部分备份,也是不加密的。

仔细看看

我们现在已经了解了各种文件格式,让我们再看看实例:

22.08.2000 05:23 12'288 VIDEO_TS.BUP
22.08.2000 05:23 12'288 VIDEO_TS.IFO
22.08.2000 05:23 333'824 VIDEO_TS.VOB
22.08.2000 05:23 59'392 VTS_01_0.BUP
22.08.2000 05:23 59'392 VTS_01_0.IFO
22.08.2000 05:23 8'192 VTS_01_0.VOB
22.08.2000 05:27 1'073'643'520 VTS_01_1.VOB
22.08.2000 05:31 1'073'631'232 VTS_01_2.VOB
22.08.2000 05:32 104'785'920 VTS_01_3.VOB
22.08.2000 05:32 88'064 VTS_02_0.BUP
22.08.2000 05:32 88'064 VTS_02_0.IFO
22.08.2000 05:32 59'379'712 VTS_02_0.VOB
22.08.2000 05:36 1'073'436'672 VTS_02_1.VOB
22.08.2000 05:40 1'073'549'312 VTS_02_2.VOB
22.08.2000 05:45 1'073'502'208 VTS_02_3.VOB
22.08.2000 05:49 1'073'371'136 VTS_02_4.VOB
22.08.2000 05:53 1'073'555'456 VTS_02_5.VOB
22.08.2000 05:57 810'952'704 VTS_02_6.VOB

VIDEO_TS.*是最先播放的项目。这是在制作时被设定当一张盘被插进播放器时最先播放的东西。通常这些是版权声明,不过也会有一个选择菜单语言、电影预告之类的菜单。video_ts.vob包含视频和音频,video_ts.ifo包含导航信息,video_ts.bup是video_ts.ifo的备份。

这里还有两个ifo文件: vts_01_0.ifo 和 vts_02_0.ifo。文件名中前两个数字表示标题数,很显然最多只能有99个标题(不存在以vts_00_开头的这类文件) 。每个标题下最多可以有10个VOB文件,其中vts_xx_0.vob也就是第一个VOB文件包含那个标题的菜单。每个标题至少有两个VOB,一个是菜单另一个包括主要功能,还有一个IFO一个BUP。

我们的例子中标题1包含幕后花絮和菜单,标题2包含影片和菜单。

你可以看到,一个VOB文件最大是1GB。虽然这些文件必须小于或等于这个尺寸,但的确是有一些比这个尺寸大,这种VOB文件是不能在电脑上播放的。

最后一个问题:如何在盘上确定主要影片的位置?最大的IFO文件提供了title的数量,接着你需要提取除了菜单VOB以外的所有的VOB文件(当然除非你想要菜单)。大部分Ripper(如果他们不处理IFO文件)都是以这个方法选择所要复制的主要影片和IFO的。

深入VOB文件

DVD视频内容被分为titles(影片或唱片)和分块的titles(章节或歌曲).Titles由cells构成,这些cells 被一个或多个的节目链(PGCs)连接起来。cell是dvd上最小的视频单元。有时一个cell相当于一个章节,但是这样的情况不常出现。Cells时常由VOB IDs组织在一起。例如华纳兄弟(Warner Brothers)电影中每一个layer都有一个VOB ID,对于多视角影片(例如在每一个分支点每一个视角都有自己的VOB ID,当这些视角重新汇集,再命名下一个VOB ID),对于无缝分支影片,影片中由不同回放选项控制的不同部分有不同的VOB ID。