一种以逻辑块号间接定位dvd文件的方法

文档序号:6768106阅读:440来源:国知局
专利名称:一种以逻辑块号间接定位dvd文件的方法
技术领域
本发明涉及一种DVD文件的定位方法,更具体地说,涉及一种以逻辑块号间接定位DVD文件的方法。
背景技术
使用播放器播放存储在DVD-Rom介质中的DVD影片,可以具有强大的交互播放功能,如进行菜单、语言、字幕和章节的选择,多角度播放,父母锁定和VCR控制等。这些功能的实现依赖于对DVD文件的正确定位。
DVD影片存储在DVD-Rom介质中时,该DVD-Rom介质必须包含一个逻辑卷。逻辑卷里的基本逻辑单元就是一个逻辑块LB(logical block),包含了2048个字节,与一个物理扇区相对应。逻辑块号LBN是英文logical block number的缩写,它是逻辑块LB按照物理位置递增顺序的连续编号,第一个LB的LBN为0,依次类推。一个卷主要包含有文件结构、DVD-Video区和非DVD-Video区。视频文件放在DVD-Video区内,而计算机数据则是放在非DVD-Video区内。
DVD-Video区包含了一个视频管理器(VMG)和1到99个视频节目集(VTS),也就是说DVD-Video区包含了用于播放DVD视频的所有的必须的文件,由VMG和VTS两部分实现了在DVD影视画面中进行选择的交互功能。在DVD-Rom介质中,视频节目集(VTS)之间,视频节目集(VTS)和视频管理器(VMG)之间,存储不一定是连续的,有可能存在LBN空隙。
视频管理器VMG由VMGI(Video Manager Information)、VMGM_VOBS(VideoObject Set for VMG Menu)和VMGI(BUP)组成.VMGI存储在导航文件VIDEO_TS.IFO里,它包含了DVD-Video区的所有交互控制信息。VMGM_VOBS存储在文件VIDEO_TS.VOB里,它包含了节目选择菜单的视频内容。VMGI(BUP)存储在文件VIDEO_TS.BUP里,它是VMGI的完全拷贝。VMGM_VOBS是可有可无的,但VMGI和VMGI(BUP)是必须存在的。在DVD-Rom介质中,文件VIDEO_TS.IFO、VIDEO_TS.VOB(如果有)、VIDEO_TS.BUP顺序存放在DVD影碟中,中间没有LBN空隙。
每个视频节目集VTS由VTSI(Video Title Set Information)、VTSM_VOBS(VideoObject Set for the VTS Menu)、VTSTT_VOBS(Video Object Set for Titles in a VTS)和VTSI(BUP)组成。VTSI存储在导航文件VTS_##_0.IFO里,它包含了这个视频节目集VTS的所有交互控制信息。VTSM_VOBS存储在文件VTS_##_0.VOB里,它包含了这个视频节目集VTS所有的选择菜单的视频内容。VTSTT_VOBS存储在多个文件VTS_##_*.VOB里,它包含了视频节目集播放的所有视频内容。VTSI(BUP)存储在文件VTS_##_0.BUP里,它是VTSI的完全拷贝。VTSM_VOBS可有可无,但VTSI,VTS_##_*.VOB和VTS_##_0.BUP是必须存在的。以上##代表两位数字,在01-99之间;*代表一位数字,在1-9之间。在DVD-Rom介质中,VTS_##_0.IFO、VTS_##_0.VOB(如果有)、VTS_##_*.VOB、VTS_##_0.BUP顺序存放在DVD影碟中,中间没有LBN空隙。
在播放DVD-Rom介质中的DVD影片时,为了能够实现DVD的交互功能,DVD播放器必须能够根据用户的选择来定位DVD文件,其定位方法包括如下步骤1)当开始播放DVD,也就是在VMG-space(视频管理器区)时,DVD播放器首先找到导航文件VIDEO_TS.IFO在DVD-Video区的LBN,并通过这个LBN参数去读取VIDEO_TS.IFO文件来获得VMGI信息。
2)播放器开始播放第一个PGC,以后播放器就根据VMGI给出的其它导航文件或音视频文件相对于VIDEO_TS.IFO的LBN,同时加上VIDEO_TS.IFO自己的LBN信息之后作为参数去读取导航文件或音视频文件。当播放到某个VTS-space(视频节目集区)时,播放器根据VTSI给出的其它导航文件或音视频文件相对于VTS_##_0.IFO的LBN信息,同时加上VTS_##_0.IFO自己的LBN信息之后作为参数去读取其它导航文件或音视频文件。
总之DVD播放器通过相对于VMGI或VTSI的LBN信息去定位视频文件或其它导航文件。
但是,这种定位方法没有以文件名作为参数,而是通过LBN参数作为DVD-Rom介质的物理地址去读取导航数据或音视频数据,所以一旦DVD文件脱离DVD-Rom的存储介质时,LBN信息就失去了其物理意义,就不能用LBN信息去读取导航数据或音视频数据了,观众也就无法领略DVD强大的交互功能。

