记录介质、再现装置、记录方法以及再现方法转让专利

申请号 : CN200910004423.X

文献号 : CN101510982B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 池田航冈田智之上坂靖小塚雅之

申请人 : 松下电器产业株式会社

摘要 :

本发明公开了一种记录介质、再现装置、记录方法、程序以及再现方法。在BD-ROM上,记录的是将视频流和音频流多路复用到其中的数字流。视频流包括共同显示视频的多个图像。图形流包括储存状态控制信息(ICS)的PES数据包以及包含图形数据(ODS)的PES数据包。图形数据构成交互显示。状态控制信息定义控制从而根据再现进程和用户操作来改变呈现在交互显示上的按钮的状态。ICS附有表示与交互显示同步的图像的显示定时的PTS。ODS附有表示图形数据解码时间的PTS。在ODS中所示的时间先于显示定时。

权利要求 :

1.一种用于记录介质的记录方法,包括:第一步骤,用于产生视频流;

第二步骤,用于产生图形流;

第三步骤,用于通过多路复用所述视频流和图形流而产生数字流;以及第四步骤,用于将所述数字流记录到所述记录介质上,其中,所述图形流包括(i)图形数据,所述图形数据用于构成包括具有正常状态、选择状态以及激活状态的至少一个按钮的交互显示,以及(ii)状态控制信息,所述状态控制信息用于使所述按钮的状态响应于所述视频流的再现进程和用户对按钮的操作而改变为不同的状态;

所述图形流包括多个显示组;

每个所述显示组包括所述图形数据和状态控制信息;

在每个所述显示组中,所述状态控制信息具有更新标志;

当所述更新标志被设置为ON时,其表示所述显示组的按钮命令可以从前一个显示组的按钮命令变化;

当所述更新标志被设置为OFF时,其表示所述显示组的按钮命令可以与前一个显示组的按钮命令相同;

所述按钮命令用于在激活所述交互显示上的相关按钮时,通过再现装置来执行,以及所述第二步骤包括:

第一子步骤,用于产生每条状态控制信息,包括所述更新标志;

第二子步骤,用于产生包括状态控制信息和图形数据的每个所述显示组;以及第三子步骤,用于产生包括所述多个显示组的所述图形流,并且其中所述图形流由多个传输流数据包构成,并且构成所述图形流的每个传输流数据包具有相同的PID。

2.根据权利要求1所述的记录方法,其中:所述交互显示呈现n个按钮,并且所述n个按钮中的任意按钮i具有m个状态,其中i、n和m是整数;

所述状态控制信息括n条按钮信息,并且与按钮i相关联的一条按钮信息包括m条状态信息;以及当按钮i的m个状态中的任意一个是状态j时,第j条状态信息表示哪一条图形数据将用于呈现处于状态j的按钮i,其中j是整数。

3.根据权利要求2所述的记录方法,其中:所述按钮信息i包括相邻信息;以及

所述相邻信息表示n个按钮中的一个响应于用户操作来接收当前选择状态,其中所述用户操作指定当按钮i处于当前选择状态时的方向。

4.根据权利要求1、2或3所述的记录方法,其中:所述状态控制信息包括表示相应显示组的类型的类型信息;

所述图形流中包括的多条类型信息包括一条类型信息,其表示状态控制信息所属的显示组中包括的图形数据与所述图形流中前一个显示组中包括的图形数据一致。

5.一种用于再现数字流的再现装置,其中将视频流和图形流多路复用到该数字流中,所述再现装置包括:视频解码器,用于对所述视频流进行解码以获得视频数据;以及图形解码器,用于对所述图形流进行解码以获得包括至少一个按钮的交互显示,其中:所述图形流包括多个显示组,每个所述显示组包括图形数据和状态控制信息;

所述按钮具有正常状态、选择状态以及激活状态;

所述状态控制信息用于响应于所述视频流的再现进程和用户对按钮的操作使所述按钮的状态改变为不同的状态;以及在每个所述显示组中,状态控制信息包括表示相应的显示组的类型的类型信息以及更新标志;

所述图形解码器包括:

处理单元,用于对包括在所述图形流中的图形数据进行解码以获得所述交互显示,以及控制器,用于根据所述状态控制信息来控制所述按钮的状态;其中当执行正常再现时,如果所述更新标志被设置为ON并且所述类型信息表示该显示组在内容上与前一个显示组相一致,则所述控制器读取按钮命令,并且其中所述图形流由多个传输流数据包构成,并且构成所述图形流的每个传输流数据包具有相同的PID。

6.根据权利要求5所述的再现装置,其中:所述交互显示呈现n个按钮,并且所述n个按钮中的任意按钮i具有m个状态,其中i、n、和m是整数;

所述状态控制信息括n条按钮信息,并且与按钮i相关联的一条按钮信息括m条状态信息;以及当按钮i的m个状态中的任意一个是状态j时,所述控制器使用由m条状态信息中的第j条状态信息所指定的一条图形数据呈现处于状态j的按钮i,其中j是整数。

7.根据权利要求6所述的再现装置,其中:所述按钮信息i包括相邻信息;以及

当按钮i处于当前选择状态并且进行用户操作以转换所述当前选择状态时,所述控制器使按钮i返回到正常状态并且使在n个按钮中由所述相邻信息指定的按钮处于所述当前选择状态。

8.根据权利要求5所述的再现装置,其中:当进行数字输入的用户操作时,所述控制器改变按钮的状态,其中等于该数字输入的值被分配给所述按钮。

9.一种再现数字流的方法,其中将视频流和图形流多路复用到该数字流中,所述方法包括:对所述视频流进行解码以获得视频数据;以及对所述图形流进行解码以获得包括至少一个按钮的交互显示,其中:所述图形流包括多个显示组,每个所述显示组包括图形数据和状态控制信息;

所述按钮具有正常状态、选择状态以及激活状态;

所述状态控制信息用于响应于所述视频流的再现进程和用户对按钮的操作而使所述按钮的状态改变为不同的状态;

在每个所述显示组中,状态控制信息包括表示相应的显示组的类型的类型信息以及更新标志;以及所述对所述图形流进行解码包括:

对包括在所述图形流中的图形数据进行解码以获得所述交互显示,以及根据所述状态控制信息来改变所述按钮的状态;其中当执行正常再现时,如果所述更新标志被设置为ON并且所述类型信息表示该显示组在内容上与前一个显示组相一致,则读取按钮命令,并且其中所述图形流由多个传输流数据包构成,并且构成所述图形流的每个传输流数据包具有相同的PID。

说明书 :

技术领域

本发明涉及一种记录介质,例如用于电影分销的BD-ROM,本发明还涉及一种用于这种记录介质的再现装置。更具体而言,本发明涉及交互控制技术的改进。

背景技术

长期以来人们就一直希望实现这样一种交互控制,即当再现视频流时按钮出现在显示屏上,并且根据用户对按钮进行的操作来进行再现。DVD是实现这种再现控制的突破性记录介质。通过使用时间戳建立按钮与视频流的同步出现,设置所述时间戳使按钮出现在视频流的再现时间轴上的特定点。
然而,为了实现交互控制,将用于呈现按钮的图形数据记录到记录介质上是不够的。需要根据用户的操作或视频流再现的进行来控制再现装置从而改变每一个显示在屏幕上的按钮的状态。为了实现交互控制,在DVD上记录将音频和视频流多路复用到其中的流(视频对象),并且将包含状态控制信息的NAVI包设置在每一个VOBU的起始处。VOBU包括视频流的一个GOP,并且还包括音频数据和图形数据,其是对视频流的补充,从DVD中同时读取这二者和GOP。根据用户操作使用状态控制信息来改变每一个显示在屏幕上的按钮的状态。NAVI包包含定义传输率和缓冲器大小的信息,每一个流在处理GOP时需要该信息。由于DVD将状态信息储存在NAVI包中,所以可以利用GOP的时间精确性来改变按钮状态。图1示出上述交互控制。在该图中,最低层显示DVD上的数据分配。图中所示状态控制信息包含在NAVI包中。在GOP的时限期间状态控制信息仍然是有效的,NAVI包属于该GOP。每一个图形对象包含在PES数据包中,并且与图像同时显示,该图像与图形对象同步。例如在日本专利NO.2813245中公开了这种现有技术。
这里,应该注意的是,在DVD授权时,直到对视频、音频和图形数据进行编码并且准备多路复用到一个VOB中时才确定GOP和VOBU的结构。多路复用是授权的最后阶段。即,在该最后阶段之前不能将状态控制信息合并到VOB中,由此在这之前的任何时候都不能对按钮如何在显示屏上变化进行测试。因此,经常出现这样的情况,即在出货之前发现有缺陷并且迫使开发商仓促地进行改正。另外,在测试时间不足的情况下,将复杂动画按钮合并到电影中是危险的。由于上述原因,在当前授权中通常合并相对简单的按钮,例如响应用户操作而改变颜色的按钮。

发明内容

本发明的目的是提供一种记录介质,该记录介质允许按钮状态改变以便在授权的早期对其进行测试。
当考虑DVD数据读取速度时将状态控制信息存储在每一个VOBU的NAVI包中是一个有效方案。这是因为简单通过读取NAVI包来从DVD中读取状态控制信息,从而使得读取所需的带宽很低。
然而,当考虑BD-ROM的读取速度时,此方案就不是那么有效。BD-ROM的读取速度远远高于DVD的读取速度,从而限制带宽不再重要。
鉴于记录介质的进步以及为了实现上述目的,根据本发明的记录介质将数字流记录在其上,视频流和图形流被多路复用到该数字流中。图形流包括结合在其中的图形数据和状态控制信息。图形数据用来构成交互显示。状态控制信息用来使交互显示响应视频流的再现进程和用户操作而被改变为不同的状态。根据本发明的记录介质,用于使按钮状态改变的信息与图形数据结合成图形流。这样,一产生图形流,就进行有效性测试以检查按钮状态如何根据再现进程而改变。不再需要等待视频流编码或流多路复用的完成。由于可以在授权的早期(先于流多路复用)进行按钮状态改变的验证测试,所以可以减小这种令人不快的可能性:就在要发货前在记录介质中发现有错误并且迫使开发商仓促改正。而且,由于对图形流进行独立验证测试而与其他流无关,所以为将复杂动画按钮合并到电影中提供更好的环境。
这里,多个显示组中的每一个中的状态控制信息可以包括更新标志。当设为ON时,更新标志表示除按钮命令之外,对于状态控制信息和图形数据该显示组与紧挨在其之前的显示组一致。当设为OFF时,更新标志表示对于状态控制信息和图形数据该显示组与紧挨在其之前的显示组一致。一激活交互显示上的相关按钮就可以通过再现装置执行按钮命令。
利用上述状态结构,产生的标题使得根据按钮命令再现分支到多个再现路径中的一个。例如,标题是答问比赛,并且两个显示组提出供用户回答的问题。可以构造标题以使得当用户反应迟缓时,分支到用户的越来越多的不利的再现路径中。
这里,n个按钮中的每一个可以具有指定给其的数字。n条按钮信息中的每一条可以包括指定给相关按钮的数字和标志,该标志表示利用所述数字按钮是否是用数字可选的。利用这种结构,可以将离散数字指定给按钮,这对于产生如棒球运动员名单这样的标题来说是方便的。
更具体地讲,准备这种按钮命令使得再现分支到显示棒球运动员比赛的情景。另外,将运动员号码指定给按钮命令。通过这种设置,通过运动员号码的数字输入接受到特定棒球运动员情景的再现路径。

附图说明

图1所示为DVD上的交互控制图;
图2A所示为根据本发明的记录介质的使用模式图;
图2B所示为遥控器400的键的示图,该遥控器400用于接收用户对交互显示的操作;
图3所示为BD-ROM的结构图;
图4示意性地示出AV剪辑的结构图;
图5所示为剪辑信息的内部结构图;
图6所示为播放列表信息的内部结构图;
图7示意性示出通过播放列表信息的间接参考图;
图8A所示为图形流的结构图;
图8B所示为ICS和ODS的内部结构图;
图9所示为由各种类型的功能段定义的逻辑结构图;
图10A所示为定义图形对象的ODS的数据结构图;
图10B所示为PDS的数据结构图;
图11所示为交互构成段的数据结构图;
图12所示为包含在DS中的ODS和ICS之间的关系图;
图13所示为在任意画面ptl显示时的合成屏幕图;
图14所示为ICS中的按钮信息设置的实例图;
图15所示为按钮A-D的按钮状态转换图;
图16所示为由ODS11、21、31和41定义的图形再定位的实例图;
图17所示为由与按钮A有关的ODS11-19定义的图形表示的实例图;
图18所示为包括在DS中的ICS和ODS的实例图;
图19所示为DS中的ODS和按钮状态组的顺序图;
图20所示为在由如图19所示的按钮状态组所定义的交互显示上的按钮状态转换图;
图21所示为DS中的ODS的顺序图;
图22所示为由ICS定义的同步显示的时序图;
图23所示为在多个ODS构成初始交互显示并且default_selected_button_number是有效的情况下,DTS和PTS的设置图;
图24所示为在多个ODS构成初始交互显示并且default_selected_button_number是无效的情况下,DTS和PTS的设置图;
图25所示为再现装置的内部结构图;
图26是由再现装置执行的流水线处理的时序图;
图27是在没有指定缺省选择按钮的情况下,由再现装置执行的流水线处理的时序图;
图28是用于执行LinkPL功能的控制器操作的流程图;
图29是功能段装载处理的流程图;
图30所示为在跳过操作时如何执行装载处理的示图;
图31所示为如何将DS 10装载到再现装置的编码数据缓冲器13中的示图;
图32所示为正常再现的示图;
图33所示为当如图32所示执行正常再现时如何装载DS1、10、20的示图;
图34是由图形控制器17执行的处理的主程序的流程图;
图35是基于时间戳的同步控制的流程图;
图36所示为图形平面8的流程图;
图37是用于自动激活缺省选择按钮的处理的流程图;
图38是用于动画显示的处理的流程图;
图39是UO处理的流程图;
图40是当前按钮变化处理的流程图;
图41是数字输入处理的流程图;
图42所示为能够产生卡嗒声的再现装置的内部结构图;
图43所示为用于再现卡嗒声的ICS的数据结构图;
图44A所示为包括button_info(1)和button_info(2)的状态控制信息的示图;
图44B所示为包括状态控制信息的ICS的读取处理的示图;
图44C所示为在交互显示上呈对角线排列的三个按钮(按钮A、B和C)的例子以及与这些按钮有关的按钮状态信息的例子的示图;
图45A和45B所示为根据读到预载存储器21的IC的卡嗒声数据的再现控制的示图;
图45C所示为在交互显示上水平排列的三个按钮(按钮A、B和C)的例子以及与这些按钮有关的按钮状态信息的例子的示图;
图46是根据本发明第三实施例的BD-ROM制造过程的流程图;
图47所示为根据本发明的一个修改的ICS的示图;以及
图48所示为定义用于遥控器的每一个键的卡嗒声的ICS的示图。

