视频编码的制作方法

文档序号:7679346阅读:242来源:国知局
专利名称:视频编码的制作方法
视频编码
背景技术
当前存在不同的能够用来压缩和解压缩视频内容的视频压缩标准。
例如,运动图像专家组(MPEG)已经定义了不同的碎见频压缩标准。他们 的日益流行的视频压缩标准之一是MPEG- 4 AVC (高级视频编码),其也 被称为MPEG-4 Part 10。应当注意MPEG-4 AVC类似于由国际电信联盟 (ITU)定义的H. 264视频压缩标准。
MPEG-4AVC日益流行的一个原因是因为它能够比例如MPEG-2的当 前标准更好地处理大量的视频内容数据。该能力是希望的,因为高清晰 度(HD)视频内容正变得越来越流行,并且,其涉及比传统的视频系统多 几倍的视频内容数据。鉴于上述事实,那些HD视频内容广播公司希望 将同样多的HD信道装配到它们传统上使用的相同的带宽内。
然而,MPEG-4AVC的一个问题是为了压缩碎见频内容,它的比特流语 法要考虑几乎无限数目的帧来进行运动预测。应当注意随着用于运动预 测的帧数目的增加,解码器解压缩该视频内容所需要的帧緩冲器的数目 也增加。帧緩沖器可能价格昂贵,从而如果不对视频比特流的压缩过程 施加限制,将使经济合算的解码方案难以实行。然而,当施加更多的限 制时,得到的视频比特流的质量可能受到损害。因而,希望使用 MPEG-4AVC来基于经济合算的解码方案产生最高质量的视频比特流。


