用于修改视频信号的时基的系统的制作方法

文档序号:7584917阅读:179来源:国知局
专利名称:用于修改视频信号的时基的系统的制作方法
技术领域
本发明涉及用于修改数字视频流的时基的系统;该系统包括通过数字视频通信系统连接的编码设备和存储设备以及解码器/再现器(renderer)。本发明还涉及存储设备和时基修改器。本发明还涉及修改数字视频流的时基的方法和用于执行该方法的软件。
背景技术
当今,大部分视频信号以模拟形式记录在磁带上。诸如使用DVD回放的数字视频的快速吸收(uptake)已导致在数字记录媒体上记录视频资料的需求也增加,例如使用可记录光盘,类似于DVD+RW,或者基于硬盘的记录设备。通常使用的数字编码格式是MPEG,具体而言MPEG2。为了记录模拟视频信号,用户使用模拟再生设备,例如VCR和摄像放像机,以生成模拟视频信号,并使用(MPEG)编码器将该信号编码成用于在数字存储媒体上存储的数字格式。MPEG编码器可以是独立的设备,或者集成在另一个设备内,例如VCR,电视机等。通过数字视频通信系统,例如P1394总线,可以将已编码的信号提供给解码器/再现器或者提供给数字存储设备,以便随后提供给解码器/再现器。为了能够解码/再现编码信号,必需符合诸如MPEG的编码/传输标准。特别地,在国际标准ISO/IEC 13818-21995(E)信息技术;运动图像和相关信息的通用编码视频和国际标准ISO/IEC 13818-11996(E)信息技术;运动图像和相关信息的通用编码系统中,描述了MPEG视频编码/传输。数字视频流的定时尤其重要。为此,数字视频编码/传输标准规定了使编码器和解码器内的时钟能够以同步方式运行的时钟信号。这些时钟信号将称作程序时钟基准标记(program clockreference stamp)(PCR)。此外,提供定时信号给各个帧,以使再现设备能够在正确的时间上再现这些帧。这些定时信号将称作呈现时间标记(presentation time stamp)(PTS)。此外,可以存在向解码器表示何时可以开始MPEG解码的定时信号。这些信号将被称作解码时间标记(DTS)。除了视频信号之外,还提供给编码器的模拟或数字视频信号也包括表示视频信号内帧边界的帧信号(vsync)。帧信号因而与视频帧同步。编码流内的PTS信号通常被插入在与vsync信号的到达同步的编码视频流内。
对于为DVB(数字视频广播)规定的MPEG2传输,用于PCR和PTS的定时基于具有定义的频率和容限的同一时钟。例如,由MPEG定义的时钟运行在27MHz上,并且应偏差小于30ppm(parts per million部分/百万)。通常,视频信号的帧速率是25Hz或30Hz,并且vsync脉冲具有相同的频率。帧速率正好为25Hz的模拟视频信号的直接转换将产生带有每40ms出现一次的PTS值的MPEG流。然而,使用模拟再生设备再生的视频信号的帧速率的偏差可能高达100ppm。为了能够获得具有每个帧周期一次的PTS的数字视频信号,可以将MPEG编码器锁定到视频输入信号的vsync。如此获得的编码数字视频信号将具有偏离100ppm的PCR,并因此与MPEG不兼容。这样的编码信号不应当通过网络提供给解码器/再现器,因为解码设备可能不能解码该信号。另一方面,直接使用MPEG时钟和忽略帧速率内过大的偏差可能会导致再现问题,例如必须跳过或重复帧。