发明内容
本发明的目的是为了克服现有DVD文件定位的不足,通过以文件名作为参数去定位DVD文件,从而提供了一种以逻辑块号、即LBN间接定位DVD文件的方法。
本发明的技术方案为一种以逻辑块号间接定位DVD文件的方法,包括如下步骤1)读取导航文件VIDEO_TS.IFO中的VMGI信息或导航文件VTS_##_0.IFO中的VTSI信息,其中##代表两位数字,在01-99之间;2)将VMGI和VTSI中的LBN信息对应为该LBN在DVD-Rom介质上指向的导航文件或音视频文件的文件名;3)通过步骤2)得到的文件名定位该文件。
其中,步骤2)中LBN信息与导航文件或音视频文件的文件名的对应通过如下步骤得到a)分别将DVD-Video区各个文件的文件长度字节数除以2048,转换成LBN数;然后将VMG中所有文件的LBN数相加得到VMG所占用的LBN总数,分别将VTS中的所有文件的LBN数相加得到各个VTS所占用的LBN总数b)通过导航文件VIDEO_TS.IFO中包含的TTSRP数据结构中的VTSN和VTS_SA域得到VTS_##_0.IFO距离VIDEO_TS.IFO的LBN数,再结合步骤a)得到的VMG和各个VTS所占用的LBN总数,计算得到VMG和VTS之间和每个VTS之间的空闲LBN数;c)根据步骤a)得到的各个文件的LBN数以及步骤b)得到的空闲LBN数,计算导航文件VIDEO_TS.IFO和VTS_##_0.IFO与其后续文件的相对LBN。
其中,导航文件VIDEO_TS.IFO中包含有TT_SRP数据结构,该结构记录了在DVD-Rom介质中各个节目集VTS的导航文件VTS_##_0.IFO与VIDEO_TS.IFO之间的LBN数,TT_SRP数据结构如表1所示。
表1

当VTSN为1时,VTS_SA表示VTS_01_0.IFO距离VIDEO_TS.IFO的LBN数。当VTSN为2时,VTS_SA表示VTS_02_0.IFO距离VIDEO_TS.IFO的LBN数,依次类推。
由于本发明采用文件名对DVD文件进行定位,所以当将DVD文件存储在非DVD-Rom的存储介质上时,依然可以对DVD文件进行导航定位,为交互控制播放提供基础。
具体实施例方式
下面结合具体实施方式
对本发明进一步详细描述。
以美国影片Black hawk down(黑鹰降落)作实例分析。
这部影片的DVD-Video区包含一个视频管理器(VMG)和2个视频节目集(VTS),如表2的第1列所示,并且各文件在DVD-Rom介质中按照该列所示的顺序存储,表2的第5行和第14行分别表示VMG和第一个VTS之间的空闲LBN以及第1个VTS和第2个VTS之间的空闲LBN。表2的第2列统计了DVD-Video区各个文件的文件大小,即字节数。分别将各文件长度的字节数除以2048,转换为LBN数(16进制),如表2的第3列所示。由于在VMG和VTS内部的各文件之间没有空闲LBN,所以将VMG中的所有文件的LBN数相加即得到VMG所占用的LBN总数,分别将VTS中的所有文件的LBN数相加即得到各个VTS所占用的LBN总数,如表2的第4列所示。
表2DVD文件的LBN信息表