图1示出MPEG-1和MPEG-2呈现视频流的示例性运动参考结构。 图2示出能够根据本发明的各种实施例使用的MPEG-4 AVC呈现视
频巾贞次序的示例性运动参考结构。
图3是基于图1示出的不同视频帧类型的呈现比特流的示例性比
特流帧排序。
图4示出由于对符合MPEG-1和MPEG-2的解码的视频帧进行緩冲所 导致的示例性的一个帧延迟。
图5示出由于对与MPEG-4 AVC相关联的解码的视频帧进行緩冲所 导致的两个帧延迟。
图6是根据本发明的各种实施例的示例性方法的流程图。图7是根椐本发明的各种实施例的另一示例性方法的流程图。 图8是根据本发明的各种实施例的示例性系统的框图。
具体实施例方式
现在将详细参照根据本发明的各种实施例,所述实施例的例子如附 图所示。虽然本发明是结合各种实施例来进行描述的,但应当理解这些 各种实施例不打算限制本发明。相反,本发明旨在覆盖可以包含在如根 据权利要求书解释的本发明的范围内的可选方案,修改和等效方案。此 外,在根据本发明的各种实施例的以下详细描述中,陈述了许多具体细 节以提供对本发明的彻底理解。然而,对于本领域普通技术人员显而易 见的是,本发明可以在没有这些具体细节的情况下实施。在其它情况中, 众所周知的方法、过程、部件、和电路没有被详细描述以便不会不必要 地使本技术的各个方面不清楚根椐本发明的各种实施例可涉及视频压缩。能够用于视频压缩的其 中一种技术被称为运动预测或者运动估计,这是本领域普通技术人员所 熟知的。应当理解视频序列包含相当多的时间冗余,其中相邻帧之间的 差异通常由场景对象或者摄像机运动(或者两者)造成,这可以被用于视 频压缩。运动估计是一种用来去除包含在视频序列内的时间冗余的技术。
应当注意存在不同的视频压缩标准。例如,运动图像专家组(MPEG) 已经定义了不同的视频压缩标准。根据MPEG视频压缩标准,视频帧能 够被划分为若干矩形不重叠块并且每个块可以与运动参考帧中的另一 块相匹配,这也称为块匹配预测。应当理解该匹配越好,可达到的压缩 越高。MPEG-1和MPEG-2视频压缩标准每一个都基于运动估计,这是因 为在相邻视频帧当中存在许多冗余,并且利用这种依赖性导致更好的压 缩。因此,希望使最小可能数目的比特来代表视频比特流同时以优化的 视觉质量保持它的内容。
作为执行运动估计的一部分,MPEG-1和MPEG-2包括三种不同的4见 频帧类型I帧、P帧和B帧。具体地,I帧不利用帧间运动(没有运动 预测),其是独立可解码的,类似于静止图像压缩,例如JPEG(联合图 像专家组)。另外,P帧可以被定义为仅使用一个运动参考帧(先前的 P帧或者I帧,时间上首先到来的随便哪一个帧)的视频帧。应当注意, I帧和P帧都能够是运动参考帧,因为其它视频帧能够使用它们来进行运动预测。最后,B帧能够使用两个运动参考视频帧进行预测 一个先 前的视频帧(可以是I帧或者P帧)和一个未来的视频巾贞(可以是I帧或 者P帧)。然而,B帧不是运动参考帧;它们不能被任何其它视频帧用来 进行运动预测。应当注意P帧和B帧两者都不是独立可解码的,这是因 为它们依赖于其它视频帧进行重建。应当注意B帧比P帧提供更好的压 缩,P帧比I帧提供更好的压缩。
图1示出MPEG-1和MPEG-2呈现视频流100的示例性运动参考结构。 应当指出并没有示出所有视频帧的运动参考。具体地,P帧的运动估计 可以涉及使用先前的I帕或者P帧(时间上首先到来的随便哪一个帧), 这涉及使用一个帧緩沖器进行运动预测或者估计。例如,对于例如呈现 视频流100的P4帧的P帧,运动估计可以涉及使用先前的II帧,如箭 头102所示。此外,呈现视频流100的P7帧可以涉及使用先前的P4帧 进行运动估计,如箭头104所示。
应当理解B帧的运动估计涉及使用先前的I帧或者P帧(时间上首 先到来的随便哪一个帧)和未来的I帧或者P帧(时间上首先到来的随 便哪一个帧),这涉及使用两个帧緩沖器进行双向运动估计或者预测。 例如,对于例如呈现视频流100的B2帧的B帧,运动估计可以涉及使 用先前的II帧(如箭头112所示)以及未来的P4帧(如箭头110所示) 进行运动预测或者估计。另外,呈现视频流100的B6帧可以涉及使用 先前的P4帧(如箭头108所示)以及未来的P7帧(如箭头106所示)进 行运动预测或者估计。
在图1中,呈现视频流100包括示例性视频帧,但不限于,II帧、 之后的B2帧、之后的B3帧、之后的P4帧、之后的B5帧、之后的B6 帧、之后的P7帧、之后的B8帧、之后的B9帧、之后的110帧、之后 还可以跟其它纟见频帧。
如前所述,MPEG-1和MPEG- 2 一见频压缩方案的每一个将运动预测(或 者估计)限制到最多两个参考视频帧。然而,与此相反,MPEG-4AVC(高 级视频编码)通过允许更大数目的参考^l频帧来一般化运动估计。应当 注意MPEG-4 AVC (也称为MPEG-4Part 10)类似于国际电信联盟(ITU ) H, 264标准。应当理解MPEG-4 AVC编解码器提供了定义任意数目的运动 参考帧的自由。例如,几乎任何先前被编码的视频帧可以是参考视频帧, 因为它对于运动估计或者预测是可用的。应当指出先前编码的视频帧可
5以来自于时间上的过去的视频帧或者未来的视频帧(相对于待编码的当
前视频帧)。相反,在MPEG-1和MPEG-2内,I帧和P帧可以用作运动 参考视频帧,但B帧则不行。然而,在MPEG-4AVC内,B帧也可以是运 动参考视频帧,称为参考B帧(由"Br"表示)。在MPEG-4 AVC内,对 一般化的P和B视频帧的定义如下所述。该P帧能够使用多个运动参考 视频帧,只要它们来自于时间上的过去。另外,该B帧能够使用来自时 间上的过去或者未来的多个运动参考帧,只要它们先前被编码。
图2示出能够根据本发明的各种实施例使用的MPEG-4 AVC呈现视 频帧次序200的示例性运动参考结构(或者估计)结构。应当指出并没有 示出所有视频帧的运动参考(或者估计)。应当注意在呈现帧次序200内, "Br"表示参考B帧。如MPEG-4 AVC呈现视频帧次序200所示,存在 可以执行运动估计的许多可能性。例如,例如P9帧的P帧的运动估计 可以涉及使用来自时间上在过去的任何先前参考帧,例如II帧(如箭头 202所示)、Br3帧(如箭头204所示)、和/或P5帧(如箭头206所示)。
至于B帧,存在与MPEG-4 AVC相关联的两个不同的类型参考Br 帧和B帧。具体地,例如Br3帧的Br帧的运动估计可以涉及使用来自 时间上的过去和未来两者的其它参考视频帧,只要它们已经被编码。例 如,呈现帧次序200的Br3帧的运动估计可以涉及使用先前时间的II 帧(如箭头102所示)和将来时间的P5帧(如箭头210所示)。
最后,在图2内,B帧(例如,B10帧)的运动估计还可以使用包 括Br帧在内的来自时间上的过去和未来两者的参考帧,但是它们本身 不能被用作参考帧。例如,呈现帧次序200的B10帧的运动估计可以涉 及使用先前时间的P9帧(如箭头220所示)、将来时间的Brll帧(如箭 头224所示)以及将来时间的113帧(如箭头222所示)。此外,B8帧的 运动估计可以涉及使用先前时间的Br7帧(如箭头216所示)和将来时间 的P9帧(如箭头218所示)。此外,B6帧的运动估计可以涉及使用先前 时间的P5帧(如箭头212所示)和将来时间的Br7帧(如箭头214所示)。
应当注意在运动估计期间,希望利用尽可能靠近当前帧的参考帧。 因而,希望利用如在呈现;f见频帧次序200中所示的Br帧(例如Brll和 Br7)。例如,如果具有离当前帧太远的参考帧,由于对象可能在视野 之外或者改变了取向,该参考帧可能不能提供良好的运动匹配。
在图2中,呈现帧次序200包括示例性图像巾贞,但不限于,II帧、之后的B2帧、之后的Br3帧、之后的B4帧、之后的P5帧、之后的B6 帧、之后的Br7帧、之后的B8帧、之后的P9帧、之后的B10帧、之后 的Brll帧,之后的B12帧,之后的113帧,之后还可以跟其它视频帧。
应当注意图1示出了该视频帧的显示或者呈现次序100,其是该视 频帧应该如何被呈现给显示装置的时间序列。应当理解因为双向的运动 预测(或者估计),呈现比特流次序100的B帧依赖于过去的和未来的视 频帧。然而,使用未来的帧涉及打乱呈现比特流次序100的视频帧次序 使得适当的参考帧能够用于编码或者解码当前帧。例如,B5帧和B6帧 都依赖于P4帧和P7帧,该P4帧和P7帧必须在对B5帧和B6帧编码之 前被编码。因此,在MPEG比特流中的视频帧排序不是时间上线性的并 且与实际的呈现次序不同。
例如,图3是基于图1所示的不同视频帧类型的呈现比特流100的 示例性比特流帧排序300。具体地,视频比特流300的第一视频帧是II 帧,因为它的编码不依赖于任何参考视频帧,并且它是呈现比特流100 的第一视频帧。下一个是P4帧,因为它的编码基于I1帧,并且它必须 在对B2帧编码之前被编码。下一个是B2帧,因为它的编码基于II帧 和P4帧。下一个是B3帧,因为它的编码也基于II帧和P4帧。下一个 是P7帧,因为它的编码基于P4帧并且它必须在对B5帧编码之前被编 码。下一个是B5帧,因为它的编码基于P4帧和P7帧。下一个是B6帧, 因为它的编码也基于P4帧和P7帧。下一个是I10帧,因为它必须在对 B8帧和B9帧编码之前被编码。下一个是B8帧,因为它的编码基于P7 帧和I10帧。下一个是B9帧,因为它的编码也基于P7帧和110帧。以 这样的方式,能够基于呈现比特流100(图1所示)的排序来产生该比特 流帧排序300。因而,通过利用比特流帧排序300,适当的参考帧可用 来对当前视频帧进行编码或者解码。
在图3中,视频比特流300包括示例性视频帧,但不限于,U帧、 之后的P4帧、之后的B2帧、之后的B3帧、之后的P7帧、之后的B5 帧、之后的B6帧、之后的110帧、之后的B8帧、之后的B9帧、之后 还可以if艮其它^L频帧。
应当注意由于打乱了视频比特流300的帧排序,在解码时,视频帧 不能被立即显示或者呈现。例如,在对视频比特流300的视频帧P4解 码之后,P4可以被存储,因为它不应当在4见频巾贞B2和B3已经被解码和
7显示之前被显示或者呈现。然而,这类帧緩沖器可以引入延迟。
例如,图4示出由于对符合MPEG-1和MPEG-2的解码的图像帧进行 緩沖造成的示例性的一个帧延迟。具体地,图4包括(图3的)视频比 特流帧次序300以及位于比特流次序300下面的(图1的)对应的视频 呈现次序100。此外,呈现排序100被右移一个帧位置,从而代表由在 比特流300的解码视频帧被显示或者呈现之前对其的緩沖处理所导致的 一个帧延迟。
例如, 一旦比特流300的II帧被解码,它不应当被显示或者呈现, 因为直到P4帧已经被解码之后,下一个视频帧(B2帧)才能被解码和 显示。因而,该II帧能够被緩冲或者存储。接下来, 一旦已经利用II
帧对P4帧进行了解码,n帧能够被显示或者呈现,同时P4帧能够被緩
沖或者存储。此后,能够使用II帧和P4帧解码B2帧以便它能够被显 示或者呈现。应当理解对该比特流300的解码导致1帧延迟,这可以称 为解码呈现延迟。对于MPEG-1和MPEG-2,应当理解最大延迟是独立于 运动参考结构的一个帧。
应当注意鉴于图4的一个帧延迟,解码器将具有用于该延迟的帧緩 冲器以及用于在解码期间存储两个参考帧的两个附加的帧緩沖器。
然而,对于新的视频压缩/解压缩标准(例如MPEG-4 AVC),解码 呈现延迟是更严重的问题,这是因为由于MPEG-4 AVC的灵活的运动参 考结构,该呈现延迟可以是无限制的。
例如,图5示出由于对与MPEG-4 AVC相关联的解码的图像帧进行 緩冲所导致的示范性的两个帧延迟。具体地,图5包括视频比特流帧次 序500,其对应于(图2的)视频呈现帧次序200,该视频呈现帧次序 200位于该比特流次序500下面。另外,呈现帧排序200被右移两个帧 位置,从而代表由在比特流帧次序500的解码视频帧被显示或者呈现之 前对其的緩沖处理所导致的两个帧延迟。具体地,从图5中可见,通过 使用I帧和P帧(I/P帧)的相邻对或者P帧(P/P帧)的相邻对之间的一 个参考Br帧(例如,Br3),呈现延迟比图4的呈现延迟增加一。应当 注意,当越来越多的参考Br帧位于相邻的I/P帧或者P/P帧之间时, 图5的呈现延迟的值能够无限制地增长。
实际上,希望一些实际的解码器限制该呈现延迟。例如,随着该呈 现延迟的增加,解码器帧緩冲器的数目增加,从而导致越来越昂贵的解码器。此外,随着该呈现延迟的增加,该解码器例如在电信会议期间可 能不能正常运行,在该期间呈现延迟通常是不可接受的。然而,应当注
意,当实际解码器被实现以限制呈现延迟时,MPEG-4 AVC比特流的视频 质量也将会受到负面影响。
在图5中,应当理解视频比特流次序500能够以类似于视频比特流 次序300的方式产生。然而,图5的视频比特流次序500能够基于如上 参考图2的视频呈现帧次序200所述的运动估计编码。
图6是根据本发明的各种实施例的用于基于至少 一个解码器约束 来优化视频比特流的质量的示例性方法600的流程图。方法600包括本 发明的各种实施例的示例性过程,该过程能够由一个(或多个)处理器 和电气部件在计算装置可读并且可执行的指令(或者代码)(例如软件) 的控制下执行。该计算装置可读并且可执行的指令(或者代码)可以驻 留在例如数据存储部件中,例如能够被计算装置使用的易失性存储器、 非易失性存储器和/或大量数据存储器。然而,该计算装置可读并且可 执行的指令(或者代码)可以驻留在任何类型的计算装置可读介质中。 虽然在方法600中公开了具体操作,但是这样的操作是示例性的。方法 600不一定包括图6示出的所有操作。同样,方法600可以包括各种其 它操作和/或如图6所示的操作的变型。同样,方法600的操作序列能 够被修改。应当注意方法600的操作可以被手动地执行、通过软件、通 过固件、通过电子硬件、或者通过其任意组合执行。
具体地,方法600可以包括确定与视频解码器相关联的至少一个约 束。可以确定能够用来编码视频内容的参考B帧的最大数目。应当注意 该最大数目可以基于与该视频解码器相关联的至少一个约束。可以在该 视频内容内检测至少 一个—见频特性。还可以使用至少一个^L频特性来对 该—见频内容编码。
在图6的操作602处,可以确定与视频解码器相关联的至少一个约 束。应当注意操作602能够以多种方式实施。例如在各种实施例中,该 视频解码器可以包括但不限于多个帧緩沖器。在各种实施例中,该约束 可以是以下的一个或多个,但不限于此等于由该视频解码器包括的该 多个帧緩沖器的数目、等于与该视频解码器相关联的可容许的呈现帧延 迟。在各种实施例中,应当注意该祝频解码器能够告诉视频编码器它有 多少帧緩冲器用于解码。应当指出是在某些情形下,该呈现帧延迟不是真正的问题。例如在各种实施例中,DVD重放的呈现延迟通常不是问题。 然而,对于交互性活动,例如通信、视频通话类型、和视频会议,延迟 可能是个问题。应当注意运动参考緩沖器和/或呈现延迟能够与用来解 码的帧緩沖器的数量相关。它们对MPEG-1和MPEG-2比特流几乎没有影 响,因为它们具有小值,但对于MPEG-4 AVC,该值可能对于实际实施来 说太大了,从而使它们成为值得考虑的设计变量。在例如DVD播放机的 数字视频消费市场中,解码器通常是面向大众的并且为了盈利,它们的 成本应该被保持得较低。以帧緩沖器为形式的存储器较昂贵,因此在解 码端(例如DVD播放机)通常要求限制运动参考和/或呈现緩沖器。这 样的解码器硬件约束可能影响MPEG-4 AVC比特流的视频质量。因而, 方法600可以采用给定的预置参数值,并且然后确定如何可以在编码端 优化视频比特流。应当注意操作602能够以与此处所描述的方式类似的 任何方式实施,但不限于此。
在操作604,可以确定能够用来编码视频内容的参考B帧的最大数 目。应当注意该最大数目能够基于与该视频解码器相关联的约束。应当 理解操作604能够以多种方式实施。例如在各种实施例中,该最大数目 可以是但不限于等于该多个帧緩冲器的数目减二、和/或等于与该视 频解码器相关联的可容许的呈现帧延迟减一。具体地,给定运动参考帧 緩冲器的数目是N, Br帧的最大数目是N-2。假如呈现帧延迟为D, Br 帧的最大数目是D-1。由此,可容许的Br帧的净数目是这两个值中较小 的一个min{N-2, D-1}。然而,应当理解,N-2或者D-l能够被用作操 作604的最大值。应当理解因为MPEG-4 AVC允许参考B帧(Br帧),所 以希望在编码运动参考结构的相邻的1/P对之间使用尽可能多的Br帧。 如此处所述,Br帧的最大数目由可用的解码运动参考緩沖器和解码呈现 延迟确定。应当注意操作604能够以与此处所描述的方式类似的任何方 式实施,但不限于此。
在图6的操作606处,可以在—见频内容内检测至少一个碎见频特性。 应当理解操作606能够以多种方式实施。例如在各种实施例中,操作606 能够以与此处所描述的方式类似的任何方式实施,但不限于此。
在操作608,还可以使用至少一个视频特性来对该视频内容进行编 码。应当理解操作608能够以多种方式实施。例如在各种实施例中,操 作608能够以与此处所描迷的方式类似的任何方式实施,但不限于此。
10图7是根据本发明的各种实施例的用于基于该视频内容的至少一 个视频特性来适配(adapt )视频内容的编码的示例性方法700的流程 图。方法700包括本发明的各种实施例的示例性过程,该过程能够通过 一个(或多个)处理器和电气部件在计算装置可读并且可执行的指令(或 者代码)(例如软件)的控制下执行。该计算装置可读并且可执行的指 令(或者代码)可以驻留在例如数据存储部件中,例如能够被计算装置 使用的易失性存储器、非易失性存储器和/或大量数据存储器。然而, 该计算装置可读并且可执行的指令(或者代码)可以驻留在任何类型的 计算装置可读介质中。虽然在方法700中公开了具体操作,但是这样的 操作是示例性的。方法700不一定包括图7示出的所有操作,同样,方 法700可以包括各种其它操作和/或如图7所示的操作的变型。同样, 方法700的操作的序列能够被修改。应当注意方法700的操作能够被手 动地执行、通过软件、通过固件、通过电子硬件、或者通过其任意组合 执行。
具体地,方法700可以包括检测视频内容内的至少一个视频特性。 对视频内容的编码可以基于至少 一个视频特性以便增强视频内容的视 觉质量。方法700可以包括确定与视频解码器相关联的约束,其中该编 码还能够基于该约束。应当理解,在各种实施例中,方法700能够被用 于确定运动参考结构编码内的最好的Br帧位置。
例如,假如在两个相邻的1/P之间有一个Br(假定卜3, D-2,如上 所述),因此可能的Br位置是
"P B Br B P,, , "P Br B B P,, , "P B B Br P,,
该比特流应当使用给出最好视频质量的结构。该决定的结果取决于 该视频特性,例如帧之间的运动量、场景改变、对象遮蔽(object occlusion)等。作为自适应Br如何可以用于场景改变时的4见频质量的 示例,考虑以下更简单的结构,"I Br B P"或者"I B Br P"。如果 内容场景改变紧随在I帧之后(从而使该I帧对于运动估计基本上没 用),则可以选择"I Br B P",并且如果内容场景改变正好在P帧之 前(从而使P帧对于运动估计基本上没用),则选择"I B Br P"。
在图7的操作702处,可以在视频内容内检测至少一个视频特性。 应当注意操作702能够以多种方式实施。例如在各种实施例中,在操作 702处的视频特性可以是但不限于,该视频内容内的至少一个内容场景改变、至少一个^皮遮蔽的物体、— 见频内容的至少两个帧之间的运动量, 等等。在各种实施例中,应当注意场景改变检测器能够被用来检测至少 一个视频特性。在各种实施例中,至少一个视频特性能够通过基于(例 如)不同运动参考模式来产生比特流并且选择导致最小数目的比特的那 一个模式来实施。在各种实施例中,至少一个视频特性能够在该编码器 端处通过对该一见频内容编码并且接着解码以及然后将不同的解码视频 与原始视频相比较来实施。然后能够用度量来比较该解码视频,然后可
以选择那一个。应当理解操作702能够以与此处所描述的方式类似的任 何方式实施,但不限于此。
在操作704处,对视频内容的编码可以基于至少一个视频特性以便 增强视频内容的视觉质量。应当理解操作704能够以多种方式实施。例 如在各种实施例中,至少一个视频特性能够被用来确定导致使用尽可能 多的参考帧进行运动估计以及对Br帧和B帧编码的运动参考帧结构。 应当注意操作704能够以与此处所描述的方式类似的任何方式实施,但 不限于此。
在图7的操作706处,能够确定与视频解码器相关联的至少一个约 束,其中编码操作704也能够基于该约束。应当理解操作706能够以多 种方式实施。例如,在各种实施例中,操作706能够以与此处所描述的 方式类似的任何方式实施,但不限于此。
应当注意方法600和700能够用多种方式进行组合。例如,对^f见频 内容的编码能够基于运动参考帧緩沖器的数目、期望的呈现帧延迟、和
/或基于该视频内容的至少 一 个视频特性来修改编码。应当注意这些中 的每一个能够独立使用或者以其任意组合使用。应当理解使用它们的全 部可以比仅仅使用它们中的一个提供更好的结果。例如,能够选择要用 的Br帧的最大数目,但是运动参考结构的模式(pattern)可以被固定。 或者运动参考结构的模式可以是自适应的,而不是使用最大数目的Br 帧。
图8是示出根据本发明的各种实施例的示例性编码器/解码器系统 800的框图。系统800可以包括但不限于可以耦合到输入^见频802和 视频编码器806的输入帧緩沖器804和运动帧緩冲器805。应当注意帧 緩冲器804和805能够用一个或多个帧緩沖存储器来实施。视频编码器 806可以耦合到视频解码器808。 ^见频解码器808可以耦合到运动帧緩沖器809和输出帧緩沖器810,该输出帧緩冲器810可以被耦合以输出 输出视频812。应当注意帧緩沖器809和810能够用一个或多个帧緩沖 存储器来实施。应当理解视频解码器808可以耦合到帧緩冲器809和810 以及视频编码器806。因而,视频解码器808可以将它能够用来解码的 帧緩冲器的数目通知或者传送给视频编码器806。
应当理解,该系统800可以用比图8所示的那些更多的附加或者更 少的元件实施。应当注意,视频编码器806和视频解码器808每个都可 以用软件、固件、电子硬件、或者其任何组合来实施。
在图8中,应当理解,系统800能够被用来以与此处描述的方式类 似的、但又不限于此的任何方式确定将产生最好或者最佳的视频质量比 特流的运动参考结构。
在各种实施例中,系统800能够以多种方式实施。例如,系统800 能够被实施为DVD播放机和DVD编码器的组合。具体地,在各种实施例 中,视频解码器808和帧緩沖器809和810能够被实施为DVD播放机的 一部分。此外,在各种实施例中,视频编码器806和帧緩沖器804和805 能够被实施为DVD编码系统的一部分。然而,应当注意,4见频编码器806 也许必须知道该DVD播放机的视频解码器808以及帧緩冲器809和810 的约束以便确定用于对输入视频802编码的运动参考結构。
为了说明和描述,已经给出了根据本发明的各种具体实施例的上述 描述。上述描述不打算是穷举的或者将本发明限制为所公开的确切形 式,并且明显地,根椐上述教导,许多修改和变化是可能的。本发明能 够根据权利要求书和它们的等价物来解释。
1权利要求
1. 一种方法(600),包括确定(602)与解码器(808)相关联的约束;并且确定(604)能够被用来编码视频内容(802)的参考B帧的最大数目,所述最大数目基于与所述解码器相关联的所述约束。
2. 根据权利要求1所述的方法,其中所述解码器包括多个帧緩沖器(809 )。
3. 根据权利要求2所述的方法,其中所述约束等于所述多个帧緩冲器的数目。
4. 根据权利要求2所述的方法,其中所述最大数目等于所述约束减
5. 根据权利要求1所述的方法,其中所述约束等于与所迷解码器相关联的可容许的呈现帧延迟。
6. 根据权利要求5所述的方法,其中所述最大数目等于所迷约束减
7. 根据权利要求1所述的方法,进一步包括检测(606 )所述视频内容内的内容场景改变。
8. 根据权利要求7所述的方法,进一步包括利用(608 )所述内容场景改变来编码所述视频内容。
9. 根据权利要求1所述的方法,进一步包括检测(606 )所迷一见频内容的至少两个帧之间的运动的量。
10. 根据权利要求1所述的方法,进一步包括检测(606 )在该一见频内容内被遮蔽的对象。
全文摘要
根据本发明的一个实施例是一种方法(600),该方法能够包括确定(602)与解码器(808)相关联的约束。此外,该方法可以包括确定(604)能够用来对视频内容(802)编码的参考B帧的最大数目。应当注意该最大数目能够基于与该解码器相关联的所述约束。
文档编号H04N7/26GK101523918SQ200780036669
公开日2009年9月2日 申请日期2007年7月31日 优先权日2006年7月31日
发明者D·马克赫吉, S·刘 申请人:惠普开发有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1