具体实施方式
以下,参照附图对用于实施本发明的优选实施方式进行说明。
(第1实施方式)
<系统的概要>
首先,说明本发明涉及的流数据记录装置及流数据再现装置的实施行为中的、关于使用行为的方式。图2是表示本发明涉及的流数据记录装置及流数据再现装置的、关于使用行为的方式的图。在图2中,本发明涉及的流数据记录装置及流数据再现装置内置在移动体接收终端3中。该移动体接收终端3是在接收经由发送天线2从广播系统1发送的广播波、从接收到的广播波中取得流数据并记录到记录介质4中的用途,以及将记录在记录介质4中的流数据读出并再现的用途中使用的。
广播系统1是制作数字广播用的流数据的系统。
发送天线2将由广播系统1制作的流数据加载到数字广播电波中发送。
记录介质4是记录保持数据的介质。光盘、磁盘、半导体存储器等相当于此。
以上是关于本发明涉及的流数据记录装置及流数据再现装置的使用方式的说明。
接着,对作为记录、再现的对象的流数据的详细情况进行说明。
<流数据>
作为在数字广播中使用的传输用格式的代表性的例子,有ISO/IEC 13818-1的MPEG2TS。以下,在本实施方式中,以使用MPEG2TS作为流数据的情况为例进行说明。图3是表示TS的数据结构的一例的图。
第1段表示TS包。在TS中,将多个节目的流数据按照音频数据及视频数据、字幕数据分割为称作TS包的包,多路复用并发送。TS包由报头部分和有效载荷部分构成,音频数据、视频数据及字幕数据保存在TS有效载荷中。
第2段表示TS包的报头。在所有TS包的报头中,包含称作PID(Packet Identifier)的用于识别TS包的识别符。在存储各节目的音频数据、视频数据及字幕数据的TS包中,分别赋予了按照保存的数据的种类而不同的识别符。
此外,在赋予了特定PID的一部分TS包的报头中,包含有为了在制作流数据的广播系统1和接收流数据并进行再现或记录的移动体接收终端3之间取得同步而使用的PCR信息。
包含有PCR信息的TS包和存储节目的音频数据、视频数据及字幕数据的TS包的PID由PMT(Program Map Table,节目映射表)表示。在移动体接收终端3中,使用PID来识别接收到的TS包,取得进行再现或记录的对象节目的TS包。
<TS有效载荷的数据结构>
在TS包的有效载荷部分,存储着用ISO/IEC 13818-7的MPEG2AAC(Advanced Audio Coding,高级音频编码)及ISO/IEC14496-10的MPEG4AVC(Advanced Video Coding,高级视频编码)等标准压缩的音频数据及视频数据,用ARIB STD-B24及ARIBSTD-B8等规定的、8单位符号文字所构成的字幕数据等构成节目的各种流数据,表示PMT等的节目构成的信息等。以下,将构成节目的视频、音频、字幕等各要素统称作“元件”。
图4是表示包含在TS包的有效载荷部分中的音频数据及视频数据的数据结构的一例的图。
在图4中,第4段表示TS。第3段表示视频数据的PES包,第5段表示音频数据的PES包。PES包能够进行跨越1个或多个TS有效载荷而分割保存的应用。
各PES包由报头部分和有效载荷部分构成。在PES包的报头部分,包含有表示将保存在有效载荷部分中的数据向监视器或扬声器输出的提示时刻的PTS。PTS的值是参照根据PCR信息修正后的移动体接收终端3的STC值,并且假想使各元件同步后输出而由广播系统1设定的。因此,在PCR被复位的情况下,包含在之后发送的流数据中的元件的PTS,也在其前后的帧中被设定不连续的值。
如果与PES有效载荷连接,则构成ES(Elementary Stream,基本流)。
第2段表示音频ES。ES是压缩的数据。在MPEG4AVC等MPEG标准的情况下,由能够单独解码的IDR图片、需要前面的图片数据的P图片、需要前后的图片数据的B图片构成。各IDR图片保存在PES包中,并且其位于有效载荷部分的开头。
第1段表示视频帧。视频帧是通过将压缩的视频ES进行解码处理而得到的。
以上是对流数据的详细情况的说明。
<流数据记录装置>
接着,说明本实施方式涉及的移动体接收终端3的详细情况。首先,在移动体接收终端3中,重点记录流数据的结构进行说明。流数据记录功能是通过移动体接收终端3内置的流数据记录装置5实现的。图5是表示本实施方式涉及的流数据记录装置5的内部结构的图。
流数据记录装置5具备取得部11、包解析部12、缺失检测部13、时刻计数器部14、复位检测部15、元信息生成部16、记录控制部17。
取得部11通过天线模块取得从图2的发送天线2发送的广播波,将通过广播波传送的TS向包解析部12输出。此外,取得部11在由天线模块检测到C/N电平的下降及恢复、RF同步偏移及RF同步恢复的情况下,将其检测结果向包解析部12通知。以下,将由天线模块检测到C/N电平的下降或RF同步偏移的情况称作“数据接收不良的开始”,将检测到C/N电平的恢复或RF同步恢复的情况称作“数据接收不良的结束”。
包解析部12基于来自用户的指示,解析TS包而取得含有记录对象的PID的TS包,向缺失检测部13输出。此时,在TS报头中包含有与记录对象的节目有关的PCR信息的情况下,提取PCR信息而输出给时刻计数器部14。但是,在由取得部11通知数据接收不良的开始到被通知数据接收不良的结束为止的期间,不解析报头而将TS包丢弃,并且将数据接收不良的开始及结束的通知向缺失检测部13传送。进而,包解析部12即使在因TD包的数据中充满错误而到了通过纠错处理不能应对的程度等的理由,在TS报头解析时不能正确地解析的情况下,也生成与由取得部11通知的数据接收不良的开始及结束的通知同样的通知,向缺失检测部13传送。
缺失检测部13检测在接收中的流数据中是否发生了不能作为再现对象的缺失区间,将检测结果通知给复位检测部15及元信息生成部16。缺失区间是因在流数据的记录中接收电波状况恶化、不能正确地取得记录对象的TS包等的理由而发生的。
进而,缺失检测部13在没有检测到缺失区间的期间,将从包解析部12取得的TS包向记录控制部17输出。此外,在检测到缺失区间的情况下,缺失检测部13将表示前后的包不连续的不连续包向记录控制部17输出。
缺失区间的产生可以通过以下的1)~3)的各个方法、由缺失检测部13检测。
1)将从被通知数据接收不良的开始到被通知结束的区间作为缺失区间的方法
2)通过在判断时取得的TS包的解析、检测包间的连续性的欠缺的方法
3)检测在从过去取得的TS包中检测到如PCR信息那样周期性地包含在TS中的信息(以下称作周期送出信息)之后、超过最大送出周期而没有被检测到的情况的方法
作为上述2)的方法的具体例,在以下的2-1)及2-2)等的情况下,能够检测包间的连续性的欠缺。
2-1)在对保存元件的TS包赋予了连续号码的continuity_counter的值中发生缺号
2-2)在具有与之前相同的PID的TS包中,尽管discontinuity_indicator为有效,在判断时取得的TS包中PCR没有被复位
另外,discontinuity_indicator是在TS包的匹配字段中设定的信息,是如果discontinuity_indicator变为有效则表示在后续的相同PID的TS包中PCR被复位的信息。
为了通过上述3)的方法检测缺失区间,在缺失检测部13内部的记录区域保存有在最后检测到周期送出信息的时刻从时刻计数器部14取得的STC值。缺失检测部13将时刻计数器部14的STC值与保存在内部的记录区域中的STC值比较,在它们的差超过了周期送出信息的最大送出周期的情况下,能够检测到发生了缺失区间的情况。此外,缺失检测部13也可以在取得了最新的周期送出信息的时刻取得STC值,计算该STC值与保存在内部的记录区域中的以前取得周期送出信息时的STC值的差,在该差超过了周期送出信息的最大送出周期的情况下,判断为发生了缺失区间。
作为在缺失区间的检测中使用的周期送出信息,除了PCR信息以外,PAT、PMT、NIT、TOT、TDT、EIT、包含在再现用流数据中的PTS等,只要是设定了包含在流数据中的最大送出周期的信息,什么样的信息都可以使用。
时刻计数器部14在内部具有时钟,参照从包解析部12取得的PCR信息,使内部时钟与PCR值同步。时刻计数器部14的内部时钟的值(STC值)被缺失检测部13、复位检测部15及元信息生成部16参照。进而,时刻计数器部14每当从包解析部12取得PCR信息时,将PCR信息的取得向元信息生成部16通知。
复位检测部15从缺失检测部13取得缺失区间的检测结果,对于在缺失区间中是否发生了PCR复位,参照时刻计数器部14的STC值进行检测处理,将检测结果通知给元信息生成部16。
元信息生成部16基于缺失检测部13及复位检测部15的检测结果生成元信息。所谓的元信息,是表示流数据的结构及属性的数据。
图6是表示本实施方式涉及的元信息的数据结构的图。本实施方式的元信息由与在流数据中检测到的缺失区间相同数量的记录构成,各记录由“缺失开始时刻”、“缺失结束时刻”、“不连续点的位置信息”、以及“时刻偏移值”构成。
“缺失开始时刻”是发生了缺失区间时的STC值。图1的缺失区间开始时刻111的值相当于此。
“缺失结束时刻”是缺失区间结束时的STC值。图1的缺失区间结束时刻112的值相当于此。
“不连续点的位置信息”是在缺失区间结束后重新开始记录时的TS包的数据位置。在图1的D点以后最先记录的报道数据位置相当于此。作为数据位置信息,可以使用从记录对象的TS的开头包开始赋予的序列号、或者自文件开头的偏移值等。在本实施方式中,使用自文件开头的偏移值。
“时刻偏移值”是在缺失区间结束后、最先被通知PCR信息的取得时的STC值与PCR值的差。图1的时刻偏移值113相当于此。
图5的记录控制部17在没有检测到缺失区间的期间,将从缺失检测部13输出的流数据、以及由元信息生成部16生成的元信息建立对应而向记录介质4记录。若检测到缺失区间则从缺失检测部13输出不连续包,所以在记录控制部17记录的流数据中,如图7所示,在因缺失区间而丢失了TS包的位置上插入不连续包。
以上是流数据记录装置的结构。
<流数据记录方法>
接着,对流数据记录装置5的动作顺序进行说明。
图8是表示本实施方式涉及的流数据记录装置5的流数据记录处理的处理顺序的图。本图所示的处理顺序是若从用户接收到录像指示则执行的处理顺序,大体分为以下的1~4的步骤。
1、检测缺失区间的发生,取得缺失开始时刻的步骤(S101~S105)
2、检测缺失区间的结束,取得缺失结束时刻、不连续点的位置信息的步骤(S106~S109)
3、检测在缺失区间内发生的PCR复位,取得时刻偏移值的步骤(S110~S112)
4、记录生成的元信息的步骤(S113~S114)
首先,说明对记录的流数据的缺失区间的发生进行检测的S101~S105的步骤。
如果接收到来自用户的录像指示而开始记录处理,则通过取得部11的广播波的接收和包解析部12的过滤,取得含有记录对象的PID的TS包(S101)。在S102中,缺失检测部13进行在由包解析部12ude取得的记录对象的TS包中是否发生了缺失的判断。在该TS包的缺失的检测处理中,使用以下的(1)~(3)的各方法,检测缺失的发生。
(1)从由取得部11或包解析部12通知数据接收不良的开始到被通知结束的区间作为缺失区间的方法
(2)通过在判断时取得的TS包的解析,检测包含在包中的数据的不连续的方法
(3)检测周期送出信息从过去取得的TS包中被检测出后,超过最大送出周期而没有被检测到的情况的方法
在缺失的检测处理中,在检测到TS包的缺失的情况下(S103的“是”),缺失检测部13判断是否处于缺失区间中(S104)。在是否是缺失区间的开始点的判断中,使用例如保持在缺失检测部13内部的记录区域中的标志。缺失检测部13在判断为是缺失区间的开始点时,将该标志设为“开”,在判断为是缺失区间的结束点时,将该标志设为“关”。在S104,在检测到缺失时,如果标志是“关”,则判断为是缺失区间的开始点,如果标志是“开”,则判断为缺失区间中。
在是缺失区间的开始点的情况下(S104的“是”),缺失检测部13对元信息生成部16进行缺失区间开始的通知,元信息生成部16从时刻计数器部14取得接受到通知时的STC值,作为元信息的“缺失开始时刻”信息而保存(S105)。另外,在本流程图中虽然没有图示,但时刻计数器部14控制时钟速度以使其与包含在TS包中的PCR同步。
在由缺失检测部13检测到的缺失不是缺失区间的开始点而是缺失区间中的情况下(S104的“否”),缺失检测部13及元信息生成部16不进行任何处理。
接着,检测缺失区间的结束,取得缺失结束时刻以及不连续点的位置信息(S106~S109)。
在缺失检测部13没检测到TS包的缺失的情况下(S103的“否”),记录控制部17从缺失检测部13取得TS包,记录到记录介质4(S106)。另外,也可以不是一个包一个包地记录到记录介质4,而是等待记录的数据大小为一定量后进行记录。此外,TS包的记录只要是从S106到S113之间,则也可以在其他的定时执行。
缺失检测部13判断能够正常地接收的TS包是否是缺失区间的结束点(S107)。在该S107的判断中,利用例如在S104的判断中使用的、保存在缺失检测部13内部的标志进行。缺失检测部13在判断为是缺失区间的开始点时将该标志切换为“开”、在判断为是缺失区间的结束点时将该标志切换为“关”,所以在能够正常接收TS包时,如果该标志是“开”,则可以判断为是缺失区间的结束点。
在S107的判断结果是缺失区间的结束点的情况下(S107的“是”),缺失检测部13对元信息生成部16进行缺失区间结束的通知,元信息生成部16从时刻计数器部14取得接受到通知时的STC值,作为元信息的“缺失结束时刻”信息而保存(S108)。此外,元信息生成部16从记录控制部17取得TS包的记录位置信息,作为元信息的“不连续点的位置信息”保存(S109)。作为TS包的记录位置信息,可以使用从记录对象的TS包的开头开始赋予的号码、或者自文件开头的偏移值等。在S107的判断的结果为不是缺失区间的结束点的情况下(S107的“否”),不进行S108及S109的处理。
接着,检测PCR复位,取得时刻偏移值(S110~S112)。
在S110,复位检测部15执行判断在缺失区间中是否发生了PCR复位的复位检测处理。对于复位检测处理的详细情况在后面叙述。在缺失区间中发生了PCR复位的情况下(S111的“是”),复位检测部15将PCR复位发生的判断结果通知给元信息生成部16,输出时刻偏移值。元信息生成部16从复位检测部15取得时刻偏移值,作为元信息的“时刻偏移值”保存(S112)。在缺失区间中没有发生PCR复位的情况下(S111的“否”),不进行S112的处理。
最后,在TS记录结束时记录生成的元信息(S113~S114)。
记录控制部17判断是否有来自用户的记录停止指示、或者由记录结束时刻等构成的记录停止指示(S113),在有记录结束指示的情况下(S113的“是”),记录控制部17从元信息生成部16取得元信息,将元信息记录到记录介质4中(S114)。在没有记录停止指示的情况下(S113的“否”),再次为了处理下个TS包而回到S101。
以上是对流数据记录装置5的动作顺序的说明。
另外,在本实施方式中,在结束流数据的记录时,在S114将元信息一起写入到记录介质,但元信息也可以一个记录一个记录地向记录介质记录。例如,也可以是,如果能够在S113中判断记录结束指示的有无的定时生成1个记录的信息,则将元信息生成部16保存的1个记录的信息向记录控制部17输出、并且向记录介质写入的处理顺序。进而,也可以构成为,在开始流数据的记录时预先在记录介质中确保元信息的记录区域,在S105、S108、S109、及S112的各处理中每当取得元信息的要素信息时将取得的信息向记录控制部17输出,并且向元信息的记录区域追加写入所取得的要素信息。
<PCR复位检测方法>
接着,详细地说明3个在图8的S110中判断在缺失区间内是否发生了PCR复位的方法。
首先,作为第1个方法,说明使用时刻偏移值的方法。
图9是表示在缺失区间中没有发生PCR复位的情况下的STC值与PCR的关系的图。在图9中,横轴表示从广播的流数据的开头算起的连续时间,纵轴表示STC值。斜线部121表示流数据的缺失区间。黑色圆表示包含在TS包中的PCR的时刻信息。直线122表示时刻计数器部14进行增计数的状况。虚线124表示在从缺失区间结束后到最先取得PCR信息为止的期间的TS包中包含的PCR的连续值。时刻偏移值127表示直线122与虚线124的差异。
参照图1说明在缺失区间中发生了PCR复位的情况,本来如果基于包含在TS报头中的PCR使时刻计数器进行增计数,则成为图1的虚线104所示那样,在与由直线102表示的时刻计数器部14的STC值之间发生时刻偏移值113的差异。另一方面,在缺失区间中没有发生PCR复位的情况下,如图9所示,基于包含在TS报头中的PCR进行时刻计数器的增计数的状况成为虚线124所示那样,不发生与由直线122表示的时刻计数器部14的STC值的差异。即,在缺失区间内发生了PCR复位的情况下,时刻偏移值(图1的113)变大,在没有发生PCR复位的情况下,时刻偏移值(图9的127)变小。
参照图10说明着眼于这样的因缺失区间的PCR复位而发生时刻偏移值的PCR复位检测处理。图10是利用时刻偏移值来检测PCR复位的处理的流程图。
包解析部12解析所取得的TS包的报头,调查是否包含有PCR信息(S131)。在没有包含PCR信息的情况下(S131的“否”),结束本流程图所示的PCR复位检测处理的处理顺序。在报头中包含有PCR信息的情况下(S131的“是”),包解析部12经由时刻计数器部14通知给复位检测部15,复位检测部15取得该PCR信息(S132)。此外,复位检测部15从时刻计数器部14取得与该PCR信息同步之前的STC值(S133)。并且,将时刻计数器部14的STC值与PCR值比较,计算时刻偏移值(S134)。
此时STC值比PCR值大的情况下(S135的“是”),判断为发生了PCR复位,将计算出的时刻偏移值通知给元信息生成部16(S136)。在STC值是PCR值以下的情况下(S135“否”),进一步如果时刻偏移值比阈值TH1大(S137的“是”),则判断为发生了PCR复位,将计算出的时刻偏移值通知给元信息生成部16(S136)。
在STC值是PCR值以下、并且时刻偏移值比阈值TH1小的情况下(S135的“否”以及S137的“否”),判断为没有发生PCR复位,作为时刻偏移值将“0”通知给元信息生成部16(S138),结束本流程图所示的PCR复位检测处理的处理顺序。
以上是着眼于因PCR复位的缺失而发生时刻偏移值的情况的PCR复位检测处理的处理顺序。根据上述的处理顺序,不仅是单纯地在缺失区间中存在PCR复位的情况下,还能够在缺失区间中的PMT中表示包含PCR信息的TS包的PID被变更的情况下,对于因该PMT的缺失而不能应对PID的变更、在STC值与PCR值中产生差异的现象,检测其发生。
另外,在S135的判断中将“STC值是否比PCR值大”作为判断条件,但该S135的判断也可以使用“STC值与PCR信息的送出周期之和是否比PCR值大”作为判断条件。
以下,对在短时间中发生了多次缺失区间的情况的应对进行说明。图11是表示发生了多次缺失区间的情况下的STC值与PCR的关系的图。在本图中,横轴表示从流数据的接收开始时算起的连续时间,纵轴表示STC值。斜线部131表示接收电波状况恶化、在记录的TS包中发生了缺失的缺失区间A5,斜线部132表示缺失区间B5。黑色圆表示包含在TS报头中的PCR的时刻信息。直线133及直线134表示时刻计数器部14进行增计数的状况。虚线135表示从缺失区间B5的结束后到最先取得PCR信息的期间的、包含在TS报头中的PCR的连续值。时刻偏移值136表示直线133与虚线135的差异。E5点是缺失区间A5的开始点,F5的缺失区间B5的结束点。区间C5表示能够正常地接收缺失区间A5与缺失区间B5之间的流数据的区间。在该区间C5的流数据中不包含PCR信息。区间D5表示在缺失区间B5之后能够正常地接收流数据的区间。在该区间D5的流数据中包含有PCR。
在这样的缺失区间结束后,到下个缺失区间为止的期间没有PCR信息的状况(图11的区间C5的情况)下,在S131中,由于从图10的处理顺序跳出,所以不能求出时刻偏移值,在图11的缺失区间A5中不能判断是否发生了PCR复位。因此,在图11的区间C5中,不能在广播系统希望的定时进行再现。
所以,这样在到下个缺失区间为止的期间没有PCR信息的情况下,通过将图11的缺失区间A5与缺失区间B5合并、生成将从E5点到F5点作为1个缺失区间的元信息,如此进行对应。
这样的处理可以通过以下这样实现:在图8所示的处理顺序中,元信息生成部16不进行对后续的缺失区间(图11的缺失区间B5)的S105的处理,在对该后续的缺失区间(图11的缺失区间B5)的S108及S109的处理中,将对于不能计算出时刻偏移值的缺失区间(图11的缺失区间A5)的元信息的“缺失结束时刻”及“不连续点的位置信息”改写为后续的缺失区间(图11的缺失区间B5)的“缺失结束时刻”及“不连续点的位置信息”。
接着,作为判断在缺失区间内是否发生了PCR复位的第2个方法,说明使用从接收视频数据到输出为止的时间信息的方法。
为了不发生缓存溢出或缓存下溢,在标准中作为虚拟模型而规定了例如缓存大小或缓存中的数据保存时间。例如,在日本社团法人电波产业会的规定“地上数字电视广播应用规定”(ARIB TR B-14)中规定为,输入到保存视频流数据的CPB(Coded Picture Buffer)中的流数据在1.5秒以内解码并输出。CPB是在ISO/IEC14496-10的MPEG4AVC中规定的虚拟模型的缓存。
图12是表示TS与视频帧的关系的图。第1段表示记录的TS,第2段表示将包含在TS中的视频数据解码处理后的视频帧。缓存内保存时间表示从接收TS数据到将视频数据解码处理并输出为止的时间。这在例如“地上数字电视广播应用规定”的情况下,由于CPB中的数据保存时间是1.5秒以内,所以缓存内保存时间可以推测为(1.5+α)秒以内。α是从接收TS数据到开始解码处理为止的时间,依赖于流数据记录装置。在缺失区间中没发生PCR复位的情况下,接收到TS数据时的时刻(STC值)与包含在PES报头中的PTS之差小于该缓存内保存时间。另一方面,在缺失区间中发生了PCR复位的情况下,该差不会小于缓存内保存时间。
参照图13说明这样的着眼于因缺失区间的PCR复位引起的、接收了TS数据时的STC值与包含在PS报头中的PTS之差不小于缓存内保存时间时的PCR复位检测处理。图13是利用缓存内保存时间检测PCR复位的处理的流程图。
包解析部12将取得的TS包的有效载荷部分解析,调查在PES报头中是否包含有PTS(S151)。在不包含PTS的情况下(S151的“否”),结束本流程图所示的PCR复位检测处理的处理顺序。在包含有PTS的情况下(S151的“是”),包解析部12向复位检测部15进行通知,对应于该通知,复位检测部15取得其PTS(S152)。此外,复位检测部15从时刻计数器部14取得此时的STC值(S153)。并且,比较从时刻计数器部14得到的STC值与PTS,计算包含该PTS的帧的缓存内保存时间(S154)。
在计算出的缓存内保存时间比基于由数字广播标准规定的缓存中的数据保存时间的阈值TH2大的情况下(S155的“是”),判断为发生了PCR复位,向元信息生成部16通知(S156)。此时,虽然在图13中没有图示,但复位检测部15进行图10的S131~S134的处理,计算时刻偏移值,通知给元信息生成部16。此外,在缓存内保存时间比阈值TH2小的情况下(S155的“否”),判断为没有发生PCR复位,作为时刻偏移值将“0”通知给元信息生成部16(S157),结束本流程图所示的PCR复位检测处理的处理顺序。
在该第2个方法中,利用包含在缺失区间后的流数据中的PTS检测在缺失区间中是否发生了PCR复位。因此,即使在如图11的区间C5那样,在从缺失区间结束到下个缺失区间开始为止的期间不包含PCR信息的情况下,也能够检测到PCR复位发生。并且,如果没有发生PCR复位,则区间C5能够在广播系统希望的定时进行再现。在发生了PCR复位的情况下,不能求出图11的区间C5中的时刻偏移值,所以与第1个方法同样,将图11的缺失区间A5与缺失区间B5合并,生成将从E5点到F5点作为1个缺失区间的元信息。
另外,这里说明了使用视频数据的PCR复位检测方法,但是代替视频数据也可以使用音频数据等其他的元件。
接着,说明判断在缺失区间内是否发生了PCR复位的第3个方法。它是在第2个方法中,在能够正常地接收流数据的区间中不包含PCR信息的情况下的应对方法。
在图11中,对缺失区间A5的PCR复位检测方法与图13中表示处理顺序的第2个方法大致同样。作为与第2个方法不同的处理,在图13的S154中,将比较了PTS值与STC值后的值作为缺失区间A5的缓存内保存时间保存。此外,在S156中,在没有计算出时刻偏移值的情况下,元信息生成部16设定表示还没有计算的值(例如“-1”)作为对缺失区间A5的元信息的“时刻偏移值”。
利用附图说明对缺失区间B5的PCR复位检测方法。
图14是表示对于在虽发生了PCR复位但不能计算出时刻偏移值的缺失区间之后发生的缺失区间,检测PCR复位的方法的流程图。在图14的流程图内记载的缺失区间A5、缺失区间B5、区间C5、区间D5对应于图11所示的区间。
在图14所示的处理顺序中,首先计算区间D5的缓存内保存时间(S171)。这可以通过与图13的S151~S154的处理同样的顺序计算。并且,求出与保存的区间C5的缓存内保存时间之差(S172)。在该差为阈值TH3以下的情况下(S173的“是”),计算区间D5的时刻偏移值(S174)。在此情况下,可以判断区间C5与区间D5的时刻偏移值是相同的值。所以,此时复位检测部15将该时刻偏移值作为在缺失区间A5发生的时刻偏移值通知给元信息生成部16(S175)。此外,在缺失区间B5,判断为没有发生PCR复位,作为时刻偏移值将“0”通知给元信息生成部16。
在S173的判断中,在区间C5与区间D5的缓存内保存时间比阈值TH3大的情况下(S173的“否”),在缺失区间A5与缺失区间B5两者中发生了PCR复位。在此情况下,由于不能求出区间C5的时刻偏移值,所以元信息生成部16进行缺失区间A5与缺失区间B5的合并处理(S177)。
另外,作为PCR复位检测方法,是执行图13的处理、还是执行图14的处理的选择可以通过保存识别标志来应对。例如,如果在不能计算出时刻偏移值的状态下检测到下一个缺失区间的开始,则将标志设为“开”。此外,在图14的S173中将标志设为“关”。在开始PCR复位检测处理时,参照这样的标志,如果标志是“开”则执行图14的处理、如果标志为“关”则执行图13的处理就可以。
以上是对于在移动体接收终端3中实现流数据记录功能的流数据记录装置5的说明。
<流数据再现装置>
接着,着眼于对记录的流数据进行再现的结构,详细地说明移动体接收终端3。
流数据再现功能是通过移动体接收终端3内置的流数据再现装置6实现的。图15是表示本实施方式涉及的流数据再现装置6的内部结构的图。
在本图中,在记录介质4中保存着由流数据记录装置5记录的流数据及元信息。
如图15所示,流数据再现装置6在内部具备取得部21、解码部22、输出部23、元信息解析部24、时刻计数器控制部25、时刻计数器部26、以及时刻计数器部27。
取得部21基于来自用户的指示,从记录介质4取得元信息和流数据,将流数据向解码部22输出,将元信息向元信息解析部24输出。
解码部22从取得部21取得流数据,将所取得的流数据解码处理,生成视频数据、音频数据、字幕数据等。并且,参照时刻计数器部26或时刻计数器部27的任一个,在音频、视频等各元件的PTS与参照目的地的STC值一致的定时,将各个元件的解码数据向输出部23输出。当再现处理到达从元信息解析部24通知的流数据位置时,STC值的参照目的地交替地切换为时刻计数器部26和时刻计数器部27。此外,在从流数据取得了PCR信息的情况下,解码部22将PCR值向时刻计数器控制部25通知。
输出部23将从解码部22取得的影像信号及声音信号向显示器及扬声器等输出。
元信息解析部24将从取得部21取得的元信息解析,为了将STC值复位,将“时刻偏移值”与“缺失结束时刻”通知给时刻计数器控制部25。进而,元信息解析部24基于元信息的“不连续点的位置信息”,将切换参照目的地的时刻计数器的流数据位置通知给解码部22。
时刻计数器控制部25基于由解码部22通知的PCR值,使时刻计数器部26及时刻计数器部27中的、解码部22所参照的一方同步。时刻计数器控制部25还利用从元信息解析部24取得的时刻偏移值,将时刻计数器部26及时刻计数器部27中的、解码部22没参照的一方复位。使用了时刻偏移值的时刻计数器的复位,是在解码部22所参照的一方的时刻计数器的STC值达到了元信息的“缺失结束时刻”的定时执行的。
时刻计数器部26及时刻计数器部27具备为了将由解码部22生成的影像信号、声音信号等按照定时输出而由解码部22参照的时钟的作用。
以上是流数据记录装置5的内部结构。
<时刻计数器的切换>
以下,对解码部22参照的时刻计数器的切换进行说明。
图16是表示对在缺失区间中发生了PCR复位的流数据进行再现时的时刻计数器部26及时刻计数器部27的变化的状况的图。曲线的横轴表示从流数据的再现开始时算起的连续时间。纵轴表示时刻计数器的计数器值。斜线部141表示缺失区间。黑色圆表示包含在TS包中的PCR的时刻信息。直线142是时刻计数器部26进行增计数的状况,虚线143是时刻计数器部27进行增计数的状况。时刻偏移值146表示时刻计数器部26与时刻计数器部27之差。
曲线下面的时刻计数器部26及时刻计数器部27的箭头,表示各自的计数器值取有效值的范围。A6点表示将时刻计数器部27的值复位的定时,B6点表示将解码部22参照的时刻计数器从时刻计数器部26切换为时刻计数器部27的定时。
在缺失区间中发生了PCR复位的情况下,在缺失区间结束后,时刻计数器需要按照已复位的PCR而重新取同步。
但是,在流数据的再现中,不是在从记录介质读取流数据的定时进行再现,而是从读取到解码处理并输出需要时间。因此,有在缺失区间发生前读取的流数据的输出时刻,成为缺失区间结束后的情况。此时,由于在缺失区间发生前接收到的流数据的PTS是基于发生PCR复位前的PCR设定的,所以如果将时刻计数器在缺失区间结束后马上与在缺失区间内被复位的PCR值同步,则不能取得PTS与时刻计数器的对应。所以,设置两个时刻计数器,在缺失区间结束的定时(图16的A6点),使时刻计数器部27与在缺失区间中被复位的PCR值同步,但解码部22的参照目的地在于缺失区间发生前接收到的流数据都输出处理结束后,被切换为时刻计数器部27(图16的B6点)。
<流数据再现方法>
接着,对流数据再现装置6从记录介质4取得流数据并再现的动作顺序进行说明。图17是表示有关本实施方式的流数据再现装置6的流数据再现处理的处理顺序的图。
首先,如果接受来自用户的指示而开始再现处理,则取得部21从记录介质4读取元信息并向元信息解析部24输出(S201)。元信息解析部24选择登记在元信息中的记录中的、与“不连续点的位置信息”在当前的流数据再现位置以后最近的缺失区间有关的记录(S202),将所选择的记录向解码部22输出(S203)。
解码部22获取取得部21从记录介质4读取的再现对象的流数据、和有关取得部分的自文件开头算起的位置信息(S204),将自文件开头算起的位置信息与从元信息解析部24取得的元信息的“不连续点的位置信息”比较,判断进行再现处理的流数据与前面的数据是否为不连续(S205)。
在处理的流数据与前面的数据不是不连续的情况下(S206的“是”),解码部22解码处理而生成视频数据、音频数据、以及字幕数据。然后,在各元件的PTS与参照的时刻计数器一致的定时,将已解码的元件的数据输出给输出部23(S215)。
在处理的流数据与前面的数据不连续的情况下(S206的“是”),解码部22参照元信息的“时刻偏移值”。如果参照的时刻偏移值是“0”(S207的“是”),则在缺失区间中没有发生PCR复位,不需要将时刻计数器复位,所以直接执行S215的处理,将流数据再现并输出。
如果参照的时刻偏移值是“0”(S207的“否”),则在缺失区间发生了PCR复位,所以需要进行将时刻计数器值复位的处理。所以,解码部22将处理的流数据到达了与前面的数据不连续的位置的情况通知给元信息解析部24。接受到通知的元信息解析部24将在S202选择的记录的“时刻偏移时”向时刻计数器控制部25通知(S208)。
在向元信息解析部24通知到达不连续位置之后,解码部22将当前参照一侧的时刻计数器部的计数器值与元信息的“缺失结束时刻”比较(S209)。在它们不一致的情况下(S210的“否”,由于还是不连续点以前的数据的处理定时,所以执行S215的处理,将不连续点以前的数据再现并输出。
在缺失结束时刻与时刻计数器部的计数器值一致的情况下(S210的“是”),解码部22向时刻计数器控制部25通知正在参照时刻计数器部26及时刻计数器部27中的哪一个。接受到通知的时刻计数器控制部25将解码部22没参照的一方的时刻计数器,设定为从另一个的时刻计数器的计数器值中减去在S208通知的“时刻偏移值”后的值(S211)。
接着,解码部22通过执行S212~S214的处理,切换参照的时刻计数器部。在该处理中,首先,解码部22判断是否全部输出处理了元信息的“不连续点的位置信息”以前的数据(S212)。该判断例如可以通过以下处理实现:若再现对象的流数据在记录时由流数据记录装置5的缺失检测部13插入了不连续包的流数据,则在将解码处理而生成的数据向输出部23输出时,判断是否处理了不连续包。此外,在将在记录时没插入不连续包的流数据作为再现对象的情况下,解码部22从取得部21取得流数据时,通过在作为不连续的流数据的位置插入表示不连续的数据,在将解码处理而生成的数据输出给输出部23时,能够判断是否处理了表示不连续的数据。
在还剩余不连续点以前的数据的情况下(S213的“否”),不进行参照的时刻计数器部的切换,执行S215的处理,将不连续点以前的数据再现输出。在将不连续点以前的数据全部处理结束的情况下(S213的“是”),解码部22切换参照的时刻计数器部(S214)。接着,执行S215的处理,将不连续点以后的数据再现输出。另外,该时刻计数器部的切换处理是使用时刻计数器部26和时刻计数器部27交替进行的。
输出部23判断是否再现处理了来自用户的再现指示或文件结束终端(S216),在有再现结束指示的情况下结束再现处理。在没有再现结束指示的情况下,为了再次处理下一个数据而回到S201。
以上是对于流数据再现装置6的动作顺序的说明。
根据上述实施方式,在接收电波较弱的状态下记录流数据时,求出PCR与流数据记录装置的时刻计数器之间的偏移值作为元信息保存,在将该记录的流数据再现时,通过基于偏移值修正流数据再现装置的时刻计数器,能够在广播系统希望的定时再现流数据。
(第2实施方式)
对本发明的第2实施方式进行说明。
<元信息>
对第2实施方式涉及的元信息进行说明。在第1实施方式涉及的元信息中,使用STC值记录了缺失区间的开始结束,但在第2实施方式涉及的元信息中,着眼于构成节目的元件的某一个,利用该元件所带的PTS来记录缺失区间的开始结束。这里使用的元件可以使用视频、音频、字幕等的哪一种都可以。在本实施方式中,以将视频数据作为对象时的元信息为例在说明中使用。图18是表示第2实施方式涉及的元信息的数据结构的图。本实施方式涉及的元信息由与在流数据中检测到的缺失区间相同数量的记录构成,各记录由“缺失开始点的PTS”、“缺失结束点的PTS”、“不连续点的位置信息”及“再现时间”构成。
“缺失开始点的PTS”是在缺失区间的发生前接收到的流数据的视频帧的PTS。
“缺失结束点的PTS”是在缺失区间的结束后接收到的流数据的视频帧的PTS。
“不连续点的位置信息”是包含“缺失结束点的PTS”的TS包的位置。作为数据位置信息,可以使用从记录对象的TS包的开头赋予的序列号、或自文件开头的偏移值等。在本实施方式中,使用自文件开头的偏移值。
“再现时间”是假设能够再现包含在缺失区间中的流数据时的再现时间。从“缺失结束点的PTS”减去“缺失开始点的PTS”后的值相当于此。
<流数据记录装置>
接着,对在流数据的记录处理中生成图18中示出了数据结构的元信息的流数据记录装置7进行说明。
图19是表示有关第2实施方式的流数据记录装置7的内部结构的图。流数据记录装置7是对在图5中示出了结构的流数据记录装置5追加再现时间计算部18、将元信息生成部16替换为元信息生成部19的结构。
以下,对于与流数据记录装置5同样的结构赋予相同的标记而省略说明。
再现时间计算部18是从复位检测部15接受复位检测结果的通知,计算与因接收电波状况的恶化等引起记录对象的流数据缺失的区间对应的流数据的再现时间的功能块。再现时间计算部18将计算出的再现时间通知给元信息生成部19。
元信息生成部19基于缺失检测部13的检测结果、以及再现时间计算部18计算出的再现时间,生成图18中示出了数据结构的元信息。
以上是对流数据记录装置7的内部结构的说明。
<流数据记录方法>
图20是表示流数据记录装置7的流数据记录处理的处理顺序的流程图。以下,着眼于与图8所示的流数据记录装置5的动作顺序的不同点,参照图20对流数据记录装置7的动作顺序进行说明。
图20所示的处理顺序是从用户接受到录像指示时执行的处理顺序,大体可分为以下的1~4步骤。
1、检测缺失区间的发生,并取得缺失开始点的PTS的步骤(S301~S305)
2、检测缺失区间的结束,并取得缺失结束点的PTS、不连续点的位置信息的步骤(S306~S309)
3、检测在缺失区间内发生的PCR复位,计算再现时间的步骤(S310~S314)
4、记录生成的元信息的步骤(S315~S316)
首先,对检测所记录的流数据的缺失区间的S301~S305的步骤进行说明。S301~S305的步骤相当于图8的S101~S105的处理,但在检测到的TS包的缺失是缺失区间的开始点的情况下(S304的“是”)执行的处理(S305)与图8的S105的处理不同。
在S305的处理中,缺失检测部13将缺失区间开始通知给元信息生成部19,接受到通知的元信息生成部19取得在缺失区间的发生前输出的视频帧的输出时刻,作为“缺失开始点的PTS”信息而保存(S305)。在这样的处理中,例如每当由包解析部12解析视频PES的报头而检测到包含在PES报头中的PTS时,将检测到的PTS向缺失检测部13输出,缺失检测部13在检测到缺失区间的开始时,通过将最后取得的PTS向元信息生成部19通知,元信息生成部19能够取得在缺失区间的发生前输出的视频数据的输出时刻。
接着,说明检测缺失区间的结束、取得缺失结束时刻以及不连续点的位置信息的S306~S309的步骤。S306~S309的处理相当于图8的S106~S109的处理,但在检测到的TS包的缺失是缺失区间的结束点的情况下(S307的“是”)执行的处理(S308)与图8的S108不同。
在S308的处理中,缺失检测部13对元信息生成部19进行缺失区间结束的通知,元信息生成部19取得在缺失区间结束后输出的视频数据的输出时刻,作为元信息的“缺失结束点的PTS”而保存(S308)。在这样的处理中,例如每当包解析部12解析视频PES的报头而检测到包含在PES报头中的PTS时,将检测到的PTS向缺失检测部13输出,缺失检测部13在检测到缺失区间的结束后,通过将最先取得的PTS向元信息生成部19通知,元信息生成部19能够取得在缺失区间的结束后输出的视频帧的输出时刻。
接着,说明检测在缺失区间内发生的PCR复位并计算再现时间的S310~S314的步骤。S310~S314的处理相当于图8的S110~S112的处理,但在缺失区间中发生了PCR复位的情况下(S311的“是”)执行的处理(S312~S314)与图8的处理顺序不同。
在S312的处理中,复位检测部15取得时刻偏移值,通知给再现时间计算部18。在被通知了时刻偏移值的再现时间计算部18中,从元信息生成部19取得“缺失开始点的PTS”及“缺失结束点的PTS”,利用时刻偏移值、“缺失开始点的PTS”及“缺失结束点的PTS”,计算与包含在缺失区间中的视频帧对应的再现时间。对于再现时间计算处理的详细情况在后面叙述。在接着的S314的处理中,元信息生成部19从再现时间计算部18取得再现时间,作为元信息的“再现时间”保存。
最后,在TS记录结束时记录生成的元信息的S315~S316的处理,是与图8的S113~S114的处理同样的处理。
以上是对流数据记录装置7的动作顺序的说明。
<再现时间计算方法>
接着,对图20的S313中的与包含在缺失区间中的流数据相对应的再现时间的计算方法详细地进行说明。
图21是表示在缺失区间没发生PCR复位时的包含在流数据中的PTS及时刻计数器的变化状况的图。横轴表示从流数据的接收开始时算起的连续时间。纵轴表示时刻计数器的值。斜线151表示缺失区间。直线152表示时刻计数器部14进行增计数的状况。缺失区间开始PTS154是在缺失区间发生之前输出的视频帧的、输出定时处的时刻计数器部14的值。缺失区间结束PTS155是在缺失区间结束后从视频PES报头取得的PTS的值。
如本图所示,在缺失区间没发生PCR复位的情况下,包含在流数据中的PCR与时刻计数器部14在缺失区间结束后也同步。在这样的条件下,由于缺失区间结束PTS155被设定为基于时刻计数器部14所示的STC值进行处理的值,所以与缺失区间相对应的再现时间为缺失区间结束PTS155与缺失区间开始PTS154的差份。
另一方面,图22表示在缺失区间发生了PCR复位的情况下的包含在流数据中的PTS及时刻计数器的变化的状况。在图22中,横轴表示从流数据的接收开始时算起的连续时间。纵轴表示时刻计数器的值。斜线部161表示缺失区间。黑色圆表示时刻计数器的值。斜线部161表示缺失区间。黑色圆表示包含在TS报头中的PCR的时刻信息。直线162及直线163表示时刻计数器部14进行增计数的状况。虚线164表示在从缺失区间结束后到最先取得PCR为止的期间中包含在TS报头中的PCR的连续值。缺失区间开始PTS165是在缺失区间发生前输出的视频帧的、输出定时处的时刻计数器部14的值。缺失区间结束PTS166是在缺失区间结束后、从视频PES报头取得的PTS的值。时刻偏移值167是直线162与虚线164的差分。
如本图所示,在缺失区间发生了PCR复位的情况下,在缺失区间结束后PCR与时刻计数器部14不同步。缺失区间开始PTS165基于PCR复位前的PCR,所以与时刻计数器部14同步。但是,缺失区间结束PTS166被设定为基于PCR复位后的PCR进行处理的值,所以与时刻计数器部14不同步。因此,由于缺失区间结束PTS166与缺失区间开始PTS165的基准不同,所以在此状态下单纯地取差分,并不能得到对应于缺失区间的再现时间。
所以,使用时刻偏移值167,使缺失区间结束PTS166符合与缺失区间开始PTS165相同的基准。修正结束PTS168是对缺失区间结束PTS166加上时刻偏移值167而修正为与缺失区间开始PTS165相同的基准后的缺失区间结束PTS。由于修正结束PTS168与缺失区间开始PTS165基于相同的基准,所以与缺失区间相对应的再现时间可以通过修正结束PTS168与缺失区间开始PTS165的差分得到。
以下,说明实现上述再现时间计算方法的处理顺序。图23是表示再现时间计算部18计算再现时间的处理顺序的流程图。
首先,再现时间计算部18从元信息生成部19取得缺失结束点的PTS(S351)。此外,在缺失区间发生了PCR复位的情况下,再现时间计算部18取得由复位检测部15计算出的时刻偏移值(S352)。接着,再现时间计算部18取得由复位检测部15计算的时刻偏移值(S352)。接着,再现时间计算部18对缺失结束点的PTS加上时刻偏移值,修正缺失结束点的PTS(S353)。此时,元信息的缺失结束点的PTS值不改写。在缺失区间没发生PCR复位的情况下(S352),不进行S353的处理。接着,再现时间计算部18从元信息生成部19取得缺失开始点的PTS(S354)。接着,从缺失结束点的PTS减去缺失开始点的PTS,计算与包含在缺失区间中的流数据相对应的再现时间(S355)。接着,将计算出的再现时间通知给元信息生成部19(S314)。
以上是与包含在缺失区间中的流数据相对应的再现时间的计算方法的说明。
<PTS内插处理>
接着,作为求出缺失开始点及缺失结束点的PTS的方法的变形例,对利用包含在PES报头中的PTS信息和帧速率,求出通过内插音频帧及视频帧的PTS来使缺失开始点与缺失结束点高精度地一致的PTS的方法进行说明。
图24是表示包含在音频PES报头中的PTS与音频帧的关系的图。
上段表示视频PES。“包含PES”表示在PES报头中包含PTS信息的PES,“不包含PES”表示在PES报头中不包含PTS信息的PES。接收恶化区间是接收电波状况恶化而不能正确地取得流数据的区间。
下段表示将音频PES解码而生成的音频帧。
在图20的S305中,在使用包含在PES报头中的PTS作为缺失开始PTS的情况下,图24的A7点成为缺失区间的开始点。因此,从A7点到B7点的音频帧没有进行声音输出。所以,通过使用内插的B7点处的PTS而不是包含在PES报头中的PTS作为缺失开始PTS,能够增加可再现的流数据。
在B7点的PTS计算方法中,首先将包含在从A7点到B7点的流数据解码处理而求出帧数。接着,根据帧数和由流数据定义的帧速率求出从A7点到B7点的帧的再现时间,通过将其与A7点的PTS相加来求出。另外,在位速率固定的情况下,也可以根据从A7点到B7点的音频ES的字节长和位速率来计算。
此外,在图20的S308中,在使用包含在PES报头中的PTS作为缺失结束PTS的情况下,图24的D7点成为缺失区间的结束点。因此,从C7点到D7点的音频帧没有被输出。所以,与缺失开始PTS的情况同样,通过使用内插的C7点处的PTS而不是包含在PES报头中的PTS作为缺失结束点,能够增加可再现的流数据。
在C7点的PTS的计算方法中,与B7点的PTS计算方法同样,根据包含在从C7点到D7点中的帧数和帧速率求出从C7点到D7点的帧的再现时间,通过从D7点的PTS减去它能够求出。
另外,这里利用音频数据进行了说明,但对于视频数据当然也是同样的。
以上是对流数据记录装置7的说明。
<流数据再现装置>
接着,对利用第2实施方式涉及的元信息修正STC值并再现流数据的流数据再现装置8进行说明。图25是表示第2实施方式涉及的流数据再现装置8的内部结构的图。流数据再现装置8是从图15所示的流数据再现装置6中去掉时刻计数器部27,并且将解码部22、元信息解析部24及时刻计数器控制部25分别替换为解码部28、元信息解析部29及时刻计数器控制部30的结构。
以下,对于与流数据再现装置6同样的结构赋予相同的标记而省略说明。
解码部28与解码部22同样,将从取得部21取得的流数据解码而生成视频数据、音频数据、字幕数据等元件数据,参照时刻计数器部26的STC值,在设定在各元件中的PTS与计数器值一致的定时向输出部23输出。此外,在从流数据取得了PCR信息的情况下,解码部28向时刻计数器控制部25通知PCR值。
解码部28与解码部22的区别是,还参照元信息的“不连续点的位置信息”来判断解码处理的数据与前面的数据是否是不连续的,在不连续的情况下,在由元信息的“再现时间”表示的时间内持续输出之前解码的帧。在经过了由“再现时间”表示的时间后,解码部28将相当于缺失区间的再现时间结束的情况通知给时刻计数器控制部30。
另外,作为解码处理到达与前面的数据不连续的数据时的处理,也可以切换为之前解码的帧的静止图表显示,在“再现时间”所示的时间内将画面暗化显示或使画面显示其他颜色。或者,在解码处理到达与前面的数据不连续的数据时,也可以通过立即向时刻计数器控制部30通知以使其将时刻计数器值复位,使再现位置向不连续的数据跳跃。
元信息解析部29解析从取得部21取得的元信息,将“不连续点的位置信息”和“再现时间”向解码部28通知。进而,元信息解析部29将为了复位STC值而需要的“缺失结束点的PTS”向时刻计数器控制部30通知。
时刻计数器控制部30使时刻计数器部26与从解码部28通知的PCR值同步。再者,在时刻计数器控制部30由解码部28通知了相当于缺失区间的再现时间结束的情况下,将时刻计数器部26再设定为从元信息解析部29通知的“缺失结束点的PTS”所表示的时刻。
以上是对流数据再现装置8的内部结构的说明。
<流数据再现方法>
接着,对流数据再现装置8从记录介质4取得流数据并再现的动作顺序进行说明。图26是表示第2实施方式涉及的流数据再现装置8的流数据再现处理的处理顺序的图。
首先,如果接受来自用户的指示并开始再现处理,则取得部21从记录介质4读取元信息,向元信息解析部29输出(S401)。元信息解析部29选择登记在元信息中的记录中的、与“不连续点的位置信息”在当前的流数据再现位置以后最近的缺失区间有关的记录(S402)。并且,元信息解析部29将选择的记录的“不连续点的位置信息”和“再现时间”向解码部28通知,将选择的记录的“缺失结束点的PTS”向时刻计数器控制部30通知(S403)。
解码部28获取取得部21从记录介质4读取的再现对象的流数据、和与取得部分有关的自文件开头的位置信息(S404),将自文件开头的位置信息与从元信息解析部29取得的元信息的“不连续点的位置信息”比较,判断再现处理的流数据与前面的数据是否不连续(S405)。
在处理的流数据与前面的数据不是不连续的情况下(S406的“否”),解码部28进行解码处理而生成视频数据、音频数据及字幕数据。然后,在各元件的PTS与时刻计数器部26的STC值一致的定时,将解码后的元件的数据向输出部23输出(S413)。
在处理的流数据与前面的数据不连续的情况下(S406),解码部28判断是否已将元信息的“不连续点的位置信息”以前的数据全部输出处理了(S407)。该判断例如可以通过如下处理进行,若再现对象的流数据在记录时被插入了不连续包的流数据,则在将解码处理而生成的数据输出给输出部23时,判断是否处理了不连续包。此外,将在记录时没插入不连续包的流数据作为再现对象的情况下,在解码部22从取得部21取得流数据时,通过在作为不连续的流数据位置中插入表示不连续的数据,在将解码处理而生成的数据向输出部23输出时,可以判断是否处理到了表示不连续的数据。
在还剩余不连续点以前的数据的情况下(S408的“否”),执行S413的处理,将不连续点以前的数据进行再现输出。在将不连续点以前的数据全部处理结束的情况下(S408的“是”),解码部28判断是否经过了元信息的“再现时间”(S409)。为了进行该判断,首先解码部28从时刻计数器部26取得输出不连续点以前的最后数据时的STC值,加上元信息的“再现时间”。根据该相加结果值与时刻计数器部26的计数器值是否一致,能够判断再现时间的经过。
在再现时间还没有经过的情况下(S410的“否”),解码部28不进行不连续点以后的数据的输出处理而待机,直到经过了再现时间。在经过了再现时间的情况下(S410的“是”),解码部28将相当于缺失区间的再现时间已结束的情况通知给时刻计数器控制部30(S411)。接受到通知的时刻计数器控制部30将时刻计数器部26的计数器值复位为在S403中从元信息解析部29通知的“缺失结束点的PTS”的值(S412)。然后,执行S413的处理,将不连续点以后的数据进行再现输出。
输出部23判断是否已经对来自用户的再现停止指示或文件结束终端进行了再现处理(S414),在有再现结束指示的情况下(S414的“是”),结束再现处理,在没有再现结束指示的情况下(S414的“否”),为了再次处理下一个数据而回到S401。
以上是对流数据再现装置8的动作顺序的说明。
另外,在本发明的第2实施方式中,在生成元信息时使用了视频数据,但也可以使用音频数据。
根据上述实施方式,通过预测不能正常接收的区间的视频数据或音频数据中的某一个的再现时间,并作为元信息生成及保存,在再现接收电波较弱的状态下记录的流数据时,能够在广播系统希望的定时进行再现。
(第3实施方式)
对本发明的第3实施方式进行说明。
<元信息>
在本发明的第2实施方式中,利用音频数据或视频数据中的一个的时间信息生成元信息,但在第3实施方式中,利用音频数据与视频数据两者的时刻信息生成元信息。图27是表示第3实施方式涉及的元信息的数据结构的图。
本实施方式涉及的元信息由于在流数据中被检测出的每个缺失区间包含有对应于视频数据的记录和对应于音频数据的记录,所以由缺失区间的2倍数量的记录构成。第奇数个记录是以视频数据为对象时的元信息,第偶数个记录是以音频数据为对象时的元信息。
各记录由“缺失开始点的PTS”、“缺失结束点的PTS”、“不连续点的位置信息”及“再现时间”构成。
“缺失开始点的PTS”是在缺失区间的发生前接收到的流数据的音频帧或视频帧的PTS。
“缺失结束点的PTS”是在缺失区间的结束后接收到的流数据的音频帧或视频帧的PTS。
“不连续点的位置信息”是包含“缺失结束点的PTS”的TS包的位置。作为数据位置信息,有从记录对象的TS包的开头赋予的号码、或自文件开头的偏移值等。在本发明的第3实施方式中,使用自文件开头的偏移值。
“再现时间”是假设能够再现包含在缺失区间中的流数据的情况下的音频帧或视频帧的再现时间。从“缺失结束点的PTS”减去“缺失开始点的PTS”后的值对应于此。
<流数据记录方法>
接着,对于第3实施方式涉及的流数据记录处理,参照图20说明与第2实施方式涉及的流数据记录处理的不同点。
首先,第1不同点是,在检测到缺失区间的开始点时执行的S305的处理中,对视频帧及音频帧分别取得缺失开始点的PTS。
具体而言,在S305的处理中,元信息生成部19取得在缺失区间的发生前输出的视频帧的PTS,作为视频数据的“缺失开始点的PTS”信息保存在元信息的第奇数行中。此外,元信息生成部19取得在缺失区间的发生前输出的音频帧的PTS,作为音频数据的“缺失开始点的PTS”信息保存在元信息的第偶数行中。
第2不同点是在检测出缺失区间的结束点时执行的S308的处理中,对视频帧及音频帧分别取得缺失结束点的PTS。
具体而言,在S308的处理中,元信息生成部19取得在缺失区间结束后输出的视频帧的PTS,作为视频数据的“缺失结束点的PTS”信息保存在元信息的第奇数行中。此外,元信息生成部19取得在缺失区间结束后输出的音频帧的PTS,作为音频数据的“缺失结束点的PTS”信息保存在元信息的第偶数行中。
第3不同点是,在S309的处理中,对视频帧及音频帧分别取得记录位置信息。
具体而言,在S309的处理中,元信息生成部19从记录控制部17取得包含视频数据的“缺失结束点的PTS”信息的TS包的记录位置,作为视频数据的“不连续点的位置信息”保存在元信息的第奇数行中。此外,元信息生成部19从记录控制部17取得包含音频数据的“缺失结束点的PTS”信息的TS包的记录位置,作为音频数据的“不连续点的位置信息”保存在元信息的第偶数行中。
第4不同点是,在S309的处理中,对视频帧及音频帧分别计算与包含在缺失区间中的数据相对应的再现时间。
具体而言,在S313的处理中,再现时间计算部18从元信息生成部19的第奇数行取得视频数据的“缺失开始点的PTS”及“缺失结束点的PTS”,计算与包含在缺失区间中的视频数据相对应的再现时间。此外,再现时间计算部18从元信息生成部19的第偶数行取得音频数据的“缺失开始点的PTS”及“缺失结束点的PTS”,计算与包含在缺失区间中的音频数据相对应的再现时间。另外,时刻偏移值是PCR与时刻计数器部14的STC值的差分,在视频数据、音频数据中是共通的。因此,再现时间能够用对于视频数据、音频数据都相同的逻辑计算。
以上是有关第3实施方式的流数据记录方法的说明。
<流数据再现装置>
接着,对利用第3实施方式涉及的元信息修正STC值并再现流数据的流数据再现装置9进行说明。图28是表示第3实施方式涉及的流数据再现装置9的内部结构的图。流数据再现装置9是在图25中示出了结构的流数据再现装置8中追加状态显示部33,将解码部28及时刻计数器控制部30替换为解码部31及时刻计数器控制部32的结构。
以下,对于与流数据再现装置8同样的结构赋予相同的标记而省略说明。
解码部31将从取得部21取得的流数据解码而生成视频数据、音频数据。并且,参照时刻计数器部26,将生成的视频数据或音频数据以基于各自帧速率的规定间隔向输出部23输出。
解码部31还参照元信息的“不连续点的位置信息”,判断进行解码处理的数据与前面的数据是否不连续,在不连续的情况下,在由元信息的“再现时间”表示的时间内停止向输出部23的输出。
时刻计数器控制部32在再现开始时按照流数据的PCR将时刻计数器部26的计数器值复位。在再现中不进行时刻计数器部26的复位。
状态显示部33从元信息解析部29取得元信息,生成将在被记录的流数据中存在缺失区间的情况提示给用户的画面,经由输出部23向监视器输出。具体而言,状态显示部33的显示处理例如图29(a)所示,将缺失区间按照与各区间的时间长度相对应的比例配置在表示流数据全体的条对象上进行显示。或者也可以如图29(b)所示,将缺失区间的位置显示在表示可再现的流数据的长度的条对象上。再者,作为另一例,也可以如图29(c)所示,是将作为记录对象的流数据的广播时的时间和实际记录的流数据的可再现的时间提示给用户的结构。状态显示部33还在向用户请求跳跃目的地的指定时,如图29(d)所示,生成将能够作为跳跃目的地指定的区间及不能指定的区间显示在一个条对象上的图像,向监视器输出。
此外,在流数据的再现动作中,状态显示部33生成表示再现状态的图像,向监视器输出。图30(a)是示意地表示显示有表示再现状态的图像的移动体接收终端3的图。在流数据的再现中,在移动体接收终端3的监视器10上,将解码后的再现图像显示在影像输出部分10a上,将由状态显示部33生成的表示再现状态的信息显示在状态显示部分10b上。在显示于状态显示部分10b的表示再现状态的信息中,有再现位置显示条对象10c和再现时间显示10d。
以下,说明表示再现状态的图像的显示方法。图30(b)是示出了表示再现状态的图像的显示方法一例的图。
再现位置显示条对象10c是表示流数据全体的长度的条对象,与缺失区间一起按照各区间的位置和长度被配置。在条对象上划分的各区间,对应于在该区间可再现的元件种类而分颜色显示。具体而言,将可再现视频及音频两者的区间10e显示为绿色,将表示只有视频及音频的任一个的缺失区间的区间10f显示为橙色,将视频及音频的两者的缺失区间重叠的区间10g显示为红色。进而,再现位置显示条对象10e通过按照已再现的量从左端开始显示粗框,能够容易地掌握当前的再现位置是怎样的状态。
再现时间显示10d是将当前再现的时刻与流数据全体的再现数据并列显示的字符串。再现时间显示10d的字符串在当前的再现位置变为视频的缺失区间而影像输出部分10a暗化时显示。另外,再现时间显示10d的显示颜色也可以与再现位置显示条对象10c一样,根据再现的元件种类而变更显示颜色。
再者,在再现位置达到视频及音频两者的缺失区间重复的部分、且元信息的“再现时间”为规定时间(例如10秒)以上的缺失区间的情况下,也可以在影像输出部分10a显示弹出框10c、图标等警告图像。通过进行这样的警告,用户能够识别出再现长期间中断的情况,用户能够进行跳跃操作等适当的应对。
以上是对流数据再现装置9的内部结构的说明。
<流数据再现方法>
接着,对流数据再现装置9从记录介质4取得流数据并再现的动作顺序进行说明。图31是表示第3实施方式涉及的流数据再现装置9的流数据再现处理的处理顺序的图。
首先,如果接受到来自用户的指示而开始再现处理,则取得部21从记录介质读取元信息,向元信息解析部29输出(S501)。元信息解析部29选择登记在元信息中的记录中的、与“不连续点的位置信息”在当前的流数据再现位置以后最近的缺失区间有关的第奇数行的视频数据的记录、和接着它的第偶数行的音频数据的记录(S502)。并且,元信息解析部29将选择的两个记录的“不连续点的位置信息”和“再现时间”向解码部28通知,将选择的两个记录的“缺失结束点的PTS”向时刻计数器控制部30通知(S503)。解码部31获取取得部21从记录介质4读取的再现对象的流数据、和与取得部分有关的自文件开头的位置信息(S504)。
以后,从S505到S511的处理分别对音频数据和视频数据并行地执行。
在S505,解码部31参照元信息的第奇数行的视频数据的“不连续点的位置信息”,判断进行再现处理的视频数据与前面的数据是否不连续。此外,解码部31参照元信息的第偶数行的音频数据的“不连续点的位置信息”,判断再现处理的音频数据与前面的数据是否不连续。
当进行处理的视频数据或音频数据与前面的数据不是不连续的情况下(S506的“否”),解码部31进行解码处理而生成视频数据或音频数据。解码部31参照时刻计数器部26并按照基于各自帧速率的规定间隔将生成的音频数据或视频数据向输出部23输出(S511)。其中,在S511的处理中,只有再现开始时的最初的音频帧及视频帧在各自的PTS与时刻计数器部26的计数器值一致的定时开始输出。对于其以后的音频帧及视频帧,按照基于各自帧速率的规定间隔输出。
在进行处理的视频数据或音频数据与前面的数据不连续的情况下(S506的“是”),解码部31判断是否已将元信息的第奇数行的“不连续点的位置信息”以前的视频数据、或者元信息的第偶数行的“不连续点的位置信息”以前的音频数据全部输出处理(S507)。在还剩余不连续点以前的数据的情况下(S508的“否”),执行S511的处理,将不连续点以前的数据输出。在将不连续点以前的视频数据全部处理结束的情况下(S508的“是”),解码部31判断是否经过了元信息的第奇数行的视频数据的“再现时间”(S509)。此外,在将不连续点以前的音频数据全部处理结束的情况下(S508的“是”),解码部31判断是否经过了元信息的第偶数行的“再现时间”(S509)。在还没有经过再现时间的情况下(S510的“否”),解码部不进行不连续点以后的数据的输出处理而待机,直到经过再现时间。
在经过了再现时间的情况下(S510的“是”),解码部31执行S413的处理,将不连续点以后的数据再现输出。在将不连续点以后的流数据再现输出的情况下,如果经过了元信息的“再现时间”则从该定时开始再现输出,然后按照基于帧速率的规定间隔输出。
以上是对流数据再现装置9的动作顺序的说明。
根据上述实施方式,通过预测不能正常接收的区间的视频数据及音频数据两者的再现时间而作为元信息生成并保存,在再现时,仅在视频数据与音频数据的开始定时利用PTS进行同步,以后的数据基于帧速率输出,并且在将接收电波较弱的状态下记录的流数据进行再现时,对于视频数据及音频数据,分别在元信息的再现时间内使再现待机,在缺失区间结束后也能够在广播系统希望的定时使视频数据及音频数据同步而进行再现。
(其他变形例)
另外,基于上述实施方式说明了本发明,但本发明当然并不限于上述的实施方式。以下这样的情况也包含在本发明中。
(1)本发明也可以是在各实施方式中说明的流程图的处理顺序所公开的流数据的记录方法、再现方法。此外,也可以是包含通过上述处理顺序使计算机工作的程序代码的计算机程序,也可以是由上述计算机程序构成的数字信号。
此外,本发明也可以是将上述计算机程序或上述数字信号记录在计算机可读取的记录介质、例如软盘、硬盘、CD-ROM、MO、DVD、DVD-ROM、DVD-RAM、BD(Blu-ray Disc)、半导体存储器等中的结构。
此外,本发明也可以是将上述计算机程序或上述数字信号经由电气通信线路、无线或有线通信线路、以因特网为代表的网络等传送的结构。
此外,也可以通过将上述计算机程序或上述数字信号记录在上述记录介质中并移送、或者通过将上述计算机程序或上述数字信号经由上述网络等移送,由独立的其他计算机系统实施。
(2)本发明也可以作为控制上述第1实施方式至第3实施方式中所述的流数据记录装置、以及流数据再现装置的LSI来实施。这样的LSI可以通过将在图5、图15、图19、图25及图28中用虚线包围的各功能块集成化来实现。这些功能块既可以分别地单芯片化,也可以单芯片化以使其包含一部分或全部。
这里,设为LSI,但根据集成度的差异,也有称作IC、系统LSI、超级LSI、超大LSI的情况。
此外,集成电路化的方法并不限于LSI,也可以通过专用电路或通用处理器来实现。也可以利用在LSI制造后能够编程的FPGA(FieldProgrammable Gate Array)、或能够再构成LSI内部的电路单元的连接及设定的可重构处理器。
进而,如果因半导体技术的进步或派生的其他技术而出现替换LSI的集成电路化的技术,则当然也可以利用该技术进行功能块及部件的集成化。在这样的技术中,有可能有生物技术的应用。
(3)在上述本发明的第1实施方式值第3实施方式中,主要对通过数字广播信号传送的流数据的记录、再现进行了讨论,但对于经由网络接收到的流数据当然也能够得到同样的效果。
进而,本发明并不限于从数字广播信号取得的流数据,也可以作为将已经记录在记录介质中的流数据作为解析对象而生成元信息的流数据编辑装置来实施。这样的流数据编辑装置具体而言,在图5及图19所示的结构中,通过由取得部11将已经记录在记录介质4中的流数据读取、将读取的流数据作为处理的对象来实现。这样,在装置中,在将从广播波取得的流数据暂时记录到记录介质中后,在装置的空闲时等能够将流数据读取而生成元信息,在减轻流数据的记录时的处理负荷的观点上是有益的。
(4)在第1实施方式至第3实施方式中,将元信息记录在与流数据相同的记录介质中,但只要有关本发明的元信息与流数据进行了对应,也可以分别记录在另外的记录介质中。例如,在流数据的数据尺寸比记录介质的容量大的情况下,通过将流数据分割记录在多个记录介质中、将记录在各个记录介质中的流数据的各部分的缺失区间的元信息一起记录在任一个记录介质中、对于流数据的各部分和元信息赋予共通的ID来应用本发明。
(5)也可以将上述实施方式及上述变形例分别组合。
根据本发明涉及的流数据记录装置,在流数据的记录时,对于因接收电波恶化而包含在流数据中的PCR不明确的区间,生成用来修正STC值的时刻偏移信息;并且,根据本发明的流数据再现装置,在再现时通过利用该时刻偏移信息修正时刻计数器,能够在广播系统希望的定时再现流数据。本发明即使在流数据的记录中发生了接收电波状况恶化的情况下,也能够进行上述那样的有效的应对,所以对于移动体接收终端中的数字广播接收等是有用的。