通过访问VIDEO_TS.IFO文件,得到两个TT_SRP。具体内容为(十六进制)TT_SRP114 01 00 1C 00 00 01 01 00 00 00 42TT_SRP214 01 00 01 00 00 02 01 00 22 8D 80参考TT_SRP数据结构的定义可以得到VTS_01_0.IFO距离VIDEO_TS.IFO为0×42个LBN,VTS_02_0.IFO距离VIDEO_TS.IFO为0×228D80个LBN。所以VMG和VTS_01_0.IFO之间空闲的LBN=0×42-VMG占用的LBN总数=0×42-0×42=0,在表2的第5行中表示;VTS_01_0.IFO和VTS_02_0.IFO之间空闲的LBN=0×228D80-VMG占用的LBN总数-VMG和VTS_01_0.IFO之间空闲的LBN-VTS1占用的LBN总数=0×228D80-0×42-0-0×228D3E=0,在表2的第14行中表示。
参照上面的表格,分别计算VIDEO_TS.IFO,VTS_01_0.IFO,VTS_01_2.IFO与其后续文件的LBN距离,例如VIDEO_TS.IFO与VTS_01_0.VOB的LBN距离=0×06+0×36+0×06+0+0×35=0×77。依次类推,可以得到如下的导航文件与其后续文件的相对LBN表3。
表3导航文件与其后序文件的相对LBN表 这样,利用表3就得到了LBN信息与导航文件或音视频文件的文件名之间的对应。例如,当VTS_01_2.IFO给出0×09的LBN值时,由表3即可知道VTS_01_2.IFO需要VTS_02_0.VOB文件,依此类推,每当导航文件VIDEO_TS.IFO、VTS_01_0.IFO或VTS_02_0.IFO给出一个LBN值,就可对应一个导航文件或音视频文件的文件名。
得到这样的对应结果之后,当DVD文件存储在非DVD-Rom的存储介质上时,仍然可以利用导航文件进行定位。首先播放器读取导航文件VIDEO_TS.IFO中的VMGI信息或导航文件VTS_##_0.IFO中的VTSI信息,然后将VMGI和VTSI中的LBN信息对应为该LBN在DVD-Rom介质上指向的导航文件或音视频文件的文件名,最后通过所对应的文件名定位该文件。
权利要求
1.一种以逻辑块号间接定位DVD文件的方法,包括如下步骤1)读取导航文件VIDEO_TS.IFO中的VMGI信息或导航文件VTS_##_0.IFO中的VTSI信息,其中##代表两位数字,在01-99之间;2)将VMGI和VTSI中的LBN信息对应为该LBN在DVD-Rom介质上指向的导航文件或音视频文件的文件名;3)通过步骤2)得到的文件名定位该文件。
2.根据权利要求1所述的一种以逻辑块号间接定位DVD文件的方法,其特征在于,其中,步骤2)中LBN信息与导航文件或音视频文件的文件名的对应通过如下步骤得到a)分别将DVD-Video区各个文件的文件长度字节数除以2048,转换成LBN数;然后将VMG中所有文件的LBN数相加得到VMG所占用的LBN总数,分别将VTS中的所有文件的LBN数相加得到各个VTS所占用的LBN总数;b)通过导航文件VIDEO_TS.IFO中包含的TT SRP数据结构中的VTSN和VTS_SA域得到VTS_##_0.IFO距离VIDEO_TS.IFO的LBN数,再结合步骤a)得到的VMG和各个VTS所占用的LBN总数,计算得到VMG和VTS之间和每个VTS之间的空闲LBN数;c)根据步骤a)得到的各个文件的LBN数以及步骤b)得到的空闲LBN数,计算导航文件VIDEO_TS.IFO和VTS_##_0.IFO与其后续文件的相对LBN。
全文摘要
本发明公开了一种以逻辑块号间接定位DVD文件的方法。该方法包括如下步骤1)读取导航文件VIDEO_TS.IFO中的VMGI信息或导航文件VTS_##_0.IFO中的VTSI信息,其中##代表两位数字,在01-99之间;2)将VMGI和VTSI中的LBN信息对应为该LBN在DVD-Rom介质上指向的导航文件或音视频文件的文件名;3)通过步骤2)得到的文件名定位该文件。由于本发明采用文件名对DVD文件进行定位,所以当将DVD文件存储在非DVD-Rom的存储介质上时,依然可以对DVD文件进行导航定位,为交互控制播放提供基础。
文档编号G11B27/00GK1514441SQ0312146
公开日2004年7月21日 申请日期2003年3月28日 优先权日2002年12月31日
发明者王劲林, 陈晓, 汤宝伟, 李挺屹, 倪宏, 马俊婷 申请人:中国科学院声学研究所, 北京世网伟业数字系统技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1