数据处理装置的制作方法

文档序号:6755326阅读:118来源:国知局
专利名称:数据处理装置的制作方法
技术领域
本发明涉及从数据流再生视频和/或音频的技术。更具体地说,本发明涉及适合连续再生同一数据流的不同部分或多个数据流时的技术。
背景技术
近年来,随着数字技术的发展,能够按照MPEG等标准对关于视频或音频的内容的数据进行编码,作为编码数据流记录在光盘或硬盘等的记录介质中。而且,也提出了与记录技术对应,从这种记录介质再生编码数据流的技术,并开始实用化。
例如,日本特开2002-281458号公报公开了再生记录在记录介质中的编码数据流的再生装置。下面参照图1说明该再生装置的构成。图1表示已有再生装置的功能块的构成。记录介质1例如是光盘,以预定的格式记录视频数据、音频数据等的数据流。
再生装置的再生单元2从微控制器3指定记录介质1的地址,读出记录在该地址中的数据流。再生单元2在对读出的数字信号进行纠错处理后,得到再生数据流。接着,数据流分离单元4分离视频和音频的数据流。经过视频信号切换开关12a、视频数据存储单元5、视频信号切换开关12b,将分离出来的视频数据流输入到视频解码器6。此外,视频数据存储单元5具有能够分别存储数据流的2个以上的独立的存储区域。经过一个存储区域将视频数据流输入到视频解码器6。又,经过音频数据存储单元9,将由数据流分离单元4分离出来的音频数据流输入到音频解码器10。
视频解码器6一面将经过解码的视频存储在帧数据存储单元7中,一面对视频数据流进行解码,变换成视频信号,从视频输出端子8输出。音频解码器10对音频数据流进行解码,变换成音频信号,从音频输出端子11输出。
存在着再生装置再生不连续的数据流的情形。例如,因为通过从开始记录到停止的一连串的工作将数据流记录在记录介质1中,所以当多次进行记录处理时能够将2个以上的数据流记录在在记录介质1中。因此,当用户指示这些数据流的连续再生时,使不连续的2个以上的数据流连续进行再生。又,当使1个数据流的多个区间连续进行再生时,也能够说如果将各区间考虑为1个数据流,则使不连续的2个以上的数据流连续进行再生。后者的例子与当由用户作成预列表,指定1个数据流的任意的再生区间和路径时相当。
下面,说明再生装置再生不连续的数据流时的处理。再生装置控制视频信号切换开关12a和12b,首先,经过视频数据存储单元5的一个存储区域将第1数据流传送到视频解码器6,进行解码。在视频解码器6结束对第1数据流的解码后,微控制器3立即切换视频信号切换开关12a和12b。因此经过视频数据存储单元5的另一个存储区域将下次读出的第2数据流传送到视频解码器6。因此,视频解码器6能够在结束对第1数据流的解码后,立即连续地对第2数据流进行解码。
但是,在已有的再生装置中,不能避免硬件的增大,并且要求进行复杂的控制。具体地说,在再生装置中,必须在视频数据存储单元中设置存储数据流的2个以上的独立的存储区域。又,也需要用于切换存储区域的输入和输出用的各视频信号切换开关。而且,微控制器必须进行各开关的切换控制。

发明内容
本发明的目的在于不追加设置存储区域和视频信号切换开关,通过简便的构成和控制,连续地再生不连续的多个数据流。进而,能够抑制在不连续点中的再生混乱。
根据本发明的数据处理装置,一面取得包含内容数据的数据流,一面再生内容,其中,所述数据流由多个信息包构成,各信息包具有所述内容数据和用于识别所述内容数据的种类的识别符,在所述内容数据中,与再生单位的前头部分对应的内容数据具有特定所述再生单位的标题;所述数据处理装置包括数据流提取单元,其取得第1数据流,此后,取得第2数据流;信息包插入单元,其生成具有与所述多个信息包的识别符不同的伪识别符的伪信息包,插入到所述第1数据流的最终信息包和所述第2数据流的前头信息包之间;分离单元,其根据所述识别符,按照每一种类分离所述内容数据,对检测出所述伪识别符作出应答,插入与所述内容数据不同的错误数据;和解码器,其以所述再生单位再生所述内容数据,检测所述错误数据,废弃所述第1数据流的最后的不完全的内容数据、和直到所述第2数据流的最初的标题为止的内容数据,不进行再生。
也可以是在所述数据流中预先规定了表示错误的错误码;所述分离单元插入所述错误码作为所述错误数据。
也可以是所述分离单元进一步插入预定长度的“0”的比特串作为所述错误数据;所述解码器,当检测出所述错误码和所述比特串的一方时,判断检测出所述错误数据。
也可以是在所述数据流中,用可变长度编码方式对所述内容的数据进行编码;所述分离单元插入具有所述可变长度编码方式的最大代码长度以上的比特长度的比特串。
也可以是所述内容至少包含视频;所述分离单元插入具有关于视频的可变长度编码方式的最大代码长度以上的比特长度的比特串。
也可以是所述数据流提取单元取得由传送流信息包构成的所述第1数据流和所述第2数据流。
也可以是所述数据流提取单元取得关于1个内容的数据流的不同部分,分别作为所述第1数据流和所述第2数据流。
也可以是所述数据流提取单元从记录介质取得所述第1数据流和所述第2数据流。
也可以是所述数据流提取单元取得广播的所述第1数据流和所述第2数据流。
根据本发明的数据处理方法,一面取得包含内容数据的数据流,一面再生内容,其中,所述数据流由多个信息包构成,各信息包具有所述内容数据和用于识别所述内容数据的种类的识别符,在所述内容数据中,与再生单位的前头部分对应的内容数据具有特定所述再生单位的标题;所述数据处理方法包括取得第1数据流,此后,取得第2数据流的步骤;生成具有与所述多个信息包的识别符不同的伪识别符的伪信息包的步骤;插入到所述第1数据流的最终信息包和所述第2数据流的前头信息包之间的的步骤;根据所述识别符按照每一种类分离所述内容数据的步骤;当检测出所述伪识别符时插入与所述内容数据不同的错误数据的步骤;以所述再生单位再生所述内容数据的步骤;和如果检测出所述错误数据,则废弃所述第1数据流的最后的不完全的内容数据和直到所述第2数据流的最初的标题为止的内容数据的步骤。
也可以是在所述数据流中预先规定了表示错误的错误码;所述插入错误数据的步骤插入所述错误码作为所述错误数据。
也可以是所述插入错误数据的步骤进一步插入预定长度的“0”的比特串作为所述错误数据;所述废弃的步骤,当检测出所述错误码和所述比特串的一方时,判断检测出所述错误数据。
也可以是在所述数据流中,用可变长度编码方式对所述内容的数据进行编码;所述插入错误数据的步骤插入具有所述可变长度编码方式的最大代码长度以上的比特长度的比特串。
也可以是所述内容至少包含视频;所述插入错误数据的步骤插入具有关于视频的可变长度编码方式的最大代码长度以上的比特长度的比特串。
也可以是所述取得的步骤取得由传送流信息包构成的所述第1数据流和所述第2数据流。
也可以是所述取得的步骤取得关于1个内容的数据流的不同部分,分别作为所述第1数据流和所述第2数据流。
也可以是所述取得的步骤从记录介质取得所述第1数据流和所述第2数据流。
也可以是所述取得的步骤取得广播的所述第1数据流和所述第2数据流。


