信息处理设备、信息处理方法和程序转让专利

申请号 : CN201310042875.3

文献号 : CN103179422B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 小林义行

申请人 : 索尼公司

摘要 :

本发明公开了一种信息处理设备、信息处理方法和程序。该信息处理设备、信息处理方法和程序能够针对作为其中并列布置了由用于存储左眼用图像的L区域和用于存储右眼用图像的R区域构成的两个平面的图像的存储区域并且存储视频图像的存储区域的视频平面,将作者能够处理视频平面仅限于L区域和R区域之一。设定要存储在L区域中的图像的大小和位置的L用API和设定要存储在R区域中的图像的大小和位置的R用API之中的一个API设定与另一API设定的图像的大小和位置相同的大小和位置。图形平面的偏移值和PG平面的偏移值也按存储在视频平面中的图像的缩放比率被缩放。本发明可应用到用于再现BD的BD播放器等等。

权利要求 :

1.一种信息处理设备,

其中用于存储视频图像的视频平面是用于对应于两个画面的图像的存储区域,该存储区域由L区域和R区域构成,L区域是用于存储对应于一个画面的左眼图像的存储区域,R区域是用于存储对应于一个画面的右眼图像的存储区域,其中所述信息处理设备包括:

设定存储在所述L区域中的图像的位置和大小的L用API装置;以及设定存储在所述R区域中的图像的位置和大小的R用API装置,并且所述L用API装置包括L视频缩放API装置和L视频定位API装置,其中,所述L视频缩放API装置执行缩放,以便控制来自视频解码器的左眼用图像的大小以获得根据来自BD-J应用的请求的大小,并将其提供给所述L视频定位API装置,所述L视频定位API装置控制来自所述L视频缩放API装置的左眼用图像的位置以获得根据来自BD-J应用的请求的位置;

所述R用API装置包括R视频缩放API装置和R视频定位API装置,其中,所述R视频缩放API装置控制来自所述视频解码器的右眼用图像的大小以获得根据来自所述L视频缩放API装置的请求的大小,并将其提供给所述R视频定位API装置,所述R视频定位API装置控制来自所述R视频缩放API装置的右眼用图像的位置以获得根据来自所述L视频定位API装置的请求的位置。

2.一种信息处理方法,

其中用于存储视频图像的视频平面是用于对应于两个画面的图像的存储区域,该存储区域由L区域和R区域构成,L区域是用于存储对应于一个画面的左眼图像的存储区域,R区域是用于存储对应于一个画面的右眼图像的存储区域,所述L用API设定存储在所述L区域中的图像的位置和大小,

所述R用API设定存储在所述R区域中的图像的位置和大小,

所述L用API包括L视频缩放API和L视频定位API,其中,所述L视频缩放API执行缩放,以便控制来自视频解码器的左眼用图像的大小以获得根据来自BD-J应用的请求的大小,并将其提供给所述L视频定位API,所述L视频定位API控制来自所述L视频缩放API的左眼用图像的位置以获得根据来自BD-J应用的请求的位置;

所述R用API包括R视频缩放API和R视频定位API,其中,所述R视频缩放API控制来自所述视频解码器的右眼用图像的大小以获得根据来自所述L视频缩放API的请求的大小,并将其提供给所述R视频定位API,所述R视频定位API控制来自所述R视频缩放API的右眼用图像的位置以获得根据来自所述L视频定位API的请求的位置。

说明书 :

信息处理设备、信息处理方法和程序

[0001] 分案申请说明
[0002] 本申请是申请日为2010年3月24日、申请号为201080001695.5、题为“信息处理设备、信息处理方法和程序”的中国发明专利申请(PCT国际申请PCT/JP2010/055134)的分案申请。

技术领域

[0003] 本发明涉及信息处理设备、信息处理方法和程序,具体地涉及例如可用来从记录介质适当地播放3D(三维)图像的内容的信息处理设备、信息处理方法和程序。

背景技术

[0004] 例如,二维(2D)图像内容是诸如电影之类的内容的主流,但是最近,实现立体观看的三维(3D)图像(图形)内容已经吸引了注意。
[0005] 存在用于3D图像(以下也之称为立体图像)显示方法的各类方法,但无论使用何种方法,3D图像的数据量都大于2D图像的数据量。
[0006] 另外,诸如电影之类的高分辨率图像的内容可能具有很大的大小,并且为了以具有大数据量的3D图像的形式记录这样大量的图像内容,则需要提供大容量记录介质。
[0007] 这种大容量记录介质的示例包括Blu-Ray(注册商标)盘(以下也称之为BD),比如BD(Blu-Ray(注册商标))-ROM(只读存储器)等。
[0008] 在BD中,可以处理BD-J(BD Java(注册商标)),并且根据BD-J,可以提供高交互性功能(PTL1)。
[0009] 引用列表
[0010] 专利文献
[0011] PTL1:国际公布No.2005/052940

发明内容

[0012] 技术问题
[0013] 顺便说一下,在当前的BD标准中,还没有规定如何向BD记录或播放3D图像内容。
[0014] 然而,让执行3D图像内容的创作的作者来决定如何记录或播放3D图像内容可能导致3D图像内容不适合播放。
[0015] 本发明是考虑到上述问题而做出的,并且使得能够从诸如BD之类的记录介质适当地播放3D图像内容。
[0016] 解决问题的方案
[0017] 根据本发明一个方面的信息处理设备或程序是如下的信息处理设备或使得计算机充当信息处理设备的程序:其中被配置为存储视频图像的视频平面是一存储区域,在该存储区域中,并排布置了L区域和R区域的两个图像大小的存储区域,其中L区域是用于存储左眼用图像的一个图像大小的图像存储区域,R区域是用于存储右眼用图像的一个图像大小的图像存储区域;该信息处理设备包括:用于设定要存储在L区域中的图像的大小和位置的L用API(应用编程接口);以及用于设定要存储在R区域中的图像的大小和位置的R用API;其中,L用API和R用API之中的一个API设定与另一API设定的图像的大小和位置相同的大小和相同的位置;并且其中,L用API和R用API使作为用于向图形图像提供视差以从原始图像生成左眼用图像和右眼用图像的数据的图形平面偏移值和作为用于向PG(呈现图形)图像提供视差以从原始图像生成左眼用图像和右眼用图像的数据的PG平面偏移值经历缩放,该缩放利用在执行缩放以设定要存储在视频平面中的视频图像的大小时的缩放比率来进行。
[0018] 根据本发明一个方面的信息处理方法是如下的信息处理方法:其中被配置为存储视频图像的视频平面是一存储区域,在该存储区域中,并排布置了L区域和R区域的两个图像大小的存储区域,其中L区域是用于存储左眼用图像的一个图像大小的图像存储区域,R区域是用于存储右眼用图像的一个图像大小的图像存储区域;其中,在用于设定要存储在L区域中的图像的大小和位置的L用API(应用编程接口)和用于设定要存储在R区域中的图像的大小和位置的R用API之中,一个API设定与另一API设定的图像的大小和位置相同的大小和相同的位置;并且其中,L用API和R用API使作为用于向图形图像提供视差以从原始图像生成左眼用图像和右眼用图像的数据的图形平面偏移值和作为用于向PG(呈现图形)图像提供视差以从原始图像生成左眼用图像和右眼用图像的数据的PG平面偏移值经历缩放,该缩放利用在执行缩放以设定要存储在视频平面中的视频图像的大小时的缩放比率来进行。
[0019] 在本发明的一个方面中,被配置为存储视频图像的视频平面是一存储区域,在该存储区域中,并排布置了L区域和R区域的两个图像大小的存储区域,其中L区域是用于存储左眼用图像的一个图像大小的图像存储区域,R区域是用于存储右眼用图像的一个图像大小的图像存储区域,L用API和R用API之中的一个API设定与另一API设定的图像的大小和位置相同的大小和相同的位置。L用API是用于设定要存储在L区域中的图像的大小和位置的API,并且R用API是用于设定要存储在R区域中的图像的大小和位置的API。另外,L用API和R用API使作为用于向图形图像提供视差以从原始图像生成左眼用图像和右眼用图像的数据的图形平面偏移值和作为用于向PG(呈现图形)图像提供视差以从原始图像生成左眼用图像和右眼用图像的数据的PG平面偏移值经历缩放,该缩放利用在执行缩放以设定要存储在视频平面中的视频图像的大小时的缩放比率来进行。
[0020] 该信息处理设备可以是独立的设备,或者可以是构成一设备的内部块。
[0021] 另外,该程序可通过经由传输介质传输来提供,或通过记录在记录介质中来提供。
[0022] 本发明的有利效果
[0023] 根据本发明,可以适当地播放3D图像内容。

附图说明

[0024] 图1是用于描述BDMV格式的概要的示图。
[0025] 图2是用于描述BD文件的管理格式的示图。
[0026] 图3是示出BD播放器的硬件的配置示例的框图。
[0027] 图4是用于描述3D兼容播放器进行的3D图像处理的概要的示图。
[0028] 图5是用于描述BD-J应用在图形平面11上描绘图形3D图像的示图。
[0029] 图6是示出图形模式的示图,在该模式中在图形平面11上描绘图形3D图像的BD-J应用播放图形图像。
[0030] 图7是示出3D兼容播放器的功能配置示例的框图。
[0031] 图8是示出充当配置之一的、播放视频图像的视频模式的示图。
[0032] 图9是示出充当配置之一的、播放背景图像的背景模式的示图。
[0033] 图10是示出作为设备平面的图形平面11、PG平面12、视频平面13和背景平面14之间的关系的示图。
[0034] 图11是示出充当配置之一的图像帧(分辨率)和颜色深度的示图。
[0035] 图12是用于描述在3D图像失配的情况下利用第二描绘方法来描绘3D图像的方法的示图。
[0036] 图13是用于描述设备平面的示图。
[0037] 图14是示出在BD-J对象文件内提供的用于指定配置的比特字段的示图。
[0038] 图 15 是 示 出 initial_video_mode、initial_graphics_mode 和 initial_background_mode的默认规定值的示图。
[0039] 图16是示出除KEEP_RESOLUTION重放以外的重放的视频+PG、BD-J图形和背景的分辨率(图像帧)的组合的示图。
[0040] 图17是示出除KEEP_RESOLUTION重放以外的重放的视频+PG、BD-J图形和背景的分辨率(图像帧)的组合的示图。
[0041] 图18是示出配置的改变处理的示例的示图。
[0042] 图19是示出图形模式和背景模式的预定初始值的示图。
[0043] 图20是示出在播放1920×2160像素的3D图像(立体图像)的情况下要播放的图形和背景模式的示图。
[0044] 图21是用于描述由于BD-J应用对API的调用而引起的充当配置的分辨率(图像帧)的改变的示图。
[0045] 图22是用于描述图形模式的改变的示图。
[0046] 图23是示出图形模式从立体图形模式到偏移图形模式的改变的示图。
[0047] 图24是用于描述背景模式的改变的示图。
[0048] 图25是用于描述视频模式的改变的示图。
[0049] 图26是示出3D兼容播放器的功能配置示例的框图。
[0050] 图27是示出在每种视频模式中可选择的PG重放模式和TextST重放模式的示图。
[0051] 图28是示出3D兼容播放器的功能配置示例的框图。
[0052] 图29是用于描述3D兼容播放器关于PG的处理的示图。
[0053] 图30是用于描述3D兼容播放器处在3D图像的重放和2D图像的重放之间切换的示图。
[0054] 图31是用于描述作者对视频的位置和大小的设定以及3D兼容播放器对视频的位置和大小的校正的示图。
[0055] 图32是示出3D兼容播放器的功能配置示例的框图。
[0056] 图33是示出1920×2160像素的图形平面11的示图。
[0057] 图34是示出3D兼容播放器的功能配置示例的框图。
[0058] 图35是用于描述3D兼容播放器进行的图形处理的流程图。
[0059] 图36是用于描述3D兼容播放器进行的图形处理的流程图。
[0060] 图37是用于描述3D兼容播放器进行的图形处理的流程图。
[0061] 图38是示出在图形平面11上描绘的GUI的示例的示图。
[0062] 图39是示出第一焦点方法和第二焦点方法的示图。
[0063] 图40是用于描述3D兼容播放器的焦点管理的流程图。
[0064] 图41是示出可用来查看光标的3D图像的显示屏幕上的位置和光标在图形平面11上的位置的示图。
[0065] 图42是用于描述图形的左眼用图像和右眼用图像之间的匹配的示图。
[0066] 图43是示出3D兼容播放器的功能配置示例的框图。
[0067] 图44是示出跨越L图形平面11L和R图形平面11R的图像的示图。
[0068] 图45是示出用于动画的左眼用图像的描绘和用于动画的右眼用图像的描绘的示图。
[0069] 图46是示出3D兼容播放器的功能配置示例的框图。
[0070] 图47是示出图像帧精确动画(Image Frame Accurate Animation)的扩展API的定义的示图。
[0071] 图48是示出同步帧精确动画(Sync Frame Accurate Animation)的扩展API的定义的示图。
[0072] 图49是示出图像帧精确动画的样本代码的示图。
[0073] 图50是示出图像帧精确动画的样本代码的示图。
[0074] 图51是示出同步帧精确动画的样本代码的示图。
[0075] 图52是示出同步帧精确动画的样本代码的示图。
[0076] 标号列表
[0077] 10 逻辑平面
[0078] 11 图形平面
[0079] 11L L图形平面
[0080] 11R R图形平面
[0081] 12 PG平面
[0082] 12L L-PG平面
[0083] 12R R-PG平面
[0084] 13 视频平面
[0085] 13L L视频平面
[0086] 13R R视频平面
[0087] 14 背景平面
[0088] 14L L背景平面
[0089] 14R R背景平面
[0090] 15 混合器
[0091] 21 逻辑屏幕
[0092] 101 总线
[0093] 102 CPU
[0094] 103 ROM
[0095] 104 RAM
[0096] 105 硬盘
[0097] 106 输出单元
[0098] 107 输入单元
[0099] 108 通信单元
[0100] 109 驱动器
[0101] 110 输入/输出接口
[0102] 111 可移除记录介质
[0103] 201L、201R、202L、202R 缓冲器
[0104] 211 后缓冲器
[0105] 211L、211R、212 前缓冲器
[0106] 212L、212R 缓冲器
[0107] 213 前缓冲器
[0108] 213L、213R 缓冲器
[0109] 231 图像缓冲器
[0110] 232L、232R 像素传送设备
[0111] 241 图形存储器
[0112] 242L、242R 像素传送设备

具体实施方式

