传输速率调整设备和方法

文档序号:7643890阅读:139来源:国知局
专利名称:传输速率调整设备和方法
技术领域
本发明涉及用于调整传送流的传输速率的方法和设备,更为确切地说,涉及用于调整已经根据MPEG(运动图片专家组)标准进行压缩编码的传送流(MPEG-TS)的传输速率的方法和设备。
背景技术
近年,用于回放存储在诸如存储卡等记录媒介上的MPEG文件的设备被普遍使用。在这种回放设备中,使用MPEG解码器来作为MPEG2-TS中的MPEG文件的接口。典型地,各种传输速率的数据作为MPEG文件被存储在记录媒介上,并且从MPEG文件中读取的MPEG2-TS具有各种传输速率。结果,从MPEG文件中读取的MPEG2-TS的传输速率有时候与适用于MPEG解码器的传输速率不同。在这种情况下,从MPEG文件中读取的MPEG2-TS必须被转换成适合于MPEG解码器的传输速率。
以适合于MPEG解码器的传输速率来供应已经从MPEG文件中读取的MPEG2-TS的方法中包括以下方法,其中,通过利用PLL电路使PCR(程序时钟参考)重新生成时钟,然后将与所述重新生成的时钟相匹配的MGEG-TS发送至MPEG解码器,其中所述PCR是TS信息包(TS packets)中记录的程序时间标准参考值。除了上述方法,JP-A-2001-339688(下面称之为专利文献1)中公开了一种回放设备,下面对其结构和操作进行更加详细地讲述。
MPEG-TS允许诸如视频信号、音频信号和数据等多个程序在单个流中进行多路复用。图1示出了MPEG-TS的信息包结构。
MPEG-TS是由多个如图1(A)所示的信息包长度为188字节的传送信息包(下面简称为“TS信息包”)组合而成。每一个TS信息包由报头51和有效负载52组成,如图1(B)所示。报头51由32位的传送报头和备用字段54组成,如图1(C)所示。传送报头包括13位的PID(信息包标识)53,它是信息包标识信息。如图1(D)所示,备用字段54包括48位的PCR 55,它是程序时间标准参考值。PCR 55是27MHz的时间戳。在通过MPEG解码器的STC(系统时间时钟)来进行解码的期间,将参考该PCR 55来重新生成标准时间。
如图1(E)所示,PCR 55由总共48位来描述9位的扩展部分60重复300次,33位的基本部分58在扩展部分60重复300次时计数一次,并且还有6位的保留区域59。
图2示出了专利文献1中讲述的传送流回放设备的结构。参考图2,传送流回放设备由以下组成回放处理器102、存储器103、PCR检测器104、定时控制器105、PCR操作单元106、NULL信息包生成单元107和选择器108。
以不同于27Mbps传输速率的记录速率将MPEG-TS记录在记录媒介100上。回放处理器102回放来自记录媒介100的MPEG-TS,并且将该重新生成的MPEG-TS传递到存储器103和PCR检测器104。PCR检测器104在重新生成的MPEG-TS中检测PCR,并且对于PCR的每一次检测,将PCR检测信号发送到定时控制器105。
NULL信息包生成单元107生成NULL信息包,它是哑TS信息包。这些NULL信息包的信息包长度也是188字节,与TS信息包的字节数一样。已经从存储器103中读出的MPEG-TS被供应给选择器108的其中一个输入,并且在NULL信息包生成单元107中生成的NULL信息包被供应给选择器108的另一个输入。选择器108选择和供应这些输入中的一个作为输出。PCR操作单元106计算下一个PCR的值,以便当由于插入NULL信息包而使当前的PCR和下一个PCR的间距超出合适的PCR间距时能够实现合适的PCR间距。
定时控制器105既监控所输入PCR检测信号的被检测PCR值,同时还供应来自选择器108的已经从与27MHz时钟相匹配的存储器103中读出的回放MPEG-TS。定时控制器105计算当前PCR和下一个PCR之间的差值,并且基于所计算的结果,判断当以27Mbps的传输速率供应已经从存储器103中读出的MPEG-TS时,以27MHz时钟在当前PCR和下一个PCR之间的间距中可以发送多少比特数据。当在包含有下一个PCR的MPEG-TS信息包的供应期间,在PCR间距中有什么不一致情况发生时,定时控制器105不从存储器103中读出包含有下一个PCR的MPEG-TS信息包,而是将在NULL信息包生成单元107中生成的NULL信息包插入到它的位置。如果在当定时控制器105还要插入另一个NULL信息包并且然后供应包含有下一个PCR的MPEG-TS信息包时当前PCR和下一个PCR之间的间距超出合适的PCR间距,则定时控制器105从存储器103中读取包含有下一个PCR的TS信息包,而不会插入NULL信息包。此时,定时控制器105将已经记在被读取的TS信息包中的下一个PCR的值重写为已经在PCR操作单元106中计算出的PCR值,以便与输出定时相匹配。这样,可以获得在PCR之间缺乏失配的输出MPEG-TS。
不过,上述回放方法和回放设备具有如下所述问题。
在其中使用PCR来在PLL电路中重新生成时钟并且MPEG2-TS被传输到与重新生成的时钟相匹配的MPEG解码器的方法中,需要有使用了PLL电路的时钟重新生成单元,并且该方法因此具有电路规模增大和高成本的缺点。另外在MPEG解码器中,当重新生成已经进行了从MPEG2-PS(程序流)到MPEG2-TS的软件转换的数据时,根据MPEG2-TS的PCR之间的字节数而计算的传输速率有时候不均一,并且结果使用上述PLL电路的时钟重新生成是有问题的。
在专利文献1中讲述的重新生成设备是将传输速率为25Mbps的记录数据(MPEG文件)重新生成和供应为传输速率为27Mbps的MPEG-TS并且使用传输速率为27MHz的时钟来供应该重新生成的MPEG-TS。用于该输出的27MHz的时钟必须与从PCR计算的时钟相匹配。结果,在专利文献1中讲述的重新生成设备也需要有使用PLL电路的时钟重新生成电路,并且因此具有如上所述的相同缺点。

