记录方法,重放装置以及执行重放的方法转让专利

申请号 : CN200580019816.8

文献号 : CN1969549B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 矢羽田洋冈田智之

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

摘要 :

一种BD-ROM,在其上记录视频流、播放列表信息以及入口映射。播放列表信息通过表示视频流中的一对或多对重放开始时间(In_time)和重放结束时间(Out_time)的序列定义重放路径。入口映射(EP_map)表示视频流中的多个内编码图的位置(SPN_EP_start)和重放时间(PTS_EP_start),一一对应于标记(is_angle_change_point)。每个标记表示相应的内编码图是用于使解码器刷新的内编码图(IDR图)还是具有对之前的图的参考的内编码图(非IDR图)。

权利要求 :

1.一种记录方法,用于在记录介质上记录视频流、播放列表信息以及入口映射,其中所述视频流包括符合H.264视频压缩标准的访问单元,每个访问单元包括访问单元定界符和图数据,

所述播放列表信息通过表示所述视频流中的一对或多对重放开始时间和重放结束时间的序列来定义重放路径,所述入口映射以与多对入口时间和标记一一对应的方式表示多个包编号,每个包编号识别包含用于存储访问单元定界符的网络提取层(NAL)单元的第一字节的传输流包,所述访问单元定界符位于相应访问单元的顶部,以及每个标记表示位于相应访问单元中的图组顶部的图数据段是否是用于使解码器刷新的内编码图。

2.一种重放装置,用于执行对记录在记录介质上的视频流的重放,其包括:读取单元,用于从所述记录介质读取包含在所述视频流中的访问单元;

重放单元,用于重放包含在所述视频流中的所述访问单元中的图数据;以及控制单元,其中

所述视频流包括符合H.264视频压缩标准的访问单元,每个访问单元包括访问单元定界符和图数据,

所述记录介质在其上记录有所述视频流、播放列表信息和入口映射,所述播放列表信息通过表示所述视频流中的一对或多对重放开始时间和重放结束时间的序列来定义重放路径,所述入口映射以与多对入口时间和标记一一对应的方式表示多个包编号,每个包编号识别包含用于存储访问单元定界符的网络提取层(NAL)单元的第一字节的传输流包,所述访问单元定界符位于相应访问单元的顶部,每个标记表示位于相应访问单元中的图组顶部的图数据段是否是用于使解码器刷新的内编码图,响应依据所述重放路径的重放请求,所述控制单元用于(i)从相应于设置为ON的表示位于相应访问单元中的图组顶部的图数据段是用于使解码器刷新的内编码图的标记的入口时间中,为所述重放路径的重放开始时间指定在其之前最邻近的入口时间,以及(ii)命令所述读取单元从与该入口时间相对应的特定访问单元定界符开始所述读取,以及所述读取单元用于从所述视频流读取紧接着所述特定访问单元定界符的图数据,以使得能够提供所述访问单元用于所述重放单元的所述重放。

3.一种用于执行对记录在记录介质上的视频流的重放的方法,其包括:读取步骤,从所述记录介质读取包含在所述视频流中的访问单元;

重放步骤,重放包含在所述视频流中的所述访问单元中的图数据;以及控制步骤,其中

所述视频流包括符合H.264视频压缩标准的访问单元,每个访问单元包括访问单元定界符和图数据,

所述记录介质具有记录在其上的所述视频流、播放列表信息和入口映射,所述播放列表信息通过表示所述视频流中的一对或多对重放开始时间和重放结束时间的序列来定义重放路径,所述入口映射以与多对入口时间和标记一一对应的方式表示多个包编号,每个包编号识别包含用于存储访问单元定界符的网络提取层(NAL)单元的第一字节的传输流包,所述访问单元定界符位于相应访问单元的顶部,每个标记表示位于相应访问单元中的图组顶部的图数据段是否是用于使解码器刷新的内编码图,在所述控制步骤中,响应依据所述重放路径的重放请求,(i)使从相应于设置为ON的表示位于相应访问单元中的图组顶部的图数据段是用于使解码器刷新的内编码图的标记的入口时间中,为所述重放路径的重放开始时间指定在其之前最邻近的入口时间,并且(ii)使从与该入口时间相对应的特定访问单元定界符开始所述读取步骤中的读取,并且在所述读取步骤中,从所述视频流中读取紧接着所述特定访问单元定界符的图数据,以使得能够提供所述访问单元用于在所述重放步骤中的所述重放。

说明书 :

技术领域

本发明涉及一种定义重放路径的技术。

背景技术