[0113] 以下将描述本发明的实施例被应用到BD的情况。
[0114] [BD的管理结构]
[0115] 首先,对于当前BD,将描述在“Blu-ray Disc Read-Only Format Ver1.0 part3 Audio Visual Specifications”中规定的、诸如记录在作为只读BD的BD-ROM中的内容亦即AV(音频/视频)数据等等之类的管理结构(以下也称之为“BDMV格式”)。
[0116] 例如,通过诸如MPEG(运动图片专家组)视频、MPEG音频等等之类的编码方法编码并根据MPEG2系统复用的比特流被称为剪辑AV流(或AV流)。剪辑AV流被一文件系统以文件的形式记录在BD中,该文件系统是在作为关于BD的标准之一的“Blu-ray Disc Read-Only Format part2”中定义的。剪辑AV流的文件被称为剪辑AV流文件(或AV流文件)。
[0117] 剪辑AV流文件是文件系统上的管理单位,并且剪辑AV流文件(的剪辑AV流)的重放所必需的信息等等以数据库的形式被记录在BD中。该数据库在作为BD标准之一的“Blu-ray Disc Read-Only Format part3”中规定。
[0118] 图1是用于描述BDMV格式的概要的示图。
[0119] BDMV格式由四层构成。
[0120] 最低层是剪辑AV流所属的层,并且以下在适当时也将被称为剪辑层。
[0121] 比剪辑层高一层的层是用于针对剪辑AV流指定重放位置的播放列表(Movie PlayList)所属的层,并且以下也将被称为播放列表层。
[0122] 比播放列表层高一层的层是用于针对播放列表指定重放顺序的命令所构成的电影对象(Movie Object)等等所属的层,并且以下也将被称为对象层。
[0123] 比对象层高一层的层(最高层)是用于管理要存储在BD中的标题等等的索引表所属的层,并且以下也将被称为索引层。
[0124] 将进一步描述剪辑层、播放列表层、对象层和索引层。
[0125] 剪辑AV流、剪辑信息(Clip Information)等等属于剪辑层。
[0126] 剪辑AV流是其中充当内容数据的视频数据、音频数据等等被转换成TS(MPEG2 TS(传输流))格式的流。
[0127] 剪辑信息(Clip Information)是关于剪辑AV流的信息,并且以文件的形式被记录在BD中。
[0128] 注意,剪辑AV流在必要时包括图形流,例如字幕、菜单等等。
[0129] 字幕(的图形)的流被称为呈现图形(PG(Presentation Graphics))流,并且菜单(的图形)的流被称为交互图形(IG(Interactive Graphics))流。
[0130] 另外,剪辑AV流文件和相应剪辑信息(与该剪辑AV流文件的剪辑AV流有关的剪辑信息)的文件(剪辑信息文件)的集合被称为剪辑(Clip)。
[0131] 剪辑是由剪辑AV流和剪辑信息构成的单个对象。
[0132] 当在时间轴上布局与构成剪辑的剪辑AV流相对应的内容时,包括第一和最后位置(时间点)的多个位置被设定为访问点。访问点原则上是由上层的播放列表(PlayList)利用时间戳指定的。
[0133] 构成剪辑的剪辑信息包括以播放列表利用时间戳指定的访问点表示的剪辑AV流的位置的地址(逻辑地址)。
[0134] 播放列表(Movie PlayList)属于播放列表层。
[0135] 播放列表是由要播放的AV流文件以及用于指定该AV流文件的重放位置的、包括重放开始点(IN点)和重放结束点(OUT点)在内的播放项目(PlayItem)构成的。
[0136] 从而,播放列表是由一组播放项目构成的。
[0137] 现在,播放项目的重放意味着对利用该播放项目中包括的IN点和OUT点指定的剪辑AV流的区间的重放。
[0138] 电影对象(Movie Object)和BD-J对象(Blue-ray Disc Java(注册商标)对象)属于对象层。
[0139] 电影对象包括将HDMV(高清晰度电影)导航命令程序(导航命令)与该电影对象关联起来的终端信息。
[0140] 导航命令是用于控制播放列表的重放的命令。终端信息包括用于允许用户与用于播放BD的BD播放器的交互操作的信息。在BD播放器中,基于终端信息来控制诸如菜单的调用、标题搜索等等之类的用户操作。
[0141] BD-J对象是Java(注册商标)程序,并且可向用户提供比导航命令更先进(更复杂)的交互功能。
[0142] 索引表(Index table)属于索引层。
[0143] 索引表是用于定义BD-ROM盘的标题的最高级别表。
[0144] 索引表的条目(字段)对应于标题,并且提供了从每个条目到与该条目相对应的标题(HDMV标题或BD-J标题)的对象(电影对象或BD-J对象)的链接。
[0145] 图2是用于描述“Blu-ray Disc Read-Only Format Part3”规定的BD文件的管理结构的示图。
[0146] 在BD中,以分级方式利用目录结构管理文件。
[0147] 现在,在图2中,一目录下的文件(包括目录)指的是紧挨该目录下的文件,而一目录中包括的文件指的是紧挨该目录下的文件以及该目录的所谓子目录下的文件。
[0148] BD的最高分级目录是根目录。
[0149] 紧挨根目录下有目录“BDMV”和目录“CERTIFICATE”。
[0150] 与著作权有关的信息(文件)被存储在目录“CERTIFICATE”中。
[0151] 图1中描述的BDMV格式的文件被存储在目录“BDMV”中。
[0152] 两个文件“index.bdmv”和“MovieObject.bdmv”被存储在紧挨目录“BDMV”下。注意,除“index.bdmv”和“MovieObject.bdmv”之外的文件(不包括目录)不能被存储在紧挨目录“BDMV”下。
[0153] 文件“index.bdmv”包括图1中描述的索引表,充当与用于播放BD的菜单有关的信息。
[0154] 例如,BD播放器基于文件“index.bdmv”,播放包括诸如播放BD的所有内容、只播放特定的章节、反复执行重放或者显示预定菜单之类的内容项目的初始菜单(的屏幕)。
[0155] 另外,在每个项目被选择时要运行的电影对象(Movie Object)可被设定到文件“index.bdmv”,并且在用户从初始菜单屏幕中选择一个项目的情况下,BD播放器运行被设定到文件“index.bdmv”的Movie Object命令。
[0156] 文件“MovieObject.bdmv”是包括Movie Object的信息的文件。Movie Object包括用于控制被记录在BD中的PlayList的重放的命令,并且例如,BD播放器通过选择被记录在BD中的Movie Object之一并且运行它,来播放被记录在BD中的内容(标题)。
[0157] 紧挨目录“BDMV”之下设有目录“PLAYLIST”、“CLIPINF”、“STREAM”、“AUXDATA”、“META”、“BDJO”、“JAR”和“BACKUP”。
[0158] 播放列表的数据库被存储在目录“PLAYLIST”中。具体而言,播放列表文件“xxxxx.mpls”被存储在目录“PLAYLIST”中。由5位数字“xxxxx”和扩展名“mpls”构成的文件名被用作播放列表文件“xxxxx.mpls”的文件名。
[0159] 剪辑的数据库被存储在目录“CLIPINF”中。具体而言,关于每个剪辑AV流文件的剪辑信息文件“xxxxx.clip”被存储在目录“CLIPINF”中。由5位数字“xxxxx”和扩展名“clpi”构成的文件名被用作剪辑信息文件“xxxxx.clpi”的文件名。
[0160] 剪辑AV流文件“xxxxx.m2ts”被存储在目录“STREAM”中。TS被存储在剪辑AV流文件“xxxxx.m2ts”中。由5位数字“xxxxx”和扩展名“m2ts”构成的文件名被用作剪辑AV流文件“xxxxx.m2ts”的文件名。
[0161] 注意,除扩展名以外的匹配文件名被用作构成给定剪辑的剪辑信息文件“xxxxx.clip”和剪辑AV流文件“xxxxx.m2ts”的文件名。从而,可以很容易指定构成给定剪辑的剪辑信息文件“xxxxx.clip”和剪辑AV流文件“xxxxx.m2ts”。
[0162] 用于菜单显示的声音文件、字体文件、字体索引文件、位图文件等等被存储在目录“AUXDATA”中。
[0163] 在图2中,文件“sound.bdmv”以及具有扩展名“otf”的文件被存储在目录“AUXDATA”中。
[0164] 预定的声音数据(音频数据)被存储在文件“sound.bdmv”中。该“sound.bdmv”被固定地用作文件“sound.bdmv”的文件名。
[0165] 用于字幕、BD-J对象(应用)等等的显示的字体数据被存储在具有扩展名“otf”的文件中。一5位数字被用作具有扩展名“otf”的文件的文件名的除扩展名以外的部分。
[0166] 元数据文件被存储在目录“META”中。BD-J对象文件被存储在目录“BDJO”和“JAR”中。记录在BD中的文件的备份被存储在目录“BACKUP”中。
[0167] [BD播放器的硬件配置示例]
[0168] 图3是示出用于播放BD的BD播放器的硬件配置示例的框图。
[0169] 图3中的BD播放器被配置为执行其中记录有3D图像内容的BD的重放。
[0170] 诸如CPU(中央处理单元)102等等之类的处理器(计算机)被嵌入在BD播放器中。输入/输出接口110经由总线101连接到CPU102。
[0171] 在通过用户经由输入/输出接口110对输入单元107进行操作等等而输入命令时,CPU 102根据该命令运行存储在ROM(只读存储器)103中的程序。或者,CPU 102把记录在硬盘105或安装在驱动器109上的盘100中的程序加载到RAM(随机访问存储器)104,并且运行该程序。
[0172] 因此,CPU 102执行下文中描述的各类处理。然后,例如,CPU 102在必要时经由输入/输出接口110从输出单元106输出其处理结果,或者从通信单元108发送,或者进一步记录在硬盘105中,等等。
[0173] 注意,输入单元107由键盘、鼠标、麦克风等等构成。另外,输出单元106由LCD(液晶显示器)、扬声器等等构成。通信单元108由网络卡等等构成。
[0174] 现在,CPU 102运行的程序可被预先记录在充当嵌入在BD播放器中的记录介质的硬盘105或ROM 103中。
[0175] 或者,程序可被存储(记录)在诸如盘100等等之类的可移除记录介质中。这种可移除记录介质可以以所谓的封装软件的形式提供。这里,可移除记录介质的示例包括柔性盘、CD-ROM(致密盘只读存储器)、MO(磁光)盘、DVD(数字多功能盘)、磁盘、以及半导体存储器。
[0176] 注意,除了把程序从这种可移除记录介质安装到BD播放器中之外,程序也可经由通信网络或广播网络等等被下载到BD播放器以被安装到内置的硬盘105中。具体而言,例如,程序可经由用于数字卫星广播的人造卫星从下载站点被无线地传送到BD播放器,或者可经由诸如LAN(局域网)、因特网等等之类的网络通过线缆被传送到BD播放器。
[0177] 在图3中,盘100例如是BD,其中以维持与在传统播放器处要播放的BD的兼容性的方式记录了3D图像内容。
[0178] 从而,盘100可在传统播放器处播放,也可在图3中的BD播放器处播放,图3中的BD播放器是能够播放3D图像内容的BD播放器(以下也称之为“3D兼容播放器”)。
[0179] 现在,传统播放器是能够播放其中记录有2D图像内容的BD、但不能播放3D图像内容的BD播放器。
[0180] 利用传统播放器,能够从盘100播放2D图像内容,但不能播放3D图像内容。
[0181] 另一方面,利用图3中的作为3D兼容播放器的BD播放器,不仅可从盘100播放2D图像内容,还可从盘100播放3D图像内容。
[0182] 在图3中的BD播放器中,当作为BD盘的盘100被安装在驱动器109上时,CPU 102通过控制驱动器109来执行盘100的重放。
[0183] [对BD-J应用的描述]
[0184] BD-J应用(BD-J标题)(BD-J对象)被记录在盘100(图3)中作为3D图像内容之一。
[0185] 在图3中的作为3D兼容播放器的BD播放器中,CPU 102运行Java(注册商标)虚拟机,并且在该Java(注册商标)虚拟机上,BD-J应用被运行。
[0186] 图4是用于描述3D兼容播放器进行的3D图像处理的概要(BD-J立体图形的概要)的示图。
[0187] 3D兼容播放器在逻辑平面10、PG平面12或视频平面13上描绘3D图像。注意,逻辑平面10、PG平面12和视频平面13的实体例如是图3中的RAM 104中的部分存储区域。
[0188] 3D兼容播放器描绘的3D图像的示例包括在BD标准中规定的BD-J图形、PG(Presentation Graphics,呈现图形)、TextST(Text subtitle,文本字幕)、视频、以及背景。
[0189] 现在,在图4中,图形3D图像(立体图形源)由以下部分构成:作为要由左眼观察的图像的左眼用图像(L(左)视域),以及作为要由右眼观察的图像的右眼用图像(R(右)视域)。
[0190] PG 3D图像(立体PG源)、视频3D图像(立体视频源)以及背景3D图像(立体背景源)也由左眼用图像和右眼用图像构成。
[0191] 注意,构成视频3D图像等等的左眼用图像和右眼用图像例如可利用H.264 AVC(高级视频编码)/MVC(多视域视频编码)等等来编码。
[0192] 现在,在H.264 AVC/MVC中,定义了被称为“基本视域”(Base View)的图像流,以及被称为“从属视域”(Dependent View)的图像流。
[0193] 对于基本视域,不允许以另一流作为基准图像的预测性编码,但是对于从属视域,则允许以基本视域作为基准图像的预测性编码。例如,在左眼用图像和右眼用图像之中,左眼用图像可被视为基本视域,而右眼用图像可被视为从属视域。
[0194] 3D兼容播放器在图形平面11或背景平面14上描绘出在逻辑平面10上描绘的3D图像。
[0195] 图形平面11由用于存储左眼用图像的L图形平面(L(左)图形平面)11L和用于存储右眼用图像的R图形平面(R(右)图形平面)11R构成。
[0196] 在逻辑平面10上描绘的构成图形3D图像的左眼用图像被描绘在L图形平面11L上,并且右眼用图像被描绘在R图形平面11R上。
[0197] 这里,L图形平面11L是一个图像那么大的图像存储区域(L区域),用于存储要由左眼观察的用于L(左)的图像(左眼用图像)。并且,R图形平面11R是一个图像那么大的图像存储区域(R区域),用于存储要由右眼观察的用于R(右)的图像(右眼用图像)[0198] L图形平面11L和R图形平面11R的实体,即图形平面11的实体,是与逻辑平面10相分离的、图3中的RAM 104中的部分存储区域。
[0199] PG平面12、视频平面13和背景平面14也类似地构成。
[0200] PG平面12由用于存储左眼用图像的L-PG平面(L(左)PG平面)12L和用于存储右眼用图像的R-PG平面(R(右)PG平面)12R构成。
[0201] 3D兼容播放器在L-PG平面12L上描绘构成PG 3D图像的左眼用图像的图像,并且在R-PG平面12R上描绘右眼用图像。
[0202] 视频平面13由用于存储左眼用图像的L视频平面(L(左)视频平面)13L和用于存储右眼用图像的R视频平面(R(右)视频平面)13R构成。
[0203] 3D兼容播放器在L视频平面13L上描绘构成视频3D图像的左眼用图像,并且在R视频平面13R上描绘右眼用图像。
[0204] 背景平面14由用于存储左眼用图像的L背景平面(L(左)背景平面)14L和用于存储右眼用图像的R背景平面(R(右)背景平面)14R构成。
[0205] 在逻辑平面10上描绘的构成背景3D图像的左眼用图像被描绘在L背景平面14L上,并且右眼用图像被描绘在R背景平面14R上。
[0206] 描绘(记录)在图形平面11、PG平面12、视频平面13和背景平面14上的左眼用图像和右眼用图像被提供给混合器15。
[0207] 混合器15将来自图形平面11的图形左眼用图像、来自PG平面12的PG左眼用图像、来自视频平面13的视频左眼用图像以及来自背景平面14的背景左眼用图像相混和(混合)(合成),以输出作为该合成的结果的左眼用图像。
[0208] 另外,混合器15将来自图形平面11的图形右眼用图像、来自PG平面12的PG右眼用图像、来自视频平面13的视频右眼用图像以及来自背景平面14的背景右眼用图像相混和并合成,以输出作为该合成的结果的右眼用图像。
[0209] 混合器15输出的左眼用图像被提供给图中未示出的显示器,作为用于左侧的显示输出(L(左)显示输出)。并且,混合器15输出的右眼用图像被提供给图中未示出的显示器,作为用于右侧的显示输出(R(右)显示输出)。
[0210] 利用图中未示出的显示器,通过交替或同时显示来自混合器15的左眼用图像和右眼用图像,来显示3D图像。
[0211] 在图形平面11、PG平面12、视频平面13和背景平面14之中,BD-J应用可在图形平面11和背景平面14上执行图像的描绘。
[0212] 现在,在本实施例中,让我们假定BD-J应用只能访问逻辑平面10,并且BD-J应用不能直接访问图形平面11和背景平面14。
[0213] 从而,BD-J应用只能对逻辑平面10执行图像的描绘,但不能直接对图形平面11和背景平面14执行图像的描绘。因此,BD-J应用通过将图像描绘在逻辑平面10上,来间接地将图像描绘在图形平面11或背景平面14上。
[0214] 然而,以下,为了描述方便,BD-J应用经由逻辑平面10进行的对图形平面11或背景平面14的图像描绘将被简单地描述为对图形平面11或背景平面14的图像描绘。
[0215] 注意,3D兼容播放器可被配置为不包括逻辑平面10。在此情况下,BD-J应用直接在图形平面11或背景平面14上描绘图像。
[0216] 除了在图形平面11和背景平面14上描绘图像之外,BD-J应用还可执行对视频和PG的重放控制,例如对视频和PG的缩放或位置(显示位置)的控制,等等。
[0217] 注意,BD-J应用将视频和PG作为一个集合来(总体地)处理。换言之,BD-J应用不区分(不能区分)视频和PG。
[0218] [BD-J应用对图形图像的描绘]
[0219] 图5是用于描述BD-J应用在图形平面11(立体图形平面)上进行的图形3D图像的描绘的示图。
[0220] 第一描绘方法和第二描绘方法可被用作3D图像描绘方法。
[0221] 图5中的A是用于描述第一描绘方法的示图。
[0222] 在第一描绘方法中,BD-J应用的作者对立体平面执行描绘。
[0223] 具体而言,在第一描绘方法中,图形3D图像的数据由左眼用图像的数据和右眼用图像的数据构成,并且BD-J应用在逻辑平面10上描绘左眼用图像和右眼用图像。
[0224] 然后,描绘在逻辑平面10上的左眼用图像和右眼用图像被不加改变地描绘在图形平面11上。具体而言,描绘在逻辑平面10上的左眼用图像被不加改变地描绘在L图形平面11L上,并且描绘在逻辑平面10上的右眼用图像被不加改变地描绘在R图形平面11R上。
[0225] 图5中的B是用于描述第二描绘方法的示图。
[0226] 在第二描绘方法中,BD-J应用的作者对非立体平面(mono plane)执行描绘。另外,作者同时提供偏移值(图形平面偏移值)。3D兼容播放器基于该偏移值来从该非立体平面生成立体平面。
[0227] 也就是说,在第二描绘方法中,3D图像的数据由以下部分构成:充当用于生成3D图像的所谓源的原始图像的数据,以及用于通过向原始图像应用视差来从原始图像生成左眼用图像和右眼用图像的视差的数据。
[0228] BD-J应用在逻辑平面10上描绘原始图像。3D兼容播放器分别在L图形平面11L和R图形平面11R上描绘通过向描绘在逻辑平面10上的原始图像应用视差而生成的左眼用图像和右眼用图像。
[0229] 现在,如果我们假定视差的数据是偏移值(偏移),那么从该原始图像的位置起在水平方向(x方向)上要移位的像素数目可被用作该偏移值。
[0230] 对于L图形平面11L,描绘在逻辑平面10上的原始图像被描绘在这样一个位置上:该位置在水平方向上移位了该偏移值,其中从左向右的方向为正方向。也就是说,作为在水平方向上把描绘在逻辑平面10上的原始图像的位置移位该偏移值的结果而获得的图像作为左眼用图像被描绘在L图形平面11L上。
[0231] 对于R图形平面11R,描绘在逻辑平面10上的原始图像被描绘在这样一个位置上:该位置在水平方向上移位了该偏移值,其中从右向左的方向为正方向。也就是说,作为在水平方向上把描绘在逻辑平面10上的原始图像的位置移位该偏移值的结果而获得的图像作为右眼用图像被描绘在R图形平面11R上。
[0232] 注意,描绘在逻辑平面10上的原始图像被水平移位并被描绘在L图形平面11L上,从而,不执行描绘的区域(像素)出现在要描绘的区域(在水平方向上的位置不被移位的情况下执行描绘的区域)内。L图形平面11L的其中不执行原始图像的描绘的区域被用透明颜色来描绘。对于R图形平面11R,也是如此。
[0233] 现在,在偏移值为正的情况下,利用左眼用图像和右眼用图像显示的3D图像看起来是在与未示出的显示器的显示屏幕垂直的深度方向上朝着近侧向上浮出的。另一方面,在偏移值为负的情况下,利用左眼用图像和右眼用图像显示的3D图像看起来是在深度方向上朝着深度侧凹入的。
[0234] 图6是示出其中BD-J应用在图形平面11上描绘图形3D图像从而再现图形图像的图形模式的示图。
[0235] 让我们规定,对于基准解码器模型(Reference Decoder Model),3D兼容播放器经常性地包括两个平面(L图形平面11L和R图形平面11R),并且BD-J应用对逻辑平面10执行描绘。
[0236] 然后,最终,描绘在L图形平面11L(L图形平面)上的图形的左眼用图像被与描绘在L视频平面13L(L视频平面)上的视频(以及PG)的左眼用图像相混和。并且,描绘在R图形平面11R(R图形平面)上的图形的右眼用图像被与描绘在R视频平面13R(R视频平面)上的视频的右眼用图像相混和。
[0237] 图6中的A示出了mono-logical-plane+偏移值模式,这是图形模式中的一种模式Mode#1(以下也称之为“偏移图形模式”)。
[0238] 在偏移图形模式中,BD-J应用在逻辑平面10上描绘作为图形2D图像的非立体图像。另外,BD-J应用向3D兼容播放器给出一偏移值。
[0239] 3D兼容播放器根据被描绘在逻辑平面10上的非立体图像以及从BD-J应用给出的偏移值,生成作为图形3D图像的立体图像。另外,BD播放器在L图形平面11L(L区域)上描绘(存储)构成该立体图像的左眼用图像,并且还在R图形平面11R(R区域)上描绘(存储)构成该立体图像的右眼用图像。
[0240] 然后,混合器15把描绘(存储)在L图形平面11L上的图形左眼用图像与描绘在L视频平面13L上的视频(和PG)左眼用图像相混和,并且输出混和结果。另外,混合器15把描绘在R图形平面11R上的图形右眼用图像与描绘在R视频平面13R上的视频右眼用图像相混和,并且输出混和结果。
[0241] 图6中的B示出了stereo-logical-plane模式,这是图形模式中的一种模式Mode#2(以下也称之为“立体图形模式”)。
[0242] 在立体图形模式中,BD-J应用在逻辑平面10上描绘构成作为图形3D图像的立体图像的左眼用图像和右眼用图像。
[0243] 3D兼容播放器在L图形平面11L上描绘出被描绘在逻辑平面10上的左眼用图像,并且还在R图形平面11R上描绘出被描绘在逻辑平面10上的右眼用图像。
[0244] 然后,混合器15把描绘在L图形平面11L上的图形左眼用图像与描绘在L视频平面13L上的视频左眼用图像相混和,并且输出混和结果。另外,混合器15把描绘在R图形平面11R上的图形右眼用图像与描绘在R视频平面13R上的视频右眼用图像相混和,并且输出混和结果。
[0245] 图6中的C示出了forced-mono-logical-plane模式,这是图形模式之中的一种模式Mode#3(以下也称之为“强制非立体图形模式”)。
[0246] 在强制非立体图形模式中,BD-J应用在逻辑平面10上描绘作为图形3D图像的立体图像。
[0247] 3D兼容播放器在L图形平面11L和R图形平面11R之一上,例如只在L图形平面11L上,描绘出被描绘在逻辑平面10上的立体图像的L图形图像和R图形图像之一,例如只描绘出L图形图像。
[0248] 然后,混合器15把描绘在L图形平面11L上的图形非立体图像与描绘在L视频平面13L上的视频图像相混和,并且输出混和结果。
[0249] 图6中的D示出了flattened-stereo-logical-plane模式,这是图形模式之中的一种模式Mode#4(以下也称为“平坦化立体图形模式”)。
[0250] 在平坦化立体图形模式中,BD-J应用在逻辑平面10上描绘构成作为图形3D图像的立体图像的左眼用图像和右眼用图像。
[0251] 3D兼容播放器在L图形平面14L和R图形平面14R两者上,描绘出被描绘在逻辑平面10上的左眼用图像和右眼用图像之一,例如只描绘出左眼用图像,并且丢弃另外的右眼用图像。
[0252] 然后,描绘在L图形平面14L上的图形左眼用图像被提供给混合器15,并且描绘在图形平面14R上的图形左眼用图像也被提供给混合器15(作为右眼用图像)。
[0253] 图6中的E示出了mono-logical-plane模式,这是图形模式中的一种模式Mode#5(以下也称之为“非立体图形模式”)。
[0254] 在非立体图形模式中,BD-J应用在逻辑平面10上描绘作为图形2D图像的非立体图像。
[0255] 3D兼容播放器在L图形平面11L和R图形平面11R之一上,例如只在L图形平面11L上,描绘出被描绘在逻辑平面10上的非立体图像。
[0256] 然后,混合器15把描绘在L图形平面11L上的图形非立体图像与描绘在L视频平面13L上的视频图像相混和,并且输出混和结果。
[0257] [偏移值的设定和获得]
[0258] 在3D兼容播放器中,偏移值可被应用到图形平面11和PG平面12。
[0259] 这里,要被应用到图形平面11的偏移值(用于向图形图像提供视差的数据)也将被称为图形平面偏移(Graphics plane offset)值。另外,要被应用到PG平面12的偏移值(用于向PG图像提供视差的数据)也将被称为PG平面偏移(PG plane offset)值。
[0260] 对于图形平面偏移值的设定/获得,定义诸如以下的专用于偏移值的读取/写入的API,从而该专用API可执行图形平面偏移值的设定/获得。
[0261] org.bluray.ui.3D
[0262] public void setOffset(int offset)
[0263] 默认值为0。
[0264] public int getOffset()
[0265] 默认值为0。
[0266] 注意,setOffset()方法是用于在内部存储区域中存储(设定)图形平面偏移值的方法,该内部存储区域是在BD播放器的内部设置的存储区域,并且getOffset()是用于获得被存储在BD播放器的该内部存储区域中的图形平面偏移值的方法。
[0267] 另外,BD播放器具有用于存储与BD的重放有关的信息的PSR(Player Setting Register,播放器设定寄存器),并且图形平面偏移值和PG平面偏移值被预留用于PSR的传统播放器,例如,可被存储在PSR#21中。
[0268] 这里,该内部存储区域和PSR的实体是图3中的RAM 104或硬盘105的部分存储区域。
[0269] 顺便说一下,在当前的BD标准(BD-ROM标准)中,禁止从BD-J应用向BD播放器的PSR中写入。
[0270] 允许图3中的作为3D兼容播放器的BD播放器从BD-J应用向PSR中执行写入将导致必须大规模修改当前BD标准。
[0271] 从而,在3D兼容播放器中,通过将偏移值定义为一般首选项(General Preference)来间接使能在PSR中的写入。
[0272] 具体而言,3D兼容播放器包括一般首选项API(应用编程接口),用于以偏移值作为符合BD标准的一般首选项(General Preference)之一对用于存储与BD的重放有关的信息的PSR#21进行偏移值的读取/写入,其中该偏移值是用于向符合BD标准的图形或PG图像提供视差的数据。
[0273] 这里,PSR#21被映射到BD标准第3-2部分附录L的一般首选项,其值可由org.dvb.user.GeneralPreference API来设定或获得。
[0274] 供一般首选项API访问PSR的一般首选项名称(General Preference name)可以如下来定义。
[0275] 具体而言,图形平面偏移值的一般首选项名称例如可被定义为“graphics offset”。另外,PG平面偏移值的一般首选项名称例如可被定义为“subtitle offset”。
[0276] 现在,让我们假定“graphics offset”一般首选项和“subtitle offset”一般首选项的默认值例如都为0。
[0277] 另外,对于图形平面偏移值的设定/获得,定义诸如以下的专用API,从而该专用API可执行图形平面偏移值的设定/获得。
[0278] org.bluray.ui.3D
[0279] public void setOffset(int offset)
[0280] 默认值为0。
[0281] public int getOffset()
[0282] 默认值为0。
[0283] 注意,setOffset()是用于在BD播放器的内部存储区域(这里例如是PSR)中存储图形平面偏移值的方法,并且getOffset()是用于获得在BD播放器的内部存储区域中存储的图形平面偏移值的方法。
[0284] 如上所述,图7是示出作为用于执行符合BD标准的图形和PG(在下文中包括TextST,除非另有指明)的偏移值的读取/写入的3D兼容播放器的图3中的BD播放器的功能配置示例的框图。
[0285] 具体而言,图7中的A是示出作为包括专用于偏移值的读取/写入的API的3D兼容播放器的图3中的BD播放器的功能配置示例的框图,该API用于对3D兼容播放器的内部存储区域执行符合BD标准的图形和PG的偏移值的读取/写入。
[0286] 在图7中的A中的3D兼容播放器中,BD-J应用请求专用于偏移值的读取/写入的API(一般首选项API)读取/写入(设定或获得)偏移值。
[0287] 响应于来自BD-J应用的请求,专用于偏移值的读取/写入的API将偏移值(图形平面偏移值、PG平面偏移值)设定到3D兼容播放器的内部存储区域,或者从3D兼容播放器的内部存储区域获得偏移值,并将其返回给BD-J应用。
[0288] 注意,在图7中的A中,根据被设定到3D兼容播放器的内部存储区域的偏移值,重放控制引擎(Playback Control Engine)执行控制,以从BD-J应用描绘在逻辑平面10上的图像(原始图像)生成(播放)左眼用图像和右眼用图像。
[0289] 如上所述,定义了专用于偏移值的读取/写入的API,该专用于偏移值的读取/写入的API响应于来自BD-J应用的请求,对3D兼容播放器的内部存储区域执行偏移值的读取/写入,该偏移值是用于向符合BD标准的图形和PG图像提供视差的数据,从而用于向图像提供视差的偏移值可从BD-J应用间接设定或获得。
[0290] 图7中的B是示出作为包括用于以符合BD标准的图形和PG的偏移值作为符合BD标准的一般首选项之一来对PSR#21执行偏移值的读取/写入的一般首选项API的3D兼容播放器的图3中的BD播放器的功能配置示例的框图。
[0291] 在图7中的B中的3D兼容播放器中,BD-J应用请求一般首选项API读取/写入(设定或获得)偏移值。
[0292] 具体而言,在要读取/写入的偏移值是图形平面偏移值的情况下,BD-J应用调用一般首选项API,其中一般首选项名称(General Preference name)为“graphics offset”。
[0293] 另外,在要读取/写入的偏移值是PG平面偏移值的情况下,BD-J应用调用一般首选项API,其中一般首选项名称为“subtitle offset”。
[0294] 响应于来自BD-J应用的请求,一般首选项API将偏移值设定到PSR(播放器设定寄存器)的PSR#21,或者从PSR#21获得偏移值,并将其返回给BD-J应用。
[0295] 注意,在图7中的B中,重放控制引擎(Playback Control Engine)根据设定到PSR#21的偏移值,执行对于从BD-J应用描绘在逻辑平面10上的图像(原始图像)生成(播放)左眼用图像和右眼用图像的控制。
[0296] 如上所述,根据来自BD-J应用的请求,一般首选项API以偏移值(其是向符合BD标准的图形和PG图像赋予视差的数据)作为符合BD标准的一般首选项之一,对存储与BD的重放有关的信息的PSR#21执行偏移值的读取/写入,从而向图像赋予视差的偏移值可从BD-J应用间接设定或获得。
[0297] [配置]
[0298] 图8是示出作为视频平面13的配置(configuration)之一的、用于播放视频图像的视频模式的示图。
[0299] 图8中的A示出了mono-video模式(以下也称之为“非立体视频模式”),这是视频模式之中的一种模式Mode#1。
[0300] 在非立体视频模式中,3D兼容播放器在L视频平面13L(L区域)和R视频平面13R(R区域)之一上,例如只在L视频平面13L上,描绘(存储)作为视频2D图像的非立体图像。
[0301] 然后,仅把描绘(存储)在L视频平面13L上的视频非立体图像提供给混合器15。
[0302] 图8中的B示出了dual-mono-video模式(以下也称之为“双非立体视频模式”),这是视频模式之中的一种模式Mode#2。
[0303] 在双非立体视频模式中,3D兼容播放器在L视频平面13L(L区域)上描绘(存储)作为视频2D图像的非立体图像(作为左眼用图像),并且还在R视频平面13R(R区域)上描绘(存储)该非立体图像(作为右眼用图像)。
[0304] 然后,描绘(存储)在L视频平面13L上的视频非立体图像和描绘(存储)在R视频平面13R上的视频非立体图像被提供给混合器15。
[0305] 图8中的C示出了stereo-video模式(以下也称之为“立体视频模式”),这是视频模式之中的一种模式Mode#3。
[0306] 在立体视频模式中,3D兼容播放器在L视频平面13L上描绘构成作为视频3D图像的立体图像的左眼用图像,并且还在R视频平面13R上描绘构成该立体图像的右眼用图像。
[0307] 然后,描绘(存储)在L视频平面13L上的视频左眼用图像和描绘(存储)在R视频平面13R上视频右眼用图像都被提供给混合器15。
[0308] 图8中的D示出了flattened-stereo-video模式(以下也称之为“平坦化立体视频模式”),这是视频模式之中的一种模式Mode#4。
[0309] 在平坦化立体视频模式中,3D兼容播放器把构成作为视频3D图像的立体图像的左眼用图像和右眼用图像之一(例如仅左眼用图像)描绘在L视频平面13L和R视频平面13R两者上,并且丢弃另外的右眼用图像。
[0310] 然后,描绘(存储)在L视频平面13L上的视频左眼用图像被提供给混合器15,并且描绘在R视频平面13R上的视频左眼用图像也被提供给混合器15(作为右眼用图像)。
[0311] 图8中的E示出了forced-mono-video模式(以下也称之为“强制非立体视频模式”),这是视频模式之中的一种模式Mode#5。
[0312] 在强制非立体视频模式中,3D兼容播放器在L视频平面13L和R视频平面13R之一上,例如只在L视频平面13L上,描绘出构成作为视频3D图像的立体图像的左眼用图像和右眼用图像之一,例如只描绘出左眼用图像,并且丢弃另外的右眼用图像。
[0313] 然后,仅把描绘(存储)在L视频平面13L上的视频左眼用图像提供给混合器15。
[0314] 图9是示出作为背景平面14的配置(configuration)之一的、用于播放背景图像的背景模式的示图。
[0315] 图9中的A示出了dual-mono-background模式(以下也称之为“双非立体背景模式”),这是背景模式之中的一种模式Mode#1。
[0316] 在双非立体背景模式中,BD-J应用在逻辑平面10上描绘作为背景模式中的2D图像的非立体图像作为左眼用图像和右眼用图像。
[0317] 然后,3D兼容播放器在L背景平面14L(L区域)上描绘出(存储)被描绘在逻辑平面10上的左眼用图像,并且还在R背景平面14R(R区域)上描绘出(存储)被描绘在逻辑平面10上的右眼用图像。
[0318] 描绘(存储)在L背景平面14L上的背景左眼用图像和描绘在R背景平面14R上的背景右眼用图像都被提供给混合器15。
[0319] 图9中的B示出了stereo-background模式(以下也称之为“立体背景模式”),这是背景模式之中的一种模式Mode#2。
[0320] 在立体背景模式中,BD-J应用在逻辑平面10上描绘构成作为背景3D图像的立体图像的左眼用图像和右眼用图像。
[0321] 然后,3D兼容播放器在L背景平面14L上描绘出被描绘在逻辑平面10上的左眼用图像,并且还在R背景平面14R上描绘出被描绘在逻辑平面10上的右眼用图像。
[0322] 描绘在L背景平面14L上的背景左眼用图像和描绘在R背景平面14R上的背景右眼用图像都被提供给混合器15。
[0323] 图9中的C示出了flattened-stereo-background模式(以下也称之为“平坦化立体背景模式”),这是背景模式之中的一种模式Mode#3。
[0324] 在平坦化立体背景模式中,BD-J应用在逻辑平面10上描绘构成作为背景3D图像的立体图像的左眼用图像和右眼用图像。
[0325] 然后,3D兼容播放器把被描绘在逻辑平面10上的左眼用图像和右眼用图像之一(例如仅左眼用图像)描绘在L背景平面14L和R背景平面14R两者上,并且丢弃另外的右眼用图像。
[0326] 描绘在L背景平面14L上的背景左眼用图像被提供给混合器15,并且描绘在R背景平面14R上的背景左眼用图像也被提供给混合器15(作为右眼用图像)。
[0327] 图9中的D示出了mono-background模式(以下也称之为“非立体背景模式”),这是背景模式之中的一种模式Mode#4。
[0328] 在非立体背景模式中,BD-J应用在逻辑平面10上描绘作为背景2D图像的非立体图像。
[0329] 然后,3D兼容播放器在L背景平面14L和R背景平面14R之一上,例如仅在L背景平面14L上,描绘出被描绘在逻辑平面10上的非立体图像。
[0330] 描绘在L背景平面14L上的背景非立体图像被提供给混合器15。
[0331] 图9中的E示出了forced-mono-background模式(以下也称之为“强制非立体背景模式”),这是背景模式之中的一种模式Mode#5。
[0332] 在强制非立体背景模式中,BD-J应用在逻辑平面10上描绘构成作为背景3D图像的立体图像的左眼用图像和右眼用图像。
[0333] 然后,3D兼容播放器在L背景平面14L和R背景平面14R之一上,例如仅在L背景平面14L上,描绘出在逻辑平面10上描绘的左眼用图像和右眼用图像之一,例如仅描绘出左眼用图像,并且丢弃另外的右眼用图像。
[0334] 描绘在L背景平面14L上的背景左眼用图像被提供给混合器15。
[0335] 现在,让我们假定图4中示出的存储图形的图形平面11、存储视频的视频平面13(以及存储PG的PG平面12)以及存储背景的背景平面14也被统称为设备平面。
[0336] 在图3中的作为3D兼容播放器的BD播放器中,设备平面的配置被定义为由以下四个属性来表示:(1)图像帧和颜色深度,(2)视频模式(Video mode),(3)图形模式(BD-J Graphics mode),以及(4)背景模式(Background mode)。
[0337] 图10示出了作为设备平面的图形平面11、PG平面12、视频平面13和背景平面14之间的关系。
[0338] 图形平面11由充当作为用于存储左眼用图像的存储区域的L区域的L图形平面11L以及充当作为用于存储右眼用图像的存储区域的R区域的R图形平面11R构成。然后,在图形平面11中,并排布置了L图形平面11L和R图形平面11R。
[0339] 具体而言,在图10中,L图形平面11L和R图形平面11R被垂直并排布置成以下形式:其中,作为L区域的L图形平面11L被布置在上侧,并且作为R区域的R图形平面11R被布置在下侧,从而构成图形平面11。
[0340] 其他设备平面,即PG平面12、视频平面13和背景平面14,也是以与图形平面11相同的方式构成的。
[0341] 描绘在图形平面11、PG平面12、视频平面13和背景平面14上的图像从近侧起按图形平面11、PG平面12、视频平面13和背景平面14的顺序被叠加(混和),并且作为其结果获得的L区域的图像和R区域的图像被交替描绘(存储)在逻辑屏幕21上,在该逻辑屏幕21中抽象出显示器的显示屏幕。
[0342] 这里,逻辑屏幕21的实体是RAM 104的部分存储区域。
[0343] 另外,设备平面都是由其中垂直排列了各自是一个图像大小的图像存储区域的L区域和R区域的存储区域构成的,并从而是两个图像大小的图像存储区域,但逻辑屏幕21是一个图像大小的图像存储区域。
[0344] 对于3D图像而言,设备平面的配置是针对作为两个图像大小的图像存储区域的设备平面的整体定义的。
[0345] 图11示出了作为设备平面的一个配置的(1)图像帧(分辨率,Resolution)和颜色深度(color-depth)。
[0346] 在图11中,从顶部起的五行的图像帧(设备平面的水平像素×垂直像素的数目)(分辨率)和颜色深度指示出3D图像的图像帧和颜色深度,并且剩余五行(从底部起的五行)的图像帧和颜色深度指示出2D图像的图像帧和颜色深度。
[0347] 在以一个图像大小的2D图像作为一个图像大小的图像的情况下,3D图像由左眼用图像和右眼用图像构成,从而是两个图像大小的图像。另外,所有设备平面都是其中垂直排列了作为一个图像大小的图像存储区域的L区域和R区域的存储区域,从而要存储在这样一个设备平面中的3D图像的图像帧具有通过将相应2D图像(具有与左眼用图像(或右眼用图像)相同大小的2D图像)的图像帧的垂直方向上的像素数目加倍而获得的大小。
[0348] 注意,在当前BD标准中,对于2D图像,存储在图形平面11中的图形(图像)的图像帧、以及存储在背景平面14中的背景(图像)的图像帧与存储在视频平面13中的视频(图像)的图像帧实质上是匹配的。
[0349] 然而,对于2D图像,在要存储在视频平面13中的视频的图像帧为1920×1080像素的情况下,要存储在背景平面14中的背景的图像帧与要存储在视频平面13中的视频的图像帧一样是1920×1080像素,但是要存储在图形平面11中的图形的图像帧可能是通过把要存储在视频平面13中的视频的图像帧的宽度和长度各除以2而获得的960×540像素(图11中从底部起的第四行)(以下,称之为“2D图像的失配情况”)。
[0350] 在此情况下,在通过使要存储在图形平面11中的960×540像素的图形的宽度和长度各加倍来使其大小与作为要存储在视频平面13中的视频的图像帧的1920×1080像素相匹配之后,显示该图形。
[0351] 对于3D图像,也可能存在与2D图像的失配情况相对应的情况(以下也称之为“3D图像的失配情况”)。
[0352] 对于3D图像的失配情况,在要存储在视频平面13中的视频的图像帧为1920×2160像素的情况下,要存储在背景平面14中的背景的图像帧与要存储在视频平面
13中的视频的图像帧一样是1920×2160像素,但要存储在图形平面11中的图形的图像帧可能是通过把要存储在视频平面13中的视频的图像帧的宽度和长度各除以2而获得的
960×1080像素(图11中从顶部起的第三行)。
[0353] 即使在3D图像的失配情况下,也是在通过使960×1080像素的图形的宽度和长度各加倍以使其大小与作为要存储在视频平面13中的视频的图像帧的1920×2160像素相匹配之后,显示该图形的。
[0354] 图12是用于描述在3D图像的失配情况中利用第二描绘方法(图5中的B)描绘3D图像的方法的示图。
[0355] 在第二描绘方法中(例如在图5中的B中描述),充当用于生成3D图像的源的原始图像被描绘在逻辑平面10上,并且随后要通过把原始图像在水平方向上移位偏移值而生成的左眼用图像和右眼用图像被描绘在图形平面11上。
[0356] 现在,第二描绘方法也可被描述为这样一种方法:其中,通过根据偏移值水平移位一垂直方向较长的图像的上半部分和下半部分而获得的两个图像作为左眼用图像和右眼用图像被描绘在图形平面11上,其中在该垂直方向较长的图像中垂直排列了原始图像和原始图像的拷贝这两个图像。
[0357] 在第二描绘方法中,在3D图像的失配情况下,通过根据偏移值在水平方向上移位960×1080像素的图形的上半部分和下半部分中的每一个而获得的960×540像素的左眼用图像和右眼用图像被描绘在图形平面11上,并且随后在使图形平面11的左眼用图像和右眼用图像的宽度和长度各加倍后,作为其结果获得的左眼用图像和右眼用图像是水平方向上的移位量是偏移值的两倍的图像。
[0358] 从而,在此情况下,利用左眼用图像和右眼用图像显示的3D图像的深度方向上的位置是与作者预期的位置不同的位置。
[0359] 因此,在3D图像的失配情况下,如果利用第二描绘方法来描绘3D图像,则通过使充当用于生成3D图像的源的原始图像的宽度和长度各加倍而获得的图像需要被描绘在逻辑平面10上,并且随后要通过使被描绘在逻辑平面10上的图像在水平方向移位该偏移值而生成的左眼用图像和右眼用图像需要被描绘在图形平面11上。
[0360] 从而,利用左眼用图像和右眼用图像显示的3D图像的深度方向上的位置是作者预期的位置。
[0361] 图13是用于描述设备平面的示图。
[0362] 在当前的BD标准中,一个图像大小的图像存储区域被假定为逻辑屏幕21,并且不假定左眼用图像(Left/Left-eye)和右眼用图像(Right/Right-eye)被交替描绘在作为该一个图像大小的图像存储区域的逻辑屏幕21上。
[0363] 另外,在当前BD标准中,假定在设备平面的配置与逻辑屏幕21之间存在一对一的关系。在这种假定下,对于3D图像处理,用于描绘左眼用图像的逻辑屏幕和用于描绘右眼用图像的逻辑屏幕这两个单独的逻辑屏幕需要被提供作为逻辑屏幕21。
[0364] 因此,在图3中的作为3D兼容播放器的BD播放器中,通过使垂直方向上分辨率的清晰度加倍来利用一个图像定义用于L/R的设备配置。定义一描绘模型,其中逻辑屏幕本身以传统方式被视为一个图像,并且用于L/R的输出被同时描绘在其上。
[0365] 也就是说,图3中的BD播放器包括存储符合BD标准的图形、视频或背景图像的设备平面(图形平面11、视频平面13(PG平面12)和背景平面14)。
[0366] 设备平面是其中L区域(存储左眼用图像的一个图像大小的图像存储区域)和R区域(存储右眼用图像的一个图像大小的图像存储区域)这样两个图像大小的图像存储区域被并排布置的存储区域,并且设备平面的配置是针对作为两个图像大小的图像存储区域的设备平面的整体定义的。
[0367] 然后,存储在设备平面中的左眼用图像和右眼用图像例如被交替描绘在逻辑屏幕21上。
[0368] 从而,存储左眼用图像(用于L的图像)的逻辑屏幕和存储右眼用图像(用于R的图像)的逻辑屏幕不必分开提供。
[0369] [视频模式、图形模式和背景模式]
[0370] 可以通过在BD-J对象(Object)文件内提供一用于指定配置的比特字段,从而利用该比特字段来指定(设定)配置。
[0371] 图14示出了要在BD-J对象文件内提供来指定配置的比特字段。
[0372] 在BD-J对象文件内可提供initial_configuration_id、initial_graphics_mode、initial_video_mode和initial_background_mode这四个字段来指定配置。
[0373] initial_configuration_id是用于指定(1)图像帧和颜色深度的字段。如果我们假定initial_configuration_id所取的值是配置id,则以下值可被定义为配置id。
[0374] HD_1920_1080=1
[0375] HD_1280_720=2
[0376] SD_720_576=3
[0377] SD_720_480=4
[0378] QHD_960_540=5
[0379] HD_1920_2160=6
[0380] HD_1280_1440=7
[0381] SD_720_1152=8
[0382] SD_720_960=9
[0383] QHD_960_1080=10
[0384] 注意,HD_1920_1080表示图11中从顶部起第六行处的图像帧和颜色深度,HD_1280_720表示图11中从顶部起第八行处的图像帧和颜色深度,SD_720_576表示图11中从顶部起第十行处的图像帧和颜色深度,SD_720_480表示图11中从顶部起第九行处的图像帧和颜色深度,QHD_960_540表示图11中从顶部起第七行处的图像帧和颜色深度,HD_1920_2160表示图11中从顶部起第一行处的图像帧和颜色深度,HD_1280_1440表示图11中从顶部起第二行处的图像帧和颜色深度,SD_720_1152表示图11中从顶部起第五行处的图像帧和颜色深度,SD_720_960表示图11中从顶部起第四行处的图像帧和颜色深度,并且QHD_960_1080表示图11中从顶部起第三行处的图像帧和颜色深度。
[0385] initial_graphics_mode是用于指定(3)图形模式的字段。
[0386] 现在,总共有五种模式作为图形模式(BD-J Graphics mode),即在图6中描述的偏移图形模式(偏移)、立体图形模式(立体)、非立体图形模式(非立体(传统重放模式))、强制非立体图形模式(强制非立体(传统重放模式))以及平坦化立体图形模式(平坦化立体)。
[0387] 让我们假定以下值被定义为用于指定图形模式的initial_graphics_mode。
[0388] GRAPHICS_MONO_VIEW=22
[0389] GRAPHICS_STEREO_VIEW=23
[0390] GRAPHICS_PLANE_OFFSET=24
[0391] GRAPHICS_DUAL_MONO_VIEW=25
[0392] GRAPHICS_FORCED_MONO_VIEW=26
[0393] 注意,GRAPHICS_MONO_VIEW表示非立体图形模式,GRAPHICS_STEREO_VIEW表示立体图形模式,GRAPHICS_PLANE_OFFSET表示偏移图形模式,GRAPHICS_DUAL_MONO_VIEW表示平坦化立体图形模式,并且GRAPHICS_FORCED_MONO_VIEW表示强制非立体图形模式。
[0394] 另外,在initial_configuration_id被设定到1、2、3、4和5中的任何一个的情况下,initial_graphics_mode被忽略。
[0395] initial_video_mode是用于指定(2)视频模式的字段。
[0396] 现在,总共有五种模式作为视频模式(Video mode),即在图8中描述的双非立体视频模式(双非立体)、立体视频模式(立体)、平坦化立体视频模式(平坦化立体)、非立体视频模式(非立体(传统重放模式))以及强制非立体视频模式(强制非立体)。
[0397] 让我们假定以下值被定义为用于指定视频模式的initial_video_mode。
[0398] VIDEO_MONO_VIEW=27
[0399] VIDEO_STEREO_VIEW=28
[0400] VIDEO_FLATTENED_STEREO_VIEW=29
[0401] VIDEO_DUAL_MONO_VIEW=30
[0402] VIDEO_FORCED_MONO_VIEW=31
[0403] 注意,VIDEO_MONO_VIEW表示非立体视频模式,VIDEO_STEREO_VIEW表示立体视频模式,VIDEO_FLATTENED_STEREO_VIEW表示平坦化立体视频模式,VIDEO_DUAL_MONO_VIEW表示双非立体视频模式,并且VIDEO_FORCED_MONO_VIEW表示强制非立体视频模式。
[0404] 另外,在initial_configuration_id被设定到1、2、3、4和5之一的情况下,initial_video_mode被忽略。
[0405] initial_background_mode是用于指定(4)背景模式的字段。
[0406] 现在,总共有五种模式作为背景模式(Backgroud mode),即在图9中描述的双非立体背景模式(双非立体)、立体背景模式(立体)、平坦化立体背景模式(平坦化立体)、非立体背景模式(非立体(传统重放模式))以及强制非立体背景模式(强制非立体)。
[0407] 让我们假定以下值被定义为用于指定背景模式的initial_background_mode。
[0408] BACKGROUND_MONO_VIEW=17
[0409] BACKGROUND_STEREO_VIEW=18
[0410] BACKGROUND_FLATTENED_STEREO_VIEW=19
[0411] BACKGROUND_DUAL_MONO_VIEW=20
[0412] BACKGROUND_FORCED_MONO_VIEW=21
[0413] 注意,BACKGROUND_MONO_VIEW表示非立体背景模式,BACKGROUND_STEREO_VIEW表示立体背景模式,BACKGROUND_FLATTENED_STEREO_VIEW表示平坦化立体背景模式,BACKGROUND_DUAL_MONO_VIEW表示双非立体背景模式,并且BACKGROUND_FORCED_MONO_VIEW表示强制非立体背景模式。
[0414] 另外,在initial_configuration_id被设定到1、2、3、4和5之一的情况下,initial_background_mode被忽略。
[0415] 现在,对于BD-J对象文件,可以采用这样的规范:其中,在initial_configuration_id、initial_graphics_mode、initial_video_mode 和 initial_background_mode之中,只指定initial_configuration_id。
[0416] 对于BD-J对象文件,在只指定initial_configuration_id的情况下,需要提供initial_video_mode、initial_graphics_mode和initial_background_mode的默认规定值。
[0417] 图 15 示 出 了 initial_video_mode、initial_graphics_mode 和 initial_background_mode的默认规定值。
[0418] 注意,视频模式(initial_video_mode)的STEREO_VIEW表示上述的VIDEO_STEREO_VIEW或VIDEO_FLATTENED_STEREO_VIEW,并且MONO_VIEW表示上述的VIDEO_MONO_VIEW或VIDEO_DUAL_MONO_VIEW。
[0419] 另外,图形模式(initial_graphics_mode)的STEREO_VIEW表示上述的GRAPHICS_STEREO_VIEW或GRAPHICS_PLANE_OFFSET,并且MONO_VIEW表示上述的GRAPHICS_MONO_VIEW或GRAPHICS_DUAL_MONO_VIEW。
[0420] 此外,背景模式(initial_background_mode)的STEREO_VIEW表示上述的BACKGROUND_STEREO_VIEW或BACKGROUND_FLATTENED_STEREO_VIEW,并且MONO_VIEW表示上述的BACKGROUND_MONO_VIEW或BACKGROUND_DUAL_MONO_VIEW。
[0421] [配置的改变]
[0422] 接下来,将描述配置的改变。
[0423] 配置可以在以下定时被改变:当启动BD-J标题时或播放PlayList时的自动重置被执行时(动态改变),或者当BD-J应用进行的API调用被执行时(动态改变)。
[0424] 与非立体视频+非立体图形的传统重放时不同,即使在AV的重放期间,平面配置的改变也是可用的。
[0425] 也就是说,在3D兼容播放器中,可以在播放AV流(视频)时改变配置。
[0426] 与Mono-view类似,在除KEEP_RESOLUTION重放以外的重放中,3D兼容播放器执行配置改变处理,以使得图像帧对齐(使得在启动BD-J标题时视频/背景与图形的图像帧对齐,使得在PlayList重放时图形/背景与视频的图像帧对齐,或者使得在BD-J应用进行API调用时,API所设定的平面的图像帧与除该平面以外的未设定的平面的图像帧对齐)。另外,配置改变时的差错处理取决于3D兼容播放器。
[0427] 现在,KEEP_RESOLUTION重放是一种用于合成SD(标准清晰度)视频和HD(高清晰度)图形以及HD背景的重放模式,并且存在合成1920×1080像素的图形、720×480像素的视频+PG和1920×1080像素的背景的情况,以及合成1920×1080像素的图形、720×576像素的视频+PG和1920×1080像素的背景的情况。注意,不论HD图像如何,在KEEP_RESOLUTION重放中都不包括1280×720像素的图像的再现。
[0428] 图16和17示出除了KEEP_RESOLUTION重放以外的重放的视频+PG、BD-J图形和背景的分辨率(图像帧)的组合。注意,图17是接续图16的图。
[0429] 图18示出了配置改变处理的示例。
[0430] 图18中的A示出了在图形(图形平面11)的配置(视频模式)从STEREO_VIEW改变到MONO_VIEW的情况下3D兼容播放器的处理的示例。
[0431] 例如,在3D兼容播放器中,在视频模式是STEREO_VIEW的情况下,图形被描绘在构成1920×2160像素的图形平面11的L图形平面11L和R图形平面11R上,让我们假定在不重置图形平面11(充当图形平面11的存储区域)的情况下视频模式被从STEREO_VIEW改变到MONO_VIEW。
[0432] 在此情况下,在3D兼容播放器中,只有存储(描绘)在构成图形平面11的L图形平面11L和R图形平面11R之一(例如L图形平面11L)上的图像被提供给逻辑屏幕21并显示,而存储在作为另一个的R图形平面11R中的图像则被丢弃。
[0433] 注意,在此情况下,3D兼容播放器可以以差错的形式强制结束(图像的重放)。
[0434] 图18中的B示出了在视频模式被从MONO_VIEW改变到STEREO_VIEW的情况下3D兼容播放器的处理的示例。
[0435] 例如,在3D兼容播放器中,在视频模式是MONO_VIEW的情况下,图形仅被描绘在构成1920×1080像素的图形平面11的L图形平面11L上,让我们假定在不重置图形平面11的情况下视频模式被从MONO_VIEW改变到STEREO_VIEW。
[0436] 在此情况下,在3D兼容播放器中,描绘在L图形平面11L上的图形被拷贝到R图形平面11R,描绘在L图形平面11L上的图形被提供给逻辑屏幕21作为左眼用图像,并且拷贝到R图形平面11R的图形也被提供给逻辑屏幕21作为右眼用图像。
[0437] 注意,在此情况下,3D兼容播放器可以以差错的形式强制结束(图像的重放)。
[0438] [当启动BD-J标题时配置的改变]
[0439] 以下三条规则#1-1、#1-2和#1-3原则上被应用到启动BD-J标题时的配置改变。
[0440] 具体而言,规则#1-1是这样一条规则:在(设备平面的)配置中,图形、视频和背景的三个图像的分辨率(图像帧)必须始终是相同分辨率。
[0441] 规则#1-2是这样一条规则:在执行除KEEP_RESOLUTION重放以外的PlayList重放的情况下,在配置中,图形、视频和背景的三个图像的分辨率(图像帧)必须与视频的分辨率对齐。
[0442] 规则#1-3是这样一条规则:在配置中,在图形是QHD图形的情况下,在垂直方向上按比例加倍并在水平方向上按比例加倍后的分辨率被视为配置的分辨率。
[0443] 注意,视频模式、图形模式和背景模式中每一个的值是根据BD-J对象文件的initial_configuration_id的默认值规定来确定的(确定视频模式、图形模式和背景模式)。
[0444] 另外,在BD-J对象文件的autostart_first_PlayList_flag被设定到1b的情况下,视频平面的配置的改变不遵从默认值,而遵从PlayList的重放时的自动重置(动态改变)规则。
[0445] [当执行PlayList-playback-time自动重置时的配置改变(动态改变)]
[0446] 以下三条规则#2-1、#2-2和#2-3原则上被应用到在执行PlayList播放时的自动重置时的配置改变。
[0447] 具体而言,规则#2-1是这样一条规则:在(设备平面的)配置中,图形、视频和背景的三个图像的分辨率(图像帧)必须始终是相同分辨率。
[0448] 规则#2-2是这样一条规则:在执行除KEEP_RESOLUTION重放以外的PlayList重放的情况下,在配置中,图形、视频和背景的三个图像的分辨率(图像帧)必须与视频的分辨率对齐。
[0449] 规则#2-3是这样一条规则:在配置中,在图形是QHD图形的情况下,在垂直方向上按比例加倍并在水平方向上按比例加倍后的分辨率被视为配置的分辨率。
[0450] 在PlayList的重放开始时,视频平面配置自动与PlayList的视频属性对齐。
[0451] 在配置自动与PlayList的视频属性对齐的情况下,在当前BD标准中,规定作为BD播放器方的必要功能,自动使图形平面和背景平面与视频平面的属性对齐。然而,在3D兼容播放器中,在从立体PlayList(用于播放3D图像的播放列表)切换到非立体PlayList(用于播放2D图像的播放列表)时,或者在从非立体PlayList切换到立体PlayList时,图形和背景的模式(图形模式和背景模式)被设定到预定的初始值。
[0452] 图19示出了图形模式和背景模式的预定初始值。
[0453] 图20示出了在播放1920×2160像素的3D图像(立体图像)的情况下要播放的图形和背景图像。
[0454] 一1920×2160像素的3D图像被作为图形播放,并且一1920×2160像素的3D图像被作为背景播放。
[0455] [当执行由BD-J应用进行的API调用时的配置改变(动态改变)]
[0456] 以下三条规则#3-1、#3-2和#3-3原则上被应用到在执行由BD-J应用进行的API调用时的配置改变。
[0457] 具体而言,规则#3-1是这样一条规则:在(设备平面的)配置中,图形、视频和背景的三个图像的分辨率(图像帧)必须始终是相同分辨率。
[0458] 规则#3-2是这样一条规则:在配置中,在执行除KEEP_RESOLUTION重放以外的PlayList重放的情况下,图形、视频和背景的三个图像的分辨率(图像帧)必须与视频的分辨率对齐。
[0459] 规则#3-3是这样一条规则:在配置中,在图形是QHD图形的情况下,在垂直方向上按比例加倍并在水平方向上按比例加倍后的分辨率被视为配置的分辨率。
[0460] 图21是用于根据由BD-J应用进行的API调用,充当配置的分辨率(图像帧)的改变的示图。
[0461] 在图形3D图像(立体G)、视频3D图像(立体V)和背景3D图像(立体B)的重放期间,在图形3D图像的分辨率已根据API调用被改变的情况下,3D兼容BD播放器根据上述规则#3-1、#3-2和#3-3自动改变视频3D图像和背景3D图像的分辨率。
[0462] 另外,在图形3D图像(立体G)、视频3D图像(立体V)和背景3D图像(立体B)的重放期间,在背景3D图像的分辨率已根据API调用被改变的情况下,3D兼容BD播放器根据上述规则#3-1、#3-2和#3-3自动改变图形3D图像和视频3D图像的分辨率。
[0463] 另外,在图形3D图像(立体G)、视频3D图像(立体V)和背景3D图像(立体B)的重放期间,在视频3D图像的分辨率已根据API调用被改变的情况下,3D兼容BD播放器根据上述规则#3-1、#3-2和#3-3自动改变图形3D图像和背景3D图像的分辨率。
[0464] [平面配置的模式的改变(图形模式、视频模式和背景模式的改变)]
[0465] 3D兼容播放器可以在立体图形模式(立体图形)和偏移图形模式(偏移图形)之间无缝地执行图形模式的改变(切换)。
[0466] 图22是用于描述图形模式的改变的示图。
[0467] 图22中的A示出了这样一种情况,即,在偏移图形模式中的图形3D图像(平面偏移gfx(图形))、视频(和PG)3D图像(立体视频+PG)以及背景3D图像(立体背景)的重放期间,图形模式被从偏移图形模式改变到了立体图形模式。
[0468] 在此情况下,执行从偏移图形模式中的图形3D图像(平面偏移gfx)、视频(和PG)3D图像(立体视频+PG)以及背景3D图像(立体背景)的重放到立体图形模式中的图形3D图像(立体gfx(图形))、视频(和PG)3D图像(立体视频+PG)以及背景3D图像(立体背景)的重放的切换,并且该切换可被无缝地执行。
[0469] 逆切换,即从立体图形模式中的图形3D图像(立体gfx)、视频(和PG)3D图像(立体视频+PG)以及背景3D图像(立体背景)的重放到偏移图形模式中的图形3D图像(平面偏移gfx)、视频(和PG)3D图像(立体视频+PG)以及背景3D图像(立体背景)的重放的切换也可被无缝地执行。
[0470] 图22中的B示出了这样一种情况,即,在立体图形模式中的图形3D图像(立体gfx)、视频(和PG)3D图像(立体视频+PG)以及背景2D图像(非立体背景)的重放期间,图形模式被从立体图形模式改变到了偏移图形模式。
[0471] 在此情况下,执行从立体图形模式中的图形3D图像(立体gfx)、视频(和PG)3D图像(立体视频+PG)以及背景2D图像(非立体背景)的重放到偏移图形模式中的图形3D图像(平面偏移gfx)、视频(和PG)3D图像(立体视频+PG)以及背景2D图像(非立体背景)的重放的切换,并且该切换可被无缝地执行。
[0472] 逆切换,即从偏移图形模式中的图形3D图像(平面偏移gfx)、视频(和PG)3D图像(立体视频+PG)以及背景2D图像(非立体背景)的重放到立体图形模式中的图形3D图像(立体gfx)、视频(和PG)3D图像(立体视频+PG)以及背景2D图像(非立体背景)的重放的切换也可被无缝地执行。
[0473] 图23示出了图形模式从立体图形模式到偏移图形模式的改变。
[0474] 在图形模式已被从立体图形模式(立体gfx)改变到偏移图形模式(平面偏移gfx)的情况下,视频(L/R(左/右)视频)和背景(L/R(左/右)背景)的重放仍继续。
[0475] 另一方面,对于图形,重放对象从立体图形模式中的图形3D图像(立体gfx)切换到偏移图形模式中的图形3D图像(平面偏移gfx)。
[0476] 此重放对象的切换方法的实现取决于个体3D兼容播放器。然而,在切换重放对象时,必须防止发生所谓的黑屏(black-out)以及AV(视频)重放的中断。
[0477] 注意,在改变图形模式时也改变分辨率的情况下,可能发生黑屏。
[0478] 接下来,3D兼容播放器可在立体背景模式(立体背景)和非立体背景模式(非立体背景)之间无缝地执行背景模式的改变(切换)。
[0479] 图24是用于描述背景模式的改变的示图。
[0480] 图24中的A示出了这样一种情况,即,在图形3D图像(立体gfx)、视频(和PG)3D图像(立体视频+PG)以及立体背景模式中的背景3D图像(立体背景)的重放期间,背景模式被从立体背景模式改变到了非立体背景模式。
[0481] 在此情况下,执行从图形3D图像(立体gfx)、视频(和PG)3D图像(立体视频+PG)以及立体背景模式中的背景3D图像(立体背景)的重放到图形3D图像(立体gfx)、视频(和PG)3D图像(立体视频+PG)以及非立体背景模式中的背景2D图像(非立体背景)的重放的切换,并且该切换可被无缝地执行。
[0482] 逆切换也可被无缝地执行。
[0483] 图24中的B示出了这样一种情况,即,在图形3D图像(平面偏移gfx)、视频(和PG)3D图像(立体视频+PG)以及非立体背景模式中的背景2D图像(非立体背景)的重放期间,背景模式被从非立体背景模式改变到了立体背景模式。
[0484] 在此情况下,执行从图形3D图像(平面偏移gfx)、视频(和PG)3D图像(立体视频+PG)以及非立体背景模式中的背景2D图像(非立体背景)的重放到图形3D图像(平面偏移gfx)、视频(和PG)3D图像(立体视频+PG)以及立体背景模式中的背景3D图像(立体背景)的重放的切换,并且该切换可被无缝地执行。
[0485] 逆切换也可被无缝地执行。
[0486] 接下来,3D兼容播放器可在立体视频模式(立体视频)、平坦化立体视频模式(平坦化立体视频)和双非立体视频模式(双非立体视频)之间无缝地执行视频模式的改变(切换)。
[0487] 图25是用于描述视频模式的改变的示图。
[0488] 图25中的A是用于描述在图形3D图像(立体gfx)、背景3D图像(立体背景)以及视频图像被播放的情况下视频模式的改变的示图。
[0489] 在视频模式是立体视频模式,并且立体视频模式中的视频(和PG)3D图像(立体视频+PG)正被播放的情况下,当视频模式被从立体视频模式改变到平坦化立体视频模式时,视频图像被从立体视频模式中的视频(和PG)3D图像(立体视频+PG)切换到平坦化立体视频模式中的视频(和PG)3D图像(平坦化视频+PG),并且该切换可被无缝地执行。
[0490] 逆切换也可被无缝地执行。
[0491] 另外,在视频模式是平坦化立体视频模式,并且平坦化立体视频模式中的视频(和PG)3D图像(平坦化视频+PG)正被播放的情况下,当视频模式被从平坦化立体视频模式改变到双非立体视频模式时,视频图像被从平坦化立体视频模式中的视频(和PG)3D图像(平坦化视频+PG)切换到双非立体视频模式中的视频(和PG)3D图像(双非立体视频+PG),并且该切换可被无缝地执行。
[0492] 逆切换也可被无缝地执行。
[0493] 图25中的B是用于描述在图形3D图像(平面偏移gfx)、背景2D图像(非立体背景)以及视频图像被播放的情况下视频模式的改变的示图。
[0494] 在视频模式是双非立体视频模式,并且双非立体视频模式中的视频(和PG)3D图像(双非立体视频+PG)正被播放的情况下,当视频模式被从双非立体视频模式改变到平坦化立体视频模式时,视频图像被从双视频模式中的视频(和PG)3D图像(双非立体视频+PG)切换到平坦化立体视频模式中的视频(和PG)3D图像(平坦化视频+PG),并且该切换可被无缝地执行。
[0495] 逆切换也可被无缝地执行。
[0496] 另外,在视频模式是平坦化立体视频模式,并且平坦化立体视频模式中的视频(和PG)3D图像(平坦化视频+PG)正被播放的情况下,当视频模式被从平坦化立体视频模式改变到立体视频模式时,视频图像被从平坦化立体视频模式中的视频(和PG)3D图像(平坦化视频+PG)切换到立体视频模式中的视频(和PG)3D图像(立体视频+PG),并且该切换可被无缝地执行。
[0497] 逆切换也可被无缝地执行。
[0498] [用于改变配置的3D兼容播放器]
[0499] 在当前BD标准中,配置是利用分辨率(图像帧)和颜色深度来规定的。因此,配置的改变意味着分辨率的改变。然而,在分辨率改变时,重放被临时停止,并且显示屏幕变成黑屏状态。
[0500] 另一方面,例如,图形平面的非立体逻辑平面+偏移值重放模式等等可被规定为1920×1080/32bpp的配置,但是这种情况例如可能由于从非立体逻辑平面+偏移值切换到立体逻辑平面等等而导致黑屏。
[0501] 因此,在3D兼容播放器中,平面配置被统一为双面定义(1920×2160像素、1280×1440像素、(960×1080像素)、720×960像素或720×1152像素的配置),并且除分辨率/颜色深度以外的属性被定义为模式值。从而,在只改变模式而不改变分辨率的情况下,可以在不使显示屏幕进入黑屏状态的情况下改变配置。另外,与传统播放器类似,可以通过调用配置首选项设定API来执行配置的改变。
[0502] 图26是示出作为这样的3D兼容播放器的图3中的BD播放器的功能配置示例的框图。
[0503] 在图26中的3D兼容播放器中,针对一设备平面的整体定义该设备平面的配置,其中该设备平面是这样一个存储区域:其中并排布置了L区域(其是存储左眼用图像的一个图像大小的图像存储区域)和R区域(其是存储右眼用图像的一个图像大小的图像存储区域)这两个图像大小的图像存储区域。
[0504] 另外,非立体图形模式、立体图形模式、偏移图形模式、强制非立体图形模式和平坦化立体图形模式这五种模式被定义为图形模式。另外,非立体视频模式、双非立体视频模式、立体视频模式、强制非立体视频模式和平坦化立体视频模式这五种模式被定义为视频模式。另外,非立体背景模式、双非立体背景模式、立体背景模式、强制非立体背景模式和平坦化立体背景模式这五种模式被定义为背景模式。
[0505] 另外,设备平面的配置除了包括(1)图像帧(分辨率)和颜色深度外还包括(2)视频模式、(3)图形模式以及(4)背景模式,并且(2)视频模式、(3)图形模式和(4)背景模式的设定(改变)可由配置模式设定API来执行。
[0506] 在图26中的3D兼容播放器中,在改变视频模式、图形模式或背景模式的情况下,BD-J应用调用配置模式设定API,并且请求对视频模式、图形模式或背景模式的改变(设定)。
[0507] 配置模式设定API根据来自BD-J应用的请求,直接或间接地控制呈现引擎(Presentation Engine)、视频解码器(video decoder)和显示处理器(Display processor)中所需的一个,从而改变(设定)视频模式、图形模式或背景模式。
[0508] 另一方面,在改变图像帧(分辨率)和颜色深度的情况下,BD-J应用调用分辨率设定API来请求改变(设定)分辨率等等。
[0509] 分辨率设定API根据来自BD-J应用的请求,直接或间接控制呈现引擎、视频解码器和显示处理器中所需的一个,从而改变(设定)图像帧(分辨率)和颜色深度。
[0510] 注意,在图26中,呈现引擎(Presentation Engine)向未示出的、用于控制BD的重放的重放控制引擎(Playback Control Engine)提供音频、视频和HDMV图形的解码功能和呈现功能(Presentation functions)。
[0511] 另外,在图26中,视频编码器(Video decoder)执行图像的解码。此外,显示处理器(Display processor)是用于将图形平面、视频(视频+PG)平面和背景平面中的每个平面相叠加并随后将利用该叠加获得的图像输出到与BD播放器相连的显示器的硬件。
[0512] 如上所述,设备平面的配置是针对作为两个图像大小的图像存储区域的设备平面的整体定义的,并且图形模式等等被包括在设备平面的配置中,与分辨率(图像帧)和颜色深度相分离。然后,3D兼容播放器根据对配置模式设定API的调用来设定图形模式等等。从而,可以在不改变分辨率的情况下改变图形模式等等。
[0513] [PG/文本字幕配置的切换]
[0514] 视频+PG/TextST(Text subtitle,文本字幕)是从BD-J应用总体地(不加区分地)处理的。另外,BD-J应用不能单独控制PG平面12,但能够控制视频的位置或缩放(大小)。注意,在当前BD标准中,在从BD-J应用执行对视频的位置或缩放的控制的情况下,PG/TextST要与视频对齐。
[0515] 从而,在执行对视频的缩放控制的情况下,利用用于缩放视频的缩放比率(放大比率或缩小比率)来缩放PG平面偏移值。
[0516] 另一方面,对于PG(包括TextST),希望允许3D兼容播放器设定用于播放作为充当2D图像的非立体图像的PG图像的模式(1平面(传统重放))、用于播放作为充当3D图像的立体图像的PG图像的模式(2平面),以及用于利用从2D图像和偏移值生成的左眼用图像和右眼用图像(具有视差)来播放3D图像的PG的模式(1平面+偏移),来作为用于播放PG的重放模式。
[0517] 因此,在3D兼容播放器中,通过选择PG流来间接地执行PG平面控制(1平面(传统重放))以及1平面+偏移与2平面之间的配置切换。
[0518] 因此,对于HDMV PG,非立体PG流(作为充当2D图像的非立体图像的PG图像的PG流)、立体PG流(作为充当3D图像的立体图像的PG图像的PG流)、以及偏移用PG流(作为用于生成立体图像的非立体图像的PG图像的PG流)(例如,包括作为非立体图像的PG图像和偏移值的流)结合向非立体图像赋予视差的偏移值被定义为符合BD标准的PG图像的PG流。
[0519] 此外,对于HDMV PG,非立体1流(传统内容)模式、L/R 2流模式、以及1流+平面偏移模式被定义为用于播放PG图像的PG重放模式。
[0520] 现在,在PG重放模式是非立体1流模式的情况下,利用非立体PG流来播放2D PG图像。
[0521] 在PG重放模式是L/R 2流模式的情况下,通过利用立体PG流播放左眼用图像和右眼用图像,来播放3D PG图像。
[0522] 在PG重放模式是1流+平面偏移模式的情况下,通过基于偏移值利用偏移用PG流生成左眼用图像和右眼用图像并且播放左眼用图像和右眼用图像,来播放3D PG图像。
[0523] 另外,对于HDMV TextST,非立体TextST流(作为充当2D图像的非立体图像的TextST图像的TextST流),立体TextST流(作为充当3D图像的立体图像的TextST图像的TextST流)以及偏移用TextST流(作为用于生成立体图像的非立体图像的TextST图像的TextST流)(例如,包括作为非立体图像的TextST图像和偏移值的流)结合向非立体图像赋予视差的偏移值被定义为符合BD标准的TextST图像的TextST流。
[0524] 此外,对于HDMV TextST,非立体1流(传统内容)模式、L/R 2流模式以及1流+平面偏移模式被定义为用于播放TextST图像的TextST重放模式。
[0525] 现在,在TextST重放模式是非立体1流模式的情况下,利用非立体TextST流来播放2D TextST图像。
[0526] 在TextST重放模式是L/R 2流模式的情况下,通过使用立体TextST流来播放3D TextST图像,以播放左眼用图像和右眼用图像。
[0527] 在TextST重放模式是1流+平面偏移模式的情况下,通过基于偏移值利用偏移用TextST流生成左眼用图像和右眼用图像并且播放该左眼用图像和右眼用图像,来播放3D TextST图像。
[0528] 在3D兼容播放器中,可通过用于选择流的API来切换(设定)PG/TextST的配置。
[0529] 图27示出了可用于选择每种视频模式的PG重放模式和TextST重放模式。
[0530] 对于HDMV PG,即使在视频模式(配置)是非立体视频模式(非立体)、平坦化立体视频模式(平坦化立体)、双非立体视频模式(双非立体)、强制非立体视频模式(强制非立体)和立体视频模式(立体)中的任何一种的情况下,也可选择1流+平面偏移模式(非立体+偏移)(偏移用PG流)。
[0531] 从而,即使在视频模式是非立体视频模式、平坦化立体视频模式、双非立体视频模式、强制非立体视频模式和立体视频模式中的任何一种的情况下,也可以选择偏移用PG流。
[0532] 另外,对于HDMV PG,即使在视频模式是平坦化立体视频模式(平坦化立体)、双非立体视频模式(双非立体)、强制非立体视频模式(强制非立体)和立体视频模式(立体)中的任何一种的情况下,也可以选择L/R2流模式(立体)(立体PG流)。
[0533] 从而,即使在视频模式是平坦化立体视频模式、双非立体视频模式、强制非立体视频模式和立体视频模式中的任何一种的情况下,也可以选择立体PG流。
[0534] 然而,在视频模式是非立体视频模式(非立体)、平坦化立体视频模式(平坦化立体)、强制非立体视频模式(强制非立体)或双非立体视频模式(双非立体)的情况下,当选择偏移用PG流(非立体+偏移)时,在忽略偏移值(通过将偏移值设定为0)的情况下播放偏移用PG流的非立体图像。
[0535] 另外,在视频模式是非立体视频模式(非立体)或强制非立体视频模式(强制非立体)的情况下,当选择立体PG流(立体)时,只播放构成与这些立体PG流相对应的立体图像的左眼用图像和右眼用图像之一,例如只播放左眼用图像(L PG流)。
[0536] 另外,在视频模式是平坦化立体视频模式或双非立体视频模式的情况下,当选择立体PG流时,如果有流号码与要分配给所选择的立体PG流的流号码相匹配的偏移用PG流(记录在BD中),则取代所选择的立体PG流,与这些立体PG流具有相同流号码的偏移用PG流的非立体图像在忽略偏移值的情况下被播放。
[0537] 另一方面,对于HDMV TextST,即使在视频模式(配置)是非立体视频模式(非立体)、平坦化立体视频模式(平坦化立体)、强制非立体视频模式(强制非立体)和双非立体视频模式(双非立体)中的任何一种的情况下,也可选择1流+平面偏移模式(非立体+偏移)(偏移用文本字幕流)。
[0538] 从而,在视频模式是非立体视频模式、平坦化立体视频模式、强制非立体视频模式和双非立体视频模式中的一种的情况下,可以选择偏移用TextST流(偏移用文本字幕流)。
[0539] 另外,对于HDMV TextST,即使在视频模式是平坦化立体视频模式(平坦化立体)、双非立体视频模式(双非立体)、强制非立体视频模式(强制非立体)和立体视频模式(立体)中的任何一种的情况下,也可以选择L/R2流模式(立体)(立体文本字幕流)。
[0540] 从而,在视频模式是平坦化立体视频模式、双非立体视频模式、强制非立体视频模式和立体视频模式中的任何一种的情况下,可以选择立体TextST流(立体文本字幕流)。
[0541] 然而,在视频模式是非立体视频模式(非立体)、平坦化立体视频模式(平坦化立体)、强制非立体视频模式(强制非立体)或双非立体视频模式(双非立体)的情况下,当选择偏移用TextST流(非立体+偏移)时,在忽略偏移值的情况下播放偏移用TextST流的非立体图像。
[0542] 另外,在视频模式是非立体视频模式(非立体)或强制非立体视频模式(强制非立体)的情况下,当选择立体TextST流(立体)时,只播放构成与这些立体TextST流相对应的立体图像的左眼用图像和右眼用图像之一,例如只播放左眼用图像(L TextST流)。
[0543] 另外,在视频模式是平坦化立体视频模式或双非立体视频模式的情况下,当选择立体TextST流时,如果存在流号码与要分配给所选择的立体TextST流的流号码相匹配的偏移用TextST流,则取代所选择的立体TextST流,与这些立体TextST流具有相同流号码的偏移用TextST流的非立体图像在忽略偏移值的情况下被播放。
[0544] 图28是示出作为用于如上所述执行PG或TextST图像的重放的3D兼容播放器的图3中的BD播放器的功能配置示例的框图。
[0545] 在图28中,3D兼容播放器由BD-J应用、PG/TextST流选择API、视频控制API、PG选择引擎(重放控制功能)、TextST选择引擎(重放控制功能)、视频控制引擎(重放控制功能)、重放控制引擎(Playback Control Engine)、呈现引擎(Presentation Engine)等等构成。
[0546] 将以与PG有关的处理为例,参考图29来描述图28中的3D兼容播放器的处理。
[0547] BD-J应用调用PG/TextST流选择API以请求选择PG流。PG/TextST流选择API选择从BD-J应用请求的PG流。
[0548] 也就是说,如在图27中描述的,在对于当前视频模式可以选择从BD-J应用请求的PG流的情况下,PG/TextST流选择API控制PG选择引擎选择这些PG流。
[0549] PG选择引擎根据PG/TextST流选择API的控制,从记录在作为BD的盘100(图3)中的PG流中选择PG流,并将这些PG流提供给图28中未示出的立体PG解码器或非立体PG解码器。
[0550] 现在,在PG选择引擎选择的PG流是立体PG流的情况下,这些立体PG流被提供给立体PG解码器。
[0551] 另外,在PG选择引擎选择的PG流是偏移用PG流的情况下,这些偏移用PG流被提供给非立体PG解码器。
[0552] 立体PG解码器把从PG选择引擎提供来的PG流解码为构成立体图像的左眼用图像和右眼用图像,并将左眼用图像和右眼用图像分别描绘在PG平面12的L-PG平面12L和R-PG平面12R上。
[0553] 另一方面,非立体PG解码器把从PG选择引擎提供来的偏移用PG流解码为非立体图像,并将其描绘在逻辑平面10上。
[0554] PG生成API使用偏移值(例如,包括在偏移用PG流中的偏移值,3D兼容播放器的内部存储区域或者PSR#21中存储的偏移值)来从描绘在逻辑平面10上的非立体图像生成左眼用图像和右眼用图像。然后,PG生成API将该左眼用图像和右眼用图像分别描绘在PG平面12的L-PG平面12L和R-PG平面12R上。
[0555] 注意,在3D兼容BD播放器中,如在图27中描述的,取决于当前视频模式和PG选择引擎选择的PG流(PG重放模式)之间的组合,可以播放构成与立体PG流相对应的立体图像的左眼用图像和右眼用图像之一,例如只播放左眼用图像,或者可以在忽略偏移值的情况下仅播放与偏移用PG流相对应的非立体图像。
[0556] 如上所述,在3D兼容播放器中,非立体PG流(作为充当2D图像的非立体图像的PG图像的PG流)、立体PG流(作为充当3D图像的立体图像的PG图像的PG流)、以及偏移用PG流(作为用于生成立体图像的非立体图像的PG图像的PG流)结合作为向非立体图像赋予视差的数据的偏移值被定义为符合BD标准的PG图像的PG流。然后,PG/TextST流选择API根据来自BD-J应用的请求,选择非立体PG流、立体PG流或偏移用PG流。
[0557] 从而,可以从BD-J应用间接控制PG图像的重放(PG的配置)。
[0558] [切换3D图像的重放和2D图像的重放]
[0559] 图30是用于描述在3D兼容播放器处在3D图像的重放和2D图像的重放之间切换的示图。
[0560] 在图30中,首先,3D兼容播放器的操作模式是用于播放3D图像的3D重放模式。
[0561] 然后,图形模式是立体图形模式(立体gfx(图形)),视频模式是立体视频模式(立体视频),并且背景模式是非立体背景模式(非立体背景)。
[0562] 然后,图形模式被改变到偏移图形模式(平面偏移gfx),并且视频模式被改变到双非立体视频模式(双非立体视频)。
[0563] 另外,随后,在图30中,操作模式被从3D重放模式改变到2D重放模式(传统重放模式),用于以与传统播放器相同的方式播放2D图像。
[0564] 根据操作模式的改变,图形模式被从偏移图形模式(平面偏移gfx)改变到非立体图形模式(非立体gfx)。此外,视频模式被从双非立体视频模式(双非立体视频)改变到非立体视频模式(非立体视频)。注意,背景模式仍为非立体背景模式(非立体背景)。
[0565] 然后,在图30中,操作模式又被从2D重放模式改变到3D重放模式。
[0566] 根据操作模式的改变,图形模式被从非立体图形模式(非立体gfx)改变到立体图形模式(立体gfx)。此外,视频模式被从非立体视频模式(非立体视频)改变到平坦化立体视频模式(平坦化立体视频)。注意,背景模式仍为非立体背景模式(非立体背景)。
[0567] 在图30中,随后,背景模式被从非立体背景模式(非立体背景)改变到立体背景模式(立体背景)。
[0568] 在图30中,例如,在操作模式被从3D重放模式改变到2D重放模式的情况下,当伴随着分辨率(图像帧)的改变时,显示屏幕可能黑屏。
[0569] [用于视频的像素坐标系统]
[0570] 诸如“javax.tv.media.AWTVideoSizeControl”、“org.dvb.media.BackgroundVideoPRsentationControl”等等之类的JMF(Java(注册商标)媒体框架)控件可用于从BD-J应用对视频的位置和大小进行控制。
[0571] 注意,BD-J应用的作者不是利用平面(视频平面13)上的坐标而是利用显示坐标来设定视频的位置和大小。
[0572] 另外,3D兼容播放器必须对左眼用图像(L视频源)和右眼用图像(R视频源)中每一个的位置和大小执行校正。
[0573] 例如,对于1920×2160像素的视频平面13,显示坐标系统是大小为1920×1080像素的坐标系统,垂直方向上是其的一半。在此情况下,作者必须例如像下面这样设定视频的位置和大小。
[0574] RctangL src=new RctangL(0,0,1920,1080);
[0575] RctangL dest=new RctangL(100,100,960,540);
[0576] AWTVideoSizeControl videoSizeControl = (AWTVideoSizeContro1)player.getControl(″javax.tv.media.AWTVideoSizeCon trol″);
[0577] videoSizeContro1.setSize(new AWTVideoSize(src,dest))。
[0578] 图31是用于描述作者对视频的位置和大小的设定以及3D兼容播放器对视频的位置和大小的校正的示图。
[0579] 作者设定视频的左眼用图像的位置和大小。在图31中,视频的左眼用图像的位置和大小被设定到大小为1920×1080像素的显示坐标系统。
[0580] 3D兼容播放器把针对显示坐标系统的视频的左眼用图像的位置和大小的设定不加改变地设定到视频平面13的L视频平面13L。
[0581] 此外,3D兼容播放器把L视频平面13L的视频的位置和大小的设定不加改变地应用到R视频平面13R。
[0582] 从而,在作者看来,在视频的位置和大小被设定到L视频平面13L的情况下,与该视频的位置和大小相同的位置和大小也被设定到R视频平面13R。
[0583] 现在,对于视频,不从外部提供深度信息。从而,用于提供偏移的布置不仅浪费,而且还可能导致视频制作者未预期到的输出。
[0584] 也就是说,虽然视频制作者应当制作视频图像以便显示预期的3D图像。从而,在3D兼容播放器中,例如,在根据从外部提供的信息(例如存储在PSR#21(图7)中的偏移值等等)来执行诸如对描绘在视频平面13上的视频的图像(左眼用图像和右眼用图像)的位置进行移位之类的处理时,可能显示出视频制作者未预期到的图像。
[0585] 因此,在3D兼容播放器中,在该配置上定义了L/R视频平面,但提供了限制,以允许BD-J应用的作者只处理L视频平面。也就是说,3D兼容播放器还必须把由BD-J应用进行的L视频缩放/L视频定位的API调用应用到R视频缩放/R视频定位。
[0586] 注意,在根据所设定的视频的大小,利用该大小来缩放视频的情况下,如“PG/文本字幕配置的切换”中所述,利用用于缩放视频的缩放比率(放大比率或缩小比率)来缩放PG平面偏移值,并且也以相同的方式利用视频的缩放比率来缩放图形平面偏移值。
[0587] 图32是示出作为用于如上所述执行视频的位置设定(校正)和大小设定(缩放)的3D兼容播放器的图3中的BD播放器的功能配置示例的框图。
[0588] 图32中的3D兼容播放器包括用于设定要存储在L视频平面13L(L区域)中的图像的大小和位置的L用API,以及用于设定要存储在R视频平面13R(R区域)中的图像的大小和位置的R用API。然后,L用API和R用API之一设定与另一API设定的图像的大小和位置相同的大小和位置。
[0589] 也就是说,在图32中的3D兼容播放器中,视频解码器(Video decoder)对视频解码,并且把作为其结果获得的视频的左眼用图像和右眼用图像提供给L用API和R用API。
[0590] L用API由L视频缩放(L(左)视频缩放)API和L视频定位(L(左)定位)API构成,并且根据来自BD-J应用的对视频的位置和大小的设定请求的调用,设定来自视频解码器的左眼用图像的位置和大小。
[0591] 也就是说,L视频缩放API执行缩放,以便控制来自视频解码器的左眼用图像的大小以获得根据来自BD-J应用的请求的大小,并将其提供给L视频定位API。
[0592] L视频定位API控制来自L视频缩放API的左眼用图像的位置以获得根据来自BD-J应用的请求的位置,并且把作为其结果获得的左眼用图像描绘在L视频平面13L上(把来自L视频缩放API的左眼用图像描绘在L视频平面13L上的根据来自BD-J应用的请求的位置上)。
[0593] 另外,L视频缩放API调用下文中描述的R视频缩放API,以执行与来自BD-J应用的请求相同的请求。此外,L视频定位API调用下文中描述的R视频定位API,以执行与来自BD-J应用的请求相同的请求。
[0594] 另外,根据对视频大小的设定请求的调用,L视频缩放API把缩放视频的图像(左眼用图像)时的缩放比率(放大比率或缩小比率)S提供给PG生成API和图形生成API。
[0595] R用API由R视频缩放(R(右)视频缩放)API和R视频定位(R(右)定位)API构成,并且根据来自L用API的对视频的位置和大小的设定请求,设定来自视频解码器的右眼用图像的位置和大小。
[0596] 也就是说,R视频缩放API控制来自视频解码器的右眼用图像的大小以获得根据来自L视频缩放API的请求的大小,并将其提供给R视频定位API。
[0597] R视频定位API控制来自R视频缩放API的右眼用图像的位置以获得根据来自L视频定位API的请求的位置,并且把作为其结果获得的右眼用图像描绘在R视频平面13R上。
[0598] 如上所述,在用于设定要存储在L视频平面13L(L区域)中的图像的大小和位置的L用API和用于设定要存储在R视频平面13R(R区域)中的图像的大小和位置的R用API中,其中的一个API,例如,R用API,设定与作为另一API的L用API根据来自BD-J应用的请求而设定的图像的大小和位置相同的大小和位置。
[0599] 从而,对于其中存储了符合BD标准的视频图像的视频平面13,作者被允许只处理作为L视频平面13L(L区域)和R视频平面13R(R区域)之一的L视频平面13L,从而可以防止显示视频制作者未预期到的视频图像。
[0600] 在3D兼容播放器中,还对于PG执行图29中所述的处理。
[0601] 然而,在PG生成API中,利用来自L视频缩放API的缩放比率S来缩放PG平面偏移值(例如,偏移用PG流中包括的偏移值、3D兼容播放器的内部存储区域或PSR#21中存储的偏移值)(该PG平面偏移值被乘以缩放比率S)。
[0602] 然后,在PG生成API中,利用缩放后的PG平面偏移值,从描绘在逻辑平面10上的非立体图像生成左眼用图像和右眼用图像。
[0603] 另外,在3D兼容播放器中,配置模式改变API从记录在作为BD的盘100(图3)中的图形图像中选择根据来自BD-J应用的请求的图形模式中的图像,并将其描绘在图形平面11上。
[0604] 也就是说,在视频模式是例如立体图形模式的情况下,作为立体图像的图形的左眼用图像和右眼用图像分别被描绘在图形平面11的L图形平面11L和R图形平面11R上。
[0605] 另外,在视频模式是例如偏移图形模式的情况下,作为非立体图像的图形的图像被描绘在逻辑平面10上,而且,图形生成API利用来自L视频缩放API的缩放比率S来缩放图形平面偏移值(例如,存储在3D兼容播放器的内部存储区域或PSR#21中的偏移值)。
[0606] 然后,图形生成API使用缩放后的图形平面偏移值来从描绘在逻辑平面10上的非立体图像生成左眼用图像和右眼用图像,并且将这些图像分别描绘在L图形平面11L和R图形平面11R上。
[0607] [用于图形的像素坐标系统]
[0608] 对于立体图形配置(用于显示图形3D图像的配置)有效的像素坐标系统是以下之一。
[0609] (0,0)-(1920,2160)
[0610] (0,0)-(1280,1440)
[0611] (0,0)-(720,960)
[0612] (0,0)-(720,1152)
[0613] (0,0)-(960,1080)
[0614] 上半部分(top-half)被指派给L图形视域,并且下半部分(bottom-half)被指派给R图形视域。
[0615] 图33示出了1920×2160像素的图形平面11。
[0616] 描绘在作为在图形平面11的上方侧的存储区域(上半部分)的L图形平面11L上的图像是被左眼观察到的左眼用图像(L(左)图形视域),并且描绘在作为在图形平面11的下方侧的存储区域(下半部分)的R图形平面11R上的图像是被右眼观察到的右眼用图像(R(右)图形视域)。
[0617] 在图33中,在图形平面11上描绘了一个容器(根容器)和作为该容器的孩子的两个组件(Component)。
[0618] 组件的坐标是利用以充当该组件的父亲的容器作为基准的相对坐标来表示的。
[0619] 注意,在3D兼容播放器中,不必对图形平面11的边缘设置起保护作用的缓冲区域。
[0620] 另外,3D兼容播放器必须实现用于抑制L视域和R视域之间的失配的布置。
[0621] 现在,作为传统播放器的BD播放器没有用于检测BD-J应用进行的描绘的完成并在完成后将其传送到监视器的机制。在L和R视频输出的情况下,在L图形和R图形之间可发生输出失配。
[0622] 因此,在3D兼容播放器中,某一类API调用被定义为表明BD-J应用进行的描绘的完成的信号。相反,如果BD-J应用不调用相应的描绘完成通知API,则在屏幕上什么也不输出。作者必须求助于使用此技术。
[0623] 也就是说,在图像(左眼用图像)被描绘在L图形平面11L上后,在对R图形平面11R的图像描绘完成之前,在图形平面11的描绘内容被显示在显示屏幕上作为左眼用图像和右眼用图像时,该左眼用图像和右眼用图像是不能被看作3D图像的失配图像(在此情况下,右眼用图像的描绘有缺陷),从而,这导致了看着显示屏幕上的图像的用户的不适之感。
[0624] 从而,为了防止用户有不适之感,3D兼容播放器具有用于抑制左眼用图像和右眼用图像之间的失配的功能,即防止处于失配状态中的左眼用图像和右眼用图像被显示在显示屏幕上从而能够作为3D图像被观看的功能。
[0625] 具体而言,在完成对图形平面11的左眼用图像和右眼用图像两者的描绘之后,3D兼容播放器输出该左眼用图像和右眼用图像以显示它们。
[0626] 从而,3D兼容播放器需要认识到对图形平面11的左眼用图像和右眼用图像两者的描绘已经完成。
[0627] [直接描绘模型]
[0628] 在直接描绘中,3D兼容播放器不具有用于辨别从BD-J应用发出用于描绘图形图像的描绘命令的操作是否已完成的技术。
[0629] 具体而言,在BD-J应用已经发出了描绘命令#1、#2等等直到#N,并且将图像描绘到图形平面11的操作已经根据描绘命令#1至#N执行的情况下,此后3D兼容播放器不能认识到是否还会发出描绘命令,即由BD-J应用进行的描绘命令发出是否已经完成。
[0630] 因此,在按描绘命令执行对图形平面11的图像描绘的情况下,BD-J应用的作者有义务认识到对用于保证图形的描绘的完全性以便在对图形平面11的图像描绘完成之前不将处理返回到BD-J应用的描绘完全性保证API的调用,以作为对3D兼容播放器给出的信号。
[0631] 或者,在按描绘命令执行对图形平面11的图像描绘的情况下,BD-J应用的作者有义务认识到对用于通知对图形平面11的图像描绘已完成的描绘完成通知API的调用,以作为对3D兼容播放器给出的信号。
[0632] 或者,在按描绘命令执行对图形平面11的图像描绘的情况下,BD-J应用的作者有义务认识到对用于通知对图形平面11的图像描绘开始的描绘开始通知API的调用,以及随后对用于通知对图形平面11的图像描绘已完成的描绘完成通知API的调用,以作为对3D兼容播放器给出的信号。
[0633] 在此情况下,3D兼容播放器可通过BD-J应用对描绘完全性保证API的调用、对描绘完成通知API的调用或者对描绘开始通知API的调用以及随后对描绘完成通知API的调用,来认识到对图形平面11的图像描绘已经完成,即描绘命令的发出已经完成。然后,作为其结果,左眼用图像和右眼用图像可在匹配状态中被显示(以便能够被看作3D图像)。
[0634] 这里,以描绘命令序列作为参数的专用API可被定义为描绘完全性保证API。
[0635] 现在,例如,java.awt.Toolkit#sync()方法可被用作描绘完成通知API。在此情况下,在3D兼容播放器中,只要不执行对java.awt.Toolkit#sync()方法的调用,描绘在图形平面11上的图像就不被输出,从而,描绘在图形平面11上的图像不被显示在显示屏幕上。
[0636] 另外,例如,Java(注册商标)的预定方法或专用API可被定义为描绘开始通知API。
[0637] 注意,当在一帧期间(在1视频帧期间)对java.awt.Toolkit#sync()方法的调用被执行多次时,图形帧可能包括失落的帧。从而,不允许连续多次执行或者在其间几乎不进行描绘的情况下连续执行对java.awt.Toolkit#sync()方法的调用。
[0638] [重绘模型]
[0639] 在AWT(Abstract Windowing toolkit,抽象加窗工具包)绘图模型中,充当构成图形图像的一部分的根容器的repaint()方法调用供应构成图形图像的一部分的每个组件的update()方法。
[0640] 然后,在AWT绘图模型中,可以在3D兼容播放器处完整控制(完全控制)图形图像的描绘过程,从而,3D兼容播放器可以认识到对图形平面11的图像描绘已经完成。
[0641] 从而,可以执行3D兼容播放器的实现,使得即使在不执行对上述描绘完成通知API的调用的情况下,也显示处于匹配状态中的左眼用图像和右眼用图像。
[0642] 图34是示出作为用于通过强制BD-J应用调用描绘完全性保证API、调用描绘完成通知API、或者调用描绘开始通知API并随后调用描绘完成通知API,来认识到描绘命令的发出已经完成的3D兼容播放器的图3中的BD播放器的功能配置示例的框图。
[0643] 现在,让我们假定在对图形平面11的图像描绘已完成的情况下BD-J应用执行对描绘完成通知API的调用。
[0644] 该3D兼容播放器包括充当图形平面11的缓冲器201L和201R以及缓冲器202L和202R。
[0645] 注意,在图34中,缓冲器201L和202L相当于L图形平面11L,并且缓冲器201R和202R相当于R图形平面11R。
[0646] 另外,缓冲器201L和201R这一组和缓冲器202L和202R这一组交替充当后缓冲器(隐藏缓冲器)和前缓冲器。
[0647] 这里,后缓冲器是其中BD-J应用执行图形图像的描绘的缓冲器,前缓冲器是在图像描绘在后缓冲器中执行的同时存储要显示在显示屏幕(逻辑屏幕21)上的图像的缓冲器。
[0648] 图34中的A示出了在缓冲器201L和201R这一组是后缓冲器并且缓冲器202L和202R这一组是前缓冲器的状态中的3D兼容播放器。
[0649] 在图34中的A中,BD-J应用对图形图像(左眼用图像和右眼用图像)的描绘对充当后缓冲器的缓冲器201L和201R执行,并且存储在充当前缓冲器的缓冲器202L和202R中的图像(左眼用图像和右眼用图像)作为输出被输出到显示屏幕。
[0650] 在对充当后缓冲器的缓冲器201L和201R的图形图像描绘完成后,BD-J应用调用描绘完成通知API。
[0651] 在执行对描绘完成通知API的调用后,作为对前缓冲器的替换,3D兼容播放器开始把存储在后缓冲器中的图像输出到显示屏幕。
[0652] 也就是说,图34中的B示出了在刚刚执行对描绘完成通知API的调用之后的3D兼容播放器。
[0653] 在执行对描绘完成通知API的调用后,3D兼容播放器开始把存储在充当后缓冲器的缓冲器201L和201R中的图像输出到显示屏幕,作为对存储在充当前缓冲器的缓冲器202L和202R中的图像的替换。
[0654] 此外,3D兼容播放器把存储在充当后缓冲器的缓冲器201L和201R中的图像拷贝到充当前缓冲器的缓冲器202L和202R。
[0655] 然后,3D兼容播放器切换后缓冲器和前缓冲器。
[0656] 具体而言,3D兼容播放器把充当后缓冲器的缓冲器201L和201R设定为前缓冲器,并且把充当前缓冲器的缓冲器202L和202R设定为后缓冲器。
[0657] 也就是说,图34中的C示出了在缓冲器201L和201R这一组是前缓冲器并且缓冲器202L和202R这一组是后缓冲器的状态中的3D兼容播放器。
[0658] BD-J应用开始对充当后缓冲器的缓冲器202L和202R的图形图像描绘,然后,重复同样的处理。
[0659] 图35是用于描述在BD-J应用调用描绘完全性保证API的情况下图34中的3D兼容播放器进行的图形处理的流程图。
[0660] 在步骤S11中,3D兼容播放器判定是否已从BD-J应用执行了对描绘完全性保证API的调用,并且在判定尚未执行对描绘完全性保证API的调用的情况下,3D兼容播放器返回到步骤S11。
[0661] 另外,如果在步骤S11中判定已执行对描绘完全性保证API的调用,则3D兼容播放器前进到步骤S12,顺序运行充当描绘完全性保证API的参数的描绘命令序列,并且把作为该运行的结果而获得的图形图像描绘在后缓冲器上,并且还把存储在前缓冲器中的图形图像输出到显示屏幕(输出以供显示)。
[0662] 然后,在向后缓冲器的描绘完成之后,在步骤S13中,3D兼容播放器把存储在后缓冲器中的图形图像输出到显示屏幕,作为对前缓冲器的替换(输出以供显示)。
[0663] 然后,在步骤S14中,3D兼容播放器把存储在后缓冲器中的图形图像拷贝到前缓冲器。
[0664] 然后,在步骤S15中,3D兼容播放器切换后缓冲器和前缓冲器,返回到步骤S11,然后重复同样的处理。
[0665] 如上所述,在3D兼容播放器中,在针对图形平面11(其是后缓冲器)从BD-J应用执行了对用于保证图形图像的描绘的完全性的描绘完全性保证API的调用的情况下,描绘在图形平面11上的图像被输出供显示。
[0666] 从而,在3D兼容播放器中,在BD-J应用等待图形图像的描绘完成之后,描绘在图形平面11上的图像可被显示,从而可以防止处于失配状态中的左眼用图像和右眼用图像被显示在显示屏幕上。
[0667] 图36是用于描述在BD-J应用调用描绘完成通知API的情况下图34中的3D兼容播放器进行的图形处理的流程图。
[0668] 3D兼容播放器等待从BD-J应用发出描绘命令,并且在步骤S21中运行该描绘命令。
[0669] 然后,在步骤S22中,3D兼容播放器把作为运行描绘命令的结果而获得的图形图像描绘在后缓冲器中,并且还把存储在前缓冲器中的图形图像输出到显示屏幕(输出以供显示)。
[0670] 然后,在步骤S23中,3D兼容播放器判定是否已从BD-J应用执行了对描绘完成通知API的调用。
[0671] 如果在步骤S23中判定尚未执行对描绘完成通知API的调用,则3D兼容播放器等待从BD-J应用发出描绘命令,并且返回到步骤S21,然后重复同样的处理。
[0672] 另外,如果在步骤S23中判定已经执行对描绘完成通知API的调用,则3D兼容播放器前进到步骤S24,并且把存储在后缓冲器中的图形图像输出到显示屏幕,作为对前缓冲器的替换(输出以供显示)。
[0673] 然后,在步骤S25中,3D兼容播放器把存储在后缓冲器中的图形图像拷贝到前缓冲器。
[0674] 然后,在步骤S26中,3D兼容播放器切换后缓冲器和前缓冲器,等待从BD-J应用发出描绘命令,并且返回到步骤S21,然后重复同样的处理。
[0675] 如上所述,在3D兼容播放器中,在从BD-J应用执行了对用于通知对图形平面11(充当后缓冲器)的图形图像描绘已经完成的描绘完成通知API的调用的情况下,描绘在图形平面11上的图像被输出以供显示。
[0676] 从而,在执行了BD-J应用对图形图像的描绘已经完成的通知之后,描绘在图形平面11上的图像可被显示,从而,可以防止处于失配状态中的左眼用图像和右眼用图像被显示在显示屏幕上。
[0677] 图37是用于描述在BD-J应用执行对描绘开始通知API的调用以及对描绘完成通知API的随后调用的情况下图34中的3D兼容播放器进行的图形处理的流程图。
[0678] 在步骤S31中,3D兼容播放器判定是否已从BD-J应用执行了对描绘开始通知API的调用,并且在判定尚未执行对描绘开始通知API的调用的情况下,返回到步骤S31。
[0679] 另外,如果在步骤S31中判定已执行了对描绘开始API的读出,则3D兼容播放器等待BD-J应用发出描绘命令,前进到步骤S32,并且运行该描绘命令。
[0680] 然后,在步骤S33中,3D兼容播放器判定是否已从BD-J应用执行了对描绘完成通知API的调用。
[0681] 如果在步骤S33中判定尚未执行对描绘完成通知API的调用,则3D兼容播放器等待从BD-J应用发出描绘命令,并且返回到步骤S32,然后重复同样的处理。
[0682] 另外,如果在步骤S33中判定已执行对描绘完成通知API的调用,则3D兼容播放器前进到步骤S34,把作为描绘命令的运行结果而获得的图形图像描绘在后缓冲器上,并且还把存储在前缓冲器中的图形图像输出到显示屏幕(输出以供显示)。
[0683] 然后,在步骤S35中,3D兼容播放器把存储在后缓冲器中的图形图像输出到显示屏幕,作为对前缓冲器的替换(输出以供显示)。
[0684] 然后,在步骤S36中,3D兼容播放器把存储在后缓冲器中的图形图像拷贝到前缓冲器。
[0685] 然后,在步骤S37中,3D兼容播放器切换后缓冲器和前缓冲器,返回到步骤S31,然后重复同样的处理。
[0686] 如上所述,在3D兼容播放器中,在从BD-J应用执行了对用于开始对图形平面11(充当后缓冲器)的图形图像的描绘的描绘开始通知API的调用和对用于通知对图形平面11(充当后缓冲器)的图形图像的描绘已完成的描绘完成通知API的随后调用的情况下,描绘在图形平面11上的图像被输出以供显示。
[0687] 从而,在执行了BD-J应用对图形图像的描绘已经完成的通知的情况下,描绘在图形平面11上的图像可被显示,从而,可以防止处于失配状态中的左眼用图像和右眼用图像被显示在显示屏幕上。
[0688] [用于背景的像素坐标系统]
[0689] 对于立体背景配置(用于显示背景3D图像的配置)有效的像素坐标系统是以下之一。
[0690] (0,0)-(1920,2160)
[0691] (0,0)-(1280,1440)
[0692] (0,0)-(720,960)
[0693] (0,0)-(720,1152)
[0694] 上半部分(top-half)被指派给L背景视域,并且下半部分(bottom-half)被指派给R背景视域。
[0695] 注意,背景图像的格式(内容格式)是单色(Single-color)、JPEG(JFIF)和MPEG2涓流馈送(drip-feed)之一,并且在格式是MPEG2涓流馈送的情况下,背景图像必须是SD图像(仅限SD视频)。
[0696] 另外,1920×2160像素、1280×1440像素、720×960像素或720×1152像素的JPEG(JFIF)图像可用作背景图像。
[0697] [焦点管理]
[0698] 例如,在基于窗口部件(widget)的GUI(图形用户界面)等等被用作图形图像的情况下,在传统播放器中,构成GUI的、作为某单个容器的孩子的多个组件不能同时拥有焦点。
[0699] 另外,在传统播放器中,构成GUI的多个根容器不能同时活动(处于聚焦状态中)。
[0700] 这里,容器是图形图像的组件(部件),并且能够有父亲(上层)和孩子(下层)。没有父亲而只有孩子的容器被称为根容器。
[0701] 组件是一种容器,并且能够有父亲但不能有孩子。
[0702] 在充当图形图像的GUI是3D图像的情况下,对于构成该3D图像的左眼用图像和右眼用图像中的每一个,对应的容器必须被聚焦,并且对其焦点的转变需要以相同的方式(同等地)执行。
[0703] 具体而言,如果在左眼用图像和右眼用图像之中,构成这些图像之一的某个容器被聚焦,但是对应于该容器的、构成另一图像的容器未被聚焦,则会使得观看利用这样的左眼用图像和右眼用图像显示的3D图像的用户有不适之感。
[0704] 从而,为了防止用户有不适之感,3D兼容播放器执行焦点管理,以便在左眼用图像的容器和右眼用图像的容器处有相同的焦点转变。
[0705] 图38示出了描绘在图形平面上11的GUI的示例。
[0706] 图38中的GUI由构成一个根容器和该根容器的孩子的每两个相应的组件#1、#2和#3构成。
[0707] 注意,在图38中,描绘在L图形平面11L上的组件#1、#2和#3构成左眼用图像,并且描绘在R图形平面11R上的组件#1、#2和#3构成右眼用图像。
[0708] 例如,在左眼用图像的组件#i被聚焦的情况下,右眼用图像的作为对应组件的组件#i也必须被聚焦。
[0709] 为了使得窗口部件状态转变/管理在L和R之间对称,3D兼容播放器通过使得两个容器或组件同时被聚焦来满足这一点。因此,容器或组件的实例需要具有一表明是否持有焦点的标志,以便能够被管理。另外,必须使第三焦点请求失败。也就是说,持有焦点的容器或组件的数目限于0或2。
[0710] 用于使得左眼用图像和右眼用图像的两个对应容器(组件)被聚焦的焦点方法包括第一焦点方法和第二焦点方法。
[0711] 图39示出了第一焦点方法和第二焦点方法。
[0712] 图39中的A示出了第一焦点方法(跨L/R图形平面的1根容器)。
[0713] 第一焦点方法使得充当跨越L图形平面11L和R图形平面11R的容器(根容器)的孩子的L图形平面11L上的容器(组件)和R图形平面11R上的容器(组件)这两个对应容器同时被聚焦。
[0714] 图39中的B示出了第二焦点方法(2根容器(一个用于L图形平面,另一个用于R图形平面))。
[0715] 在第二焦点方法中,根容器被描绘在L图形平面11L和R图形平面11R中的每一个上,并且两个根容器都被同时激活(被聚焦)。
[0716] 图40是用于描述作为使得左眼用图像和右眼用图像的两个对应容器(组件)拥有焦点的3D兼容播放器的图3中的BD播放器的焦点管理的流程图。
[0717] 现在,让我们假定构成要描绘在图形平面11上的GUI的容器(组件)具有表示相应容器(组件)是否被聚焦的焦点标志。
[0718] 在焦点被请求后,在步骤S51中,3D兼容播放器把用于对容器数目计数的变量i设定到充当初始值的0。
[0719] 然后,在步骤S52中,3D兼容播放器基于每个组件拥有的焦点标志,判定在作为图形平面11上的容器c(i)的孩子的组件(容器)之中,是否已经有两个组件处于聚焦状态中(以下也称之为焦点持有组件)。
[0720] 如果在步骤S52中判定在充当容器c(i)的孩子的组件之中没有两个焦点持有组件,则3D兼容播放器前进到步骤S53,并且使得两个对应组件拥有所请求的焦点。此外,在步骤S53中,3D兼容播放器向被使得聚焦的两个组件中的每一个的焦点标志设定一表明持有焦点的值,并且前进到步骤S54。
[0721] 另一方面,如果在步骤S52中判定在充当容器c(i)的孩子的组件之中有两个焦点持有组件,则3D兼容播放器跳过步骤S53,前进到步骤S54,将变量i递增1,并且前进到步骤S55。
[0722] 在步骤S55中,3D兼容播放器判定变量i是否小于图形平面11上的容器数目N。如果在步骤S55中判定变量i小于图形平面11上的容器数目N,则3D兼容播放器返回到步骤S22,并且重复同样的处理。
[0723] 另外,如果在步骤S55中判定变量i不小于图形平面11上的容器数目N,则处理结束。
[0724] 如上所述,在两个容器针对焦点请求没有被聚焦的情况下,3D兼容播放器把存储左眼用图像的L图形平面11L(L区域)上的容器和与该容器相对应的、存储右眼用图像的R图形平面11R(R区域)上的容器改变到聚焦状态中。
[0725] 从而,例如,在构成3D图像窗口部件的容器之中,在左眼用图像的容器和右眼用图像的容器之间,可以以相同的方式设定焦点的转变。
[0726] [鼠标事件的处理]
[0727] 在立体图形的情况下,鼠标光标在屏幕上的二维坐标可能不同于在L和R图形平面上的坐标。从而,BD-J应用在描述依赖于鼠标事件的处理时需要执行坐标转换,但是用于坐标转换的偏移值对于BD播放器的每个实现是不同的,从而是未知的。
[0728] 具体而言,图41示出了显示屏幕上看到点选设备(例如鼠标等等)的光标的3D图像的位置和图形平面11上的光标位置。
[0729] 光标被BD播放器显示,但是在3D兼容播放器中,希望在比图形3D图像(要从盘100播放的3D图像)更近的位置上显示光标的3D图像(以便能够被观看)。
[0730] 另一方面,在利用3D图像显示光标的情况下,逻辑屏幕21上的左眼用图像的光标处于位置(x+Δx,y),该位置相对于显示屏幕上能够看到光标的3D图像的位置(x,y)移位了一定的偏移值Δx,并且逻辑屏幕21上的右眼用图像的光标也处于位置(x-Δx,y),该位置相对于显示屏幕上能够看到光标的3D图像的位置(x,y)移位了一定的偏移值Δx。
[0731] 这里,光标的3D图像的深度方向上的位置根据该一定偏移值Δx而改变。
[0732] 在3D兼容播放器中,如果在比图形3D图像更近的位置上显示光标的3D图像,则一表示图形3D图像的深度方向(z方向)上的最近位置的值max-depth是必要的。然而,在3D兼容播放器中,难以从图形3D图像计算值max-depth。
[0733] 因此,例如,值max-depth被预先记录在作为BD的盘100(图3)中,并且3D兼容播放器可以将该值max-depth设定(存储)到PSR(图7)(例如,PSR#21)。
[0734] 在此情况下,3D兼容播放器(或者显示由3D兼容播放器输出的3D图像的显示器)可以参考存储在PSR中的值max-depth,获得用于在比利用值max-depth表示的位置更近的一侧显示光标的偏移值Δx。然后,光标的3D图像可被显示在比图形3D图像更近的位置上。
[0735] 注意,3D兼容播放器显示的OSD(On Screen Display,屏幕上显示)也可以通过与光标相同的方式被显示在比图形3D图像更近的位置上。
[0736] 另外,表示要从作为BD的盘100播放的3D图像的深度方向上的最深侧位置的值min-depth与值max-depth一起被预先记录在作为BD的盘100(图3)中,从而值max-depth和值min-depth可被设定到PSR(图7)。
[0737] 如上所述,在3D兼容播放器中,表示记录在作为BD的盘100中的3D图像的深度方向上的最近侧位置的值max-depth等等被设定到PSR,从而光标和OSD可被显示在比要从BD播放的3D图像更近的一侧。
[0738] 顺便说一下,3D兼容播放器可以任意设定用于显示光标的3D图像的偏移值Δx。另外,偏移值Δx不必是恒定的,例如可以针对每一帧来改变(设定)。
[0739] 从而,当在3D兼容播放器对BD-J应用发出以光标位置作为参数的事件时采用显示屏幕的位置(x,y)作为光标的位置时,BD-J应用必须对该显示屏幕的位置(x,y)执行坐标转换,以获得图形平面11上的光标位置(x+Δx,y)(或(x-Δx,y))。
[0740] 然而,为了对显示屏幕的位置(x,y)执行坐标转换,BD-J应用需要识别出偏移值Δx,但BD-J应用是很难识别出3D兼容播放器可任意设定的偏移值的。
[0741] 因此,鼠标事件的坐标系统被仅限于L图形平面上。BD播放器有义务采用L图形平面上的坐标作为发出鼠标事件时的二维位置信息。
[0742] 具体而言,在3D兼容播放器中,例如,诸如鼠标之类的点选设备的光标的3D图像由左眼用图像和右眼用图像构成,但是光标的3D图像在图形平面11的L图形平面11L(L区域)和R图形平面11R(R区域)之一例如L图形平面11L(L区域)上的位置,被用作在发出以光标位置作为参数的事件时的光标位置。
[0743] 从而,BD-J应用可以得知(识别)出L图形平面11L上的位置作为3D图像的光标位置,从而,BD-J应用的作者可以利用L图形平面11L上的该位置作为光标位置,以该光标位置作为参数,来描述对事件(鼠标事件等等)的处理。
[0744] [描绘操作]
[0745] 3D兼容播放器必须确保L视域和R视域之间的匹配。具体而言,3D兼容播放器必须确保图形的左眼用图像和右眼用图像在匹配状态中被描绘到图形平面11(以便能够被看作3D图像),并随后被显示在显示屏幕上。
[0746] 图形平面11的初始化(重置)被类似地执行。具体而言,在初始化图形平面11的L图形平面11L和R图形平面11R之一的情况下,另一个也必须被初始化。
[0747] 然而,BD-J应用的作者负有在L视域和R视域之间进行有意义的匹配的责任(作者责任),即图形的左眼用图像和右眼用图像之间的图像内容的匹配。
[0748] 图42是用于描述图形的左眼用图像和右像用图像之间的匹配的示图。
[0749] 图42中的A示出了在匹配状态中描绘的图形的左眼用图像和右眼用图像。
[0750] 在图42中的A中,对L图形平面11L的左眼用图像的描绘以及对R图形平面11R的右眼用图像的描绘已经完成,从而在描绘完成之后,3D兼容播放器必须在显示屏幕上显示左眼用图像和右眼用图像。
[0751] 注意,参考图35描述的描绘完全性保证API以描绘命令序列作为参数,但是作为该描绘完全性保证API的参数的描绘命令序列必须是用于描绘处于匹配状态(从而能够被看作3D图像)的左眼用图像和右眼用图像的描绘命令序列,并且根据这种描绘完全性保证API,确保了以匹配状态来描绘图形的左眼用图像和右眼用图像。
[0752] 图42中的B示出了处于失配状态中的图形的左眼用图像和右眼用图像。
[0753] 在图42中的B中,对L图形平面11L的左眼用图像的描绘已经完成,但对R图形平面11R的右眼用图像的描绘尚未完成。
[0754] 3D兼容播放器不必将处于图42中的B的状态中的左眼用图像和右眼用图像显示在显示屏幕上。
[0755] 例如,通过在3D兼容播放器处采用三重缓冲器,可以确保图形的左眼用图像和右眼用图像之间的匹配。
[0756] 图43是示出作为采用三重缓冲的3D兼容播放器的图3中的BD播放器的功能配置示例的框图。
[0757] 该3D兼容播放器包括充当图形平面11的后缓冲器(隐藏缓冲器)211、前缓冲器212和213。
[0758] 后缓冲器211由缓冲器211L和211R构成。前缓冲器212由缓冲器212L和212R构成,并且前缓冲器213由缓冲器213L和213R构成。
[0759] 注意,在图43中,缓冲器211L、212L和213L相当于L图形平面11L,并且存储左眼用图像。缓冲器211R、212R和213R相当于R图形平面11R,并且存储右眼用图像。
[0760] BD-J应用发出描绘命令,并且作为运行该描绘命令的结果的图形的3D图像(左眼用图像和右眼用图像)被描绘在后缓冲器211上。
[0761] 另一方面,前缓冲器212和213被交替选择,并且存储在所选的那个缓冲器(以下称之为所选缓冲器)中的左眼用图像和右眼用图像被显示在显示屏幕上(提供到显示处理器)。
[0762] 在对后缓冲器211的左眼用图像和右眼用图像的描绘完成之后,存储(描绘)在该后缓冲器211中的左眼用图像和右眼用图像被拷贝到前缓冲器212和213中未被选择的那个。
[0763] 用于交替选择前缓冲器212和213作为所选缓冲器的选择切换是在完成从后缓冲器读出(拷贝)左眼用图像和右眼用图像直到最后的水平行为止之后的VBI(Vertical Blanking Interval,垂直消隐间隔)的定时运行的,以防止撕裂(tearing)伪影的发生。
[0764] [帧精确动画]
[0765] FAA(Frame Accuarte Animation,帧精确动画)包括图像帧精确动画(Image Frame Accurate Animation)和同步帧精确动画(Sync Frame Accurate Animation)这两个,但是为了在3D兼容播放器中同时操作用于动画的左眼用图像和右眼用图像(为了实现L/R同步),希望即使是对于图像帧精确动画和同步帧精确动画中的任何一个,也分别执行用于动画的左眼用图像的描绘和用于动画的右眼用图像的描绘(以同时在两处操作动画)。
[0766] 也就是说,在传统播放器中,仅在一处操作动画。在使用图像或缓冲器以跨越L和R的情况下,动画操作可以以伪方式在两处执行,但是由于BD播放器一方的性能需求,未输出足够的动画帧速率。
[0767] 图44是用于描述利用跨越L和R的图像进行的动画的示图。
[0768] 在图44中,以跨越1920×2160像素的图形平面11的L图形平面11L和R图形平面11R的方式描绘w×(h+1080)像素的单个图像。
[0769] 在图44中,在w×(h+1080)像素的图像之中,除了上部的w×h像素图像和下部的w×h像素图像以外的部分(中央部分)被填充以透明像素(透明颜色),从而上部的w×h像素图像可被视为用于动画的左眼用图像,并且下部的w×h像素图像可被视为用于动画的右眼用图像。
[0770] 也就是说,图44中的单个图像的中央部分被填充以透明颜色,从而在观看单个图像时的外观可被设定到w×h像素图像被描绘在L图形平面11L和R图形平面11R的相同位置上的状态。从而,可以实现3D图像动画,其中L图形平面11L上的w×h像素图像和R图形平面11R上的w×h像素图像被同步操作。
[0771] 然而,在图44中,尽管用于动画的左眼用图像和右眼用图像为w×h像素图像,仍需要执行巨大的w×(h+1080)像素的单个图像的描绘。
[0772] 结果,取决于BD播放器的性能,可能要花时间来描绘图像,并且难以以足够的帧速率显示3D图像动画。
[0773] 因此,在3D兼容播放器中,分别执行用于动画的左眼用图像的描绘和用于动画的右眼用图像的描绘。
[0774] 图45是示出用于动画的左眼用图像的描绘和用于动画的右眼用图像的描绘的示图。
[0775] 在3D兼容播放器中,用于动画的左眼用图像被描绘在L图形平面11L(L区域)上。此外,在3D兼容播放器中,与对L图形平面11L(L区域)的用于动画的左眼用图像的描绘相分开地,用于动画的右眼用图像被描绘在R图形平面11R(R区域)上。
[0776] 从而,可以迅速地执行用于动画的左眼用图像和右眼用图像的描绘,其结果是,可以以足够的帧速率显示3D图像动画。
[0777] 图46是示出了作为用于分别执行对L图形平面11L的用于动画的左眼用图像的描绘和对R图形平面11R的用于动画的右眼用图像的描绘的3D兼容播放器的图3中的BD播放器的功能配置示例的框图。
[0778] 图46中的A示出了用于以图像帧精确动画的形式描绘动画的3D兼容播放器的配置示例。
[0779] 图像缓冲器231是充当供BD-J应用加载和保存来自作为BD的盘100(图3)的资源的缓存存储器的缓冲器,并且存储用于动画的左眼用图像的列表(L用图像列表)和用于动画的右眼用图像的列表(R用图像列表)。
[0780] 像素传送设备232L以像素为单位从图像缓冲器231中顺序读出用于动画的左眼用图像,以将其描绘在L图形平面11L上。
[0781] 像素传送设备232R以像素为单位从图像缓冲器231中顺序读出用于动画的右眼用图像,以将其描绘在R图形平面11R上。
[0782] 图46中的B示出了用于以同步帧精确动画的形式描绘动画的3D兼容播放器的配置示例。
[0783] 图形存储器241是3D兼容播放器的工作存储器,并且由存储用于动画的左眼用图像的缓冲器(L用图像缓冲器)和存储用于动画的右眼用图像的缓冲器(R用图像缓冲器)构成。
[0784] 像素传送设备242L以像素为单位从图形存储器241中顺序读出用于动画的左眼用图像,以将其描绘在L图形平面11L上。
[0785] 像素传送设备242R以像素为单位从图形存储器241中顺序读出用于动画的右眼用图像,以将其描绘在R图形平面11R上。
[0786] 现在,图像帧精确动画的扩展API的定义在图47中示出。
[0787] 另外,同步帧精确动画的扩展API的定义在图48中示出。
[0788] 此外,图像帧精确动画的样本代码在图49和50中示出。注意,图50是接续图49的图。
[0789] 另外,同步帧精确动画的样本代码在图51和52中示出。注意,图52是接续图51的图。
[0790] 现在,本发明的实施例不限于上述实施例,在不脱离本发明的实质的情况下可以执行各种修改。
[0791] 也就是说,在本实施例中,在作为3D兼容播放器的图3中的BD播放器中,以记录在盘100中的3D图像内容或Java(注册商标)应用为对象执行了处理,作为3D兼容播放器处的处理对象的3D图像内容或Java(注册商标)应用是从除诸如盘100之类的记录介质以外的数据提供装置具体而言例如是从作为数字广播应用的对象转盘(object carousel)或数据转盘提供给3D兼容播放器的,并且3D兼容播放器可以以从该对象转盘或数据转盘提供来的该3D图像内容或Java(注册商标)应用为对象来执行处理。