发明内容
本发明的目标是提出一种传输速率调整设备,用于以期望的传输速率来供应MPEG-TS而不需要使用PLL电路,并且因此提供了上述问题的解决方案。
为了实现上述目标,本发明涉及一种传输速率调整设备,用于调整所输入的传送流的传输速率,该传输速率调整设备将由具有固定信息包长度的多个传送信息包组成的传送流作为输入,其中所述信息包中存储有已编码数据并且以固定时间间隔记录了在上述编码期间作为标准时间间隔的规定频率的时间戳(PCR);传输速率调整设备包括缓存;缓存写入单元,将输入传送流的传送信息包连续写入到缓存,并且检测输入传送流中的时间戳;以及缓存读取单元,将指定频分率的频分率信号和用于对已编码数据进行解码的解码器的系统时钟作为输入,并且以由输入的频分率信号所指定的频分率来对输入的系统时钟进行频分所获得的时钟所决定的传输速率将已经从缓存中依序读出的传送信息包发送到解码器;其中所述缓存写入单元,当检测到所述时间戳时,将下述内容作为其中记有所述第二时间戳的传送信息包的增补信息存储在缓存中此次被检测的所述第一时间戳和之前被检测的所述第二时间戳之差,在所述第一和所述第二时间戳之间的间距中的传送信息包数,以及所述第二时间戳的值;以及缓存读取单元,当从所述缓存中读出其中记有第二时间戳的传送信息包时,根据附在所述传送信息包上的增补信息,在已经从缓存中读出的传送信息包之间插入NULL信息包以实现调整,使得以该传输速率来发送传送信息包,并且当仅通过插入NULL信息包无法实现调整时,当从所述缓存中读取其中记有第一时间戳的传送信息包时,重写该传送信息包的时间戳。
根据上述结构,通过对解码器(MPEG解码器)的系统时钟进行频分而得到的时钟被用作为与解码器相接口的时钟,从而避免通过例如PLL电路来重新生成时钟的需要。
另外,不仅在传送信息包之间插入NULL信息包,而且重写时间戳(PCR),以使得从缓存中依序读出的传送信息包的传输速率与接口时钟所决定的接口传输速率相匹配,并且结果导致,在准备通过MPEG解码器来对已经经过从MPEG2-PS(程序流)到MPEG2-TS的软件转换的数据进行重新生成的情况下,即便当根据在MPEG2-TS的PCR之间的字节数来计算的传输速率不均一时,可以调整传输速率以便与由接口时钟所决定的接口传输速率相匹配。因此,可以以正确的传输速率来将MPEG2-TS发送到MPEG解码器,而不会在解码器端的时钟重新生成中发生问题。
如前述解释所述,通过消除使用包括有PLL电路的时钟重新生成电路的需要,本发明能够使成本相应下降和电路规模减小。
另外,即便当根据在MPEG2-TS的PCR之间的字节数来计算的传输速率不均一时,可以以正确的传输速率来将MPEG2-TS发送到MPEG解码器,从而可以为解码器提供比现有技术的设备更为稳定的解码操作。
通过下面的讲述并参考用于解释本发明示例的附图,将使本发明的上述和其他目的、特征和优势更加明显。


