CN101136235A - 回放装置、回放方法、和回放程序 - Google Patents

回放装置、回放方法、和回放程序 Download PDF

Info

Publication number
CN101136235A
CN101136235A CN 200710182183 CN200710182183A CN101136235A CN 101136235 A CN101136235 A CN 101136235A CN 200710182183 CN200710182183 CN 200710182183 CN 200710182183 A CN200710182183 A CN 200710182183A CN 101136235 A CN101136235 A CN 101136235A
Authority
CN
China
Prior art keywords
data
information
stored
module
enclosing
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
Application number
CN 200710182183
Other languages
English (en)
Other versions
CN101136235B (zh
Inventor
内村幸一
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Publication of CN101136235A publication Critical patent/CN101136235A/zh
Application granted granted Critical
Publication of CN101136235B publication Critical patent/CN101136235B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/30Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording
    • G11B27/3027Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on the same track as the main recording used signal is digitally coded
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2541Blu-ray discs; Blue laser DVR discs

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Television Signal Processing For Recording (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)

Abstract

一种回放装置包括以下元件。输入端接收内容数据和在多个第一单元的基础上形成的随附数据,并且该随附数据用于显示与该内容数据相伴随的信息。第一存储部件在形成由输入部件接收的随附数据的多个第一单元之中存储在其中定义了关于译码时间的译码时间信息的第一单元。时间信息存储部件存储译码时间信息。译码器从第一存储部件中提取第一单元,并且根据存储在时间信息存储部件中的译码时间信息对第一单元进行译码。第二存储部件存储由译码器译码的第一单元。时间信息存储部件至少具有基于存储在第一存储部件中的第一单元的数量上限的容量。

Description

回放装置、回放方法、和回放程序
技术领域
本发明涉及用于对流(stream)进行回放的回放装置和回放方法,其中在该流中字幕数据或按钮数据是与视频数据或音频数据多路复用的,上述视频数据或音频数据记录在大容量记录介质上,例如蓝光盘(Blu-ray DiscTM)上。本发明也涉及用于实现回放方法的回放程序。
背景技术
已经提出了蓝光光盘的标准,作为盘型记录介质的标准,其中盘型记录介质可从记录/回放装置上移除。根据蓝光光盘标准,使用具有0.1mm覆盖层的12cm盘作为记录介质,并且使用具有波长为405nm并且数值孔径为0.85的蓝-紫色激光的物镜镜头作为光学系统,如此实现最大27千兆字节(GB)的记录容量。这就有可能在不损坏图像质量的情况下记录超过两个小时的日本标准广播卫星(BS)数字高清(HD)节目。
作为用于供应记录在这种光盘上的音频/视频(AV)信号的来源,采用了两种类型的来源:一种类型是用于供应通过模拟电视广播传输的模拟信号的来源,另一种类型是用于供应通过数字电视广播传输的数字信号的来源。依据蓝光光盘标准,已经定义了用于通过两种类型的广播系统来记录AV信号的标准。
作为当前蓝光光盘的派生标准,正在开发在其上记录影片或音乐的只读记录介质。作为用于记录影片或音乐的盘型的记录介质,数字通用光盘(DVD)已经被广泛的使用了。但是,基于蓝光光盘标准的只读光盘优于已知的DVD,原因在于其能够通过利用蓝光光盘特有的特性优势,诸如大容量和高传输速度,来记录超过两个小时的HD视频同时保持高图像质量。
在下文中把基于蓝光光盘的只读记录介质的标准称为蓝光光盘只读存储器格式(BD-ROM)标准。
对于记录在只读记录介质上的内容来说,字幕是不可缺少的要素之一。在BD-ROM标准中,字幕显示在不同于在其上显示运动图像的平面的平面上,并且通过将字幕平面和运动图像平面进行组合,可以通过相互叠加来显示字幕和运动图像。例如,字幕平面重叠在运动图像平面上,并且在字幕平面中,将除了字幕之外的部分变成透明的。然后,可以形成一图像数据,在该图像数据中字幕显示在运动图像之上。
为了在光盘上记录诸如影片的内容,并且将该光盘作为封装介质来销售,把用于控制伴随内容一起的各种程序的执行的用户界面与内容一起记录在光盘上。在屏幕上显示的菜单就是典型的用户界面。作为在屏幕上所显示菜单的一个例子,提供用于选择功能的按钮作为按钮图像,并且用户能够通过预设输入单元来选择并设定一个按钮,随后,执行分配给所选按钮的功能。通常,通过使用为与播放器兼容的遥控指令器提供的十字按钮,用户来选择显示在屏幕上的按钮并且点击设置按钮。然后,执行与按钮相关的功能。
公开号为2004-304767的日本未审查专利申请公开了以下技术。在该公开文本中所公开的技术中,在记录/回放标准,即,蓝光光盘标准(蓝光光盘可重写格式Ver1.0)的基础上,分别提供了:用于显示运动图像的运动图像平面和用于显示字幕的字幕平面。然后,在一个屏幕上共同显示了基于视频数据的运动图像和基于字幕图像数据的字幕。此外,也公开了用于通过使用按钮图像在屏幕上显示菜单的技术。
根据BD-ROM标准,以传输流(TS)的格式将视频数据或音频数据记录在盘上,其中在运动图像专家组2(MPEG2)系统中定义了传输流(TS)。更准确地说,将视频数据或音频数据分成了分组基本流(PES)信息包,并且将PES信息包进一步地分成具有预定尺寸的部分(portion),并且将具有指示数据类型的标识信息(信息包标识(PID))的报头添加到每个已分割的部分上。于是,就形成了188-字节的TS信息包。然后将该TS信息包多路复用并记录在盘上。
也可根据预设单元将上述用于显示菜单屏幕或命令的字幕图像数据和图像数据分割成PES信息包,并进一步分割成具有预定尺寸的部分。然后,将具有PID的报头信息添加到每个已分割的部分上,得到TS信息包。然后,将TS信息包与视频数据或音频数据多路复用,并且将该多路复用的数据记录在光盘上。
下面将进一步地在字幕图像数据的上下文关系中给出在光盘上数据记录的详细内容。字幕图像数据是由单元(unit)形成的,由作者通过指定断点来对单元进行划分,并且每个单元都存储在PES信息包中。在这种情况下,字幕图像数据包括多个数据项(data item),诸如字幕由,例如,位图数据、关于在哪里并且如何对该字幕图像数据进行显示的信息、以及关于定义字幕图像数据帧的显示帧的信息组成。分别将该多个数据项存储在相应的PES信息包中。在下文中,形成字幕图像数据的多个数据项总称为“字幕图像数据”。
将填充在PES信息包中的分别指示字幕图像数据的译码时间和显示时间的译码时间标记(DTS)和显现时间标记(PTS)存储在PES报头中,该报头作为PES信息包的报头。将该PES信息包进一步分割为具有预定尺寸的部分,并且将指示数据类型的PID添加到每个已分割的部分上,得到TS信息包。然后,将该TS信息包与视频数据和音频数据的TS信息包以及按钮图像数据的TS信息包进行多路复用,这将在下面进行讨论,并且接着将该多路复用的信息包存储在盘上。
对用于显示菜单屏幕的数据进行与字幕图像数据相似的处理。使多个用于显示菜单屏幕的数据分别形成PES信息包,然后,将该PES信息包分割成具有预定尺寸的部分。然后,将PID添加到每个已分割的部分上,得到TS信息包。
为了通过回放该盘来显示上述字幕图像数据,从盘中读取传输流并且从每个TS信息包中提取出报头以获取PID。接着在所获取的PID的基础上,将存储了字幕图像数据的TS信息包进行分割并且将其临时存储在缓冲器中。当在缓冲器中存储了足够多的能够被重新构建成PES信息包的TS信息包的时候,在相关的PID的基础上从相同类型TS信息包的有效负荷中提取数据,以便重新构建PES信息包。然后,将PES报头从重新构建的PES信息包中移除,重新构建形成字幕图像数据的多个数据。
将重新构建的形成字幕图像数据的多个数据临时存储在译码缓冲器中。然后,在由存储在PES报头中的DTS所表示的时间,从译码缓冲器中读取数据并且将其译码。然后,将译码后的数据存储在输出缓冲器中。在由存储在PES报头中的PTS所表示的时间,输出存储在输出缓冲器中的数据。
发明内容
如上所述,分别通过存储在PES报头中的DTS和PTS来指定字幕图像数据的译码时间和输出时间。因此,有必要在存储器中存储与该字幕图像数据相关的DTS和PTS,其中该字幕图像数据存储在译码缓冲器中,直到,例如,从输出缓冲器中输出该译码数据。
然而,如上所讨论的,字幕图像数据由单元(unit)组成,基于由作者指定的断点分割该单元。因此,形成字幕图像数据的每一个单元的大小尺寸都是不同的。因而难以估计有多少形成字幕图像数据的数据项要存储在译码缓冲器中,并且因而难以相比于译码缓冲器的容量来估计用于存储DTS和PTS的存储器的容量。这同样适用于用来显示菜单屏幕的数据。
为了克服这种缺点,可以使用具有足够大的容量以存入DTS和PTS的存储器。然而,这样增加了播放器的成本。
因而难以适当地设计和配置用于对字幕图像数据或菜单屏幕数据进行译码的译码器,其中根据字幕或者菜单屏幕数据的断点来指定字幕图像数据或菜单屏幕数据的译码时间与输出时间。
因而希望提供一回放装置,其包括适用于对字幕图像数据或菜单屏幕数据进行译码的译码器,其中根据字幕或菜单屏幕的断点来指定字幕图像数据或菜单屏幕数据的译码时间与输出时间,并且还希望提供用于该回放装置的回放方法和回放程序。
根据本发明的实施例,提供了一种回放装置,该回放装置包括:输入部件,其接收内容数据和在多个第一单元的基础上形成的随附数据,其中随附数据用于显示与内容数据相伴随的信息;第一存储部件,其存储在形成由输入部件接收的随附数据的多个第一单元之中的一个第一单元,在该第一单元中定义了关于译码时间的译码时间信息;时间信息存储部件,其存储译码时间信息;译码器,其从第一存储部件中提取第一单元并且根据存储在时间信息存储部件中的译码时间信息对第一单元进行译码;以及第二存储部件,其存储由译码器译码的第一单元。时间信息存储部件至少具有基于存储在第一存储部件中的第一单元数量上限的容量。
根据本发明的另一个实施例,提供了一种回放方法,其包括步骤:接收内容数据和在多个第一单元的基础上形成的随附数据,该随附数据被用于显示与该内容数据相伴随的信息;把在形成所接收随附数据的多个第一单元之中的一个第一单元存储在第一存储部件中,其中在这个第一单元中定义了关于译码时间的译码时间信息;在时间信息存储部件中存储译码时间信息;从第一存储部件中提取第一单元并且根据存储在时间信息存储部件中的译码时间信息对第一单元进行译码;以及在第二存储部件中存储经译码的第一单元。时间信息存储部件在存储于第二存储部件中的第一单元数量上限的基础上至少能够存储该译码时间信息。
根据本发明的另一个实施例,提供一回放程序,其允许计算机执行一回放方法,该方法包括步骤:接收内容数据和在多个第一单元的基础上形成的随附数据,该随附数据被用于显示与该内容数据相伴随的信息;把在形成所接收随附数据的多个第一单元之中的一个第一单元存储在第一存储部件中,在该第一单元中定义了关于译码时间的译码时间信息;在时间信息存储部件中存储译码时间信息;从第一存储部件中提取第一单元并且根据存储在时间信息存储部件中的译码时间信息对第一单元进行译码;以及在第二存储部件中存储经译码的第一单元。时间信息存储部件在存储于第二存储部件中的第一单元数量上限的基础上至少能够存储该译码时间信息。
如上所描述的,根据本发明的一个实施例,接收了内容数据和在多个第一单元的基础上形成的随附数据,该随附数据被用于显示与内容数据相伴随的信息。把在形成所接收的随附数据的多个第一单元之中的一个第一单元存储在第一存储部件中,其中在该第一单元中定义了关于译码时间的译码时间信息。在时间信息存储部件中存储译码时间信息。从第一存储部件中提取第一单元并且根据存储在时间信息存储部件中的译码时间信息对第一单元进行译码。在第二存储部件中存储经译码的第一单元。时间信息存储部件至少具有基于存储在第一存储部件中的第一单元数量上限的容量。由于有这种结构,可以容易地对时间信息存储部件的容量进行估计,以便可以提供适当的译码器。
附图说明
图1示意性图解BD-ROM的数据模型;
图2示意性图解索引表;
图3图解用于指示剪辑AV流、剪辑信息、剪辑、播放项目、和播放列表之间关系的统一建模语言(UML);
图4示意性图解用于通过多个播放列表引用相同剪辑的方法;
图5示意性图解子路径;
图6示意性图解记录在记录介质上的文件的管理结构;
图7A和7B示意性图解由BD虚拟播放器进行的操作;
图8示意性图解由BD虚拟播放器进行的操作;
图9示意性图解在本发明的一个实施例中用作图像显示系统的平面结构的例子;
图10示意性图解运动图像平面、字幕平面、和图形平面的分辨率和显示色彩的例子;
图11是图解图形处理器的结构的方框图,该图形处理器将运动图像平面、字幕平面、和图形平面进行组合;
图12示意性图解调色板的输入/输出数据的例子;
图13示意性图解存储在调色板中的调色板表格的例子;
图14示意性图解显示图形(PG)流;
图15A和15B图解显示集合的结构;
图16示意性图解PG流的显示集合的逻辑结构;
图17示意性图解IG流的显示集合的逻辑结构;
图18示意性图解显示集合的存储格式;
图19示意性图解用于表示显示组成片段(PCS)的结构一个例子的语法;
图20示意性图解用于表示程序块composition_object()的结构的一个例子的语法;
图21示意性图解用于表示窗口定义片段(WDS)的结构的一个例子的语法;
图22示意性图解用于表示程序块window()的结构的一个例子的语法;
图23示意性图解菜单屏幕和按钮的结构;
图24示意性图解用于表示交互式组成片段(ICS)的报头信息的结构的一个例子的语法;
图25示意性图解用于表示程序块interactive_composition_data_fragment()的结构的一个例子的语法;
图26示意性图解用于表示程序块page()的结构的一个例子的语法;
图27示意性图解用于表示程序块button_overlap_group()的结构的一个例子的语法;
图28示意性图解用于表示程序块button()的结构的一个例子的语法;
图29是图解在当前BD-ROM标准中所定义的PG/IG数据译码器模型结构的一个例子的方框图;
图30是图解由显示装置单元中的PG译码器所进行的处理的一个例子的流程图;
图31是图解由显示装置单元中的IG译码器所进行的处理的一个例子的流程图;
图32是图解根据本发明的实施例的PG/IG数据译码器模型结构的一个例子的方框图;
图33示意性图解存储在PTS/DTS缓冲器中的数据结构的一个例子;
图34A和34B分别示意性图解在一个时间间隔中的PG数据和IG数据的片段数量上限的例子;以及
图35是图解根据本发明一个实施例的回放装置的结构的一个例子的方框图。
具体实施方式
下面参考附图描述本发明的实施例。为了便于理解,首先给出内容,即,存储在BD-ROM中的AV数据的管理结构的描述,该数据由“蓝光光盘只读格式Ver1.0第三部分视听规范”来定义,其中BD-ROM为只读蓝光光盘。BD-ROM中的管理结构在下文中称为“BDMV格式”。
通过MPEG视频或MPEG音频编码方法进行编码并且根据MPEG2系统进行多路复用的比特流称为“剪辑AV流”(或简称为AV流)。由在“蓝光光盘只读格式第2部分(Blu-ray Disc Read-Only Format part2)”中定义的文件系统将剪辑AV流作为文件记录在盘上,其中“蓝光光盘只读格式第2部分”是关于蓝光光盘的标准中的一个。这样的文件被称为“剪辑AV流文件”(或简称为AV流文件)。
从文件系统的观点来看,剪辑AV流文件是管理单元,并且它们对于用户来说并不需要简单易懂。为了增强用户的方便性,应该提供用于将多个已分割的剪辑AV流文件组合成一段影片内容并且将其进行回放的机构或者用于仅仅回放某些剪辑AV流文件的机构。也有必要将便于进行指定回放或随机访问回放操作的信息记录在盘上作为数据库。该数据库由“蓝光光盘只读格式第3部分”来定义,其中“蓝光光盘只读格式第3部分”是关于蓝光光盘的标准之一。
图1示意性图解BD-ROM的数据模型。如图1中所示,BD-ROM的数据结构包括四个层。在最底层中对剪辑AV流进行处理(为了方便,将该层称为“剪辑层”)。在次底层中对影片播放列表和指定剪辑AV流的回放部分的播放项进行处理(为了方便,将该层称为“播放列表层”)。在高于次底层的层中对影片对象进行处理(为了方便,将该层称为“对象层”),该影片对象包括用于指定影片播放列表的回放顺序的指令。在最顶层中对存储在BD-ROM中的用于管理标题等的索引表进行处理(为了方便,将该层称为“索引层”)。
下面给出剪辑层的详细内容。剪辑AV流是比特流,在其中视频数据和音频数据以MPEG2TS的形式进行多路复用。把关于剪辑AV流的信息作为剪辑信息记录在文件中。
在剪辑AV流中,用于显示字幕或伴随内容数据的菜单的流,诸如视频数据和音频数据,也是多路复用的。把用于显示字幕的图形流称为“显示图形(PG)流”。把用于显示菜单的流称为“交互图形(IG)流”。
把剪辑AV流文件和在其中存储了相关剪辑信息的剪辑信息文件看作单个对象,其被称为“剪辑”。就是说,剪辑是由剪辑AV流和剪辑信息构成的单个对象。
通常,把文件当成字节串。在时间轴上扩展剪辑AV流文件中的内容,并且大体上把剪辑中的进入点指定为时间基准(time base)。如果提供了对于预定剪辑的访问点的时间标记,则相应的剪辑信息文件能够用于寻找关于地址的地址信息,在相关的剪辑AV文件中由该地址开始读取数据。
播放列表层的详细内容如下。影片播放列表是由一组回放起始点(进入点)和回放终止点(退出点)组成的,这些点指定将要回放的AV流文件并且也指定所指定的AV流文件要回放的部分。将关于一个回放起始点和一个回放终止点的信息称为“播放项目”(PlayItem)。影片播放列表是由一组播放项目组成的。回放播放项目就是回放由播放项目所指的AV流文件部分。也就是说,在关于播放项目中的进入点和退出点的信息的基础上,回放剪辑中的相应区域。
对象层的详细内容如下。影片对象包括用于关联HDMV导航命令程序(HDM程序)与影片对象的终端信息。HDMV程序是用于控制播放列表进行回放的命令。终端信息包括用于允许用户在BD-ROM播放器上进行交互操作的信息。基于该终端信息,控制诸如显示菜单屏幕或者标题搜索的用户操作。
BD-J对象是JavaTM程序对象。BD-J对象不直接涉及本发明,因而省略了详细的说明。
下面给出索引层的详细内容。该索引层包括索引表。该索引表是最高级别的表格,其定义了BD-ROM盘的标题。基于存储在该索引表上的标题信息,通过BD-ROM驻留系统软件中的模块管理器来控制该BD-ROM盘的回放。
更准确地说,如图2中示意性所示,在索引表中任意的入口被称为“标题”,并且输入该索引表的第一个回放、顶部菜单、和标题#1、#2等全部都是标题。每个标题都指示与影片对象或BD-J对象的链接。每个标题都代表HDMV标题或者BD-J标题中的一个。
现在假定存储在BD-ROM光盘中的内容是影片。然后,第一个回放是电影公司的商业视频(预告片),其在影片之前进行放映。顶部菜单是用于选择该影片回放、章节搜索、字幕或者语言的设置、特定视频的回放等等的菜单屏幕。标题是从该顶部菜单中选择的视频。可以将该标题配置成菜单屏幕。
图3是图解指示上述剪辑AV流、剪辑信息(流属性)、剪辑、播放项目、和播放列表之间关系的统一建模语言(UML)的图。该播放列表与一个或多个播放项目关联,并且该播放项目与一个剪辑关联。具有不同的起始点和终止点的多个播放项目可以与一个剪辑关联。一个剪辑AV流文件由一个剪辑引用。类似地,一个剪辑信息文件也由一个剪辑引用。剪辑AV流文件和剪辑信息文件具有一对一的对应关系。通过这种结构的定义,可以定义用于仅仅回放任意部分的无损回放顺序而不需要改变剪辑AV流文件。
如图4所示,相同的剪辑可以通过多个播放列表来引用。相反,多个剪辑可以通过一个播放列表来指定。通过播放列表中的播放项目中所指示的进入点和退出点来引用剪辑。在图4显示的例子中,通过播放列表310的播放项目320引用剪辑300,并且通过播放列表311的播放项目321的进入点和退出点引用剪辑300的一个区域。通过播放列表311的播放项目322的进入点和退出点引用剪辑301的一个区域,同样,通过播放列表312的播放项目323的进入点和退出点引用剪辑301的另一个区域。
如由图5中显示的例子所指示的,播放列表不仅包括与将要进行回放的播放项目关联的主路径,而且还包括与子播放项目关联的子路径。该子播放项目是,例如,添加到该播放项目上的后记录(配音)播放项目。只有当该播放列表满足预定条件的时候,才能够对其提供子-播放项目,不过这里将省略详细的内容。
下面参考图6讨论由“蓝光光盘只读格式第3部分”定义的记录在BD-ROM上的文件的管理结构。通过目录结构来分层管理文件。首先,在记录介质上创建一个目录(图6所示的例子中的根目录)。通过一个记录/回放系统来管理位于该目录以下的目录。
在根目录之下,放置目录“BDMV”和目录“CERTIFICATE”。在目录“CERTIFICATE”中,存储关于版权的信息。在目录“BDMV”中,存储参考图1所讨论的数据结构。
在目录“BDMV”之下,只可以直接放置两个文件,即,文件“index.bdmv”和文件“MovieObject.bdmv”。在目录“BDMV”之下,放置目录“PLAYLIST”、目录“CLIPINF”、目录“STREAM”、目录“AUXDATA”、目录“META”、目录“BDJO”、目录“JAR”、和目录“BACKUP”。
在文件“index.bdmv”中,指示目录“BDMV”的内容。也就是说,文件“index.bdmv”对应于索引层中的索引表,该索引层是最上面的层。在文件“MovieObject.bdmv”中,存储关于至少一个影片对象的信息。也就是说,文件“MovieObject.bdmv”对应于上述的对象层。
目录“PLAYLIST”是在其中存储了播放列表的数据库的目录。也就是,目录“PLAYLIST”包括了文件“xxxxx.mpls”,其是关于影片播放列表的文件。每个文件“xxxxx.mpls”都是为相应的影片播放列表所创建的。在文件名中,在“.”(句点)之前的“xxxxx”是五个数字,并且在句号之后的“mpls”是这类文件专有的固定扩展名。
目录“CLIPINF”是在其中放置了剪辑的数据库的目录。也就是,目录“CLIPINF”包括了文件“zzzzz.clpi”,这些文件是用于相应的剪辑AV流文件的剪辑信息文件。在文件名中,在“.”(句点)之前的“zzzzz”是五个数字,并且在句号之后的“clpi”是这类文件专有的固定扩展名。
目录“STREAM”是在其中放置了AV流文件的目录,该AV流文件是实际的数据。也就是,目录“STREAM”包括与相应的剪辑信息文件相关的剪辑AV流文件。该剪辑AV流文件是MPEG2传输流(以下简称为“MPEG2TS”,并且其文件名是“zzzzz.m2ts。在该文件名中,把句号之前的“zzzzz”设置成与其相应的剪辑信息文件中的一样。这样可以有助于容易理解剪辑信息文件和剪辑AV流文件之间的关系。
目录“AUXDATA”是在其中放置了用来显示菜单的声音文件、字体文件、字体索引文件、位图文件等的目录。在文件“sound.bdmv”中,存储了与HDMV交互式图形流应用相关的声音数据。文件名固定为“sound.bdmv”。在文件“aaaaa.otf”中,存储了用于字幕显示或者BD-J应用程序的字体数据。在该文件名中,句点前的“aaaaa”是五个数字,并且在句点后的“otf”是这类文件专有的固定扩展名。文件“bdmv.fontindex”是字体索引文件。
在目录“META”中,存储了元数据文件。在目录“BDJO”中和目录“JAR”中,存储了涉及上述BD-J对象的文件。在目录“BACKUP”中,存储了上述目录和文件的备份数据。目录“META”、目录“BDJO”、目录“JAR”、和目录“BACKUP”不是直接涉及本发明,因此省略了其说明。
当在播放器中安装具有上述数据结构的盘时,该播放器有必要首先把从该盘中读取的影片对象中所指示的命令转换成为用于控制该播放器硬件设备的专有命令。把用于执行这种命令转换的软件存储在内置ROM中。这种软件作为该盘和播放器之间的中介以允该播放器依照BD-ROM标准来进行操作,因而将其称为“BD虚拟播放器”。
图7A和7B示意性图解由该BD虚拟播放器进行的操作。图7A图解当装载盘时由BD虚拟播放器进行的操作的例子。在步骤S30中,将盘安装到播放器中并且对该光盘进行初始的访问。然后,在步骤S3 1中,对存储在光盘中使用的公共参数的寄存器进行初始化。然后,在步骤S32中,从该盘读取程序并且执行该程序。应该注意,当,例如,光盘是第一次装载在播放器中时,初始访问是第一次回放该盘。
图7B说明了当用户通过点击,例如,播放按扭来给出回放该盘的指令时,由BD虚拟播放器进行的操作的例子。在步骤S40中,播放器处于暂停状态,于是,用户通过使用,例如,遥控指令器(在图7B中,由UOP(用户操作)代表该操作)给出指令。然后,在步骤S41中,  初始化存储了公共参数的寄存器。在这种情况下,没有必要复位该寄存器。在步骤S42中,播放器回放播放列表(回放阶段)。
下面参考图8通过执行影片对象讨论播放列表的回放。现在假定通过用户操作来给出用以播放标题编号#1的内容的指令。响应于用以播放内容的该指令,播放器引用图2中所示的索引表来获得对应于标题号#1的对象号。如果对应于标题编号#1的对象编号是#1,则播放器开始执行影片对象#1。
在图8所示的例子中,影片对象#1中的程序包括两条线路,并且在第一线路中的命令指示“对播放列表(1)进行播放”。因而,播放器开始回放播放列表#1。播放列表#1至少包括一个播放项目,并且多个播放项目是连续回放的。在完成播放列表#1中的播放项目的回放后,播放器回到对影片对象#1的激活并且执行第二线路中的命令。在图8所示的例子中,第二线路中的命令指示“跳转到顶部菜单”,并且播放器执行该命令以启动索引表中所指示的顶部菜单的影片对象。
现在给出适用于本发明的实施例的图像显示系统的描述。如图9所示,在本实施例中,是基于平面配置该图像显示系统。在最底(向后)侧显示运动图像平面10,该平面处理由播放列表指定的图像(主要是运动图像数据)。在运动图像平面10之上显示字幕平面11,该字幕平面处理在运动图像回放期间将要进行回放的字幕数据。在最顶(向前)侧显示交互式图形平面12,该平面处理诸如用于显示菜单屏幕的字符数据和用于按钮图像的位图数据之类的图形数据。组合该三个平面以便可以显示一个显示屏幕。
可以独立显示运动图像平面10、字幕平面11和交互式图形平面12。它们具有诸如图10中所示的分辨率和显示色彩。对于运动图像平面10,其分辨率是1920(像素)×1080(行),并且一个像素的数据长度是16位。包括亮度信号Y以及色差信号Cb和Cr的YCbCr系统是4:2:2。YCbCr(4:2:2)是颜色系统,在其中每个亮度信号Y以及色差信号Cb和Cr中的每个像素都具有8比特,并且用于两个水平位置像素的色差信号Cb和Cr组成了一个颜色数据。关于字幕平面11和交互式图形平面12,其分辨率是1920(像素)×1080(行)并且每一个像素的取样深度都是8比特。作为颜色系统,其采用了使用256色调色板的8-比特颜色映射地址。
在字幕平面11和交互式图形平面12中,可以实现256级的阿尔法混和(alpha-blending)。当把字幕平面11或交互式图形平面12与其他平面组合时,可以在256个级别中设置不透明度。可以对每个像素设置不透明度。在下文中由α(0<α<1)表示不透明度。当不透明度α=0时,字幕平面11或交互式图形平面12是完全透明的。当不透明度α=1时,字幕平面11或交互式图形平面12是完全不透明的。
字幕平面11处理可移动的网络图形(PNG)图像数据。交互式图形平面12也可以处理PNG图像数据。PNG格式的采样深度的范围是每个像素从1到16。当该采样深度是8位或16位的时候,可以增加阿尔法通道(alpha channel),即,关于每个像素不透明度的不透明信息(在下文中也称为“阿尔法数据”)。当采样深度是8位时,可以在256个等级中指定不透明度。可以通过使用该不透明度信息(阿尔法通道)来进行阿尔法混和。可以使用256色调色板图像,并且可以由索引号指定该调色板的颜色号(索引),其中该调色板是预先提供的。
在字幕平面11或交互式图形平面12中处理的图像数据不局限于PNG格式。可以处理通过诸如联合摄影专家组(JPEG)的另一个压缩-编码方法压缩的图像数据、运行长度压缩图像数据、未压缩的位图图像数据。
图11图解图形处理器一个例子的结构,该处理器依照图9中所示的显示系统和图10中所示的分辨率和显示色彩将三个平面进行组合。把运动图像平面10的运动图像数据供应给422/444转换电路20。在该422/444转换电路20中,把运动图像数据的颜色系统由YCbCr(4:2:2)转换成YCbCr(4:4:4),然后把该转换后的数据输入到乘法器21中。
把字幕平面11的图像数据输入到调色板22A中,并且将其作为RGB(4:4:4)图像数据输出。如果通过阿尔法混和给图像数据指定不透明度,则从调色板22A输出所指定的不透明度α1(0≤α≤1)。
图12图解调色板22A的输入/输出数据的例子。在调色板22A中,把对应于,例如PNG文件的调色板信息作为表格而存储。调色板22A通过把输入的8-比特像素数据用作地址来引用索引号。基于该索引号,调色板22A输出RGB(4:4:4)数据,每种颜色都具有8比特。同时,还从调色板22A输出指示不透明度的阿尔法通道数据α。
图13图解存储在调色板22A中的调色板表的一个例子。把各具有8个比特的三原色R、G、和B和不透明度α分配到从[0x00]到[0xFF]([0x]指示十六进制记数法)的每一个256色索引值。调色板22A基于输入PNG图像数据来引用调色板表,并且为每个像素输出各具有8比特的RGB数据、和对应于由图像数据指定的索引值的不透明度。
把从调色板22A输出的RGB数据供应给RGB/YCbCr转换电路22B。在RGB/YCbCr转换电路22B中,把该RGB数据转换成由亮度信号Y和色差信号Cb以及Cr(这种数据统称为“YCbCr数据”)表示的数据,其中各信号的数据长度都具有8比特。进行这种转换的原因是为了通过使用公共数据格式,即,作为运动图像数据的数据格式的YCbCr数据而组合平面。
把从RGB/YCbCr转换电路22B中输出的YCbCr数据和不透明度数据α1输入到乘法器23中。在乘法器23中,输入的YCbCr数据乘以不透明度数据α1。把相乘的结果输入到加法器24的一个输入终端中。在乘法器23中,亮度信号Y和色差信号Cb以及Cr各乘以该不透明度数据α1。把该不透明度数据α1的余数(1-α1)关于给乘法器21。
在乘法器21中,把从422/444转换电路20中输入的运动图像数据乘以该不透明度数据α1的余数(1-α1)。把相乘结果输入加法器24的另一个输入终端中。在加法器24中,把乘法器21和23的相乘结果相加。然后,组合运动图像平面10和字幕平面11。把加法器24的相加结果输入到乘法器25中。
把交互式图形平面12的图像数据输入到调色板26A中并且作为RGB (4:4:4)图像数据输出。如果通过阿尔法混和给该图像数据指定不透明度,那么从调色板26A输出所指定的不透明度α2(0≤α2≤1)。把从调色板26A输出的RGB数据供应给RGB/YCbCr转换电路26B并且将其转换成YCbCr数据,其中该YCbCr数据被统一成运动图像数据的数据格式。把从RGB/YCbCr转换电路26B中输出的YCbCr数据输入到乘法器27中。
如果交互式图形平面12的图像数据是PNG格式的,那么可以对每一个像素设置不透明度α2(0≤α2≤1)。把该不透明度0≤α2≤12供应给乘法器27。在乘法器27中,把从YCbCr转换电路26B输入的YCbCr数据的亮度信号Y和色差信号Cb以及Cr各乘以不透明度数据α2。把乘法器27的相乘结果输入到加法器28的一个输入端中。将不透明度数据α2的余数(1-α2)供应给乘法器25。
在乘法器25中,把加法器24的相加结果乘以不透明度数据α2的余数(1-α2)。把乘法器25的相乘结果输入到加法器28的另一个输入端中,并且将其与乘法器27的相乘结果相加。然后,把交互式图形平面12与运动图像平面10和字幕平面11的合成图像组合。
在字幕平面11或交互式图形平面12中,把没有图像的区域的不透明度α设置为0以便可以透过平面11或者12看到显示在字幕平面11或交互式图形平面12之下的平面。例如,显示在运动图像平面11上的运动图像数据可以作为字幕平面11或交互式图形平面12的背景而显示。
可以通过硬件或软件中的任何一个来实现图11中所示的图形处理器的结构。
参考图14给出显示图形(PG)流和交互式图形(IG)流的描述。如上所述,PG流是包括了用于显示字幕的字幕图像数据的流。更准确地说,PG流包括由位图数据构成的字幕图像数据本身和指示如何显示字幕图像数据的数据。IG流是包括了用于显示菜单的数据的流,并且更准确地说,包括了用于菜单屏幕的按钮图像数据、指示如何显示按钮图像数据的数据、和由按钮所指示的命令。
PG流或IG流包括在剪辑AV流中并且其被形成在时间间隔(epoch)单元中,该时间间隔包括一个或者多个显示集合。可以分别把该显示集合和时间间隔看作是图像和图像组(GOP),其定义在MPEG2中。
也就是说,显示集合(display set)是用于显示字幕的最小单元并且对应于一个字幕图像。一个时间间隔由一个或者多个显示集合所组成的。通常,时间间隔是在播放项目的单元中形成的。也就是说,时间间隔是由用于显示字幕的显示集合组成的,其中将在某一播放项目回放的期间显示该字幕。用于对PG流进行译码的PG译码器在时间间隔单元中对字幕平面11以及各种不同的缓冲器进行清除。
就PG流来说,如图14所示,一个时间间隔中可以包括多个显示集合。相反,就IG流来说,如果该IG流是预先加载的IG流,那么一个时间间隔中仅包括一个显示集合。
实际上,用于组成时间间隔的基本单元不限于播放项目,并且可以是由创作方(authoring side)确定的用于组成时间间隔的所期望的项目。就PG流来说,时间间隔可以由用于显示多个字幕集合的多个显示集合组成,其中该多个字幕集合组成了影片中的对白。换句话说,可以通过词来分割对白,并且时间间隔可以由用于显示相应的词的多个显示集合来组成。
图15A和15B示意性图解显示集合的结构。如图15A所示,PG流的显示集合包括五个片段,诸如显示合成片段(PCS)、窗口定义片段(WDS)、调色板定义片段(PDS)、对象定义片段(ODS)、和END片段。虽然每个片段的详细内容不在这里进行讨论,但是在下面将对其进行简要地描述。在PCS中,存储了关于字幕的基本信息。WDS定义了显示帧,其被称为“窗口(window)”,用于显示字幕。WDS被固定在时间间隔中。PDS定义了关于字幕的颜色信息,并且包括,例如,索引颜色信息表。ODS包括关于字幕的结构信息。例如,通过诸如运行-长度压缩编码的预定压缩编码方法来对用于显示字幕的位图数据进行压缩-编码。END片段是用于指示该显示集合的结束的片段。
如图15B所示,IG流的显示集合包括四个片段,即,交互式合成片段(ICS)、PDS、ODS、和END片段。在该四个片段之中,ICS是用于存储IG流基本结构的片段。该PDS,OSD,和END片段与PG流的那些片段类似。也就是说,PDS是用于存储关于按钮图像的颜色信息的片段。ODS是用于存储按钮图像结构的信息。更准确地说,在ODS中,按钮图像其自身,例如用于显示按钮图像的位图数据,是通过诸如运行-长度压缩的预定压缩-编码方法来进行压缩-编码,并且存储的。END片段是指示显示集合结束的片段。
图16示意性图解PG流显示集合的逻辑结构。如图16的A部分和B部分所示,片段诸PCS,WDS,PDS,ODS和END片段(没有显示)的四个片段的集合组成了一个显示集合。只有一个PCS可以始终存储在显示集合中。只有一个WDS可以几乎始终存储在显示集合中。然而,如果在PCS中定义的标记palette up date flag指示为1,那么WDS是可选择的,其中标记palette_up_date_flag将在下面进行讨论。PDS和ODS是可选择的并且它们不必包含在显示集合中。
如同图16的C部分所示,时间间隔由一个或多个显示集合组成。虽然不在这里讨论其详细内容,但是可以在PCS的程序块composition_descriptor()中所包含的字段composition_state中定义时间间隔的起始显示集合。在该时间间隔起始显示集合的基础上定义时间间隔。例如,时间间隔可以被定义为一组显示集合,该组显示集合从一显示集合开始,其中在该显示集合中时间间隔起始显示集合在PCS中进行了定义,直到另一个显示集合,该显示集合是在PCS中定义了随后的时间间隔起始显示集合的显示集合之前的一个显示集合。该时间间隔定义的具体的例子将在下面进行讨论。如由图16的D部分所示,PG流包括一个或多个时间间隔。
图17示意性图解IG流的显示集合的逻辑结构。如由图17的A部分所示,除了片段结构之外,该交互式图形的显示集合的整体层次结构与PG流的层次结构相同。在IG流的显示集合中,以及PG流的显示集合中,在由包含在ICS的程序块composition descriptor()中的字段composition_state定义的时间间隔起始显示集合的基础上定义时间间隔字段。与PG流中一样,PDS和ODS是可选的,它们不必包含在显示集合中。为了简单表示,省略了关于IG流显示集合的详细说明。
图18图解上述显示集合的例子的存储格式。如上所述,把用于显示字幕的显示集合和用于显示按钮图像的显示集合与剪辑AV流进行多路复用,分别作为PG流和IG流。如由图18的A部分所示,该显示集合由多个片段组成。
如同图18的B部分所显示的,组成显示集合的多个片段通过报头信息来彼此区别,并且把其存储在分组基本流(PES)信息包的有效负荷中。每个PES信息包的最大尺寸被固定为64千字节(KB)。如果一个具有比较大的数量的ODS或ICS超过了最大尺寸,则把它分割成更小的部分,并且然后把分割后的部分填入多个PES信息包的有效负荷中。在另一个方面,由于在大多数情况下PCS、WDS和PDS小于64KB,可以把一个片段存储在PES信息包中。在每个PES信息包中,指示存储在有效负荷中的数据类型的信息,即,PCS、WDS、PDS、或ODS(就PG流来说),或指示信息包顺序的标识信息,存储在PES报头中。
在PES报头中,还存储指定该PES信息包译码时间的DTS(译码时间标记)和指定译码数据输出时间的显示时间标记(PTS)。也就是说,当在由MPEG系统定义的基准译码器中设定的系统时钟(STC)与DTS一致时,开始对存储在PES信息包的有效负荷中的数据进行译码。当STC与PTS一致时,输出经译码的数据。
PTS和DTS是可选的,并且如果在PES信息包的有效负荷中包含了预定访问单元的第一个片段部分,那么就把PTS和DTS加到PES报头。例如,如果把一个片段分割并且存储在多个PES信息包中,那么PTS和DTS仅存储在存储了第一个片段部分的PES信息包中。
如由图18的C部分所示,进一步把每个PES信息包分成更小的部分并且将其存储在组成MPEG TS的传输流(TS)信息包中。把TS信息包的顺序和用于标识存储在每个TS信息包中数据的标识信息存储在信息包标识(PID)中。
在下面详细给出直接数据本发明的片段的详细内容。首先讨论PG流显示集合中所包含的PCS和WDS。图19图解用于表示PCS结构的例子的语法。图19中所示的语法以C语言符号来表示,其中C语言符号是用于计算机程序的描述语言之一。在其它的图中所示的语法也以C语言符号来表示。
程序块segment_descriptor()包括字段segment_type和字段segment_length(没有显示)。字段segment_type指明片段的类型。如果字段segment_type的值指示为0x16,这表明该片段是PCS。0x表示十六进制记数法。字段segment_length表示从segment_length开始的片段的长度。
程序块video_descriptor()包括字段video_width、字段video_height、和字段Frame_rate(没有显示)。字段video_width和字段video_height表示要与由包含该PCS的显示集合所显示的字幕同时回放的运动图像的帧。字段frame_rate指明运动图像的帧频。
程序块composition_descriptor()包括字段composition_number和字段composition_state(没有显示)。字段composition_number指示与PCS关联的时间间隔中的该片段的顺序。字段composition_state指示包含了PCS的显示集合的类型。
下面简要讨论显示集合的类型。有四种类型的显示集合,即,时间间隔起始显示集合(epoch start display set)、时间间隔持续显示集合(epochcontinue display set)、采集点显示集合(acquisition point display set)、和标准实例显示集合(normal case display set)。
时间间隔起始显示集合是时间间隔的第一个显示集合。在时间间隔与不止一个播放项目关联时,使用时间间隔持续显示集合。例如,如果时间间隔与播放项目#1和下一个播放项目#2相关,那么在播放项目#2的报头中设置时间间隔持续显示集合。
采集点显示集合与字幕的译码有关,并且代表可靠的译码起始点。也就是说,当在播放器中做出随机访问时,访问目标很有可能是时间间隔的中间点。然后,在随机访问之后,播放器重新开始译码以在采集点显示集合的位置显示该字幕。
标准实例显示集合与字幕的译码有关,并且表示不可靠的译码起始点。如果希望改变当前由另一个显示集合显示的字幕的颜色或结构,那么在标准实例显示集合中设置指示该变化的显示集合。如果播放器在字幕译码和回放期间发现了标准实例显示集合,其依照该变化来改变当前所显示的字幕的颜色或结构。
重新参考PCS语法的描述,字段palette_update_flag是指示该调色板是否更新的标记。字段palette_id_ref指示调色板的ID,其由字幕的一个帧引用,其中该字幕的帧由该显示集合来显示。也就是说,在PG流中的PDS中的颜色信息由该字段palette_id_ref引用。
字段number_of_composition_objects指示包含在一个帧中的对象的数目,其中该帧包括由该显示集合显示的字幕。由随后的FOR语句表示的循环的重复次数与字段number_of_composition所指示的数目相同。由程序块composition_object()来定义由该显示集合显示的各对象。
图20图解用于表示程序块composition_object()的例子的结构的语法。字段object_id_ref指示对ODS的引用,其中ODS被用于通过程序块composition_object()来显示字幕。字段window_id_ref指明窗口的ID,在该窗口中显示了被用于通过程序块composition_object()所显示字幕的对象。
字段object_cropped_flag是指示是否对对象进行修剪的标记,其中该对象被用于通过程序块composition_object()来显示字幕。也就是说,可以从ODS中将字幕修剪成预定的尺寸。如果标记object_cropped_flag指示将要修剪的对象,则可以在修剪尺寸信息的基础上对字幕的一部分进行修剪,这将在下面讨论,并且显示经修剪的部分。
字段forced_on_flag指示是否通过程序块composition_object()强行显示字幕,而不管由用户操作所给出的指令是否指示显示字幕。
字段composition_object_horizontal_position和字段composition_object_vertical_position,分别指示通过程序块composition_object()显示在屏幕上的字幕的水平位置和垂直位置。由相对于窗口位置的相对位置来指示水平位置和垂直位置,其中该窗口位置由WDS来表示,这将在下面进行讨论。
如果由上述字段object_cropped_flag表示的标记指示将要修剪该对象,则提供随后的IF语句(if(object_cropped_flag==1b))以便指定要进行修剪的部分的位置和尺寸。也就是说,分别由程序块cropping_rectangle()中的字段object_cropping_horizontal_position和字段object_cropping_vertical_position指示要修剪的部分的原始水平位置和垂直位置。分别由字段object_cropping_width和字段object_cropping_height指示要修剪的部分的宽度和高度。
图21图解表示WDS的例子的结构的语法。程序块segment_descriptor()包括字段segment_type和字段segment_length(没有显示)。字段segment_type指示片段的类型。如果segment_type的值指示为0x17,这指的是该片段的类型是WDS。字段segment_length表示从字段segment_length开始的片段的长度。
字段number_of_windows指示包含在一个帧中的窗口的数量,其中该帧包括由包含了该WDS的显示集合所显示的字幕。由随后的FOR语句表示的循环的重复次数与字段number_of_windows所表示的数目相同,并且由程序块window()来定义每个窗口。
图22图解用于表示程序块window()的例子的结构的语法。字段window_id指明该窗口的ID。字段window_horizontal_position和字段window_vertical_position分别指示该窗口帧(window frame)的原始水平位置和垂直位置。字段window_width和字段window_height分别指示该窗口的宽度和高度。
现在给出包含在IG流的显示集合中的ICS的描述。在描述ICS之前,在下面参考图23来简要地讨论菜单屏幕和按钮结构。如同图23的A部分所显示的,现在考虑在其上显示多个按钮300的菜单屏幕301。
如同图23的B部分所显示的,菜单屏幕301是由多个菜单帧分层构建而成的。如果通过预定输入单元把在位于前端最上部的菜单帧中的某一按钮300从被选择的状态转变为被激活状态,那么具有该操作按钮300的菜单帧后面的菜单帧可以立即显现在前端最顶部。在下文中,通过预定输入单元改变按钮状态被简称为“操作按钮(operating a button)”。
如同图23的C部分和D部分所显示的,在菜单屏幕301上显示的一个按钮300可以由多个按钮302A,302B,302C等等分层构建而成。换句话说,可以在单一显示位置处显示多个按钮并且可以选择其中一个按钮。例如,如果对多个按钮中的一个进行操作,那么也可以同时改变位于相同位置处的其它按钮的功能和显示。因为不需要改变菜单屏幕301,因此这是很方便的。可以选择性显示在相同的位置上的多个按钮的集合称为“按钮重叠组”(BOG)。
可以为组成BOG的每一个按钮提供三种状态,如正常状态、被选择状态、和激活状态。如图23的E部分所示,可以为组成BOG的每个按钮提供分别表示正常状态、被选择状态、和激活状态的按钮303A,303B,和303C。如图23的F部分所示,也可以为表示三个状态的按钮303A,303B,和303C中的每一个提供动画图像。在这种情况下,具有动画图像的按钮包括与动画图像数量相同的按钮图像数目。
在下文中组成动画图像的多个按钮图像也称为“动画帧(animatedframes)”。
图24图解表示ICS报头信息的例子的结构的语法。ICS的报头包括程序块segment_descriptor()、程序块video_descriptor()、程序块composition_descriptor()、程序块sequence_descriptor()、和程序块Interactive_composition_data_fragment()。程序块segment_descriptor()指示该片段是ICS。程序块video_descriptor()指示和菜单一起显示的帧频和帧尺寸。程序块composition_descriptor()包括字段composition_state(没有显示),并且表示该ICS的状态。程序块sequence_descriptor()表示该ICS是否与多个信息包关联。
更具体地,程序块sequence_descriptor()指示包含在当前PES信息包中的ICS是否是单个IG流的第一个ICS或最后一个ICS。
如上所述,PES信息包的最大数据尺寸是64KB。如果单个ICS的数据尺寸超过64KB,那么该ICS会被分成小的部分并且被填入PES信息包中。在这种情况下,有必要使在图24中显示的报头仅包含在PES信息包中的第一个PES信息包以及最后一个PES信息包中,这些PES信息包包含了ICS已分割部分,并且在其它的PES信息包中可以省去报头。如果程序块sequence_descriptor()指示包含在当前PES信息包中的ICS是第一个ICS和最后一个ICS,这意谓ICS被包含在单个PES信息包中。
图25图解用于表示程序块interactive_composition_data_fragment()的例子的结构的语法。在图25所示的例子中,程序块interactive_composition_data_fragment()被指示为程序块interactive_composition()。字段Interactive_composition_length具有24-比特的数据长度,并且指示字段interactive_composition_length之后的程序块interactive_composition()的长度。字段stream_model具有1-比特数据长度并且指示这种流是否是多路复用的。也就是说,IG流可以与AV流多路复用,或者IG流自身可以组成单个剪辑AV流。
字段user_interface_model具有1-比特数据长度并且指示由这种流显示的菜单是否是弹出(pop-up)菜单或常规菜单(始终在屏幕上显示)。可以通过开启或关闭预定输入单元,例如,遥控指令器按钮来控制弹出菜单的显示。另一方面,难以通过用户操作控制常规菜单的显示。如果字段user_interface_model指示为0,那么该菜单是弹出菜单。如果字段user_interface_model指示为1,那么该菜单是常规菜单。
如果字段user_interface_model指示为0,那么在IF语句,即,If(stream_model==‘0b’)之后的字段composition_time_out_pts和字段selection_time_out_pts变成有效的。字段composition_time_out_pts具有33-比特数据长度并且指示该菜单显示消失的时间。字段selection_time_out_puts具有33-比特数据长度并且指示在该菜单上的选择操作变成无效的时间。在字段composition_time_out_pts或字段selection_time_out_pts中的时间由在MPEG2中定义的PTS来表示。
字段user_time_out_duration具有24-比特数据长度并且指示用于该菜单显示的自动初始化持续时间。下一个字段number_of_ pages具有8-比特数据长度并且指示提供给菜单的页的数量。该字段的初始值是0。也就是说,该菜单显示具有由图23的B部分所示的层次结构,并且如果提供了多个页,那么字段number_of_pages指示为1或更大的数。由下一个FOR语句表示的循环被重复与字段number_of_ pages所指示的相同的次数,于是,定义了菜单中的每个页。
图26图解用于表示程序块page()的例子的结构的语法。字段page_id具有8-比特数据长度并且指示用于标识该页的ID。字段page_version_number具有8-比特数据长度并且指示该页的版本号。下一个程序块UO_mask_table()指明指示在该页显示期间被禁止在输入单元上执行的用户操作(UO)的表。
程序块in_effects()指示当显示该页时所激活的动画程序块。在{}中的程序块effect_sequence()中,显示了动画序列。程序块out_effects()指示当该页显示结束时所激活的动画程序块。在{}中的程序块effect_sequence()中,指示动画序列。程序块in_effects()和程序块out_effects()指示当在页面发生改变的情况下发现该ICS时所激活的动画。
下一字段animationframe_rate_code具有8-比特数据长度并且如果页面的按钮图像显示为动画,则指示用于设定动画帧频的参数。当在对应于该ICS的剪辑AV流文件中的视频数据的帧频由Vfrm来指示时,并且该动画帧频由Afrm来指示时,字段frame_rate_code可以由Vfrm与Afrm的比值,即,Vfrm/Afrm来表示。
字段default_selected_button_id_ref具有16-比特数据长度并且指示在显示该页时首先被选择按钮的ID。下一字段default_activated_button_id_ref具有16-比特数据长度并且指示在到达由参考图25所讨论的字段selection_time_out_puts所表示的时间时被自动激活的按钮的ID。
字段palette_id_ref具有8-比特数据长度并且指示由该页面所引用的调色板的ID。也就是说,在IG流的PDS中的颜色信息可以由字段palette_id_ref来指定。
下一字段number_of_BOGs具有8-比特数据长度并且指示在该页中使用的BOG的数量。由随后的FOR语句来表示的循环被重复与由字段number_of_BOGs所指示的相同的次数,于是,由程序块button_overlap_group()定义每个BOG。
图27图解表示程序块button_overlap_group()的例子结构的语法。字段default_valid_button_id_ref具有16-比特数据长度并且指示将要第一个显示在程序块button_overlap_group()中定义的BOG中的按钮的ID。随后的字段number_of_buttons具有8-比特数据长度并且指示在BOG中所使用的按钮的数量。下一个FOR语句的循环被重复与由字段number_of_buttons所指示的相同的数目,于是,由程序块button()定义每个按钮。
也就是说,如上所讨论的,可以把多个按钮提供给BOG,并且由程序块button()定义每个按钮的结构。由程序块button()所定义的按钮结构是将要显示的实际按钮。
图28图解用于表示程序块button()的例子结构的语法。字段button_id具有16-比特数据长度并且指示用于标识该按钮的ID。字段button_numeric_select_value具有16-比特数据长度并且指示遥控指令器上的按钮所分配的数字按钮。字段auto_action_flag具有1-比特数据长度并且指示在选择按钮时是否是自动执行分配给该按钮的功能。
字段button_horizontal_position和字段button_vertical_position各具有16-比特数据长度并且指明在帧上的按钮的水平位置和垂直位置(高度)。
程序块neighbor_info()指示关于该按钮的外围信息(peripheryinformation)。也就是说,程序块neighbor_info()中的值表示在操作遥控指令器的可以指定向上、向下、向左、或向右的方向的方向按钮同时正在选择目标按钮时,将要选择哪些按钮。在程序块neighbor_info()中,各具有16-比特数据长度的字段upper_button_id_ref、字段lower_button_id_ref、字段left_button_id_ref、和字段right_button_id_ref指示在方向按钮分别指定向上、向下、向左、和向右方向时将要选择的按钮的ID。
程序块normal_state_info()、程序块selected_state_info()、和程序块activated_state_info()分别指示关于在正常状态、被选择状态、和激活状态的按钮的信息。
首先讨论程序块normal_state_info()。各具有16-比特数据长度的字段normal_start_object_id_ref和字段normal_end_object_id_ref指示用于指定在正常状态下的按钮动画的第一个对象和最后一个对象的ID。也就是说,字段normal_start_object_id_ref和字段normal_end_object_id_ref可以为相应的ODS指定用于显示按钮动画的按钮图像(即,动画帧)。
下一个标记(flag)normal_repeat_flag具有1-比特数据长度并且指示是否重复该按钮动画。例如,如果标记normal_repeat_flag指示为0,则不重复该动画。如果标记normal_repeat_flag指示为1,则重复该动画。
下一个标记normal_complete_flag具有1-比特数据长度并且根据本发明的一个实施例对其进行定义。当按钮的状态从正常状态变化到被选择状态时,标记normal_complete_flag控制动画操作。
更具体地说,在按钮的状态从正常状态变化到被选择状态时,如果标记normal_cormplete _flag指示为1,则显示在正常状态中定义的所有动画图像。更具体地说,在显示正常状态中的动画时,如果标记normal_complete_flag指示为1,则响应于使按钮的状态从正常状态改变到被选择状态的指令,从在接收到该指令时所显示的动画帧开始显示,直到由字段normal_end_object_id_ref所指示的动画帧。
如果标记normal_complete_flag指示为1,并且如果标记normal_repeat_flag指示为1,其意谓重复该动画,那么从在接收到该指令时所显示的动画帧开始显示,直到由字段normal_end_object_id_ref所指示的动画帧
在此情况下,即使在显示动画时,按钮处于未被选择状态或按钮图像自身被关闭,也能够继续显示动画,直到由字段nomal_end_object_id_ref所指示的动画帧,然后,按钮的状态被改变。
在例如,按钮的选定通过字段selection_time_out_pts的定义而变成无效,或者通过字段user_time_out_duration的定义自动地对菜单进行初始化的情况下,按钮处于未被选择的状态。
相反,当按钮的状态从正常状态变化到被选择状态时,如果normal_complete_flag指示为0,则在接收到改变按钮状态的指令时,中断在正常状态中为该按钮所定义的动画的显示,不再显示动画,直到由normal_end_object_id_ref所指示的动画帧,然后,显示处于选择状态的按钮。
现在讨论程序块selected_state_info()。程序块selected_state_info()不仅包括与字段normal_state_info中的那些字段相对应的字段,而且,还包括用于指定声音的字段selected_state_sound_id_ref。字段selected_state_sound_id_ref具有8-比特数据长度并且表示用于处在选择状态中的按钮要回放的声音文件。例如当按钮的状态从正常状态变化到被选择状态时,将声音文件用作效果声音。
各具有16-比特数据长度的字段selected_start_object_id_ref和字段selected_end_object_id_ref指示了用于指定在被选择状态中的按钮的动画的第一个对象和最后一个对象的ID。
下一个标记selected_repeat_flag具有1-比特数据长度并且指示是否重复按钮动画。例如,如果标记selected_repeat_flag指示为0,则不重复动画。如果标记selected_repeat_flag指示为1,则重复动画。
与在normal_complete_flag中一样,下一个标记selected_complete_flag具有1-比特数据长度并且与标记normal_complete_flag一起根据本发明的一个实施例对其进行定义。当该按钮的状态从被选择状态变化到另一个状态的时候,标记selected_complete_flag控制动画操作。也就是说,可以在按钮的状态从被选择状态变化到激活状态或者从被选择状态变化为正常状态时使用标记selected_complete_flag。
与在标记normal_complete_flag中一样,如果标记selected_complete_flag指示为1,则在按钮的状态从被选择状态变化到另一个状态时显示所有定义在被选择状态的动画图像。更具体地说,如果标记selected_complete_flag指示为1,那么在选择状态中动画正在显示时,响应于将按钮的状态从被选择状态改变到另一个状态的指令,从在接收到该指令时所显示的动画帧开始显示,直到由字段selected_end_object_id_ref所指示的动画帧。
如果标记selected_complete_flag指示为1并且如果selected_repeat_flag指示为1,其意谓重复动画,那么从在接收到该指令时所显示的动画帧开始显示,直到由字段selected_end_object_id_ref所指示的动画帧。
在这种情况下,即使在动画正被显示的时候,按钮处于未被选择的状态或者按钮图像自身是被关闭的,仍可以持续显示动画,直到由字段selected_end_object_id_ref所指示的动画帧,然后,该按钮的状态被改变。
在例如,通过字段selection_time_out_pts的定义按钮的选则已经变成无效,或者通过字段user_time_out_duration的定义自动地初始化菜单的情况下,按钮处于未被选择的状态。
相反,在按钮的状态从被选择状态变化到另一个状态时,如果selected_complete_flag指示为0,则在接收到改变按钮状态的指令时,中断显示在被选择状态中为该按钮所定义的动画,不再显示动画,直到由selected_end_object_id_ref所指示的动画帧,然后,显示处于另一状态的按钮。
在下一个程序块activated_state_info()中,与程序块normal_state_info()和程序块selected_state_info()相反,没有定义指示是否重复动画的标记或用于在按钮状态从激活状态变化到另一个状态的时候控制动画操作的标记。当按钮的状态变化到激活状态时,执行分配给该已激活按钮的功能,并且可以认为按钮处于激活状态中的时间是非常短的。通常,不优选来控制按钮从激活状态变化到另一个状态。因此,在程序块activated_state_info()中,省略以上所述的两个标记。然而,可以对它们进行定义。
在activated_state_info()中,字段activated_state_sound_id_ref具有8-比特数据长度并且指示用于在激活状态的按钮将要回放的声音文件。各具有16-比特数据长度的字段activated_start_object_id_ref和字段activated_end_object_id_ref分别指示用于指定在激活状态中的按钮动画的第一个动画帧和最后一个动画帧的ID。
随后的字段number_of_navigation_commands具有16-比特数据长度并且指示嵌入该按钮中的命令的数量。下一个FOR语句的循环重复与由number_of_navigation_commands所指示的相同的数目,于是,定义由该按钮所执行的命令navigation_command()。换句话说,可以从一个按钮执行多个命令。
现在给出用于在当前BD-ROM标准中定义的PG流和IG流的译码器模型的描述。图29为适用于PG流或者IG流的任一个的译码器模型。
首先在播放器中安装盘,于是,从该盘中读取索引文件“index.bdmv”和影片目标文件“MovieObject.bdmv”,并且显示顶部菜单。当在顶部菜单的基础上指定要回放的标题时,由影片目标文件中的相应的导航命令来调用用于回放所指定的标题的播放列表。然后,根据该播放列表文件的描述,从该盘中读取由该播放列表所请求的剪辑AV流文件,即,MPEG2传输流。
将传输流供应给PID滤波器100作为TS信息包,并且分析该PID。该PID滤波器100确定所提供的TS信息包是否存储了视频数据、音频数据、菜单数据、或字幕数据。如果PID指示菜单数据,即,IG数据,或者字幕,即,PG数据,那么在图29中显示的译码器模型的结构变成有效的。
在PID滤波器100中,从传输流中选择存储了与译码器模型相兼容数据的TS信息包,并且将该信息包存储在传输缓冲器(TB)101中。然后,在TB101中,提取存储在TS信息包的有效负荷中的数据。当在TB101中存储了可以重新构建PES信息包的数据量的时候,则基于PID重新构建PES信息包。也就是说,把被分成TS信息包的片段合并到一个PES信息包。
从由片段所重新构建的PES信息包中移除PES报头,并且将该PES信息包供应给译码器102作为基本流,并且将其临时存储在编码数据缓冲器(CDB )110中。在存储于CDB110中的基本流之中,如果有基本流已经达到了由DTS在STC的基础上所指示的时间,那么从CDB110中读取该基本流并且将其传输给流图形处理器111。然后将该基本流译码成为片断。
流图形处理器111将经译码的片断存储在译码对象缓冲器(DB)112中或组成成分缓冲器(CB)113中。如果片段类型是以DTS提供的类型,比如PCS、ICS、WD、或ODS,则依照由DTS所表示的时间将该片段存储在DB112或CB113中。如果片段类型是不具有DTS的类型,比如PDS,则将该片段直接存储在CB113中。
图形控制器114对控制片断。例如如果译码器模型与PG数据相符,那么图形控制器114依照由PTS所表示的时间从CB113中读取PCS,并且还读取由PCS引用的WDS和PDS。图形控制器114还从DB112中读取由PCS引用的ODS。然后,图形控制器114将读取的PCS、WDS、和ODS进行译码以组成用于显示字幕的数据,然后将该数据写入图形平面103中。
类似地,如果译码器模型与IG数据相符,则图形控制器114依照由与ICS相应的PTS所表示的时间从CB113读取ICS,并且还读取由ICS引用的PDS。图形控制器114还从DB112读取由ICS引用的ODS。然后,图形控制器114将读取的ICS和ODS进行译码以组成用于显示诸如按钮图像的菜单屏幕的数据,并且将该数据写入图形平面103中。
图形控制器114还对从CB113读取的PDS进行译码以组成参考图13所讨论的颜色调色板表,并且将颜色调色板表写入颜色查找表(CLUT)104中。
在预定时间,比如帧周期读取被写入图形平面103中的图像,并且通过参考CLUT104的颜色调色板表将颜色信息添加到图像上,以便组成输出图像数据。然后,输出该输出图像数据。视播放器的规格而定,可以进一步将基于CLUT104的颜色调色板表的颜色信息添加到从图形平面103中读取的图像数据上以便组成字幕图像数据,并且可将得到的字幕图像数据写入帧存储器。
根据时间间隔的更新,图形控制114对DB112、CB113、图形平面103、以及CLUT104进行清除。当PCS或ICS的程序块composition_descriptor()中的字段composition_state指示相应的显示集合是时间间隔的起始显示集合时,对DB112、CB113、图形平面103、以及CLUT104进行清除,其中PCS或ICS是从CDB110中读取的并且在流图形处理器111中被译码。根据时间间隔的更新的,也可以对CDB110进行清除。
时间间隔的定义如下。如上所述,在PG流或IG流中,在时间间隔起始显示集合的基础上定义时间间隔。
对于PG流,将下面项(1)和(2)中显示集合范围中的一个较短的范围定义为时间间隔:
项(1):一组显示集合,从一显示集合开始,其中在该显示集合中时间间隔的起始显示集合定义在PCS中,直到在另一显示集合之前的一个显示集合,其中该另一显示集合中后续的时间间隔起始显示集合定义在PCS中;以及
项(2):一组显示集合,从在其中的时间间隔的起始显示集合定义在PCS中的一显示集合开始,直到与相应的PG数据相关的播放列表末尾。
更具体地,就项(1)来说,时间间隔定义为一组显示集合,其从一PCS的PTS开始,其中在该PCS中定义了时间间隔的起始显示集合,直到另一PCS的PTS,其中在该PCS中定义了下一个时间间隔的起始显示集合。类似地,就项(2)来说,时间间隔定义为一组显示集合,其从一PCS的PTS开始,其中在该PCS中定义了时间间隔的起始显示集合,直到引用了该显示集合组的播放列表的末尾。
对于IG流,将下面项(3)、(4)和(5)中的显示集合的范围最短的一个定义为时间间隔:
项(3):一组显示集合,从一显示集合开始,其中在该显示集合中,在ICS中定义了时间间隔的起始显示集合,直到在ICS的字段composition_time_out_pts中定义的时间为止;
项(4):一组显示集合,从一显示集合开始,其中在该显示集合中时间间隔的起始显示集合定义在ICS中,直到在另一显示集合之前的一显示集合,其中在该另一显示集合中后续的时间间隔起始显示集合定义在ICS中;以及
项(5):一组显示集合,从一显示集合开始,其中在该显示集合中时间间隔的起始显示集合定义在ICS中,直到与IG数据相关的播放列表末尾。
图30是图解由PG数据显示集合的单元中的图形译码器102所进行的处理的流程图。在步骤S10中,PID滤波器100在PID的基础上从TS信息包中获取存储了PG数据的TS信息包并且将所获取的TS信息包存储在TB101中。然后,在步骤S11中,当TB101中存储了可以重新构建成PES信息包的足够数量的TS信息包时,在PID的基础上从TS信息包的有效负荷中提取数据,以便重新构建PES信息包。然后,将PES报头从PES信息包中移除并且将该PES信息包传输到CDB110作为基本流。
在步骤S12中,流图形处理器111将从PES信息包中提取的基本流展开成为片段。然后,在步骤S13到S17中,分别确定展开的片段是否是PCS、WDS、PDS、ODS、或是END片段。然后根据确定的结果进行处理。如参考图19或者图21所讨论的,可以在语法的第一程序块segment description()中的第一个字段segment_type的基础上确定片段的类型。尽管没有示出,但是用类似方式也可以确定WDS和ODS的片段类型。
在步骤S13中,确定片段是否是PCS。如果发现该片段是PCS,则进程继续到步骤S19以在字段composition_state的基础上确定包含了该PCS的显示集合是否是时间间隔的起始显示集合,其中字段composition_state在参考图19所述的PCS语法中的程序块composition_descriptor()中。
如果在步骤S19中发现该显示集合是时间间隔的起始显示集合,那么进程继续到步骤S20。在步骤S20中,清除涉及字幕显示的缓冲器,例如,DB112和CB113。在这种情况下,也可对CDB110进行清除。在步骤S21中,将PCS写入在步骤S20中已根据由DTS所表示的时间被清除的CB113中。然后,进程返回到步骤S10,并且获取随后的信息包。
如果在步骤S19中确定包含了该PCS的显示集合不是时间间隔的起始显示集合,那么进程继续到步骤S22,在该步骤中根据由DTS所表示的时间将该PCS写入CB113中。在这种情况下,将PCS写入CB113的预定空间中。
如果在步骤S13中确定了该片段不是PCS,那么进程继续到步骤S14以确定该片段是否是WDS。如果发现该片段是WDS,那么进程继续到步骤S23。在步骤S23中,根据由DTS所表示的时间将WDS写入CB113中。然后,进程返回到步骤S10,并且获取下一个信息包。如果在步骤S14中确定该片段不是WDS,那么进程继续到步骤S15,以确定该片段是否是PDS。
如果发现该片段是PDS,那么进程继续到步骤S24。在步骤S24中,直接将PDS写入CB113中。由于PDS不具有DTS,而具有PTS,因而在确定其为PDS之后,直接将其写入到CB113中。然后,进程返回到步骤S10,并且获取后续的信息包。如果在步骤S15确定片段不是PDS,那么进程继续到步骤S16,以确定片段是否是ODS。
如果发现该片段是ODS,那么进程继续到步骤S25。在步骤S25中,根据由DTS所表示的时间将存储在ODS中的经过运行-长度处理的位图数据进行译码,并且将其写入DB112中。然后,进程返回到步骤S10,并且获取下一个信息包。如果在步骤S16中确定该片段不是ODS,那么进程继续到步骤S17,以确定该片段是否是END片段,其中该END片段是显示集合的末尾。
如果发现该片段是END片段,那么完成了与该显示集合相关的一系列处理。
如果在步骤S17中确定该片段不是END片段,那么进程继续到步骤S18。也就是说,确定已经发生了某种错误并且进行预定的错误处理。
在上述结构中,根据在PCS中定义的PTS从CB113中输出用于显示字幕的PCS,并且在显示字幕之后,从CB113中删除PCS。然而,采用这种设置,如果用户给出关闭字幕显示的指令,则即使用户试图通过开启该字幕的显示来重新显示该字幕,在时间到达在PCS中定义的PTS之前也难以重新显示该字幕。
因而,与DB112分离提供用于存储当前活动的ODS的缓冲器,同样,与CB113分离提供用于存储当前活动的PCS和PDS的缓冲器。响应于开启字幕显示的指令,通过使用存储在与DB112和CB113分离提供的缓冲器中的ODS、PCS、和PDS来建立字幕图像和颜色调色板表,并且将其分别写入图形平面103和CLUT104中。
是“活动的(active)”意谓在其中由PTS指示相应片段的显示的状态,并且更具体地说,从在某一PCS中定义的PTS开始直到在随后被用于显示字幕的PCS中定义的PTS为止的时期。
也就是说,图形控制器114依照在PCS中定义的PTS把CB113输出的PCS供应给图形平面103和CLUT104,并且同样,将该PCS存放在与CB113分离提供的缓冲器中直到时间到达在下一个PCS中定义的PTS。这同样适用于ODS。图形控制器114依照PTS把从DB112输出的ODS供应给图形平面103并且将该ODS存放在与DB112分离提供的缓冲器中直到时间到达在下一个PCS中定义的PTS。
采用这种结构,如果在通过用户操作关闭字幕的显示之后重新指示字幕的显示,那么可以与开启该字幕显示的指令同步立即重新开始字幕的显示。
也就是说,在关闭字幕的显示之后,响应于开启字幕显示的指令,从与CB113分离提供的缓冲器中读取PCS,同样,从与DB112分离提供的缓冲器中读取ODS,并且通过使用所读取的PCS和ODS组成字幕图像。然后将该字幕图像写入图形平面103中。这同样适用于PDS。响应于开启字幕显示的指令,从与CB113分离通过的缓冲器中读取PDS,并且通过使用所读取的PDS来组成颜色调色板表。然后将该颜色调色板表写入CLUT104中。
图31是图解由在IG数据的显示集合的单元中的图形译码器102所进行的处理的流程图。除了对于WDS的处理之外,其是PG数据专有的,图31中所示的处理与图30中所示的对于PG数据的处理类似。
在步骤S30中,PID滤波器100在PID的基础上从TS信息包中获取存储了IG数据的TS信息包,并且将所获取的TS信息包存储在TB101中。在步骤S31中,从存储在TB101中的TS信息包的有效负荷中提取数据,并且重新构建PES信息包。然后,从该PES信息包中移除PES报头,并且将该PES信息包作为基本流传输到CDB110。
在步骤S32中,流图形处理器111将从PES信息包提取的基本流展开成为片段。然后,在步骤S33到S36中,分别确定所展开的片段是否是ICS、PDS、ODS、或END片段,并且依照所确定的结果进行处理。如参考图24所讨论的,可以在语法的第一程序区块segment description()的基础上确定片段的类型。虽然没有示出,但是也可以以相似的方式来确定ODS片段的类。
在步骤S33中确定该片断是否为ICS。如果发现片段是ICS,进程继续到步骤S38,以在参考图24所述的ICS的语法中的程序块composition_descriptor()的基础上确定包含了ICS的显示集合是否是时间间隔的起始显示集合。
如果在步骤S38中发现该显示集合是时间间隔的起始显示集合,那么进程继续到步骤S39。在步骤S39中,清除涉及菜单显示的缓冲器,例如,DB112和CB113。在这种情况下,也可以清除CDB110。然后,在步骤S40中,依照由DTS所表示的时间将ICS写入在步骤S39中被清除的CB113中。然后,进程返回到步骤S30,并且获取后续的信息包。
如果在步骤S38中确定包含了ICS的显示集合不是时间间隔的起始显示集合,那么进程继续到步骤S41。在步骤S41中,依照由DTS所表示的时间将ICS写入CB113中。在这种情况下,将ICS写入CB113的预定空间中。
如果在步骤S33中确定该片段不是ICS,那么进程继续到步骤S34,以确定该片段是否是PDS。如果该片段不是PDS,那么进程继续到步骤S35,以确定该片段是否是ODS。如果该片段不是ODS,那么进程继续到步骤S36,以确定该片段是否是END片段。如果在步骤S34中发现该片段是PDS,那么在步骤S42中直接将PDS写入CD113中。如果在步骤S35中发现该片段是ODS,那么对ODS进行译码并且在步骤S43中根据由DTS所表示的时间将其写入DB112中。
在BD-ROM标准中定义的译码器模型中,就PG数据和IG数据来说,将片断存储在CDB110中。然后,在由片段中定义的DTS所表示的时间对每一片段进行译码,并且将其存储在DB112或CB113中,然后在由片段中定义的PTS所表示的时间将其输出。因此,当在BD-ROM标准中定义的译码器模型的基础上设计播放器时,应该考虑到提供用于存储与存储在CDB110中的片段相应的DTS和PTS的存储器200(在下文中简称为“PTS/DTS缓冲器200”),比如图32中所示的。然而,这并不意味着与该译码器缓冲器物理分离而提供的缓冲器是必需的,并且也可以使用现有的存储器作为用于存储PTS和DTS的缓冲器。例如,CDB110至少能够对数据进行译码并且能够存储DTS和PTS。
也就是说,如果使用PTS/DTS缓冲器200,那么在译码器模型的基础上控制播放器的控制器在存储在PTS/DTS缓冲器200中的DTS的基础上,指定用于存储在CDB110中的片段的译码时间,并且在存储在PTS/DTS缓冲器200中的PTS的基础上,指定用于在DB112或CB113中被译码和存储的片段的输出时间。没有在当前的BD-ROM标准中定义PTS/DTS缓冲器200。
图33说图解存储在PTS/DTS缓冲器200中的数据的结构的例子。在PTS/DTS缓冲器200中,存储对应于存储在CDB110中的片段的DTS和PTS,同样,存储用于标识片段的片段ID进行了存储。根据规定,DTS和PTS各具有33-比特数据长度。
在PTS/DTS缓冲器200中,可以对每一片段存储其它的数据类型。在图33所示的例子中,存储了关于由片段ID所指示的片段版本的版本信息和关于片段类型的信息。关于片段类型的信息在PG数据的情况下指示该片段是否是PCS、PDS、WDS或ODS,并且在IG数据的情况下指示该片段是否是ICS、PDS、或ODS。
在图33所示的字段之中,如果,例如,片段ID的数据长度是16比特,版本信息的数据长度是8比特,并且片段类型的数据长度是4比特,那么每一片段的数据大小是94比特,那就是说,如果将其集拢换算成字节是12字节。
当在图32中所示的译码器模型的基础上设计播放器时,有必要估算各缓冲器和存储器的最小容量。在BD-ROM标准中定义的缓冲器TB101、CDB110、DB112、和CB113的最小容量已经定义在BD-ROM标准中。然而,有必要估算PTS/DTS缓冲器200的最小容量,其没有定义在BD-ROM标准中。
如上所讨论的,由于PG数据或IG数据的片段的数据大小是可变的,所以难以估算在CDB110中可以存储多少片段。因而,也难以估算对应于存储在CDB110中片段的PTS和DTS的总数,即,总的尺寸。
例如,如果将具有大数据尺寸的片段填入CDB110中,那么在CDB110中可以存储的片段的数量将会变小,因此,PTS和DTS的总尺寸将会变小。可以将这样的情况看作,例如,在PG数据情况下,在ODS中存储了大量的字幕图像数据时,或者,在IG数据的情况下,使用了具有许多页、命令、或按钮的ICS时或者在ODS中存储了大量的图像数据时。
在另一个方面,如果将具有小数据尺寸的片段填入CDB110中,那么在CDB110中可以存储片段的数量将会变大,因此,PTS和DTS的总尺寸将会变大。例如,在IG数据的情况下,如果使用了大量的用于动画显示的按钮图像数据,那么存储了按钮图像数据的各ODS的数据尺寸都会变小,并且,另一方面,ODS的数目变大,因而PTS和DTS的数目也变大。
此外,就ICS或者ODS来说,有可能片段的尺寸大于PES信息包的最大尺寸,即,64KB。在这种情况下,如上所述,一个片段就被存储在多个PES信息包中,在此情况下,多个DTS和PTS与一个片段关联。这样也使得难以在CDB110的容量的基础上估算DTS和PTS总的尺寸。
因此,在该实施例中,关于每一个PG数据和IG数据,定义了可以存储在PTS/DTS缓冲器200中的PTS和DTS的数量上限,并且在该上限的基础上定义了PTS/DTS缓冲器200的最小容量。
可以存储在PTS/DTS缓冲器200中的PTS和DTS的数量对应于存储在CDB110中的片段的数量。因而,可以在可存储在CDB110中的片段的数量上限的基础上确定可以存储在PTS/DTS缓冲器200中的PTS和DTS的数量上限。根据参考图30或者31所讨论的处理,由流图形处理器111根据相应的DTS对以基本流的形式存储在CDB110中PG数据或IG数据的片段进行译码,并且将该片段存储在DB112或CB113中。然后根据相应的PTS从DB112或CB113中输出该片段。因而,有必要将与片段关联的PTS存储在PTS/DTS缓冲器200中,直到从DB112或CB113中输出该片段。因此,能够在可以存储于DB112和CB113中的片段数量的基础上来确定可以存储在CDB110中的片段的数量的上限。换句话说,可以在可存储在DB112和CB113中的片段数量上限的基础上确定可以存储在PTS/DTS缓冲器200中的PTS和DTS的数量上限。
根据BD-ROM标准,对于每一个PG数据和IG数据,确定在一个时间间隔之内的片段数量上限。因为该上限,就PG数据来说,可以在一个时间间隔中使用的字幕图像数据的数量会受到限制,并且就IG数据来说,可以确定可在一个时间间隔中使用的页面、命令、或按钮图像数据的数量。在对于PG数据或者IG数据的、在一个时间间隔内的片段的数量上限的基础上,可以分别确定可存储在与PG数据或者IG数据相符的译码器模型的DB112和CB113中的片段的数量。
如上所述,如同参考图30或者31的流程图所讨论的,由时间间隔起始显示集合来清除该DB112或CB113。
在时间间隔之内的PG数据的片段数量上限是,例如,如同图34A所示的,如下:8个PCS、1个WDS、8个PDS、64个ODS、和8个END片段。在那些片段之中,由于END片段没有DTS并且没有存储在DB112或CB113中,所以对于计算PTS/DTS缓冲器200最小容量来说不将它们计算在内。由于PDS没有DTS,但是其可以存储在CB113中,所以对于计算PTS/DTS缓冲器200最小容量来说将它们计算在内。因而,基于PCS、WDS、PDS、和ODS数量上限,可以估算与PG数据相符的译码器模型中的PTS/DTS缓冲器200的最小容量。
如果在每一个片段中都存储由图33中所示的数据结构的所有字段,那么数据大小变成(8+1+8+64)×12字节=972字节,并且可以把与PG数据相符的译码器模型中的PTS/DTS缓冲器200的最小容量估算为972字节。实际上,对最小容量添加了某种修正量。例如,如果一个时间间隔内的PG数据的片段的数量上限大约是128,那么可以估算PTS/DTS缓冲器200的最小容量大约是1.6KB。
一个时间间隔内的IG数据的片段的数量上限是,例如,如图34B所示的,如下:1个ICS、256个PDS、4096个ODS、和1个END片段。在这些片段之中,由于END片段不具有DTS并且没有存储在DB112或CB113中,所以对于计算PTS/DTS缓冲器200最小容量来说不将它们计算在内。由于PDS没有DTS,但是其可能存储在CB113中,使用对于计算PTS/DTS缓冲器200最小容量来说将他们计算在内。因而,基于ICS、PDS、和ODS数量上限,可以估算与IG数据相符的译码器模型中的PTS/DTS缓冲器200的最小容量。
如果在每一个片段中都存储了图33中所示的数据结构的所有字段,那么数据大小变成(1+256+4096)×12字节=52236字节,并且可以估算与IG数据相符的译码器模型中的PTS/DTS缓冲器200的最小容量为52236字节。实际上,对最小容量添加了某种修正量。例如,如果一个时间间隔内的IG数据的片段的数量上限大约是5120,那么可以估计PTS/DTS缓冲器200的最小容量大约是64KB。
图34A和34B中所示的PG数据和IG数据在一个时间间隔内的片段的数量上限,只是例子,并且其不局限于这些例子。
可以对于每个时间间隔都清除PTS/DTS缓冲器200。例如,如参考图30或31的流程图所讨论的,由时间间隔起始显示集合对DB112和CB113清除时,也可以对PTS/DTS缓冲器200进行清除。对每个时间间隔将PTS/DTS缓冲器200清除可以固定数据清除的时间。这样增强了译码器模型的简单性。
可替换地,可以针对每一个片段来控制PTS/DTS缓冲器200。例如,在存储于PTS/DTS缓冲器200中的PTS或PTS和DTS的组合之中,在片段单元中删除其回放时间已经超过PTS的数据。通过使用PTS来清除PTS/DTS缓冲器200消除了在PTS/DTS缓冲器200中存储不必要数据的需要。
下面讨论适用于本发明的实施例的回放装置。图35图解适用于本发明的实施例的回放装置1的结构。该回放装置1包括存储驱动器50、开关电路51、AV译码器52、和控制器53。可以在存储驱动器50中安装以上所述的BD-ROM并且对其进行回放。
控制器53包括中央处理器(CPU)、在其中预存储了在CPU上运行的程序的ROM、当CPU执行程序的时候被作为工作存储器来使用的随机存取存储器(RAM)等等。采用这种结构,控制器53控制回放装置1的全部操作。
虽然没有显示用户接口,但是为回放装置1提供了将预先确定的控制信息提供给用户并且还响应于用户操作而输出控制信号的用户接口。例如,把通过预先确定的无线通信单元,例如,红外通信单元与回放装置1进行远程通信的遥控指令器用作用户接口,其与回放装置1经由预先确定的无线通信单元,例如,红外通信单元,执行远距离通信。在遥控指令器上提供了多个输入单元,比如,例如十字按钮的方向按钮,其可以指明上,下,左,和右的方向;数字键盘;和被分配了不同功能的功能键盘。
该遥控指令器根据在输入单元上继续的操作生成控制信号,并且将生成的控制信号调制成,例如,红外信号,然后,发射该红外信号。回放装置1通过红外接收器(没有显示)接收该红外信号,并且将该红外信号解调成电信号以重建原始控制信号。然后,将该控制信号供应给控制器53。响应于这该控制信号,控制器53根据程序控制回放装置1的操作。
用户接口不局限于遥控指令器,除此之外可以是提供在回放装置1的操作面板上的开关组。可替换地,可以向回放装置1提供经由,例如,局域网(LAN)进行通信的通信单元作为用户接口,并且可以把经由该通信单元从外部计算机供应的信号供应给控制器53作为从用户接口供应的控制信号。
把关于语言设定的初始信息存储在回放装置1的非-易失性存储器中。例如,当开启该回放装置1的时候,从非-易失性存储器中读取语言设定初始信息并且将其供应给控制器53。
当在存储驱动器50中装入盘时,控制器53经由存储驱动器50读出盘上的文件“index.bdmv”和文件“MovieObject.bdmv”,并且在所读取的文件的描述的基础上读出目录“PLAYLIST”中的播放列表文件。然后控制器53经由存储驱动器50从该盘中读出剪辑AV流文件,该文件由包含在播放列表文件中的播放项目来引用。如果该播放列表包含子播放项目,那么控制器53经由存储驱动器50还从该盘中读出由子播放项目引用的剪辑AV流文件和字幕数据。
在下文中,把对应于子播放项目的剪辑AV流称为“子剪辑AV流”,并且把对应于与子-播放项目关联的主播放项目的剪辑AV流称为“主剪辑AV流”。
然后通过解调器(没有显示)解调从存储驱动器50中输出的数据并且通过误差校正器(没有显示)对其进行误差校正处理,以便可以重建多路复用流。多路复用流(multiplexed stream)是传输流,在其中在由PID标识数据类型和数据顺序之后,将数据分割成具有预定尺寸的小部分,并且该小部分是时分多路复用的。将该多路复用流供应给开关电路51。控制器53控制开关电路51,以在PID的基础上根据类型对数据进行分类。更具体地说,控制器53将主剪辑AV流信息包供应给缓冲器60,将子剪辑AV流信息包供应给缓冲器61,将声音数据信息包供应给缓冲器62,并且将文本数据信息包供应给缓冲器63。
在控制器53的控制下,逐信息包从缓冲器60中读出存储在缓冲器60中的主剪辑AV流信息包,并且将其供应给PID滤波器64。PID滤波器64在信息包的PID的基础上,将该信息包分类成视频流信息包、PG流信息包、IG流信息包、和音频流信息包。
在控制器53的控制下,逐信息包从缓冲器61中读出存储在缓冲器61中的子剪辑AV流信息包,并且将其供应给PID滤波器90。PID滤波器90在信息包的PID的基础上,将该信息包分类成视频流信息包、PG流信息包、IG流信息包、和音频流信息包。
把由PID滤波器64分类的视频流信息包和由PID滤波器90分类的视频流信息包供应给PID滤波器65,并且根据PID将其进行分配。也就是说,PID滤波器65把从PID滤波器64输出的主剪辑AV流信息包供应给第一视频译码器69,并且把从PID滤波器90输出的子剪辑AV流信息包供应给第二视频译码器72。
第一视频译码器69从所供应的信息包的有效负荷中提取预定的视频流并且对所提取视频流的MPEG2压缩码进行译码。然后,第一视频译码器69把经译码的数据输出到第一视频平面发生器70,并且生成视频平面。在这种情况下,通过,例如,向帧存储器中写入一帧基带数字视频数据来生成视频平面。把在第一视频平面发生器70中生成的视频平面供应给视频数据处理器71。
分别由第二视频译码器72和第二视频平面发生器73来继续类似于由第一视频译码器69和第一视频平面发生器70所继续的处理,以便对视频流进行译码并且生成视频平面。把在第二视频平面发生器73中生成的视频平面供应给视频数据处理器71。
视频数据处理器71把第一视频平面发生器70中生成的视频平面和第二视频平面发生器73中生成的视频平面插入一帧中以生成一个视频平面。可以通过选择性使用在第一视频平面发生器70中生成的视频平面和在第二视频平面发生器73中生成的视频平面来生成视频平面。所生成的视频平面对应于,例如,图9所示的运动图像平面10。
把由PID滤波器64分类的PG流信息包和由PID滤波器90进行的PG流信息包供应给开关电路66,并且选择一个类型的PG流信息包并将其供应给PG译码器74。
PG译码器74对应于参考图32所讨论的译码器模型中的图形译码器102。在这种情况下,图32中所示的PID滤波器100和TB101分别对应于PID滤波器64和缓冲器(没有显示)。可替换地,可以将PID滤波器100和TB101包括在PG译码器74中。
在图35所示的例子中,在PG译码器74中包括了PTS/DTS缓冲器200。可替换地,可以将PTS/DTS缓冲器200包括在控制器53的RAM的预定区域中。在这种情况下,控制器35在RAM中为PG数据保留了PTS/DTS缓冲器200的最小容量,其中PG数据如上所定义的。
PG译码器74从所供应的信息包的有效负荷中提取预定的PG流信息包,并且对PG流信息包进行译码以生成用于显示字幕的图形数据。然后PG译码器74将该图形数据供应给开关电路75。也就是说,PG译码器74从所供应的信息包的有效负荷中提取数据并且在PID的基础上重新构建PES信息包。如果在重新构建的PES信息包的报头中包含了DTS和/或PTS,那么PG译码器74提取该DTS和/或PTS并且将它们存储在PTS/DTS缓冲器200中,并且还对有效负荷的数据进行译码以组成PCS、WDS、PDS、和ODS。在由相应的DTS所表示的时间将PCS、WDS、PDS、和ODS存储在DB112或CB113中,并且在由相应的PTS所表示的时间将其从PG译码器74中输出。将PCS、WDS、PDS、和ODS供应给开关电路75。
开关电路75选择预定的图形数据和文本数据形式的字幕数据,该文本数据将在下面进行讨论,并且将所选择的数据供应给PG平面发生器76。PG平面发生器76在所供应的数据的基础上生成PG平面并且将PG平面供应给视频数据处理器71。PG平面对应于,例如,参考图9所讨论的字幕平面11并且还对应于存储在参考图29所讨论的图形平面103中的字幕图像。
将由PID滤波器64分类的IG流信息包和由PID滤波器90分类的IG流信息包供应给开关电路67,并且选择一种类型的IG流信息包并将其供应给IG译码器77。
IG译码器77对应于参考图32所讨论的译码器模型中的图形译码器1 02。在这种情况下,图32中所示的PID滤波器100和TB101分别对应于开关电路67和缓冲器(没有显示)。可替换地,可以将PID滤波器100和TB101包括在IG译码器77中。
在图35所示的例子中,在IG译码器77中包括了PTS/DTS缓冲器200。可替换地,可以将PTS/DTS缓冲器200包括在控制器53的RAM的预定区域中。在这种情况下,控制器35在RAM中为IG数据保留了PTS/DTS缓冲器200的最小容量,其中IG数据如上所定义的。
IG译码器77从所供应的IG流信息包中提取ICS、PDS和ODS,并对ICS、PDS和ODS进行译码。例如,IG译码器77从所提供的信息包的有效负荷中提取数据,并基于PID重新构建PES信息包。如果在所重新构建的PES信息包的报头中包含了DTS和/或PTS,那么IG译码器77提取该DTS和/或PTS并且将它们存储在PTS/DTS缓冲器200中,并同时对有效负荷的数据进行译码,以组成IG流信息包的ICS、PDS、和ODS。在由存储在PTS/DTS缓冲器200中相应的DTS所表示的时间对ICS和ODS进行译码,然后将其存储在DB112中。直接对PDS进行译码并且将其存储在CB113中。
在IG译码器77中,在由存储在PTS/DTS缓冲器200中的PTS所表示的时间从DB112或CB113中读出相应的片段,并且通过预装入缓冲器78将其供应给IG平面发生器79。IG平面发生器79在所供应的片段的基础上生成IG平面。该IG平面对应于,例如,参考图9所讨论的IG平面12。
视频数据处理器71包括,例如,参考图11所讨论的图形处理器,并且把视频平面(图11中所示的运动图像平面10)、PG平面(图11中所示的字幕平面11)、和IG平面(在图11中显示的IG平面12)组合以组成一段(piece)图像数据,并且作为视频信号输出该图像数据。
下面参考图11在PG平面(即,字幕图像)的情况中进行详细讨论。调色板22A、RGB/YCbCr转换电路22B、和乘法器23对应于参考图32所讨论的CLUT104。在调色板22A和RGB/YCbCr转换电路22B中将颜色信息添加到PG平面上,并且在乘法器23中将不透明度信息添加到PG平面上。然后,分别在加法器24和加法器28中将得到的PG平面与视频平面和IG平面相结合,以便输出一段图像数据。
把由PID滤波器64分类的音频流和由PID滤波器90分类的音频流供应给开关电路68。开关电路68改变开关电路68的开关以便将一种类型的音频流供应给第一音频译码器80并且将另一个类型的音频流供应给第二音频译码器81。在加法器82中把在第一音频译码器80和第二音频译码器81中进行译码的音频流进行合成并且在加法器83中进一步将该相加的音频流与从缓冲器62中读出的声音数据相结合。然后输出得到的音频信号。
在文本-ST组成单元91中对从缓冲器63中读取的文本数据进行处理并且将其供应给开关电路75。
在上述实施例中,通过硬件来构建组成该回放装置1的元件。然而,也可以通过在电脑上执行的软件处理来实现该回放装置1。在这种情况下,可以在电脑上操作该回放装置1。可替换地,可以通过硬件和软件的组合来实现该回放装置1。例如,可以通过硬件组成该回放装置1的译码器,特别是,第一视频译码器69和第二视频译码器72,它们具有比其它的元件更大的处理负荷,并且其它的元件可以通过软件形成。在此情况下,作为电脑存储器的预定区域组成PTS/DTS缓冲器200。
在以上所述的实施例中,从光盘-类型的记录介质,比如光盘中读取视频数据、音频数据、PG流、和IG流。可替换地,例如,可以将该数据的整体或一部分存储在不同于光盘的记录介质中,比如提供有回放装置1的硬盘驱动器或半导体存储器中,并且可以从这种记录介质中读取该数据。
可以仅仅由软件或通过硬件和软件的组合来构建回放装置1,并且可以在记录介质,比如光盘只读存储器(CD-ROM)或数字多用途光盘只读存储器(DVD-ROM)上记录在计算机上所执行的程序。可以在计算机的驱动器中装入这种记录介质并且可以在计算机中安装记录在该记录介质上的程序。采用这种结构,可以在计算机上进行上述处理。可以将程序记录在BD-ROM上。计算机的结构是已知的,并且因此省略其说明。
本领域技术人员可以理解,在所附权利要求及其等价物的范围内,视设计要求及其他因素而定,存在各种修改、组合、变形和变更。
相关申请的交叉参考
本申请包括了与在2006年6月6日在日本专利局提交的日本专利申请JP2006-156905相关的主题内容,其全部内容通过引用合并于此。

Claims (17)

1.一种回放装置,包括:
输入部件,其接收内容数据和基于多个第一单元形成的随附数据,所述随附数据用于显示与内容数据相伴随的信息;
第一存储部件,其在形成由输入部件接收的随附数据的多个第一单元之间存储在其中定义了关于译码时间的译码时间信息的第一单元;
时间信息存储部件,其存储译码时间信息;
译码器,其从所述第一存储部件中提取所述第一单元并且根据存储在所述时间信息存储部件中的译码时间信息对所述第一单元进行译码;以及
第二存储部件,其存储由译码器译码的第一单元,
其中,所述时间信息存储部件至少具有基于存储在所述第一存储部件中的第一单元数量上限的容量。
2.根据权利要求1所述的回放装置,其中,在所述随附数据中,还定义了输出时间,并且所述时间信息存储部件还存储关于从所述随附数据中提取的输出时间的输出时间信息,以及
根据存储在所述时间信息存储部件中的输出时间信息,将由所述译码器译码的并且存储在所述第二存储部件中的第一单元从所述第二存储部件中输出。
3.根据权利要求1所述的回放装置,其中,所述随附数据包括通过被叠加到由内容数据表示的主图像之上而将被显示的图形数据,在所述图形数据中定义了输出时间。
4.根据权利要求1所述的回放装置,其中,所述随附数据包括按钮图像,该按钮图像实现动画显示并且其用来显示用于操作屏幕的按钮,该操作屏幕指导用户进行操作,并且所述随附数据还包括关于所述按钮图像的显示控制信息。
5.根据权利要求1所述的回放装置,其中,所述第二存储部件包括第三存储部件和第四存储部件,其中该第三存储部件存储用于形成通过使用所述随附数据来显示的图像数据的信息,该第四存储部件存储关于通过使用所述随附数据来显示的图像数据的属性信息,以及
基于存储于所述第三存储部件中的用于形成图像数据信息的项的数量上限和存储于所述第四存储部件中的关于图像数据的属性信息的项的数量上限,确定存储在所述第一存储部件中的第一单元的数量上限。
6.根据权利要求1所述的回放装置,其中,在所述第一单元中,定义关于所述随附数据结构的结构信息、关于所述随附数据属性的属性信息、关于所述随附数据的图像信息、或关于所述随附数据断点的断点信息,
从多个包括了一项所述结构信息和一项所述断点信息的第一单元中形成第二单元,
从一个或多个包括了一个或多个所述属性信息项的第二单元中形成第三单元,以及
所述随附数据是一组所述第三单元。
7.根据权利要求6所述的回放装置,其中,对所述第一单元定义译码时间信息,并将该信息存储在包括了所述第一单元的信息包的信息包报头中。
8.根据权利要求6所述的回放装置,其中,还对在其中存储了所述结构信息或图像信息的第一单元定义译码时间信息。
9.根据权利要求8所述的回放装置,其中,还对在其中存储了所述属性信息的第一单元定义译码时间信息。
10.根据权利要求6所述的回放装置,其中,基于可以被存储在所述第三单元中的第一单元的数量,确定存储在所述第一存储部件中的第一单元的数量上限,在第一单元中存储了所述结构信息、属性信息、或图像信息。
11.根据权利要求6所述的回放装置,其中,对每个第三单元将所述第二存储部件清除。
12.根据权利要求6所述的回放装置,其中,在所述随附数据中,还定义了输出时间,并且所述时间信息存储部件还存储了关于从所述随附数据中提取的输出时间的输出时间信息,
根据存储在所述时间信息存储部件中的输出时间信息,将由所述译码器译码的并且存储在所述第二存储部件中的第一单元从所述第二存储部件中输出,并且
在对包括了存储在所述第二存储部件中的第一单元的随附数据进行显示之后,基于存储于所述时间信息存储部件中的输出时间信息,对每个第一单元将所述时间信息存储部件清除。
13.根据权利要求12所述的回放装置,其中,在所述时间信息存储部件中,还存储了用于将所述译码时间信息与所述第一单元相关联的标识信息,以及
在对包括了存储在所述第二存储部件中的第一单元的随附数据进行显示之后,基于存储于所述时间信息存储部件中的输出时间信息,对每个第一单元把标识信息清除。
14.根据权利要求6所述的回放装置,其中,对每个第三单元把定义在所述第一单元中的并且存储在所述时间信息存储部件中的译码时间信息清除,其中所述第一单元中包括在所述第三单元中。
15.根据权利要求14所述的回放装置,其中,在所述时间信息存储部件中,还存储了用于将所述译码时间信息与所述第一单元相关联的标识信息,以及
在清除所述译码时间信息时,也清除了对应于所述译码时间信息的标识信息。
16.一种回放方法,包括步骤:
接收内容数据和基于多个第一单元形成的随附数据,所述随附数据用于显示与所述内容数据相伴随的信息;
在第一存储部件中存储形成所接收的随附数据的多个第一单元之间的、在其中定义了关于译码时间的译码时间信息的第一单元;
把所述译码时间信息存储在所述时间信息存储部件中;
从所述第一存储部件中提取所述第一单元,并且根据存储在所述时间信息存储部件中的译码时间信息对所述第一单元进行译码;以及
把所述经译码的第一单元存储在所述第二存储部件中,
其中,所述时间信息存储部件在存储于所述第二存储部件中的第一单元数量上限的基础上至少能够存储所述译码时间信息。
17.一种回放程序,允许计算机执行回放方法,包括步骤:
接收内容数据和在多个第一单元的基础上形成的随附数据,所述随附数据用于显示与所述内容数据相伴随的信息;
在第一存储部件中,存储形成所接收的随附数据的多个第一单元之间的、在其中定义了关于译码时间的译码时间信息的第一单元;
把所述译码时间信息存储在所述时间信息存储部件中;从所述第一存储部件中提取所述第一单元,并且根据存储在所述时间信息存储部件中的译码时间信息对所述第一单元进行译码;以及
把所述经译码的第一单元存储在所述第二存储部件中,其中,所述时间信息存储部件至少能够存储基于存储于所述第二存储部件中的第一单元数量上限的译码时间信息。
CN 200710182183 2006-06-06 2007-06-06 回放装置、回放方法、和回放程序 Active CN101136235B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP156905/06 2006-06-06
JP2006156905A JP4816262B2 (ja) 2006-06-06 2006-06-06 再生装置、再生方法および再生プログラム

Publications (2)

Publication Number Publication Date
CN101136235A true CN101136235A (zh) 2008-03-05
CN101136235B CN101136235B (zh) 2010-06-02

Family

ID=38790103

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200710182183 Active CN101136235B (zh) 2006-06-06 2007-06-06 回放装置、回放方法、和回放程序

Country Status (3)

Country Link
US (1) US8849102B2 (zh)
JP (1) JP4816262B2 (zh)
CN (1) CN101136235B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103491416A (zh) * 2013-09-29 2014-01-01 深圳Tcl新技术有限公司 字幕数据的单图层显示方法和装置
CN106416270A (zh) * 2014-06-10 2017-02-15 索尼公司 发送装置、发送方法和接收装置
CN108028949A (zh) * 2015-09-16 2018-05-11 索尼公司 传输装置、传输方法、再现装置和再现方法
CN108769768A (zh) * 2018-05-29 2018-11-06 四川长虹网络科技有限责任公司 Dvb字幕同步方法及系统

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102333194B (zh) * 2010-07-13 2013-12-11 晨星软件研发(深圳)有限公司 字幕显示方法与嵌入式系统
CN103533426A (zh) * 2012-07-04 2014-01-22 珠海扬智电子科技有限公司 影音数据组合方法及系统
TWI569648B (zh) * 2012-09-27 2017-02-01 晨星半導體股份有限公司 顯示方法與顯示裝置
WO2014117325A1 (en) * 2013-01-29 2014-08-07 Nokia Corporation Method and apparatus for providing segment-based recommendations
US10291827B2 (en) 2013-11-22 2019-05-14 Futurewei Technologies, Inc. Advanced screen content coding solution
US10638143B2 (en) 2014-03-21 2020-04-28 Futurewei Technologies, Inc. Advanced screen content coding with improved color table and index map coding methods
US10091512B2 (en) 2014-05-23 2018-10-02 Futurewei Technologies, Inc. Advanced screen content coding with improved palette table and index map coding methods
CN111212251B (zh) * 2014-09-10 2022-05-27 松下电器(美国)知识产权公司 再现装置以及再现方法
WO2017126509A1 (ja) * 2016-01-19 2017-07-27 ソニー株式会社 送信装置、送信方法、受信装置および受信方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001297523A (ja) * 2000-04-14 2001-10-26 Sony Corp 光ディスク装置
JP2005522813A (ja) * 2002-04-05 2005-07-28 トムソン ライセンシング ソシエテ アノニム パーソナル・ビデオ・レコーダに関する遠隔制御システム及び方法
US20040081434A1 (en) * 2002-10-15 2004-04-29 Samsung Electronics Co., Ltd. Information storage medium containing subtitle data for multiple languages using text data and downloadable fonts and apparatus therefor
KR100970727B1 (ko) * 2002-10-15 2010-07-16 삼성전자주식회사 텍스트 데이터와 다운로드 폰트를 이용한 다국어 지원용서브 타이틀 데이터가 기록된 정보저장매체 및 그 장치
CN100466713C (zh) 2002-11-28 2009-03-04 索尼株式会社 再现装置和再现方法
KR100943811B1 (ko) * 2002-12-04 2010-02-24 엔엑스피 비 브이 오디오/비디오 동기화 테스트 방법
JP3878650B2 (ja) * 2003-02-28 2007-02-07 松下電器産業株式会社 記録媒体、再生装置、記録方法、プログラム、再生方法。
US8190003B2 (en) * 2004-01-14 2012-05-29 Samsung Electronics Co., Ltd. Storage medium storing interactive graphics stream activated in response to user's command, and reproducing apparatus for reproducing from the same
KR101135224B1 (ko) * 2004-02-17 2012-04-23 파나소닉 주식회사 기록매체, 재생장치, 프로그램 및 재생방법

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103491416A (zh) * 2013-09-29 2014-01-01 深圳Tcl新技术有限公司 字幕数据的单图层显示方法和装置
CN103491416B (zh) * 2013-09-29 2018-09-04 深圳Tcl新技术有限公司 字幕数据的单图层显示方法和装置
CN106416270A (zh) * 2014-06-10 2017-02-15 索尼公司 发送装置、发送方法和接收装置
CN106416270B (zh) * 2014-06-10 2020-01-17 索尼公司 发送装置、发送方法和接收装置
US11082340B2 (en) 2014-06-10 2021-08-03 Sony Corporation Transmitting apparatus, transmitting method, and receiving apparatus
CN108028949A (zh) * 2015-09-16 2018-05-11 索尼公司 传输装置、传输方法、再现装置和再现方法
CN108028949B (zh) * 2015-09-16 2021-05-11 索尼公司 传输装置、传输方法、再现装置和再现方法
CN108769768A (zh) * 2018-05-29 2018-11-06 四川长虹网络科技有限责任公司 Dvb字幕同步方法及系统

Also Published As

Publication number Publication date
US8849102B2 (en) 2014-09-30
JP4816262B2 (ja) 2011-11-16
CN101136235B (zh) 2010-06-02
US20070280295A1 (en) 2007-12-06
JP2007329529A (ja) 2007-12-20

Similar Documents

Publication Publication Date Title
CN101136235B (zh) 回放装置、回放方法、和回放程序
CN1856079B (zh) 再现装置和再现方法
CN101202095A (zh) 创作、记录、和验证设备、方法和程序
JP4830535B2 (ja) 再生装置、再生方法および再生プログラム
CN101246731B (zh) 再现装置、显示控制方法
JP4957142B2 (ja) 再生装置、再生方法および再生プログラム
JP2006230001A (ja) 再生装置、再生方法、再生プログラムおよび記録媒体
JP5209515B2 (ja) 記録媒体
JP5209516B2 (ja) 記録媒体
JP5209513B2 (ja) 記録媒体
JP4277863B2 (ja) 再生装置、再生方法、再生プログラムおよび記録媒体
JP5158225B2 (ja) 再生装置、再生方法および再生プログラム
JP5494781B2 (ja) データ構造
JP5494779B2 (ja) データ構造
JP5187454B2 (ja) データ格納方法
JP5187453B2 (ja) データ格納方法
JP5494780B2 (ja) データ構造
JP5187452B2 (ja) データ格納方法
JP5187451B2 (ja) データ格納方法
JP4277862B2 (ja) 再生装置、再生方法、再生プログラムおよび記録媒体
JP4277864B2 (ja) 再生装置、再生方法、再生プログラムおよび記録媒体
JP5494782B2 (ja) データ構造
JP5209514B2 (ja) 記録媒体
JP4277865B2 (ja) 再生装置、再生方法、再生プログラムおよび記録媒体

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20080305

Assignee: Shenzhen Maxmade Technology Co.,Ltd.

Assignor: Blue light United Co., Ltd.

Contract record no.: X2019990000006

Denomination of invention: Playback apparatus, playback method, and playback program

Granted publication date: 20100602

License type: Common License

Record date: 20190923

EE01 Entry into force of recordation of patent licensing contract