具体实施方式

(第一实施例)
下面对根据本发明第一实施例的记录介质进行说明。首先,对记录介质的使用进行说明,其是实施本发明的一种形式。图2A示出根据本发明的记录介质的使用模式。在图2中,BD-ROM(蓝光光盘.只读存储器)100是根据本发明的记录介质。BD-ROM 100用于为家庭影院系统提供电影,该家庭影院系统包括再现装置200、电视机300和遥控器400。遥控器400接收指示改变交互显示状态的用户操作,并且与根据本发明的记录介质紧密相关。图2B示出遥控器400的键。如该图所示,遥控器400具有上移键、下移键、右移键和左移键。显示在交互显示上的每个按钮具有三种状态:正常状态;选择状态;以及激活状态。上移键、下移键、右移键和左移键用来接收用于使按钮状态按照例如正常状态→选择状态→激活状态的顺序改变的用户操作。当按钮具有正常状态时,简单显示该按钮。当按钮具有选择状态时,该按钮当前被集中为用户操作但还没有被激活的结果。当按钮具有激活状态时,该按钮被激活。当在交互显示上特定按钮具有选择状态时,上移键用来将显示在当前所选择的按钮上方的按钮设为选择状态。下移键用来将显示在当前所选择的按钮下方的按钮设为选择状态。右移键用来将显示在当前所选择的按钮右侧的按钮设为选择状态。左移键将显示在当前所选择的按钮左侧的按钮设为选择状态。
激活键用来将具有选择状态的按钮设为激活状态(激活当前所选择的按钮)。数字键“0”到“9”用于数字选择从而将已经指定了输入值的按钮设为选择状态。“+10″键用来将数值10加在已输入的值上。注意“0”键和“+10”键都用来输入两位数的值。这样,“0”和“+10”键中的一个可以足以代替这二者。
在此结束对使用根据本发明的记录介质的说明。
接着,对记录介质的制作进行说明,其是实施本发明的另一种形式。可以通过改进BD-ROM的应用层来实现该记录介质。图3示出BD-ROM 100的实例结构。
在该图中,BD-ROM 100显示在第四级上,并且BD-ROM的轨道显示在第三级上。在该图中,轨道向外延伸成为直线,尽管轨道实际上是从BD-ROM的中心向外盘旋的。轨道包括引入区、卷区、以及引出区。卷区具有物理层、文件系统层和应用层的层模型。在目录结构中,第一级显示BD-ROM应用层的格式(应用格式)。如所示那样,BD-ROM在根目录下具有BDMV目录。BDMV目录包含文件,例如XXX.M2TS、XXX.CLPT和YYY.MPLS。可以通过创建如图所示的应用格式来制作本发明的BD-ROM。
现在,对在应用格式中使用的文件进行说明。首先,说明AV剪辑(clip)(XXX.M2TS文件)。
AV剪辑(XXX.N2TS)是遵循MPEG-TS(运动图像专家组.传输流)格式的数字流,并且通过多路复用视频流、一个或多个音频流、显示图形流、以及交互图形流来获得所述AV剪辑。视频流表示电影的视频。音频流表示电影的音频。显示图形流表示电影的子标题。交互图形流表示用于菜单再现的动态控制程序。图4示意性地示出AV剪辑的结构。
以如下方式获得中间级上的如图所示的AV剪辑。显示在上方第一级上的视频流包括多个视频帧(图像pj1、pj2、pj3、…),并且显示在上方第一级上的音频流包括多个音频帧。分别将视频帧和音频帧转换为显示在上方第二级上的PES数据包。进一步将PES数据包转换为显示在上方第三级上的TS数据包。同样地,分别将显示在下方第一级上的显示图形流和交互图形流转换为显示在下方第二级上的PES数据包,并且进一步转换为显示在下方第三级上的TS数据包。多路复用这些显示在上方第三级和下方第三级上的TS数据包以形成AV剪辑。
按照与计算机文件相同的方式将如上产生的AV剪辑分成多个扩展区,并且被记录到BD-ROM上。AV剪辑包括一个或多个存取单元,并且.AV剪辑的再现可以跳到对应于存取单元的点。存取单元包括一个GOP(图像组)以及与GOP同时读取的音频帧,并且是解码的最小单元。GOP包括三种类型的图像:双向预测图像(B图像),使用与过去和未来图像的相关性对其进行编码;预测图像(P图像),使用与过去图像的相关性对其进行编码;以及内图像(I图像),使用其自身的空间频率特性而不参考帧之间的相关性来对其进行编码。
剪辑信息(XXX.CLPI)是每一个AV剪辑的管理信息。图5示出剪辑信息的内部结构。由于AV剪辑是通过多路复用视频流和音频流来获得的并且在称为存取单元的单元中存取的,所以剪辑数据包括诸如视频流和音频流属性以及AV剪辑中的点等信息,可以对其执行跳过操作。在该图中,点划线表示引用剪辑信息的结构以便详细说明。如点划线11111所示,剪辑信息(XXX.CLPI)包括视频流和音频流的“属性信息”、以及作为用于搜索存取单元的参考表的“EP_map″。
如点划线hn2所示,属性数据包括视频流的属性(视频属性),属性的数量(数量),以及所有被多路复用在AV剪辑中的音频流的属性(音频属性#1-#m)。如点划线hn3所示,视频属性包括显示其中对视频流进行编码的编码方法的信息(编码)、构成视频流的图像的分辨率(分辨率)、纵横比(纵横)、以及帧频(帧频)。
如点划线hn4所示,音频流属性(音频属性#1-#m)的每一个包括显示其中对相应的音频流进行编码的编码方法的信息(编码)、音频流的信道数(Ch.)、音频流的语言(Lang.)、以及采样频率。
EP_map是用于通过时间来间接参考跳过操作中的可访问的点的地址的参考表。如点划线hn5所示,EP_map包括多个项(存取单元#1项、存取单元#2项、存取单元#3项、…)、以及项数(数目)。如点划线hn6所示,每个项示出再现开始时间和相应存取单元的地址(注意可以另外显示存取单元中的第一个I图象的大小(I-大小))。通过位于存取单元的起始处的图像的时间戳(显示时间戳)来显示再现开始时间。通过相应TS数据包的序列号(SPN:源数据包号)来显示地址。由于是变长编码,各包含GOP的存取单元在大小和再现周期上都不一致。然而,参考与存取单元相对应的项,可以搜索位于与任何给定的再现时间相对应的点上的存取单元,从而可以在所搜索的存取单元中从第一图像开始再现。注意文件名“XXX.CLPI”中的“XXX”与AV剪辑的名字相同,剪辑信息与该AV剪辑相对应。在该图中,AV剪辑的文件名是“XXX”,其意味着剪辑信息(XXX.CLPI)与AV剪辑(XXX M2TS)相对应。在此结束对剪辑信息的说明。接下来,说明播放列表信息。
YYY.MPLS(播放列表信息)是用作定义再现路径的播放列表的表,并且包括多条播放项信息(播放项信息#1、#2、#3、…#n)和播放项信息的数量(数目)。图6示出播放列表信息的内部结构。播放列表信息示出用于由播放项信息各自定义的再现的一个或多个逻辑段。如点划线hs1指示引用播放项信息的结构以便详细显示。如该图所示,播放项数据包括:“clip_information_file_name,显示AV中的再现段的文件名,再现段的起始-时间和终止-时间属于该AV剪辑;“clip_codec_identifier”显示对AV剪辑进行编码的编码方法;“in_time”显示与再现段的起始点相对应的时间;“out_time”,显示与再现段的终止点相对应的时间。
播放项信息的一个特征是其符号惯例。即,使用EP_map作为参考表,由通过时间的间接参考来定义再现段。图7是示意性地示出通过时间的间接参考。在该图中,AV剪辑包括多个存取单元。剪辑信息中的EP_map指定每个存取单元的扇区地址,如箭头ay1、ay2、ay3、以及ay4所示。箭头jy1、jy2、jy3、以及jy4中的每一个是间接参考存取单元的示意性表示。简而言之,每一条播放项信息具有经由EP_map通过时间指定的参考(箭头jy1、jy2、jy3、以及jy4)、包含在AV剪辑中的相应存取单元的地址。
由一组播放项信息-剪辑信息-AV剪辑指定的BD-ROM上的再现段称为“播放项”。由一组PL信息-剪辑信息-AV剪辑指定的BD-ROM上的再现逻辑单元称为“播放列表(在下文中称为PL)”。将记录在BD-ROM上的电影分割成PL的逻辑单元。由于将电影分割成逻辑单元,所以可以定义这种指定情景的PL,在所有这些情景中特定人物出现。以这种方式,独立地根据主电影,可以容易地制造另一部电影,其中人物总是出现。
由于记录在BD-ROM上的电影具有上述的逻辑结构,电影中的特定情景的AV。剪辑可以容易地“重复利用”或在另一部电影中使用。
接下来,对交互图形流进行说明。图8A所示为图形流的结构图。在第一级上,示出构成AV剪辑的一串TS数据包。在第二级上,示出构成图形流的一串PES数据包。通过连接TS数据包的有效载荷形成显示在第二级上的PES数据包,所述TS数据包在显示在第一级上的TS数据包串中具有预定的PID。注意不对显示图形流进行说明,因为它不是本发明的要点。
在第三级上,示出图形流的结构。图形流包括功能段,该功能段包括ICS(交互合成段)、PDS(调色板定义段)、ODS(对象定义段)、以及END(显示组段的结束)。在这些功能段中,ICS是屏幕合成段,而PDS、ODS、以及END是定义段。每一个功能段与PES数据包是一一对应,或一对多对应。即,在被转换为单一的PES数据包之后,一个功能段被记录在BD-ROM 100上,或被分割并被转换为多个PES数据包。
图8B所示为通过转换功能段来获得PES数据包的示图。如图8B所示,每一个PES数据包包括包头和有效负载。有效负载是功能段的实体,并且包头包含与该功能段有关的DTS和PTS。在下文中,包含在含有功能段的PES数据包的头部中的DTS和PTS称为该功能段的DTS和PTS。
这些不同类型的功能段定义如图9所示的逻辑结构。在该图中,功能段显示在第三级上,显示组显示在第二级上,并且时期(时期)显示在第一级上。
显示在第二级上的每一个显示组(以下为“DS”)是一组共同构成一个完整屏图形的功能段。虚线hk2表示DS,第三级上的功能段属于该DS。如从该图中所见的那样,一系列功能段,ICS-PDS-ODS-END构成一个DS。当从BD-ROM中读取这些构成DS的功能段时,再现装置就可以产生一屏图形。
显示在第一级上的时期指一段时间间隔,或者分配给所述时期的一组数据,在这段时间间隔内,在AV剪辑的再现时间轴上必须保持存储器管理的连续性。这里提到的存储器包括用于存储一屏图形的图形平面以及用于存储未压缩图形数据的对象缓冲器。连续的存储器管理是指在整个时期中既不除去图形平面也不除去对象缓冲器,并且仅仅在图形平面的预定矩形区域中除去和显示图形(除去是指清除整个图形平面和整个对象缓冲器)。在整个时期中固定该矩形区域的大小和位置。只要在图形平面的该固定矩形区域中除去和显示图形,就确保无缝再现。也就是说,时期是AV剪辑的再现时间轴上的时间单位,在这期间,确保无缝再现。为了改变图形平面中的图形显示区域,必须确定再现时间轴上的改变点,并且根据该点向前设置新的时期。在这种情况下,在两个时期之间的边界不是无缝的。
这里使用的无缝再现表示利用预定数量的视频帧来完成图形的除去/显示。在交互图形流的情况下,视频帧的数量是四到五。根据固定区域与整个图形平面的比率以及对象缓冲器和图形平面之间的传输率来确定视频帧的数量。
在该图中,虚线hk1和hk2表示时期,显示在第二级上的功能段属于该时期。示出一系列DS构成一个显示在第一级上的时期,该系列DS是时期起始DS、获得点DS、以及正常情况DS。这里,“时期起始”、“获得点”、以及“正常情况”是DS的类型。尽管在图9中获得点DS在正常情况DS之前,但是可以以相反的顺序设置它们。
“时期起始”DS提供显示效果“新显示”,并且表示新时期的开始。这样,时期起始DS包含下一个屏幕合成所需要的所有功能段。时期起始DS设置在AV剪辑中的点上,例如电影中一段的开始,其中可以对该AV剪辑执行跳过操作。
获得点DS提供显示效果“显示刷新”,并且与在前的时期起始DS有关。存在两种类型的获得点DS:“复制”和“继承”。复制类型DS与在前的时期起始DS完全一致。继承DS继承在前的时期起始DS的功能段,但具有不同的按钮命令。尽管不是时期的开始,但是获得点DS包含下一个屏幕合成所需要的所有功能段。这样,当从获得点DS开始再现时,可以可靠地显示图形。也就是说,获得点DS能够从时期的中点进行屏幕合成。
获得点DS设置在可以进行跳过操作的点中。这种点的例子包括可以通过时间搜索而指定的一个点。时间搜索是以分钟/秒为单位来确定再现点位置的操作,该再现点与用户输入的时间相对应。由于以诸如十分钟和十秒的相对较大的单位进行用户输入,所以可搜索的再现点位于10分钟和10秒的间隔内。通过将获得点DS设置在这种通过时间搜索可搜索到的点中,当进行时间搜索时可以平稳地显示图形流。
正常情况DS提供显示效果“显示更新”,并且只包含与在前屏幕合成的差异。例如,如果由DS(v)定义的按钮具有与由紧前一个DS(u)定义的按钮相同的图形表示,但具有不同的状态控制。在这种情况下,DS(v)只包含ICS或ICS和PDS,并且用作正常情况DS。通过这种设置,不要求正常情况DS包含重叠的ODS,这导致存储在BD-ROM上的数据量的减少。由于正常情况DS只包含差异,所以不能单独利用正常情况DS显示图形。
由上述DS定义的交互显示呈现出GUI组成部分。DS的交互性指的是能够根据用户操作来改变每个GUI组成部分的状态。在该实施例中,通过用户操作而进行交互的GUI组成部分称作按钮。每个按钮具有正常状态、选择状态和激活状态。使用多个未压缩的图形数据给出每个按钮状态,其被称为“图形对象”。一个按钮的一种状态与多个用于显示动画的图形对象有关。
现在,对定义段进行说明(ODS:对象定义段和PDS:调色板定义段)。
ODS是定义图形对象的信息,这将在后面进行说明。由于记录在BD-ROM上的AV剪辑的特征在于可与高清晰度电视相比的高图像质量,图形对象具有1920×1080像素的高分辨率。通过8位长的给定值定义每个像素的颜色,该给定值表示红色差分量(Cr值)、蓝色差分量(Cb值)、亮度分量(Y值)、以及透明度(T值)。该结构允许将每个像素设为16777216种颜色中任意256种颜色的一种。
ODS具有如图10A所示的数据结构。如该图所示,ODS包括以下字段:“segment_type”,表示该段的类型是ODS;“segment_length”表示ODS的数据长度;“Obiect_id”:在时期中唯一地标识与ODS有关的图形对象;“Obiect_version_number”:在时期中表示ODS的版本;“last_in_sequence_flag”;以及“object_data_fragment”,包含与部分或所有图形对象相对应的连续的一系列字节。
Object_id字段在时期中唯一地标识与ODS有关的图形对象。在由多个ODS定义的多个图形对象构成一系列动画的情况下,将序列obiect_id值分配给这些ODS。
现在更加详细地参考last_in_sequence_flag字段和object_data_fragment字段。由于对PES数据包的有效负载的限制,因此存在单个ODS不能执行构成一个按钮的一个未压缩图形数据的情况。如果情况果真如此,那么分割图形数据,并且由object_data_fragment字段中的ODS定义每一段。这里,除了随后一段的每一段的大小相等。即,最后一段的大小小于或等于以前的段的大小。包含这些图形对象的段的ODS顺次出现在DS中。Last_in_sequence_flag表示图形对象的结束。尽管上述数据结构ODS是以将各段没有空隙地存储在连续的PES数据包中的方法为基础,但是可以更换地将这些段存储在PES数据包中,从而使PES数据包之间留有一些空隙。这里结束对ODS的描述。
接下来,说明PDS。PDS是定义用于颜色转换的调色板的信息。图10B示出PDS的数据结构。如该图所示,每个PDS包括以下字段:“segment_type”,表示当设为值“0x15”时该段的类型是PDS;“segment_length”,表示PDS的数据长度;“pallet_id”,唯一地标识包含在PDS中的调色板;“palette_version_number”,在时期中表示PDS的版本;以及“pallet_entry”,表示色差红(Cr_value)、色差蓝(Cb_value)、亮度(Y_value)、以及透明度(T_value)。
接下来,说明ICS。ICS是定义交互显示的组成的功能段。ICS具有如图11所示的数据结构。如该图所示,ICS包括以下字段:“segment_type”、“segment_length”、“composition_number”、“composition_state”、“command_update_flag”、“composition_timeout_pts”、“selection_time_out_pts”、“UO_mask_table”、“animation_frame_rate_code”、“default_selected_button_number”、“default_selected_button_number”、以及一组“button_info(1)、(2)、(3)”。
将composition_number字段设为0-15中的一个值,该值表示更新DS,ICS属于该DS。
composition_state字段表示以ICS开始的DS是正常情况DS、获得点DS、或时期开始DS。
command_update_flag字段表示从在先前ICS中定义的那些按钮命令改变该ICS中的按钮命令。例如,ICS所属的DS是获得点DS,该ICS通常等于在紧前一个ICS中定义的那些按钮命令。然而,通过将command_update_flag设为ON,该ICS可以定义与在前一个ICS中定义的那些按钮命令不同的按钮命令。当不同的按钮命令与相同的图形对象相关时,command_update_flag设为ON。
composition_time_out_pts字段表示交互显示的结束时间。在结束时,交互组成不再有效,并且由此不再显示。利用再现时间轴上的视频流的帧准确度优先表示composition_time_out_pts。
selection_time_out_pts字段表示有效按钮选择周期的终止时间。在selection_time_out_pts时,激活由default_selected_button_number指定的按钮。selection_time_out_pts的值小于或等于composition_time_out_pts的值。利用再现时间轴上的视频流的帧准确度表示selection_time_out_pts。
UO_mask_table在DS期间确定用户操作的允许/禁止,ICS属于该DS。当将该字段设为“禁止”时,用户对再现装置的相应的操作是无效的。
animation_flame_rate_code字段规定应用于动画按钮的帧频。通过视频帧频除以animation_frame_rate_code字段的值给出动画帧频。当将该字段设为“00”时,针对处于非动画状态下的每个按钮仅仅显示由start_Object_id_XXX指定的图形对象。
当交互显示的表现开始时,default_selected_button_number字段表示缺省选择的按钮数。当将该字段设为值“0”时,自动激活由存储在再现装置的寄存器中的按钮数指定的按钮。在另一方面,当将该字段设为非“0”值时,该值表示有效的按钮数。
当在由selection_time_out_pts字段所定义的时间之前没有按钮被用户激活时,default_selected_button_number字段表示被自动激活的按钮。当将该字段设为“FF”时,在由selection_time_out_pts字段所定义的时间激活当前选择的按钮。当将该字段设为“00”时,没有按钮被自动激活。如果将该字段设为不同于“FF”和“00”的值时,该值被认为是有效按钮数。
button_info字段提供定义显示在交互显示上的按钮的信息。在该图中,点划线hp1表示引用。button_info(i)的数据结构以便更详细地显示。button_info(i)包含关于由ICS定义的button(i)的信息。以下,对构成button_info(i)的信息项进行说明。
button_number字段表示在ICS中唯一标识button(i)的值。
numerically_selectable_flag字段表示是否可以用数字选择button(i)。
auto_action_flag字段表示是否自动激活button(i)。当将auto_action_flag设为ON(位值为“1”)时,不将button(i)转变为选择状态而是直接转变为激活状态。在另一方面,当将auto_action_flag设为OFF(位值为“0”)时,不将button(i)转变为激活状态而是在被用户选择时转变为选择状态。
button_horizontal_position字段和button_vertical_position字段分别规定交互显示中的button(i)的左上方像素的水平和垂直位置。
当button(i)处于选择状态时,upper_button_numbe字段规定在按上移键时接收选择状态的按钮的按钮数。如果将该字段设为与button(i)相同的按钮数,则忽略用户对上移键的操作。
同样地,当button(i)处于选择状态时,lower_button_number字段、left_button_number字段、right_button_number字段分别规定在按下移键、左移键、以及右移键时接收选择状态的按钮的按钮数。如果将这些字段设为与button(i)相同的按钮数,则忽略用户对相应键的操作。
start_object_id_normal规定连续分配给一组ODS的object_id中的第一个,该组ODS构成处于正常状态下的button(i)的动画。
end_object_id_normal字段规定连续分配给一组ODS的object_id中的最后一个,该组构成处于正常状态下的button(i)的动画。如果end_object_id_normal字段规定与start_object_id_normal相同的值,则由该值标识的图形对象的静态图像表现为button(i)。
repeat_normal_flag字段规定是否将连续地重复处于正常状态下的button(i)的动画。
start_object_id_selected字段规定连续分配给一组ODS的object_id中的第一个,该组ODS构成处于选择状态下的button(i)的动画。如果end_object_id_selected字段规定与start_object_id_selected相同的值,则由该值标识的图形对象的静态图像表现为button(i)。
end_objectjd_selected字段规定连续分配给一组ODS的Object_jd中的最后一个,该组ODS构成处于选择状态下的button(i)的动画。
repeat_selected_flag字段规定是否将连续地重复处于选择状态下的button(i)的动画。
start_object_id activated字段规定连续分配给一组ODS的Object_id中的第一个,该组ODS构成处于激活状态下的button(i)的动画。
end_object_id_activated字段规定连续分配给一组ODS的object_id中的最后一个,该组ODS构成处于激活状态下的button(i)的动画。
接下来,对按钮命令进行说明。
当激活button(i)时,执行每一个按钮命令。
按钮命令包括指示再现装置再现PL或播放项的一个命令。这种指示再现装置再现PL或播放项的命令称作LinkPL命令。当执行该命令时,从由第二参数(argument)指定的点开始再现由第一参数指定的播放列表。
格式:LinkPL(第一参数、第二参数)
第一参数是指定将要被再现的PL的PL数。第二参数作为再现开始点指定PL中的播放项、章节、或标志。
用于指定播放项作为再现开始点的LinkPL功能是“PlayItem()处的LinkPL”。
用于指定章节作为再现开始点的LinkPL功能是“Chapter()处的LinkPL”。
用于指定标志作为再现开始点的LinkPL功能是“Mark()处的LinkPL”。
按钮命令还可以包括指示再现装置获得或设置装置状态的命令。通过64个播放器状态寄存器(它们的值称作PSR)和4096个通用寄存器(它们的值称作GPR)来表示再现装置的状态。利用如下命令(i)-(iv),获得设置到寄存器的特定值或寄存器的值。
(i)获得播放器状态寄存器命令的值
格式:获得播放器状态寄存器的值(参数)
该功能返回用参数指定的播放器状态寄存器的值。
(ii)设置播放器状态寄存器命令的值
格式:设置播放器状态寄存器的值(第一参数、第二参数)
该功能将用第一参数指定的播放器状态寄存器的值设置为第二参数。
(iii)获得通用寄存器命令的值
格式:获得通用寄存器的值(参数)
该功能返回用参数指定的通用寄存器的值。
(iv)设置通用寄存器命令的值
格式:设置通用寄存器的值(参数)
该功能将用第一参数指定的通用寄存器的值设置为第二参数。
在此结束对ICS结构的说明。接下来,对由ICS定义的交互控制的具体例子进行说明。例子涉及如图12所示的ODS和ICS。图12所示为包含在DS(n)中的ODS和ICS之间的关系。DS(n)包括ODS 11-19、21-29、31-39、41-49。ODS 11-19用于反映处于三个状态中的每一个状态下的按钮A。ODS 21-29用于反映处于三个状态中的每一个状态下的按钮B。ODS 31-39用于反映处于三个状态中的每一个状态下的按钮C。ODS 41-49用于反映处于三个状态中的每一个状态下的按钮D(参见该图中的右括弧)。ICS中的button_info(1)、(2)、(3)和(4)提供对按钮A-D的状态控制的说明(参见该图中的箭头bh1、bh2、bh3和bh4)。
假设将与包含在如图13所示的视频流中的图像pt1的显示时间同步地执行由ICS定义的控制。在这种情况下,图像pt1叠置(gs1)在由按钮A-D组成的交互显示tm1上从而产生合成屏gs2。以这种方式,与特定的视频图像同步显示由多个按钮组成的交互显示。这样,ICS使得可以以对于用户来说更逼真的方式显示按钮。
图14示出实现如图15所示的按钮A-D的状态转换的例子。在图15中,箭头hh1和hh2各在视觉上表示由button_info(1)中的neighbor_info()定义的状态转换。在neighbor_info()中,lower_button_number字段指定按钮C。因此,当按钮A处于选择状态时,用户对下移键进行操作(图中的up1),按钮C接收选择状态(图中的sj1)。同样地,right_button_number字段指定按钮B。因此,当按钮A处于选择状态时,用户对右移键进行操作(图中的up2),按钮B接收选择状态(图中的sj2)。
图15中的箭头hh3在视觉上表示由button_info(3)中的neighbor_info()定义的状态转换。在neighbor_info()中,upper_button_number字段指定按钮A。因此,当按钮C处于选择状态时,用户对上移键进行操作(图中的up3),使按钮A返回到选择状态。
接下来,对按钮A-D的图形显示进行说明。ODS 11、21、31以及41各显示图16所示的图像。与按钮A有关的ODS 11.19显示图17所示的图像。start_object_id_normal和end_object_id_normal字段分别指定ODS 11和13。因此,通过序列ODS 11-13以动画来显示处于正常状态下的按钮A。另外,在button_info(1)的selected_state_info()中,start_object_id_selected和end_object_id_selected字段分别指定ODS 14和16。因此,通过序列ODS 14-16以动画来显示处于选择状态下的按钮A。当用户将按钮A设为选择状态时,为按钮A显示的图像从ODS 11-13改变为ODS14-16。通过将repeat_normal_flag和repeat_selected_flag设为值“1”,连续重复ODS11-13和ODS14-16的动画,如在图中用“→A”、“A→”、“→B”“B→”所表示。
如上所述,按钮A-B的每一个都与可以用动画显示的ODS序列有关。这样,利用如上描述控制的ICS,实现这样的按钮状态控制,即用作按钮的人物图像响应于用户的操作来改变它的面部表情。
接下来,对numerically_selectable_flag字段的应用进行说明。图18所示为包括在DS中的ICS和ODS例子的示图。ODS 31-33表示三个棒球运动员的图像以及他们的名字和运动员号码,如图的上半部分所示。属于DS的ICS包括三条按钮信息,button_info(1)、(2)和(3)。button info(1)、(2)和(3)的start_object字段分别指定ODS31、ODS32和ODS33。同样地,分别将button_info(1)、(2)和(3)的button_number字段设为值“99”、“42”和“94”。这里,将button_info(1)、(2)和(3)的numerically_selectable_flag字段都设为值“1”。通过上述设置,由button_info(1)、(2)和(3)定义的每一个按钮都是用数字可选择的。当用户在遥控器400上输入值“99”时,用Beginner’s Luck先生的图像显示的按钮接收选择状态。可以通过连续按“4”键和“9”键或者通过连续按“9”键一次和“+10”键四次来输入值“99”。或者,当用户输入值“42”时,Careless Mistake先生的按钮接收选择状态。当用户输入值“94”时,Dead Stock先生的按钮接收选择状态。
这里,将button_info(1)、(2)和(3)的auto_action_flag字段设为值“1”。在这种情况下,当被选择时,上述三个按钮接收激活状态而不是选择状态,并且执行包括在button_into中的按钮命令(LinkPL(PL#21)、LinkPL(PL#22)、LinkPL(PL#23))。结果,再现所执行的按钮命令与其链接的PL#21、#22或#23。如果那些PL定义了上述运动员击球和投球的情景,则在输入与一个运动员号码相对应的数值时再现这些情景中的每一个。由于利用输入运动员号码,按钮是可选择的,所以对用户来说是很容易识别的,所以改善了用户的可操作性。
接下来,对DS中的ODS的顺序进行说明。如上所述,通过ICS将属于一个DS的ODS与一个按钮的每一个状态联系起来。根据每一个ODS与其关联的按钮状态来确定DS中的ODS的顺序。
更详细地,将属于一个DS的ODS分组成:(1)用于表示处于正常状态下的按钮的ODS;(2)用于表示处于选择状态下的按钮的ODS;以及(3)用于表示处于激活状态下的按钮的ODS。用于表示相应状态的每一组被称为“按钮状态组″。按照例如正常状态一选择状态一激活状态的顺序设置按钮状态组。如上所述,根据ODS与其关联的按钮状态确定DS中的ODS的顺序。
图19所示为DS中的ODS顺序的示图。在该图中,在第二级上显示DS中的以下三个按钮状态组:用于正常状态表示的按钮状态组(用于正常状态的ODS);用于选择状态表示的按钮状态组(用于选择状态的ODS);以及用于激活状态表示的按钮状态组(用于激活状态的ODS)。在该图中,按照正常状态一选择状态一激活状态的顺序设置按钮状态组。确定这一顺序从而使得再现装置首先读取构成第一交互显示的交互合成,然后读取只在更新后显示的交互合成。
图19示出由按钮状态组参照的在第一级上的图形对象An、Bn、Cn、Dn、As、Bs、Cs、Ds、Aa、Ba、Ca和Da。如在An、Bn、Cn.和Dn中的数字下标n表示处于正常状态下的各按钮。同样地,如在As、Bs、Cs、Ds中的数字下标s表示处于选择状态下的各按钮,如在Aa、Ba、Ca、和Da中的数字下标a表示处于激活状态下的各按钮。该图在第二级上示出按钮状态组,显示在第一级上的图形对象属于所述按钮状态组。在该图中,存在不止一个附有诸如“1”和“n”的数字下标的ODS,用以读取“ODS 1”和“ODS n”。然而,应该注意的是包括在N-ODS、S-ODS和A-ODS中的每一个ODS 1是不同的。这对于具有相似参考数字的附图来说是一样的。
图20所示为在由图19所示的按钮状态组定义的交互显示上的按钮状态转换。
如在该图中所示,交互显示具有多个状态,包括“初始状态”、“通过第一个用户动作的显示更新”以及“通过第二个用户动作的显示更新”。图中的箭头表示触发状态转变的用户动作。四个按钮A、B、C和D各具有正常状态、选择状态以及激活状态。为了呈现初始交互显示,需要为显示准备好用于处于正常状态下的三个按钮和处于选择状态下的一个按钮的图形对象。
当没有指定缺省选择按钮时,没有确定首先选择按钮.A-D中的哪一个。即使如此,一完成对用于每一个按钮的正常状态和选择状态的图形对象进行的解码就可以进行初始交互显示。鉴于这一观察,按照正常状态一选择状态一激活状态的顺序设置本实施例中的按钮状态组,如图19所示。通过这种设置,即使尚未读取用于激活状态的ODS并对其进行解码,也可以呈现初始交互显示。作为结果,缩短了在开始读取DS和完成呈现初始交互显示之间的持续时间。
参考图21,对如图16、17所示的ODS的顺序进行说明。图21所示为DS中的ODS的顺序。在该图中,用于正常状态的ODS包括ODS11-13、21-23、31-33以及41-43。用于选择状态的ODS包括ODS14-16、24-26、34-36以及44-46。用于激活状态的ODS包括ODS 17-19、27-29、37-39以及47-49。ODS11-13用于图17所示的人物图像的动画显示。同样地,ODS 21-23、31-33以及41-43用于其他人物图像的动画显示。这样,通过将由上述ODS组成的按钮状态组作为第一按钮状态组放置在DS中,即使在完成DS的读取之前也准备好了用于显示的初始交互显示。这确保了没有延迟地显示由动画按钮组成的交互显示。
接下来,对于当在多个按钮状态组中存在对ODS顺序的多重参考的ODS顺序进行说明。术语多重参考表示通过两条或多条ICS中的Normal_state_info、selected_state_info以及activated_state_info参考相同的object_id。例如,利用所述多重参考,用于反映处于正常状态下的按钮的特定图形对象通常用来反映处于选择状态下的另一个按钮。也就是说,共用图形对象,从而可以减少ODS的数量。这里,引出了关于具有多重参考的ODS属于哪一个按钮状态组的问题。更具体地,当一个ODS与一个处于正常状态下的按钮以及另一个处于选择状态下的按钮有关时,需要确定ODS是属于用于正常状态的按钮状态组还是属于用于选择状态的按钮状态组。在这种情况下,将ODS放置在第一个出现的按钮状态组中。例如,如果按钮状态组按照正常状态一选择状态一激活状态的顺序出现,则将正常状态和选择状态组都参考的ODS放置在正常状态组中。此外,将选择状态和激活状态组都参考的ODS放置在选择状态组中。在此结束对多重参考的ODS顺序进行的说明。
现在,对用于选择状态的按钮状态组中的ODS的顺序进行说明。在用于选择状态的按钮状态组中,应该将哪一个ODS放置在开始处取决于是否确定缺省的选择按钮。当将default_selected_button_number字段设为非“0”的有效值时,指定缺省的选择按钮。在这种情况下,将与缺省的选择按钮有关的ODS放置在按钮状态组的开始处。
当将ICS中的default_selected_button_number字段设为值“00”时,没有指定缺省的选择按钮。例如,在将DS多路复用到其中的AV剪辑用作多个再现路径的合并点的情况下,将default_selected_button_number字段设为值“00”。假设先前的再现路径与段1、2和3相对应,则用作合并点的DS用于表示与段1、2和3有关的按钮。在这种情况下,不能在default_selected_button_number字段中指定特定的按钮。
理想地,当在段1的再现之后呈现交互显示时,应该选择与段2有关的按钮作为缺省。同样地,在段2的再现之后,应该选择与段3有关的按钮作为缺省,并且在段3的再现之后应该选择与段4有关的按钮。也就是说,当需要根据采用哪一个再现路径来选择不同的按钮作为缺省时,将default_selected_button_number字段设为值“0”,以使其失效。在这种情况下,不需要将特定的按钮状态组ODS放置在开始处,因为没有选择特定的按钮作为缺省。
在此结束对ODS的顺序进行的说明。接下来,对在.AV剪辑的再现时间轴上如何分配具有上述的ICS和ODS的DS进行说明。时期是再现时间轴上的一段时间间隔,在此期间存储器管理是连续的。由于每一个时期包括一个或多个DS,所以如何在AV剪辑的再现时间轴上分配那些DS是重要的。这里提到的AV剪辑的再现时间轴是用于定义单独图像的解码时间和显示时间的时问轴,其中所述单独图像构成多路复用在AV剪辑中的视频流。用90KHz的时间准确度表示再现时间轴上的解码时间和显示时间。该90KHz的时间准确度对应于NTSC信号、PAL信号、Dolby AC-3以及MPEG音频的帧频的公倍数。附加在DS中的ICS和ODS上的DTS和PTS指定用于实现同步控制的再现时间轴上的定时。也就是说,通过利用附加在DS中的ICS和ODS上的DTS和PTS进行同步控制来在再现时间轴上分配DS。
首先,对利用ODS的DTS和PTS进行同步控制进行说明。
DTS示出一个时间,具有90KHz的时间准确度,在该时间,必须开始对ODS进行解码。PTS示出完成解码的截止时间。
ODS的解码不能立即完成,而要花费一些时间。为了明确显示对ODS进行解码的开始和结束时间,ODS的DTS和PTS示出解码开始时间和解码的截止时间。
PTS的值示出需要完成ODS(j)的解码以及在再现装置的对象缓冲器中需要使作为结果的未压缩图形对象有效的截止时间。
通过具有90KHz的时间准确度的DTS(DSn[ODS])来示出属于DS的任意ODS(j)的解码开始时间。这样,通过将可用于解码的最长时间加到DTS(DSn[ODS])值,来确定ODS(j)的解码截止时间。
使SIZE(DSn[ODSj])表示ODS(j)的大小,并且Rd表示ODS解码速率。然后解码所需的最长时间(单位为秒)是SIZE(DSn[ODSj])//Rd。
通过将这一最长时间转换为90KHz的准确度并且将结果加到ODS(j)的DTS,用90KHz的准确度计算由PTS显示的解码截止时间。
属于DS(n)的ODS(j)的PTS可以由下列公式表示:
PTS(DS[ODSj])=DTS(DSn[ODSj])+
90000×(SIZE(DSn[ODSj])//Rd)
接下来,对ICS中的PTS的值进行说明。
将ICS中的PTS设为通过将(1)在DS(n)的初始显示所需要的所有ODS当中解码时间最迟的ODS的PTS值;与(2)清除图形平面所用去的时间;以及与(3)将已解码的图形对象转移到图形平面所用去的时间相加起来而获得的值。
当在ICS中指定default_selected_button_number时,一完成ODS的解码就可以呈现初始交互显示,其中所述ODS与处于正常状态下的每一个按钮以及与处于选择状态下的特定的缺省按钮有关。用于反映处于选择状态下的每一个按钮的ODS称作S-ODS,并且解码开始时间是最早(即,在这种情况下,用于反映缺省选择按钮的ODS)的S-ODS称作S-ODSsfirst。指定该S-ODSsfirst的PTS值作为解码开始时间是最早的ODS的PTS值,并且用作ICS中的PTS的参考值。
当在ICS中没有指定default_selected_button_number时,不知道将首先选择哪一个按钮。这样,直到准备好反映处于正常状态以及选择状态下的每一个按钮时初始交互显示才可以用于显示。在用于反映包括在初始交互显示的每一个按钮的选择状态的S-ODS当中,解码开始时间最迟的ODS称作S-ODSslast。指定该S-ODSslast的PTS值作为解码开始时间最迟的ODS的PTS值,并且用作ICS中的PTS的参考值。
使PTS(DSn[S-ODSsfirst])表示S-ODSsfirst的解码截止时间,然后将PTS(DSn[ICS])设为通过(2)清除图形平面所用去的时间与(3)将已解码的图形对象反映到图形平面上所用去的时间,所获得的值。
使video_width和video_height表示图形平面的矩形区域的宽度和高度,在所述图形平面中反映图形对象。当图形平面的显示速率是128Mbps时,通过8×video_width×video_height//128000000来获得清除图形平面所用去的时间。利用90KHz的时间准确度,通过90000×(8×video_width×video_height//128000000height//128000000来表示上述清除图形平面所用去的时间(2)。
使∑SIZE(DSn[ICS.BUTTON[i]])表示由包含在ICS中的每一条按钮信息指定的图形对象的全部尺寸。当图形平面的显示速率是128Mbps时,通过∑SIZE(DSn[ICS.BUTTON[i]])//128000000来获得显示图形平面所用去的时间。利用90KHz的时间准确度,通过90000×(∑SIZE(DSn[ICS.BUTTON[i]])//128000000)来表示上述显示图形平面所用去的时间(3)。
根据上述公式,PTS(DSn[ICS])由下列公式表示:
PTS(DSn[ICS])≥PTS(DSn[S-ODSsfirst])+
90000×(8×video_width×video_height//128000000)+
90000×(∑SIZE(DSn[ICS.BUTTON[i]])//128000000)
注意当ICS中的default_selected_buaon_number是有效时,上述公式是可应用的。否则,需要满足下列公式。
PTS(DSn[ICS])≥PTS(DSn[S-ODSslast])+
90000×(8×video_width×video_height//128000000)+
90000×(∑SIZE(DSn[ics.BUTTON[i]])//128000000)
通过以上述方式设置PTS和DTS,实现同步显示。图22示出这种控制的例子。在该例子中,与视频流中的图像py1的显示时间同步显示按钮。为此目的,需要将ICS中的PTS设为与图像数据py1的显示点相对应的值。注意设置ICS中的DTS以显示由PTS所示的时间之前的时间。
需要在由ICS中的PTS所示的时间中减去平面清除的持续时间cd1和对象转移的持续时间td1而计算的时间之前完成对构成DS(n)的初始交互显示的ODS进行的解码。这样,需要将解码时间最迟的ODS的PTS设为与在该图中用黑色星号所标记的时间点相对应的值。此外,对ODS进行解码要用去持续时间dd1,从而需要将ODS的DTS设为比PTS早持续时间dd1的时间。
图22所示的例子是一种简化的情况:仅仅一个ODS用于与视频数据的重叠。在多个ODS用于呈现初始交互显示的情况下,需要如图23所示的那样设置ICS和ODS的PTS和DTS。
图23所示为在由多个ODS构成初始交互显示以及指定了缺省的选择按钮的情况下的DTS和PTS设置。假设对S-ODSsfirst进行解码用去持续时间dd1,S-ODSsfirst是在呈现初始交互显示所需要的所有ODS当中解码时间是最早的ODS。将该S-ODSsfirst的PTS(DSn[S-ODSsfirst])设为与持续时间dd1的结束相对应的值。
此外,为了呈现初始交互显示,必须清除图形平面并且必须传输已解码的图形对象。这样,必须将ICS的PTS(DSn[ICS])设为与在最早时通过将PTS(DSn[S-ODSsfirst])的值、平面清除的持续时间(90000×(8×video_width×video_height//128000000以及已解码的对象传输的持续时间(90000×(∑SIZE(DSn[ICS.BUTTON[i]])//128000000相加起来而计算的时间相对应的值。
图24所示为在由多个ODS构成初始交互显示以及没有指定缺省的选择按钮的情况下的DTS和PTS设置。这里,将PTS(DSn[S-ODSslast])设为与对S-ODSslast进行解码所用去的持续时间dd2的结束相对应的值,S-ODSslast是在呈现初始交互显示所需要的所有ODS当中解码时间是最迟的ODS。
此外,为了呈现初始交互显示,必须清除屏幕并且必须传输已解码的图形对象。这样,需要将ICS的PTS(DSn[ICS])设为与在最早时通过将PTS(DSn[S-ODSslast])的值、屏幕清除的持续时间(90000×(8×video_width×video_height//128000000)),以及已解码的对象传输的持续时间(90000×(∑SIZE(DSn[ICS.BUTTON[i]])//128000000))相加起来而计算的时间相对应的值。这里结束关于由ICS定义的同步控制的描述。
在DVD的情况下,在VOBU的时间内交互控制是有效的,其对应于视频流的GOP。然而,在BD-ROM的情况下,可以利用包括在时期中的ICS的PTS和DTS来任意设置交互控制的有效周期。也就是说,BD-ROM的交互控制与GOP无关。
注意通过ICS的PTS的同步控制不仅包括在再现时间轴上的特定点显示按钮,而且还包括在在再现时间轴上的特定持续时间内能得到弹出式菜单用于显示。弹出式菜单是在按遥控器400的菜单键时显示的菜单。在AV剪辑中特定图像的显示时间能得到弹出式菜单用于显示。这种控制也包括在由ICS的PTS定义的同步控制中。类似于用于按钮显示的ODS,对用于弹出式菜单显示的ODDS进行解码,并且在图形平面上显示已解码的对象。除非完成对图形平面的显示,否则不能对来自用户的菜单调用作出反应。为了允许弹出式菜单的同步显示,ICS的PTS示出可得到弹出显示的时间。
在此结束对根据本发明的第一实施例的记录介质进行的说明。下面说明根据本发明的第一实施例的再现装置。图25示出再现装置的内部结构。在该内部结构的基础上在工业上制造根据本发明的再现装置。再现装置大概是由三个部分组成:系统LSI、驱动装置、以及微型计算机系统。可以通过将这些部分安装在机柜上或装置的衬底上来制造该再现装置。系统LSI是集成电路,包括用于实现再现装置功能的各种处理单元。以上述方式制造的再现装置包括BD驱动器1、轨道缓冲器2、PID滤波器3、传输缓冲器4a、4b和4c、外围电路4d、视频解码器5、视频平面6、音频解码器7、图形平面8、CLUT单元9、加法器10、图形解码器12、编码数据缓冲器13、外围电路13a、流图形处理器14、对象缓冲器15、合成缓冲器16、图形控制器17、UO控制器18、播放器寄存器组19以及控制器20。
BD驱动器1执行BD-ROM的装载、读取和弹出,从而访问BD-ROM。
轨道缓冲器2是FIFO(先入先出)存储器。相应地,按照与TS数据包到达相同的顺序从轨道缓冲器2中除去从BD-ROM读取的TS数据包。
PID滤波器3对从轨道缓冲器2输出的TS数据包进行滤波。更具体地,PID滤波器3仅仅将具有预定PID的TS数据包传给传输缓冲器4a、4b和4c。在PID滤波器3内没有所需的缓冲。相应地,无延迟地将进入PID滤波器3的TS数据包写到传输缓冲器4a、4b和4c。
传输缓冲器4a、4b和4c是FIFO存储器,用于存储从PID滤波器3输出的TS数据包。
外围电路4d具有布线逻辑,用于将从传输缓冲器4a、4b和4c读取的TS数据包转变为功能段。然后将功能段存储在编码数据缓冲器13。
视频解码器5对从PID滤波器3输出的TS数据包进行解码以获得未压缩的图像,并且将获得的图像写到视频平面6上。
视频平面6是用于视频数据的平面存储器。
音频解码器7对从PID滤波器3输出的TS数据包进行解码,并且输出未压缩的音频数据。
图形平面8是具有一屏存储区的平面存储器,并且能够存储一屏未压缩的图形。
CLUT单元9根据在PDS中定义的Y、Cr、和Cb值来转换图形平面8上的未压缩图形的指针颜色。
加法器10使由CLUT单元9转换的未压缩图形乘以在PDS中定义的T值(透明度)。然后加法器10为在作为结果的未压缩图形和视频平面6上的未压缩图像数据中的相应像素执行加法,以输出合成图像。
图形解码器12对图像流进行解码以获得未压缩图形,并且将未压缩图形作为图形对象提供给图形平面8。作为对图形流进行解码的结果,子标题和菜单出现在屏幕上。该图形解码器12包括编码数据缓冲器13、外围电路13a、流图形处理器14、对象缓冲器15、合成缓冲器16以及图形控制器17。
编码数据缓冲器13用于存储功能段连同它们的DTS和PTS。通过从存储在传输缓冲器4a、4b和4c中的每一个TS数据包除去TS数据包的头部和PES数据包的头部以及顺次设置有效负载来获得功能段。与PES数据包一致地存储包含在所除去的TS数据包的头部和PES数据包的头部中的DTS和PTS。
外围电路13a具有布线逻辑,该布线逻辑用于将数据从编码数据缓冲器13传输到流图形处理器14,以及将数据从编码数据缓冲器13传输到合成缓冲器16。更具体地,当当前时间达到ODS的DTS时,外围电路13a将ODS从编码数据缓冲器13传输到流图形处理器14。此外,当当前时间达到由ICS或PDS的DTS所示的时间时,外围电路13a将ICS或PDS从编码数据缓冲器13传输到合成缓冲器16。
流图形处理器14对ODS进行解码以获得具有指针颜色的未压缩图形,并且将未压缩图形作为图形对象传输到对象缓冲器15。由流图形处理器14进行的解码在由与ODS有关的DTS所示的时间开始,并且在由也与ODS有关的PTS所示的解码截止时间结束。上述图形对象解码的解码速率Rd等于流图形处理器14的输出速率。
对象缓冲器15存储由流图形处理器14解码的图形对象。
合成缓冲器16用于存储ICS和PDS。
图形控制器17对存储在合成缓冲器16中的ICS进行解码,并且根据解码结果在由附加在ICS上的PTS所指定的时间执行控制。
UO控制器18检测用户在遥控器和再现装置的前面板上进行的操作,并且将显示所检测到的用户操作(以下称为UO(用户操作))的信息输出到控制器20。
播放器寄存器组19是一组设置在控制器20中的寄存器,并且包括32个播放器状态寄存器和32个通用寄存器。以下示出播放器状态寄存器各值(PRS)的含义。“PSR(x)”表示第x个播放器状态寄存器的值。
PSR(0):保留
PSR(1):将要被解码的音频流数
PSR(2):将要被解码的子标题图形流数
PSR(3):由用户设置的角度数
PSR(4):当前再现目标的标题数
PSR(5):当前再现目标的段数
PSR(6):当前再现目标的PL数
PSR(7):当前再现目标的播放项数
PSR(8):显示当前再现点的时间信息
PSR(9):导航定时器的计数
PSR(10):当前处于选择状态下的按钮数
PSR(11)-(12):保留
PSR(13):由用户设置的父级
PSR(14):针对视频的再现装置设置
PSR(15):针对音频的再现装置设置
PSR(16):用于音频的语言码
PSR(17):用于子标题的语言码
PSR(18):用于菜单说明的语言码
PSR(19)-(63):保留
在每一次显示属于AV剪辑的图像时更新PSR(8)。即,当再现装置显示新图像时,更新PSR(8)从而保持与新显示图像的显示开始时间(即,显示时间)相对应的值。参考PSR(8),当前再现点是已知的。
控制器20通过与图形解码器12的双向数据交换执行完整控制。从控制器20输出到图形解码器12的数据是由UO控制器18接收的UO。从图形解码器12输出到控制器20的数据是包含在ICS中的按钮命令。
具有上述结构的再现装置的部件执行流水线中的处理。
图26所示为ODS解码的流程图。在该图中,第四级示出记录在BD-ROM上的DS。第三级示出通过编码数据缓冲器13的ICS、PDS以及ODS的读取持续时间。第二级示出通过流图形处理器14的ODS的解码持续时间。第一级示出通过图形控制器17进行处理的持续时间。在该图中示出每一个ODS的解码开始时间,作为DTS11、DTS12、和DTS13。需要在由相应的DTS所指定的解码开始时间前将每一个ODS读到编码数据缓冲器13。因此,最迟就在到编码数据缓冲器13的ODS1的解码持续时间dp1之前,完成ODS1的读取。同样地,最迟就在ODS2的解码持续时间dp2之前,完成ODS(n)的读取。
在该图中示出每一个ODS的解码截止时间,作为PTS11、PTS12和PTS13。在PTS11所示的时间前完成通过流图形处理器14的ODS1的解码,并且在PTS12所示的时间前完成ODS(n)的解码。如上所述,在由ODS的相应DTS所示的时间前将每一个ODS读到编码数据缓冲器13,以及对所读取的ODS进行解码并在由ODS的相应PTS所示的时间前装载到对象缓冲器15。通过单个流图形处理器14流水线地执行上述处理。
在指定缺省选择按钮的情况下,一完成对用于正常状态的所有ODS和用于选择状态的第一个ODS进行的解码,就可在对象缓冲器15上得到呈现初始交互显示所需的所有图形对象。在该图中,在PTS13所示的时间,可得到呈现初始交互显示所需的所有图形对象。
在第一级,图形控制器17需要持续时间cd1以清除图形平面8,并且为将对象缓冲器15上的图形提供给图形平面8需要持续时间td1。由ICS中的button_horizontal_position和button_vertical_position字段指定图形平面8中用于显示的位置。也就是说,在通过将平面清除持续时间cd1以及已解码的图形对象的显示持续时间td1加到ODS的PTS13值上而计算的时间的结尾在图形平面8上获得构成交互显示的未压缩图形。CLUT单元9对未压缩图形进行颜色转换,并且加法器10将图形覆盖在用视频平面6保存的未压缩图像上。作为结果,产生合成图像。
通过上述设置,不用等待完成ODS的解码就呈现出初始交互显示,其中所述ODS属于用于选择状态和激活状态的按钮状态组。这样,与只在对DS中的所有ODS进行解码之后才呈现初始交互显示的情况相比,所述呈现提早了持续时间hy1,如图所示。
注意在该图中,存在不止一个附有诸如“1”和“n”的数字下标的ODS,用以读取“ODS 1”和“ODS n”。然而,包括在N-ODS、S-ODS和A-ODS中的每一个ODS 1是不同的。这对于具有相似参考数字的附图来说是一样的。
在图形解码器12中,当图形控制器17清除和显示图形平面8时,流图形处理器14连续解码(显示在第二级上的ODS(n)、ODS 1、ODS(n)的解码持续时间)。由于即使在图形控制器17清除和显示图形平面8期间也连续对剩余的ODS进行解码,与不是这种情况相比,可较早地完成对剩余ODS进行的解码。这样,用户一操作就可以立即执行使用那些剩余ODS的交互显示的更新。作为这种流水线处理的结果,可以迅速地呈现初始交互显示和更新显示。
图26中的例子涉及指定缺省选择按钮的情况。图27所示为在没有指定缺省选择按钮的情况下,再现装置执行流水线处理的流程图。在这种情况下,一完成对用于正常状态和用于选择状态的所有ODS进行的解码,就可得到呈现初始交互显示所需的所有图形对象,并且将作为结果的对象装载到图形平面8。利用上述设置,不用等待完成对用于激活状态ODS进行的解码就呈现出初始交互显示。这样,与只在对DS中的所有ODS进行解码之后才呈现交互显示的情况相比,所述呈现提早了持续时间hy2,如图所示。
在此结束对再现装置的内部结构进行的说明。接下来,对控制器20和图形解码器12的实现进行说明。可以通过通用CPU执行如图28和29所示的步骤程序来实现控制器20。以下,参考图28和29对控制器20所执行的操作进行说明。
图28是用于执行LinkPL功能的控制器20所执行的操作的流程图。当对包括LinkPL功能的命令进行解码时,控制器20就如图20所示工作。
在该流程图中,将要处理的播放项和存取单元被分别表示为PI(y)和存取单元(v)。如该流程图所示,再现装置读取由LinkPL的参数所指定的PL(.mpls)(步骤S1),并且指定当前PL中的第一个PI作为PI(y)(步骤S2)。然后,再现装置读取由PI(y)中的clip_information_file_name字段所指定的剪辑信息(步骤S3)。
一读取剪辑信息,再现装置就使用包含在剪辑信息中的EP_map将PI(y)中的in_time字段的值转换为地址(步骤S4)。由所得到的地址指定的存取单元被指定为存取单元(v)(步骤S5)。再现装置使用包含在剪辑信息中的EP_map还将Out_time字段的值转换为地址(步骤S6)。由所得到的地址指定的存取单元被指定为存取单元(w)(步骤S7)。
一旦指定存取单元(v)和(w),再现装置就指示BD驱动器读取从(v)到(w)的存取单元(步骤S8),并且还指示视频解码器5、音频解码器7、图形解码器12对驻留在对应于PI(y)中的in_time字段到Out_time字段的地址中的数据进行解码(步骤S9)。
在步骤S11中,对该流程图进行结束判断从而察看PI(y)是否等于PI(z)。如果步骤S11的结果为“是”,则终止该流程图的处理。如果不是,将下一个播放项指定为PI(y)(步骤S12),并且处理返回到步骤S3。重复步骤S1-S10直到步骤S11的结果为“是″。
在步骤S10中,在读取存取单元的同时,将功能段装载到编码数据缓冲器13。
图29是为装载功能段执行的操作的流程图。在该流程图中,段(K)是表示利用存取单元读取的段(ICS、ODS或PDS)的变量,并且忽略标志表示是忽略段(K)还是装载段(K)。在该流程图中,在将忽略标志初始化为0(步骤S20)之后,为段(K)执行步骤S21到步骤S24以及步骤S27到步骤S35的循环(步骤S25和S26)。
在步骤S21中,再现装置判断段(K)是否是ICS。如果段(K)是ICS,则处理转到步骤S27和S28中的判断。
在步骤S27中,判断ICS中的segment_type字段是否被设为表示获得点DS的值。如果段(K)属于获得点DS,则处理转到步骤S28。在另一方面,如果段(K)属于时期开始DS或正常情况DS的任意一个,则处理转到步骤S33。
在步骤S28中,判断紧前一个DS是否存储在编码数据缓冲器13中。如果步骤S27的结果为“是”,则执行步骤S28。如果执行跳过操作,则紧前一个DS没有存储在编码数据缓冲器13中。在这种情况下,需要从获得点DS开始显示,从而处理转到步骤S30(步骤S28:否)。
另一方面,在紧前一个DS存储在编码数据缓冲器13中(步骤S28:是)的情况下,将忽略标志设为“1”(步骤S29),并且处理转到步骤S31。
在步骤S31中,判断command_update_flag字段是否被设为“1”。如果设为“1”(步骤S31:是),则当忽略其它数据时将按钮信息的按钮命令装载到编码数据缓冲器13中(步骤$32)。如果command_update_flag字段被设为“0”,则处理转到步骤S22。因此,忽略表示获得点的ICS(步骤S24)。
通过将忽略标志设为“1”,步骤S22的结果为“否”,从而忽略属于获得点DS的所有功能段。
在步骤S33中,判断ICS中的segment_type字段是否表示正常情况DS。如果段(K)属于时期开始DS,则在步骤S30中将忽略标志设为“0”。
如果将忽略标志设为“0”(步骤S22:是),则将段(K)装载到编码数据缓冲器13中(步骤S23)。
另一方面,如果段(K)属于正常情况DS,则处理转到步骤S34。类似于步骤S28,在步骤S34中,判断紧前一个DS是否存储在编码数据缓冲器13中。如果存储了前一个DS,则将忽略标志设为“0”(步骤S30)。否则,将忽略标志设为“1”(步骤S35)。通过如上设置忽略标志,如果前一个DS没有存储在再现装置的编码数据缓冲器13中,则忽略属于正常情况DS的功能段。
在每一条按钮信息(1)、(2)和(3)中的auto_action_flag字段被设为“1”的情况下,三个按钮进入到激活状态而不是选择状态,并执行按钮信息中的按钮命令(LinkPL(PL#21)、LinkPL(PL#22)、以及LinkPL(PL#23))。例如,假设按钮命令与其联系的PL#21、PL#22以及PL#23是棒球运到员击球和投球的情景,那么一旦数字输入相应的运到员号码就再现那些情景。由于通过输入运到员号码进行选择,这对于用户来说是容易识别的,所以进一步提高了用户的可操作性。
现在,对在图30所示的例子中如何读取DS进行说明。在该例子中,利用视频数据多路复用三个DS(DS1、DS10和DS20)。在DS1中,其是三个DS中的第一个,segment_type字段表示时期开始,将command_update_flag字段设为“0”,并且包括按钮命令flagLinkPL(PL#5)。
DS10是对DS1的复制。在DS10中,将segment_type字段设为表示获得点DS的值,将command_update_flag字段设为“0”,并且包括按钮命令LinkPL(PL#5)。
从DS1继承DS20,并且它的segment_type字段值表示获得点DS。DS20与DS1的不同之处在于按钮命令LinkPL(PL#10),从而对按钮命令不同的信号将command_update_flag设为“1”。
假设跳过操作执行到AV剪辑中的图像pt10,其中利用视频数据多路复用上述三个DS。在这种情况下,对最靠近跳终点的DS10进行处理,如图29所示。具体地,步骤S27中的判断结果是:segrnent_type是获得点DS,但前一个DS没有存储在编码数据缓冲器13中。相应地,将忽略标志设为0。作为结果,将DS10装载到编码数据缓冲器13中,如图31所示。另一方面,假设跳过操作执行到晚于DS10的点上的图像(图30中的箭头hst1)。在这种情况下,将DS10之后的DS20装载到编码数据缓冲器13中(图31中的箭头hst2)。
图33示出当执行正常再现时如何装载DS1、DS10和DS20,如图32所示。在三个DS中,将segment_type字段表示时期开始的DS的DS1装载到编码数据缓冲器13中(S23)。然而,对于segment_type字段表示获得点DS的DS10,将忽略标志设为“1”(步骤S29)。因此,不将DS10的功能段装载到编码数据缓冲器13中而是将其忽略(步骤S24)。至于DS20,segment_type字段表示获得点DS,但将command_update_flag设为“1”。这样步骤S31的结果为“是”。因此,将按钮命令装载到编码数据缓冲器13中,由此取代当前存储在DS的ICS中的按钮命令。然而,将忽略标志设为“1”,由此不装载除按钮命令之外的数据,而是将其忽略。
通过上述操作,在显示DS20之前,和与DS10相同的图形有关的按钮命令LinkPL(#5)已经被LinkPL(#10)取代了。通过这种取代,可以执行和与再现相同的按钮变化有关的按钮命令这样的控制。
接下来,对通过图形控制器17执行的处理进行说明。图34示出由图形控制器17执行的处理的主程序。流程图显示重复以下三个操作:时间戳同步(步骤S35);动画显示(步骤S36);以及UO处理(步骤S37)。
图35是根据时间戳执行同步控制的流程图。在该流程图中,在步骤S43-S47中判断是否已经发生了特殊事件。每一个事件的发生调用相应子程序,其中在执行完预定的步骤之后所述子程序返回到主程序。
在步骤S43中,判断当前再现点是否已经达到ODS的PTS所示的时间。如果判断是肯定的,则执行到图形平面8的显示(步骤S51),然后处理返回到主程序。
在步骤S45中,判断当前再现点是否已经达到ICS的PTS。如果判断是肯定的,则使图形平面8开始输出所存储的内容。输出到进行颜色转换的CLUT单元9。在颜色转换之后,交互合成与存储在视频平面6中的内容重叠,由此呈现初始交互显示(步骤S52)。然后,将变量q设为值“1”(步骤S53),并且处理返回到主程序。注意变量q是全局变量(即,在多个流程图中始终有效的变量),并且将在后面对其含义进行说明。
在步骤S46和S47中,判断当前再现点是否已经达到由ICS中的时间信息所指定的时间。
在步骤S46中,判断当前再现点是否已经达到由selection_time_out_pts所示的时间。如果判断结果是肯定的,则激活由default_activated_button_number所指定的按钮,然后处理返回到主程序(步骤S54)。
在步骤S47中,判断当前再现点是否已经达到由composition_time_out_pts所指定的时间。如果判断结果是肯定的,则在清除图形平面之后处理返回到主程序(步骤S55)。在此结束对根据时间戳的同步进行的说明。在同步中,步骤S51和S54调用子程序。下面参考附图36对步骤S51的子程序进行说明。
图36是图形平面8的显示的流程图。在呈现初始交互显示之前需要完成到图形平面8的显示。在该图中,ODSx表示具有与当前再现点相对应的PTS的ODS,由PRS(10)显示。在步骤S61-S63中,判断该ODS是否是初始交互显示所需要的ODS中的最后一个。如果该ODS是最后一个,则执行步骤S64-S72。
在步骤S61中,判断default_selected_button_number字段是否具有有效值。如果该字段是有效的,则在步骤S63中判断ODSx是否是S-ODSsfirst。如果步骤S63的结果为“否”,则终止该流程图的处理并且返回到主程序。
如果步骤S61的结果为“否”,则在步骤S62中判断ODSx是否是S-ODSslast。如果步骤S62的结果为“否”,则终止该流程图的处理并且返回到主程序。
在步骤S64中,判断ICS中的segment_type字段是否表示时期开始DS。如果表示时期开始DS,则执行步骤S65以清除图形平面8,并且执行步骤S66-S72。清除图形平面8所用去的这段时间是图23和24所示的持续时间cd1。如果segment_type字段不表示时期开始DS,则跳过步骤S65转到步骤S66-S72。
步骤S66-S72形成一个循环,其中依次处理ICS中的每条按钮信息(步骤S66和S67)。在该循环中,要处理的当前按钮信息由buttonjnfo(p)表示。在步骤S68中,判断button_info(p)是否对应于由default_selected_button_number指定的缺省选择按钮。
如果button_info(p)不对应于缺省选择按钮,则在存储在对象缓冲器15中的图形对象当中,将在button_info(p)的start_objecdt_id_normal字段中指定的图形对象指定为图形对象(p)(步骤S69)。
另一方面,如果button_info(p)对应于缺省选择按钮,则在存储在对象缓冲器15中的图形对象当中,将由button_info(p)的start_oblecdt_id_selected字段所指定的图形对象指定为图形对象(p)(步骤S70)。然后,将按钮(p)指定为当前按钮(步骤S71)。当前按钮指的是在当前呈现的交互显示中具有选择状态的按钮。再现装置将当前按钮的ID存储在PRS(10)中。
一旦通过步骤S69和S70指定图形对象(p),则将图形对象(p)显示到图形平面8上由button_horizontal_position和button_vertical_position字段指定的位置上(步骤S72)。针对ICS中的每条按钮信息重复上述处理。在这种情况下,在与每一个按钮状态有关的多个图形对象当中,针对图形平面8上的每一个按钮显示第一个图形对象。用于显示存储在对象缓冲器15中的所有图形对象所用去的这段时间是图23和24所示的持续时间td1。在此结束对步骤S51进行的说明。接下来,参考图37,对在步骤S54中调用的子程序进行说明。
图37是用于自动激活缺省选择按钮的处理的流程图。首先,判断default_activated_button_number字段是否被设为“00”或“FF”(步骤S91)。如果该字段被设为“00”,则处理返回到主程序而不执行任何操作。另一方面,如果default_activated_button_number被设为“FF”,则将当前按钮指定为按钮(u)(步骤S95)。
如果该字段的值既不是“00”也不是“FF”,则将由default_activated_button_number字段指定的按钮指定为按钮(u)(步骤S92)并激活按钮(u)(步骤S93)。通过显示来自button_info(u)中的start_object_id_activated字段所指定的图形对象到end_Object_id_activated字段所指定的图形对象的一序列图形对象来执行按钮状态转换。button_horizontal_position和button_vertical_position字段表示图形平面8上的显示位置。然后,执行与按钮(u)有关的按钮命令(步骤S94),并且处理返回到主程序。
通过上述操作,处于选择状态下的按钮在预定的持续时间结束时进入到激活状态。在此结束对图37所示的流程图进行的说明。
接下来,对菜单中的按钮动画显示进行说明(步骤S36)。图38是用于动画显示的处理的流程图。
通过将在每条button_info的start_object_id_normal和start_Object_id_selected字段中指定的图形对象显示到图形平面8上,来呈现初始显示。为了以动画显示按钮,对于步骤S35-S37的循环的每一次重复,通过用按钮的任意一帧(第q个图形对象)重写每一个按钮来更新图形平面8。更具体地讲,通过依次显示由每条button_info中的normal_state_info和selected_state_info指定的图形对象来更新图形平面8。这里,变量q用来指在每条按钮信息中的normal_state_info和selected_state_info字段中指定的单独图形对象。
现在,参考图38,对用于进行动画显示的处理进行说明。在该流程图中,在以相同数量的帧显示每个按钮的动画的前提下,对显示处理进行说明。这是为了使说明简明。采用不同数量的帧显示按钮需要更复杂的处理。此外,还是为了使说明简明,假设repeat_normal_flag和repeat_selected_flag字段都被设为要求连续重复动画的值。
在步骤S80中,判断是否呈现初始显示。如果没有呈现初始显示,则处理返回到主程序而不执行任何操作。如果已经呈现初始显示,则执行步骤S81-S90。步骤S81-S90形成一个循环,其中针对包含在ICS中的每条button_info重复步骤S83-S87(步骤S81和S82)。
在步骤S83中,判断button_info(p)是否对应于当前按钮。
如果button_into(p)不对应于当前按钮,则将变量q加在button_info(p)中的start_Objecdt_id_normal的值上以获得ID(q)(步骤S84)。
如果button_info(p)对应于当前按钮,则将变量q加在button_info(p)中的start_objecdt_id_selected字段的值上以获得ID(q)(步骤S85)。
在存储在对象缓冲器15中的图形对象当中,将图形对象(q)显示到图形平面8上由button_info(p)中的button_horizontal_posifion和button_vertical_posidon字段所指定的位置上(步骤S87)。针对ICS中的每条button_info重复上述操作(步骤S81和S82)。
通过上述循环,在用于显示处于选择状态下的当前按钮和处于正常状态下的其它按钮的图形对象当中,针对每一个按钮将第q个图形对象显示在图形平面8上。
在步骤S88中,判断end_object_id_normal字段的值是否已经达到由start_objecdt_id_normal字段+q所获得的值(步骤S89)。如果判断的结果是肯定的,则将变量口初始化为“0”并且处理返回到主程序(步骤S89)。如果判断的结果是否定的,则将变量口加1,并且处理返回到主程序(步骤S90)。
通过步骤S80-S90,在每次执行步骤S35-S37时使用新的图形对象来更新交互显示上的每个按钮的显示。通过多次重复步骤S35-S37,以动画显示每个按钮。当以动画显示按钮时,图形控制器17判断关于以由animation_frame_rate_code显示的速率呈现图形对象。当可应用时也在其它的流程图中进行这种判断。在此结束对用于动画显示的处理进行的说明。接下来,参考图39,对主程序的步骤S37所示的UO处理进行说明。
图39是UO处理的流程图。在该流程图中,在步骤S100-S103判断是否已经发生特定事件。每个事件的发生都调用相应的子程序,所述子程序在执行完预定步骤后返回到主程序。在步骤S100中,判断UO_mask_table字段是否被设为“1”。如果该字段被设为“1”,则处理返回到主程序而不执行任何操作。
在步骤S101中,判断是否按了上移键、下移键、左移键和右移键中的任何一个键。在按下这些键的任何一个时,另外一个键被相应地指定为当前按钮(步骤S104),随后判断新指定的当前按钮的auto_action_flag是否被设为“01”(步骤S108)。如果auto_action_flag没有被设为“01”,则处理返回到主程序。另一方面,如果auto_action_flag被设为“01”,则处理转到步骤S105。
在步骤S102中,判断是否按了激活键。在按下激活键时,在步骤S105中激活当前按钮。通过将从当前按钮的start_object_id_activated字段所指定的图形对象到end_Object_id_activated字段所指定的图形对象的一序列图形对象显示在图形平面8上来执行这种按钮状态转换。由当前按钮的button_horizontal_position和button_vertical_position字段指定图形平面8中的显示位置。通过这种设置,实现这样的控制:用作按钮的人物看上去响应用户的操作而移动。在按钮状态转变之后,执行与当前按钮有关的按钮命令(步骤S106)。
在步骤S103中,判断是否进行了数字输入。如果进行了数字输入(步骤S107),则根据输入的数字执行操作(步骤S107),并且处理返回到主程序。在图39中,步骤S104和S107各调用子程序。图40和41示出子程序。现在,对那些流程图进行说明。
图40是当前按钮变化处理的流程图。在以相同数量的帧显示每个按钮动画的前提下,对该流程图进行说明。这是为了使说明简明。采用不同数量的帧显示按钮需要更复杂的处理。首先,确定当前按钮的neighbor_info中的upper_button_number、lower_button_number、left_button_number以及right_button_number中的哪一个与被按的键相对应(步骤S110)。
使按钮(i)表示当前按钮,而按钮(j)表示下一个被指定为当前按钮的按钮(步骤S111)。在步骤S112中,判断在步骤S111中被指定的按钮(j)是否等于按钮(i)。如果是,则处理返回到主程序而不执行任何操作。如果不是,则执行步骤S113-S120。在步骤S113-S120中,使按钮(j)进入到选择状态,并且使按钮(i)回到正常状态。以动画显示每一个按钮状态。为此,首先将变量r初始化为“0”。变量r用来指动画的单独帧。在步骤S113-S1119中,将与处于正常状态下的按钮(i)有关的图形对象中的第r个和与处于选择状态下的按钮(j)有关的图形对象中的第r个反复显示到图形平面上。
具体地,通过将变量r加到button info(i)的start_objecdt_id_normal字段的值上来计算ID(r)(步骤S114)。在以上述方式计算ID(r)之后,在存储在对象缓冲器15中的图形对象当中,将具有ID(r)的图形对象显示到图形平面8上由button_info(i)的button_horizont_position和button_vertical_position字段所示的位置上(步骤S115)。
接下来,通过将变量r加到button info(j)的start_Objecdt_id_selected字段的值上来计算ID(r)(步骤S116)。在以上述方式获得ID(r)之后,在存储在对象缓冲器15中的图形对象当中,将具有ID(r)的图形对象显示到图形平面8上由button_info(j)的button_horizontal_position和button_vertical_position字段所示的位置上(步骤S117)。
在步骤S118中,判断通过将变量r加到start_object_id_normal字段的值上而获得的ID是否等于end_object_id_normal字段的值。如果这两个值不相等,则增加变量r(步骤S120),并且处理返回到步骤S114。重复步骤S114-S120直到步骤S118的判断结果为“是”。通过重复上述步骤,实现按钮状态转变从而用作按钮的人物响应用户的操作而移动。当步骤S118的判断结果为“是”时,现在将按钮(j)指定为当前按钮(步骤S119),并且处理返回到主程序。
图41是数字输入处理的流程图。首先,判断是否存在一条button_number与输入数字匹配的button_info(j)(步骤S121)。接下来,判断button_info(j)中的numerically_seletable_flag字段是否被设为“1”(步骤S122)。如果步骤S121和S122的结果都为“是”,则判断button_info(j)中的auto_action_flag字段是否被设为“01”(步骤S123)。
如果auto_action_flag字段的值不是“01”,则从与按钮(j)有关的start_Object_id_selected字段所指定的图形对象到end_obiect_id_selected字段所指定的图形对象的一序列图形对象依次显示在由与按钮(j)有关的button_horizontal_position和button_vertical_position字段所指定的位置上(步骤S124)。作为结果,使按钮(j)进入到选择状态。然后,将按钮(j)指定为当前按钮(步骤S125),并且处理返回到主程序。
另一方面,如果auto_action_flag字段的值是“01”,则在步骤S126中激活当前按钮。通过将从与当前按钮有关的start_Object_id_activated字段所指定的图形对象到end_object_id_activated字段所指定的图形对象的一序列图形对象依次显示在图形平面8上由与当前按钮有关的button_horizontal_position和button_vertical_position字段所指定的位置上来执行这种按钮状态转换。在步骤S127中,执行与按钮(j)有关的按钮命令,并且处理返回到主程序。
如果步骤S121-S123中任意一个的结果为“否”,则处理返回到主程序。
在此结束图形控制器17为同步显示执行的处理。为了呈现交互显示,例如由用户操作引起的弹出显示,流图形处理器14和图形控制器17执行以下操作,其与针对同步显示而执行的步骤相似。通过这样做,图形平面8得到所需要的图形对象。在得到图形对象之后,直到当前再现点达到由附在ICS上的PTS所指定的时间才执行操作。如果UO控制器18在当前再现点已经过了由PTS指定的时间之后接收菜单调用的用户操作,则将存储在图形平面8中的图形对象输出到CLUT单元9,其中将所输出的图形对象与视频平面重叠。与UO同步执行的输出导致响应于菜单调用而呈现弹出显示。
如上所述,根据本发明实施例,将包括ICS和ODS的每一个时期多路复用在AV剪辑中。采用这种AV剪辑,容易地对交互控制进行描述从而再现装置与视频特定帧的显示同步执行特定操作。简而言之,本发明的AV剪辑适用于描述紧密限制到视频帧的显示时间的交互控制。此外,由于将时期多路复用在AV剪辑中,所以即使当要求再现数百个视频段时,也没有必要将所有相关的时期存到存储器中。利用视频包从BD-ROM中依此读取时期。这样,在当前再现的视频段的整个持续时间内,与该视频段有关的ICS都驻留在存储器中。一完成视频段,就从存储器中除去已再现的时期,然后将对应于下一个视频段的ICS装载到存储器中。由于将时期多路复用在.AV剪辑中,所以即使时期的数量超过好几百也可以使所需要的存储器的大小保持在最小值。
第二实施例
本发明的第二实施例涉及对在将按钮状态改变为选择状态和激活状态时再现的卡嗒声作出的改进。例如,假设用户与出现在电影中用作按钮的人物进行交互,如图16和17所示。在这种情况下,如果作为响应用户操作的卡嗒声来再现相应人物的声音,则用户可以本能地识别用户正在操作哪一个按钮。通过这种设置,用户可以更容易地识别按钮操作。这里,出现了如何同时再现卡嗒声和主声音的问题。这里使用的主声音是指电影的声音,例如人物的演讲以及电影中的背景音乐。将承载主声音的音频流与视频流和图形流多路复用到.AV剪辑中。音频解码器7对音频流进行解码。在再现卡嗒声时,需要对主音频进行消音。为此,需要暂停音频解码器7的操作。然而,暂停音频解码器7有产生噪声的危险。
为了避免由于暂停音频解码器7而产生噪声,再现装置具有如图42所示的内部结构。该图所示的结构与图25所示的结构相似,只是增加了预载存储器21和混合器22。
预载存储器21预先存储未压缩的LPCM数据以便作为卡嗒声而对其进行再现。
混合器22将存储在预载存储器21中的未压缩的LPCM数据与音频解码器7的输出进行混合。以包括在图形解码器12中的图形控制器17所指示的速率对数据进行混合(参见图25)。由于根据混合参数再现卡嗒声,所以不必暂停音频解码器7的输出。
在此结束对根据第二实施例的再现装置结构进行的说明。
为了同时再现主声音和卡嗒声,需要将记录在BD-ROM上的解压缩LPCM数据预先装载到预载存储器21。然而,不幸的是,解压缩LPCM数据相对较大。例如,不到十秒的16-bit/48KHz LPCM音频数据具有一兆字节的大小。
为了满足减小预载存储器21大小的要求,根据本发明的ICS具有如图43所示的数据结构。图43示出用于以上述方式再现卡嗒声的ICS的数据结构。该图中的数据结构与图11所示的数据结构的不同之处在于button_info。在每条button_info中,selected_state_info()和activated_state_info()各额外具有“audio_specification_info”字段和“audio_reproduction_control_info”字段。
audio_specification_info字段表示音频数据的文件名或ID,当将与button_info有关的按钮设为不同的状态时再现装置读取所述音频数据并将其再现为卡嗒声。将要装载到预载存储器21的卡嗒声数据由button_info的selected_state_info()和activated_state_info()指定。将装载到预载存储器的卡嗒声数据提供给混合器22。
audio_reproduction_control_info包括多个混合参数。每一个混合参数表示每一个音频分量与主声音混合的速率。每一个混合参数具有0-1.0范围内的值。卡嗒声数据在再现之前乘以由混合参数所示的值。在音频数据包括R和L分量的情况下,audio_reproduction_control_info字段表示R和L分量的分开的混合参数,从而指示混合器22以由那些参数所示的混合速率对音频数据进行混合。
通过提供audio_reproduction_control_info,当R分量表示按钮B的卡嗒声时,未压缩LPCM数据的L分量表示按钮A的卡嗒声。以这种方式,可以共同存储两个不同按钮的两种不同的卡嗒声作为一个未压缩LPCM数据。
除了上述共同存储的卡嗒声之外,button_info(1)还只包括为R分量的输出而设定的audio_reproduction_control_info,而button_info(2)还只包括为L分量的输出而设定的audio_reproduction_control_info。通过这种设置,在按钮A的状态转变到选择状态的同时,根据button_info(1)的audio_reproduction_controL_info来再现未压缩LPCM数据的L分量,从而再现按钮A的卡嗒声。
同样地,在按钮B的状态转变到选择状态的同时,根据button_info(2)的audio_reproduction_control_info来再现未压缩LPCM数据的R分量,从而再现按钮B的卡嗒声。
参考图44和45,对使用上述ICS和再现装置再现卡嗒声的特殊例子进行说明。本例涉及图44A和44B所示的状态控制信息。图44A所示的状态控制信息包括button_info(1)和button_info(2)。如图中箭头sy1和sy2所示,button_info(1)和button_info(2)指定同一个卡嗒声数据,其是立体声。button_info(1)的audio_reproduction_control_info包括L分量的混合参数,而button_info(2)的audio_reproduction_control_info包括R分量的混合参数。
图44B示出包括状态控制信息的ICS的读取过程。在ICS之前,将卡嗒声数据装载到预载存储器21。
图45A和45B示出根据读到预载存储器21的ICS的卡嗒声数据的再现控制。在与button_info(1)有关的按钮A处于选择状态的情况下,图形解码器12控制音频解码器7,从而根据button_info(1)的audio_reproduction_control_info再现卡嗒声数据。作为结果,再现立体卡嗒声数据的L分量。另一方面,在与button_info(2)有关的按钮B处于选择状态的情况下,图形解码器12控制音频解码器7,从而根据button_info(2)的audio_reproduction_control_info来再现卡嗒声数据。作为结果,再现立体卡嗒声数据的R分量。
通过上述控制,当选择相应按钮时,以立体声组成的一个卡嗒声数据通过再现L分量用作按钮A的卡嗒声并通过再现R分量用作按钮B的卡嗒声。
在此结束该特殊例子,其中共同存储多个卡嗒声作为一个未压缩LPCM数据。或者,可以设置本发明的button_info从而以声音来自不同方向的方式产生按钮操作的卡嗒声。下面参考图45对这种控制的特殊例子进行说明。图45C示出与三个水平排列的按钮(按钮A、按钮B、和按钮C)有关的三条button_info的例子。与按钮A有关的。button_info处在左侧,具有用于L分量的混合参数1.0。与按钮B有关的button_info处在中间,具有用于L和R分量的混合参数0.5。与按钮C有关的button_info处在右侧,具有用于R分量的混合参数1.0。利用上述混合参数,当选择左按钮A时,从左侧的扬声器输出卡嗒声。当选择右按钮C时,从右侧的扬声器输出卡嗒声。当选择中间按钮B时,从两个扬声器同等地输出卡嗒声。如上所述,可以设置button_info从而根据按钮在屏幕上的位置从不同的方向输出卡嗒声。来自对应于所按按钮位置的方向的卡嗒声增加了按钮操作的真实性。
如上所述,根据本实施例,将用于多个按钮中的每一个按钮的卡嗒声结合为一个立体卡嗒声数据。利用audio_specification_info和audio_reproduction_control_info,来再现同一个卡嗒声数据作为用于不同按钮的不同卡嗒声。通过这种结合,减少卡嗒声数据量,由此可以减小用于装载卡嗒声数据的预载存储器21的容量。
尽管以上给出的特殊例子是以立体卡嗒声数据为基础的,但是卡嗒声数据也可以是未压缩5.2-信道音频数据。图44C示出与图45C所示相似的例子。然而,在图44C的例子中,针对5.2-信道音频数据设置混合变量。这样,除了L和R分量之外,5.2-信道音频数据还包括中间、左后、以及右后分量。在交互显示上按钮A、B和C在对角上排列。在该例子中,与按钮A有关的button_info具有用于L分量的混合参数1.0。与按钮C有关的button_info具有用于右后分量的混合变量参数1.0。与按钮B有关的button_info具有分别用于L、R、中间、左后和右后分量的混合参数0.1、0.1、0.4、0.2、和0.2。通过这种设置,当选择左按钮A时,从右侧输出卡嗒声。当选择按钮B时,从左侧输出卡嗒声。当选择中间按钮B时,从所有方向输出卡嗒声。如上所述,根据所按按钮的位置改变卡嗒声来自的方向。这种设置增加了按钮操作的真实性(注意在上述例子中,或者可以将与按钮B有关的button_info设为具有用于中间分量的参数1.0和用于每一个其它分量的参数1.0)。
此外,除了音频解码器7之外,还可以提供另外一个音频解码器用于卡嗒声数据。在这种情况下,预载存储器21预先存储压缩的音频数据。响应按钮状态转换,用于卡嗒声数据的音频解码器从预载存储器21提取压缩的音频数据并对所提取的数据进行解码。提供用于卡嗒声数据的音频解码器允许预载存储器21存储压缩的音频数据,从而可以减小预载存储器21的容量。
第三实施例
本发明的第三实施例涉及BD-ROM的制造过程。图46是根据本发明的BD-ROM制造过程的流程图。
制造过程包括记录视频、声音等的材料制造步骤(步骤S201),使用授权装置产生应用格式的授权步骤(步骤S202),以及产生BD-ROM的原始主盘和执行冲压和压焊以完成BD-ROM的压盘步骤(步骤S203)。
BD-ROM授权步骤包括以下步骤S204-S209。
首先,在步骤S204中,将视频材料、音频材料以及辅助图形材料分别编码到视频流、音频流、以及图形流中。接下来,在步骤S205中,执行图形流的验证测试。如在第一实施例中所述,除了用于显示按钮的图形数据之外,图形流还包括按钮的状态控制信息。这使得可以独立验证图形流。如果检测到有任何错误(步骤S206-否),则对图形流进行适当的修改,所述图形流仍然没有与其它流进行多路复用(步骤S207),并且再次执行图形流的验证测试。
如果通过图形流的验证测试没有检测到错误(步骤S206:是),则通过对材料进行编码而在步骤S208中获得的视频、音频以及图形流被交错复用转换为一个数字流。在随后的步骤S209中,根据用于BD-ROM的情节产生必要的信息,并且改编情节和数字流以遵循BD-ROM格式。
根据本实施例,将定义按钮状态转换的ICS结合为具有图形数据的图形流。这样,不必等待对视频流进行编码或完成流的多路复用。而是,图形流一产生就准备好验证测试以查看当再现进行时按钮状态如何改变。由于在授权的较早阶段可以执行按钮状态转换的验证测试,所以避免了正好在发货之前检测到错误的可能性,这种可能性迫使开发商仓促地进行改正。图形流的验证测试独自为将移动复杂的动画按钮并入到电影中提供了更好的环境。
补充注释
本发明的应用不限于上述的特定例子。利用以下修改(A)到(O)中的任何一个可以实施本发明。对上述实施例及其修改进行扩展和归纳的说明的本申请的每一个权利要求的发明包括以下内容。扩展和归纳的程度反映了在提交本申请时相关技术领域的技术状态。然而,在每一个权利要求中所述的发明关注本发明相关问题的解决方法。这样,每一个发明的范围不超出本领域技术人员公认用于解决问题的方法的范围。因此,所附权利要求书中的每一项所述的发明实质上与以上的详细说明相一致。
(A)上述实施例对BD-ROM用作记录介质的情况进行了说明。然而,本发明的主要特征在于记录在记录介质上的图形流,其不依赖于BD-ROM的物理特性。因此,本发明可应用于能够记录动态情景和图形流的任何记录介质。这种记录介质的例子包括:光盘,例如DVD-ROM,DVD-RAM,DVD-RW,DVD-R,DVD+RW,DVD+R,CD-R.或CD-RW;磁光盘,例如PD或MO;半导体存储卡,例如压缩快闪卡、智慧(SmartMedia)卡、记忆棒(Memory Stick)卡、多媒体卡或PCMCIA卡;磁盘,例如软盘、超级磁盘、zip盘、或Clik!;可移动硬盘驱动器,例如ORB、Jaz、SparQ、SyJet、EZFley或微型硬盘;以及非移动硬盘驱动器。
(B)上述实施例对在BD-ROM上再现装置对AV剪辑进行解码并且将所解码的AV剪辑输出到电视机的情况进行了说明。作为可选择的方法,再现装置可以仅装配有BD驱动器,而剩余的构造元件在电视机中提供。在这种情况下,可以将再现装置和电视机合并到用IEEE1394连接器连接的家庭网络中。此外,上述实施例对再现装置连接到电视机的情况进行了说明,但是再现装置也可以与显示设备结合。此外,再现装置可以只包括与处理的基本部分有关的元件。作为发明在本说明书中对那些再现装置都进行了说明。因此,与其模式无关,在第一、第二、或第三实施例中所述的根据再现装置的内部结构制造再现装置的行为被认为是实施本发明的行为。此外,收费散发(即销售)或不收费散发(即作为礼物)、出租、以及引入所述再现装置的任何一种行为都是实施本发明的行为。同样地,使用店面展示、商品目录、或小册子来提供所述再现装置的散发或租借的行为是实施本发明的行为。
(C)使用流程图所示程序的信息处理实际上是使用硬件资源来实现的。因此,描述流程图所示的操作过程的程序本身就是发明。上述实施例对将程序合并到再现装置的情况进行了说明,但是可以使用程序而与再现装置无关。执行程序的行为包括(1)制造行为;(2)收费散发或不收费散发行为;(3)租借行为;(4)引入行为;(5)通过双向电子通讯网络提供给公众的行为;以及(6)使用店面展示、商品目录、或小册子来提供散发或租借的行为。
(D)在每一个流程图中以时间顺序执行的步骤的时间因素被认为是本发明的必要因素。由于情况如此,所以认为这些流程图所示的过程公开了再现方法。如果通过以时间顺序执行各步骤来执行每一个流程图所示的处理从而取得预期的目的和效果,则这就是实施本发明的记录方法的行为。
(E)当将AV剪辑记录在BD-ROM上时,可以将扩展头部加到AV剪辑中的每一个TS数据包中。扩展头部被称为TP_extra_header,包括arrival_time_stamp和copy_permission_indicator,并且具有4字节的数据长度。以32个数据包为单元对具有TP_extra_header的TS数据包(以下为“EX TS数据包”)进行分组,并且将每一组写到三个扇区。由32个EX TS数据包组成的一组具有6144个字节(=32×192),这等价于三个扇区的大小,是6144个字节(=2048×3)。包含在三个扇区中的32个EX TS数据包被称为对准单元。
在采用IEEE 1394连接器连接的家庭网络中,再现装置200以如下方式传送对准单元。再现装置从对准单元的32个EX TS数据包中的每一个中除去TP_extra_header,根据DTCP规范对每个TS数据包的主体进行加密,并且输出被加密的TS数据包。当输出TS数据包时,再现装置在相邻的TS数据包之间插入同步数据包。根据由TP_extra_header的arrival_time_stamp所示的时间确定插入同步数据包的点。再现装置200输出DTCP_descriptor以及TS数据包。DTCP_descriptor对应于TP_extra_header中的copy_permission_indicator。通过提供表示“拷贝禁止”的DTCP_descriptor,当在采用IEEE 1394连接器连接的家庭网络中使用数据包时,可以防止将TS数据包记录到其它设备上。
(F)上述实施例对将BD-ROM格式的.AV剪辑用作数字流的情况进行了说明,但是还可以采用DVD-Video格式或DVD-Video记录格式的VOB(视频对象)实现本发明。VOB是按照ISO/IEC 13818-1标准并通过多路复用视频流和音频流而获得的程序流。并且,AV剪辑中的视频流可以是MPEG4视频流或WMV视频流。此外,AV剪辑中的音频流可以是线性PCM音频流、Dolby AC-3音频流以及MP3音频流或MPEG-AAC音频流。
(G)可以利用对通过模拟广播的模拟图像信号广播进行编码来获得上述实施例所述的视频编辑。
或者,可以对记录在录像带上的模拟/数字图像信号进行编码以获得内容。此外,可以对由摄影机直接捕获到的模拟/数字图像信号进行编码以获得内容。由分布服务器分配的数字工作也是可应用的。
(H)ICS可以定义在暂停时间执行的操作。由在第一实施例中所述的composition_time_out_pts指定ICS的暂停。图47示出根据本发明的一个修改的ICS。该图中的ICS新提供有Still/Pause_information字段。Still/Pause_information字段表示是否使再现装置的操作进”静止”或“中止”。这里所参考的再现装置的操作包括通过视频解码器5、流图形处理器14和图形解码器12的解码操作,以及通过图形控制器17和控制器20的引导操作。这里使用的术语“静止”指的是暂停解码操作和引导操作,而术语“中止”指的是在继续引导操作时暂停解码操作。在静止的情况下,暂停引导操作,从而最后一个再现图像仍然作为静止图像而显示,并且按钮状态转换是不可能的。
另一方面,在中止的情况下,继续引导操作,从而允许用户改变按钮状态。通过在ICS中提供Still/Pause_information,可以在授权时定义暂停所执行的控制。
(I)在第二实施例中,button_info定义用于每个按钮的卡嗒声。另外,可以由遥控器的每个键的ICS定义卡嗒声。图48所示为定义用于遥控器的每个键的卡嗒声的ICS的图。
upper_audio字段定义在按下上移键时参考的音频指定信息和再现控制信息。
lower_audio字段定义在按下下移键时参考的音频指定信息和再现控制信息。
left_audio字段定义在按下左移键时参考的音频指定信息和再现控制信息。
right_audio字段定义在按下右移键时参考的音频指定信息和再现控制信息。
Activated_audio字段定义在按下激活键时参考的音频指定信息和再现控制信息。在按下遥控器400的一个键时,预载存储器21和混合器22根据与所按键有关的音频指定信息和再现控制信息进行操作,从而再现相应的卡嗒声。
(J)在上述实施例中所述的图形对象是行程长度编码的光栅数据。行程长度编码用于图形对象的压缩/编码,因为行程长度编码适用于子标题的压缩和解压缩。子标题的特性在于同一个像素值的连续长度在水平方向上是相对长的。因此,通过使用行程长度编码执行压缩,可以获得高的压缩率。另外,行程长度编码减小用于解压缩的负载,因此适用于通过软件实现解码。然而,对图形对象使用行程长度编码对于本发明来说不是必须的。例如,图形对象可以是PNG数据。还有,图形对象可以是矢量数据而不是光栅数据。此外,图形对象可以是透明图案。
工业实用性
根据本发明的记录介质和再现装置实现对电影的交互控制,由此提高了电影的价值。以这种附加值分销的电影使电影市场和消费电器市场受到鼓舞。因此,根据本发明的记录介质和再现装置非常适合于电影和消费电器工业。
本申请为分案申请,其原申请是于2004年1月30日向中国专利局提交的专利申请,申请号为200480003313.7,发明名称为“记录介质、再现装置、记录方法、程序以及再现方法”。