图1是表示已有再生装置的功能块的构成的图。
图2是表示MPEG-2传输流20的数据结构的图。
图3(a)是表示视频TS信息包30的数据结构的图,图3(b)是表示音频TS信息包31的数据结构的图。
图4(a)~4(d)是表示从视频TS信息包再生视频画面时构筑的数据流的关系的图。
图5(a)是表示画面数据的配置顺序的图,图5(b)是表示画面的再生输出的顺序的图。
图6是表示再生装置100的功能块的构成的图。
图7是表示在再生装置100中经过处理的TS和从TS得到的ES的关系的图。
图8是表示数据流分离单元64的功能块的构成的图。
图9是表示数据流切换点前后的数据排列的图。
图10是表示视频解码器66的功能块的构成的图。
图11是表示再生装置100的处理顺序的流程图。
具体实施例方式
下面,参照

作为根据本发明的数据处理装置的实施方式的再生装置。
首先一开始,说明在根据本实施方式的数据处理装置中成为处理对象的数据流的数据结构,此后说明再生装置的构成和工作。
图2表示MPEG-2传输流20的数据结构。MPEG-2传输流20(以下记述为“TS20”)包含多个TS目标单元(TS Object Unit;TOBU)21,该TOBU21由1个以上的传输信息包(TS信息包)构成。TS信息包(TSpacket),例如,除了包含存储经过压缩的视频数据的视频TS信息包(V_TSP)30、存储经过压缩的音频数据的音频TS信息包(A_TSP)31外,还包含存储节目表(程序·组合·表;PAT)的信息包(PAT_TSP)、存储节目对应表(Program Map Table;PMT)的信息包(PMT_TSP)和存储程序·时钟·基准(PCR)的信息包(PCR_TSP)等。各信息包的数据量为188字节。
下面,说明与本发明的处理关联的视频TS信息包和音频TS信息包。图3(a)表示视频TS信息包30的数据结构。视频TS信息包30具有4字节的传输信息包标题(head)30a和184字节的视频数据30b。另一方面,图3(b)表示音频TS信息包31的数据结构。音频TS信息包31也同样,具有4字节的传输信息包标题31a和184字节的音频数据31b。
如从上述例子可以理解的那样,一般TS信息包由4字节的传输信息包标题和184字节的基本数据构成。在信息包标题中,记述着特定该信息包的种类的信息包识别符(Packet ID;PID)。例如,视频TS信息包的PID为“0x0020”,音频TS信息包的PD为“0x0021”。基本数据是视频数据、音频数据等的内容数据和用于控制再生的控制数据等。存储什么样的数据根据信息包的种类而不同。此外,TS信息包的TS信息包标题后的数据存储区域,当存储视频数据、音频数据等的内容数据时,称为TS信息包的“有效载荷”,当存储控制数据时称为“自适应区域”。根据本实施方式的处理的主要特征是利用TS信息包的有效载荷的处理。
此外,图2、图3(a)和图3(b)是关于传输流的数据结构的例子,但是该数据结构也同样能够适用于程序流(program stream)中的包组(pack)。这是因为在包组中与信息包标题(packet head)连续地配置着数据。“包组(pack)”作为信息包的一个例示的形态是众所周知的。但是,在信息包标题前附加包组标题(pack head),包组的数据量为2048千字节等方面与信息包不同。
下面,在本说明书中,以视频为例说明根据本发明的实施方式的处理。
图4(a)~4(d)表示从视频TS信息包再生视频画面时构筑的数据流的关系。如图4(a)所示,TS40包含视频TS信息包40a~40d。此外,在TS40中也能够包含其它的信息包,但是这里,只表示视频TS信息包。根据存储在标题40a-1中的PID容易特定视频TS信息包。
由视频数据40a-2等的各视频TS信息包的视频数据,构成信息包化基本流。图4(b)表示信息包化基本流(PES)41的数据结构。PES41由多个PES信息包41a、41b等构成。PES信息包41a由PES标题40a-1和画面数据41a-2构成,将这些数据作为视频TS信息包的视频数据存储起来。
画面数据41a-2包含着各画面的数据。由画面数据41a-2构成基本流。图4(c)表示基本流(ES)42的数据结构。ES42具有多个画面标题和帧数据或子帧数据的组。此外,“画面(Picture)”一般用作包含帧和子帧中的某一个的概念,但是下面表示帧。“画面(Picture)”是关于视频的最小再生单位。
在图4(c)所示的画面标题42a中,记述着特定配置其后的帧数据42b的画面类别的画面标题码,在画面标题42c中,记述着特定帧数据42d的画面类别的画面标题码。类别表示I画面(I帧)、P画面(P帧)或B画面(B帧)。类别为I帧时的画面标题码例如作为16进制数,为“00_00_01_00_00_8b”。
此外,存在着在画面标题前进一步记述顺序标题(Seq-H)或GOP标题(GOP-H)的情形。GOP标题(GOP-H)是特定由使I画面在前头的多个画面构成的再生单位(画面组(GOP))的标题。又,顺序标题(Seq-H)是用于特定由1个以上的GOP构成的再生单位(顺序)的标题。
帧数据42b、42d等是可以只由它的数据,或者由它的数据和在其前和/或后经过解码的数据构筑的1个份数的帧的数据。例如,图4(d)表示由帧数据42b构筑的画面43a和由帧数据42d构筑的画面43b。
例如,如果根据在MPEG-2标准的主方案(profile)中采用的双向编码方式,则存在着只用该数据可以构筑1个完全的画面的数据(I画面数据)和只用该数据不能够构筑1个完全的画面,但是通过参照其它的画面数据可以构筑1个完全的画面的数据(P、B画面数据)。
当更详细地进行说明时,存在着某个GOP内的全部P和B画面是通过只参照同一GOP内的I画面或P画面构筑成的情形(该数据结构称为“Closed GOP(关闭的GOP)”)。又,在B画面中,也存在着参照该B画面所属GOP的紧接前面的GOP内的I画面或P画面的情形(该数据结构称为“Open GOP(打开的GOP)”)。
而且,也可以规定种种画面数据的配置和画出顺序。这里,我们一面参照图5(a)和5(b)一面说明用于实现后者(“Open GOP”)中的画出顺序的各画面的数据配置和画出顺序。
图5(a)是表示画面数据的配置顺序的图。又,图5(b)表示画面的再生输出的顺序。在图5(a)和5(b)中,“I”、“P”、“B”分别表示I画面、P画面和B画面。各画面的数据构成图4(c)的ES42。此外,在图5(a)中,令从I画面54到下一个I画面前的B画面60为1GOP。
如从图5(a)和5(b)可以理解的那样,画面数据的配置顺序和画出顺序是不同的。例如将I画面54的画面数据配置在B画面55、56的画面数据的前面,但是I画面54的画出在B画面55、56的画出之后。又,P画面57的画面数据和此后2个B画面的画面数据的关系也是同样的。画出顺序是2个B画面在前,P画面57在它后面。
在图5(a)中,根据前方向的P画面53和画出顺序中成为后方向的I画面54的两个方向的差分数据,对B画面55进行编码。B画面56也是同样的。这里,某个B画面55和56也参照紧接前面GOP内的P画面。当B画面55、56解码时,参照原来的画面53、54的画面数据。被参照的原来的画面称为参照画面。将参照画面的画面数据存储在缓冲器等中,当其它画面解码时进行参照。
又,根据与紧接前面的I画面54的差分对P画面57进行编码。此外,根据与紧接前面的P画面57的差分对P画面58进行编码。当P画面58解码时,需要作为参照画面的P画面57的画面数据。
下面,参照图6说明根据本实施方式的再生装置的构成和工作。如上所述,在本实施方式中主要举出视频为例说明再生装置的各构成要素的功能。此外,在本实施方式中令记录介质为硬盘。
再生装置,取得TS信息包,根据取得的TS信息包直到ES42(图4(c))进行系统解码,此后,输出复原的画面。下面,为了说明一般的解码和画出处理,根据能够由1GOP内的数据构筑全部画面的“ClosedGOP”的数据结构进行说明。
图6表示再生装置100的功能块的构成。再生装置100具有硬盘61、再生单元62、微控制器63、数据流分离单元64、视频数据存储单元65、视频解码器66、帧数据存储单元67、视频输出端子68、音频数据存储单元69、音频解码器70、和音频输出端子71。此外,因为对硬盘61写入和读出数据,所以需要备有使硬盘61旋转的马达、磁头等的驱动装置,但是在图6中将它们省略了。作为记录介质,也可以代替不能取出的硬盘61而用可装卸的介质,例如Blu-ray(蓝光线)光盘(BD)等,但是这时也可以不是再生装置100固有的构成要素。
再生装置100能够根据微控制器63的控制,一面从硬盘61取得包含关于视频、音频等的内容的内容数据的TS,一面再生内容。在本说明书中,说明令记录在硬盘61中的TS为1个,在再生该TS的一部分区间后,再生不连续的其它区间的例子。该例子与当由用户作成预列表,指定1个数据流的任意的再生区间和路径时相当。各再生区间本来是1个TS的一部分,但是各部分区间能够作为个别的TS(TS-A和TS-B)进行处理。
下面,说明再生装置100的功能概略。再生装置100的再生单元62从硬盘61取得TS-A,此后,取得TS-B。而且,再生单元62生成具有与各TS内的各信息包识别符(PID)不同的伪识别符的伪信息包,插入到TS-A的最终信息包和后续的TS-B的前头信息包之间。数据流分离单元64根据信息包识别符(PID),对信息包的每一类别将内容数据分离成视频和音频的基本数据。又,数据流分离单元64对检测出伪识别符作出应答,插入与内容数据不同的错误数据。解码器66、70以再生单位再生内容数据,检测错误数据,废弃TS-A的最后的不完全的内容数据和直到TS-B的最初的标题的内容数据,不实施再生。因此,能够确实地将2个数据流(TS-A和TS-B)的境界点传送给解码器66、70。
再生装置100的各构成要素的功能如下所示。此外,各构成要素根据来自微控制器63的指示进行工作。
再生单元62,作为硬件的构成,包含磁头和信号均衡电路、纠错电路(图中未画出)等。再生单元62具有数据流提取单元62a和伪信息包插入单元62b。数据流提取单元62a从微控制器3接受硬盘61的地址,从该地址读出数据。而且,在进行纠错处理后,得到TS(TS-A、TS-B等)。
伪信息包插入单元62b生成具有与各视频TS信息包和音频TS信息包等的信息包的识别符(PID)不同的伪识别符的伪信息包,插入到TS-A和TS-B之间。
这里,参照图7说明伪信息包。图7表示在再生装置100中经过处理的TS和从TS得到的ES的关系。当注目于图7的TS时,能够看到将伪信息包72插入到S-A的最终信息包75和TS-B的前头信息包77之间。又在图7中,也表示了伪信息包72的数据结构。伪信息包72由信息包标题72a和有效载荷72b构成,具有与视频TS信息包30(图3(a))和音频TS信息包31(图3(b))等同样的数据结构。
在信息包标题72a中,记述着用于将伪信息包72识别为其它信息包的识别符(PID)。例如,该识别符(PID)是“0x1FFF”,与前面例示的视频TS信息包和音频TS信息包的各识别符(PID)不同。又,有效载荷72b存储作为预先确定的预定图案的数据列的伪数据。伪数据不是有意的数据列,不是再生对象。例如,通常可以埋入只用于充填目的的NULL(零)信息包作为伪信息包,埋入NULL信息包的PID和与它连续的特定的图案作为伪信息包。
当将伪信息包72插入到TS-A的最终信息包75和TS-B的前头信息包77之间时,产生下列问题。即,如从图4(a)~(d)的记载和与各图对应的说明可以看到的那样,在各视频TS信息包的视频数据中,分割地存储着PES标题、画面标题、帧数据等。例如,将为了再生1个帧所需的数据分割成N个视频TS信息包。通过这样做,存在着当在完成取得TS-A的N个视频TS信息包前插入伪信息包72时,因为不能够完全聚集数据所以不能够再生TS-A的这个帧的情形。如图7的下段所例示的那样,在从TS-A得到的ES76中包含着不能够再生的I画面数据76b。在本说明书中,将该不能够再生的I画面称为“不完全的”数据。
同样,当插入伪信息包72紧接之后的TS-B的视频TS信息包为TS-B的传送中的N个视频TS信息包的途中的信息包时,因为不能够取得以前传送的视频TS信息包内的帧数据所以不能够再生。在图7的下段例示了包含在从TS-B得到的ES79中的不能够再生的一部分B画面数据78。
又,因为将TS信息包的数据长度固定在188字节,所以将为了再生1个帧所需的数据分割成例如N个视频TS信息包,结果,也可以存在着帧前后的区划与第1个或第N个的TS信息包的区划不一致的情形。例如插入伪信息包72前的TS-A最后的TS信息包即便是上述的第N个的TS信息包,也存在着在该信息包的视频数据中包含图7的ES所示的I画面数据76b那样的后续的画面数据的一部分。因为不能够再生这一部分的画面数据,所以是不完全的数据。同样,也可以在插入伪信息包72紧接之后的TS-B的前头的TS信息包中,与图7的ES所示的B画面数据78b完全同样地存在直到途中都不能够再生的不完全的画面数据。此外,上述“N”的值通常对各画面数据的每一个变化。
当对这种不能够再生的帧数据进行再生处理时,显示的帧图像发生混乱,发生解码错误。
因此,为了避免上述问题,在数据流分离单元64和视频解码器66中,进行用于不错误地再生完全不能够取得帧数据的处理。
下面,参照图8说明数据流分离单元64的构成和功能。图8表示数据流分离单元64的功能块的构成。数据流分离单元64具有PID检测单元81、伪信息包检测单元82、TS/PES解码器83、开关84a和84b、和错误数据生成单元85。
PD检测单元81,接受由TS-A、伪信息包72和TS-B构成的一连串数据流(图7的上段),对各信息包的信息包标题进行解析,检测识别符(PID)。将检测出的识别符(PID)传送给微控制器63。因为各信息包具有与种类相应而不同的识别符(PID),所以微控制器63与识别符(PID)的值相应,能够判别该信息包将什么种类的数据存储在有效载荷区域中。PID检测单元81不仅能够检测视频TS信息包30、音频TS信息包31和伪信息包72,而且也能够检测图2所示的节目表信息包(PAT_TSP)和节目对应表信息包(PMT_TSP)等的个别的识别符(PID)。
接着,伪信息包检测单元82在检测出伪PID时,对该信息包的有效载荷进行解析,判别是否存在特定的伪数据。因此,能够确实地检测出伪数据72。此外,伪信息包检测单元82也可以与有无检测出伪PID无关,检测伪数据。这种处理对于只用识别符(PID)不能够特定并检测伪信息包的情形是特别有效的。伪信息包检测单元82当存在伪数据时判断检测出伪信息包72。检测出伪信息包72表示在该信息包的位置中数据流是不连续的。微控制器63,当从伪信息包检测单元82得到检测出伪信息包72的通知时,能够判断在该信息包的位置中,将TS-A切换成TS-B。
TS/PES解码器83,根据存储在视频TS信息包和音频TS信息包等的有效载荷中的数据,直到基本流的水平进行系统解码输出数据。但是,如上所述,因为存储在伪信息包72中的伪数据不是有意的数据不成为再生对象,所以不进行解码处理,原封不动地进行输出。
关于例如图4(a)~4(c)所示的视频说明TS/PES解码器83的处理。TS/PES解码器83除去视频TS信息包40a~40d的信息包标题,取得有效载荷。然后TS/PES解码器83,在该有效载荷中存在PES标题的情形中,除去该PES标题。因此,TS/PES解码器83能够得到基本数据。另一方面,对于伪信息包,TS/PES解码器83原封不动地输出通过除去信息包标题得到的伪数据。
此外,在TS/PES解码器83的处理后输出的数据不限于是图4(c)所示的基本流42。这是因为在数据流中除了视频TS信息包外也包含着音频TS信息包。通过将基本流42存储在后述的视频数据存储单元65中能够得到基本流42。同样也将关于音频的基本流存储在音频数据存储单元69中。
开关84a根据来自从PID检测单元81接受识别符(PID)的通知的微控制器63的指示切换数据的传送路径。即,当处理中的TS信息包的识别符(PID)表示视频时,开关84a以将数据传送到开关84a的方式形成路径。另一方面,当表示音频时,以将数据传送到端子86b的方式形成路径。端子86b与音频数据存储单元69连接,作为音频基本流存储在音频数据存储单元69中。
又开关84b也根据来自微控制器63的指示切换数据的传送路径。开关84b通常以将经过开关84a发送过来的来自TS/PES解码器83的基本数据输出到端子86a的方式形成路径。但是,当在伪信息包检测单元82中检测出伪信息包时,在将伪数据输入到开关84b的期间中,开关84b以将来自错误数据生成单元85的数据输出到端子86a的方式形成路径。端子86a与视频数据存储单元65连接,作为视频基本流存储在视频数据存储单元65中。
错误数据生成单元85,插入只由“0”构成的预定数据长度的数据(“0”数据)和表示特定值的预定数据长度的顺序错误数据(Sequenc_error)。例如,“0”数据的数据长度与可考虑的可变长度码(VLC)(后述)的最大长度相同,或者在它以上。错误数据生成单元85,当开关84b切换到错误数据生成单元85一侧时,以“0”数据和顺序错误数据的顺序输出这些数据。
下面参照图7和图9说明从上述数据流分离单元64得到的基本流(ES)。图7的下段表示根据TS得到的ES。但是,图示出来的是与视频有关的ES,具有存储在视频数据存储单元65中的状态的数据结构。
从图7的左侧向着右侧从数据流分离单元64输出并构筑ES。首先,在ES中与关于B画面的数据,即接在画面标题(PIC-H)之后配置B画面数据。接在B画面数据之后,配置I画面。各种标题76a,除了I画面标题外,例如还包含上述的顺序标题、GOP标题。
接在各种标题76a之后配置着I画面标题76b。但是,存储在视频TS信息包75中的I画面数据是构成1个I画面的数据中的一部分,而不是全部。因为也将关于I画面的标题和画面数据存储在例如20个视频TS信息包中,所以充分设定在完全得到构成1个I画面的数据前,将TS-A切换成TS-B。
在I画面数据76b的后面,并且在插入伪信息包72的范围内,配置着“0”数据73和顺序错误数据74。当检测出存在数据73和/或74时,意味着在该位置上将TS-A切换成TS-B。在本说明书中,为了方便起见将存在数据73和/或74的位置称为“数据流连接点”。
在数据流连接点中的顺序错误数据74的后面,存储着构成TS-B的不完全的画面数据78。该B画面数据78不限于包含B画面的画面标题。这是因为为了能够在TS-B的任意位置中进行与TS-A的切换,存在只存储基本数据的信息包。
在TS-B的B画面数据78的后面,在图7的例子中配置着各种标题79a和I画面数据79b。该I画面数据79b是能够画出1个完全的I画面的数据。此外,通过参照I画面数据79b等能够再生在该I画面数据79b后面传送的画面数据(例如B画面数据)。
不能够分别画出图7的附加斜线的部分的I画面数据79b和B画面数据。其理由是因为如果没有收集到全部的画面数据则作为1个画面不能够画出来。因此,在存在“0”数据73和顺序错误数据74的位置(数据流连接点)前后存在着不能够用于再生的数据。
下面,参照图9详细说明在数据流连接点中的数据结构。图9表示数据流切换点前后的数据排列。表示出从不能够用于再生的I画面数据76b到“0”数据73、顺序错误数据74和B画面数据78的数据。在I画面数据76b的前头部分,存在着包含顺序标题(和顺序扩展数据)90、GOP标题91和画面标题92的各种标题76a。此后,作为I画面数据配置着切片标题和宏模块76b。构成I画面数据的切片标题和宏模块76b包含着作为视频的编码数据的可变长度码VLC(Variable Length Code)。在图9中,表示了可变长度码VLC-I0、I1、I2和I3。而且,在下一个可变长度码VLC93中,结束TS-A的最终TS信息包。将可变长度码VLC93的余下部分存储在TS-A中的下一个视频TS信息包(图中未画出)中,但是因为切换到TS-B所以不存在。
在可变长度码VLC93的后面,配置着“0”数据73和顺序错误数据74。在图9中可变长度码VLC93和“0”数据73之间是打开的,但是这是为了便于记载而已。实际上是连续地配置可变长度码VLC93和“0”数据73。
接着,配置TS-B的B画面数据78的数据。前头的可变长度码VLC94实际上不作为可变长度码起作用。这是因为只要超过可变长度码的一部分,就不能够解码。在从TS-A的切换前传送本来应该存在于可变长度码VLC94的前面的数据,该数据不存在于该数据流内。在可变长度码VLC94的后面,存在着可变长度码VLC-B2、B3、B4。它们是可以分别解码的。
这里我们说明设置“0”数据73和顺序错误数据74的意义。首先,当不设置“0”数据73和顺序错误数据74两者时,连接可变长度码VLC93和可变长度码VLC94,形成连续的数据。结果,作为可变长度码VLC而被误识别,在后续的视频解码器66中引起解码错误。为此,设置顺序错误数据74。顺序错误数据74例如是“0x000001b4”,当检测出该数据时,该数据表示必定存在错误。
下面,考虑只设置顺序错误数据74,而不设置“0”数据73的情形。存在着只通过顺序错误数据74也可以识别数据流连接点的情形。但是在不存在“0”数据73的情形中,存在连接紧接前面的可变长度码VLC93和顺序错误数据74,作为1个可变长度码VLC被误识别的情形。即,存在作为顺序错误数据74不被识别的情形。因此,为了防止发生这种误识别,设置“0”数据73。但是,也需要避免通过连接可变长度码VLC-13和“0”数据73发生同样的误识别。因此,“0”数据73的数据长度与考虑的可变长度码VLC的最大长度相同,或者在它以上。视频解码器66,当接受“0”数据73时,能够检测出不存在的可变长度码。
通过设置“0”数据73和顺序错误数据74,在数据流连接点,后续的视频解码器66检测出由连接可变长度码VLC-I3和“0”数据73引起的VLC错误,或者能够根据顺序错误数据74检测出错误。视频解码器66能够确实地识别连接点。
下面,说明视频解码器66(图6)的处理。视频解码器66从视频数据存储单元65顺次地读出图7所示的ES对其进行解码,结果一面将得到的各画面的数据(帧数据)存储在帧数据存储单元67中,一面当得到完全的帧数据时从视频输出端子进行输出。
图10是表示视频解码器66的功能块的构成。视频解码器66具有起始码检测单元101、VLC解码单元102、逆量子化单元103、逆DCT单元104、和运动补偿单元105。
起始码检测单元101,从视频ES输入端子接受视频ES,检测顺序标题、GOP标题、I画面标题等的起始码。因为起始码以“0x000001”的24位的图案开始,所以起始码检测单元101根据以后的数据,检测各种标题,对检测出的标题的信息进行解码。又,起始码检测单元101从微控制器63接受发生解码错误的通知。当接受该通知时,起始码检测单元101搜索顺序标题、GOP标题和/或I画面标题。当检测出这些至少1个标题的起始码时,起始码检测单元101将检测出起始码通知微控制器63。
VLC解码单元102对VLC数据进行解码,取得宏模块数据。在MPEG的图像压缩方式中,用VLC数据进行编码,达到使数据高效化的目的。当进行编码时,预先规定可以解码的可变长度码VLC。VLC解码单元102,当接受没有规定的图案的数据时,将发生解码错误的通知输出到微控制器63。上述“0”数据73和顺序错误数据74与“没有规定的图案”相当。
对宏模块数据,在逆量子化单元103中进行逆量子化处理,在逆DCT单元104中进行逆DCT变换处理,运动补偿单元105中进行由运动矢量引起的运动补偿处理。这些处理的结果,得到帧数据。将帧数据存储在帧数据存储单元67中,如果是不要其它画面数据的参照的I画面数据则原封不动地从输出端子进行输出。此外,因为逆量子化处理、逆DCT变换处理和运动补偿处理是众所周知的,所以在本说明书中省略对其详细说明。
这里,说明与起始码检测单元101和VLC解码单元102关联的微控制器63的处理。微控制器63,当接受发生错误的通知时,以不显示该画面的方式,废弃紧接前面的画面标题以后的数据。在I画面的情形中,废弃顺序标题以后的数据,即数据流的最后的不完全的内容数据。在该数据中,也包含着到此为止经过解码的该画面的数据。又,当接受该通知时,微控制器63废弃直到从起始码检测单元101检测下一个起始码此后接受的数据。
例如,当进行图9所示的数据流的处理时,VLC解码单元102将由于“0”数据73或顺序错误数据74发生解码错误通知微控制器63。微控制器63废弃从顺序标题90到可变长度码VLC93的数据。进一步微控制器63废弃直到由起始码检测单元101检测出下一个顺序标题接受的数据94、VLC-B2~VLC-B4。
此外,到此为止,对设定通过参照已经传送到B画面的数据前的相同的GOP内的I画面等的数据构筑B画面的情形进行了说明,但是在“OpenGOP”的情形中,进一步存在着即便是完全传送的B画面也必须废弃的数据。例如,在配置在I画面数据79b(图7)的紧接前面的GOP标题表示“Open GOP”的情形中,因为存在着配置在该I画面后面的B画面数据参照包含该B画面的GOP的紧接前面的GOP内的I画面和/或P画面的情形,所以只用I画面数据79b不能够进行解码。因此,可以废弃该I画面后面的B画面的数据。当参照图5(a)时,即便是完全取得I画面54的数据以后的数据的情形,在从I画面54开始解码的的情形中,也废弃B画面55和56的数据。结果,不显示B画面55和56。因此,不发生由配置在I画面数据后的B画面数据引起的解码错误,能够避免显示不正规的图像。
下面,参照图11说明再生装置100的工作。图11表示再生装置100的处理顺序。图11所示的处理是视频处理的例子,是根据微控制器63的控制进行的。在图11中,步骤S110、S111、S113、S114和S115的处理是不进行数据流切换的通常的数据流再生处理。
首先,说明通常的数据流再生处理。在步骤S110,数据流提取单元62a读出数据流A(TS-A)。其次在步骤S111,微控制器63判断是否接受了再生与数据流A不同的数据流B的指示。在通常的再生处理中,当判断没有接受时行进到步骤S113。在步骤113,伪信息包检测单元82判断是否检测出伪信息包。因为不存在伪信息包,所以行进到步骤S114,数据流分离单元64生成视频基本数据,作为视频基本流存储在视频数据存储单元65中。在步骤S115,视频解码器66对视频基本流进行解码并再生。而且,处理再次回到步骤S110。
下面,说明包含数据流的切换时的数据流再生处理。步骤S111,当微控制器63接受了再生与数据流A不同的数据流B的指示时,行进到步骤S112。在步骤S112,伪信息包插入单元62b生成伪信息包附加在数据流A的末尾。此后,数据流提取单元62a读出数据流B,行进到步骤S113。因为在步骤S113,伪信息包检测单元82检测出伪信息包,所以行进到步骤S116。在步骤S116,TS/PES解码器83生成与数据流A有关的视频基本流,错误数据生成单元85在其末尾插入“0”数据和顺序错误数据。将该数据存储在视频数据存储单元65中,接着由视频解码器66读出该数据。
在步骤S117,VLC解码单元102判断是否检测出VLC错误。当没有检测出时,行进到步骤S118,当检测出时,行进到步骤S119。在步骤S118,VLC解码单元102判断是否检测出顺序错误数据。当检测出时,行进到步骤S119,当没有检测出时,行进到步骤S120。通过在步骤S117和S118设置多次的判定处理,能够确实地检测出连接点。
在步骤S119,当存在数据流A最后的不完全的数据和数据流B最初的不完全的数据时微控制器63分别废弃它们。结果,此后对数据流B的可以解码的数据进行处理。
在下面的步骤S120,数据流分离单元64生成数据流B的视频基本流,视频解码器66对该视频基本流进行解码并再生。
如果根据以上的处理,则即便在存在切换数据流的情形中,也能够确实地检测出连接点,一面避免发生解码错误,一面抑制画面的混乱继续进行再生。
此外,在本实施方式中,我们说明了令记录在硬盘61中的TS为1个,该区间为TS-A和TS-B时的处理。但是,即便在硬盘61中记录多个TS,连续地再生它们的情形中,也能够完全同样地应用本发明。即,可以认为上述TS-A和TS-B是独立的数据流。进一步,如果考虑上述TS-A和TS-B是独立的数据流的一部分的区间,则即便在硬盘61中记录多个TS,连续各TS的一部分区间进行再生的情形中,也能够完全同样地应用本发明。
又在本实施方式中,TS-B的开始画出画面是I画面,但是也可以是I画面以外的画面。例如当从图5中的P画面57开始画出时,可以只对I画面54和P画面57的数据进行解码。也可以不对到画出中需要的画面的画面(图5中B画面55和56)的数据进行解码。此外,也可以是在连接数据流前后只顺序地连续再生1种画面(例如I画面)的数据的I再生特殊再生。
进一步在本实施方式中,我们举出根据MPEG标准经过压缩编码的传输流为例,举出与该标准相应的伪信息包和顺序错误数据的值进行了说明。但是,应用本发明可以不限于这些值,也可以是其它的值。又,也能够用根据其它标准的数据流。顺序错误数据的值等可以用该标准中的错误码和其它的码。
又,不一定将数据流记录在记录介质中。例如即便在实时接收利用TS的数字广播的情形中,也能够应用本发明。即,可以与数字广播的频道切换相应地插入上述伪信息包。
数据处理装置的再生功能是根据规定图11所示的处理顺序的计算机程序实现的。数据处理装置的计算机能够通过实施这种计算机程序使数据处理装置的各构成要素进行工作,实现上述处理。将计算机程序记录在CD-ROM等的记录介质中在市场中流通,或者,通过因特网等的电通信线路进行传送。因此,能够使计算机系统作为具有与上述数据处理装置同等功能的再生装置进行工作。
如果根据本发明,则能够提供即便在将某个数据流切换成其它数据流进行再生的情形中,也能够确实地检测出连接点,一面避免发生解码错误,一面抑制画面的混乱继续进行再生的数据处理装置。
权利要求
1.一种数据处理装置,一面取得包含内容数据的数据流,一面再生内容,其中,所述数据流由多个信息包构成,各信息包具有所述内容数据和用于识别所述内容数据的种类的识别符,在所述内容数据中,与再生单位的前头部分对应的内容数据具有特定所述再生单位的标题;所述数据处理装置包括数据流提取单元,其取得第1数据流,此后,取得第2数据流;信息包插入单元,其生成具有与所述多个信息包的识别符不同的伪识别符的伪信息包,插入到所述第1数据流的最终信息包和所述第2数据流的前头信息包之间;分离单元,其根据所述识别符,按照每一种类分离所述内容数据,对检测出所述伪识别符作出应答,插入与所述内容数据不同的错误数据;和解码器,其以所述再生单位再生所述内容数据,检测所述错误数据,废弃所述第1数据流的最后的不完全的内容数据、和直到所述第2数据流的最初的标题为止的内容数据,不进行再生。
2.根据权利要求1所述的数据处理装置,其特征在于,在所述数据流中预先规定了表示错误的错误码;所述分离单元插入所述错误码作为所述错误数据。
3.根据权利要求2所述的数据处理装置,其特征在于,所述分离单元进一步插入预定长度的“0”的比特串作为所述错误数据;所述解码器,当检测出所述错误码和所述比特串的一方时,判断检测出所述错误数据。
4.根据权利要求2所述的数据处理装置,其特征在于,在所述数据流中,用可变长度编码方式对所述内容的数据进行编码;所述分离单元插入具有所述可变长度编码方式的最大代码长度以上的比特长度的比特串。
5.根据权利要求4所述的数据处理装置,其特征在于,所述内容至少包含视频;所述分离单元插入具有关于视频的可变长度编码方式的最大代码长度以上的比特长度的比特串。
6.根据权利要求1所述的数据处理装置,其特征在于,所述数据流提取单元取得由传送流信息包构成的所述第1数据流和所述第2数据流。
7.根据权利要求1所述的数据处理装置,其特征在于,所述数据流提取单元取得关于1个内容的数据流的不同部分,分别作为所述第1数据流和所述第2数据流。
8.根据权利要求1所述的数据处理装置,其特征在于,所述数据流提取单元从记录介质取得所述第1数据流和所述第2数据流。
9.根据权利要求1所述的数据处理装置,其特征在于,所述数据流提取单元取得广播的所述第1数据流和所述第2数据流。
10.一种数据处理方法,一面取得包含内容数据的数据流,一面再生内容,其中,所述数据流由多个信息包构成,各信息包具有所述内容数据和用于识别所述内容数据的种类的识别符,在所述内容数据中,与再生单位的前头部分对应的内容数据具有特定所述再生单位的标题;所述数据处理方法包括取得第1数据流,此后,取得第2数据流的步骤;生成具有与所述多个信息包的识别符不同的伪识别符的伪信息包的步骤;插入到所述第1数据流的最终信息包和所述第2数据流的前头信息包之间的的步骤;根据所述识别符按照每一种类分离所述内容数据的步骤;当检测出所述伪识别符时插入与所述内容数据不同的错误数据的步骤;以所述再生单位再生所述内容数据的步骤;和如果检测出所述错误数据,则废弃所述第1数据流的最后的不完全的内容数据和直到所述第2数据流的最初的标题为止的内容数据的步骤。
11.根据权利要求10所述的数据处理方法,其特征在于,在所述数据流中预先规定了表示错误的错误码;所述插入错误数据的步骤插入所述错误码作为所述错误数据。
12.根据权利要求11所述的数据处理方法,其特征在于,所述插入错误数据的步骤进一步插入预定长度的“0”的比特串作为所述错误数据;所述废弃的步骤,当检测出所述错误码和所述比特串的一方时,判断检测出所述错误数据。
13.根据权利要求11所述的数据处理方法,其特征在于,在所述数据流中,用可变长度编码方式对所述内容的数据进行编码;所述插入错误数据的步骤插入具有所述可变长度编码方式的最大代码长度以上的比特长度的比特串。
14.根据权利要求13所述的数据处理方法,其特征在于,所述内容至少包含视频;所述插入错误数据的步骤插入具有关于视频的可变长度编码方式的最大代码长度以上的比特长度的比特串。
15.根据权利要求10所述的数据处理方法,其特征在于,所述取得的步骤取得由传送流信息包构成的所述第1数据流和所述第2数据流。
16.根据权利要求10所述的数据处理方法,其特征在于,所述取得的步骤取得关于1个内容的数据流的不同部分,分别作为所述第1数据流和所述第2数据流。
17.根据权利要求10所述的数据处理方法,其特征在于,所述取得的步骤从记录介质取得所述第1数据流和所述第2数据流。
18.根据权利要求10所述的数据处理方法,其特征在于,所述取得的步骤取得广播的所述第1数据流和所述第2数据流。
全文摘要
一种数据处理装置,包括数据流提取单元,其取得第1及第2数据流;信息包插入单元,其生成具有与数据流的多个信息包的识别符不同的伪识别符的伪信息包,插入到第1数据流的最终信息包和第2数据流的前头信息包之间;分离单元,其根据识别符,按照每一种类分离内容数据,对检测出伪识别符作出应答,插入与内容数据不同的错误数据;和解码器,其以再生单位再生内容数据,检测错误数据,废弃第1数据流的最后的不完全的内容数据、和直到第2数据流的最初的标题为止的内容数据,不进行再生。
文档编号G11B20/18GK1778108SQ20048001091
公开日2006年5月24日 申请日期2004年4月22日 优先权日2003年4月23日
发明者森本健嗣, 则竹俊哉 申请人:松下电器产业株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1