重放路径是记录在记录介质上的数字流的逻辑单元并且由同样记录在该记录介质上的重放路径信息定义。重放装置根据重放路径信息执行数字流的重放。使用这种技术,简单地通过定义多条重放路径信息,可以有变化地重放相同的数字流。由于这个优点,认为这个技术在创建多层影片(multi-story movie)时是必需的。
可以使用记录介质上的地址或时间信息定义重放路径信息。在使用时间信息定义重放路径信息的情况下,需要将时间信息转换为流上特定点的地址信息。该转换是通过将指示重放路径的起始点(In_time)的时间信息转换为I图的地址而执行的。这里,从相同的In_time导出的地址根据视频流的GOP结构而有所不同。在视频流是MPEG2-VIDEO流并且In_time相应于Closed-GOP的情况下,将读取GOP的第一I图。因此,需要将In_time所属于的GOP中的第一I图的地址作为转换结果导出。
另一方面,Open-GOP具有对前面GOP的参考,并且不能独立地解码。为了从相应于In_time的Open-GOP正确地开始重放,重放装置需要从最接近相应于In_time的GOP之前的GOP读取视频流。如上所述,Open-GOP的重放需要重放装置在读取Open-GOP之前读取一个额外的GOP。
以下专利文献公开了一种数据结构,便于重放使用时间信息定义的重放路径。
专利文献1:日本专利申请公开No.2001-169247(申请号
发明的公开
本发明试图解决的问题
在MPEG2-Video流的情况下,open-GOP最远使用来自前面最接近的GOP的参考图。但是,在MPEG4-AVC流的情况下,open-GOP可能参考包含在当前帧之前的数十帧中的图。这是因为MPEG4-AVC解码模型使用两种类型的参考图,也就是短期参考图和长期参考图。长期参考图可能用于作为位于该长期参考图之后的数十个图的图。因此,读取前面最接近的GOP不足以为解码器提供解码所需的所有参考图。
考虑到上述情况,重放装置需要读取大量的图以便为最坏的情况作准备。在最坏情况下,将要解码的图可能具有对位于视频流开始处的图的参考。倘若如此,重放装置需要从视频流的开始读取所有图。例如,假设视频流需要两个小时的重放而且做出从相应于视频流开始一个小时的点开始的重放请求。在这种情况下,重放装置需要读取并解码相当于一个小时重放时间的图数据。因此,所有需要的参考图在解码器中准备好之前需要很长的时间。
如上所述,需要花费相对长的时间指定用时间信息定义的重放路径的起始地址。由于这个缺点,认为MPEG4-AVC标准不适于通过记录介质发行影片。MPEG4-AVC流被认为非常有利于以流的形式发行,其中流始终从开始重放。然而,考虑到高图像质量和高压缩率的优点,放弃将MPEG4-AVC标准应用到记录介质是一种浪费,即使需要花费相对长的时间指定用时间信息定义的重放路径的起始地址。
考虑到上述情况,本发明致力于提供一种记录介质,在视频流包含open-GOP的情况下,该open-GOP具有对位于视频流中相当一段距离处的GOP的参考,依据时间信息定义的重放路径确保视频流的高效重放。
解决问题的方法
根据本发明的第一方面,提供一种记录方法,用于在记录介质上记录视频流、播放列表信息以及入口映射,其中,所述视频流包括符合H.264视频压缩标准的访问单元,每个访问单元包括访问单元定界符和图数据,所述播放列表信息通过表示所述视频流中的一对或多对重放开始时间和重放结束时间的序列来定义重放路径,所述入口映射以与多对入口时间和标记一一对应的方式表示多个包编号,每个包编号识别包含用于存储访问单元定界符的网络提取单元的第一字节的传输流包,所述访问单元定界符位于相应访问单元的顶部,以及每个标记表示位于相应访问单元中的图组顶部的图数据段是否是用于使解码器刷新的内编码图。
根据本发明的第二方面,提供一种重放装置,用于执行对记录在记录介质上的视频流的重放,其包括:读取单元,用于从所述记录介质读取包含在所述视频流中的访问单元;重放单元,用于重放包含在所述视频流中的所述访问单元中的图数据;以及控制单元,其中,所述视频流包括符合H.264视频压缩标准的访问单元,每个访问单元包括访问单元定界符和图数据,所述记录介质在其上记录有所述视频流、播放列表信息和入口映射,所述播放列表信息通过表示所述视频流中的一对或多对重放开始时间和重放结束时间的序列来定义重放路径,所述入口映射以与多对入口时间和标记一一对应的方式表示多个包编号,每个包编号识别包含用于存储访问单元定界符的网络提取单元的第一字节的传输流包,所述访问单元定界符位于相应访问单元的顶部,每个标记表示位于相应访问单元中的图组顶部的图数据段是否是用于使解码器刷新的内编码图,响应依据所述重放路径的重放请求,所述控制单元用于(i)从相应于设置为ON的表示位于相应访问单元中的图组顶部的图数据段是用于使解码器刷新的内编码图的标记的入口时间中,为所述重放路径的重放开始时间指定在其之前最邻近的入口时间,以及(ii)命令所述读取单元从与该入口时间相对应的特定访问单元定界符开始所述读取,以及所述读取单元用于从所述视频流读取紧接着所述特定访问单元定界符的图数据,以使得能够提供所述访问单元用于所述重放单元的所述重放。
根据本发明的第三方面,提供一种用于执行对记录在记录介质上的视频流的重放的方法,其包括:读取步骤,从所述记录介质读取包含在所述视频流中的访问单元;重放步骤,重放包含在所述视频流中的所述访问单元中的图数据;以及控制步骤,其中,所述视频流包括符合H.264视频压缩标准的访问单元,每个访问单元包括访问单元定界符和图数据,所述记录介质具有记录在其上的所述视频流、播放列表信息和入口映射,所述播放列表信息通过表示所述视频流中的一对或多对重放开始时间和重放结束时间的序列来定义重放路径,所述入口映射以与多对入口时间和标记一一对应的方式表示多个包编号,每个包编号识别包含用于存储访问单元定界符的网络提取单元的第一字节的传输流包,所述访问单元定界符位于相应访问单元的顶部,每个标记表示位于相应访问单元中的图组顶部的图数据段是否是用于使解码器刷新的内编码图,在所述控制步骤中,响应依据所述重放路径的重放请求,(i)使从相应于设置为ON的表示位于相应访问单元中的图组顶部的图数据段是用于使解码器刷新的内编码图的标记的入口时间中,为所述重放路径的重放开始时间指定在其之前最邻近的入口时间,并且(ii)使从与该入口时间相对应的特定访问单元定界符开始所述读取步骤中的读取,并且在所述读取步骤中,从所述视频流中读取紧接着所述特定访问单元定界符的图数据,以使得能够提供所述访问单元用于在所述重放步骤中的所述重放。
本发明的效果
根据本发明,每个记录在记录介质上的标记与位于入口点的图相关,并且表示相关图是引起解码器刷新的内编码图还是参考前面的图的内编码图。参照与各个入口点相关的标记,重放设备能够区分哪些图是引起解码器刷新的内编码图。甚至在open-GOP具有对远处许多帧的参考的情况下,长期参考也没有超出解码器将被刷新的任何图。因此,当执行对用时间信息定义的重放路径的重放时,重放设备开始从引起解码刷新前面的第一个图读取。结果,保证了为解码器提供解码位于重放路径的起始点处的图所需的所有参考图。
例如,假设视频流需要两个小时的重放,并且将从相应于流起始点一个小时重放时间的重放点执行重放。为了执行这样的重放,应该从引起解码器刷新前面的第一个图开始读取视频流,以便为解码器充分地提供所有必要的参考图。结果,需要读取的数据从一个小时的数据降低为十五分钟的数据。结果,将比常规方法更快地在解码器中准备好为解码所请求的重放起始点处的图所需的参考图。由于这种改进,MPEG4-AVC格式可用于更多样的用途中,包括通过记录介质的影片发行。
实施本发明的最佳方式
(第一实施例)
以下描述根据本发明的记录介质的一个实施例。首先,在实践本发明的记录介质的各种过程中,将描述使用过程。图1示出使用根据本发明的记录介质的一种形式。图1中,BD-ROM 100是根据本发明的记录介质。BD-ROM 100用于将影片提供给由重放装置200、遥控器300、以及电视机400组成的家庭影院系统。
至此结束了对本发明的记录介质的使用过程的说明。现在,以下描述制造过程,作为实践本发明的记录介质的过程的例子。图2示出BD-ROM的内部结构。
图中,BD-ROM在第四级示出,BD-ROM的磁道在第三级示出。磁道横向伸出,尽管实际的磁道是从BD-ROM的中心螺旋向外的。磁道由导入区、卷区、以及导出区组成。卷区具有物理层、文件系统层、以及应用层的分层模型。第一级以目录结构示出BD-ROM的应用层的格式(应用格式)。如第一级所示,BD-ROM具有一个ROOT目录,ROOT目录具有一个BDMV目录。
BDMV目录具有三个子目录,称为PLAYLIST目录、CLIPINF目录、以及STREAM目录。
STREAM目录存储扩展名为“.m2ts”(例如名为“00001.m2ts”、“00002.m2ts”、以及“00003.m2ts”的文件)、包含组成单个数字流的主体的数据的文件。
PLAYLIST子目录存储扩展名为“.mpls”的文件(例如名为“00001.mpls”、“00002.mpls”、以及“00003.mpls”的文件)。
CLIPINF目录存储扩展名为“.clpi”的文件(例如名为“00001.clpi”、“00002.clpi”、以及“00003.clpi”的文件)。

接下来,描述扩展名为“.m2ts”的文件。图3示意性地示出扩展名为“.m2ts”的文件的结构。每个扩展名为“.m2ts”的文件(即,00001.m2ts、00002.m2ts、00003.m2ts,…)包含一个AV剪辑。AV剪辑(显示在中间级)如下生成。将包含多个视频帧(图pj1、pj2、pj3,...)的视频流(显示在上面第一级)转换为PES包(显示在上面第二级)。类似地,将包含多个音频帧的音频流(显示在上面第一级)转换为PES包(显示在上面第二级)。将得到的PES包进一步转换为TS包(显示在上面第三级)。另外,将载有文本字幕数据的显示图形流(presentationgraphics stream)(显示在下面第一级的PG流)以及载有交互合成数据的交互图形流(显示在下面第二级的IG流)转换为TS包。将视频、音频、IG、以及PG流的这些TS包多路复用以形成AV剪辑。
接下来,描述如何将作为MPEG2-TS数字流的AV剪辑记录在BD-ROM上。图4示出将载有AV剪辑的TS包记录在BD-ROM上的过程。图4中,AV剪辑的TS包显示在第一级。
如第二级所示,AV剪辑的每个TS包附有“TS_extra_header”(图中标注为“EX”)。
第三和第四级显示关于TS包的BD-ROM的物理单元。如第四级所示,BD-ROM上的磁道被分成多个扇区。将每个附加TS_extra_header的TS包(以下,简单地称为“EX-TS包”)分成32个EX-TS包的组,将每个组写入BD-ROM的三个扇区。每个组由总计达6,144(=32×192)字节的32个EX-TS包组成,与三个扇区的总大小(=2048×3)相同。每个存储在BD-ROM的三个扇区中的32个EX-TS包的组称为一个“对准单元(aligned unit)”。将数据记录在BD-ROM上时,在对准单元中执行加密。
如第五级所示,将误差校正码附于每32个扇区以构成ECC块。只要在对准单元中访问BD-ROM,就可以保证重放装置获得32个EX-TS包的完整集合。至此结束了对将AV剪辑记录在BD-ROM上的过程的描述。
<视频流>
以下描述MPEG4-AVC视频流的内部结构。MPEG4-AVC视频流由多个图组成。图5A示出以编码顺序排列的多个图。
图中,参考标号“I”、“P”、以及“B”分别表示I图、P图、以及B图。有两种类型的I图:一种是IDR图,另一种是非IDR I图。利用与其它图的相关性将非IDR I图、P图、以及B图编码。更加具体地,B图由双向可预测(B)片段组成,P图由可预测(P)片段组成。有两种类型的B图:一种是参考B图,另一种是非参考B图。
图5A中,非IDR I图标注为“I”,IDR图标注为“IDR”。以下描述和附图中使用相同的标注。

图5B示出图5A中所示的视频流的GOP结构。如图所示,IDR图与以下B和P图一起形成closed-GOP。另一方面,非IDR I图与以下B和P图一起形成open-GOP。
图6A示出closed-GOP的内部结构。上面的等级以显示顺序示出closed-GOP的图,下面的等级以编码顺序示出closed-GOP的图。在编码顺序中,closed-GOP以IDR图开始。但是,在显示顺序中,IDR图不是closed-GOP的第一图。然而,即使除IDR图以外的图(B和P图)也不依赖来自前面的GOP的任何图。图中,附加了记号“x”的箭头表示closed-GOP没有使用来自前面的GOP的任何参考图。如上所述,closed-GOP是独立的,没有参考前面的GOP。
图6B示出open-GOP的内部结构。图6B的上面的等级以显示顺序示出open-GOP的图,下面的等级以编码顺序示出open-GOP的图。编码顺序中,open-GOP以非IDR I图开始。但是,显示顺序中,IDR图、非IDR I图、以及P图以不同顺序排列。更加具体地,显示顺序中,B图先于非IDR I图。在非IDR I图之前的B图依赖前面的GOP。然而,在非IDR I图之后的图不依赖来自前面的GOP的任何图。如上所述,open-GOP可能具有对前面的GOP的参考。
接下来,描述IDR图和非IDR I图的内部结构。图7A示出IDR图的内部结构。如图所示,IDR图由多个内编码片段(intra slice)组成。图7B示出非IDR I图的内部结构。与仅由内编码片段组成的IDR图不同,非IDR I图由Intra-、P-、以及B-片段组成。图7C示出非IDRI图和其他图之间的依赖关系。非IDR I图可以由B和P片段组成,因此可能具有对其它图的参考。
图8示出非IDR I图可能具有的依赖关系。第一级以显示顺序示出图的序列。第二级以编码顺序示出图的序列。图中的箭头示意性地表示非IDR I图可能具有的参考。尽管有些图通过相对长的周期被参考,没有图在IDR图以外被参考。这是因为IDR图需要解码器刷新,从而将存储在解码器上的所有参考图删去。因此,没有非IDR I图具有IDR图以外的参考。

以下描述将IDR图插入视频流的技术重要性。IDR图形成closed-GOP并且不以固定的单位间隔(比如每GOP)定位。包含在单个视频流中的IDR图的编号和位置根据编码条件而改变。根据编码条件,视频流可以包含相对少的IDR图或者相对多的IDR图。因为不使用任何短期和长期的参考图对IDR图进行编码,包含大量IDR图的视频流达到较低的压缩率。因此,压缩率随着IDR图数量的增加而减少。然而,视频流中出现至少一个IDR图显著地有助于从视频流中一个随机选定点开始高效地执行特技播放(trick play)。
例如,假设需要将P图解码以执行特技播放。在这种情况下,不能确定需要将视频流中总计多少个前面的图解码以便解码P图。因为目标P图可能参考前面的B图,并且B图可能接着参考编码顺序中的另一个前面的B图或者P图。因此,关于需要解码多少前面的图用于正确地解码目标P图没有固定的规则。然而,如果视频流在适当的点包含IDR图,已知任何IDR图不存在图间依赖关系。因此,对直到最接近的之前的IDR图的解码确保将重放目标P图所需的所有图提供给解码器。以这种方式,方便地执行特技播放中对P图的解码。因此,容易地执行涉及I和P图的顺序解码的视频流的快速重放。
如上所述,根据编码条件确定单个视频流中的IDR图的编号和位置。确定中,重要的是考虑特技播放和压缩率二者的效率。本实施例的说明书是在IDR图以相对长的时间间隔定位的前提下给出的,比如十五分钟或者三十分钟间隔。
<记录到BD-ROM>
接下来,描述如何将IDR图和非IDR I图转换为TS包并记录在BD-ROM上。图9示出将IDR或者非IDR I图转换为TS包的过程。在图中,第一级示出IDR或者非IDR I图。第二级示出根据MPEG4-AVC所规定的访问单元。将组成IDR或非IDR I图的多个片段排列成序列。然后,将AUD(访问单元定界符)、SPS(序列参数集)、PPS(图像参数集)以及SEI(辅助增强信息)附加到片段序列。以这种方式,将图像片段转换为访问单元。
上述AUD、SPS、PPS、SEI以及访问单元是都根据MPEG4-AVC所规定的信息并在各种文档中描述,比如“ITU-T RecommendationH.264”。对于细节,应当参考这些文档。此说明书中的要点是需要将AUD、SPS、PPS以及SEI提供给重放装置以便对视频流执行随机访问。
第三级示出NAL单元。分别将第二级上示出的AUD、SPS、PPS、SEI以及片段附加头部从而转换为单独的NAL单元。NAL单元由根据MPEG-4 AVC所规定的网络提取层(NAL)支持并在各种文档中描述,比如“ITU-T Recommendation H.264”。对于细节,应当参考这些文档。该说明书中的要点是将AUD、SPS、PPS、SEI以及每个片段转换为单独的NAL单元并独立地在网络提取层中操作。
如上所述,将单个图转换为多个NAL单元。然后,将NAL单元转换为第四级所示的PES包,并将PES包转换为TS包。最终,将所得到的TS包记录在BD-ROM上。
为了重放一个GOP,重放装置需要为解码器提供包含GOP中的第一个IDR或非IDR I图的AUD的NAL单元。也就是说,将包含AUD的NAL单元用作解码IDR或非IDR I图的索引。本实施例中,将每个包含AUD的NAL单元视为一个点。对于视频流的重放,重放装置辨别每个这样的点作为用于执行I图的重放的入口点。因此,为了执行到AV剪辑中的随机访问点的跳跃重放(jump playback),对于重放装置来说辨别IDR及非IDR I图的AUD的位置非常重要。这里结束对MPEG-4AVC视频流的结构的描述。
<剪辑信息>
接下来,描述扩展名为“.clpi”的文件。每个具有扩展名“.clpi”的文件(例如00001.clpi、00002.clpi、00003.clpi,...)包含剪辑信息。每条剪辑信息是单个AV剪辑的管理信息。图10示出一条剪辑信息的内部结构。如图的左方块所示,剪辑信息由以下字段(field)组成:
(i)“ClipInfo()”存储AV剪辑文件的属性;
(ii)“Sequence Info()”存储关于ATC序列和STC序列的信息;
(iii)“Program Info()”存储关于程序序列的信息;以及
(iv)“Characteristics Point Info(CPI())”。
图中的引出线cu1表示第i个程序序列(程序序列(i))的结构被更详细地示出。如引出线cu1所示,与程序序列(i)关联的程序信息由Ns(i)对Stream_PID和Stream_Coding_Info(图中,Stream_PID[i](0)和Stream_Coding_Info(i,0)-Stream_PID[i](Ns(i)-1)以及Stream_Coding_Info(i,Ns(i)-1))的总数组成。
Stream_PID是载有组成AV剪辑的基本流的单个包的包标识符。Stream_Coding_Info表示用于编码基本流的编码标准。
图11A示出与视频流关联的Stream_Coding_Info,而图11B示出与音频流关联的Stream_Coding_Info。Stream_Coding_Info由以下字段组成:“stream_coding_type”表示视频流的编码方法,其是MPFG4-AVC或者MPEG2-Video;“video_format”表示视频格式,其是480i、576i、480p、1080i、720p或1080p;“frame_rate”表示视频流的帧频,其是23.976Hz、29.97Hz或59.94Hz;以及“aspect_ratio”表示图的纵横比,其是4∶3或者16∶9。
图11B示出与音频流关联的Stream_Coding_Info。如图中所示,与音频流关联的Stream_Coding_Info由以下字段组成:“stream_coding_type”表示音频流的编码类型,其是LPCM、Dolby-AC3或Dts;“audio_presentation_type”表示音频流的显现类型是立体声道、单声道或多声道;“sampling_frequency”表示音频流的采样频率;以及“audio_language”表示音频流的语言编码。
参照Stream_Coding_Info,重放装置能够识别哪个包含在AV剪辑中的基本流是MPEG4-AVC流。

接下来,再次参照图10给出CPI的描述。图中的引出线cu2表示CPI的结构被更详细地示出。如引出线cu2所示,CPI由多个EP_map字段组成。每个EP_map由Ne条EP_map_for_one_stream_PID(即,EP_map_for_one_stream_PID(0)-(Ne-1))组成。每条EP_map_for_one_stream_PID是与包含在AV剪辑中的基本流之一相关的EP_map。EP_map是表示设置在相关基本流上的入口点的信息。入口点是存在I图的访问单元定界符的地方。EP_map表示每个入口点的包编号(SPN_EP_start)和相应的入口时间(PTS_EP_start)。图中的引出线cu3表示EP_map_for_one_stream_PID的内部结构被更详细地示出。
如图所示,EP_map_for_one_stream_PID由Nc条EP_High(EP_High(0)-(Nc-1))和Nf条EP_Low(EP_Low(0)-(Nf-1))组成。这里,EP_High保存I图的SPN_EP_start和PTS_EP_start的最高有效位。EP_Low保存I图的SPN_EP_start和PTS_EP_start的最低有效位。
图中的引出线cu4表示EP_High的内部结构被更详细地示出。如引出线cu4所示,EP_High(i)由以下字段组成:“ref_to_EP_Low_id[i]”,其是参考EP_Low的参考值;“PTS_EP_High[i]”表示用于I图的PTS的最高有效位;以及“SPN_EP_High[i]”表示用于I图的SPN的最高有效位。这里,参考标号“i”表示唯一标识任意EP_High字段的标识符。
图中的引出线cu5表示EP_Low结构被更详细地示出。如引出线cu5所示,EP_Low由以下字段组成:“is_angle_change_point(EP_Low_id)”;“I_end_position_offset(EP_Low_id)”,表示相关I图的大小;“PTS_EP_Low(EP_Low_id)”,表示相关I图的PTS的最低有效位;以及“SPN_EP_Low(EP_Low_id)”,表示相关I图的SPN的最低有效位。这里,“EP_Low_id”表示唯一标识任意EP_Low字段的标识符。
如上所述的EP_map的数据结构基本上已经公开,例如,在上述专利文献中。因此,在本说明书中没有给出进一步的描述。然而,称为“is_angle_change_point”的标记是本发明的一个特征,因此将详细地描述。
“is_angle_change_point”是表示指定为入口点的I图是否作为重放装置可以从其它AV剪辑进入该AV剪辑的点的标记。图12示出进入一个AV剪辑以及从该AV退出的概念。这里,进入AV剪辑的过程是指使光学拾取器(optical pickup)从包含在当前AV剪辑中的当前TS包移动到包含在另一个AV剪辑中的TS包的查找过程。图12中示出的箭头er1示意性地表示进入AV剪辑的时候的光学拾取器的移动。将每个由设置为值“1”的is_angle_change_point字段指定的TS包判断为允许进入点。
将由设置为值“1”的is_angle_change_point字段所指定的TS包之前最接近的TS包判断为AV剪辑的出口点。这里,从AV剪辑退出的过程是指使光学拾取器从包含在当前AV剪辑中的当前读取TS包移动到包含在另一个AV剪辑中的TS包的查找过程。图12中示出的箭头ex1示意性地表示光学拾取器从AV剪辑退出的运动。
在从另一个AV剪辑进入一个AV剪辑的时候,解码器不能使用任何通过此前已经进行的解码过程所获取的图片。因此,由设置为值“1”的is_angle_change_point字段指定为入口点的I图必须是IDR图。也就是说,设置为值“1”的“is_angle_change_point”表示所指定的I图是IDR图。设置为值“0”的“is_angle_change_point”表示所指定的I图是非IDR I图。该过程在图中示出,即,从当前播放的AV剪辑“退出”并且“进入”另一AV剪辑的过程被称为“angle_change”。考虑到该字段指定可能进行“angle_change”的字段,将该字段命名为“is_angle_change_point”。但是应该注意的是,提供具有设置为“1”的is_angle_change_point字段的EP_map不足以实现角变换过程。角变换过程的实现另外需要对AV剪辑和播放列表信息的改进。为实现角变换所需的对AV剪辑和播放列表信息的改进将在后面本发明的第二实施例中详细地描述。因此,本实施例中省略这些描述。
另外,应该注意,就数据结构而言EP_map可以表示为一对EP_High和EP_Low值。然而,为了描述的简化起见,除非特别指出,由EP_High和EP_Low表示的PTS的最高有效位和最低有效位共同标注为PTS_EP_start。类似地,由EP_High和EP_Low表示的SPN的最高有效位和最低有效位共同表示为SPN_EP_start。
以下描述如何设置与图5和8中示出的视频流相关的EP_map。图13示出对与图5中示出的视频流相关的EP_map的设置。第一级示出以显示顺序排列的多个图的序列。第二级示出用于图序列的时间线(timeline)。第四级示出存储在BD-ROM上的多个TS包。第三级示出对EP_map的设置。假设以第二级示出的时间线上的点t1、t2、t3、t4和t5定位I图。将EP_map的PTS_EP_start字段设置为指定点t1-t5的值。存储在BD-ROM上的视频流的访问单元定界符以TS包序列中的点n1、n2、n3、n4和n5定位。将EP_map的SPN_EP_start字段设置为指定点n1-n5的值。在相应于点t1-t5并因此相应于点n1-n5的入口点#1-#5之中,以入口点#1和#3定位的图是IDR图。因此,对于入口点#1和#3,将is_angle_change_point设置为值“1”。关于其他的入口点,即入口点#2、#4和#5,将is_angle_change_point设置为值“0”。
图14以表格形式成对的示出表示图13中所示的入口点#1-#5的PTS_EP_start和SPN_EP_start的EP_Low和EP_High值。图14中,左侧的表示出EP_Low的值,右侧的表示出EP_High的值。
图14中,左侧的表示出EP_Low(0)-(Nf-1)。PTS_EP_Low的值EP_Low(i)-(i+1)分别表示点t1-t5的最低有效位。SPN_EP_Low的值EP_Low(i)-(i+1)分别表示点n1-n5的最低有效位。Is_angle_change_point(i)-(i+1)之中,将is_angle_change_point(i)和is_angle_change_point(i+2)中的每一个设置为值“1”,因为相应的I图是IDR图。另一方面,将is_angle_change_point(i+1)、(i+3)以及(i+4)中的每一个设置为值“0”,因为他们的相应图是非IDR I图。
图14中右侧的表示出EP_map中设置的EP_Hiqh(0)-(Nc-1)的值。假如点t1-t5共同具有相同的最高有效位集合,并且点n1-n5共同具有相同的最高有效位集合,将PTS_EP_High和SPN_EP_High的值设置为各自的最高有效位集合。另外,设置ref_to_EP_Low_id以便从表示点t1-t5和n1-n5的EP_Low字段中指定第一个EP_Low字段(EP_Low(i))。使用这种设置,EP_High表示PTS_EP_start的公共最高有效位和SPN_EP_start的公共最高有效位。
这种EP_map的最显著特征在于为了执行跳跃重放所需要读取的数据将保持最少。图15示出了执行跳跃重放需要读取的数据的范围。
例如,假设将要执行跳跃重放以便从相应于图中所示的In_time的点开始重放。当相应于In_time的点是跳跃重放点时,重放装置定位跳跃重放点之前、并且is_angle_change_point设置为值“1”的最近一个入口点。图中,相应于时间点t3的入口具有设置为值“1”的is_angle_change_point。因此,重放装置检索相应于PTS_EP_start=t3的入口点#3的SPN_EP_start=n3的值。然后重放装置从点n3开始读取载有AV剪辑的TS包,并将所读取的TS包提供给解码器。通过这样的安排,重放装置能够向解码器提供解码I图所需的所有参考图。也就是说,消除了自始至终从视频流的开始读取TS包的要求。
例如,假设视频流需要两个小时的重放时间,而且将从in_time相应于距离视频流的起始处一个小时的重放点开始重放。这个示例中,时间点t3相应于In_time之前十五分钟。因此,通过读取之前的直到时间点t3的图,重放装置能够将执行跳跃重放所需的所有参考图提供给解码器。
也就是说,当执行跳跃重放以便从相应于视频流起始“一小时之后”的In_time的点开始重放时,重放装置至多从相应于时间点L3之前十五分钟的点开始读取图。结果,将解码过程所需的所有参考图适时地提供给解码器。在这种方式下,对存储在BD-ROM上的MPEG4-AVC视频流的重放可以通过读取该流数据的最小范围从视频流上的任何给定点开始。这种有益的特征有助于将MPEG4-AVC格式用于通过BD-ROM的影片发行并因此显著地增加MPEG4-AVC格式的使用。
以下描述中,在用于MPEG4-AVC流的EP_map和用于MPEG2-VIDEO流的EP_map之间对数据结构进行比较。用于MPEG4-AVC流的EP_map和用于MPEG2-VIDEO流的EP_map都示出I图的SPN和PTS值之间的关系。区别在于用于MPEG4-AVC流的EP_map包括表示相关I图是IDR图还是非IDR I图的is_angle_change_point字段。对于每个IDR和非IDR I图,MPEG4-AVC流的EP_map表示除一对SPN和PTS之外的is_angle_change_point字段。而且,用于MPEG4-AVC流的EP_map与用于MPEG2-VIDEO流的EP_map兼容。由于用于MPEG4-AVC流的EP_map和用于MPEG2-VIDEO流的EP_map之间的兼容性,允许BD-ROM创建者在不考虑EP_map结构的情况下选择MPEG2-Video和MPEG4-AVC标准中的任何一个。因此,可以在不限制于EP_map结构的情况下相对自由地进行在MPEG2-Video和MPEG4-AVC标准之间的选择。也就是说,在编码译码标准中提供给BD-ROM创建者较宽的选项种类。
这结束了对根据本实施例的剪辑信息的描述。接下来,给出对扩展名为“mpls”的文件的描述。
<播放列表信息>
每个扩展名为“mpls”的文件(00001.mpls,00002.mpls,00003.mpls...)存储播放列表信息。播放列表信息定义使用基本流的称为播放列表的重放路径。图16示出播放列表信息的数据结构。如图的中间方块所示,播放列表信息由多条播放项信息组成。播放项通过在至少一个AV剪辑时间线上指定一对In_time和Out_time定义重放分段。使用多条播放项信息,播放列表信息定义多个重放路径组成的播放列表(PL)。图中的虚线hs1表示播放项信息的内部结构被更详细地示出。如图所示,播放项信息由以下字段组成:“Clip_information_file_name”,表示包含相关剪辑信息的文件的名称;“Clip_codec_identifier”表示相关AV剪辑的编码类型;和“In_time”;以及“Out_time”。图17示出AV剪辑和播放列表信息之间的关系。第一级示出AV剪辑的时间线。第二级示出播放列表信息的时间线(下文中,PL时间线)。播放列表信息包含三条播放项信息,称为播放项#1、#2以及#3。各条播放项信息的In_time和Out_time定义三个重放分段。通过线性地对准三个重放分段,定义了与AV剪辑时间线不同的时间线。这个时间线是示出在第二级上的PL时间线。如这里所述,利用播放项信息,定义了与AV剪辑时间线不同的时间线。
如上所述,对于包含在视频流中的每个I图,包含在剪辑信息中的EP_map表示I图的一对SPN和PTS值以及I图是不是IDR图。因为EP_map使重放装置能够从给定的时间点开始高效地执行特技播放,在可以高效地执行特技播放的前提下用时间信息表示播放列表信息。这种表示确保BD-ROM上的播放列表信息和可改写记录介质(BD-RE)上的播放列表信息之间在数据结构上的兼容性。
这结束了对根据本实施例的播放列表信息的内部结构的描述,并从而结束了对根据本发明的记录介质的描述。接下来,给出对根据本发明的重放装置的描述。
<重放装置的内部结构>
图18示出重放装置的内部结构。基于图中所示的内部结构,符合本发明的重放装置是工业制造的。本发明的重放装置大致包括两个部分,其中一个是系统LSI,并且另一个是驱动设备。通过将那些部分安装到设备箱体中并且在基板上,可以工业制造重放装置。系统LSI是包含各种用于实现重放装置功能的处理单元的集成电路。以上述方式制造的重放装置包括BD驱动器1、到达时间时钟计数器2、源拆包器3、PID过滤器4、传送缓冲器5、多路复用缓冲器6、编码图缓冲器7、视频解码器8、解码图缓冲器10、视频平面(video plane)11、传送缓冲器12、编码数据缓冲器13、流图形处理器14、对象缓冲器15、合成缓冲器16、合成控制器17、显示图形平面18、CLUT单元19、传送缓冲器20、编码数据缓冲器21、流图形处理器22、对象缓冲器23、合成缓冲器24、合成控制器25、交互图形平面26、CLUT单元27、合成器28和29、开关30、网络设备31、本地存储器32、到达时间时钟计数器33、源拆包器34、PID过滤器35、开关36、传送缓冲器37、基本缓冲器38、音频解码器39、传送缓冲器40、缓冲器41、文本字幕解码器42、场景存储器43、控制器44以及PSR组件46。应当注意到图中示出的内部结构是基于MPEG T-STD模型并能够向下转换的解码器模型。
BD驱动器1装载/弹出BD-ROM并访问BD-ROM,从而连续地读取各包括32个ES-TS包的对准单元。
到达时间时钟计数器2使用27MHz晶体振荡器(27MHz X-tal)生成到达时间时钟。到达时间时钟是定义基于其为各个TS包分配ATS的时间线的时钟信号。
一旦从BD-ROM中读取了包括32个EX-TS包的对准单元,源拆包器3从各个载有对准单元的ES-TS包中除去TP_extra_header,并向PID过滤器4输出所得到的TS包。由源拆包器3向PID过滤器4的输出是在由到达时间时钟计数器2测量的时间到达TP_extra_header所示的ATS的时刻执行的。因为根据ATS执行向PID过滤器4的输出,根据由到达时间时钟计数器2测量的当前时间连续地向PID过滤器4输出TS包,不管从BD-ROM读取数据的速度是多少,比如1x-speed或者2x-speed。
PID过滤器4参照附着于TS包的PID判断TS包所属于的流的类型是视频流、PG流还是IG流。根据该判断,PID过滤器4将TS包输出到传送缓冲器5、12、20以及37中的一个。
如果该TS包属于视频流,传送缓冲器(TB)5是用于暂时存储从PID过滤器4输出的TS包的缓冲器。
多路复用缓冲器(MB)6是用于暂时存储从传送缓冲器5输出的PES包的缓冲器,以便随后将视频流输出到编码图缓冲器7。
编码图缓冲器(CPB)7是用于存储编码图(I图、B图以及P图)的缓冲器。
视频解码器8在每个预定的解码时间(DTS)将包含在视频基本流中的单个帧解码,从而获得多个帧并将所得到的图数据写在解码图缓冲器10上。
解码图缓冲器10是在其上写入解码图数据的缓冲器。
视频平面11用于存储未压缩图数据。平面是重放装置的存储区,用于存储一帧像素值数据。视频平面11以1920×1080的分辨率存储图数据,并且图数据由多个像素值组成,每个像素值由16-位YUV值表示。
如果该TS包属于PG流,传送缓冲器(TB)12是用于暂时存储从PID过滤器4输出的TS包的缓冲器。
编码数据缓冲器(CDB)13暂时存储组成PG流的PES包。
流图形处理器(SPG)14将载有图形数据(ODS)的PES包解码,从而获得未压缩的由索引颜色表示的位图数据,并将所获得的图形数据作为图形对象写在对象缓冲器15上。
对象缓冲器15保存作为流图形处理器14解码的结果所获得的图形对象。
合成缓冲器16是存储用于图形数据绘制的控制信息(PCS)的存储器。
合成控制器17分析存储在合成缓冲器16上的PCS并根据分析结果执行控制。
显示图形平面18是与全屏幕一样大的存储区,并且存储相当于一屏的未压缩图形数据。显示图形平面18以1920X1080的分辨率存储未压缩图形数据,并且该未压缩图形数据由每个使用8-位索引颜色表示的像素值组成。通过参照CLUT(颜色查找表)转换索引颜色,将存储在显示图形平面18上的未压缩图形数据提供给显示器。
CLUT单元19将存储在显示图形平面18上的未压缩图形数据的索引颜色转换为Y、CR以及Cb值。
传送缓冲器(TB)20是用于暂时存储属于IG流的TS包的缓冲器。
编码数据缓冲器(CDB)21是用于暂时存储组成IG流的PES包的缓冲器。
流图形处理器(SPG)22将包含图形数据的PES包解码并将通过解码获得的未压缩图形数据写入对象缓冲器23。
对象缓冲器23存储多个由流图形处理器22解码的未压缩图形对象。
合成缓冲器24是存储用于图形数据绘制的控制信息的缓冲器。
合成控制器25分析存储在合成缓冲器24上的控制信息并根据分析结果执行控制。
交互图形平面26是将作为流图形处理器(SGP)22的解码结果获得的未压缩图形数据以1920×1080的分辨率写在其上的平面。图形数据由每个使用8-位索引颜色表示的像素值组成。通过参照CLUT(颜色查找表)转换索引颜色,提供存储在交互图形平面26上的未压缩图形数据用于显示。
CLUT单元27将存储在交互图形平面26上的未压缩图形数据的索引颜色转换为Y、CR以及Cb值。
合成器28用存储在显示图形平面18上的未压缩图形对象覆盖存储在视频平面11上的未压缩帧数据。作为覆盖的结果,获得了中间的合成图象,其中将文本字幕覆盖在视频上。
合成器29用从合成器28输出的中间合成图象(用绘制在显示图形平面18上的未压缩图形对象覆盖的未压缩图数据)覆盖存储在交互图形平面26上的未压缩图形对象。
开关30有选择地将从BD-ROM读取的TS包或者从本地存储器32中读取的TS包提供给传送缓冲器20。
网络设备31用于实现重放装置的通信功能。更加具体地,网络设备31用某个URL的网站建立TCP连接、FTF连接等等。
本地存储器32是用于存储从各种记录介质和通信介质提供的内容的硬盘。通过网络设备31建立的连接从网站下载的内容也存储在本地存储器32中。
源拆包器34从组成自本地存储器32读取的AV剪辑的每个TS包中除去TP_extra_header,并将没有头部的TS包输出到PID过滤器35。将TS包输出到PID过滤器35是在由到达时间时钟计数器33测量的时间到达由TP_extra_header所示的ATS的时候执行的。
PID过滤器35切换从而将从本地存储器32读取的TS包输出到PG流解码器、IG流解码器以及音频解码器中的任何一个。
开关36为音频解码器39提供从BD-ROM或者从本地存储器32读取的TS包。
传送缓冲器(TB)37用于存储载有音频流的TS包。
基本缓冲器(EB)38用于存储载有音频流的PES包。
音频解码器39将从基本缓冲器38输出的PES包解码并输出未压缩的音频数据。
传送缓冲器(TB)40用于存储载有文本字幕流的TS包。
基本缓冲器(EB)41用于存储载有文本字幕流的PES包。
文本字幕解码器42将读取到基本缓冲器41中的PES包解码并提供得到的数据用于显示。为了解码文本字幕流,文本字幕解码器42通过应用从本地存储器32分别读取的字体数据将包含在文本字幕流中的文本串展开为位图数据。将所得到的数据写在显示图形平面18上。
场景存储器43用于存储当前播放列表信息和当前剪辑信息。这里使用的当前播放列表信息是指存储在BD-ROM上的多条播放列表信息之中当前处理的播放列表信息。这里使用的当前剪辑信息是指存储在BD-ROM上的多条剪辑信息之中当前处理的剪辑信息。
控制器44由指令ROM和CPU组成。控制器44执行存储在指令ROM上的软件从而对重放装置执行全面控制。在重放装置上执行的控制响应在收到用户操作时生成的用户事件、并且根据PSR组件49的每个PSR中保存的值动态地变化。
PSR组件46是重放装置内设置的一组非易失性寄存器。该寄存器组包括64个播放器状态寄存器(PSR(1)-PSR(64))以及4,096个通用寄存器(GPR)。64个播放器状态寄存器(PSR)中的每一个表示重放装置的当前状态,比如当前重放点。64个PSR之中,PSR(5)-PSR(8)的值表示当前重放点。具体地,将PSR(5)设置为从1-999的值以表示当前重放点所属于的章节编号(chapter number)。当设置为“OxFFFF”时,PSR(5)表示重放装置中章节编号是无效的。
将PSR(6)设置为从0-999的值以表示当前重放点所属于的PL编号(当前PL编号)。
将PSR(7)设置为从0-255的值以表示当前重放点所属于的播放项编号(当前PI编号)。
将PSR(8)设置为从0-0xFFFFFFFF的值并以45kHz精度表示当前重放点(当前PTM)。
这结束了对重放装置内部结构的描述。重放装置的部件之中,视频解码器8和解码图缓冲器10具有显著的重要性。因此,将参照图19-21给出其更详细的描述。
解码图缓冲器10用于存储多个解码图。图19示出解码图缓冲器10的内部结构。如图所示,解码图缓冲器10存储包含参考图和非参考图的解码图。参考图包括短期参考图和长期参考图。将短期参考图存储到FIFO存储区中并以先入先出(FIFO)方法处理。另一方面,长期参考图不存储到FIFO存储区并且不以FIFO方法处理。
图20示出由视频解码器8对非IDR I图进行的解码过程。在对非IDR I图的解码过程中,对存储在解码图缓冲器10上的长期参考图和短期参考图进行参考。图中所示的箭头rf1、rf2以及rf3示意性地表示对短期参考图的参考,而箭头rf4、rf5以及rf6示意性地表示对长期参考图的参考。图21示出在解码IDR图的时候存储在解码图缓冲器10中的内容。在解码IDR图时,视频解码器8和解码图缓冲器10即时刷新,以便擦除存储在解码图缓冲器10上的所有短期和长期参考图。这结束了对编码图缓冲器7、视频解码器8以及解码图缓冲器10的细节描述。接下来,描述由控制器44执行的处理步骤。
控制器44控制BD驱动器1和视频解码器8以便执行MPEG4-AVC视频流的快速重放或跳跃重放。
快速重放是通过从包含在视频流中的多个图中连续地重放I图(包含IDR图和非IDR I图)而执行的。这里,EP_map示出每个连同IDR或非IDR I图的位置和大小一起的入口点。因此,通过有选择地读取并重放包含在视频流中的I图,重放装置可以以例如双倍或三倍速度执行特技播放。
有两种类型的跳跃重放:一种是时间搜索重放,另一种是PL重放。时间搜索重放是在从用户收到定时信息时执行的,并且视频流的重放是从相应于定时信息表示的特定时间和秒的重放点开始的。在执行跳跃重放时,控制器44将定时信息转换为存储在BD-ROM上的I图的地址。然后,控制器44使得从如此获得的I图地址处的TS包开始读取BD-ROM,并使得连续地将所读取的TS包提供给解码器。
PL重放是指对相应于播放列表信息表示的In_time和Out_time的点之间的视频流分段的重放。
上述重放控制的主要部分是从定时信息导出I图地址的过程。图22是将定时信息转换为I图地址的过程的流程图。在该流程图中,标注为In_time的定时信息指定将要访问以便执行跳跃重放的跳跃重放点。图22中所示的步骤S1中,将值In_time分配给PTS_EP_start。步骤S2是计算表示入口点在PTS_EP_start附近的一对EP_High_id和EP_Low_id值。更加具体地,将要计算的EP_High_id是指定In_time之前的邻近EP_High的标识符。另一方面,EP_Low_id是指定表示EP_High之后[EP_High_id]并且In_time之前的邻近时间点的EP_Low的标识符。
为了计算EP_High_id的值,控制器44持续将包含在多个EP_High值中的每个PTS_EP_High的时间长度相加,直到时间长度的总数Σ首次超过In_time。由每个PTS_EP_High表示的时间长度是其最高有效位由PTS_EP_High保存的时间单元。然后控制器44标识导致总Σ首次超出In_time的第k个EP_High_id,并将由(k-1)个所获得的值确定为EP_High_id的值。
类似地,为计算EP_Low_id的值,控制器44持续将包含在EP_Low中的每个PTS_EP_Low表示的时间长度相加到直到PTS_EP_High(EP_High_id)的总数Σ,直到得到的总数首次超过In_time。然后控制器44标识使得到的总数首次超过In_time的第h个EP_Low_id,并将由(h-1)个获得的值确定为EP_Low_id的值。
该对EP_High_id和EP_Low_id值指定In_time之前最邻近的入口点。
一旦获得EP_Low_id值,控制器44进入步骤S3-S5组成的循环。更加具体地,控制器44将值EP_Low_id分配给一个变量j(步骤S3)并执行步骤S4和S5组成的循环。在该循环的每次重复中,变量j递减“1”(步骤S4),并做出关于is_angle_change_point(PTS_EP_Low[j].is_angle_change_point)是否被设置为值“1”的判断(步骤S5)。反复地执行循环直到步骤S5的判断结果为YES,即只要将每个入口点的is_angle_change_point字段设置为“0”。
也就是说,如果由变量j指定的入口点的is_angle_change_point被设置为值“1”,终止循环。当步骤S5中的判断结果是YES时,控制器44将变量j的值分配给EP_Low_id(步骤S6)并计算具有指定EP_Low_id附近入口点的ref_to_EP_Low_id[i]的EP_High[i](步骤S7)。一旦计算出EP_Low_id和变量i的值,控制器44使用SPN_EP_Low[EP_Low_id]和SPN_EP_High[i]值计算SPN_EP_Start(步骤S8)。最终,将如此计算的SPN_EP_start值转换为I图地址(步骤S9)。
SPN是分配给单个TS包的序列号。为了读取具有特定SPN的TS包,需要将SPN转换为相关的扇区编号(sector number)。如图4所示,将TS包转换为每个包含32个TS包的对准单元,并且将每个对准单元记录在三个扇区中。因此,通过将SPN除以32,计算出包含I图的对准单元的数量。然后,通过将对准单元编号乘以3,计算出位于SPN附近的对准单元的扇区地址。以上述方式计算的扇区地址是从一个AV剪辑的开始计数的相关扇区编号。因此,通过将文件指针设置到相关的扇区编号,重放装置读取AV剪辑以将I图提供给视频解码器8。
通过上述处理,重放装置成功地标识表示以In_time之前的点定位的IDR图的入口点。读取IDR图及其后在流中多路复用的图确保为解码器提供解码相应于In_time的图所需的所有参考图。这结束了对从定时信息导出I图地址的处理的描述。接下来,给出对基于播放列表信息的重放处理的描述。
图23是通过控制器44执行的PL重放的流程图。在关于该流程图的描述中,将当前经受重放处理的播放项标注为播放项#x。首先,根据流程图,读取当前PL信息(.mpls)(步骤S101),并执行步骤S102-S110。步骤S102-S110创建一个循环,其中在每条包含在当前PL信息中的PI信息上重复步骤S103-S110。当步骤S109的判断结果为“YES”时从循环中退出该处理。当前经受该循环的播放项称为播放项#x(PI#x)。当在当前PL中设置为第一个播放项时,初始化播放项#x(步骤S102)。将当前PL中的最后播放项指定为播放项#x时,满足上述循环的终止条件(步骤S109:YES)。如果当前PL中继播放项#x之后有另一个播放项(步骤S109,NO),将下一个播放项指定为新的播放项#x(步骤S110)。
在循环中重复的步骤S103-S110中,执行以下处理。首先,将由包含在播放项#x中的Clip_information_file_name指定的剪辑信息读取到存储器(步骤S103)。使用与当前剪辑信息相关的EP_map将播放项#x的In_time中保存的值转换为I图的地址u(步骤S104)。根据在图22中所示的流程图执行In_time到I图地址的转换。以这种方式,计算出表示IDR图的地址的I图地址u。
接下来,使用与当前剪辑信息相关的EP_map将播放项#x的Out_time中保存的值转换为I图的地址v(步骤S105)。不进行图22中所示的流程图中的处理的情况下执行Out_time到I图地址的转换。相反地,用下列方式执行转换。首先,将以Out_time附近的时间点定位的I图地址指定为地址v。接下来,获得地址v之后的第一个I图的地址,并且将如此获得的地址之前的最接近的地址指定为地址w(步骤S107)。最终,控制器44命令BD-ROM驱动器1从I图地址u开始读取TS包并终止于地址w(步骤S108)。
另一方面,控制器44命令视频解码器8从相应于包含在当前PlayListMark中的mark_time_stamp的点开始输出图并终止于相应于播放项#x的Out_time的点(步骤S106)。通过上述步骤S105-S108,执行了对播放项#x使用的部分AV剪辑的重放。
然后,判断播放项#x是否是当前播放列表中的最后的PI(步骤S109)。
如果播放项#x不是当前播放列表中的最后的PI,将当前播放列表中的下一个播放项指定为新的播放项#x(步骤S110),并且过程返回步骤103。通过反复地执行上述步骤S103-S110,重放装置连续地重放由播放列表组成的播放项。
如上所述,根据本实施例,只要重放装置读取图直到由设置为值“1”的is_angle_change_point指定的入口点,就可以保证将IDR图提供给视频解码器8。也就是说,使得解码以便执行跳跃重放所需的所有参考图在解码图缓冲器10中可用。因此,需要读取以便执行跳跃重放的图的数量保持最少。
如上,即使为了高压缩率压缩视频流以使IDR图处于相对长的重放时间间隔,比如十五分钟或三十分钟,也可以高效地执行特技播放。也就是说,不用显著地牺牲由MPEG4-AVC标准达到的高压缩率的优点,重放装置就能够高效地执行特技播放。
(第二实施例)
第一实施例公开了EP_map的数据结构,其包含表示重放装置可以从那里进入AV剪辑的点的is_angle_change_point字段。本发明的第二实施例描述重放装置利用由is_angle_change_point表示的角度可变换点执行的角变换。如第一实施例所述,角变换处理包括从当前执行的AV剪辑中“退出”并“进入”另一个AV剪辑。
例如,假设BD-ROM存储多个包含从不同摄像角度(例如正面、右边以及左边)拍摄的相同物体的视频图像的AV剪辑。在包含从正面拍摄的图像的AV剪辑的重放过程中,重放装置可以从当前AV剪辑“退出”并“进入”包含从右边拍摄的图像的AV剪辑。结果,重放角度从正面变为右边。因为象改变摄像角度一样改变了重放图像,上述包括从AV剪辑“退出”并“进入”另一个AV剪辑的处理称为“角变换”。为了实现“角变换”功能,需要在AV剪辑和播放列表信息上做出一些改进。改进体现在由包含播放项信息的播放列表信息定义的称为多角度分段并且使用多个AV剪辑的结构。
图24示出实现多角度分段的应用层布局。在本实施例中,多角度分段包含四个角度。因此,多角度分段包括四个AV剪辑(00001.m2ts、00002.m2ts、00003.m2ts以及00004.m2ts)、一条播放列表信息(00001.mpls)以及四条剪辑信息(00001.clpi、00002.clpi、00003.clpi以及00004.clpi)。
图25示出播放列表信息的数据结构。如图所示,每条组成多角度分段的播放项信息包括两个部分:一个是与非多角度播放项兼容的部分,另一个是用于实现多角度分段的扩展部分。兼容部分与图16中所示的播放项信息在数据结构方面是相同的。更加具体地,兼容部分包括“Clip_information_file_name”、“Clip_codec_identifier”、“In_time”以及“Out_time”。在兼容部分中指定的AV剪辑组成多角度分段中的第一个角度分段。使用该结构,不能够处理多角度分段的重放装置(仅仅能够处理BD-RE数据结构的重放装置)能够读取包含多个角度的播放项信息并通过简单地操作兼容部分适时地执行第一个角度分段的重放。扩展部分由以下字段组成:“is_multi_angles”;“number_of_angles”;“is_seamless_angle_change”;以及“Angleinformation[2]、[3]...[j]”。
“is_multi_angles”字段表示播放项使用的重放分段是多角度分段还是非多角度分段。
如果将“is_multi_angles”字段设置为表示多角度分段的值,“number_of_angles”字段表示包含在多角度分段中的角度数量。
“is_seamless_angle_change”字段表示是否为无缝角变换(seamless angle change)准备了多角度分段。确定角变换是否无缝取决于AV剪辑是否交错存储。在AV剪辑交错存储的情况下,将“is_seamless_angle_change”设置为“ON”。另一方面,在AV剪辑不交错存储的情况下,将“is_seamless_angle_change”设置为“OFF”。
每条“Angle info[2]-[j]”涉及一个包含在多角度分段中的单个角度分段并且包括以下字段:“Clip_Information_file_name”和“Clip_codec_identifier”。
“Clip_Information_file_name[angle_id]”字段表示包含用于该角度分段的AV剪辑的文件名。
“Clip_codec_identifier[angle_id]”字段表示包含在由Clip_Information_file_name字段指定的文件中的AV剪辑的编解码器。
如上所述,“Angle info”即不包含“In_time”也不包含“Out_time”。这是因为包含在兼容部分中的In_time和Out_time共同指定了第二个及其后角度分段中每一个的起点和终点。也就是说,由包含在扩展部分中各条角度信息中的Clip_Information_file_name指定的每个AV剪辑需要与兼容部分中的Clip_Information_file_name所指定的AV剪辑具有相同的重放时间。另外,指定重放时间线上各个AV剪辑的重放定时的时间戳(系统时间时钟)需要是完全相同的值。
播放项信息的兼容部分和扩展部分都具有Clip_Information_file_name字段。因此,多个AV剪辑的每一个的重放分段被同时指定。
图26A示出由包含在播放项信息中的四个Clip_Information_file_name字段共同指定的多个AV剪辑的重放分段。图中,第一级示出四个AV剪辑(AV剪辑#1、#2、#3和#4)的四个时间线。第五级示出PL时间线。包含在播放项信息中的四个Clip_Information_file_name字段指定四个时间线。使用这种数据结构,播放项的In_time和Out_time定义可以选择用于重放的四个重放分段。也就是说,由多个可选角度图像(所谓多角度分段)组成的分段定义在PL时间线上。由In_time和Out_time指定的四个AV剪辑的四个重放分段以播放列表时间线上的相同位置定位。
以下描述如何将用于构成多角度分段的AV剪辑在BD-ROM上分割。将每个AV剪辑以称为盘区(extent)的单位存储在BD-ROM上。盘区是记录在BD-ROM上的连接区域中的一个分割部分,也称为“区段”。
例如,假设在图24中所示的AV剪辑#1-#4包含从四个不同角度拍摄的电影图像的视频数据。在这种情况下,将AV剪辑#1-#4中的每一个分成如下的五个盘区:
AV clip#1→
AV clip#1.1/5,AV clip#1.2/5,AV clip#1.3/5,AV clip#1.4/5,and AV clip#1.5/5
AV clip#2→
AV clip#2.1/5,AV clip#2.2/5,AV clip#2.3/5,AV clip#2.4/5,and AV clip#2.5/5
AV clip#3→
AV clip#3.1/5,AV clip#3.2/5,AV clip#3.3/5,AV clip#3.4/5,and AV clip#3.5/5
AV clip#4→
AV clip#4.1/5,AV clip#4.2/5,AV clip#4.3/5,AV clip#4.4/5,and AV clip#4.5/5
图26B示出播放列表时间线上的每个AV剪辑的盘区。每个AV剪辑的五个盘区在重放时间线上与另一个AV剪辑的对应盘区位于相同的位置。更加具体地,AV剪辑#1.1/5、AV剪辑#2.1/5、AV剪辑#3.1/5以及AV剪辑#4.1/5全部位于时间线上的相同位置。同样地,AV剪辑#1.2/5、AV剪辑#2.2/5、AV剪辑#3.2/5以及AV剪辑#4.2/5全部位于时间线上的相同位置。AV剪辑#1.3/5、AV剪辑#2.3/5、AV剪辑#3.3/5以及AV剪辑#4.3/5全部位于时间线上的相同位置。
四个AV剪辑的盘区交错存储(interleaving)记录在BD-ROM上。交错存储是一种记录多个文件的技术,以便将每个文件分成多个盘区而且具有相同重放定时的盘区交替记录在BD-ROM上。由于交错存储,正在读取一个文件的重放装置可以适当地切换成读取另一个文件。因此,重放装置能够在不中断重放的情况下从当前播放的AV剪辑“退出”并“进入”另一个AV剪辑,从而执行无缝的角变换。
图26B中所示的盘区如图27A所示在BD-ROM上交错存储。
图27A是示出组成BD-ROM上的多角度分段的四个AV剪辑的排列的分配图像。如上所述,将四个AV剪辑中的每个分成五个盘区。连续记录各个AV剪辑的第一个盘区(AV剪辑#1.1/5、AV剪辑#2.1/5、AV剪辑#3.1/5以及AV剪辑#4.1/5)。那些盘区AV剪辑#1.1/5-AV剪辑#5.1/5是将要在相同重放周期中重放的所有AV剪辑部分。也就是说,将所有相应于相同重放周期的盘区共同地并且连续地记录在BD-ROM上。AV剪辑#1和AV剪辑#2的盘区串联地排列在BD-ROM上。因此,通过读取AV剪辑#1.1/5连同AV剪辑#2.1/5,可以有选择地解码AV剪辑#1.1/5和AV剪辑#2.1/5中的任何一个。这使得可以实现响应用户操作的角变换。
将AV剪辑的多角度分段在第一实施例中描述的“进入”和“退出”点的边界处分成多个部分。也就是说,所分割的每个部分的起点和终点与进入点(entering point)和出口点一致。因为多个所分割的部分每个以进入点开始并以出口点结束,其是线性排列的,其中进入点和出口点交替。这种排列有助于重放装置从一个AV剪辑适当地退出并进入另一个AV剪辑。
图27B示出AV剪辑的一个盘区的内部结构。如图所示,第一个NAL单元(或第一条视频数据)包含其后为IDR图的访问单元定界符(AUD),其是可以单独解码的访问单元。IDR图的PTS和SPN由is_angle_change_point字段被设置为值“1”的入口点指定。由于以下原因,盘区不应该比预定长度短。从BD-ROM读取时,比预定长度短的盘区会导致缓冲器下溢。
一个盘区可以具有多于一个IDR图,每个作为一个进入点。然而,最后的IDR图和该盘区终点之间的盘区的长度不应该比上述预定长度短。图28示出如何确定到该盘区的连续长度的原理。图中,入口点#1-#5将is_angle_change_point字段以所述顺序设置为值“1”、“0”、“1”、“0”、和“1”。因此,从入口点#5到盘区终点的长度不应该比预定长度短。
图29示出在BD-ROM上的盘区的分配,以及入口点设置。图中,阴影部分表示位于组成AV剪辑#2的每个盘区的起点的I图(IDR图或非IDR I图)的访问单元定界符。应当注意到,为了简化说明,没有示出位于AV剪辑#3、#4和#5的起点的I图(IDR图或非IDR I图)。在组成AV剪辑#2的盘区(AV剪辑#2.1/5、AV剪辑#2.2/5、AV剪辑#2.3/5、AV剪辑#2.4/5以及AV剪辑#2.5/5)与另一个AV剪辑的盘区交错存储的情况下,对包含在与AV剪辑#2相关的剪辑信息中的EP_map进行设置以表示五个入口点#1、#2、#3、#4以及#5。入口点#1、#2、#3、#4以及#5是对应于与AV剪辑#2.1/5、AV剪辑#2.2/5、AV剪辑#2.3/5、AV剪辑#2.4/5以及AV剪辑#2.5/5中的一个相应的SPN及PTS值而表示的。
例如,假设AV剪辑#2的五个盘区中,AV剪辑#2.2/5、AV剪辑#2.4/5、AV剪辑#2.5/5中的第一图是非IDR I图,而AV剪辑#2.1/5及AV剪辑#2.3/5中的第一图是IDR帧。在那种情况下,对每个入口点#1及#3将is_angle_change_point设置为值“1”,其分别相应于AV剪辑#2.1/5及AV剪辑#2.3/5的SPN。
如上所述,AV剪辑#2的每个盘区的起点由将is_angle_change_point设置为值“1”的入口点表示。使用这种设置,将这种盘区的起点视为进入点,其是重放装置可以进入该AV剪辑的点。因为该盘区的终点紧接着将“is_angle_change_point”设置为值“1”的盘区之前,将该终点视为出口点,其是重放装置可以从该AV剪辑退出的点。图29示出设置在AV剪辑#2的盘区上的入口点。与AV剪辑#2的盘区类似,AV剪辑#1、#3、#4和#5的每个盘区的起点由is_angle_change_point_set被设置为值“1”的入口点表示。因为重放装置能够在盘区的终点和另一个盘区的起点之间的边界退出并进入AV剪辑#1、#2、#3、#4、#5,可以确保无缝的角变换。
这结束了对在根据本实施例的记录介质上所做的改进的描述。接下来,将给出在重放装置上所做的改进的描述。根据第二实施例,重放装置用包含在PSR组件46中的PSR(3)表示角度分段。PSR(3)用于存储表示当前角度的值。根据第二实施例的重放装置的控制器44根据PSR(3)中保存的值使将要被选择重放的角度分段用于重放。
图30示出PSR(3)的有效值以及与播放项和剪辑信息的关系。图的最左块示出PSR(3)的值(1-4)。
当PSR(3)设置为值“1”时,重放装置读取由播放项信息的兼容部分中的Clip_information_file_name指定的剪辑信息。结果,将包含在称为“00001.clpi”的文件中的剪辑信息读取到存储器中。然后重放装置查询包含在所读取的剪辑信息中的entry_map并执行AV剪辑(00001.m2ts)的重放。
类似地,当PSR(3)设置为值“2”时,重放装置读取由播放项信息的Angle Information[2]中的Clip_information_file_name指定的剪辑信息。结果,将包含在称为“00002.clpi”的文件中的剪辑信息读取到存储器中。然后重放装置查询包含在所读取的剪辑信息中的entry_map并执行AV剪辑(00002.m2ts)的重放。
当PSR(3)设置为值“3”时,重放装置读取由播放项信息的AngleInformation[3]中的Clip_information_file_name指定的剪辑信息。结果,将包含在称为“00003.clpi”的文件中的剪辑信息读取到存储器中。然后重放装置查询包含在所读取的剪辑信息中的entry_map并执行AV剪辑(00003.m2ts)的重放。
当PSR(3)设置为值“4”时,重放装置读取由播放项信息的AngleInformation[4]中的Clip_information_file_name指定的剪辑信息。结果,将包含在称为“00004.clpi”的文件中的剪辑信息读取到存储器中。然后重放装置查询包含在所读取的剪辑信息中的entry_map并执行AV剪辑(00004.m2ts)的重放。
以下描述由控制器44根据在图25中所示的播放项信息执行的处理步骤。图31是根据第二实施例执行播放列表重放的处理步骤的流程图。
除了将步骤S103替换为步骤S111-S114之外,该流程图基本上和图23中所示的流程图一致。更加具体地,为了执行对包含在当前播放列表信息中的一个播放项的重放,控制器44将PSR(3)中保存的值分配给变量V(步骤S111),并判断变量V是否大于或等于“2”(步骤S112)。如果变量V等于“1”(步骤S112:NO),将由播放项的兼容部分中的Clip_information_file_name指定的剪辑信息读取到存储器(步骤S113)。然后,控制器44控制BD-ROM驱动器1从相应于播放项#x的In_time的点到相应于播放项#x的Out_time的点中读取TS包序列(步骤S104-S108)。
如果变量V大于或等于“2”(步骤S112:YES),将播放项#x的Angle Information[V]中的Clip_information_file_name所指定的剪辑信息读取到存储器(步骤S114)。然后,控制器44控制BD-ROM驱动器1从相应于播放项#x的In_time的点到相应于播放项#x的Out_time的点中读取TS包序列(步骤S104-S108)。
如上所述,通过访问根据PSR(3)的值的不同AV剪辑,重放装置执行对所请求的角度分段的重放。
图32是为了从磁盘读取多角度分段所执行的处理步骤的流程图。以下关于该图进行的描述中,术语“当前地址”是指当前由光学拾取器读取的磁盘上的点的地址。术语“当前盘区”是指包含当前地址的盘区。术语“当前角度”是指包含在多角度分段中的当前播放的角度。
步骤S50-S52组成流程图的主循环。在循环的每个重复中,将当前地址更新为下一个地址(步骤S50)。
通过重复步骤S50-S52,将当前地址连续更新为一个盘区之内的下一个地址。
步骤S51中,判断是否请求了角变换。角变换是在遥控器上按下角度键或数字键而请求的。如果请求了角变换,将表示所请求的角度的值分配给变量V(步骤S53),并将准备标记设置为值“1”(步骤S54)。
这里,如果按下角度键请求角变换,将通过给PSR(3)值增加“1”所得到的值分配给变量V。另一方面,如果按下数字键请求角变换,将相应于数字键的值分配给变量V。
步骤S52中,判断当前地址是否达到当前盘区的结束地址,当读取了当前盘区的所有TS包并且因此当前地址到达盘区的终点时,步骤S52中的判断结果是“YES”。
如果步骤S52中的判断结果是“YES”,执行步骤S55-S57。步骤S55中,判断准备标记是否设置为值“1”。如果准备标记=“0”,将当前AV剪辑中的下一个盘区设置为新的当前盘区(步骤S56),并且将新的当前盘区中的第一个访问单元定界符的地址设置为新的当前地址(步骤S57)。然后再次执行步骤S50-S52组成的循环。也就是说,只要准备标记等于“0”,就读取当前角度中的下一个盘区。
另一方面,如果将准备标记设置为值“1”,如下切换将要读取的AV剪辑。这是因为所请求角度的AV clip将要在当前地址到达当前盘区的结束时开始读取。
首先,为了切换将要读取的AV剪辑,在所请求的角度分段的盘区之中,将在显示顺序中紧接着当前盘区之后的盘区指定为盘区dst(步骤S58)。然后,标识表示盘区dst中的第一个访问单元定界符的Eptop(步骤S59)。然后,判断Eptop的is_angle_change_point是否被设置为值“1”(步骤S60)。进行该判断以查看盘区dst的起点是不是重放装置可以进入该AV剪辑的点。如果is_angle_change_point被设置为值“0”,保持准备标记为值“1”的情况下执行步骤S56。通过步骤S56-S57,读取当前角度中的下一个盘区,并继续当前角度的重放。换句话说,只要盘区dst处于没有将点is_angle_change_point设置为值“1”的情况,即只要盘区dst不是重放装置可以进入该AV剪辑的点,当前角度的重放就继续。
如果is_angle_change_point被设置为值“1”,将盘区dst指定为新的当前盘区(步骤S61),并且将盘区dst中的第一个访问单元定界符的地址设置为新的当前地址(步骤S62)。然后,将准备标记清为“0”,并将PSR(3)设置为表示所请求角度的变量V(步骤S63)。然后,处理返回到步骤S113。结果,读取相应于变量V的Clip_information_file_name指定的剪辑信息,并根据如此读取的剪辑信息继续重放。
图33示出读取BD-ROM从而执行对角度图像A的重放的过程。如图所示,连续地读取AV剪辑#1的五个盘区(AV剪辑#1.1/5、AV剪辑#1.2/5、AV剪辑#1.3/5、AV剪辑#1.4/5以及AV剪辑#1.5/5)。
图34示出在收到请求角变换的用户操作时执行的读取BD-ROM的过程。如图所示,在读取AV剪辑#1的AV剪辑#1.2/5的过程中接收到请求角变换的用户操作(步骤S51:YES)。响应用户操作,将准备标记设置为值“1”(步骤S54)。这里接收的用户操作将从由AV剪辑#1显示的角度图像到由AV剪辑#2显示的角度图像的范围中请求角变换。因为在正在读取AV剪辑#1.2/5的过程中请求角变换,将AV剪辑#2.3/5指定为盘区dst,它在显示顺序紧接着当前盘区之后的盘区(步骤S58)。盘区dst的起点是由相应于表示时间点t3的PTS_EP_start的入口点#3指定的。因此,对相应于AV剪辑#2的入口点#3的is_angle_change_point进行参考(步骤S60)。在这种情况下,将入口点#3的is_angle_change_point设置为值“1”。也就是说,入口点#3是重放装置可以进入该AV剪辑的点。因此,将盘区dst(即AV剪辑#2.3/5)设置为新的当前盘区(步骤S61),并且将新的当前盘区中的第一个访问单元定界符的地址设置为新的当前地址(步骤S62)。然后,将PSR(3)设置为指定AV剪辑#2的值“2”(步骤S64)。结果,连续地读取AV剪辑#2的AV剪辑#2.3/5、AV剪辑#2.4/5、AV剪辑#2.5/5。
图35示出在收到请求角变换的用户操作时执行的读取BD-ROM的过程。如图所示,在读取AV剪辑#1的AV剪辑#1.1/5的过程中接收到请求角变换的用户操作(步骤S51:YES)。响应用户操作,将准备标记设置为值“1”(步骤S54)。因为在正在读取AV剪辑#1.1/5的过程中请求角变换,将AV剪辑#2.2/5指定为盘区dst(步骤S58)。盘区dst的起点是由相应于表示时间点t2的PTS_EP_start的入口点#2指定的。因此,对相应于AV剪辑#2的入口点#2的is_angle_change_point进行参考(步骤S60)。在这种情况下,将入口点#2的is_angle_change_point设置为值“0”。也就是说,入口点#2不是重放装置可以进入该AV剪辑的点。因此,将当前AV剪辑#1中紧接着AV剪辑#1.1/5之后的盘区AV剪辑#1.2/5设置为新的当前盘区(步骤S56)。然后,将当前盘区的起点的地址设置为新的当前地址(步骤S57)。结果,读取了AV剪辑#1.2/5。
当前地址到达AV剪辑1.2/5的结束时(步骤S52:YES),判断准备标记是否被设置为值“1”(步骤S55)。因为在这种情况下准备标记被设置为值“1”,步骤S52中的判断结果为“YES”。因此,现在将AV剪辑#2.3/5指定为盘区dst(步骤S56)。盘区dst的起点是由相应于表示时间点t3的PTS_EP_start的入口点#3指定的。因此,对AV剪辑#2的入口点#3的is_angle_change_point进行参考(步骤S60)。在这种情况下,将入口点#3的is_angle_change_point设置为值“1”。也就是说,入口点#3是重放装置可以进入该AV剪辑的点。因此,将指定为盘区dst的AV剪辑#2.3/5设置为新的当前盘区(步骤S61),并且将当前盘区中的第一个访问单元定界符的地址设置为新的当前地址(步骤S62)。然后,将PSR(3)设置为指定AV剪辑#2的值“2”(步骤S64)。结果,连续地读取AV剪辑#2的AV剪辑#2.3/5、AV剪辑#2.4/5、AV剪辑#2.5/5。
如图35中显示的例子,有可能存在所请求的角度的盘区不是进入点的情况,其中所述盘区位于PL时间线上紧接所请求的角变换的点之后。在这种情况下,继续进行对显示当前角度的盘区的重放,直到达到角度可变换点。
另外,可以进行对AV剪辑#2.3/5的角变换,直到AV剪辑#1的盘区的重放起点(AV剪辑#1.3/5),其位于播放列表时间线上相同点。换句话说,一旦开始重放AV剪辑#1的盘区(AV剪辑#1.3/5),对AV剪辑#2.3/5的角变换不再可行。
如上所述,根据本实施例,组成AV剪辑的多个盘区中的每一个的起点由入口点表示。另外,参照各个入口点的is_angle_change_point字段,重放装置可以容易地标识这些入口点中哪些是重放装置可以进入所请求的角度图像的AV剪辑的点。通过给解码器提供位于进入点的IDR图,重放装置可以平稳的执行角变换,即使视频流是MPEG4-AVC流。
(第三实施例)
第一实施例涉及用于高效地执行包含15-或30-分钟间隔的IDR图的视频流的跳跃重放的改进。相反,本发明的第三实施例涉及一种技术,允许选择哪些包含在视频流中的图将要编码为IDR图。换句话说,本实施例允许在设置编码条件的时候进行选择,以便将最佳的图编码为IDR图。MPEG4-AVC视频流用MPEG4-AVC标准编码并通过剪辑信息由播放列表信息参考。考虑到播放列表信息的性质,本实施例允许选择IDR图。
以下,给出根据这个实施例对播放列表信息的数据结构的描述。图36示出根据第三实施例的播放列表信息的内部结构。图中所示的播放列表信息与第二实施例的播放列表信息的区别在于额外包含了PLMark(PLMark#1-#n)。实现对IDR图的选择以便更高效地执行对具有这种数据结构的播放列表信息的PL重放。
图36中所示的PLMark信息(PLMark())指定作为章节点的PL时间线上的任意分段。如图36中引出线pm1所示,PLMark信息包括以下字段:“ref_to_PlayItem_id”和“mark_time_stamp”。图37示出由PLMark信息定义的章节。图中,第一级示出AV剪辑时间线,而第二级示出PL时间线。箭头pk1和pk2表示两条PLMark信息,各指定一个播放项(由ref_to_Playltem_id指定)和一个点(由mark_time_stamp指定)。结果,PLMark信息在PL时间线上定义三个章节(章节#1、#2以及#3)。这结束了对PLMark信息的描述。
图38示出用于包含在播放列表信息中的播放项#1的视频流的图,连同entry_map设置的有关部分。例如,假设播放项#1的In_time在时间线上指定了时间点t2。在这种情况下,位于时间点t2的图将被编码为IDR图。结果,在执行播放列表信息重放时,简单地通过从位于播放项#1的In_time的图开始读取图正确地执行根据播放列表#1的重放。
图39示出由播放项#2使用的视频流的图。由播放项#1的In_time指定的图是IDR图。然而,由播放项#2的In_time指定的图可能是或可能不是IDR图。也就是说,除了播放列表信息中的第一条播放项信息之外,由各条播放项信息的In_time指定的图不必要是IDR图。相反地,可以将每个这种图编码为非IDR I图。这是因为MPEG4-AVC格式允许在相对长的时期中使用参考图。例如,位于播放项#2的In_time和Out_time之间的图以及位于播放项#3的In_time到Out_time之间的图使用位于播放项#1的In_time到Out_time之间的长期参考图编码。结果,不必将IDR图放置在播放项#2的In_time处或播放项#3的In_time处。利用长期参考图的编码将方便地减少IDR图的数量。因此,将MPEG4-AVC视频流以高压缩率编码。但是,应该注意,播放列表信息中的第一个播放项没有将要用作参考的之前的图。因此,在从第一个播放项的In_time开始执行重放的时候,没有为解码图缓冲器10提供参考图。也就是说,需要将由第一个播放项的In_time指定的图编码为IDR图。
位于播放项信息#2的In_time和Out_time之间的多个图之中,需要将PLMark#1指定的图编码为IDR图。将PLMark信息所指定的各图视为章节点。当执行章节搜索以从PLMark信息所指定的图开始跳跃重放时,没有为解码图缓冲器10提供参考图。因此,PLMark信息所指定的每个I图需要是IDR图。
图40示出由播放项#3使用的视频流的图。与图39类似,图40中所示的播放项#3的In_time指定的图可能是或可能不是IDR图。然而,需要将PLMark#3所指定的图编码为IDR图。因此,因为没有参考图用于从该章节开始重放,可以适当地执行PLMark重放。
这结束了对根据本实施例在记录介质上所做的改进的描述。接下来,给出对根据本实施例在重放装置上所做的改进的描述。执行播放列表重放的处理步骤基本上和关于第一实施例所描述的那些一致。播放列表重放是通过将播放列表信息中所表示的In_time和Out_time转换为I图地址而执行的。
包含在播放列表信息中的多条播放项信息中,第一条播放项信息具有指定IDR图的In_time。因为这种IDR图是由is_angle_change_point字段被设置为值“1”的入口点表示的。因此,通过从相应于In_time的入口点的SPN_EP_start所指定的点开始读取图,控制器44可以保证将IDR图提供给视频解码器8。响应IDR图被提供给视频解码器8,清空解码图缓冲器10。
如上所述,根据本实施例的重放装置不需要搜索接近于In_time的入口点。相反地,本实施例的重放装置可以简单地通过读取相应于BD-ROM上的In_time的点将IDR图提供给视频解码器8。结果,以高速度执行PL重放。
另外,因为PLMark信息定义章节,根据本实施例的重放装置可以使用播放列表信息执行章节搜索功能和章节跳过(chapter skip)功能。使用章节搜索功能,重放装置首先指定由包含在PLMark信息中的ref_to_PlayItem_id所参考的播放项信息。然后重放装置执行对如此指定的播放项信息所使用的AV剪辑的跳跃重放,从包含在PLMark信息中的mark_time_stamp所指定的点开始。为此,控制器44指定具有接近包含在PLMark信息中的mark_time_stamp值的PTS_EP_start值的多个入口点中的一个。然后控制器44使从相应于如此指定的入口点的SPN_EP_start的I图开始重放。
使用章节跳过功能,重放装置指定定义包含当前重放点的章节之前或之后紧接着的章节的PLMark信息。然后重放装置进行对这种PLMark信息定义的章节的搜索。如上所述,已经将由PLMark信息中的mark_time_stamp所指定的每个图编码为IDR图。每个is_angle_change_point字段被设置为值“1”的入口点具有表示IDR图的重放时间的PTS_EP_start值。因此,通过从任何这种入口点的SPN_EP_start值所指定的点开始读取图,重放装置可以保证将IDR图提供给视频解码器8。
以下参照流程图描述执行章节搜索和章节跳过功能的处理步骤。图41是章节搜索功能的处理步骤的流程图。
首先,根据该流程图,重放装置处于待命模式(stand-by mode),用于在章节菜单上选择章节的用户操作(步骤S124)。在收到选择章节的用户操作时,将定义所选择章节的PLMark信息指定为当前PlayListMark(步骤S125)。在步骤S126中,将当前PlayListMark中的ref_to_playitem_id字段所指定的PI指定为播放项#x。步骤S127中,读取由播放项#x的Clip_information_file_name指定的剪辑信息。步骤S128中,使用与当前剪辑信息相关的EP_map将当前PlayListMark的mark_time_stamp值转换为I图地址u。这里,PLMark信息的mark_time_stamp值所指定的图由is_angle_change_point字段被设置为值“1”的入口点表示。也就是说,I图地址u是IDR图的地址。
步骤S129中,使用与当前剪辑信息相关的EP_map将播放项#x的Out_time转换为I图地址v。步骤S130中,重放装置命令解码器从相应于当前PlayListMark的mark_time_stamp值的点开始并且在相应的播放项#x的Out_time的点结束输出TS包。通过上述步骤,重放装置转换I图地址u和v然后返回图23中所示的步骤S107。结果,促使读取与当前读取的AV剪辑不同的AV剪辑的TS包,从而将重放切换到所请求的章节。这结束了对用于执行章节搜索功能的处理步骤的描述。接下来,将给出对用于章节跳过功能的处理步骤的描述。
图42是章节跳过功能的处理步骤的流程图。
步骤S131中,将重放装置处于待命模式,用于在遥控器上设置的SkipNext键或SkipBack键上进行的用户操作。收到用户操作时,执行步骤S132以判断是否按下SkipNext键或SkipBack键。如果按下了SkipBack键,在步骤S133中将方向标记设置为值“-1”。另一方面,如果按下了SkipNext键,在步骤S134中将方向标记设置为值“+1”。
步骤S135中,将方向标记中保存的值加入当前PlayListMark编号,并且将加法结果设置为新的当前PlayListMark编号。在步骤S131中按下SkipNext键的情况下,将方向标记设置为值“+1”。因此,增加当前PlayListMark编号。另一方面,在步骤S131中按下SkipBack键的情况下,将方向标记设置为值“-1”。因此,减少当前PlayListMark编号。将PLMark信息如上设置之后,执行图41中描述的相同处理步骤S126-S130以读取适当的TS包。
这里,将PLMark的mark_time_stamp所指定的图编码为IDR图。因此,每个is_angle_change_point字段被设置为值“1”的入口点具有表示IDR图的显示时间的PTS_EP_start值。通过从这种入口点的SPN所指定的点开始读取图,重放装置可以保证将IDR图适时地提供给视频解码器8。
如上所述,根据本实施例,编码AV剪辑从而将IDR图插入播放列表信息中的第一个播放项的In_time所指定的点以及PLMark信息所指定的章节点。这种安排消除了对重放装置搜索接近于由播放项的In_time指定的点或者由PLMark信息定义的章节点的IDR图的需要。结果,以高速度执行播放列表重放。
(补充说明)
不用说,前面的描述没有覆盖实践本发明的所有模式。本发明也可以通过以下任何修改(A)、(B)、(C)、(D)...等等实现。应当注意到,本申请的权利要求中所述的发明点是上述实施例及其修改的扩大或者归纳描述。扩大和归纳的范围反映了在提出本申请时的技术现状。
(A)根据上述实施例,将BD-ROM描述为根据本发明的记录介质。然而,应当注意到根据本发明的记录介质的特征在于其上记录的EP_map并且这些特征不依赖于BD-ROM的物理特性。任何其它记录介质是可用的只要该记录介质可以存储EP_map。这种记录介质的具体例子包括:光盘,比如ROM、DVD-RAM、DVD-RW、DVD-R、DVD+RW、DVD+R、CD-R以及CD-RW;以及磁光光盘,比如PD和MO。根据本发明的记录介质的例子还包括半导体存储卡,比如CompactFlash卡(注册商标)、SmartMedia卡、记忆棒、MultiMediaCard以及PCM-CIA卡。该例子还包括(i)磁盘,比如软盘、SuperDisk、Zip和Clik!以及(ii)可移动硬盘驱动器,比如ORB、Jaz、SparQ、SyJet、EZFley以及Microdrive。
(B)以上每个实施例涉及重放装置将存储在BD-ROM上的AV剪辑解码并将解码的AV剪辑输出到电视机的情况。作为替代,可以为重放装置仅仅配备一个BD-ROM驱动器,而其余部件在电视机中设置。在这种情况下,可以将重放装置和电视机加入与IEEE 1394连接器相连的本地网络。另外,尽管以上实施例涉及连接到电视机的重放装置,可以将重放装置替代为集成设置的显示器。而且,重放装置可以仅仅包括执行处理的主要部份的系统LSI(集成电路)。
(C)使用流程图中示出的程序的信息处理实际上是使用硬件资源实现的。因此,描述流程图中所示的处理步骤的程序自身也是发明。上述实施例都涉及将程序并入重放装置中的情况,但程序可以独立于重放装置使用。实践程序的行为包括(1)制造行为,(2)收费或者不收费的分发的行为,(3)出租行为,(4)进口行为,(5)通过双向电子通信网络提供给公众的行为以及(6)使用店面展示、目录或者小册子提供分发或出租的行为。
(D)根据上述实施例,数字流是符合BD-ROM标准的AV剪辑,但本发明也可以适用于DVD-Video标准或DVD-Video记录标准的VOB(视频对象)。VOB是符合ISO/IEC 13818-1标准的程序流并通过多路复用视频流和音频流获得。而且,AV剪辑中的视频流可以是MPEG4视频流或WMV视频流。此外,AV剪辑中的音频流可以是线性PCM音频流、Dolby AC-3音频流、MP3音频流、MPEG-AAC音频流或dts音频流。
(E)根据第三实施例,还可以使播放列表信息中的每个播放项的In_time所指定的所有图是IDR图。
工业适用性
根据本发明的记录介质和重放装置可以用于比如家庭影院系统的个人使用。然而,本发明可以根据上述实施例中公开的内部结构批量制造。因此,本发明的记录介质和重放装置可以工业制造或用于工业规模。基于上述考虑,本发明的记录媒体和重放装置具有工业适用性。
附图简述
图1示出使用根据本发明的记录介质的一种形式;
图2示出BD-ROM的内部结构;
图3示意性示出扩展名为“.m2ts”的文件的结构;
图4示出将载有AV剪辑的TS包记录在BD-ROM上的过程;
图5A示出以编码顺序排列的多个图;
图5B示出图5A中所示的视频流的GOP结构;
图6A示出以显示顺序和编码顺序排列的closed-GOP的内部结构;
图6B示出open-GOP的内部结构;
图7A示出IDR图的内部结构;
图7B示出非IDR I图的内部结构;
图7C示出非IDR I图及其他图之间的依赖关系;
图8示出非IDR I图可能具有的依赖关系;
图9示出通过其将IDR或非IDR I图转换为TS包的过程;
图10示出一条剪辑信息的内部结构;
图11A示出与视频流相关的Stream_Coding_Info;
图11B示出与音频流相关的Stream_Coding_Info;
图12示出进入一个AV剪辑和从该AV剪辑退出到另一个AV剪辑的原理;
图13示出与图5A和5B中所示的视频流相关的EP_map设置;
图14以表格形式显示表示图13中所示的入口点#1-#5的PTS_EP_start和SPN_EP_start的成对的EP_Low和EP_High值;
图15示出将要读取从而执行跳跃重放的数据范围;
图16示出播放列表信息的数据结构;
图17示出AV剪辑和播放列表信息之间的关系;
图18示出根据本发明的重放装置的内部结构;
图19示出解码图缓冲器10的内部结构;
图20示出由视频解码器8对非IDR I图的解码过程;
图21示出在解码IDR图的时候存储在解码图缓冲器10中的内容;
图22是将定时信息转换为I图地址的过程的流程图;
图23是通过控制器44执行PL重放的流程图;
图24示出实现多角度分段的应用布局;
图25示出播放列表信息的数据结构;
图26A示出由包含在播放项信息中的四个Clip_Information_file_name字段共同指定的多个AV剪辑的重放分段;
图26B示出播放列表时间线上的每个AV剪辑的盘区;
图27A是显示组成BD-ROM上的多角度分段的四个AV剪辑的排列的分配图像;
图27B示出AV剪辑的一个盘区的内部结构;
图28示出如何确定到该盘区的连续长度的原理;
图29示出BD-ROM上的盘区的分配,连同入口点设置;
图30示出PSR(3)的有效值以及与播放项和剪辑信息的关系;
图31是根据本发明的第二实施例执行播放列表信息的重放的处理步骤的流程图。
图32是所执行的从磁盘读取多角度分段的处理步骤的流程图;
图33示出读取BD-ROM以便执行对角度图像A的重放的过程;
图34示出在收到请求角变换的用户操作时执行的读取BD-ROM的过程;
图35示出在收到请求角变换的用户操作时执行的读取BD-ROM的过程;
图36示出播放列表信息的内部结构;
图37示出由PLMark信息定义的章节;
图38示出由播放项#1使用的视频流的图,连同entry_map设置的相关部分;
图39示出由播放项#2使用的视频流的图;
图40示出由播放项#3使用的视频流的图;
图41是用于执行章节搜索功能的处理步骤的流程图;以及
图42是用于执行章节跳过功能的处理步骤的流程图。
引用号码的描述
1    BD驱动器
2    到达时间时钟计数器
3    源拆包器
4    PID过滤器
5    传送缓冲器
6    多路复用缓冲器
7    编码图缓冲器
8    视频解码器
10   解码图缓冲器
11   视频平面
12   传送缓冲器
13   编码数据缓冲器
14   流图形处理器
15   对象缓冲器
16   合成缓冲器
17   合成控制器
18   显示图形平面
19   CLUT单元
20   传送缓冲器
21    编码数据缓冲器
22    流图形处理器
23    对象缓冲器
24    合成缓冲器
25    合成控制器
26    交互图形平面
27    CLUT单元
28    合成器
29    合成器
30    开关
31    网络设备
32    本地存储器
33    到达时间时钟计数器
34    源拆包器
35    PID过滤器
36    开关
37    传送缓冲器
38    基本缓冲器
39    音频解码器
40    传送缓冲器
41    缓冲器
42    文本字幕解码器
43    场景存储器
44    控制器
46    PSR组件
100   BD-ROM
200   重放装置
300   遥控器
400   电视机