CN105405457A - 文件内容读取方法和装置 - Google Patents
文件内容读取方法和装置 Download PDFInfo
- Publication number
- CN105405457A CN105405457A CN201510717761.3A CN201510717761A CN105405457A CN 105405457 A CN105405457 A CN 105405457A CN 201510717761 A CN201510717761 A CN 201510717761A CN 105405457 A CN105405457 A CN 105405457A
- Authority
- CN
- China
- Prior art keywords
- data segment
- data
- file
- address information
- data section
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 239000013589 supplement Substances 0.000 claims description 9
- 230000000153 supplemental effect Effects 0.000 description 6
- 230000001502 supplementing effect Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明实施例提供了一种文件内容读取方法和装置,其中方法,包括:定位至所述文件的末尾;其中,所述文件包括:位于所述文件开头的主电影数据段、位于所述文件末尾固定长度的第一数据段、第二数据段以及多个逻辑数据段,所述第一数据段中存储有所述第二数据段的地址信息,所述第二数据段中存储有各逻辑数据段的地址信息;读取所述第一数据段中存储的所述第二数据段的地址信息;依据所述第二数据段的地址信息读取所述第二数据段中存储的各逻辑数据段的地址信息;依据所述各逻辑数据段的地址信息对应读取各逻辑数据段中存储的数据,以进行文件内容读取。通过本发明实施例提供的文件内容读取方案,能够对文件内容进行快速读取。
Description
技术领域
本发明涉及文件播放技术领域,特别是涉及一种文件内容读取方法和装置。
背景技术
MKV是Matroska的一种媒体文件,而Matroska是一种新的多媒体封装格式,也称多媒体容器(MultimediaContainer)。MKV文件可将多种不同编码的视频及16条以上不同格式的音频和不同语言的字幕流封装到一个MatroskaMedia文件当中。MKV文件最大的特点就是能容纳多种不同类型编码的视频、音频及字幕流。
而随着用户对文件的个性化的播放需要,MKV扩展文件已成为技术人员所研究的热点。MKV扩展文件是在MKV的基础上增加了多个逻辑数据段后生成的新格式的文件。MKV扩展文件生成后由相应的服务器进行管理。在进行MKV扩展文件播放时,播放器可以通过有线或者无线的方式连接到服务器,然后从服务器中读取所需的文件内容进行播放。
目前,播放器在对文件内容进行读取时,需要从文件的第一个数据段开始进行读取,然后按照各逻辑数据段在文件中的排列顺序依次读取各逻辑数据段中存储的数据,直至读取到所需的数据后再进行数据播放。例如:所需的数据位于文件中的第五个数据段中,目前在读取所需数据时,则需要从文件的第一个数据段开始读取数据,然后依次读取第二、第三、第四以及第五个数据段才能够得到所需的数据。
可见,现有的文件内容读取方案,对文件内容进行读取时,需遍历在所需数据所在的数据段前的全部数据段耗费大量的时间,无法实现对文件内容的快速读取。由于读取文件内容时需要耗费大量的时间,因此,当播放器与服务器之间通过无线连接、且连接速度较慢时,无法保证文件播放的流畅性,影响用户的使用体验。
发明内容
鉴于现有的文件内容读取方案无法实现对文件内容的快读读取问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的文件内容读取方法和装置。
依据本发明的一个方面,提供了一种文件内容读取方法,包括:定位至所述文件的末尾;其中,所述文件包括:位于所述文件开头的主电影数据段、位于所述文件末尾固定长度的第一数据段、第二数据段以及多个逻辑数据段,所述第一数据段中存储有所述第二数据段的地址信息,所述第二数据段中存储有各逻辑数据段的地址信息;读取所述第一数据段中存储的所述第二数据段的地址信息;依据所述第二数据段的地址信息读取所述第二数据段中存储的各逻辑数据段的地址信息;依据所述各逻辑数据段的地址信息对应读取各逻辑数据段中存储的数据,以进行文件内容读取。
可选地,所述第二数据段中存储的各逻辑数据段的地址信息设置在地址索引表中,所述依据所述第二数据段的地址信息读取所述第二数据段中存储的各逻辑数据段的地址信息的步骤包括:依据所述第二数据段的地址信息读取所述第二数据段中存储的地址索引表;从读取的所述地址索引表中获取各逻辑数据段的地址信息。
可选地,,所述第一数据段的固定长度为第一设定值,所述读取所述第一数据中存储的所述第二数据段的地址信息的步骤包括:读取距所述文件末尾第一设定值范围内的数据,从读取的数据中获取所述第二数据段的地址信息。
可选地,所述第一数据段的长度为63字节。
可选地,所述文件为MKV扩展文件;所述各逻辑数据段包括:补充和额外内容数据段、文件标识数据段、导航用户界面数据段、导航控制数据段、信息流数据段以及标识流数据段。
依据本发明的另一个方面,提供了一种文件内容读取装置,包括:定位模块,用于定位至所述文件的末尾;其中,所述文件包括:位于所述文件开头的主电影数据段、位于所述文件末尾固定长度的第一数据段、第二数据段以及多个逻辑数据段,所述第一数据段中存储有所述第二数据段的地址信息,所述第二数据段中存储有各逻辑数据段的地址信息;第一地址信息读取模块,用于读取所述第一数据段中存储的所述第二数据段的地址信息;第二地址信息读取模块,用于依据所述第二数据段的地址信息读取所述第二数据段中存储的各逻辑数据段的地址信息;文件读取模块,用于依据所述各逻辑数据段的地址信息对应读取各逻辑数据段中存储的数据,以进行文件内容读取。
可选地,所述第二数据段中存储的各逻辑数据段的地址信息设置在地址索引表中,所述第二地址信息读取模块包括:表读取模块,用于依据所述第二数据段的地址信息读取所述第二数据段中存储的地址索引表;信息读取模块,用于从读取的所述地址索引表中获取各逻辑数据段的地址信息。
可选地,所述第一数据段的固定长度为第一设定值,所述第一地址信息读取模块读取所述第一数据中存储的所述第二数据段的地址信息时:读取距所述文件末尾第一设定值范围内的数据,从读取的数据中获取所述第二数据段的地址信息。
可选地,所述第一数据段的长度为63字节。
可选地,所述文件为MKV扩展文件;所述各逻辑数据段包括:补充和额外内容数据段、文件标识数据段、导航用户界面数据段、导航控制数据段、信息流数据段以及标识流数据段。
与现有技术相比,本发明具有以下优点:
本发明实施例提供的文件内容读取方案,针对包含多个逻辑数据段的文件进行内容读取。文件中设置有多个逻辑数据段、主电影数据段、位于文件末尾固定长度的第一数据段以及存储有各逻辑数据段地址信息的第二数据段。在进行文件读取时,先定位到第一数据段获取第二数据段的地址信息,然后依据获取到的地址信息定位到存储有各逻辑数据段地址信息的第二数据段,从该数据断下获取到各逻辑数段的地址信息,然后,依据获取到的地址信息即可对逻辑数据段进行快速定位读取所需的数据,以实现对文件内容的读取。可见,本发明实施例提供的文件内容读取方案,能够依据逻辑数据段的地址信息直接定位到所需读取的数据段,相较于现有的需要从文件的首个数据段依次读取各数据段直至读取到所需的数据段为止的文件内容读取方案,能够提升文件内容的读取速度,实现对文件内容的快速读取。由于能够实现对文件内容的快速读取,因此,即便是播放器与服务器之间连接的无线网络网速慢时,也可以实现文件的流畅播放。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是根据本发明实施例一的一种文件内容读取方法的步骤流程图;
图2是根据本发明实施例二的一种文件内容读取方法的步骤流程图;
图3是根据本发明实施例三的一种文件内容读取装置的结构框图;
图4是根据本发明实施例四的一种文件内容读取装置的结构框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
实施例一
参照图1,示出了本发明实施例一的一种文件内容读取方法的步骤流程图。
本发明实施例的文件内容读取方法包括以下步骤:
步骤S102:定位至文件的末尾。
在从服务器中读取文件时,首先定位至文件的末尾,以便从文件的末尾字段开始读取数据。
待读取的文件可以为标清标准兼容的MKV扩展文件,还可以为高清标准兼容的MKV扩展文件。当然,可以是其他适当格式的文件,本发明实施例中,对待读取文件的格式不作具体限制。
步骤S104:读取第一数据段中存储的第二数据段的地址信息。
其中,待读取的文件包括:位于文件开头的主电影数据段、位于文件末尾固定长度的第一数据段、第二数据段以及多个逻辑数据段,且第一数据段中存储有第二数据段的地址信息,第二数据段中存储有各逻辑数据段的地址信息。将第一数据段设置在文件末尾且固定长度,更加便于文件打开时进行读取。
需要说明的是,第一数据段以及第二数据段在具体应用过程中可以由本领域技术人员根据实际需求进行命名,例如,将第一数据命名为标识数据段,将第二数据段命名为分割信息数据段。
文件中包含的逻辑数据段可以由本领域技术人员根据实际需求进行设置,本发明实施例中对此不作具体限制。例如:当待读取的文件为标清标准兼容的MKV扩展文件时,文件中包含的多个逻辑数据段为补充和额外内容数据段、文件标识数据段、导航用户界面数据段、导航控制数据段、信息流数据段以及标识流数据段。当待读取的文件为高清保准兼容的MKV扩展文件时,文件中包含的多个逻辑数据段为补充和额外内容数据段、文件标识数据段、导航用户界面数据段、导航控制数据段、信息流数据段、章节信息数据段以及标识流数据段。
步骤S106:依据第二数据段的地址信息读取第二数据段中存储的各逻辑数据段的地址信息。
需要说明的是,第二数据段中存储的各逻辑数据段的地址信息,可以以任意适当的形式进行存储。例如:可以将各逻辑数据段的地址信息以及各逻辑数据段的标识进行一一对应,存储在地址索引表中;还可以,直接按照顺序依次将各逻辑数据段的标识以及其对应的地址信息存储在第二数据段中。
步骤S108:依据各逻辑数据段的地址信息对应读取各逻辑数据段中存储的数据,以进行文件内容读取。
在确定各逻辑数据段的地址信息后,即可依据地址读取各数据段中存储的数据。例如:预读取文件中的第四个数据段中的数据,若采用普通的读取方式,则依次读取文件的第一、第二、第三以及第四个数据段才可以读取到所需要的数据。而采用本发明实施例提供的文件内容读取方法,仅需读取最后一个数据段,然后从中获取到第二数据段的地址信息,通过获取到的第二数据段的地址信息读取第二数据段最终获取到各数据段的地址信息,依据地址信息即可直接读取第四数据段中存储的数据,无需从第一数据段开始依次读取各数据段中存储的数据,以实现对文件内容的快速读取。
通过本发明实施例提供的文件内容读取方法,针对包含多个逻辑数据段的文件进行内容读取。文件中设置有多个逻辑数据段、主电影数据段以及位于文件末尾固定长度的第一数据段以及存储有各逻辑数据段地址信息的第二数据段。在进行文件读取时,先定位到第一数据段获取第二数据段的地址信息,然后依据获取到的地址信息定位到存储有各逻辑数据段地址信息的第二数据段,从该数据断下获取到各逻辑数段的地址信息,然后,依据获取到的地址信息即可对逻辑数据段进行快速定位读取所需的数据,以实现对文件内容的读取。可见,本发明实施例提供的文件内容读取方法,能够依据逻辑数据段的地址信息直接定位到所需读取的数据段,相较于现有的需要从文件的首个数据段依次读取各数据段直至读取到所需的数据段为止的文件内容读取方案,能够提升文件内容的读取速度,实现对文件内容的快速读取。
实施例二
参照图2,示出了本发明实施例二的一种文件内容读取方法的步骤流程图。
本发明实施例的文件内容读取方法包括以下步骤:
步骤S202:播放器定位至文件的末尾。
本发明实施例中以对VIDON文件进行内容读取为例进行说明。需要说明的是,本发明实施例中提供的文件内容读取方法并不局限于对VIDON文件进行内容读取,还适用于其它包含多个逻辑数据段的文件的内容提取。其中,VIDON文件为对MKV文件进行扩展后生成的另一种格式的文件。VIDON仅是对该特定格式的文件的后缀名,在具体实现过程中,还可以将MKV扩展文件以其它后缀名进行命名,本发明实施例中对此不作具体限制。
播放器从VIDON文件服务器中确定待读取的VIDON文件,然后定位到该文件的末尾对该文件进行内容读取。在VIDON文件服务器中存储有多个VIDON文件,各VIDON文件具有对应的名称和/或标识。VIDON文件中存储有多部电影的主电影以及主电影补充内容,播放器在进行播放时,在VIDON文件服务器中确定待播放的主电影和/或主电影补充内容后,读取到播放器中进行播放。需要说明的是播放器可以为任意适当的能够播放MKV文件的播放器,例如:DVDWatchBox盒子播放器。播放器可以通过有线或者无线网络与文件服务器进行交互。
本发明实施例中的VIDON文件是在MKV文件格式的基础上,增加多个逻辑数据段后生成新的格式的数据段。VIDON文件可以是高清标准兼容的MKV扩展文件,也可以是标清标准兼容的MKV文件。
其中,所述文件包括:位于文件开头的主电影数据段、位于文件末尾固定长度的第一数据段、第二数据段以及多个逻辑数据段,所述第一数据段中存储有第二数据段的地址信息,第二数据段中存储有各逻辑数据段的地址信息。
MKV扩展文件中包括的各逻辑数据段包括但不限于:补充和额外内容数据段、文件标识数据段、导航用户界面数据段、导航控制数据段、信息流数据段以及标识流数据段。并且,当MKV扩展文件为高清标准兼容的MKV文件时,逻辑数据段还包括章节信息数据段。
下面分别对文件中包含的各逻辑数据段中存储的数据进行说明:
主电影数据段中存储有多段主电影,即该数据段中存储的数据由视频、音频及字幕流混合而成,是完整电影情节部分。将主电影数据段设置成位于文件开头的数据段,在对文件进行播放是即便不采用导航播放方法,而采用普通的MKV播放方法也可以对主电影数据段中存储的主电影进行顺序播放。可见,通过将主电影数据段设置成首个数据段既可以满足文件导航的播放需求又可以满足类似于MKV播放的普通播放需求。
主电影数据段中,每段主电影对应有多类音频,以及多类字幕,音频类别可以达到16种国家的语言,当然,也可以更多也可以仅设置几种常用的音频类别,对于字幕类别也同样,对于音频类别、字幕类别的具体设置可以由本领域技术人员根据实际需求进行设置,本发明实施例中对此不作具体限制。不仅如此,主电影数据段中还包括各主电影包含的各章节的信息,通过章节信息可以定位到主电影的具体章节。其中,章节信息包括章节标识,各章节对应的起始时间以及结束时间。
补充和额外内容数据段中存储有多段电影补充内容,该段数据中存储的数据也由视频、音频及字幕流混合而成,是一些电影预告短片及菜单背景等内容。
第一数据段中存储有第二数据段的地址信息。第一数据段设置在文件末尾且设置成固定长度既可以保证文件对MKV格式的兼容,又可以达到对文件中的第一数据段的准确定位的目的。
第二数据段中存储有文件中各逻辑数据段在文件中的地址信息。
文件标识数据段中存储有文件标识。文件标识的具体设置可以由本领域技术人员在实际应用过程中根据实际需求进行设置,只要能够指示其所在文件为特定格式的文件即可。例如:用“MKUDVD”标识VIDON文件。
导航用户界面数据段中存储有生成导航用户界面的数据,例如:记录用户交互显示时各显示元素的位置、开始显示时间等信息。用户通过这些显示元素生成的导航用户界面可以设定播放媒体流数据时需要的音频类别、字幕语言类别以及具体章节等内容。
导航控制数据段中存储有用来控制完整导航播放过程的导航控制程序。
信息流数据段中存储有媒体流数据索引标识、各段媒体流数据时长等信息。其中,媒体流数据包括主电影数据段中存储的各段主电影以及补充和额外内容数据段中存储的各段电影补充内容。信息流数据段中存储有各段主电影的索引标识、时长等信息;同时还存储有各段电影补充内容的索引标识、时长等信息。
标识流数据段中存储有类别标识符表,该类别标识符表中针对每段主电影记录有主电影的标识,以及对应的不同语言的音频类别标识及字幕类别标识。当用户通过导航用户界面选择主电影、音频类别以及字幕类别时,通过该类别标识符表即可确定主电影标识、音频类别标识、以及字幕类别标识,通过这些标识从主电影数据段中提取相应的主电影进行播放即可。
章节信息数据段中存储主电影数据段中存储的各主电影中各个章节的起始时间、以及终止时间。
一种优选的存储方式为:将第二数据段中存储的各逻辑数据段的地址信息设置在地址索引表中。本发明实施例中,以将逻辑数据段的地址信息设置在地址索引表中为例进行后续说明。
步骤S204:播放器读取第一数据段中存储的第二数据段的地址信息。
其中,在对文件中的第一数据段的长度进行设置时,可以将第一数据段长度设置成第一设定值。优选地,第一设定值为63字节。将第一数据段设置成63字节长,既可以满足对第二数据段的地址信息的存储需求,又可以不过多的占用文件的存储空间。若将第一设定值设定的过大,虽然也可以满足对第二数据段的地址信息的存储需求,但是会占用文件的有效存储空间。若将第一设定值设定的过小,虽然能够节省文件的有效存储空间,但无法满足对第二数据段的地址信息的存储需求。
当然,第一数据段的长度并不局限于63字节。在具体实现过程中,可以由本领域技术人员根据实际需求进行设置,如可将第一数据段设置成70字节、60字节、55字节等。
一种优选的读取第一数据段中存储的第二数据段的地址信息的方式为:读取距文件末尾第一设定值范围内的数据,从读取的数据中获取第二数据段的地址信息。
例如:第一数据段的固定长度为63字节,在读取第一数据段中存储的第二数据段的地址信息时,定位到文件的末尾,读取从文件末尾起向前读取63字节的数据,即可得到第二数据段的地址信息。
步骤S206:依据第二数据段的地址信息读取第二数据段中存储的地址索引表。
第二数据段的地址信息的具体形式可以由本领域技术人员根据实际需求进行设置,本发明实施例中对此不作具体限制。例如:第二数据段的地址信息可以为第二数据段的起始位置信息以及结束位置信息,也可以为第二数据段的标识信息以及该数据段的起始位置信息。
其中,第二数据段的长度可以由本领域技术人员根据实际需求进行设置,本发明实施例对此不作具体限制。如随着逻辑数据段数量的增加将第二数据段的长度增大,随着逻辑数据段数量的减少将第二数据段的长度减小。
步骤S208:播放器从读取的地址索引表中获取各逻辑数据段的地址信息。
对于各逻辑数据段的地址信息在地址索引表中的具体存储形式,可以由本领域技术人员根据实际需求进行设置,本发明实施例中对此不作具体限制。例如:在地址索引表中将逻辑段的标识与地址信息一一对应进行存储。
步骤S210:播放器依据各逻辑数据段的地址信息对应读取各逻辑数据段中存储的数据,以进行文件内容读取。
播放器在获取到文件中的各逻辑数据段的地址信息后,即可依据地址信息针对性的定位到逻辑数据段,读取逻辑数据段中存储的数据。
例如:需要进行文件导航播放,则需要在获取到各逻辑数据段的地址信息后,首先定位到导航控制数据段读取导航控制数据;其次,依据导航控制数据中的具体导航控制程序确定需要获取哪些逻辑数据段;然后再通过逻辑数据段的地址信息对应读取逻辑数据段中存储的数据。再例如:打开文件时,需要首先获取补充和额外内容数据段中存储的电影补充内容,则在获取到各逻辑数据段的地址信息后,确定补充和额外内容数据段对应的地址信息,并依据该地址信息对该数据段进行定位并进行数据读取。
通过本发明实施例提供的文件内容读取方法,针对包含多个逻辑数据段的文件进行内容读取。文件中设置有多个逻辑数据段、主电影数据段以及位于文件末尾固定长度的第一数据段以及存储有各逻辑数据段地址信息的第二数据段。在进行文件读取时,先定位到第一数据段获取第二数据段的地址信息,然后依据获取到的地址信息定位到存储有各逻辑数据段地址信息的第二数据段,从该数据断下获取到各逻辑数段的地址信息,然后,依据获取到的地址信息即可对逻辑数据段进行快速定位读取所需的数据,以实现对文件内容的读取。可见,本发明实施例提供的文件内容读取方法,能够依据逻辑数据段的地址信息直接定位到所需读取的数据段,相较于现有的需要从文件的首个数据段依次读取各数据段直至读取到所需的数据段为止的文件内容读取方案,能够提升文件内容的读取速度,实现对文件内容的快速读取。
下面以一具体实例对本发明实施例的文件内容读取方法进行说明:
假设Vidon文件包括以下数据段:主电影数据段–预告片1数据段(即补充和额外内容数据段1)–预告片2数据段(即补充和额外内容数据段1)–NavigationUI数据段(即导航用户界面数据段)–NavigationControl数据段(导航控制数据段)。
现有的做法并不建立各数据段地址索引表。只是按顺序依次存储数据段内容,并在每个数据段开始位置设置标识。在导航播放文件时,第一次读取,从第一个数据段顺序读到地五个数据段,才能够读取NavigationControl数据段中存储的内容得到导航控制程序;假设导航控制程序中设定的导航程序为先播放预告片2,然后显示UI即导航用户界面,那么在进行文件导航时,则需要第二次读取文件,从第一个数据段顺序读到第三个数据段获取到预告片2进行播放;在按要求显示UI时,则需要第三次读取文件,从第一数据开始顺序读到第四个数据段,读取UI生成数据生成UI并显示。可见,这个过程需要反复多次从头读取文件。
本具体实例中,在Vidon文件末尾设置固定长度的第一数据段,并且,在第一数据段中建立地址索引表,然后将Vidon文件中各逻辑数据段的地址信息存储在地址索引表中。也就是说,本发明实施例中的Vidon文件包括以下数据段:主电影数据段–预告片1数据段(即补充和额外内容数据段1)–预告片2数据段(即补充和额外内容数据段1)–NavigationUI数据段(即导航用户界面数据段)–NavigationControl数据段(导航控制数据段)–第二数据段–第一数据段。
在导航播放文件时,首先读取Vidon文件末尾的第一数据段,从第一数据段中获取第二数据段的地址信息,依据第二数据段的地址信息获取第二数据段中存储的各数据段的地址信息;然后确定NavigationControl数据段的地址信息,依据确定的地址信息获取定NavigationControl数据段中存储的内容以得到导航控制程序。依然假设导航控制程序中设定的导航程序为先播放预告片2,然后显示UI即导航用户界面,那么在进行文件导航时,则先确定预告片2对应的地址信息,依据确定的地址信息读取预告片2中存储的数据进行预告片2的播放;然后,确定NavigationUI数据段的地址信息,依据确定的地址信息读取NavigationUI数据段下存储的生成UI的数据,生成UI进行显示。可见,本发明实施例提供的文件内容读取方法,可以避免重复多次从文件开始读取文件的繁复过程,仅一次读取索引表内容,就知道全部数据段的位置信息,在需要某个数据段中存储的内容时,可以按地址快速索引速定位至相应的数据段读取存储的数据进行文件内容提取,能够实现对文件内容的快速读取。
实施例三
参照图3,示出了本发明实施例三的一种文件内容读取装置的结构框图。
本发明实施例的文件内容读取装置包括:定位模块302,用于定位至所述文件的末尾;其中,所述文件包括:位于所述文件开头的主电影数据段、位于所述文件末尾固定长度的第一数据段、第二数据段以及多个逻辑数据段,所述第一数据段中存储有所述第二数据段的地址信息,所述第二数据段中存储有各逻辑数据段的地址信息;第一地址信息读取模块304,用于读取所述第一数据段中存储的所述第二数据段的地址信息;第二地址信息读取模块306,用于依据所述第二数据段的地址信息读取所述第二数据段中存储的各逻辑数据段的地址信息;文件读取模块308,用于依据所述各逻辑数据段的地址信息对应读取各逻辑数据段中存储的数据,以进行文件内容读取。
通过本发明实施例提供的文件内容读取装置,针对包含多个逻辑数据段的文件进行内容读取。文件中设置有多个逻辑数据段、主电影数据段以及位于文件末尾固定长度的第一数据段以及存储有各逻辑数据段地址信息的第二数据段。在进行文件读取时,先定位到第一数据段获取第二数据段的地址信息,然后依据获取到的地址信息定位到存储有各逻辑数据段地址信息的第二数据段,从该数据断下获取到各逻辑数段的地址信息,然后,依据获取到的地址信息即可对逻辑数据段进行快速定位读取所需的数据,以实现对文件内容的读取。可见,本发明实施例提供的文件内容读取装置,能够依据逻辑数据段的地址信息直接定位到所需读取的数据段,相较于现有的需要从文件的首个数据段依次读取各数据段直至读取到所需的数据段为止的文件内容读取方案,能够提升文件内容的读取速度,实现对文件内容的快速读取。
实施例四
参照图4,示出了本发明实施例四的一种文件内容读取装置的结构框图。
本发明实施例的文件内容读取装置是对实施例三中的文件内容读取装置的进一步优化,优化后文件内容读取装置包括:定位模块402,用于定位至所述文件的末尾;其中,所述文件包括:位于所述文件开头的主电影数据段、位于所述文件末尾的第一数据段以及多个逻辑数据段,所述第一数据段中存储有所述第二数据段的地址信息,所述第二数据段中存储有各逻辑数据段的地址信息;第一地址信息读取模块404,用于读取所述第一数据段中存储的所述第二数据段的地址信息;第二地址信息读取模块406,用于依据所述第二数据段的地址信息读取所述第二数据段中存储的各逻辑数据段的地址信息;文件读取模块408,用于依据所述各逻辑数据段的地址信息对应读取各逻辑数据段中存储的数据,以进行文件内容读取。
优选地,所述第二数据段中存储的各逻辑数据段的地址信息设置在地址索引表中,所述第二地址信息读取模块406包括:表读取模块4062,用于依据所述第二数据段的地址信息读取所述第二数据段中存储的地址索引表;信息读取模块4064,用于从读取的所述地址索引表中获取各逻辑数据段的地址信息。
优选地,所述第一数据段长第一设定值,所述第一地址信息读取模块404读取所述第一数据中存储的所述第二数据段的地址信息时:读取距所述文件末尾第一设定值范围内的数据,从读取的该段数据中获取所述第二数据段的地址信息。
优选地,所述第一数据段的长度为63字节。
优选地,所述文件为MKV扩展文件;所述各逻辑数据段包括:补充和额外内容数据段、文件标识数据段、导航用户界面数据段、导航控制数据段、信息流数据段以及标识流数据段。
本发明实施例的文件内容读取装置用于实现前述实施例一、二中相应的文件内容读取方法,并具有与方法实施例相应的有益效果,在此不再赘述。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在此提供的文件内容读取方案不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造具有本发明方案的系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的文件内容读取方案中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
Claims (10)
1.一种文件内容读取方法,其特征在于,包括:
定位至所述文件的末尾;其中,所述文件包括:位于所述文件开头的主电影数据段、位于所述文件末尾固定长度的第一数据段、第二数据段以及多个逻辑数据段,所述第一数据段中存储有所述第二数据段的地址信息,所述第二数据段中存储有各逻辑数据段的地址信息;
读取所述第一数据段中存储的所述第二数据段的地址信息;
依据所述第二数据段的地址信息读取所述第二数据段中存储的各逻辑数据段的地址信息;
依据所述各逻辑数据段的地址信息对应读取各逻辑数据段中存储的数据,以进行文件内容读取。
2.根据权利要求1所述的方法,其特征在于,所述第二数据段中存储的各逻辑数据段的地址信息设置在地址索引表中,所述依据所述第二数据段的地址信息读取所述第二数据段中存储的各逻辑数据段的地址信息的步骤包括:
依据所述第二数据段的地址信息读取所述第二数据段中存储的地址索引表;
从读取的所述地址索引表中获取各逻辑数据段的地址信息。
3.根据权利要求2所述的方法,其特征在于,所述第一数据段的固定长度为第一设定值,所述读取所述第一数据中存储的所述第二数据段的地址信息的步骤包括:
读取距所述文件末尾第一设定值范围内的数据,从读取的数据中获取所述第二数据段的地址信息。
4.根据权利要求3所述的方法,其特征在于,所述第一数据段的长度为63字节。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述文件为MKV扩展文件;
所述各逻辑数据段包括:补充和额外内容数据段、文件标识数据段、导航用户界面数据段、导航控制数据段、信息流数据段以及标识流数据段。
6.一种文件内容读取装置,其特征在于,包括:
定位模块,用于定位至所述文件的末尾;其中,所述文件包括:位于所述文件开头的主电影数据段、位于所述文件末尾固定长度的第一数据段、第二数据段以及多个逻辑数据段,所述第一数据段中存储有所述第二数据段的地址信息,所述第二数据段中存储有各逻辑数据段的地址信息;
第一地址信息读取模块,用于读取所述第一数据段中存储的所述第二数据段的地址信息;
第二地址信息读取模块,用于依据所述第二数据段的地址信息读取所述第二数据段中存储的各逻辑数据段的地址信息;
文件读取模块,用于依据所述各逻辑数据段的地址信息对应读取各逻辑数据段中存储的数据,以进行文件内容读取。
7.根据权利要求6所述的装置,其特征在于,所述第二数据段中存储的各逻辑数据段的地址信息设置在地址索引表中,所述第二地址信息读取模块包括:
表读取模块,用于依据所述第二数据段的地址信息读取所述第二数据段中存储的地址索引表;
信息读取模块,用于从读取的所述地址索引表中获取各逻辑数据段的地址信息。
8.根据权利要求7所述的装置,其特征在于,所述第一数据段的固定长度为第一设定值,所述第一地址信息读取模块读取所述第一数据中存储的所述第二数据段的地址信息时:
读取距所述文件末尾第一设定值范围内的数据,从读取的数据中获取所述第二数据段的地址信息。
9.根据权利要求8所述的装置,其特征在于,所述第一数据段的长度为63字节。
10.根据权利要求6-9任一项所述的装置,其特征在于,所述文件为MKV扩展文件;
所述各逻辑数据段包括:补充和额外内容数据段、文件标识数据段、导航用户界面数据段、导航控制数据段、信息流数据段以及标识流数据段。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510717761.3A CN105405457B (zh) | 2015-10-29 | 2015-10-29 | 文件内容读取方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510717761.3A CN105405457B (zh) | 2015-10-29 | 2015-10-29 | 文件内容读取方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105405457A true CN105405457A (zh) | 2016-03-16 |
CN105405457B CN105405457B (zh) | 2018-03-16 |
Family
ID=55470898
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510717761.3A Active CN105405457B (zh) | 2015-10-29 | 2015-10-29 | 文件内容读取方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105405457B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1542624A (zh) * | 2003-04-29 | 2004-11-03 | 大唐移动通信设备有限公司 | 一种在Flash文件系统中加快逻辑块映射速度的方法 |
CN1554094A (zh) * | 2001-09-10 | 2004-12-08 | ��ķ��ɭ | 用于支持在数字音频播放器中的用户接口和导航任务的m3u文件格式的扩展 |
WO2008048067A1 (en) * | 2006-10-19 | 2008-04-24 | Lg Electronics Inc. | Encoding method and apparatus and decoding method and apparatus |
CN101325681A (zh) * | 2008-07-25 | 2008-12-17 | 北京声迅电子有限公司 | 用于录像机和视频服务器的avs编码文件格式的存储方法 |
CN101477575A (zh) * | 2009-01-22 | 2009-07-08 | 中兴通讯股份有限公司 | 一种多媒体信息存储和播放方法及其装置 |
-
2015
- 2015-10-29 CN CN201510717761.3A patent/CN105405457B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1554094A (zh) * | 2001-09-10 | 2004-12-08 | ��ķ��ɭ | 用于支持在数字音频播放器中的用户接口和导航任务的m3u文件格式的扩展 |
CN1542624A (zh) * | 2003-04-29 | 2004-11-03 | 大唐移动通信设备有限公司 | 一种在Flash文件系统中加快逻辑块映射速度的方法 |
WO2008048067A1 (en) * | 2006-10-19 | 2008-04-24 | Lg Electronics Inc. | Encoding method and apparatus and decoding method and apparatus |
CN101325681A (zh) * | 2008-07-25 | 2008-12-17 | 北京声迅电子有限公司 | 用于录像机和视频服务器的avs编码文件格式的存储方法 |
CN101477575A (zh) * | 2009-01-22 | 2009-07-08 | 中兴通讯股份有限公司 | 一种多媒体信息存储和播放方法及其装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105405457B (zh) | 2018-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8912931B2 (en) | Method and apparatus for encoding/decoding metadata | |
CN101091213B (zh) | 处理来自信息存储介质的数据的设备和方法 | |
US9576609B2 (en) | Subtitle processing device and associated method and subtitle parsing method | |
EP1747557A1 (en) | Method of and apparatus for reproducing downloaded data along with data recorded on storage medium | |
SE531398C2 (sv) | Generering av en dataström och identifiering av positioner inuti en dataström | |
EP1012753B1 (en) | A computer implemented method of generating virtual files for sharing information of a physical information file | |
CN101919244A (zh) | 用于播放部分可用多媒体内容的系统和方法 | |
CN101682744A (zh) | 再现装置、记录装置、再现方法及记录方法 | |
US9197908B2 (en) | Method for file formation according to freeview AV service | |
CN101099208A (zh) | 使用本地存储从记录介质再现数据的方法和装置 | |
KR20010033912A (ko) | 특성 포인트 정보 시퀀스를 얻기 위한 정보 파일에 대한신호처리 | |
CN101770371A (zh) | 应用主题内容预览方法及装置 | |
CN101937695B (zh) | 富媒体业务场景播放方法及文件播放器 | |
US7826713B2 (en) | Storage medium storing multimedia data for reproduction of AV data and programming function, and reproducing apparatus and method thereof | |
CN105405457A (zh) | 文件内容读取方法和装置 | |
CN104768083B (zh) | 一种章节内容展示的视频播放方法及装置 | |
US11677929B2 (en) | Apparatus and method for displaying multi-depth image | |
KR102278048B1 (ko) | 영상 처리 장치, 이의 제어 방법 및 컴퓨터 프로그램이 기록된 기록 매체 | |
CN113852857A (zh) | 一种基于html5视频帧步进时的声音播放方法及系统 | |
CN105338417A (zh) | 文件导航播放方法和装置 | |
CN105338415A (zh) | 文件导航播放方法和装置 | |
CN105516779B (zh) | 影片字幕处理装置与方法,以及解析影片字幕的方法 | |
KR20120097693A (ko) | 콘텐츠를 생성하고 재생하는 장치 및 방법, 그 콘텐츠가 기록된 기록매체 | |
CN1574936A (zh) | 确定入口点的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20211115 Address after: 100024 c1147, floor 1, No. 1063-1, Huihe South Street, Banbidian village, Gaobeidian Township, Chaoyang District, Beijing Patentee after: Beijing Miaoshi Software Technology Co., Ltd Address before: 100084 office b-521-b153, floor 5, building 2, courtyard 1, Nongda South Road, Haidian District, Beijing Patentee before: Beijing Weidong Technology Co., Ltd |