发明内容
本发明的目的是提供这样一种系统,该系统使用户能够实时再现已编码的视频信号,有可能以质量损失为代价,而可以在已利用存储设备记录之后完美地再生信号。
为了实现本发明的目的,一种用于修改数字视频流的时基的系统包括通过数字视频通信系统连接的编码设备和存储设备以及解码器/再现器;该编码设备包括输入,用于接收输入视频信号和与输入视频信号同步并表示输入视频信号中的帧边界的输入帧信号(vsync);编码器,用于将输入视频信号和输入帧信号转换成符合预定视频编码标准的相应数字视频流;该编码器包括符合视频编码标准的编码器时钟;数字视频流包括与接收的输入视频帧对应的数字视频帧序列;代表编码器时钟的时钟信号的程序时钟基准标记(PCR)序列;和分别与相应的数字视频帧相关的并表示在接收对应于数字视频帧的输入视频帧时利用时钟信号驱动的计数器的值的视频呈现时间标记(PTS)序列;和输出,用于通过数字视频通信系统提供数字视频流;存储设备包括输入,用于通过数字视频通信系统接收数字视频流;时基修改器,用于根据连续的呈现时间标记之间的恒定预定帧时间,利用相应修改的视频呈现时间标记(M-PTS)替换视频呈现时间标记(PTS);和通过使用取决于视频呈现时间标记j和先前的视频呈现时间标记j-n之间的预期时间与视频呈现时间标记j和先前的视频呈现时间标记j-n之间的实际时间之比值的定标因子(scalingfactor)定标程序时钟基准标记(PCR),利用相应修改的程序时钟基准标记(M-PCR)替换程序时钟基准标记(PCR),其中j≥n>0,并且预期时间是预定帧时间的n倍;存储器,用于存储时基修改的视频流的至少一部分;和输出,用于将视频流从存储设备提供给解码器/再现器;和解码器/再现器,包括输入,用于从存储设备接收视频流,并用于解码从存储设备接收到的视频流,以便能够与相应的相关已修改的视频呈现时间标记同步再现该流内的数字视频帧。
在根据本发明的系统中,编码视频流对于PCR和PTS的定时要求完全符合视频编码标准。因此,通过通信接口接收该流的标准解码器/再现器可以实时地解码和再现该流,尽管有可能损失质量,因为解码器可能偶尔需要跳过帧(如果输入视频信号的实际帧速率高于最大许可偏差)或者重复帧(如果输入视频信号的实际帧速率低于最大许可偏差)。所有的视频帧都在该流内出现。使用存储设备来记录该流的帧。可以以落入由视频编码标准定义的容限内的校正帧速率从存储器提供这些帧。为此,通过比较实际的帧时间与预期的帧时间,定标时基。从PTS获得实际的帧时间。对于25Hz.系统,连续帧之间的预期帧时间是固定的,例如40毫秒,并因而对于这样的帧速率来说,顺序地间隔n帧(n>0)的帧j-n和j之间的预期帧时间是n×40毫秒。通过PTS[j]-PTS[j-n],确定这些帧之间的实际帧时间(在时钟数量变换到相应的持续时间之后)。比较实际的帧时间与预期的帧时间给出了定标因子。可以使用该因子来定标PCR值。类似地,如果存在DTS值,则也应当定标这些DTS值。在这个定标之后,连续PTS值之间的偏移应当对应于固定的帧时间。可以在两个直接相连的PTS值上执行定标(在这种情况下n=1),提供了高度动态的调整。还可以在更大的时间上,例如间隔5个帧(n=5),或甚至对自开始以后的所有帧(n=j,如果第一帧标号为0),执行定标。存储器用作缓冲器,以补偿实际帧速率和编码标准的恒定期望帧速率中的差。这样的缓冲器需要显然大于对于由视频编码标准定义的抖动补偿所需要的。可以使用计算修改PCR值的数字滤波器,执行根据本发明的时基校正。
根据从属权利要求2的措施,在一种实施例中,时基修改器包括时钟单元,用于使用取决于定标因子的误差信号生成被锁定到所接收的视频呈现时间标记(PTS)的时钟信号;该时基修改器用于通过在接收程序时钟基准(PCR)时抽样利用时钟信号驱动的计数器,获得已修改的程序时钟基准标记(M-PCR)。通过将时钟锁定到PTS信号,与基于恒定的标准定义的帧速率的PTS信号相比,该时钟信号自动地被定标到实际的PTS信号。可以使用定标后的时钟替换原始的PCR信号。
根据从属权利要求3的措施,低通滤波所接收的视频呈现时间标记,并将时钟单元锁定到滤波后的视频呈现时间标记。以这样的方式,消除了高频抖动,提供了更可靠的时基校正。可选择地,根据从属权利要求4的措施,时基修改器用于低通滤波定标因子。
根据从属权利要求5的措施,数字视频流包括有关视频信号的标称帧速率的信息,并且时基修改器用于从数字视频流导出预定的帧时间。MPEG传输流已经包括此信息(在序列首部中利用所谓的帧速率码所表示的)。以这样的方式,可以将时基修改用于不同的帧速率,而不需要用户配置帧速率。
根据从属权利要求6的措施,编码设备的输入用于接收模拟音频信号;该编码设备还包括抽样器,用于在从视频输入信号导出的并被锁定到输入帧信号(vsync)的抽样时钟信号的控制之下,抽样所接收的模拟音频信号;和其中编码器用于将所抽样的音频信号转换成相应音频帧的时间序列,并在该数字视频信号流内插入音频帧和相应的音频呈现时间标记(A-PTS)。以这样的方式,与视频信号同步抽样音频信号,能够通过实时解码该流的解码器/再现器进行同步再生。
根据从属权利要求7的措施,其中时基修改器用于通过使用定标因子定标音频呈现时间标记(A-PTS),利用已修改的音频呈现时间标记(MA-PTS)替换音频呈现时间标记(A-PTS)。以与视频PCR相同的方式,定标编码的音频信号(因而取决于为视频信号确定的定标)。以这样的方式,在从存储器再生之后,依然可以与视频信号同步再生音频信号。
根据从属权利要求8的措施,存储设备用于在接收到分组时时间标记数字视频流的每个分组;用于与相应接收的分组相关地在存储器内存储每个时间标记;和用于根据相应的时间标记和预定延迟输出所存储的流的分组。通过时间标记每个分组,存储设备可以在预期的时刻上从存储器发出分组。
根据从属权利要求9的措施,存储设备包括用于提供定时信号的时钟,并且存储设备用于将利用定标因子定标的定时信号用作在存储器内存储的时间标记。因而,以与视频PCR时间标记相同的方式,定标存储器时间标记。以这样的方式,依然可以在校正的时间上从存储器释放并不具有PCR值的分组。
根据从属权利要求10的措施,存储设备用于将来自由锁定到所接收的视频呈现时间标记(PTS)的时钟信号驱动的计数器的计数器值用作在存储器内存储的时间标记。以这样的方式,还使用已经定标的PCR信号来时间标记并不具有PCR值的分组,提供了用于从存储器释放分组的准确时间。
根据从属权利要求11的措施,视频编码标准是MPEG2。这个编码/传输标准被广泛地支持。
根据从属权利要求12的措施,数字视频通信系统包括用于传送数字视频流的等时通信信道。这提供了视频流的可靠传输。优选地,使用IEEE1394或USB。
本发明的这些和其它方面从在下文中描述的实施例中将是显而易见的,并将结合这些实施例进行阐述。


