具体实施方式
以下,参照附图对具备上述问题解决手段的再生装置的实施方式进行说明。
(第1实施方式)
首先,先说明本再生装置的处理的概要。
有关第1实施方式的再生装置是按照播放列表信息进行AV流与文本字幕流的同步再生的装置。AV流通过将视频流和音频流多路复用而构成。但是,文本字幕流不多路复用在AV流中。文本字幕流保存在与保存了AV流的文件不同的文件中而记录在BD-ROM中。
对播放列表信息进行说明。播放列表信息包括1个以上的再生区间信息,再生区间信息包括表示与AV流建立了对应的AV流管理信息的文件名的信息、表示该AV流的再生开始点及再生结束点的信息、以及流号码表。该播放列表信息、AV流和文本字幕流在BD-ROM中称作1个内容(简称作“播放列表”)。
流号码表是表示能够与AV流同步再生的、1个以上的文本字幕流的信息,包括该文本字幕流的语言代码。此外,在AV流管理信息中,记述有字体识别符。
再生装置判断在播放列表信息内的再生区间信息中的流号码表所表示的1个以上的文本字幕流之中是否存在满足以下的第1至第3的所有条件的文本字幕流,选择判断为满足的文本字幕流中的1个。
另一方面,在根据再生区间信息进行的AV流的再生之前,从记录媒体中读出由AV流管理信息内的字体识别符表示的字体数据,预加载到再生装置的存储器中。
用于文本字幕流选择的第1、第2、第3条件是以下的条件。
第1条件是,在再生装置中具有将构成作为选择对象的文本字幕流的文本代码用字体展开并展开至像素代码的二维图案的能力。
第2条件是,在与作为选择对象的文本字幕流的语言代码对应的语言中,能够实现独特的显示方法(纵排、字距调整、细铅字、字绕回处理等)。
第3条件是,作为选择对象的文本字幕流的语言代码与再生装置的语言设定一致。满足这些条件的文本字幕流由于是适于作为文本字幕显示的文本字幕流,所以将该文本字幕流的文本代码使用字体数据展开,与AV流一起再生。
该再生装置的内部结构为图1所示的结构。图1是有关第1实施方式的再生装置的结构图。如本图所示,再生装置由ROM驱动器1、读出缓冲器2、过滤器3、转发缓冲器4、视频解码器5、视频平面6、转发缓冲器7、预加载存储器8、文本字幕解码器9、图形平面10、颜色变换部11、字体数据存储部12、合成部13、转发缓冲器14、音频解码器15构成。这些结构元素中的文本字幕解码器9对应于字符串显示装置。
ROM驱动器1进行ROM的装载/读取/弹出,执行对ROM盘的访问。
读出缓冲器2是保存从ROM驱动器读出的TS包的缓冲器。
过滤器3将从读出缓冲器3输出的多个TS包分配给转发缓冲器4。
转发缓冲器4是保存从过滤器3输出的构成视频流的TS包的缓冲器。
视频解码器5将保存在转发缓冲器4中的视频数据解码,将非压缩的视频数据写入到视频平面6中。
视频平面6是保存非压缩的视频数据的帧存储器。
转发缓冲器7是保存从过滤器3输出的构成文本字幕流的TS包的缓冲器。
预加载存储器8是保存文本字幕流的缓冲器,在将最初的播放列表再生之前保存字幕流。
文本字幕解码器9将保存在预加载存储器8中的数据解码。并且,将字幕字符写入到图形平面10中,将颜色查找表设定到颜色变换部11内。
图形平面10具有1个画面量的区域,保存字幕字符。该图形平面中的像素由像素代码表现。这里,所谓“像素代码”,是能够通过颜色查找表展开为颜色信息的4位、1字节、2字节的代码。将像素代码能够取的数值称作“像素值”,该像素值在颜色查找表中使用被分配了颜色信息的索引。保存在图形平面10中的字幕字符通过该像素代码的二维图案表现。将使用灰度颜色的像素代码表现的字幕字符称作“灰度字符”。
颜色变换部11存储有颜色查找表,使用该颜色查找表执行像素代码的颜色变换。颜色查找表表示索引值与颜色信息的对应关系。颜色查找表中的颜色信息既可以由透明度α、亮度Y、红色差Cr、蓝色差Cb构成,也可以由透明度α、红色的亮度R、绿色的亮度G、蓝色的亮度B构成。为了便于说明,在以后的说明中设颜色信息是透明度、红色的亮度、绿色的亮度、蓝色的亮度的组合(表述为(α,R,G,B))。
字体数据存储部12是保存从ROM驱动器1读出的字体数据的缓冲器。该字体数据与预加载存储器8同样,在将播放列表再生之前保存。
合成部13将视频输出与图形输出合成而输出给装置外部的显示器。视频输出是从视频平面6输出的数据。图形输出是使用保存在图形平面10中的索引值和存储在颜色变换部11中的颜色查找表来对保存在图形平面10中的图形数据进行了变换的图像数据。
转发缓冲器14是保存从过滤器3输出的构成音频流的TS包的缓冲器。
音频解码器15将保存在转发缓冲器4中的音频数据解码,作为非压缩音频输出而输出。
图2是表示再生装置进行的影像输出的图。如本图所示,可知由合成部13将保存在图形平面10中的字幕字符、以及保存在视频平面6中的非压缩的视频合成,并将该合成图像输出给显示器。
以上是关于再生装置的内部结构的说明。接着,参照附图对文本字幕流的内部结构进行说明。
文本字幕流包括多个什么时候将怎样的字符串怎样显示的字符串显示指示信息。
图3是表示文本字幕流中的字符串显示指示信息的内部结构的图。
图3的上半部是文本字幕流,在其内部中存在字符串显示指示信息1、2、3……。这些字符串显示指示信息是由共通的类构造体生成的多个实例,其内部结构为共通的。引出线h1将字符串显示指示信息的结构特写表示。如引出线h1所示,字符串显示指示信息将“时间信息”、“颜色查找表更新指示信息”、“描绘更新指示信息”这3个作为共通的结构要素。引出线h2将时间信息的结构特写表示。如引出线h2所示,时间信息包括时间轴中的、开始根据字符串显示指示信息进行显示的时刻即“开始时刻”、结束根据字符串显示指示信息进行显示的时刻即“结束时刻”。这些开始时刻、结束时刻设定为视频流的时间轴上的同步时刻。图中的T0、T1是该同步时刻的一例。
引出线h3将颜色查找表更新指示信息的结构特写表示。如引出线h3所示,包括“颜色查找表更新标志”、“颜色查找表更新数”、以及M个“颜色查找表更新信息”。
“颜色查找表更新标志”是表示是否进行颜色查找表的更新的标志,具有“更新”和“不更新”这两个状态。
关于“颜色查找表更新数”,用引出线h8将颜色查找表更新数的结构特写表示。即,颜色查找表更新数表示以下的颜色查找表更新信息的个数“M”。
“颜色查找表更新信息”是仅在“颜色查找表更新标志”设定为“更新”的情况下追加的任意的结构要素。在“颜色查找表更新标志”设定为“不更新”的情况下,不保存颜色查找表更新信息。引出线h7将颜色查找表更新信息的结构特写表示。如该引出线所示,颜色查找表更新信息包括表示在时间信息中的开始时刻变更颜色查找表中的哪个索引的颜色信息的“应变更索引”、以及表示应对作为对象的索引分配哪个颜色信息的“变更后颜色信息”。以上是对颜色查找表更新信息的说明。接着,对描绘更新信息进行说明。
图4表示描绘更新信息的内部结构。引出线h4将描绘更新信息的结构特写表示。描绘更新信息具有与图形平面10中的显示区域的个数联动的数据构造。在图形平面10中的显示区域数是“N”的情况下,描绘更新信息的数据构造为图4那样。在显示区域数是N个的情况下,描绘更新信息如引出线h4所示,由“显示区域数”、“区域1的描绘更新描绘更新标志”、“区域1的显示区域信息”、“区域1的描绘更新信息”、“区域N的描绘更新标志”、“区域N的显示区域信息”、“区域N的描绘更新信息”构成。在显示区域数是“0”的情况下,描绘更新信息仅为“显示区域数”。该描绘更新信息中的描绘更新标志、显示区域信息、描绘更新信息的组合对应于多个区域(区域1~区域N)的各个区域,在字符串显示指示信息内出现显示区域数的数量。以下,对这些描绘更新信息的结构要素进行说明。
“显示区域数”表示在画面上存在几个字符串显示区域。
“描绘更新标志”是表示是否进行描绘的更新的标志,具有“更新”和“不更新”这两个状态。在描绘更新标志设定为“更新”的情况下保存描绘更新信息。在指定为“不更新”的情况下不保存描绘更新信息,维持之前的显示。显示的区域的数量由显示区域数指定,随着视频流的当前的再生时刻的行进而动态地变化。当显示区域的数量减少时,该区域回到非显示状态。在描绘更新标志指定为“不更新”的情况下,根据显示区域信息判断不进行之前的显示中的哪个区域的更新。即,在描绘更新标志被指定为“不更新”的情况下,不更新字符串显示指示信息内的显示区域信息中的、对应于与之前的显示没有变化的区域的信息,而原样显示。
引出线h5将显示区域信息的结构特写表示。显示区域信息包括“显示区域的坐标(Xa,Yb)”、“显示区域的尺寸(width,Height)”、“字符串的描绘坐标(Xc,Yd)”、以及“背景颜色的指定”。
引出线h6将描绘更新信息的结构特写表示。描绘更新信息包括“字符的文本代码(“American History”)”、以及“字符颜色的指定”。描绘更新信息能够对1个显示区域指定多个,由此能够按照字符使字符颜色变化。通过显示区域信息指定为背景颜色的索引以及通过描绘更新信息在字符颜色中使用的索引,是由显示区域信息及描绘更新信息所属的字符串显示指示信息的颜色查找表更新信息、或者在显示区域信息及描绘更新信息所属的字符串显示指示信息之前的字符串显示指示信息的颜色查找表更新信息分配了颜色信息的索引。因而,由显示区域信息及描绘更新信息分配了背景颜色及字符颜色的索引与通过颜色查找表更新信息分配了颜色信息的索引相等,如果将由显示区域信息及描绘更新信息分配了颜色信息的索引从灰度颜色的分配中排除,则能够将由颜色查找表更新信息更新了颜色信息的索引从灰度颜色的分配中排除。
图5是表示图形平面与显示区域信息、描绘更新信息之间的关系的图。图形平面可以保存纵1080×横1920像素。在其之中能够确保1个以上的区域1、2。图形平面中的区域的显示坐标(Xa,Xb)、在区域内字符的配置坐标(Xc,Xd)由描绘更新指示信息的显示区域信息指定。在区域的内部,配置与描绘更新指示信息中的描绘更新信息内的文本代码对应的字幕文字“American History……”。
接着,在以下的说明中,对作为预解析的对象的文本字幕流的一例进行说明。
图6是表示在视频流的再生时间轴上怎样设定多个字符串显示指示信息(字符串显示指示信息1、2、3、4、5、6、7、8、9、10)中的开始时刻、结束时刻的一例的图。第1段表示包含字符串显示指示信息1、2、3、4、5、6、7、8、9、10的文本字幕流,第2段表示图5所示的区域1、2的显示期间。
图7表示在如图6那样设定了开始时刻、结束时刻的文本字幕流中,怎样设定各字符串显示指示信息的显示区域数、描绘更新标志。第1段是各字符串显示指示信息的描绘更新信息中的显示区域数的设定,第2段是各字符串显示指示信息的描绘更新信息中的描绘更新标志的设定。第3段是区域1、区域2的显示期间。
在图7的情况下,保存在最初的字符串显示指示信息1中的开始时间、结束时间分别是时刻T0、T1。并且,保存在第2个字符串显示指示信息2中的开始时间、结束时间分别是时刻T1、T2。在图7中,显示区域1从时刻T0到时刻T3持续相同的显示。第3段中的显示期间在时刻T1、T2间发生重复。
由于在以时刻T4为起点的字符串显示指示信息5中区域1的描绘更新标志设定为“不更新”,所以区域1原样保持时刻T3时的显示。
以时刻T6为起点的字符串显示指示信息7的显示区域数是2,描绘更新标志将区域1设定为“不更新”,将区域2设定为“不更新”。因此,第3段中的显示期间在T6~T7间发生重复。
以上是对作为预解析的对象的字符串显示指示信息的一例的说明。接着,对文本字幕解码器9的详细情况进行说明。
图8是表示文本字幕解码器9的内部结构的图。如本图所示,文本字幕解码器9具备字符串显示指示解析部21、预解析部22、颜色查找表控制部23、描绘控制部24、描绘部25。
(字符串显示指示解析部21)
字符串显示指示解析部21在播放列表的再生之前进行索引的使用状况的预解析。预解析范围的起点是字符串显示指示信息中的、所有的显示区域的描绘更新标志设定为“更新”的信息(将其称作字符串显示指示信息i)的开始时刻。
预解析范围的终点是到后续于字符串显示指示信息i的字符串显示指示信息且位于描绘更新信息中的显示区域数成为“0”、或者由描绘更新信息中的显示区域数指定了个数的所有的显示区域的描绘更新标志设定为“更新”的信息紧前的字符串显示指示信息j的结束时刻。
这里所谓的“所有的显示区域”,是在描绘更新信息的显示区域数所表示的个数的显示区域,如果显示区域数是“1”,则只要关于1个显示区域的描绘更新标志设定为“更新”,就将由描绘更新信息中的显示区域数指定的显示区域全部更新。如果显示区域数是“2”,则只要关于2个显示区域的描绘更新标志设定为“更新”,就将由描绘更新信息中的显示区域数指定的显示区域全部更新。
关于任一个区域的描绘更新标志设定为“不更新”的期间是索引的使用所持续的期间。该期间、即索引使用持续区间的起点及终点与预解析范围的起点及终点一致。因此,在图形平面10中,将由描绘更新信息中的显示区域数指定的显示区域全部更新的定时作为预解析范围的起点,接着,在图形平面10中,检测描绘更新信息中的显示区域数成为“0”的定时、或者由描绘更新信息中的显示区域数指定的显示区域被全部更新的定时,将该更新定时紧前设为预解析范围的终点。
根据该定义,由于图7中的字符串显示指示信息1的显示区域数是“1”,字符串显示指示信息1中的区域1的描绘更新标志设定为“更新”,所以从字符串显示指示信息1的开始时刻即T0到字符串显示指示信息3(字符串显示指示信息4紧前的字符串显示指示信息)的结束时刻即T3为一个索引使用持续区间(索引使用持续区间1)。
由于字符串显示指示信息4的显示区域数是“1”,字符串显示指示信息4中的区域1的描绘更新标志设定为“更新”,以及字符串显示指示信息9中的显示区域数设定为“0”,所以从字符串显示指示信息4的开始时刻即T3到字符串显示指示信息8(字符串显示指示信息9紧前的字符串显示指示信息)的结束时刻即T8为一个索引使用持续区间(索引使用持续区间2)。
即,图7中的T3、T8是由描绘更新信息中的显示区域数指定的显示区域的全部更新的定时,所以索引使用持续区间为图9所示的区间。
图9是表示通过将图7的显示期间用字符串显示指示信息的开始时刻划分而得到的索引使用持续区间的图。第1段是描绘更新标志的设定,第2段是索引使用持续区间。第3段、第4段是显示期间,第4段是颜色查找表的使用状况。描绘更新标志被设定为“是(更新)”的时刻T0、T3、T8、T9为索引使用持续区间的起点,可知能够得到4个索引使用持续区间。
第5段表示由字符串显示指示信息的描绘更新信息指定的索引。如果在字符串显示指示信息1的描绘更新信息中,作为字符颜色索引、背景颜色索引的索引而使用“0”、“1”,在字符串显示指示信息2的描绘更新信息中,作为字符颜色索引、背景颜色索引的索引而使用“2”、“3”的索引,则可知作为索引使用持续区间1整体,索引“0”、“1”、“2”、“3”已使用。
这样,在索引使用持续区间1中,可以将索引“4”~“15”分配给灰度颜色。
如果在以T3为开始时刻的字符串显示指示信息4的描绘更新信息中,作为字符颜色索引、背景颜色索引的索引而使用“4”、“5”,在以时刻T4为开始时刻的字符串显示指示信息5的描绘更新信息中,作为字符颜色索引、背景颜色索引的索引而使用“6”、“7”的索引,则可知作为索引使用持续区间2整体,索引“4”、“5”、“6”、“7”已使用。这样,在索引使用持续区间2中,可以将索引“1~3”、“8~15”分配给灰度颜色。
在索引使用持续区间1中,可以将在索引使用持续区间2中使用的索引分配给灰度颜色,在索引使用持续区间2中,可以将在索引使用持续区间1中使用的索引分配给灰度颜色,所以能够分配给灰度颜色的索引的数值幅度扩大,能够以丰富的灰度颜色将字幕显示漂亮地显示。
假如对在字符串显示指示信息1中使用的“0”、“1”以外的索引分配了灰度颜色,则也有对由字符串显示指示信息2的描绘更新信息指定的“2”、“3”的索引分配灰度颜色的情况。在本实施方式中,事先解析索引使用持续区间,在该索引使用持续区间的内部搜索已使用索引,所以在显示期间重复、索引的使用在选择上成为最大的期间(时刻T1到时刻T2)中,能够将正使用的索引即“0”、“1”、“2”“3”从灰度颜色的分配中排除。通过这样,能够可靠地消除显色错误。
并且,在预解析的范围决定的时刻,对预解析部22指示以使其在该范围内制作灰度颜色管理表。灰度颜色管理表是用来管理对字符颜色的索引与背景颜色的索引的组合分配的灰度颜色的索引的表。如果从预解析部22接受到制作了灰度颜色管理表的通知,则在由时间信息指定的时刻,将包含在颜色查找表更新指示信息中的颜色查找表更新信息传递给颜色查找表控制部23。此外,将记述在描绘更新指示信息中的描绘更新指示传递给描绘控制部24。
(预解析部22)
预解析部22如果从字符串显示指示解析部21接受到意为制作灰度颜色管理表的指示,则取得属于索引使用持续区间的字符串显示指示信息,在描绘处理开始之前,事先解析索引的使用状况,制作灰度颜色管理表。
具体而言,预解析部22从字符串显示指示信息的描绘更新信息中取得作为字符颜色及背景颜色使用的索引(以下称作使用索引信息)。并且,还取得被指定为字符颜色的索引和作为背景颜色使用的索引的组合(以下称作“字符背景颜色组合信息”)。
接着,预解析部22基于所取得的使用索引信息和字符背景颜色组合信息,制作灰度颜色管理表。图10是表示怎样生成灰度颜色管理表的一例的图。图10(a)示出表示通过对文本字幕流的解析而变得清楚的已使用索引的已使用索引管理表。如本图所示,在某个索引使用持续区间中,假设作为字符索引而使用了索引“0”、“2”、作为背景索引而使用了索引“1”、“3”。对于该使用状况,生成的灰度颜色管理表为图10(b)所示的结构。
图10(b)是灰度颜色管理表的一例。在图10(a)中,由于16以上的索引为空,所以索引“16”、“17”、“18”、“19”被用于灰度颜色。灰度颜色管理表将灰度颜色索引分别与字符颜色索引同背景颜色索引之间的组合(图中的“0”、“1”的组合、“2”、“3”的组合)建立了对应。具体而言,将“16”、“17”的灰度颜色索引与“0”、“1”的组合建立了对应,将“18”、“19”的灰度颜色索引与“2”、“3”的组合建立了对应。对各个字符颜色与背景颜色的组合分配的灰度颜色索引的数量根据未使用的索引的数量、字符颜色及背景颜色的组合数量计算而求出。
在制作灰度字符图像的情况下,根据用多少位表示1个像素来决定灰度数。在设某个索引使用持续区间中的已使用索引数为M、索引的位宽为n的情况下,在索引使用持续区间中用于灰度颜色显示的灰度颜色的灰度数N通过以下的计算式计算。
灰度数N=(2的n次方-M)/字符颜色及背景颜色的组合数
图11是示意地表示怎样决定灰度数的图。
例如,在将1个像素用2位表示的情况下,灰度数为4(=2的平方)。在此情况下,图11(a)表示通过2位的像素值进行的灰度颜色表现。在像素值是2位的情况下,像素值0、3分别已经作为背景颜色、字符颜色分配,所以必须作为灰度颜色分配的索引为两个。
图11(b)表示通过4位的像素值进行的灰度颜色表现。在将1个像素用4位表示的情况下,灰度数为16(=2的4次方),必须作为灰度颜色分配的索引为14个。
图11(c)表示最大灰度索引数与灰度索引数的关系。在是2位的情况下,能够使用4位的灰度颜色,所以除了字符颜色索引、背景颜色以外,能够对两个索引分配灰度颜色。
在是4位的情况下,能够使用16个索引,所以除了字符颜色索引、背景颜色以外,能够对14个索引分配灰度颜色。例如,如果最大灰度索引数是3,则灰度索引数为2。
以上是对1个像素分配的位数是4位的情况下的说明。以该4位的情况为前提,对于在设想对1个像素分配的位数是8位的帧存储器的情况下怎样计算灰度颜色索引的数量进行说明。
在帧存储器的每一个像素的位数是8位的情况下,能够在各像素中使用的像素代码可以取256个值。即,如果每一个像素的位数是8位,则能够将256色用于字幕显示。它们中的、作为字符颜色及背景颜色使用的索引是30个,字符颜色及背景颜色的组合有14种。在此情况下,能够对各字符颜色及背景颜色的组合分配的最大的灰度索引数为
(256-30)/14=16.14。
如果将该值设为最大灰度索引数,则由于在4位的情况下需要的灰度索引数是4以上,所以灰度索引数为14。
并且,预解析部22在制作出灰度颜色管理表之后,对字符串显示指示解析部21进行意为已制作了灰度颜色管理表的通知。
(颜色查找表控制部23)
颜色查找表控制部23取得灰度颜色管理表,从字符串显示指示解析部21取得颜色查找表更新信息。然后,基于颜色查找表更新指示信息和灰度颜色管理表制作颜色查找表。图10(c)表示字符颜色索引、背景颜色索引的使用状况是图10(a)的情况下的颜色查找表的使用状况。颜色查找表由索引和颜色信息构成。
在颜色查找表控制部23制作出颜色查找表之后,颜色查找表控制部23对颜色变换部11指示以使其存储颜色查找表。颜色查找表控制部23首先将从字符串显示指示解析部21有变更指示的索引的颜色信息全部更新。接着,颜色查找表控制部23调查被指定的索引是否没有作为字符颜色及背景颜色包含在灰度颜色管理表中,在包含的情况下,计算与其对应的灰度颜色索引的颜色信息。例如,在灰度数是N的情况下,如果设字符颜色及背景颜色分别为
字符颜色(αa,Ra,Ga,Ba)
背景颜色(αb,Rb,Gb,Bb),
则灰度颜色如以下这样计算。
灰度颜色n(αb+(αa-αb)×n/(N-1),Rb+(Ra-Rb)×n/(N-1),Gb+(Ga-Gb)×n/(N-1),Bb+(Ba-Bb)×n/(N-1)),(n=1~N-2)
然后,将从颜色查找表控制部23传递来的颜色查找表设定在颜色变换部11中。图10(d)是表示对灰度颜色索引设定了颜色信息的颜色查找表的图。如果与图10(c)比较,则可知对“16”、“17”、“18”、“19”的索引分别分配了(r16,g16,b16)、(r17,g17,b17)、(r18,g18,b18)、(r19,g19,b19)的颜色信息。如果使用这些“16”、“17”、“18”、“19”的索引作为像素值制作像素代码的2维图案,则能够在图形平面10中得到灰度颜色。
(描绘控制部24)
描绘控制部24按照来自字符串显示指示解析部21的指示,对描绘部25指示向帧存储器的描绘。从字符串显示指示解析部21传递描绘更新信息,但在其中不包含灰度颜色索引。灰度颜色索引从灰度颜色管理表中取得。即,从灰度颜色管理表中取得与由字符串显示指示信息的描绘更新信息使用的字符颜色索引与背景颜色索引的组合对应的灰度颜色索引,对描绘部25指示使用所取得的灰度颜色索引的灰度字符的描绘。
(描绘部25)
描绘部25按照描绘控制部24的指示,将背景、字符串以指定的位置、尺寸、指定的索引描绘在图形平面10上。各个字符图像根据保存在字体数据中的轮廓信息生成,以指定的灰度数生成灰度字符图像。描绘部25使用从描绘控制部24传递来的灰度索引进行灰度字符的描绘。另外,字体数据从字体数据存储部12取得。
图12是示出表示灰度颜色的像素代码的图案的一例的图。像素代码是1字节,其中,使用“FF”描绘字符,使用“OO”描绘背景。并且,由于“10”~“E0”的像素代码被分配给灰度颜色,所以使用这些像素代码描绘字符的轮廓部。由此,能够减轻字符的轮廓上的锯齿。
图13是通过对图12的像素代码的二维图案进行颜色变换而显示的灰度字符。
图14表示再生装置所进行的再生影像。通过将图形平面10的保存内容展开并与视频平面6的活动图像合成,能够得到本图那样的合成影像。在该影像中,能够使区域中的字幕随着当前的再生时刻的进行而变化。在时刻T1,区域1的字幕“American History”被显示,在时刻T2,区域1的字幕“American History”及区域2的字幕“The NewYork City”被显示,在时刻T3,成为只有区域2的字幕“The NewYork City”。
以上那样的文本字幕解码器的结构要素可以通过软件安装。具体而言,通过将图15~图19的流程图的处理顺序用编程语言记述并记述用来装入到再生装置中的程序,能够实现通过软件的安装。
图15是表示播放列表再生的处理顺序中的、对应于主程序的处理顺序的流程图。预加载要通过播放列表再生的文本字幕流(步骤S1),解析索引使用持续区间(步骤S2)。制作灰度颜色管理表(步骤S3),命令视频流的再生开始,开始与视频流的同步再生处理(步骤S5)。
图16是表示索引使用持续区间的解析顺序的流程图。变量i是指示字符串显示指示信息的变量,变量k是指示索引使用持续区间的变量。In_Time是表示索引使用持续区间的起点的变量,Out_Time是表示索引使用持续区间的终点的变量。
步骤S11~步骤S17为将变量i用1初始化、将变量k用0初始化(S11)并反复进行步骤S12~步骤S17的处理的反复循环构造。循环的结束条件是在步骤S16中判断为i是最大数,只要i不是最大数,在步骤S17中就将变量i增加。
步骤S12是判断在关于字符串显示指示信息i中的显示区域的描绘更新标志之中是否存在表示“不更新”的标志的步骤。在字符串显示指示信息i的所有的描绘更新信息是“更新”且字符串显示指示信息i想要进行由描绘更新信息中的显示区域数指定的显示区域的全部更新的情况下,不存在设定为“不更新”的描绘更新标志,所以在此情况下,步骤S12为否。接着,将变量k增加(步骤S13),将字符串显示指示信息的开始时刻设定为索引使用持续区间k的In_Time(步骤S14),将字符串显示指示信息i的结束时刻设定为索引使用持续区间k的Out_Time(步骤S15)。通过这样,字符串显示指示信息i的显示期间成为一个索引使用持续区间k。
在步骤S12中,如果至少存在1个表示“不更新”的描绘更新信息,则跳过步骤S13、步骤S14。通过这样,不将变量k增加,而将字符串显示指示信息i的结束时刻设定为索引使用持续区间k的Out_Time(步骤S15)。通过这样,字符串显示指示信息的显示期间统一为与其紧前的字符串显示指示信息的显示期间相同的索引使用持续区间k。
图17是表示灰度颜色管理表的制作顺序的流程图。
步骤S21、步骤S22为对所有的索引使用持续区间重复步骤S23~步骤S29的处理的反复循环构造。
将作为处理对象的索引使用持续区间设为索引使用持续区间k。并且,将属于索引使用持续区间k的任意的字符串显示指示信息设为字符串显示指示信息i。步骤S23、步骤S24对所有的字符串显示指示信息重复将由字符串显示指示信息i的描绘更新信息使用的索引设为已使用索引的处理(步骤S25)。
然后,设已使用索引数为M(步骤S26),求出最大灰度颜色数M(步骤S27),通过灰度数N=(2的n次方-M)/字符颜色及背景颜色的组合数的计算,计算最大灰度数N(步骤S28)。接着,将处于1到N-1的范围中的灰度颜色n的颜色信息决定为(αb+(αa-αb)×n/(N-1),Rb+(Ra-Rb)×n/(N-1),Gb+(Ga-Gb)×n/(N-1),Bb+(Ba-Bb)×n/(N-1))(步骤S28)。最后,在索引使用持续区间中,通过对为空的N-2个索引分配灰度颜色n,得到灰度颜色管理表(步骤S29)。
图18是表示与视频流的同步处理的流程图。在本流程图中,当前PTS是表示当前的再生时刻的变量,随着视频流的再生进行而自动地增加。
步骤S31是等待当前PTS成为某个索引使用持续区间的In_Time的事件成立的事件成立等待循环。判断当前PTS是否成为了某个索引使用持续区间的In_Time,如果成为In_Time(步骤S31中是),则取得该索引使用持续区间中的灰度颜色管理表(步骤S32),转移到步骤S33~步骤S36的循环。
该循环是反复进行以下的处理的循环:判断当前PTS是否成为字符串显示指示信息i的开始时刻(步骤S33),如果成为开始时刻,则取得字符串显示指示信息i的显示更新信息i(步骤S34),进行灰度颜色描绘处理(步骤S35),判断当前PTS是否成为索引使用持续区间的Out_Time(步骤S36)后,回到步骤S33的处理。如果成为索引使用持续区间的Out_Time,则判断再生是否已结束(步骤S37)后,回到步骤S31。
图19是表示灰度颜色描绘处理的处理顺序的流程图。
颜色查找表控制部23将字符串显示指示信息中的描绘更新信息的字符颜色索引、背景颜色索引、灰度颜色管理表的灰度颜色索引的颜色信息设定在颜色变换部11中(S41),将描绘更新标志设定为“不更新”的显示区域以外的显示区域清空(S42)。
然后,描绘控制部24取得对字符颜色的索引与背景颜色的索引的组分配的灰度颜色的索引(S43)。描绘控制部24对描绘部25指示使用了字符颜色、背景颜色、灰度颜色的索引的灰度字符的描绘(S44)。描绘部25将背景、字符串描绘在帧存储器中。在描绘字符串的情况下,从字体数据存储部取得字体数据。接着,通过将字体数据展开而生成灰度字符图像,使用从描绘控制部24指定的灰度颜色索引来描绘灰度字符(S45)。
以上,根据本实施方式,通过将字符串显示指示信息预解析,能够进行利用颜色查找表的空索引的灰度字符的显示。上述再生装置通过将预解析的范围用进行由显示区域数指定的显示区域的全部更新的时刻划分,消除了在将所有的字符串显示指示信息预解析的情况下可能发生的弊端、即到最初显示字符串的时间变长的弊端、以及由于使用的索引的数量以及字符颜色及背景颜色的组合变多、所以不能确保足够用于灰度显示的索引的弊端。这是因为,通过将进行显示区域的全部更新的期间作为预解析的范围,使到最初显示字符串的时间变短,通过从索引的使用所持续的期间中检测未使用索引,增加了未使用索引的数量。由此,能够实现使用了丰富的颜色数的高速的灰度显示。
(第2实施方式)
在第1实施方式中,文本字幕解码器在播放列表的再生之前,对索引使用所持续的期间进行了预解析,但本实施方式不进行该预解析,而将灰度颜色实时地分配给颜色查找表的空闲的索引。以下,参照附图对第2实施方式的再生装置进行说明。
图20是表示第2实施方式中的预加载存储器8、文本字符解码器9、图形平面10、变换部11、字体数据存储部12的结构图。
在本实施方式中,对于与第1实施方式同样的部分赋予相同的符号,省略详细的说明。第2实施方式与第1实施方式的不同点是,对字符串显示指示解析部21、颜色查找表控制部23、描绘控制部24实施了第2实施方式特有的改良,去除了预解析部22。代替它而新追加了通常颜色管理部31、显示区域管理部32、灰度颜色管理部33、物理索引管理部34。
(字符串显示指示解析部21的改良点)
字符串显示指示解析部21将存储在预加载存储器8中的字符串显示指示信息解析,在由时间信息指定的时刻将记述在颜色查找表更新指示信息中的颜色查找表更新指示传递给通常颜色管理部31,将记述在描绘更新指示信息中的描绘更新信息传递给描绘控制部24。
在解析时,使用通常颜色管理表,将指定的索引的颜色信息更新。
(通常颜色管理部31的新追加)
通常颜色管理部31具有图21(a)那样的通常颜色管理表,将从字符串显示指示解析部21指定的索引的颜色信息更新。通常颜色管理表保持索引与颜色信息的关系、以及与对其分配的物理索引的关系。物理索引通过仅在实际用于显示时从物理索引管理部34分配而高效率地使用。
图21(a)表示通常颜色管理表的一例。通常管理表保持索引(0,1,2,3……)与颜色信息((α0,r0,g0,b0)、(α1,r1,g1,b1)、(α2,r2,g2,b2)……)的关系、以及与对其分配的物理索引(3,8,2,4)的关系。物理索引通过仅在实际用于显示时分配给物理索引而高效率地使用。
(显示区域管理部32的新追加)
显示区域管理部32通过图21(b)那样的显示区域管理表管理按照显示区域使用的字符颜色索引、背景颜色索引的组。显示区域管理部32每当显示被更新时将图21(b)中的显示区域管理表更新。显示区域管理表按照显示区域(区域1,区域2)将使用的字符颜色索引(0,2)、背景颜色索引(1,3)的组建立对应并表示。
(灰度颜色管理部33的新追加)
灰度颜色管理部33从通常颜色管理部31取得索引的颜色信息,使用该索引的颜色信息,制作灰度颜色管理表进行管理。图21(c)是灰度颜色管理表的一例。灰度颜色管理表由按照字符颜色索引与背景颜色索引的组合(0,1)(2,3)(4,5)对该组合分配的物理索引(10,11,12)和其颜色信息((α0,r0,g0,b0)、(α1,r1,g1,b1)、(α2,r2,g2,b2)……)构成。物理索引仅在字符串显示指示信息的描绘更新信息中的字符颜色及背景颜色的索引的组合实际用于显示区域中的字幕显示时由物理索引管理部34分配。
(物理索引管理部34的新追加)
物理索引管理部34管理着物理索引的使用状况,配合来自通常颜色管理部31、灰度颜色管理部33的物理索引的获得、释放请求而进行物理索引的获得、释放。
(颜色查找表控制部23的改良点)
颜色查找表控制部23根据通常颜色管理表、灰度颜色管理表,制作图21(d)那样的记述有物理索引与颜色信息的对应关系的颜色查找表,对颜色查找表设定部106指示颜色查找表的更新。图21(d)中的颜色查找表表示物理索引(0,1,2,3……)与颜色信息((α0,r0,g0,b0)、(α1,r1,g1,b1)、(α2,r2,g2,b2)……)的对应。
(描绘控制部24的改良点)
描绘控制部24按照来自字符串显示指示解析部21的指示,对描绘部25指示向帧存储器的描绘。描绘控制部24对描绘部25指示描绘时使用的是物理索引。字符颜色物理索引、背景颜色物理索引从通常颜色管理部31取得,灰度颜色物理索引从灰度颜色管理表取得。
以上那样的结构要素通过将代替图18的流程图而执行图22的流程图的处理顺序的装入程序用编程语言记述并写入到再生装置的ROM中,能够安装到再生装置内。
图22是表示第2实施方式的与视频流的同步处理的处理顺序的流程图。
步骤S51是当前PTS是否成为了某个字符串显示指示信息的开始时刻的判断。如果成为某个字符串显示指示信息(将该字符串显示指示信息称作字符串显示指示信息i)的开始时刻,则检查字符串显示指示信息i的颜色查找表更新标志,判断字符串显示指示信息是否带来颜色查找表的更新(S52)。在颜色查找表更新标志设定为“更新”的情况下(S52:是),使用颜色查找表更新信息,将通常颜色管理表之中的被指定的索引的颜色信息更新(S53)。
在步骤S54中,判断更新后的索引是否包含在由灰度颜色管理表管理的字符颜色索引、背景颜色索引中。在包含的情况下计算对应的灰度颜色索引的颜色信息,更新颜色信息(S55)。如果不包含,则跳过步骤S55。
在颜色查找表更新标志没有设定为“更新”的情况下(S52:否),跳过步骤S53~步骤S55,描绘控制部24将描绘更新标志设定为“不更新”的显示区域以外的显示区域清空(S56)。
然后,描绘控制部24将显示区域管理表更新(S57)。对于在显示区域管理表中记述为使用的索引分配物理索引(步骤S58)。此时,相反地对于未记述为使用的索引将物理索引释放(S59)。
根据通常颜色管理表和灰度颜色管理表制作颜色查找表,存储在颜色变换部11中(S60)。
接着,描绘控制部24对描绘部25指示背景、字符串的描绘。当描绘字符串时,指示使用了从灰度颜色管理部33取得的字符颜色物理索引、背景颜色物理索引、灰度颜色物理索引的灰度字符的描绘(S61)。从描绘控制部24接受到指示的描绘部25将背景、字符串描绘在帧存储器中。在描绘字符串的情况下,从字体数据存储部12取得字体数据,生成灰度字符图像。接着,使用被从描绘控制部24指定的灰度颜色物理索引描绘灰度字符(S62)。
以上,根据本实施方式,保持从文本字幕流中的字符串显示指示信息指定的索引与实际对颜色变换部11指定的物理索引之间的关系,在描绘时将从文本字幕流中的字符串显示指示信息的描绘更新信息指定的索引变换为物理索引而描绘,所以不再有从文本字幕流中的字符串显示指示信息的描绘更新信息指定的索引已经被分配给灰度索引的情况。
由此,能够进行利用颜色查找表的空索引的灰度字符的显示。此外,通过管理显示区域,仅在使用物理索引时分配,能够高效率地使用物理索引。
(备注)
以上,对于在本申请的提交时刻申请人能够知道的最佳的实施方式进行了说明,但对于以下所示的技术课题,能够加以进一步的改良及变更实施。需要注意的是,如各实施方式所示那样实施还是实施这些改良、变更都是任意的,取决于实施者的主观。
(解析范围)
在第1实施方式中,预解析部22的解析范围也可以设为更长的区间,也可以将全部的字符串显示指示信息预解析。
(灰度颜色的索引和颜色信息的分配)
如果不需要将灰度颜色的索引和颜色信息等间隔地分配,则也可以将与2的n次方没有关系的值设为阈值。
(灰度颜色索引的个数)
第1实施方式的灰度颜色索引的个数也可以不在所有的字符颜色及背景颜色的组合中都相同。
(物理索引的释放定时)
在第2实施方式中,物理索引的释放也可以是在物理索引变得不够的时刻将没有用于显示的物理索引释放的方式。
(具备样式集)
文本字幕流优选地仅具有1个按照显示区域使用的多个样式集与初始调色板的组。并且,预先定义多个样式集,从字符串显示指示信息仅指定样式集的ID。字幕多以其性质上相同的组合的样式显示。因此,通过上述那样的ID的使用,能够减少数据。
(描绘更新信息的记述)
描绘更新信息中的文本代码及字符颜色的指定通过用编程语言的记述来实现,所以字符串显示指示解析部21优选的是根据以下这样的记述来检测用于文字颜色的索引。
该记述是将由datalength个chara#data构成的字符串用基于Index的字符颜色所显示的描绘更新信息的记述例。要定义的内容是字符串[STRING]还是字符颜色[COLOR]的区别由data#type指定。
《记述例》
total_length
while(processed_length<total_length){
data_type
data_length
switch(data_type){
case STRING;
[chara_data×datalength]
break;
case COLOR;
[index];
break;
}
}
(通过程序单体的实施)
在上述第1、第2实施方式的再生装置中,说明了执行图15~图19、图22的处理顺序的程序作为装入程序安装到再生装置中的实施例,但也可以将执行这些图15~图19、图22的处理顺序的程序记录在计算机可读取的记录媒体中,作为应用程序供给到再生装置中。在将使计算机执行这些处理顺序的程序作为应用程序实施的情况下,该应用程序优选的是作为Java(TM)应用开发。这是因为,在BD-ROM再生装置中,通过Java平台能够进行播放列表的再生。
将能够由BD-ROM再生装置的平台执行的应用称作BD-J应用。
BD-J应用是在完全安装了Java2Micro_Edition(J2ME)Personal BasisProfile(PBP 1.0)、以及Globally Executable MHP specification(GEM 1.0.2)for package media targets的平台部中、由以标题为生存区间的应用信令启动的Java(TM)应用。BD-J应用通过对Java(TM)虚拟机命令再生播放列表信息的JMF播放器实例的生成,开始播放列表再生。所谓JMF(Java媒体构架:Java Media Frame work)播放器实例,是基于JMF播放器类在虚拟机的堆栈存储器上生成的实际的数据。
JMF A″BD://00001.mpls″;是对Java(TM)虚拟机命令将00001.mpls这样的文件的播放列表再生的播放器实例的生成的手段。A.play是对JMF播放器实例命令再生的手段。该JMF播放器实例生成基于JMF库进行。
在生成JMF实例之后,在播放列表再生时,对WWW服务器请求需要的AV片断的下载。在下载时,用来取得WWW服务器102上的AV片断的网络可以使用称作java.net的Java软件库的openConnection(开连接)手段建立。如果通过该BD-J应用实现灰度颜色显示,则即使在实现文本字幕流的灰度颜色显示那样的程序没有安装在再生装置中的情况下,也能够通过来自BD-ROM的应用的供给进行灰度颜色显示。
(作为集成电路的实施)
也可以将文本字幕解码器9集成到单一的半导体基板中并作为系统LSI(大规模集成电路:Large Scale Integrated circuit)等的集成电路构成。所谓系统LSI,是指在高密度基板上安装裸芯片并封装的结构。通过将多个裸芯片安装到高密度基板上并封装、使多个裸芯片具有宛如1个LSI那样的外形构造的结构也包含在系统LSI中(将这样的系统LSI称作多芯片模组)。
这里,如果着眼于封装的种类,则在系统LSI中,有QFP(方形扁平封装)、PGA(引脚网格阵列)的种类。QFP是在封装的四侧面上安装有引脚的系统LSI。PGA是在底面整体上安装有许多引脚的系统LSI。
这些引脚担负着作为与其他电路的接口的作用。由于在系统LSI的引脚中存在这样的接口的作用,所以通过将其他电路连接在系统LSI的这些引脚上,系统LSI起到作为再生装置的核心的作用。
该系统LSI不仅能够组装到再生装置中,还能够组装到TV(电视机)或游戏机、个人计算机、单波段便携电话等处理影像再生的各种设备中,能够大幅扩大再生装置的用途。
在作为系统LSI安装的情况下,也可以将预加载存储器8、图形平面10、颜色变换部11、字体数据存储部12也封装在系统LSI中。此外,也可以将读出缓冲器7、过滤器3、转发缓冲器4、视频解码器5、音频解码器15、视频平面6、合成部13也封装到1个系统LSI中。
在将基本缓冲器、视频解码器、音频解码器、图形解码器也做成一体的系统LSI的情况下,优选的是使系统LSI的架构基于Uniphier架构。
基于Uniphier架构的系统LSI由以下的电路模块构成。
·数据并行处理器DPP
它是多个要素处理器进行相同动作的SIMD型处理器,通过用1个命令使内置在各要素处理器中的运算器同时动作,实现对于构成图片的多个像素的解码处理的并行化。
·命令并行处理器IPP
它通过由命令RAM、命令高速缓冲存储器、数据RAM、数据高速缓冲存储器构成的“Local Memory Controller(本地存储器控制器)”、由命令取出部、解码器、执行单元、寄存器文件构成的“Processing Unit(处理单元)部”、以及使Processing Unit部进行多个应用的并行执行的“Virtual MultiProcessor Unit(虚拟多处理单元)部”构成。
·MPU模块
它由ARM芯、外部总线接口(Bus Control Unit:BCU)、DMA控制器、定时器、向量中断控制器等周边电路、UART、GPIO(通用输入输出:GeneralPurpose Input Output)、同步串行接口等周边接口构成。
·流I/O模块
它经由USB接口或ATAPacket接口,进行与连接在外部总线上的驱动器装置、硬盘可移动媒体驱动装置、SD存储卡驱动装置的数据输入输出。
·AVI/O模块
它由音频输入输出、视频输入输出、OSD控制器构成,进行与电视机、AV功率放大器的数据输入输出。
·存储器控制模块
它是实现经由外部总线连接的SD-RAM的读写的模块,由控制各模块间的内部连接的内部总线连接部、进行与连接在系统LSI外部的SD-RAM的数据转发的访问控制部、调节来自各模块的SD-RAM的访问请求的访问调度部构成。
具体的生产顺序的详细情况如下。首先,基于各实施方式所示的结构图,制作要做成系统LSI的部分的电路图,使用电路元件及IC、LSI,将结构图中的结构要素具体实现。
这样,如果具体实现了各结构要素,则规定将电路元件及IC、LSI间连接的总线及其周边电路、与外部的接口等。进而,还规定连接线、电源线、地线、时钟信号线等。在该规定时,一边考虑LSI的规格调节各结构要素的动作定时、或对各结构要素施加保证所需要的带宽等的调节,一边完成电路图。
如果电路图完成,则进行安装设计。所谓安装设计,是决定将通过电路设计制作的电路图上的部件(电路元件或IC、LSI)向基板上的哪里配置、或者将电路图上的连接线怎样配线到基板上的基板布局的制作作业。
这样进行安装设计,如果确定了基板上的布局,则将安装设计结果变换为CAM数据,输出给NC工作机械等设备。NC工作机械基于该CAM数据进行SoC安装或SiP安装。SoC(片上系统:System on chip)安装,是将多个电路烧制在1个芯片上的技术。SiP(系统封装:System in Package)安装,是将多个芯片用树脂等做成1个封装的技术。经过以上的过程,能够基于各实施方式所示的再生装置的内部结构图制作有关本发明的系统LSI。
(具备设置寄存器)
为了适当地进行文本字幕流的选择,在再生装置中,优选设置保存标志集以及许可标志的设置寄存器。
标志集由分别对应于由ISO639-2/T规定的3字节的语言代码的设置标志构成,各设置标志表示再生装置是否具备对应于各语言代码的语言的能力的各语言代码的设置。在由ISO639-2/T规定的3字节的语言代码中,“ita”这3个字节的代码表示意大利语,jpn”这3个字节的代码表示日语。“jav”这3个字节的代码表示Java语言。由ISO639-2/T规定的语言代码通过这样的3字节的代码包罗了430种语言,所以再生装置是否具备对应于各语言代码的语言的能力的判断变得容易。
各语言代码的能力包括通过变更字符(character)位图的配置、字符位图的形状、字符位图的间隔的任一种从而在对应于各语言代码的语言中实现独特的显示方法的能力。
在第1实施方式的开头叙述的是否满足第2条件的判断通过检查标志集中的多个设置标志中的、对应于作为选择的对象的文本字幕流的语言代码的标志是否表示具备能力来进行。
上述许可标志表示是否许可对不满足第2条件的文本字幕流进行选择。
在设置寄存器中的许可标志表示许可的情况下,将由记录在记录媒体中的播放列表信息指定的文本字幕流中的、满足第1条件及第3条件的流作为选择的对象。