音频/视频定时差异的处理的制作方法

文档序号:7567405阅读:249来源:国知局
专利名称:音频/视频定时差异的处理的制作方法
技术领域
本发明涉及音频和视频信号的编码,并特别涉及产生音频和视频素材段,这些素材段在运作中能被结合在一起。
典型的情况是,当要求两个视频片段一个接一个地播放时,在解码第二片段之前,解码器需要复位到起始状态。在此复位期间,用户将会看到冻结在屏幕上的第一片段的最后帧,并伴以伴音的消失。取决于冻结/静音的持续时间,这种不连续性能闯入用户。
被要求的是一种无缝隙的连接,这里一个片段的结束与下一片段的开始之间的转换,对解码器来说不明显,从用户的观点来看意味着没有观赏帧可查觉的速率改变,并且声音的持续性也不受阻挠。关于无缝隙视频的应用是数量巨大的。出自CD-i景象的例子是对于计算机生成的字符采用真实照片作为背景;使用此技术的例子是在MPEG编码视频序列前运动的动画字符。另外就是一系列资格用户例如与交互式电影交互作用,通过选择可得到的几种变更方案观众有可能去影响故事情节发展。贯穿交互式电影沿着用户选取的路径,分岔处应该看来无缝隙,否则用户将失去通常看电影的怀疑悬念感受。
一种不要求重新初始化解码器的视频段编码方法,在申请号9424436.5(PHB 33950)题为“视频编辑缓冲器管理(Video EditingBuffer Management)”,我们1994年12月2日申请的未决英国专利中做了说明。该说明使用解码缓存器目标准线(targeting of decoderbuffer levels)以达到连续占用解码缓存器,使每个视频片段的尾和要与之相继的片段可预测的每个段起始,在解码缓存器中直接相连,而没有上溢和下溢的风险。
上述方法在适合视频帧序列的同时不考虑与此序列通常相伴随的其它信息-例如音频声迹。此视频经常与其它信息交织成单一流,称作系统流,它构成将在解码器/显示设备上出现的数据。(例如从CD盘读出或通过有线网络递送的数据流)。随着试图形成能够无缝隙连结的交织段,这里出现了传递视频通常与传递音频所花费的时间不相等的问题,在进行相连片段开始时间预测时,这种时间的差异能造成错误状态,比如在完成当前片段解码之前就指示相连片段的解码开始。
因此,本发明的目的是提供系统流段的无缝隙连接,而且避免这种时间的重迭和解码缓存器的上溢或下溢。
按照本发明提供了一种编码数字视频信号的方法,以这种形式即每段包含两个或更多的视频帧,并且在一解码设备中,该设备具有一编码级,一编码缓存器,以及将编码视频信号至少和另外一种信号交织以形成系统流的装置。对于每个段,此方法包括下列步骤根据预定的编码方案相继地编码段中的各个帧;读编码帧送入缓存器;以基本上恒定的位率从缓存器读出编码的段;将缓存器输出信号与一个或更多时间标记交织在一起得到系统流;其特征在于编码缓存器的占用被控制以具有第一预定准线(level),前一段的最后帧此时刻正被读入此位置,此占用准线与解码器缓存器的占用准线有关。此方法还包括以下步骤-得到以恒定位率填充解码器缓存器从空到所说解码器缓存器占用准线所需的时间t;-对当前段预测持续增量Δ;-对当前段的最后帧将从解码器缓存器读出点预测时间值;-降低t值直到由(t+Δ)给出的时间值接近且略大于所说的时间值,此时当前段的最后帧将从解码器缓存器中被读出;和-插一时间标记到该段的系统流中,指出这个段的第一帧在加载段开始以后,在由降低了的t值给定的时间,将从解码器缓存器中读出。
当前段的最后帧将从解码器缓存器读出点的时间值,可通过从解码器缓存器以时间计的最大容量减去段的持续时间的计算而被预测。更可取地,这时间值(在当前段的最后帧从解码器缓存器将被读出的点上)对每个交织的不同的流被预测,以这最大值用于对全部流的降低t值的获取。
为了防范理论上有可能但不一定出现的下溢情况(这以后还将说明)在达到预定的解码器缓存器占用准线之前编码器可能限制编码帧的大小。
正如下面将要论证的,这引出的瞬间,此时解码器应当开始解码接收的段,使得在系统流的级别上平滑连接这些段,并且依靠按流的长度去调节这个开始时间,上面提到的潜在的重迭问题的可能性能得以避免。而且,由于解码器缓存器的目标准线是根据编码器缓存器内容所计算的准线,必须尽可能地填满解码器缓存器以后再开始解码的传统技术得以免除。
更可取地,一公共解码器缓存器准线(此后第一时间标记t初始值定位)被提供,依靠设定用于编码第一段的各图象的目标位数可达到目的,而且,在段的尾部编码以便到达所说的编码器缓存器占用准线期间,可控制地改变每个图象的位分配。
正如将要说明的,为了确定解码器缓存器准线,最大编码器缓存器占用准线最好以解码器缓存器占用准线来指定,该解码器缓存器占用准线由编码器最大准线和第一段最后图象已被读入编码器缓存器以后,一帧周期编码器缓存器占用准线之间的差来确定。
本发明还提供了一数字视频信号编码设备,它被配置用于编码图象段,这里每个段包含两个或更多视频帧。该设备包括一编码级安排来接收段的连续帧,并按照预定的编码方案将它们编码;一缓冲器连结用以接收来自编码级的连续编码帧,并安排以基本恒定的位率输出编码的段;还有一多路转换器连结用以接收缓冲器输出和至少一种其它信号,并安排将它们交织成为系统流;其特征在于编码级以可控制的可变位数操作去编码段中的图象,例如,在段的最后图象被读入编码器缓存器的瞬间给出预定的编码器缓存器占用,产生段的持续时间预测值和该段的最后帧从解码器缓存器被读出点的时间预测值,并根据它确定时间值。另外所说多路转换器安排用来插入时间标记到段的系统流中,指示此段的第一帧,在开始装载此段进入解码器缓存器之后的所说确定的时间值,将从解码器缓存器中被读出。
本发明其它的特点和优点,阅读了下面的说明和所附权利要求,将会清楚。所公开的具体内容以做参考。
仅作为示例并参照所附附图,现将对优选实施方案作出说明,其中