在附图中图1图示根据本发明的系统的方框图;图2图示根据本发明的编码器的一个实施例;图3图示编码器的另一实施例;图4图示概念性的重新编码器的方框图;图5图示存储设备的一个实施例;图6图示存储设备的一个替代实施例;图7和图8图示对时基的调整;和图9图示PLL到vsync的锁定。
具体实施例方式
图1图示根据本发明的系统的方框图。该系统包括编码设备10、存储设备20和编码器/再现器30。编码设备10包括用于接收至少一个视频信号的输入12。在图1的例子中,它接收视频信号v.s.和音频信号a.s.。编码设备10还包括编码器14,用于将AV信号编码成编码流,用于通过数字通信系统40至少提供给存储设备20。编码和传输根据预定的编码标准。在优选实施例中,它符合MPEG2。然而,本领域技术人员也能够将该原理应用于其它的编码/传输格式。可以使用任一合适的通信系统。为了能够以流方式(steam-wise)推进数据,该通信系统系统最好提供至少一个等时通信信道。合适的通信系统包括但并不限于USB,和具体而言,IEEE1394(也称作Firewire或iLink)。通过使用标准化的编码/传输,从编码器传输给存储设备的流也可以提供给解码器/再现器50,用于进行实时再现。解码器/再现器50可以连接到同一信道40或连接到其它信道(未图示出)。在图1中,解码器/再现器50分别图示为一个方框。将理解这样的功能同样也可以划分在单独的设备内。
编码设备10可以是独立设备,但也可以与其它功能集成在一起。例如,编码设备10可以是电视机、机顶盒(STB)或个人计算机(PC)的一部分。具体而言,编码设备10可以集成在诸如VCR或摄像放像机等AV信号源设备内。
存储设备20包括时基修改器22和存储器24。存储器24用于存储时基修改的视频流的至少一部分。存储器24至少用作缓冲器,用于补偿进入编码设备和从存储设备输出的视频信号的帧速率中的差。例如,如果具有0.5%的速率差,则在立即开始从存储器提供视频标题的情况下,存储器应当能够最少存储视频标题的至少0.5%。优选地,存储器24能够存储至少一个完整的平均大小视频标题,以便随后能够在用户期望的时间上进行解码/再现。存储器24可以是可拆除类型的存储媒体,例如DVD+R、DVD+RW、DVD-RW、DVD-RAM、DVHS、Blu-ray disc(蓝光盘)、固态存储器、等等。优选地,存储器24是高容量存储器,例如硬盘,能够完整地存储若干平均大小视频标题。
编码设备图2图示编码设备的一个示例性方框图。在这个例子中,编码设备包括A/D(模数)转换器210,用于抽样通过输入205接收到的视频信号v.s.,并将其转换成数字表示。输入的视频信号具有相关的vclk时钟信号(通常27MHz)。该抽样被线路锁定到这个时钟信号。输入的视频信号还包括vsync脉冲(通常25Hz或30Hz),其标记新视频帧的开始。由A/D转换器210提供数字化的视频数据和vsync信号。编码设备还包括编码器220和编码器时钟230。编码器时钟230是根据视频编码/传输标准的要求自由运行的。对于MPEG来说,编码器230根据传送非常精确的27MHz信号(必须是根据MPEG标准的27MHz+/-30ppm)的晶体进行计时。使用时钟信号来递增计数器245。从这个主编码器时钟中,直接导出PCR时基计数器(程序时钟基准)。PCR因而是计数器值。使用预定频率,还可以以时间差来表示计数器值的差。为了简化这些例子,在其余部分中,有时将以时间替代计数器值中的实际差值来表示PCR之间的差。对于其它的计数器/时间标记,例如PTS,同样如此。在图2的实施例中,每当新的视频帧抵达视频输入205时,通过抽样时钟计数器值来创建时间标记V-ITS(Video Input TimeStamp视频输入时间标记)。这些时间标记的一些或全部将以PTS呈现时间标记的形式通过通信系统40反映在数字视频流内。PTS向编码器/再现器规定何时应当提供相关的视频帧用于再现。PTS值因而与具有表示整个处理链中延迟的固定延迟的V-ITS“相同”。为了能够通过通信系统通信,编码设备10包括通信接口280。用于这样的接口的硬件和/或软件是公知的,并在此将不作进一步描述。
在根据本发明的系统中,允许在信源内存在干扰,也就是线路锁定(27MHz)时钟在逐条线路(line by line)的基础上具有大量的抖动(但是在帧基础上被锁定),并且vsync信号的频率大大偏离了预期值(例如24.5Hz,而非25Hz)。当在回放时从VCR接收到编码设备的输入信号时,可能会出现这样的情况(或者甚至更差特技模式(trickmode))。
在图3所示的实施例中,除了视频输入信号v.s.之外,编码设备还具有用于接收音频信号a.v.的输入240。在这个例子中,音频信号依然是模拟的。编码设备因而包括A/D转换器250,用于抽样音频信号a.s.,并将其转换成数字表示(音频帧/分组的流)。原则上,可以使用例如在48KHz上运行的自由运行抽样时钟。然而,为了保持音频与视频同步,同样在视频信号的定时内的波动过程之后和在数字视频流的时基校正之后,在优选实施例中,从视频输入信号导出音频抽样时钟信号,并将其锁定到输入帧信号上(vsync)。在图3的例子中,这通过使用锁定到vsync的PLL(锁相环)260来实现。将由PLL提供的时钟划分成音频抽样所需要的频率(例如以27MHz./48KHz.=562.5的因子划分时钟频率)。在接收时还使用相关的A-ITS(音频输入时间标记)来时间标记音频帧/分组。类似于针对视频所描述的,可以以相应的音频呈现时间标记(A-PTS)的形式在视频流内表示这些A-ITS值的一些或全部,从而控制来自解码器/再现器的音频的提供。
将理解可能存在一个以上的视频输入信号,并且还可能存在若干音频信号(例如立体声、多声道、不同的语言、等等)。这些信号中的每个信号的抽样/时间标记最好与主视频信号的vsync等时。可以由编码器220将所获得的各个数字分组流复用到一个传输流。复用/解复用是公知的,并在此将不进一步描述。编码器220(或更准确地,编码器的复用器)将PCR时基的抽样插入到该流内。可以以固定的间隔例如每40毫秒插入PCR值。实际上,大部分编码/传输标准仅定义在直接相连的PCR之间允许的最大偏移。例如,DVB规定每40毫秒至少一次插入PCR值。通常,并不以规则间隔插入PCR值。在解码器/再现器中,例如如图1所示,使用数字30和50,使用所接收的PCR值来重构编码器PCR计数器。以这样的方式,解码器时钟与编码器时钟等时运行。因此,使用其PTS值,可以在正确的时间上发出帧。传输标准定义在用于创建PCR的时钟信号内的最大偏移,以保证所有的解码器能够重构时钟信号。根据MPEG,如果PCR时钟在MPEG规范的27MHz+/-30ppm之外,则解码器可能不能重构PCR计数器。因为编码设备完全符合所涉及的标准,所以可以假定该重构是理想的,即解码器内的PCR计数器是在编码器内的PCR计数器的拷贝。
因为视频vsync并未锁定到主编码器时钟的这个事实,两个相继的视频访问单元的PTS之间的差值通常并不准确地等于预期的4)毫秒(在24.4Hz的例子中,它更大)。类似地,两个音频访问单元之间的差值通常将不准确地等于预期的值,因为音频时钟也未锁定到PCR时钟。在解码器中,使用在该流中编码的PTS来确定与重建的PCR计数器的值相关的访问单元的呈现时间。实际上,在解码器/再现器中可能出现人为现象。例如,常规的解码器/再现器可以使用被锁定到输入PCR的单个时钟来进行音频和视频解码。它可以以独立于该流内的精确的PTS值的预期步调启动音频/视频访问单元的解码。例如,对于PAL来说,解码器可以在PCR时钟的每40毫秒之后开始解码新的帧。在解码特定帧之前,解码器随后将检查它的PTS是否依然在距离实际使用的解码时间Tdec的1/2帧周期的距离内(根据假定的固定步调解码,Tdec随后)。如果否的话,则解码器进行下述校正IF(Tdec-PTS>1/2frame_period)THEN skip_access_unit;IF(Tdec-PTS<-1/2frame_period)THEN repeat_access_unit;以这样的方式,解码器依然有效地将呈现时间锁定到PTS,但是如果音频和视频尚未被锁定到PCR,则人为现象依然可能在规则时间上出现。尽管如此,精确地重构了输入信号所有的音频/视频分组在那。然而,解码器将不得不为了再现而跳过和/或重复访问单元。根据本发明的系统克服了这个问题。
存储设备图4以概念的方式图示使用存储设备400(与图1的存储设备20相同)作为重新编码器的解决方案。为了进行解释,假设该存储设备包含(例如MPEG)解码器410和附加编码器420。通过通信接口405经通信系统接收到的编码输入流完全符合如上所述的编码/传输标准。应当指出,通过向ITS添加恒定延迟,再次导出音频和视频PTS。ITS是PCR时基的抽样,所以它们也是从例如27MHz上的精确时钟中导出的。
在存储设备中,通过(概念上的)解码器410解码所接收的信号。因为顺应性输入流,当其进入原始编码设备的编码器时,例如图1的编号10,解码器410能够精确地重构该信号。这意味着由解码器根据PTS生成的vsync也是在它进入原始编码器时vsync的复制。在存储设备内,现在存在第二(概念)编码器420,它重新编码已解码的信号,从而将它的时基锁定到输入的vsync。在图4的实施例中,使用PLL和VCO(压控振荡器)实现锁定。VCO驱动由编码器420使用的已修改PCR计数器。自这个编码器420输出的流包含所有的A/V数据,但是其时基已经改变。通过将其存储在存储器430内,并在修改后的时基上从存储器中将其回放,实现完全顺应性具有新时基的信号。
实际上,在存储设备400内并不需要使用大型解码器410和编码器420。事实上,实际的A/V分组完全没有改变,并因而并不需要解码和重新编码。仅改变了由PCR定义的主时基和所有取决于它的流字段。具体而言,呈现时间标记(PTS)和(如果存在的话)解码时间标记(DTS)。因而,使用对输入PTS和PCR时间标记的一些附加处理可以实现同样的结果。这个处理可以仅使用在诸如微控制器或数字信号处理器等处理器上执行的软件来实现。这样的处理可以实时或离线(offline)执行。作为完全基于软件的处理的替代方式,可以使用部分的硬件支持,如在下文中将更详细地描述的。
图5图示根据本发明,存储设备400内的时基修改器510定标时基(即PCR),以便已修改的PTS具有反映连续帧之间的恒定预定帧时间的值。在该图中,与图4中所用的相同参考数字表示相同的特征。对于25Hz系统来说,预定的帧时间是40毫秒。应当指出不是所有的帧需要具有PTS。所以,连续的PTS可以具有反映多个帧时间的值。在下面的例子中,假设每个帧与相应的PTS相关以简化描述。因而,时基修改器根据连续呈现时间标记之间的恒定预定帧时间用相应修改的视频呈现时间标记(M-PTS)替换视频呈现时间标记(PTS)。例如,使用索引j编号连续的PTS,M-PTS[j+1]=M-PTS[j]+frame-time,或M-PTS[j]=PTS
+j×frame-time通过使用取决于视频呈现时间标记j和前面的视频呈现时间标记j-n之间的预期时间延迟和视频呈现时间标记j和前面的视频呈现时间标记j-n之间的实际时间的比值的定标因子定标程序时钟基准标记(PCR),时基修改器使用相应修改的程序时钟基准标记(M-PCR)替换程序时钟基准标记(PCR),其中j≥n>0,并且预期的时间是预定帧时间的n倍,可以选择用n表示的定标扩展的周期。在一种极端情况下,n=j。在这种情况下,在时间PTS[j]上的定标因子由下式给出
(n×frame-time]/(PTS[j]-PTS
),其中PTS[j]表示基于其计数器值的第j个PTS的时间。随着接收到更多的PTS,时间间隔增加,并且定标因子变得更加稳定。在另一种极端情况下,根据两个直接相连的PTS(n=1)之间的实际时间,定标因子是非常动态的。在这种情况下,在时间PTS[j]上的定标因子由下式给出frame-time/(PTS[j]-PTS[j-1]).
对于n值,也可以进行其它的选择。在下文中,将针对n=j提供一个例子。本领域的技术人员将能够将同样的技术应用于n的其它值。
对于每个所接收的PTS(表示为带有括号[]之间的索引的recPTS),确定预期的PTS(表示为expPTS),将其与所接收的值进行比较。为了初始化,将第一个预期PTS设置为等于第一接收的PTS。
expPTS
=recPTS
通过将恒定的帧时间添加到前一expected-PTS,计算出所有随后的expected-PTSexpPTS[j+1]=expPTS[j]+frame-time,j>0。
例如,对于PAL视频系统,将新的expPTS设置得始终高于其前者40毫秒。
对于在传输流中每个所接收的PCR值PCR[k]来说,将目标T[k]推导为T[k]=(PCR[k]-PCR
×定标因子+PCR
(1)其中
其中k表示所接收的PCR的索引,而j对应于在PCR值之前接收到的PTS值的数量。在算法可以开始工作之前,j的值必需大于0。现在可以使用目标T[k]作为已修改的PCR,表示为MPCRMPCR[k]=T[k]类似地,用MPTS表示的已修改PTS被完全地校正,并因而通过下式给出MPTS[j]=expPTS[j]。
典型地,在流中将存在比PTS抽样更多的PCR抽样。这产生这样的问题,即应当使用哪个j(PTS的索引)修改由索引k表示的PCR。具体而言,如果修改是实时的,显然在可以执行PCR的定标之前必须知道定标因子。为了最佳地反映最近的改变,最好根据从至少直接在前面的PTS得出的定标因子修改给定的PCR。因为可能存在比PTS抽样更多的PCR抽样,可能存在使用同一定标因子修改的若干PCR抽样。对于离线校正来说,可以使用相同的原理。然而,在这样一种情况下,根据PTS[j]和PTS[j-n]确定的定标因子也可以用于校正处于这个间隔内的PCR抽样。
上述算法表明在不实际重构时间信号的情况下,可以离线地(即非实时地)或实时地计算已修改的时钟基础。
在一种替代实施例中,如图6所示,时基修改器610使用PLL重构定标时间信号。在图4和图5中使用相同的参考数字表示相同的功能。为了控制PLL,将误差信号E推导为E[k]=time-base[k]-T[k],其中time-base[k]是当接收PCR分组k时取出的时基计数器的抽样。在启动时,可以使用下式
time-base
=PCR
包括在定标因子内划分的所有计算并不必需是非常精确的,因为仅使用结果来控制PLL。注意,等式(1)本质上的目的在于将PLL锁定到平均帧时间(从帧0到帧j的平均运行时间)。
在优选实施例中,使用帧时间的低通滤波形式来锁定PLL。这可以通过任一合适的方式来实现。例如,时基修改器可以低通滤波所接收的视频呈现时间标记,并且时钟单元被锁定到已滤波的视频呈现时间标记。可选择地,时基修改器低通滤波等式(2)的定标因子。
误差信号E由PLL用于修改主编码器时钟(例如27MHz的时钟)的频率。如果E>0,则降低频率,如果E<0,则增加频率。PLL的目的是将误差信号控制为零。
上述方法实际上导致在vsync上的锁定可以使用表示PLL的启动行为的例子来理解。在图7中,图示所接收传输流的定时,它包含原先以21.7Hz(=1/0.046)进入编码器的视频帧。应当指出这是概念上的低频,用于说明此概念。x-轴表示实时,在这个例子中假设对应于根据编码器内27MHz时基的时间。在该例子中,以每40毫秒一次的规则间隔出现PCR值。实际上,可能并非这种情况。第一PCR值对应于210毫秒的时间,并因为假设编码器使用理想的时基,PCR分组内的值与接收到它们的时间相同。若干(例如5或12)个PTS值可能出现在每MPEG GOP(图像组)的流内。然而,何时接收这些PTS值取决于在GOP内特定帧的大小。例如,因为第一帧(=I-帧)通常是最大的,该流内的第一和第二PTS之间接收时间的差通常较大。PTS时间标记的值取决于在编码器的输入上接收到相应帧的时间。在这个例子中,每个连续的PTS具有对应于迟于其前者46毫秒的值。根据期望的vbv-delay,在编码器内选择第一PTS的值。
在图8中,将根据上述算法修改的时间标记图示为方框。此外,图示了PLL误差信号E[j]的值。如从图中可以看出的,由它们的预期值(带有每帧增加的固定帧时间,例如40毫秒)重写所有的PTS。可以仅在接收到两个PTS值之后(j=1),计算PLL误差信号。此时误差信号为0和VCO在未校正的27MHz上运行。在t=290毫秒上计算不等于0的第一误差信号。在此时间之前,通过自由运行时基重写PCR(现在,我们再次假设这个时基精确地在27MHz上运行),以便并不改变PCR。在该例子中,计算再次在实际的时间内,而不是在相应的时钟值内。在t=290上用于PCR[2]的目标T[2]等于 T[2]=(PCR[2]-PCR
)×定标因子+PCR
=(290-210)×0.87+210=279.6毫秒因而MPTS[j]=360+j×40,j>O使用锁定的PLL,误差信号等于E=290-279.6=10.4毫秒因为这个正的误差信号,PLL将调慢时钟。对于下一个PCR分组,这将导致误差降低。例如,可以以成比例的方式控制PLL,其中其频率f由下式给出f=f0×(1-E40),f0=27MHz.]]>则MPCR[3]=MPCR[2]+(PCR[3]-PCR[2])×(1-E40)]]>=290+40-E=319.6]]>和
MPCR[4]=MPCR[3]+(PCR[4]-PCR[3]×(1-E40))]]>=319.6+40-E=319.6+40-5.3=354.3]]>相应的目标是T[4]=(PCR[4]-PCR
×定标因子+PCR
=(370-210)×(480-360)/(498-360)+210=349.1(1)因此,误差是E[4]=time-base[4]-T[4]=354.3-349.1=5.2。
使用这个比例配置,如果f=40/46×f0,则获得最终误差。在这种情况下4046×f0=f0×(1-E40)]]>1-E40=4046]]>E=5.2通过使用积分器,如现有技术中公知的,在一段时间之后,PLL将已经达到误差非常接近于零的稳定状态。这在图9中图示。实线表示作为实时函数的时基计数器的值。在t=290毫秒之前,时基在27MHz上自由运行。此后,PLL调慢时钟,并且时基近似于理想的vsync锁定的时基(虚线)。该理想的时基从开始就运行在27MHz上的40/46上。在理想曲线上的交叉表示所接收的PTS值标准化为recPTS
的值。一旦锁定PLL,则产生一种情况,其中在回放时,存在具有精确地等于25Hz的vsync的时基校正输出信号。
存储时间标记因为并非流内的所有分组都必需与PTS值相关,并且在某些应用中,希望以反映在存储分组之前它们的时间差值的精确时间差值从存储器中释放分组,频繁地利用存储设备来时间标记所有的分组。以这样一种方式,将传输流TS传输到时间标记传输流TTS内。时间标记还使用基于PCR的时钟。实际上,在存储设备内,可以抽样重构的PCR值,并用于时间标记所接收的分组。因为PCR的格式对于存储目的来说并非理想的,通常使用附加的TS计数器。现在,还应当将PCR时基的修改应用于TS时基。在使用PLL的实施例中,现在这是简单的。PLL时钟控制TS计数器,以及这个计数器被抽样,并被添加到由存储设备接收到的分组。可以通过使用PCR锁定的主时钟控制在存储设备内的所有处理。根据在TS->TTS块内的TS时基来时间标记进入重新编码器的所有TS分组。所获得的称作时间标记传输流(TTS)的流包含每分组的4字节的时间标记数据和188字节的视频数据。在回放时,在MPEG的30ppm的限制内,重新编码器使用非常精确的27MHz的时钟。对于每个TS分组,使用在重新编码过程中添加的时间标记确定在TTS->TS块内必需将其发送出的时间。这通过比较时间标记与由27MHz的时钟计时的计数器来执行。TTS->TS块包含足够数量的缓冲存储器以保存尚未准备输出的数据。
在一种替代实施例中,在没有PLL的系统内,现在可以将相同的等式(1)和(2)应用于TS[k]而非PCR[k]。要求已经在该流内存在耦合到PCR的TS。这可以以下述方式来执行。如同在常规的解码器/存储设备内,使用锁定到输入PCR值的时钟,从而重新构建编码器时钟。使用由该时钟驱动的计数器来时间标记这些分组。在这样一种实施例中,输入流必需是实时的,使用等时通信信道。随后如上所述修改时间标记。再次,可以离线而不需要实时地执行这个时基修改。
在一种实施例中,没有输入的时间标记用于分组。相反地,估计所记录的时间标记。这可以在记录时或者从存储器回放时执行。存储器已经修改PCR值。给处于这些PCR之间的分组分配基于这些已修改PCR的值。分配时间的简单方式是使用在时间间隔上的成比例的分配。所以,如果在两个连续的PCR之间存在四个分组,则将PCR之间的时间划分成5个相等的周期。从第一PCR开始,每当该周期流逝时,从存储器中释放下一个分组。
将理解本发明还扩展到计算机程序,尤其是适合于实现本发明的在载体上或者在载体内的计算机程序。该程序可以是源代码、目标代码、代码中间源和目标代码的形式的,例如部分编译形式的,或者是适合于在根据本发明的方法的实施中使用的任何其它形式。载体可以是能够承载该程序的任何实体或设备。例如,载体可以包括存储媒体,例如ROM,例如CD ROM或半导体ROM,或磁记录媒体,例如软盘或硬盘。此外,载体可以是可传输的载体,例如可以通过电缆、光缆或者无线电或其它方式传输的电信号或光信号。当在这样的信号中实施该程序时,载体可以由这样的电缆或其它设备或装置构成。可替代地,载体可以是其中嵌入该程序的集成电路,该集成电路适合于执行相关的方法或者用于在执行相关的方法时使用。
应当指出上述实施例仅仅是为了说明,而不是限制本发明,并且在不脱离权利要求的保护范围的情况下,本领域的技术人员能够设计多种替代实施例。在权利要求书中,在括号内放置的任一参考符号不应当解释为权利要求的限制。动词“包括”及其动词变化的使用并不排除权利要求中列出的单元或步骤之外的其它单元或步骤的存在。在单元之前的冠词“一”或“一个”并不排除多个这样的单元的存在。本发明可以通过包括若干分立单元的硬件和通过合适编程的计算机来实现。在列举了若干装置的设备/系统内,也可以由同一个项目的硬件实现这些装置中的若干装置。唯一的事实在于,在相互不同从属权利要求中记载某些措施并不表示这些措施的组合不能用于提供优点。
权利要求
1.一种用于修改数字视频流的时基的系统,该系统包括通过数字视频通信系统连接的编码设备和存储设备以及解码器/再现器;编码设备包括输入,用于接收输入视频信号和与输入视频信号同步并表示输入视频信号中的帧边界的输入帧信号(vsync);编码器,用于将输入视频信号和输入帧信号转换成符合预定视频编码标准的相应数字视频流;该编码器包括符合视频编码标准的编码器时钟;数字视频流包括与所接收的输入视频帧对应的数字视频帧的序列;表示编码器时钟的时钟信号的程序时钟基准标记(PCR)的序列;和分别与相应的数字视频帧相关并表示在接收对应于数字视频帧的输入视频帧时利用时钟信号驱动的计数器的值的视频呈现时间标记(PTS)的序列;和输出,用于通过数字视频通信系统提供数字视频流;存储设备包括输入,用于通过数字视频通信系统接收数字视频流;时基修改器,用于根据连续的呈现时间标记之间的恒定预定帧时间,利用相应已修改的视频呈现时间标记(M-PTS)替换视频呈现时间标记(PTS);通过使用取决于视频呈现时间标记j和先前的视频呈现时间标记j-n之间的预期时间与视频呈现时间标记j和先前的视频呈现时间标记j-n之间的实际时间之比值的定标因子定标程序时钟基准标记(PCR),利用相应已修改的程序时钟基准标记(M-PCR)替换程序时钟基准标记(PCR),其中j≥n>0,并且预期时间是预定帧时间的n倍;存储器,用于存储时基修改的视频流的至少一部分;和输出,用于将视频流从存储设备提供给解码器/再现器;和解码器/再现器,包括用于从存储设备接收视频流的输入,并用于解码从存储设备接收到的视频流,以使得该流内的数字视频帧的再现能够与相应相关已修改的视频呈现时间标记同步。
2.如权利要求1的系统,其中时基修改器包括时钟单元,用于使用取决于定标因子的误差信号生成被锁定到所接收的视频呈现时间标记(PTS)的时钟信号;该时基修改器用于通过在接收程序时钟基准(PCR)时抽样利用时钟信号驱动的计数器,获得已修改的程序时钟基准标记(M-PCR)。
3.如权利要求2的系统,其中时基修改器用于低通滤波所接收的视频呈现时间标记,并且时钟单元被锁定到滤波后的视频呈现时间标记。
4.如权利要求2的系统,其中时基修改器用于低通滤波定标因子。
5.如权利要求1的系统,其中数字视频流包括有关视频信号的标称帧速率的信息,并且时基修改器用于从数字视频流中导出预定的帧时间。
6.如权利要求1的系统,其中编码设备的输入用于接收模拟音频信号;该编码设备还包括抽样器,用于在从视频输入信号中导出的并被锁定到输入帧信号(vsync)的抽样时钟信号的控制之下,抽样所接收的模拟音频信号;和其中该编码器用于将所抽样的音频信号转换成相应音频帧的时间序列,并在该数字视频信号流内插入音频帧和相应的音频呈现时间标记(A-PTS)。
7.根据权利要求6的系统,其中时基修改器用于利用通过使用定标因子定标音频呈现时间标记(A-PTS)修改的音频呈现时间标记(MA-PTS)替换音频呈现时间标记(A-PTS)。
8.根据权利要求1的系统,其中存储设备用于在接收到分组时时间标记数字视频流的每个分组;与相应的接收分组相关地在存储器内存储每个时间标记;和根据相应的时间标记和预定延迟输出存储的流的分组。
9.如权利要求8的系统,其中存储设备包括用于提供定时信号的时钟,并且该存储设备用于将使用定标因子定标的定时信号用作在存储器内存储的时间标记。
10.如权利要求2和9的系统,其中存储设备用于将来自利用锁定到接收的视频呈现时间标记(PTS)的时钟信号驱动的计数器的计数器值用作在存储器内存储的时间标记。
11.如权利要求1的系统,其中视频编码标准是MPEG2。
12.如权利要求1的系统,其中数字视频通信系统包括用于传送数字视频流的等时通信信道。
13.一种在如权利要求1的系统内使用的存储设备,该存储设备包括输入,用于通过数字视频通信系统接收符合预定视频编码标准的数字视频流;该数字视频流包括数字视频帧序列;代表编码器时钟的时钟信号的程序时钟基准标记(PCR)序列;和分别与相应的数字视频帧相关的视频呈现时间标记(PTS)序列;时基修改器,用于根据连续的呈现时间标记之间的恒定预定帧时间,利用相应已修改的视频呈现时间标记(M-PTS)替换视频呈现时间标记(PTS);和通过使用取决于视频呈现时间标记j和先前的视频呈现时间标记j-n之间的预期时间与视频呈现时间标记j和先前的视频呈现时间标记j-n之间的实际时间之比值的定标因子定标程序时钟基准标记(PCR),利用相应已修改的程序时钟基准标记(M-PCR)替换程序时钟基准标记(PCR),其中j≥n>0,并且预期时间是预定帧时间的n倍;存储器,用于存储时基修改的视频流的至少一部分;和输出,用于从存储设备中提供视频流。
14.一种用于在如权利要求13的存储设备内使用的时基修改器,该时基修改器用于在包括数字视频帧序列、表示编码器时钟的时钟信号的程序时钟基准标记(PCR)序列和分别与相应数字视频帧相关的视频呈现时间标记(PTS)序列的数字视频流中,根据连续的呈现时间标记之间的恒定预定帧时间利用相应已修改的视频呈现时间标记(M-PTS)替换视频呈现时间标记(PTS),并通过使用取决于视频呈现时间标记j和先前的视频呈现时间标记j-n之间的预期时间与视频呈现时间标记j和先前的视频呈现时间标记j-n之间的实际时间之比值的定标因子定标程序时钟基准标记(PCR),利用相应已修改的程序时钟基准标记(M-PCR)替换程序时钟基准标记(PCR),其中j≥n>0,并且预期时间是预定帧时间的n倍。
15.一种修改数字视频流的时基的方法,该数字视频流符合预定视频编码标准并包括数字视频帧序列、表示编码器时钟的时钟信号的程序时钟基准标记(PCR)序列和分别与相应数字视频帧相关的视频呈现时间标记(PTS)序列,该方法包括根据连续的呈现时间标记之间的恒定预定帧时间,利用相应已修改的视频呈现时间标记(M-PTS)替换视频呈现时间标记(PTS);和通过使用取决于视频呈现时间标记j和先前的视频呈现时间标记j-n之间的预期时间与视频呈现时间标记j和先前的视频呈现时间标记j-n之间的实际时间之比值的定标因子定标程序时钟基准标记(PCR),利用相应已修改的程序时钟基准标记(M-PCR)替换程序时钟基准标记(PCR),其中j≥n>0,并且预期时间是预定帧时间的n倍。
16.一种计算机程序产品,用于使处理器执行权利要求15的方法。
全文摘要
一种存储设备500包括输入405,用于通过数字视频通信系统接收符合预定视频编码标准的数字视频流。该流包括数字视频帧序列、程序时钟基准标记(PCR)序列和视频呈现时间标记(PTS)序列。时基修改器510根据连续的呈现时间标记之间的恒定预定帧时间利用相应已修改的视频呈现时间标记(M-PTS)替换PTS,并通过使用取决于视频呈现时间标记j和先前的视频呈现时间标记j-n之间的预期时间与视频呈现时间标记j和先前的视频呈现时间标记j-n之间的实际时间之比值的定标因子定标PCR,利用相应已修改的程序时钟基准标记(M-PCR)替换PCR,其中j≥n>0。预期时间是预定帧时间的n倍。
文档编号H04N7/24GK1726720SQ200380106223
公开日2006年1月25日 申请日期2003年12月15日 优先权日2002年12月16日
发明者E·W·萨洛蒙斯, A·M·A·里卡尔特 申请人:皇家飞利浦电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1