图1示出了MPEG-TS传送信息包的典型结构;图2为框图,示出了JP-A-2001-339688中所述的传送流重新生成设备的结构;图3为框图,示出了作为本发明实施例的传输速率调整设备的示意性结构;图4用于解释传送信息包和存储在图3所示缓存中的增补信息;图5用于解释在图3所示的传输速率调整设备中的传输速率调整;图6用于解释在图3所示的传输速率调整设备中的PCR补偿;图7为框图,示出了MPEG解码器的示意性结构;图8示出了频分率和传输速率之间的关系;图9为示意性结构,示出了其中均一插入NULL信息包的传送流示例;图10用于解释在图3所示的传输速率调整设备中插入NULL信息包的示例;图11用于解释在图3所示的传输速率调整设备中插入NULL信息包的另一个示例;图12用于解释在均一插入NULL信息包的情况下,存储在传送缓存中的数据值的改变;以及图13示出了在均一插入NULL信息包的情况下,存储在传送缓存中的数据值的转换。
具体实施例方式
图3为框图,示出了作为本发明实施例的传输速率调整设备的示意性结构。图3所示的传输速率调整设备2是用于调整已经从MPEG2-TS文件1中读出的MPEG2-TS的传输速率的设备,并且由缓存写入单元5、缓存6和缓存读取单元7组成。
以在数据发送端的设备(图中未示出)中使用的传输速率来将MPEG2-TS存储在MPEG2-TS文件1中。存储在MPEG2-TS文件1中的MPEG2-TS可以是已经经过从MPEG2-PS到MPEG2-TS的软件转换的数据。MPEG2-TS是如图1所示结构的多个TS信息包的集合。PCR作为27MHz的时间戳被记在TS信息包的备用字段。在数据发送端的设备中,PCR用于重新生成由MPEG解码器3的STC(系统时间时钟)在编码期间所使用的标准时间。根据这些PCR,可以知道在其中记有PCR的信息包的MPEG解码器3中的预测到达时间。
8位TS信息包数据和TS信息包时钟作为传输速率调整设备2和MPEG解码器3之间的接口。MPEG解码器3使用记在由传输速率调整设备2所供应的MPEG2-TS的备用字段中的PCR以便在包括有VCXO 4的PLL电路中重新生成系统时钟,并且将所重新生成的系统时钟供应给传输速率调整设备2。由PLL电路所重新生成的系统时钟与数据发送端的设备的系统时钟相匹配。
图3所示的缓存写入单元5的组成包括PCR间信息包数测量单元9、PCR检测单元10、前级PCR存储单元11、PCR差值计算单元12和缓存写入控制单元13。从MPEG2-TS文件1中读出的MPEG2-TS被供应给每一个PCR间信息包数测量单元9、PCR检测单元10和缓存写入控制单元13。
PCR检测单元10检查对于作为MPEG2-TS进行供应的每一个TS信息包,是否已将PCR记在备用字段中。当记有PCR时,PCR检测单元10获得PCR的值。
PCR间信息包数测量单元9从其中记有PCR的信息包直到到达其中记有下一个PCR的信息包之前为止,测量在该期间的信息包数来作为PCR间信息包数。当PCR检测单元10检测到下一个PCR时,PCR间信息包数测量单元9将当前测量值重置为“0”。
前级PCR存储单元11保持已经由PCR检测单元10获得的PCR值,直到检测到下一个PCR为止。PCR差值计算单元12对已经由PCR检测单元10获取的PCR值和已经由PCR检测单元10获取并且被存储在前级PCR存储单元11中的前级PCR的PCR值之差进行计算。在PCR间信息包数测量单元9中测量的PCR间信息包数,在PCR差值计算单元12中计算的PCR差值,以及存储在前级PCR存储单元11中的前级PCR值作为增补信息都被供应给缓存写入控制单元13。
缓存写入控制单元13以TS信息包为单元,将已经从MPEG2-TS文件1中读出的MPEG2-TS写入到缓存6中。当将其中记有PCR的信息包写入到缓存6时,缓存写入控制单元13将存储在前级PCR存储单元11中的PCR,已经在PCR间信息包数测量单元9中测量的PCR间信息包数,以及已经在PCR差值计算单元12中计算的PCR差值作为其中已经记有前级PCR的信息包的增补信息写入到缓存6。
图4给出了存储在缓存6中的信息包和增补信息的示意性表示。在该例中,TS信息包T0、T1、T2、...、Tn、Tn+1、Tn+2、...、Tm、Tm+2、...按照所列顺序存储在缓存6中。TS信息包T0、Tn和Tm是其中记有PCR的TS信息包,并且增补信息被附在这些TS信息包的每一个上。TS信息包T0的增补信息包括已经在PCR间信息包数测量单元9中测量的TS信息包T0和Tn的PCR间信息包数,已经在PCR差值计算单元12中计算的TS信息包T0和Tn的PCR差值,以及存储在前级PCR存储单元11中的TS信息包T0的PCR值。这样,在供应其中记有下一个PCR的信息包时获取的增补信息与其中记有PCR的信息包一起存储起来。
图3所示的缓存读取单元7是用于从缓存6中读取TS信息包的设备,它包括时钟频分单元14、缓存读取控制单元15、PCR差值补偿单元16、传输速率计算单元17、插入的NULL信息包数/后续的PCR补偿量计算单元18、PCR补偿量存储单元19、PCR补偿单元20、PCR重写单元21、NULL信息包插入控制单元22、NULL信息包生成单元23、NULL信息包插入单元24和信息包传输单元25。
为时钟频分单元14和传输速率计算单元17供应频分率输入信号26。时钟频分单元14对由频分率输入信号26所决定的频分率所供应的作为VCXO 4的输出的MPEG解码器3的27MHz系统时钟进行频分,并且将经过频分的时钟作为传送流的接口时钟(TS时钟)供应给MPEG解码器3。
缓存读取控制单元15从缓存6中依序读取TS信息包,并且将TS信息包供应给PCR重写单元21。缓存读取控制单元15读取其中已将PCR和TS信息包一同记录的TS信息包的增补信息(PCR值、PCR间信息包数以及PCR差值)。在已经读取的增补信息中,PCR差值被供应给PCR差值补偿单元16,PCR间信息包数被提供给插入的NULL信息包数/后续的PCR补偿量计算单元18,并且PCR值被提供给PCR补偿单元20。
PCR差值补偿单元16将存储在PCR补偿量存储单元19中的PCR补偿量补偿给由缓存读取控制单元15供应的PCR差值。传输速率计算单元17根据由频分率输入信号26所决定的频分率来计算到MPEG解码器3的传输速率。例如,当频分率为4时,TS时钟为6.75MHz,或27MHz频率的1/4。作为信息包传输单元25的输出的TS数据是8位,并且因此计算出到MPEG解码器3的传输率为54Mbps(=6.75MHz×8位)。
插入的NULL信息包数/后续的PCR补偿量计算单元18根据已经由缓存读取控制单元15所提供的PCR间信息包数,已经由PCR差值补偿单元16所补偿的PCR差值,以及已经由传输速率计算单元17所计算的传输率,来计算应该插入的NULL信息包数,以使已经从缓存6中读取的传送流的传输速率与已经由传输速率计算单元17计算得到的传输速率相匹配,并且计算后续PCR补偿量,以用于补偿仅通过插入NULL信息包无法实现调整的局部,其中所述后续PCR补偿量用于补偿其中记有后续PCR的信息包的PCR值。
PCR补偿量存储单元19对已经通过插入的NULL信息包数/后续的PCR补偿量计算单元18计算的后续PCR补偿量进行存储。PCR补偿单元20根据存储在PCR补偿量存储单元19内的PCR补偿量对由缓存读取控制单元15提供的PCR进行补偿。对于其内记录了PCR的并且已经由缓存读取控制单元15提供的信息包而言,PCR重写单元21将这些信息包内记录的PCR重写为已经通过PCR补偿单元20进行补偿后的PCR。
NULL信息包插入控制单元22根据由插入的NULL信息包数/后续的PCR补偿量计算单元18所计算的所插入NULL信息包数和已经被缓存读取控制单元15所读取的PCR间信息包数,来确定NULL信息包的插入间距和插入数,并且将表明待插入的NULL信息包的定时的插入信号作为输出进行供应。
NULL信息包生成单元23生成NULL信息包,其用于插入到已经由缓存读取控制单元15所读取的传送信息包中,以调整传输速率。NULL信息包插入单元24根据由NULL信息包插入控制单元22所供应的作为输出的插入信号,将已经由NULL信息包生成单元23所生成的NULL信息包插入到已经由缓存读取控制单元15进行读取的TS信息包之间。信息包传输单元25将其中已经由NULL信息包插入单元24插入了NULL信息包的信息包以作为8位TS数据的TS时钟发送到MPEG解码器3。
在本实施例的传输速率调整设备2中,缓存读取单元7通过将NULL信息包插入MPEG2-TS并且根据由缓存写入单元5获取的增补信息重写PCR,来调整传输速率。
图5用于解释传输速率的调整。原始传送流是已经从MPEG2-TS文件1中读出的MPEG2-TS,并且包括有多个TS信息包TS0、TS1、TS2、TS3、TS4、TS5、...。PCR0被记在TS信息包TS0的备用字段中。PCR1被记在TS信息包TS4的备用字段中。在该原始传送流中的PCR0和PCR1是时间间隔信息,用于重新生成在MPEG解码器3的STC中进行编码时所用的标准时间间隔,并且PCR0和PCR1与图5中的时间轴上的时间间隔没有关系。
在如图5所示的其中已经插入了NULL信息包的传送流中,NULL信息包被NULL信息包插入单元24插入到原始传送流的每一个信息包之间。在图5中,其中已经插入了NULL信息包的传送流当以接口的传输速率被发送到MPEG解码器3时,被描述在时间轴上。
在NULL信息包插入单元24中,NULL信息包被插入在TS信息包之间,使得原始传送流中分别记在信息包TS0和TS4中的PCR0和PCR1与时间轴上的PCR0和PCR1相匹配。不过,当在传输速率计算单元17计算的传输速率不是从MPEG2-TS文件1中读取的MPEG2-TS的传输速率的整数倍时,如果使在信息包TS4中记录的PCR1的时间轴上的位置为t1,如图5所示,则该t1的位置不与PCR1在时间轴上的原始位置相匹配。如果其中t1的位置不与时间轴上PCR1的原始位置相匹配的传送流被作为TS数据8而不加改变地发送到MPEG解码器3,则系统时钟无法在MPEG解码器3中准确地重新生成,因此STC计数就不准确。
当无法仅通过如上所述插入NULL信息包来调整传输速率时,PCR补偿量根据将PCR0和PCR1的差值除以位于PCR0和PCR1之间的TS信息包和NULL信息包的信息包时间长度之和所产生的余数(片段)来进行计算,以使记在信息包TS4中的PCR1与时间轴上的位置t1相匹配,并且PCR1的值根据所计算的PCR补偿量进行重写。这样,可以使从MPEG2-TS文件1中读取的MPEG2-TS的传输速率与在传输速率计算单元17中计算的传输速率相一致。
PCR补偿的计算的一个实际示例如下所述。
首先假定PCR0的值为“0”,PCR1的值为“20”,TS信息包时间长度(等于NULL信息包时间长度)为“3”,并且在原始传送流中的PCR0和PCR1之间的TS信息包数为“4”。在这种情况下,总TS信息包时间长度为12(=3×4)。在这种情况下,当将其中已经插入了NULL信息包的MPEG2-TS供应给MPEG解码器3时,PCR1的时间位置为“12”,这与所记的时间间隔“20”不一致。
通过插入NULL信息包来校正不够长的时间间隔。不够长的时间间隔是通过从所记的时间“20”中减去TS信息包的总时间长度“12”而得到的值“8”;并且可以在不够长时间间隔这一部分中插入两个NULL信息包。在这种情况下,两个NULL信息包的总时间长度为“6”,从而通过两个NULL信息包来补偿不够长时间间隔“8”这一部分的时间间隔“6”。不过,剩余的时间间隔“2”无法通过信息包时间长度为“3”的NULL信息包来补偿。
考虑在其中已经插入了两个NULL信息包的传送流中的PCR1的时间位置,将两个NULL信息包的时间长度“6”添加到总的TS信息包时间长度“12”得到“18”,并且该“18”与所记的时间“20”不同。在该时间中PCR1的时间“18”的位置是在如图5所示的时间轴上的t1位置。在本实施例中,其中已经插入了NULL信息包的传送流的PCR1的值从PCR1“20”的原始位置被重写到t1“18”的时间轴上。
图6表示用于在缓存读取单元7中执行的PCR补偿的系列处理进展的示意图。参考图6,首先根据作为PCR0的增补信息被读取的PCR差值和PCR间信息包数,在缓存读取单元7中计算出当重写下一个PCR1以用于调整片段时,待插入的NULL信息包数和PCR补偿量。然后,根据所计算的PCR补偿量来重写下一个PCR1的值。对紧随PCR1的增补信息执行相同的计算,并且重写下一个PCR的值。
下面来对本实施例的传输速率调整设备2的操作进行解释。
首先来解释缓存写入单元5的操作。在缓存写入单元5中,缓存写入控制单元13将从MPEG2-TS文件1所读取的传送信息包连续写入到缓存6,只要其中有空间的话,并且PCR检测单元10同时检测和获取记在传送流的备用字段中的PCR。
当通过PCR检测单元10检测第一PCR时,在该检测时刻PCR间信息包数测量单元9被重置,并且由PCR检测单元10所检测的第一PCR被存储在前级PCR存储单元11中。被重置的PCR间信息包数测量单元9测量其中记有PCR的信息包到在其中记有下一个PCR的信息包之前的信息包之间的信息包数,来作为PCR间信息包数。
当通过PCR检测单元10检测第二PCR时,PCR差值计算单元12根据由PCR检测单元10检测的第二PCR和存储在前级PCR存储单元11中的前级PCR来计算PCR差值。缓存写入控制单元13然后将由PCR差值计算单元12计算的PCR差值,由PCR间信息包数测量单元9测量的PCR间信息包数,以及存储在前级PCR存储单元11中的PCR,作为其中记有第一PCR的信息包的增补信息写入到缓存6中。
对于第三和后续的PCR,每次由PCR检测单元10检测PCR时,重复如上所述用于检测第二PCR的相同操作。因此,已经从MPEG2-TS文件1中读取的TS信息包被依次存储在缓存6中,并且增补信息被添加到其中记有PCR的TS信息包中,其中增补信息包括PCR间信息包数,也就是从当前PCR到下一个PCR之间的信息包数;PCR差值,也就是当前PCR和下一个PCR之间的差值;以及当前PCR的值。
下面来解释缓存读取单元7的操作。
当检测到第二PCR并且增补信息(PCR间信息包数,PCR差值,以及PCR值)被添加到其中记有第一PCR并且被缓存写入控制单元5存储在缓存6中的信息包中时,缓存读取控制单元15开始从缓存6中读取信息包。
在初始状态时,将“0”作为补偿量存储在PCR补偿量存储单元19中。结果,针对从缓存6中与其中记有第一PCR的信息包一起读出的增补信息的PCR值和PCR差值,没有执行由PCR补偿单元20和PCR差值补偿单元16所作的补偿。另外,PCR重写单元21将其中记有第一PCR的信息包的PCR重写为与该PCR相同的值,并且将该值提供给NULL信息包插入单元24。
在通过缓存读取控制单元15从缓存6中读出其中记有下一个PCR的信息包之前,插入的NULL信息包数/后续的PCR补偿量计算单元18计算应该被插入的已插入NULL信息包数,并且进而计算用于补偿后续PCR的值的后续PCR补偿量,以用于补偿无法被NULL信息包调整的片段量。该后续PCR补偿量被存储在PCR补偿量存储单元19中。
在计算后续PCR补偿量之后,NULL信息包插入控制单元22根据插入的NULL信息包数和PCR间信息包数来判断NULL信息包的插入位置,并且NULL信息包插入单元24在由PCR重写单元21供应的信息包之间插入已经由NULL信息包生成单元23生成的NULL信息包。其中已经插入了NULL信息包的传送流被作为8位TS数据,以由时钟频分单元14供应的TS时钟来从信息包传输单元25供应给MPEG解码器3。
当从缓存6中读出其中记有第二和后续PCR的信息包时,根据存储在PCR补偿量存储单元19中的后续PCR补偿量,PCR补偿单元20补偿作为增补信息被读取的PCR值,并且PCR差值补偿单元16补偿作为增补信息被读取的PCR差值。PCR重写单元21然后将其中记有PCR并且从缓存6中读取的信息包的PCR值重写为被PCR补偿单元20所补偿的PCR值,并且将结果供应给NULL信息包插入单元24。
其中已经通过PCR重写单元21将PCR重写为经过补偿的PCR的TS信息包被发送到NULL信息包插入单元24。插入的NULL信息包数/后续的PCR补偿量计算单元18计算应该被插入的已插入NULL信息包数和用于补偿无法被NULL信息包所调整的片段量的后续PCR补偿量,直到从缓存6中读出下一个其中记有PCR的信息包为止。接着,NULL信息包插入控制单元22根据插入的NULL信息包数和PCR间信息包数来判断插入位置,并且NULL信息包插入单元24将已经由NULL信息包生成单元23生成的NULL信息包插入到由PCR重写单元21所供应的信息包之间。由信息包传输单元25以由时钟频分单元14所供应的TS时钟,将其中插入了NULL信息包的传送流作为8位TS数据供应给MPEG解码器3。
根据前述解释中所讲述的本实施例的传输速率调整设备,通过使用通过对MPEG解码器3的系统时钟进行频分所获得的TS时钟来作为与MPEG解码器3的接口时钟,通过在MPEG2-TS的信息包之间插入NULL信息包来调整根据在MPEG2-TS内记有的PCR间的字节数来计算的传输速率,以便传输速率与由接口时钟所决定的接口传输速率相匹配,并且进而,通过对无法只通过插入NULL信息包来实现调整的片段量重写PCR值,可以以正确的传输速率来将已经从MPEG2-TS文件1读取的MPEG2-TS发送到MPEG解码器3,而不必通过使用PLL电路来重新生成时钟。
另外,在MPEG2-TS的信息包之间均一插入NULL信息包,能够抑制MPEG解码器3中的缓存溢出。下面来对起到这些作用的原因的进行更加具体的解释。
图7示出了MPEG解码器的示意性结构。参考图7,该MPEG解码器包括开关单元200、传送缓存201a-201c、视频缓存202a、音频缓存202b、系统缓存202c、视频解码器203a、音频解码器203b和系统解码器203c。每一个传送缓存201a-201c的容量是512字节。
开关单元200将由如图3所示的传输速率调整设备2以TS数据进行供应的传送流作为输入,并且根据信息包的报头中的PID(信息包识别信息),将作为输入所接收的传送流分离成视频数据、音频数据和系统信息的传送信息包。另外,根据PID(信息包识别信息),开关单元200确定在输入的传送流中的NULL信息包,并且除去NULL信息包。
已经被开关单元200分离的视频数据的传送信息包经由传送缓存201a被存储在视频缓存202a中,并且然后被视频解码器203a解码。这里,从传送缓存201a将数据读取至视频缓存202a的速度为1.2×Rmax。Rmax是由MPEG类和级(profile and level)所决定的比特率的上限。在主类/主级的情况下,数据读取速度是15Mbps。
已经被开关单元200分离的音频数据的传送信息包经由传送缓存201b被存储在音频缓存202b中,并且然后被音频解码器203b解码。这里,从传送缓存201b到音频缓存202b的数据读取速度为2Mbps。
已经被开关单元200分离的系统信息的传送信息包经由传送缓存201c被存储在系统缓存202c中,并且然后被系统解码器203c解码。这里,从传送缓存201c到系统缓存202c的数据读取速度为1Mbps。
在上述结构的MPEG解码器中,当输入到传送缓存的数据的比特率超过传送缓存的读取速率时,在传送缓存中会发生溢出。
被作为输入应用于传送缓存的数据的比特率根据在传输速率调整设备2中插入NULL信息包的方法而改变。例如,如果在传输速率调整设备2中将NULL信息包作为组在PCR间最后一个TS信息包之后进行插入,则在发送所有TS信息包之后发送NULL信息包。在这种情况下,TS信息包的传输速率是在调整之后传送流的传输速率(由图3所示的信息包传输单元25供应作为输出的传送流的传输速率)。可选情况下,如果在PCR间TS信息包之间插入NULL信息包,则NULL信息包与TS信息包交替传输。在这种情况下,TS信息包的传输速率低于经过调整之后的传送流的传输速率。当在每一个TS信息包之间插入的NULL信息包数改变时,则TS信息包在几乎没有所插入NULL信息包的部分中的传输速率高于它在具有许多所插入NULL信息包的部分中的传输速率。结果,在视频和音频流的比特率中出现比特率较快的部分和比特率较慢的部分。
在如图3所示的结构中,当在从MPEG2-TS文件1中读取的MPEG2-TS的传输速率和调整之后的传输速率(由图3所示的信息包传输单元25供应作为输出的传送流的传输速率)之间出现较大差别时,当在其中NULL信息包作为组被插入到PCR间TS信息包末尾的情况下,以及当在每一个TS信息包之间插入的NULL信息包数改变的情况下,作为输入被施加到传送缓存的数据的比特率将超过读取传送缓存的速率。在每一个TS信息包之间均一插入NULL信息包可以解决这一问题。
下面来解释在本实施例的传输速率调整设备中实施的在每一个TS信息包之间均一插入NULL信息包的方法。
第一NULL信息包插入方法MPEG解码器3的接口为8位,并且具有通过对MPEG解码器3的系统时钟进行频分而得到的时钟(27MHz),并且由信息包传输单元25供应作为输出的传送流(TS数据)的传输速率因此用“27MHz/频分率×8位”来表示,并且根据频分率来假定图8所示的值。例如,当频分率为“1”时,传输速率为“216Mbps”。
插入的NULL信息包数/后续的PCR补偿量计算单元18根据PCR间时间差(PCR差)来计算调整之后的PCR间TS信息包数和已经由传输速率计算单元17计算的调整之后传输速率,并且然后根据这些计算结果来计算应该插入的NULL信息包数。调整之后的PCR间TS信息包数是由[PCR间时间差/(188/调整之后的传输速率)]来给定的。应该插入的NULL信息包数是由[(PCR间TS信息包数)-(PCR间时间差/(188/转换之后的传输速率))]来给定的。
如下所述NULL信息包插入控制单元22接下来控制NULL信息包在NULL信息包插入单元24中的插入。首先根据PCR间TS信息包数和在PCR间插入的NULL信息包数来计算[NULL信息包数/TS信息包数]的商。然后针对每一个TS信息包,将与已经计算出来的商相对应的数量的NULL信息包进行插入。然后,针对[TS信息包+为每一个TS信息包插入的NULL信息包],均一插入与[NULL信息包数/TS信息包数]的余数相对应的数量的NULL信息包。
更为具体地说,当为五个TS信息包插入七个NULL信息包时,为每一个TS信息包插入的NULL信息包数是[NULL信息包数/TS信息包数]的商,也就是“7/5”的商(=1)。应该均一插入的其余NULL信息包是[NULL信息包数/TS信息包数]的余数,也就是“7/5”(=2)。在这种情况下,根据基于“7/5”的商的NULL信息包插入处理,将一个NULL信息包插入在如图9所示存在于PCR之间的第一至第五个TS信息包中的每一个之间,并且根据基于“7/5”的余数的NULL信息包插入处理,将一个NULL信息包进一步插入在第三和第四TS信息包之间以及PCR间隔的末尾。
由于调整之前和之后的传输速率之间的关系,即使基于[NULL信息包数/TS信息包数]的余数的NULL信息包插入没有利用平均数来执行,但是通过根据[NULL信息包数/TS信息包数]的商,对于每个TS信息包平均插入NULL信息包也可以抑制传送缓存中的溢出。
第二NULL信息包插入方法插入的NULL信息包数/后续的PCR补偿量计算单元18也可以找到NULL信息包的平均插入间距,并且NULL信息包插入控制单元22可以根据NULL信息包的平均插入间距来控制NULL信息包在NULL信息包插入单元24中的插入。当NULL信息包的平均插入间距是由例如[TS信息包/{(NULL信息包数/TS信息包数)的余数}]给定的,平均插入间距的值一般为小数。针对[(TS信息包)+(为每一个TS信息包插入的NULL信息包)],将NULL信息包以以下这些值进行插入,平均插入间距的值(小数),整数部分的值(第一插入间距)和通过将作为插入间距的该值加“1”而获得的值(第二插入间距)。换句话说,如果插入间距为“2”,则针对两个[(TS信息包)+(为每一个TS信息包插入的NULL信息包)]插入一个NULL信息包。
更为具体地说,NULL信息包的插入是通过下述过程来执行的。
(1)首先,在第一和第二插入间距中,使用较大的插入间距,从而对于等于该插入间距值的TS信息包数,插入一个NULL信息包。
(2)找到该点的平均插入间距。这是所述第一插入,因此平均插入间距是[((1)的插入间距)/1]。
(3)如果在之前的情况(2)中找到的平均插入间距大于前级NULL信息包的平均插入间距,则插入间距被设置为第一和第二平均插入间距中的较小一个。如果之前示例中的平均插入间距小于或等于NULL信息包的平均插入间距,则插入间距被设置为第一和第二平均插入间距中的较大一个。
(4)在等于(3)中确定的插入间距数的TS信息包数中插入一个NULL信息包。
(5)找到该点的平均插入间距。处理然后返回到(3),并且重复NULL信息包的插入,直到[NULL信息包数/TS信息包数]的余数为止。
下面来解释上述处理的具体示例。
例如,在其中在10个TS信息包中插入7个NULL信息包的情况下,NULL信息包的平均插入间距为“10/7=1.429”。在这种情况下的插入间距是第一插入间距的整数部分“1”和其中将“1”添加到第一插入间距的第二插入间距“2”。
在上述步骤(1)中,首先将较大的第二插入间距“2”作为插入间距,并且将一个NULL信息包插入到两个TS信息包中。在上述步骤(2)中,找到该点的平均插入间距。在这种情况下,平均插入间距为“2/1=2.000”。
接下来,在上述(3)的步骤中,之前的平均插入间距“2.000”大于NULL信息包“1.429”的平均插入间距,并且因此将该插入间距作为较小的第一插入间距“1”。在上述(4)的步骤中,在一个TS信息包中插入一个NULL信息包。
在上述(5)的步骤中,找到该点的平均插入间距。在这种情况下,平均插入间距为“3/2=1.5”。在上述(3)的步骤中,之前的平均插入间距“1.5”大于NULL信息包“1.429”的平均插入间距,并且因此将插入间距设置为较小的第一插入间距“1”。在上述(4)的步骤中,在一个TS信息包中插入一个NULL信息包。
在上述步骤(5)中,接下来找到该点的平均插入间距。在这种情况下,平均插入间距为“3/2=1.333”。由于上述步骤(3)中的之前平均插入间距“1.333”小于NULL信息包“1.429”的平均插入间距,因此接下来将插入间距设置为大于第一插入间距“2”。接下来,在上述步骤(4)中,将一个NULL信息包插入到两个TS信息包中。
接下来,在上述步骤(5)中,找到该点的平均插入间距。在这种情况下,平均插入间距为“3/2=1.500”。因此,以同样方式依次插入NULL信息包。
图10示出了作为NULL信息包插入目标的TS信息包数,插入的NULL信息包数,总TS信息包,总NULL信息包,以及根据上述过程的平均插入间距的各数值的变化。从图10中可以看出,开始时对于两个TS信息包插入一个NULL信息包。此时总的TS信息包为“2”,总的NULL信息包为“1”,并且平均插入间距为“2.00”。接下来,将一个NULL信息包插入一个TS信息包。此时总的TS信息包为“3”,总的NULL信息包为“2”,并且平均插入间距为“1.5”。重复这一系列处理。
接下来,解释在第二NULL信息包插入方法中的NULL信息包插入的示例。
由频分率输入信号26所给定的频分率假定为“8”,并且信息包传输单元25发送给MPEG解码器3的TS数据的传输速率假定为27Mbps。
在其中假定MPEG2-TS文件1的类为主类,并且其级假定为主级的情况下,作为输入施加到如图7所示的传送缓存201a的视频数据比特率的上限为15Mbps。从传送缓存201a读取视频数据的速率为18Mbps(1.2×15Mbps)。
从MPEG2-TS文件1读取的MPEG2-TS包含一个视频流和一个音频流。视频流的比特率为14Mbps,并且音频流的比特率为448kbps。所读取的MPEG2-TS的传输速率为15Mbps。所读取的MPEG2-TS的PCR间时间差为90.24ms,并且PCR之间的信息包数为900。
调整之后的TS信息包时间长度为“188/27Mbps=55.704μs”。调整之后的PCR间信息包数为[PCR差值/(转换之后的TS信息包时间长度)=90.24ms/55.704μs=1620]。因此,待插入的信息包数为“1620-900=720”。在这种情况下,720个NULL信息包被插入到PCR之间的900个TS信息包中。
首先来考虑其中将720个NULL信息包作为一组插入在900个TS信息包之后的情况。在这种情况下,视频流的比特率为15Mbps×27Mbps/15Mbps=25.2Mbps并且音频流的比特率为448kbps×27Mbps/15Mbps=806.4kbps视频流超出传送流被读取的速率18Mbps,并且视频的传送缓存201a失去作用。
下面来考虑其中在TS信息包之间均一插入NULL信息包的情况。针对基于PCR间TS信息包数和在PCR间待插入的NULL信息包数的每一个TS信息包,待插入NULL信息包数为[NULL信息包数/TS信息包数]的商,也就是“720/900=0”的商。因此,根据[NULL信息包数/TS信息包数]的余数(=720)均一插入NULL信息包。
TS信息包数与NULL信息包数之比为“900∶720=5∶4”,并且结果,对于每五个TS信息包,插入四个NULL信息包。在这种情况下,NULL信息包的平均插入间距为“900/720=1.25”,因此插入间距为作为该平均插入间距的整数部分的“1”,以及通过将“1”添加到这个“1”上得到的“2”。因此,根据第二NULL信息包插入方法,对于两个TS信息包插入一个NULL信息包,或者对于一个TS信息包插入一个NULL信息包。
图11示出了作为NULL信息包插入目标的TS信息包数,插入的NULL信息包数,总的TS信息包,总的NULL信息包,以及根据上述过程的平均插入间距的各数值的变化。从图11中可以看出,对于两个TS信息包插入一个NULL信息包。总的TS信息包为“2”,总的NULL信息包为“1”,并且平均插入间距为“2.00”。接下来,将一个NULL信息包插入一个TS信息包。此时总的TS信息包为“3”,总的NULL信息包为“2”,并且平均插入间距为“1.5”。重复这一系列处理,以便NULL信息包基本上被均一地插入到每一个TS信息包之间。
在上述情况下,视频的传送缓存201a的读取速率为18Mbps(=1.2×15Mbps)并且传输速率为27Mbps,从而在其中将一个TS信息包(188字节)作为输入施加到传送缓存201a的间隔期间,从传送缓存201a中读取的数据量为“18Mbps/27 Mbps×188字节=125.3字节”。
图12示出了当如上所述基本上均一插入了NULL信息包时,存储在传送缓存201a中的数据量改变,并且图13示出了传送缓存201a中的数据量转换。从图12和图13可以看出,存储在传送缓存201a中的数据量不超过512字节,这是缓存的容量,并且因此视频的传送缓存201a不会失效。
在前述解释中,拿视频传送缓存201a作为示例对抑制缓存失效的原因进行了解释,但是本发明也可以抑制音频传送缓存的缓存失效。
优选情况下,被插入到从缓存读取的传送信息包中的每一个信息包间的NULL信息包数之间的差值位于1的限值内。将NULL信息包数的差值限制在1以内,可以使传送缓存的限制更加可靠。
从上述解释可以看出,通过在从缓存中读取的传送信息包之间均一插入NULL信息包,则本实施例的传输速率调整设备可以抑制MPEG解码器3中的传输缓存的失效。
相比之下,在前面讲述的专利文献1中公开的设备中,在调整之前和之后的传输速率之差不大,并且结果,视频传送缓存的读取速率为流比特率的上限的1.2倍,并且音频传送缓存的读取速率为流比特率的4倍或大于其上限(2Mbps/448kbps),即便当NULL信息包作为一组被插入到PCR间的间隔末端时。因此,在其中例如将25Mbps的传输速率转换为27Mbps的传输速率的情况下,转换比为1.08,并且不会发生视频和音频传送缓存的失效。换句话说,即便当视频流位于上限并且音频流位于上限448kbps时,读取速率也不会超出。
另外,在专利文献1中公开的设备中,PCR每100ms进入一次,这意味着以25Mbps的传输速率时,大约1662个字节(100ms/(188字节/(25Mbps/8))的信息包进入PCR之间的传送缓存。以27Mbps的传输速率时,这些信息包在92ms(1 00ms/1.08)内进入传送缓存。换句话说,以25Mbps的传输速率时,大约1538(1662/1.08)个字节的信息包在92ms内进入传送缓存;但是以27Mbps的传输速率进入传送缓存的信息包仅有大约1662字节,从而不会发生传送缓存的失效。
从前述解释中可以看出,在专利文献1中公开的设备中,调整之前和之后的传输速率之差假定不是特别大,并且因此根据NULL信息包的插入方法,难以预测MPEG解码器的传送缓存失效问题的发生。因此,根据专利文献1的公开内容,难以获得通过实施NULL信息包的均一插入可以抑制传送缓存失效这一技术概念,这是本发明的一个作用。
NULL信息包的均一插入并不意味着插入在TS信息包之间的NULL信息包数就与每一个TS信息包之间插入的NULL信息包数相同。例如,正如在第一和第二NULL信息包插入方法中所解释的,当通过其中首先在TS信息包之间一次插入一个NULL信息包,然后对其余的NULL信息包进行分割和插入,以使得对于其中已经插入了NULL信息包的TS信息包来说时间长度是均一的这一方法来插入NULL信息包时,插入在TS信息包之间的NULL信息包数就不是与每一个TS信息包之间插入的信息包数相同。结果,在本发明中,当已经均一地插入了NULL信息包时,TS信息包间的NULL信息包数可以相同或不同,只要这些数位于不造成MPEG解码器的传送缓存失效的范围内。
进而,尽管已经对其中TS信息包和NULL信息包都是188字节的情况进行了解释,本发明并不限于这一形式,并且信息包可以是其他固定长度(例如,信息包可以是204字节)。
尽管已经使用专业术语讲述了本发明的实例实施例,这种讲述只是用于解释性目的,并且应该理解,不偏离所附权利要求的精神主旨或范围,可以对其进行修订和更改。
进而,申请人的目的是包括所有权利要求的等价物,并且对本应用中的任何权利要求进行的补充都应被解释为是对其拥有所补充权利要求的任何等价物或特征的利益或权利的权利要求。
权利要求
1.一种传输速率调整设备,用于调整所输入的传送流的传输速率,该传输速率调整设备将由具有固定信息包长度的多个传送信息包组成的传送流作为输入,其中所属信息包中存储有已编码数据并且以固定时间间隔记录了在所述编码期间作为标准时间间隔的规定频率的时间戳,所述传输速率调整设备包括缓存;缓存写入单元,将所述输入传送流的传送信息包连续写入到所述缓存,并且检测所述输入传送流中的时间戳;以及缓存读取单元,将指定频分率的频分率信号和用于对所述已编码数据进行解码的解码器的系统时钟作为输入,并且以由输入的频分率信号所指定的频分率来对输入的系统时钟进行频分所获得的时钟所决定的传输速率将已经从所述缓存中依序读出的传送信息包发送到所述解码器;其中在当检测所述时间戳时,所述缓存写入单元将下述内容作为其中记有第二时间戳的传送信息包的增补信息存储在所述缓存中此次被检测的第一时间戳和之前被检测的所述第二时间戳之差,在第一和第二时间戳之间间隔中的传送信息包数,以及所述第二时间戳的值;并且当从所述缓存中读出其中记有所述第二时间戳的传送信息包时,所述缓存读取单元根据附在传送信息包上的所述增补信息,在已经从所述缓存中读出的传送信息包之间插入NULL信息包以实现调整,使得以所述传输速率来发送所述传送信息包,并且当仅通过插入NULL信息包无法实现调整时,当从所述缓存中读取其中记有所述第一时间戳的传送信息包时,重写该传送信息包的时间戳。
2.如权利要求1所述的传输速率调整设备,其中所述缓存读取单元在已经从所述缓存中读取的传送信息包间均一插入所述NULL信息包。
3.如权利要求2所述的传输速率调整设备,其中所述缓存读取单元,根据所述第一和第二时间戳之差和由通过频分所述输入系统时钟所获得的时钟所决定的传输速率计算传输速率调整之后的所述第一和第二时间戳之间的传送信息包数,并且根据计算结果,计算应该被插入的NULL信息包数;并且当通过将所计算的NULL信息包数除以所计算的传送信息包数的计算结果包含有商和余数时,对于从所述缓存中读取的每一个传送信息包,插入对应于所述商的NULL信息包数;并且进而,在其中插入了所述NULL信息包的状态下,均一插入对应于所述余数的NULL信息包数。
4.如权利要求2所述的传输速率调整设备,其中所述缓存读取单元,根据所述第一和第二时间戳之差和由通过频分所述输入系统时钟所获得的时钟所决定的传输速率计算传输速率调整之后的所述第一和第二时间戳之间的传送信息包数,并且根据计算结果,计算应该被插入的NULL信息包数;当通过将所计算的应该插入的NULL信息包数除以所计算的位于所述第一和第二时间戳之间的传送信息包数所获得的标准平均插入间距为小数时,将整数部分的值作为第一插入间距,并且通过将该值加“1”而获得的值作为第二插入间距;并且,根据在插入了NULL信息包之后的NULL信息包的平均插入间距和所述标准插入间距的大小关系,在所述第一和第二插入间距之间进行选择,并且按照所选插入间距的值的数的传送信息包的每一个,插入一个NULL信息包。
5.如权利要求1至4中的任何一个所述的传输速率调整设备,其中已经在从所述缓存读取的传送信息包的每一个信息包间插入的NULL信息包数间所述差值为1或更小。
6.一种传输速率调整方法,用于调整包括有多个具有固定长度传送信息包的传送流的传输速率,其中所述信息包中存储有已编码数据并且以固定时间间隔记录了在所述编码期间作为标准时间间隔的规定频率的时间戳,所述传输速率调整方法包括将所述传送流的传送信息包连续写入缓存;并且通过由从外部供应的频分率信号所指定的频分率来对用于对所述已编码数据进行解码的解码器的系统时钟进行频分,并且以由经过频分的系统时钟所确定的传输速率来将依次从所述缓存中读取的传送信息包发送到所述解码器,所述方法进一步包括在将传送信息包写入到所述缓存中检测所述传送流中的时间戳;并且在当检测所述时间戳时,将下述内容作为其中记有第二时间戳的传送信息包的增补信息存储在所述缓存中此次被检测的第一时间戳和之前被检测的所述第二时间戳之差,在第一和第二时间戳之间间隔中的传送信息包数,以及所述第二时间戳的值;在将传送信息包发送到所述解码器中当从所述缓存中读出其中记有所述第二时间戳的传送信息包时,根据附在传送信息包上的所述增补信息,在已经从所述缓存中读出的传送信息包之间插入NULL信息包以实现调整,使得以所述传输速率来发送所述传送信息包;并且当仅通过插入NULL信息包无法实现调整时,当从所述缓存中读取其中记有所述第一时间戳的传送信息包时,重写该传送信息包的时间戳。
7.如权利要求6所述的传输速率调整方法,其中,在将传送信息包发送到所述解码器中,所述NULL信息包被均一插入到从所述缓存中读取的传送信息包之间。
8.如权利要求7所述的传输速率调整方法,在所述NULL信息包的均一插入中根据所述第一和第二时间戳之差和由通过频分所述输入系统时钟所获得的时钟所决定的传输速率,计算传输速率调整之后的所述第一和第二时间戳之间的传送信息包数,并且根据计算结果,计算应该被插入的NULL信息包数;并且当通过将所计算的NULL信息包数除以所计算的传送信息包数的计算结果包含有商和余数时,对于从所述缓存中读取的每一个传送信息包,插入对应于所述商的NULL信息包数;并且进而,在其中插入了所述NULL信息包的状态下,均一插入对应于所述余数的NULL信息包数。
9.如权利要求7所述的传输速率调整方法,其中,在所述NULL信息包的所述均一插入中根据所述第一和第二时间戳之差和由通过频分所述输入系统时钟所获得的时钟所决定的传输速率,计算传输速率调整之后的所述第一和第二时间戳之间的传送信息包数,并且根据计算结果,计算应该被插入的NULL信息包数;并且当通过将所计算的应该插入的NULL信息包数除以所计算的位于所述第一和第二时间戳之间的传送信息包数所获得的标准平均插入间距为小数时,将整数部分的值作为第一插入间距,并且通过将该值加“1”而获得的值作为第二插入间距;并且,根据在插入了NULL信息包之后的NULL信息包平均插入间距和所述标准插入间距的大小关系,在所述第一和第二插入间距之间进行选择,并且按照所选插入间距的值的数的传送信息包,插入一个NULL信息包。
10.如权利要求7至9中的任何一个所述的传输速率调整方法,其中已经在从所述缓存读取的传送信息包的每一个信息包间插入的NULL信息包数间所述差值为1或更小。
全文摘要
一种传输速率调整设备,用于以期望传输速率来供应MPEG-TS,包括缓存;缓存写入单元,将已经从MPEG2-TS文件中读取的传送流的传送信息包连续写入到缓存,并且检测传送流中的时间戳;以及缓存读取单元,以通过由频分率信号所指定的频分率来对MPEG解码器的系统时钟进行频分所获得的时钟所决定的传输速率,将已经从缓存中依序读出的传送信息包发送到MPEG解码器。缓存读取单元不仅在传送信息包之间插入NULL信息包,而且在当通过仅插入NULL信息包无法实现调整时重写时间戳。
文档编号H04N5/926GK101022547SQ200710005349
公开日2007年8月22日 申请日期2007年2月14日 优先权日2006年2月15日
发明者青柳寿和 申请人:日本电气视象技术株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1