图1表示在连接两个视频片段时编码和解码视频缓存器的内容;图2表示解码器视频和系统缓存器占用之间的关系;图3到5表示在传统的系统中,分别对应目标片段的开始和结尾解码器视频和系统缓存器的内容;图6到7表示分别对应目标音频片段的开始和结尾音频缓存器的内容;图8到9分别为编码器和解码器设备的原理图示;图10显示音频/视频目标复合对的MPEG STD状态曲线;图11显示MPEG VBV的起始状态以及音频和视频STD缓存器占用的起始状态;图12表示图11的音频和视频STD缓存器占用的结尾状态;和图13说明了音频和视频帧之间的时间值的差异。
下面的说明关系到编码器和解码器按照MPEG标准的操作,以及后面将要用到的这些标准的习惯名称。然而有实际经验的人都会认可,本发明的使用并不限定于此MPEG标准。
任何编码标准的开发必须带有编码器和解码器如何相互接口的模型。当编码器运行时它必须设想在解码器中会碰到的情况,决不能使解码器进入非法状态。同样地,解码器也必须支持与编码器所使用的相同的模型,以便使本身维持在合法状态并产生编码器所希望的输出。MPEG也无例外遵从这个规则。
起初,考虑产生能被无缝隙连结的纯视频数据段将是有用的。一优选方法在上面提到的编号为9424436.5(PHB 33950)我们的英国申请中作了说明,并参考图1在下面对其进行概述,图1给出缓存器占用B对时间t的图形,显示了作为一个视频帧(图象)序列A的结尾和另一个B的开始,编码器和解码器缓存器的状态情况。LA指示序列A的最后图象;FB指示序列B的第一图象。从序列A到序列B传递数据的改变由粗的缓存器占用线的变化来表示,而来自序列A的图象由点划线表示。在某时间tx,序列A的全部数据被传递完,而且VBV(视频缓存器校验-MPEG解码器模型)有Bx位的占用。从此时间起传递到缓存器的全部数据都是序列B的。然而,将会注意到,序列A尾部的某些图象仍然还在缓存器中,当缓存器有B1位的占用时,在时间t1之前这些图象被全部清除。
编码器当它试图达到在VBV缓存器中某种程度占用时经历一称做达标(targeting)的过程。在达标期间编码器假定当已编码的第一图象放入缓存器时,VBV缓存器具有某个目标占用,这就给了第一图象尺寸的上限。在编码进行的结尾编码器瞄准这样一个时间点上的VBV的占用,此时下一序列的第一图象正好要从缓存器中被清除,即图1中的Bt点。依靠改变最后图象或后面几幅图象的尺寸,在编码时达到此状态。
在示于图1的例子中编码器瞄准状态Bt,此状态表示在新序列第一图象正好被移走之前这一时刻的VBV缓存器占用。当编码器运行时,由于通常没有直接与解码器连结上,是根据它的输出缓存器而不是转换VBV缓存器的状态和来自VBV缓存器的状态变化来管理图象的尺寸。相应地,下面的途径将参考Btc和Bic(见图上部编码器占用值)。
当达标开始状态时,编码器假定在它引入第一图象这点上存在某种程度的占用。这个缓存器占用是Btc位,它表示前一序列末尾的残留位。这些位的存在限制了第一图象的最大尺寸为Bt位,并且继续影响下面的图象尺寸直到时间ttc以后全部残留位被移去。
从编码器角度来看开始状态的达标是非常简单的,因为全部要求只是设定其初始占用到Btc位而不是通常空的开始状态。
当编码器接近序列的末端时,它试图通过强制最后图象的大小到当它放入该缓存器时,占用将增加到Bic位,以达到点Bic的目标。如果仅在最后图象上进行大程度的尺寸固定(sige fixing)则可能产生质量非常差的图象。为克服这些,编码器最好有大量的位用于最后的GOP(图象组)和大量的位用于GOP中的每个K图象,以使编码器大大靠近正确状态。
现在转到系统层,这是在多路转换器结合视频,音频和其它基本流到一个系统流时产生的,系统流包含交织的基本流和以系统时钟参照(SCR),显示时间标记(PTS)和解码时间标记(DTS)形式出现的定时信息。
多路转换器的任务是保证从系统流中得到、进入解码缓存器的数据足够快,以使缓存器从来不会完全空,而又足够慢以使缓存器不会上溢。MPEG标准定义了一缓存器叫做系统目标解码器(STD),用来模拟从数字存贮介质(DSM)到解码器的数据传递。此缓存器的目的是屏蔽下述情况因为数据的交织,传递到解码器去的是以突发形式,而解码器性能模拟假定的是恒定位率。多路转换视频和音频流通常的策略按惯例是从尽可能满地填充STD缓存器开始。最后包组装的SCR被设置以使第一图象在这个时刻从缓存器中移去。接着,前面那些包的SCR由于它们的到达时间上领先于这个包被设置到正确的值。最后,缓存器被保持得尽可能地满,直到基本流中的数据全部用完。
多路转换器的操作比这些要更为复杂,因为多路转换器要判断多重流。而且多路转换器还需要支持其它的特点,这些是为满足系统流的特性所需要的,因为对目标平台(target platform)已经作了规定。
STD缓存器,如图2所示能被考虑如同包围住VBV缓存器。此图给出了STD和VBV关系的简单表现,在图2中STD缓存器占用(粗线)显示出包围VBV缓存器。要说的一点是STD缓存器线的斜率大于VBV线的,这是因为DSM的位率高于编码的视频位率。同时还可以看到在时间段(参照符Q所表示的)中没有数据传递到STD中。它的出现或者由于DSM的带宽被其它基本流占据,或者是缓存器管理的结果使多路转换器决定不能送数据到STD。
图3的图形显示在解码正常流,也就是不是目标流的开始,VBV和STD占用的情况。为了易于了解,在图形中图象从两个缓存器中被移去的时间(按术语说是系统时标)表示成相互同步的。VBV没有数据传递开始时间的概念,只有根据VBV延时图象的移去时间。为了图形的对齐,在图中一恒定的偏移被加在VBV的取样时间上。
从图3可以看到,多路转换器和编码器在片段的开始都遵循类似的策略。也就是说,它们的缓存器,如上所述,在第一图象被移去之前已填充得尽可能的多些。此时还可以发现,STD缓存器占线总是包含着VBV占用。此规律的例外是在起动期间,因为DSM的数据率高于VBV的,所以对STD的传递开始在VBV之下。
现在转到能连结在一起的系统流的产生上,包含视频的无缝隙系统流的产生将首先被考虑。再参考图1,可以看到将序列A结尾的全部位移去所花费的时间取决于对序列A的数据传递停止时,有多少图象存在在缓存器中。这个时间取决于源的素材和所用的编码器,因此,时间tx的缓存器占用Bx片段和片段之间各不相同。从而多路转换器无法计算tx和Bx应该是多少,对一般情况根据知识通常这是可以得到的,即位率,帧率和原有的Bt。
为克服上面所说未知的问题,我们利用了这样一个事实,当序列A的传递停止时缓存器中的数据是足够支持一段时间,以恒定传输率传递Bt位所需花费的时间。我们认为在多路转换的流的开始,允许设定最大的时间为传递Bt个位,即
tt=Bt/R (1)这里tt如图1所示,而R是传递率。
此时间对多路转换器很重要,因为它使得在该点上设置SCR时间,正是从这个点起第一图象要从STD缓存器中移去。从而,多路转换器被设定去填充STD缓存器至少到Bt位,同时设置SCR以便在这个时间第一图象被移走。注意这不同于传统技术在于,第一图象被移走点缓存器要求填充到尽可能的多。
需要指出的是此处STD缓存器大于VBV缓存器。在受限制的系统参数(CSPS)情况下,STD缓存器对比于VBV的最大尺寸40K字节,可高达46K字节。这多出的空间使多路转换器去交织不同的基本流进入单一系统流,避免零星传输到解码器。
图4的曲线图显示目标多路转换操作开始时VBV和STD缓存器的情况。如同图3,曲线表示相对于时间t(系统时标)的占用B(位)。它指出VBV和STD缓存器的占用,在第一图象从缓存器移走这一点上是相等的。从这一点起STD缓存器的占用开始超过VBV缓存器的占用,这是由于数据传递率较高。
多路转换器对STD缓存器的末尾状态控制非常弱。末尾状态取决于仍然在缓存器中的图象的大小,这是受编码器控制的。最好多路转换器试图尽可能快地传递数据到STD以防范所谓的SCR重迭问题。当来自第一片段的数据并非全部被交付,那里的数据变成属于下面片段的了。对此建议的多路转换器策略是对数据打包,只要STD缓存器能接受数据而不管如何的小。
图5显示在片段末尾VBV和STD状态的曲线。从而可以看出对STD的数据传递停止得早于VBV,这是因为STD缓存器较大而且接收的位率较高。朝向片段的末端此两条曲线重新会聚在一起。在此时间点上对两个缓存器的数据传递均已停止,它们持有的仅是构成片段末尾的图象。末尾图象从这些缓存器移走所花费的时间是以下一片段的数据,在该片段第一图象移走之前填充这些缓存器可用的时间,此填充时间在图1中以时间tt表示。
现转到音频信号,对于音频没有与VBV缓存器的对应物,这就使得得到无缝隙的音频比视频简单得多。其原因是音频以恒定的瞬时位率编码,换句话说,全部类似编码的音频帧是同样尺寸,不超出一个字节,而视频帧的尺寸变化取决于帧的类型和复杂程度。然而,多路转换器可以瞄准这一时间STD缓存器的状态,此时以类似于视频时的办法音频的第一帧被移走。
图6显示目标音频多路转换操作开始时的曲线。此时多路转换器瞄准2048字节(16384位)处STD的状态,在此时刻第一音频帧被移去,填充时间是相似于图1中的tt并且具有类似的特性,即该时间必须不大于在缓存器中当数据传递停止时由音频帧数代表的时间。当多路转换器达到其目标并且第一音频帧已被移走,它遵循保持STD缓存器尽可能满的策略。曲线斜率的大增表明了音频包的传输。在此情况下,音频包的大小约为2K字节,因为它曾用在CD-i的回放多路转换,而CD-i的扇区大小约为2K字节。
图7显示音频片段尾部STD情况的曲线。表示从数据停止传递时开始,缓存器中音频帧占用的有规律逐步下降。这些剩余的音频帧掩盖了从一个音频片段的结束到另一个之间的变化。它们持续的有限时间取决于帧数但参考图6可见,填充STD缓存器到其目标的时间,相对于被剩余帧掩盖的时间是非常短的,这使STD不发生下溢,这里假定了DSM位率大体上高于音频位率。我们的经验表明,对音频STD缓存器定标到50%满可给出可接受的结果。
图8所示编码设备它具有分别对视频V和音频A信号分离的编码器级10和12。还有一个用作帧参考信号的输入,它标识视频信号中的各个帧(例如用相对于序列中第一和最后图象的相对位置),被连到目标设定级14。该级指定序列中图象的位分配。要说明的是对音频解码器没有对应的目标级。由于如上所述编码的音频帧是恒定大小的,对此没有需要。
每个编码器级10,12的输出被显示为送到各自的缓存器16,18(尽管实际上这些将构成编码器级的部分)。从视频编码器级10的输出到目标设定单元14的反馈通路20,能够检查是否此设定的目标具有在编码的组中每图象所要求的位数的结果。
被缓存了的输出被多路转换器22交织(它还插入时间标记),以形成单个数据流DS(系统流)而后它可被传送到解码器或存贮在合适的介质,例如CD盘上。
在解码器方面(图9),多路分配器24通过检测器26监示输入流将流DS分到视频及音频通道。被分开的视频及音频流送到各自的缓存器28,30并从这到各自的解码器级32,34以提供解码输出信号。虽然这些缓存器实际上是形成各自解码器级的部分。它们被分开表示是为更清楚地说明STD模块。
由于多路转换器交织不同的流,整个DSM带宽不能为任何一个特定流所有。相应地,随流的数目的增加缓存器状态达到Bt位所花费的时间将增加,这有一潜在问题可能导致上面所说的SCR重迭现象,SCR重迭在下述情况下出现当在下一片段的开始增量值(估计的持续值)被加到SCR上,发现在最后片段的结尾它们小于SCR,换句话说,如下一片段的数据在当前片段的全部数据传递完之前就必须被传送。显然这是一不可能的情况而且将导致系统崩溃。
通过检查每个流,以确保数据第一次传递和将使缓存器到Bt位的包之间的时间不小于tt秒(见图1)。如果多路转换器发现时间tt超过,它知道SCR重迭可能发生,在一受监控的系统中,相应的出错信息可能提供给用户。
如果基本流位率的和大于DSM的位率则SCR重迭将要发生。然而在此情况下多路转换是不可能的,多路转换器应该退出并给出出错信息。
如果多路转换器在Bt已经达到的点上设定SCR的基本算法有误,或者多路转换器不正确地判读了Bt,则SCR的重迭也可能发生。
由于流数目的增加,伴随填充时间的增加其结果是多路转换的片段的起始SCR减少,此后传递必须开始得更早。这样一来,当增量值被加到起始SCR上,它可能小到产生SCR重迭。
对于各个流位率以及STD缓存器的大小不同,因而全部数据从DSM传到STD所用时间也是不同的。例如,音频STD缓存器是如此之小在CSPS情况下向它传送近于实时。这意味着当同样长度的音频和视频流被多路转换在一起,音频包经过最后视频包的尾端延伸,增加了最后的SCR。随着流数量的增加导致了在多路转换的流两端出现问题,也就是开始的SCR减小而结尾的SCR增加。
在多路转换操作的结尾,多路转换器按如下可检查SCR的重迭可能,依靠检测输入流多路转换器可知,对片段应该采用什么增量值并能将这个值加给片段的第一个SCR,类似的片段自身循环。多路转换器还知道本片段后面最小的下一个可能的SCR将是什么。对修正的SCR(第一个SCR加上增量值)和下一个可能的SCR的比较被执行。如果修正的SCR发现小于下一可能的SCR,则SCR的重迭已经发生。
结合音频和视频以产生无缝隙系统层片段现参考图10将给予说明。在图10中显示了对于音频/视频目标多路转换对的STD状态曲线。读者可知对两种类型的流STD曲线图的不同性质。视频STD曲线非常不整齐反映了由于图象类型的变化造成的图象尺寸变化(例如I图象大于B图象)或者图象复杂性的变化。另一方面音频的STD曲线很整齐,反映出全部音频帧是恒定大小(不超出一字节)。
图11的曲线显示了视频STD状态,与之相应的VBV状态和音频STD状态。这是显而易见的在第一图象从缓存器被移走这点上,视频STD状态并未立即达到目标VBV状态。其出现是因为多路转换器已算出,这样做将造成SCR重迭。也就是,如果填充时间被增加使得STD起始状态达到VBV的状态,在片段的开始处SCR将会太小。
依靠设法预测整个片段最后的SCR将是什么,以及找出起始SCR反向移动多少而不致发生SCR重迭,也就是说,起始SCR能负多少以使加上增量值之后给出的SCR小于片段结尾处的SCR,多路转换器计算出最大填充时间。
最后SCR的预测是靠计算每种流的持续时间长度,从中减去能够在STD中缓存的数据总量(以时间表示的)。由缓存在STD中的数据所代表的时间正好是STD的大小除以基本流的位率。应理解,对音频由于音频帧的大小是已知的,事实上缓存器必须包含整数个数,对缓存器时间的预测可以得到更好的精度。当然这不能用于视频,因为帧的大小是变化的。
对各个流最后的SCR被计算出而这最大的值被采用。实际上,如果音频和视频流为同样长,最大的最后SCR几乎总是从音频流中得出,在视频数据率接近音频数据率这种不大可能的情况下,情况可能改变。
考虑到多路转换器产生的起始STD状态,它并未达到VBV的起始状态,这里存在一潜在的问题在此流中,在STD状态赶上VBV状态之前很大的图象可能产生缓存器下溢。虽然这实际上不一定发生但理论上是有可能的,克服此问题的办法是在片段的开始限制编码器产生的图象的大小。
此处需要指出,尽管上面所说的方法在估计片段最后的SCR应该是什么样的方面给出了一合理的精度,并不是永远都有足够的精度,取决于特定的应用。由于存在一些情况误差可能出现,这些情况影响经由多路转换操作的包分配。一旦多路转换器已经贯穿了片段,误差才能被发现。由于这个原因,要求精确的用户必须运行多路转换器再次,这第二次修改某些参数(例如缩短音频或降低目标)以得到无重迭的SCR。自动产生有效片段的方法必然是两遍方案。第一遍采用上面所说最佳精测方法,而第二遍考虑任何修正,这种修正可能必须在第一遍结果的基础上作出。
现在参考图12,图中显示了在片段的结尾音频和视频STD的状态。可看出对音频STD的数据传递超过对视频STD尾端的传递,所以音频是控制结尾SCR的流。如上所述,多路转换器通过尽可能快地传递数据到STD能力图降低最后的SCR,为此合适的技术应当是做成包,这些包小于在多路转换操作结尾的优化值。
现转到时间标记上,多路转换器仅有的时间标记并对其控制的是SCR,这是一时间,在此时刻一个包被传递。当用户决定第一帧的PTS应当是什么时另外的时间标记(PTS和DTS)被设置。为了由上面的方法产生的片段显现出对解码器无缝隙,时间标记必须表现线性增加,也就是说,解码器看来时间标记不能有突然的跳变。这通过以下办法可实现,加一个增量值到下一片段的全部时间标记上,这样它们具有的值将显得比当前片段的都要长一些。
此增量值必须先于解码器见到数据时被加上,这些值可如此被加上,例如-在送片段给解码器之前申请;-驱动器,它送片段给解码器;-远程服务器的CPU,在视频数据向下发送之前由电话线送到机顶盒(set-tap box)。
当前片段最后帧的下一帧的PTS(正在处理的)和下一片段第一帧的PTS之间的差就是增量值,由下面等式计算Δ=PTSlast+PTSstep-PTSfirst(2)其中PTSlast是当前片段最后帧的PTSPTSstep是相邻PTSS的增加值
PTSfirst是下一片段第一帧的PTS。
如果打算音频与视频相互同步地无缝隙播放MPEG片段,只可能有一个增量值被加到两种数据类型的时间标记上。这是由于在MPEG系统层的时间是由SCR表示,对于两个类型的数据流作了同样速率的增加。如果增量值不同,因为时间标记越远越分开我们将失去同步。下面讨论的问题是如何从帧周期,以及上面得到到的PTSstep计算出对音频和视频应当是不同的增量值。
读者将会熟悉所说的“帧率”,当应用于视频时,例如对PAL制是25赫兹而对于NTSC制是29.97赫兹。然而MPEG编码的音频也分成帧,对层次1的帧包含384个采样,而对层次II和III为1152个采样。它们形成独立的数据块,当放在一起时,这样数据块构成了MPEG音频流。为使解码器产生所希望的输出,它必须接受整数的帧,送半帧音频将造成失灵,甚至可能系统崩溃。这就出现了问题,因为对任何MPEG片段,由其包含的音频帧和视频帧换算的时间通常是不同的。就图13而论它给出了5秒钟的一段视频和音频,此不同的原因将会很明显。
图13显示了表示整数个音频帧和视频帧的两个块,每个块中的帧数目是这块的时间尽可能接近5秒钟,如使音频和视频之间的定时差异最小,多路转换器被合适地配置以便能够选择单独的流段,也就是说不限定取完整的音频或视频文件。按此办法各自的开始和结束能被选择,以便在片段长度内使总的音频和视频之间的差异达到最小。
通过例示的方法现在我们来看,如果图13的数据是包含在系统文件中,我们想用从视频或音频计算出的增量值使其循环,会有什么情况发生。
首先取视频的增量值,施加视频增量值到视频数据上,在循环期间导致一稳定的视频帧。然而,如果这增量值(5秒钟)曾用于音频块,在循环开始的时间标记应被修正到与结束时的相同。这无疑不能工作并造成要求减少音频帧数到191给出191×1152/44100=4.989秒然而,在5秒的音频的开始修正过的时间标记,超过在结尾时的,给出10.6毫秒的误差,它是一个音频帧的40.6%,这个差异将导致从循环的结尾到开始10.6毫秒没有声音。
现转到音频增量值,采用这个值音频帧率被保存。然而,在对视频修正的时间标记和如果其帧率是常数时它们应有的值之间,有一15.5毫秒的差值,这是视频帧的38.8%。此差值本身表明片段最后帧冻结15.5毫秒,且此帧仍停留在屏幕上。
上面论证了对于不同帧长问题没有完美的解决办法或者是音频无声或者出现视频帧冻结,尽管依靠上面所说取基本流段而不是整个文件,使冻结持续时间最短、二者中相比之下冻结视频帧更为可取,因为用户较难感觉到。而声音的停顿会是非常明显的。为此原因,当试图音频和视频的同步循环时建议音频被用作驱动数据类型得到增量值。
由于阅读了本发明的内容,对于本领域的一般技术人员其它的改变都是明白的,这些改变可能包括另外的特点,在编辑音频和/或视频信号的方法和设备以及其部件中,这些特点是已经知道的。这些特点可被用来替代或者附加到已经在此说明过的特点上。尽管权利要求书已按特定的特征组合提出申请,应当懂得本发明申请公开的范围还包括新的特征或者任何以隐含的、明显的或其一般通则公开的新的特征组合,无论是否与现行申请的任何权利要求项的同样发明有关,以及是否如本发明所做的,去调节某些或所有类似技术问题。申请人特此予以通知,在本申请或由此导出的任何进一步的申请的实施期间,对于这些特征和/或这些特征的组合,新的权利要求书可能被系统地提出。
权利要求
1.一种编码数字视频信号的方法,以每段包含两个或更多视频帧的形式,并且在一解码设备中,该设备具有一编码级,一编码缓存器,以及将编码视频信号至少和另外一种信号交织以形成系统流的装置,对于每个段,此方法包括下列步骤-根据预定的编码方案相继地编码段中的各个帧;-读编码帧送入缓存器;-以基本上恒定的位率从缓存器读出编码的段;和-将缓存器输出信号与一个或更多时间标记交织在一起得到系统流;其特征在于编码缓存器的占用被控制以具有第一预定准线(level),前一段的最后帧此时刻已被读入此位置,此占用准线与解码器缓存器的占用准线有关,其特征还在于此方法包括的进一步步骤有-得到以恒定位率填充解码器缓存器从空到所说解码器缓存器占用准线所需的时间t;-对当前段预测持续增量Δ;-对当前段的最后帧将从解码器缓存器读出点预测时间值;-降低t值直到由(t+Δ)给出的时间值接近且略大于所说的时间值,在此时间,当前段的最后帧将从解码器缓存器中被读出;和-插-时间标记到该段的系统流中,指出这个段的第一帧在加载段开始以后,在由降低了的t值给定的时间,将从解码器缓存器中读出。
2.按照权利要求1所要求的一种方法,其中对当前段的最后帧将从解码器缓存器读出点的时间值,可通过从解码器缓存器以时间计的最大容量减去段的持续时间的计算而被预测。
3.按照权利要求1所要求的一种方法,其中当对当前段的最后帧将从解码器缓存器读出点的时间值,对每个交织的流被预测,并且这最大值被用于对全部流的降低t值的获取。
4.按照权利要求1所要求的一种方法,其中用于编码第一段图象的目标位数被可控制地改变例如达到所说的编码器缓存器占用准线。
5.按照权利要求1所要求的一种方法,其中,最大编码器缓存器占用准线被指定,并且解码器缓存器占用准线被定义为所说最大准线和在第一段最后图象已被读入编码器缓存器之后,一帧周期编码器缓存器占用准线之间的差。
6.按照权利要求1的方法,其中段中的图象按MPEG标准被编码。
7.一种以编码图象段而配置的数字视频信号编码器设备,这里每个段包含两个或更多视频帧,此设备包括-编码级安排来接收段的连续帧,并按照预定的编码方案将它们编码;-缓存器连结用以接收来自编码级的连续编码帧,并安排以基本恒定的位率输出编码的段;和-多路转换器连结用以接收缓存器输出和至少一种其它信号,并安排将它们交织成为系统流;其特征在于编码级以可控制的可变位数操作去编码段中的图象,例如,在段的最后图象被读入编码器缓存器的瞬间给出预定的编码器缓存器占用,产生段的持续时间预测值和该段的最后帧从解码器缓存器被读出点的时间预测值,并根据它确定时间值,另外所说多路转换器安排用来插入时间标记到段的系统流中,指示此段的第一帧,在开始装载此段进入解码器缓存器之后的所说确定的时间值,将从解码器缓存器中被读出。
8.根据权利要求7的设备,它还包括另一个编码级安排来接收连续的数据帧,并按照所说的预定编码方案将它们编码,还有另一个缓存器连结用以接收来自所说的另一个编码级的连续编码数据帧,并安排以基本恒定的位率输出编码的数据,其中所说的至少一种由多路转换器接收的其它信号是另一个缓存器的输出。
9.一种数字视频图象信号包含有大量根据权利要求1的方法编码的段,该包含编码段流的信号至少与一种其它信号交织成为系统流,对每个段此系统流包括所说的时间标记,它指示在加载段进入编码器缓存器开始后,由减小了的t值给定的时间,各自段的第一帧从解码器缓存器中读出。
10.载有如权利要求9所要求的视频图象信号的一种光盘。
全文摘要
一种供编码数字视频信号段的方法,这些信号段被交织以形成单一系统流(视频STD加音频STD)。为了使段的连接无缝隙,视频系统层缓存器加载的控制与视频层缓存器加载(VBV占用)有关。从第一图象准备从解码器缓存器读出这一点的概念匹配开始,第一图象准备从系统层缓存器读出的点。根据预测的段持续时间所确定的量而被修正。而且在此点,段的最后帧预期被读出。此修正避免了概念匹配情况因原始定时值可能造成的段的重迭。本技术尤其适用于交互式多媒体应用,在那里要求没有明显视觉不连续地视频片段的实时拼接。
文档编号H04N7/24GK1144030SQ95192060
公开日1997年2月26日 申请日期1995年11月24日 优先权日1994年12月2日
发明者S·布兰查德 申请人:菲利浦电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1