用于在通信网络中编码数据的方法及系统的制作方法

文档序号:7681232阅读:93来源:国知局
专利名称:用于在通信网络中编码数据的方法及系统的制作方法
技术领域
本申请案大体上涉及多媒体信号处理,且更确切地说,涉及视频编码及解码方法 及系统。
背景技术
例如无线通信网络等数据网络必须在为单个终端定制的服务与提供给大量终端的 服务之间作出取舍。举例来说,向大量资源有限的便携装置(例如,订户、用户、手 持机等)分配多媒体内容是一个复杂的问题。因此,对于网络管理者、内容零售者及 服务提供者而言,具有以快速且有效的方式分配内容及/或其它网络服务的方式且以此 方式来提高带宽利用率及功率效率是非常重要的。
在当前内容传递/媒体分配系统中,将多媒体内容打包成传输超帧以用于经由分配 网络传送。每一超帧可打包有足以在接收装置处产生预定持续时间的呈现的视频帧。 当接收到超帧时,接收装置操作以将所接收的视频帧串联成视频帧流,所述视频帧流 被解码以再现视频呈现。
遗憾的是,任何特定超帧均可能含有比后续超帧多或少的数据。结果,输送多媒 体内容的超帧流可能会表现出"突发性"(burstiness)或位速率"可变性"特性,此 特性指示在不同超帧之间波动的位速率。此突发性可能会以不合意的方式影响接收装 置的性能。
因此,需要一种跨越时间及/或层而平滑所传输的多媒体数据的突发性及/或位速 率可变性的方式。

发明内容
在一个或一个以上方面中,提供一种平滑系统(包含方法及设备)以平滑所传输的 多媒体数据。举例来说,所述平滑系统操作以跨越时间及/或层而平滑所传输的多媒体 数据的突发性及/或位速率可变性。
在特定方面中,提供一种用于处理多媒体数据的方法。所述方法可包含以下中的 一者或一者以上检测与多媒体数据的一个或一个以上部分相关联的平滑度因子;及 基于所述平滑度因子来确定需要平滑。所述方法还可包含将选定的多媒体数据从多媒 体数据的第一选定部分移动到多媒体数据的第二选定部分,其中平滑度因子被调整。
在特定方面中,提供一种用于处理多媒体数据的设备。所述设备可包含以下中的 一者或一者以上检测器,其经配置以检测与多媒体数据的一个或一个以上部分相关 联的平滑度因子,且基于所述平滑度因子来确定需要平滑。所述设备还可包含编码器, 所述编码器经配置以将选定的多媒体数据从多媒体数据的第一选定部分移动到多媒体 数据的第二选定部分,其中平滑度因子被调整。
在特定方面中,提供一种用于处理多媒体数据的设备。所述设备可包含以下中的 一者或一者以上用于检测与多媒体数据的一个或一个以上部分相关联的平滑度因子 的装置;及用于基于所述平滑度因子来确定需要平滑的装置。所述设备还可包含用于 将选定的多媒体数据从多媒体数据的第一选定部分移动到多媒体数据的第二选定部分 的装置,其中平滑度因子被调整。
在特定方面中,提供一种机器可读媒体,其上存储有指令,所存储的指令包括一 个或一个以上代码部分,且可在一个或一个以上机器上执行。 一个或一个以上代码部 分可包含用于检测与多媒体数据的一个或一个以上部分相关联的平滑度因子的代码。 一个或一个以上代码部分还可包含用于基于所述平滑度因子来确定需要平滑的代码。 一个或一个以上代码部分还可包含用于将选定的多媒体数据从多媒体数据的第一选定 部分移动到多媒体数据的第二选定部分的代码,其中平滑度因子被调整。
在审阅下文所陈述的


具体实施方式
及权利要求书后,将更容易明白特 定方面的其它实施例。

结合附图参看以下具体实施方式
将更容易明白本文中描述的前述方面,其中-图1展示包含平滑系统的方面的示范性网络;图2展示供平滑系统的方面中使用的示范性平滑逻辑;
图3A至图3D展示说明根据平滑系统的方面的平滑处理的实例;
图4展示供平滑系统的方面中使用的示范性方法;及
图5展示供平滑系统的方面中使用的示范性平滑逻辑。
具体实施例方式
在一个或一个以上方面中,提供一种平滑系统,其操作以在时间及/或层上平滑多 媒体传输。在一方面中,所述平滑系统检测平滑度因子,平滑度因子指示与多媒体传 输相关联的突发性及/或位速率可变性。如果需要调整平滑度因子,则平滑系统操作以 编码及/或移动多媒体传输的视频帧,以便调整平滑度因子。结果,减少对可能正试图 解码和重现内容的接收装置的处理负担。所述系统适合用于无线网络环境,但可用于
任何类型的有线或无线网络环境,包括(但不限于)通信网络、公共网络(例如,因特 网)、私用网络(例如虚拟私用网络(VPN))、局域网络、广域网络、长距离网络或任 何其它类型的数据网络。
以下详细描述是针对特定所描述的方面;然而,可以如权利要求书所界定和涵盖 的许多不同方式来实施本发明。在此描述中,参考图式,在图式中始终用相同数字来 指示相同部分。

在内容传递/媒体分配系统中,将多媒体内容打包成传输超帧且在通信网络上将其 传递到装置。举例来说,通信网络可利用正交频分多路复用(OFDM)将传输超帧从 网络服务器广播到一个或一个以上移动装置。应注意,分配系统不限于使用OFDM技 术,且也可使用例如码分多址(CDMA)、时分多址(TDMA)及例如TCP/IP等传送 控制协议等其它技术。
可包含多个子帧的传输超帧可经配置以传输选定量的多媒体数据(例如,特定数 目个子帧、特定的时间量、带宽利用率等等)。举例来说,传输超帧可经配置以输送多 个多媒体通道,且每一通道可提供足以在接收装置处产生选定持续时间(亦即, 一秒) 的多媒体呈现的多媒体数据。因而,可使用三十个传输超帧来传输输送三十秒多媒体 呈现的通道。
通常,多媒体内容包含实时或准实时的串流视频帧,所述串流视频帧在被接收时 一般需要被处理。视频帧中的每一者可配置为具有对应大小的若干类型的视频帧中的 一者。举例来说, 一种类型的视频帧为可独立解码的帧内译码帧(I帧)。I帧包含提供完整视频图像所必需的全部数据且因此可包含大量数据。其它视频帧类型包括时间 上预测的P帧或双向预测的B帧,时间上预测的P帧或双向预测的B帧参考I帧及/ 或其它P帧及/或B帧。因为P帧及B帧不可独立解码(亦即,其参考其它帧),所以 其包含较少数据且其大小通常小于I帧。此外,通信网络还可有助于多层传输。举例 来说,传输超帧可输送基本层(对于特定视频帧)及一个或一个以上增强层(对于其 它视频帧)。因而,所输送的层的数目也影响传输超帧的总大小。
在多媒体内容传输期间,每一传输超帧可打包有足以在接收装置处产生预定持续 时间的呈现的视频帧。因而,每一传输超帧包括某一数目的视频帧,所述视频帧包含 I帧类型、P帧类型及B帧类型的某种组合。举例来说,第一传输超帧可包含I帧类型 及P帧类型,且后续传输超帧可包含P帧类型及B帧类型。当接收到传输超帧时,接 收装置操作以将所接收的视频帧串联成视频帧流,视频帧流被解码以再现视频呈现。
多媒体处理系统可包含视频编码器,所述视频编码器使用基于国际标准(例如, 运动图片专家组(MPEG)-l、-2及-4标准、国际电信联盟(ITU)-TH.263标准及ITU-T H.264标准及其对应部分一ISO/IECMPEG-4第10部分(亦即,高级视频编码(AVC)) 的编码方法来编码多媒体数据,所述标准中的每一者出于所有目的以引用方式完整地 并入本文中。此编码(且通过扩展,解码)方法大体上是针对压縮多媒体数据以用于 传输及/或存储。压縮可被广泛认为是从多媒体数据中移除冗余的过程。
可依据图片的序列来描述视频信号,图片包括帧(整个图片)或半帧(field)(例 如,交错视频流包含图片的交替的奇数行或偶数行的半帧)。此外,每一帧或半帧可进 一步包括两个或两个以上的片(slice),或者帧或半帧的子部分。视频编码方法通过使 用无损或有损压缩算法压缩每一帧来压缩视频信号。帧内帧译码(本文中也称为帧内 译码)是指仅使用一帧来编码所述帧。帧间帧译码(本文中也称为帧间译码)是指基 于其它"参考"帧来编码一帧。举例来说,视频信号常常表现出时间冗余,其中在帧 的时间序列上彼此接近的帧至少具有彼此匹配或至少部分地彼此匹配的部分。
例如视频编码器等多媒体处理器可通过将一帧分割成像素的子集来编码所述帧。 像素的这些子集可称为块或宏块,且可包括(例如)包含16xl6像素(或者更多或更 少的像素)的阵列的宏块。编码器可进一步将每一 16x16宏块分割成子块。每一子块 可进一步包含额外子块。举例来说,16x16宏块的子块可包括16x8子块及8x16子块。 16x8子块及8x16子块中的每一者可包括(例如)8x8子块,8x8子块自身可包括(例 如)4x4子块、4x2子块及2x4子块等。术语"块"可指代宏块或任何大小的子块。
编码器可使用基于帧间译码运动补偿的算法来利用连续帧之间的时间冗余。运动补偿算法识别一个或一个以上参考帧的至少部分地与一块匹配的部分。所述块可在帧 中相对于所述参考帧的匹配部分而位移。此位移由一个或一个以上运动向量来表征。 所述块与所述参考帧的部分匹配的部分之间的任何差别可依据一个或一个以上残差 (residual)来表征。编码器可将一帧编码为包含用于所述帧的特定分割的运动向量及 残差中的一者或一者以上的数据。可通过将成本函数(所述成本函数例如使具有失真 或感知失真的编码大小与由编码产生的帧的内容平衡)近似最小化来选择用于编码一 帧的块的特定分区。
帧间译码实现的压縮效率比帧内译码高。然而,当因通道误差等丢失参考数据(例 如,参考帧或参考半帧)时,帧间译码可能会产生问题。除因误差而丢失参考数据之 外,参考数据还可能因在帧间译码帧处对视频信号的初始采集或重新采集而不可用。 在这些情况下,对帧间译码数据的解码可能是不可能的,或可能导致不合意的误差及/ 或误差传播。这些情景可能导致(例如)视频流同步的丢失。
可独立解码的帧内译码帧实现视频信号的同步。MPEG-x标准及H.26x标准使用 称为图片组(GOP)的东西,GOP包含I帧及时间上预测的P帧或双向预测的B帧, 时间上预测的P帧或双向预测的B帧参考GOP内的I帧及/或其它P及/或B帧。提高 压縮率需要较长的GOP,但较短的GOP允许较迅速的采集及同步。增加I帧的数目 将准许较迅速的采集及同步,但其代价是较低的压縮比。下文描述平滑系统的方面。 应注意,平滑系统可利用上文描述的编码/解码技术、格式及/或标准中的任一者。
所描述的方面
图1展示包含平滑系统的方面的示范性网络100。网络100包含利用数据网络106 与多个装置104通信的服务器102。在一方面中,服务器102操作以使用任何类型的 通信链路108与网络106通信。网络106可为任何类型的有线及/或无线网络,例如包 含OFDM、 CDMA、 TDMA、 TCP/IP及/或任何其它合适技术的网络。网络106使用例 如OFDM链路或任何其它合适类型的无线通信链路110与装置104通信。服务器102 操作以将多媒体内容传输到装置104。为了清楚起见,下文参照装置U2来描述网络 100的操作。然而,所述系统适于与装置104中的任一者一起使用。
在一方面中,服务器102包含组帧逻辑(framing logic) 114,其操作以接收多媒 体内容以便经由网络106传输。举例来说,在一方面中,多媒体内容包含视频帧流, 视频帧包含I帧、P帧及B帧中的一者或一者以上。在一方面中,多媒体内容也可包 含通道切换视频(CSV)帧,其是I帧的低质量/分辨率版本且经配置以提供快速通道 采集及同步。下文中将CSV帧称为C帧。在一方面中,组帧逻辑114操作以将多媒体内容打包成超帧(SF)的序列,超帧 的序列可表示(例如)选定的呈现时间间隔。方面也可包括由特定数目的视频帧(且因 而由可变时间间隔)以及其它SF界定准则界定的超帧。举例来说,在一方面中,每一 超帧含有足以产生多媒体内容的一秒呈现的数据。因而,组帧逻辑114以将表示多媒 体内容的视频帧流打包成超帧的序列(如116处所示)为目标来操作。应注意,超帧 可包含多个通道,且超帧打包有用于每一通道的多媒体数据。然而,为了清楚起见, 本文中仅论述一个通道,但平滑系统的方面同样可应用于超帧中的任何数目的通道。
发射器118操作以接收超帧并如广播120所说明经由网络106将超帧广播。装置 112在接收器122处接收广播120。接收器122对所述广播进行解调,且超帧中含有的 视频帧被传递到解码器124。解码器124操作以对所述视频帧进行解码,所述视频帧 接着由再现逻辑126再现于装置112上。
在一方面中,服务器102包含平滑逻辑128,其操作以检测与传输超帧相关联的 平滑度因子。举例来说,平滑度因子可指示超帧表现出突发性及/或位速率可变性。平 滑度因子也可指示传输超帧的任何特性或状况,且可基于所述特性或状况而执行本文 中描述的平滑过程。
在突发性情况下,在经由网络106传输之前,平滑逻辑128操作以平滑含有多媒 体内容的传输超帧的位速率。举例来说,将选定数目的视频帧打包成超帧116中的每 一者。视每一超帧中的视频帧的类型而定,每一超帧的总位速率可能会存在较大变化, 从而导致不合意的突发性。
在一方面中,平滑逻辑128操作以跨越超帧边界(时间)处理视频帧,以便平滑 不同超帧之间的位速率可变性。举例来说,在一方面中,平滑逻辑128操作以选择两 个或两个以上待处理的超帧。在所述超帧中的一者中,I帧以较低质量编码且因此包 含较少数据。此外,在I帧之后的P帧经编码而具有从I帧中提取的数据。接着将经 编码的I帧及P帧定位到不同超帧中。因而,可将通常包含大量数据的I帧编码成较 小的"变瘦的"I帧或It帧。可将通常包含较少量数据的后续P帧编码成"变胖的"P 帧或Pf帧,"变胖的"P帧或Pf帧可包括从原始I帧中移除的数据。变瘦的It帧及变胖 的Pf帧位于不同超帧中,所述超帧可与其原始位置不同或可能不与其原始位置不同。 结果,超帧的序列的平滑度被调整。举例来说,超帧的序列的总位速率可变性被调整 从而具有较小可变性。
平滑逻辑128操作以使用若干技术(其中将选定的视频帧变瘦、变胖、移动到不 同超帧中且/或在视频层之间移动)来调整传输超帧的平滑度因子。举例来说,可使用上文提及的编码技术中的任一者及/或任何其它合适的编码技术来编码所描述的视频 帧。在另一方面中,如果超帧正输送多个层,则平滑系统操作以在所述层之间移动视 频帧以获得所述层之间的较佳平衡。
在另一方面中,平滑系统并不操作以平滑不同超帧之间的位速率可变性,而改为 操作以增加位速率可变性。举例来说,可能需要在传输超帧之间具有增加的位速率可 变性。在此情况下,平滑系统操作以利用类似的编码技术来调整平滑度因子,以便增 加一个或一个以上传输超帧的总位速率及/或位速率可变性。
在本文档的其它段落中提供对平滑逻辑128的操作的更详细描述。应注意,图1 中说明的平滑系统只是一个实施方案,且在方面的范围内其它实施方案是可能的。
图2展示供在平滑系统的方面中使用的示范性平滑逻辑200。举例来说,平滑逻 辑200适于用作图1中所示的平滑逻辑128。平滑逻辑200包含缓冲器202、检测器 204及编码器206,其全部耦合到数据总线208。应理解,缓冲器202、检测器204、 编码器206及/或数据总线208中的--者或一者以上可被组合及/或分成一个或一个以 上物理及/或逻辑组件。
缓冲器202包含任何合适的可操作以缓冲一个或一个以上超帧的存储器或存储装 置,所述一个或一个以上超帧包含用于经由网络传输的多媒体视频帧。举例来说,在 一方面中,超帧是由组帧逻辑114产生且如216处所示被输入到平滑逻辑200。举例 来说,超帧210、 212及214是由组帧逻辑114产生且被输入到平滑逻辑200。缓冲器 202足够大从而足以缓冲(或存储)任何所要数目的超帧。举例来说,在一方面中, 缓冲器202具有缓冲十个超帧的能力,十个超帧表示多媒体内容的十秒呈现。出于此 描述的目的,仅在缓冲器202中展示了超帧212及214,然而,缓冲器202可经配置 以保持任何数目的超帧。
超帧212及214中打包有视频帧,视频帧可呈任何格式,包括(但不限于)I帧、 P帧、B帧、C帧及/或任何其它类型的帧。举例来说,超帧212及214各自打包有四 个视频帧。存储在缓冲器202中的视频帧可由检测器204及编码器206经由数据总线 208接入。
在一方面中,检测器204包含CPU、处理器、门阵列、硬件逻辑、存储器元件、 虚拟机、软件及/或硬件与软件的任何组合中的一者或一者以上。检测器204操作以检 测与经缓冲的超帧相关联的平滑度因子。举例来说,在一方面中,根据超帧中的数据 量及/或根据不同超帧之间的数据量的差别来确定平滑度因子。举例来说,平滑度因子 可指示经缓冲的超帧的突发性(亦即,总位速率及/或位速率可变性)。在另一方面中,平滑度因子可指示传输超帧的任何其它特性,且检测器204可操作以基于此或出于任 何其它目的而确定需要平滑。因而,平滑系统可操作以出于任何目的及/或为实现与多 媒体内容的传输及再现相关的任何所要目标而执行平滑过程。
在一方面中,检测器204操作以测试平滑度因子从而确定超帧是否具有超过选定 阈值的位速率。举例来说,检测器204检测选定超帧中包括的视频数据量是否超过预 定阈值。在另一方面中,检测器204操作以测试平滑度因子从而确定连续超帧的位速 率的变化是否超过选定阈值。举例来说,检测器204操作而以逐个超帧为基础来处理 缓冲器202中的超帧。检测每一超帧的位速率,且如果位速率的变化超过选定阈值(亦 即,突发性),则检测器204通知编码器206且识别与检测到的突发性相关联的那些超 帧。
在另一方面中,检测器204基于平滑度因子来检测突发性的缺乏。举例来说,可 能需要具有与传输超帧相关联的突发性及/或高位速率可变性。在此情况下,检测器 204确定平滑度因子且检测平滑度因子何时指示突发性的缺乏及/或高位速率可变性的 缺乏。在此情况下,检测器204通知编码器206且识别与突发性的缺乏相关联的那些 超帧,以便可增加超帧之间的突发性。
出于此描述的目的,将假定检测器204已检测到与超帧212相关联的平滑度因子 已超过所要阈值及/或范围。举例来说,与超帧214相比,超帧212具有高的数据速率, 且结果,超过位速率可变性阈值。检测器204接着就此状况通知编码器206,且识别 超帧212及214。
在一方面中,检测器204操作以确定缓冲器202中的一个或一个以上超帧的大小 从而查明(亦即,检査及/或验证)相邻超帧具有适当大小,使得所述超帧可承载可能 引起平滑过程的额外数据。如果确定相邻超帧可承载较多数据,则检测器204通知编 码器206继续进行平滑过程。出于此描述的目的,将假定检测器204已确定超帧214 可承载额外数据,从而使得平滑过程可继续。
在一方面中,编码器206包含CPU、处理器、门阵列、硬件逻辑、存储器元件、 虚拟机、软件及/或硬件与软件的任何组合中的一者或一者以上。在一方面中,编码器 206操作以编码I帧以便减小其大小,从而产生变瘦的It帧。将使用从变瘦的I帧节省 的位来编码后续P帧以便增加其大小及质量,从而产生变胖的Pf帧。通过将变瘦的It 帧及变胖的Pf帧布置成跨越超帧边界而出现,可随时间而平滑选定超帧的总位速率。
作为一实例,将假定检测器204已检测平滑度因子且已确定超帧212与超帧214 之间的位速率的变化超过了选定阈值。编码器206首先确定超帧212包括I帧218。在一方面中,编码器206操作以使I帧218变瘦且将来自此I帧的数据编码到P帧220 中。当所述过程完成时,超帧212包含变瘦的It帧222,且超帧214包含变胖的Pf帧 224。结果,降低了超帧212的位速率且提高了超帧214的位速率,以便提供位速率平 滑。接着如226处所示从缓冲器202输出经平滑的超帧。
在另一方面中,编码器206也可操作以通过将帧从一个超帧移动到另一超帧来调 整一个或一个以上超帧的时间边界。举例来说,出于位速率平滑的目的,可将It帧(或 正常的I帧)移动到后续超帧,借此增加所述超帧中的视频帧的总数目,此实际上是 对超帧之间的时间边界的调整。在又一方面中,编码器206操作以在正在传输超帧中 输送的层之间移动视频帧,以便较佳地平衡那些层。
因此,在操作期间,在平滑系统的方面中,编码器206可操作以执行以下功能(单 独地或以其任何组合)中的一者或一者以上。
1. 使I帧变瘦以产生It帧。
2. 以优于变瘦的I帧的质量改进使P帧变胖以产生Pf帧。
3. 将It帧(或I帧)从一个超帧移动到另一超帧。
4. 将Pf帧(或P帧)从一个超帧移动到另一超帧。
5. 将C帧从一个超帧移动到另一超帧。
6. 在由超帧输送的基本层与增强层之间移动任何类型的帧。
在一方面中,平滑系统包含存储在机器可读媒体上的一个或一个以上程序指令 ("指令")或一个或一个以上"代码"集合,所述一个或一个以上程序指令或所述一个 或一个以上代码集合在由至少一个机器(例如,平滑逻辑200处的一个或一个以上处 理机器)执行时提供本文中描述的功能。举例来说,可将代码集合从机器可读媒体(例 如,软盘、CDROM、存储卡、快闪存储器装置、RAM、 ROM或与平滑逻辑200介接 的任何其它类型的存储器装置或机器可读媒体)加载到平滑逻辑200中。在另一方面 中,可将代码集合从外部装置或网络资源下载到平滑逻辑200中。代码集合在被执行 时提供如本文中所描述的平滑系统的方面。
平滑实例
以下描述平滑逻辑200的示范性操作以提供在四个实例情形下的位速率平滑。应 注意,可容易地修改平滑系统以提供多种情形下的位速率平滑的方面,且不应将所描 述的情形理解为限制那些各种实施方案。举例来说,应注意,平滑系统可操作以基于 总位速率、位速率可变性及/或出于任何其它原因而提供平滑。在参看图3A至图3D 描述的以下实例中,使用阴影来指示在平滑系统操作期间已被处理或移动的帧。转g獄
在非分层模式中,平滑系统的方面提供跨越SF边界而处理及/或移动帧以在时间 上平滑位速率。大体而言,可移动任何类型的帧(例如,I、 B、 P、 C等)。在一方面中, 可共同调整两个或两个以上帧的质量,此可产生较佳的平滑效应。也可考虑通道切换/ 采集。举例来说,如果存在由SF中的I帧提供的场景变化,则并不需要在所述SF中 发送冗余的C帧。因此,当跨越SF边界而移动I帧时,也可移动、删除及/或插入C 帧以防止冗余,但C帧仍有助于适当的通道切换/采集。在一方面中,平滑逻辑200 经配置以执行以下功能。
图3A说明根据平滑系统的方面的非分层模式中的位速率平滑的实例。图3A展示 输入缓冲器202中存在的两个超帧,亦即;SF(i)及SF(i+l)。将假定检测器204已确定 SF(i+l)的位速率超过选定阈值,或帧SF(i)与SF(i+l)之间的位速率的变化超过选定阈 值,且因此已被确定会导致过度突发性。为了减小SF(i+l)的大小以平滑SF(i)与SF(i+l) 之间的位速率变化,编码器206如下操作。
在SF(i+l)中,I帧302被变瘦以产生It帧304, It帧304被移动到SF(i)。多余数 据被并入到保留在SF(i+l)中的变胖的Pf帧(Pf(w,2)) 306中。由于移动It帧304导致了 SF(i+l)不具有可独立解码的帧,所以可从SF(i)中移除C帧308,且可将一C帧插入 在SF(i+l)中,如展示为C帧310。
分层模式
在一方面中,平滑系统操作以减少与包含一基本层加一个或一个以上增强层的视 频帧的总位速率相关的突发性。在另一方面中,所述增强层可用来传送各种帧类型以 允许基本层与增强层之间的位速率平衡。
出于平衡基本层与增强层的目的,可通过基本层或增强层来发送B帧。在特定情 况下,可将I帧、P帧及C帧放置在增强层中。因而,是在基本层还是增强层中发送 帧可视基本层与增强层之间的位速率平衡而定。为简单起见,未展示可位于图3B-D 中的基本层及增强层中的B帧,且I帧及P帧的实际数目可大于那些图中所示的数目。 在一方面中,平滑逻辑200经配置以执行以下功能。
图3B说明根据平滑系统的方面的分层模式中的位速率平滑的实例。图3B展示两 个超帧,亦即;SF(i)及SF(i+l),且还展示由那些超帧输送的基本(Base)层及增强(Enh) 层。将假定超帧SF(i)及SF(i+l)存在于输入缓冲器202中。将进一步假定检测器204 已确定SF(i)的位速率超过选定阈值,或SF(i)与SF(i+l)之间的位速率的变化超过选定 阈值且因此已被确定会导致过度突发性,或SF(i)中的I帧312导致难以平衡SF(i)中的两个层。为了减小SF(i)的大小以得到较佳平衡,编码器206如下操作。
由SF(i)的末尾处展示的I帧312来指示场景变化,所述场景变化导致基本层中的 突发性。在一方面中,平滑系统操作以使I帧312变瘦,且所得It帧314使SF(i)的基 本层的位速率降低。也编码在I帧312之后的P帧316以在SF(i+l)中产生变胖的Pf 帧318,从而恢复由于使I帧312变瘦而损失的质量。为简单起见,仅在SF(i+l)的增 强层中提供C帧。
图3C说明根据平滑系统的方面的分层模式中的位速率平滑的实例。图3C展示两 个超帧,亦即;SF(i)及SF(i+l),且还展示由那些超帧输送的基本(Base)层及增强(Enh) 层。将假定超帧SF(i)及SF(i+l)存在于输入缓冲器202中。将假定检测器204已确定 SF(i+l)的位速率超过选定阈值,或SF(i)与SF(i+l)之间的位速率的变化超过选定阈值 且因此已被确定会导致过度突发性,或SF(i+l)中的I帧320导致难以平衡SF(i+l)中 的两个层。为了减小SF(i+l)的大小以得到较佳平衡,编码器206如下操作。
由SF(i+l)的开头处的I帧320来表示场景变化。I帧320以较低质量编码以形成 变瘦的It帧322,变瘦的It帧322被移动到超帧SF(i)。用来自变瘦的It帧的数据使P 帧324变胖以产生Pf帧326。因为It帧322可用于采集及同步,所以SF(i)中无需具有 冗余的C帧328,因此从SF(i)中移除冗余C帧328,且将C帧330插入到SF(i+l)中 以允许采集SF(i+l)。为了 SF(i)中的较佳平衡,332处所示的SF(i)中的最后两个P帧 被移动到如334处所示的增强层。
图3D说明根据平滑系统的方面的分层模式中的位速率平滑的实例。图3D展示两 个超帧,亦即;SF(i)及SF(i+l),且还展示由那些超帧输送的基本(Base)层及增强(Enh) 层。将假定超帧SF(i)及SF(i+l)存在于输入缓冲器202中。将假定检测器204已确定 SF(i+l)的位速率超过选定阈值,或SF(i)与SF(i+l)之间的位速率的变化超过选定阈值 且因此己被确定会导致过度突发性,或SF(i+l)中的I帧336导致难以平衡SF(i+l)中 的两个层。为了减小SF(i+l)的大小以得到较佳平衡,编码器206如下操作。
在I帧336如图所示在SF(i+l)中间的情况下,可执行前两种方法中的任一者以提 供位速率平滑。如果执行第二种方法,则使I帧336变瘦以形成变瘦的It帧338,变 瘦的It帧338被移动到SF(i)。如342处所示,I帧336前面的P帧340也被移动到SF(i)。 P帧340可位于基本层或增强层中,且在此实例中,P帧340被展示在增强层中以改 进SF(i)的平衡。为允许在SF(i+l)中采集,移除位于SF(i)中的C帧344且将C帧346 插入到SF(i+l)中。使与I帧336相关联的P帧348变胖以产生变胖的Pf帧350。
图4展示用于平滑系统的方面中的示范性方法400。为清楚起见,本文中参照图2中所示的平滑逻辑200来描述方法400。举例来说,在一方面中,平滑逻辑200在一 个或一个以上处理机器上执行一个或一个以上代码或指令集合,以执行下文描述的全 部、或经选择性组合、减少及/或重新排序的功能。
在方框402处,对一个或一个以上超帧进行缓冲。在一方面中,从组帧逻辑114 接收包含多媒体内容的超帧且在缓冲器202中对所述超帧进行缓冲。
在方框404处,对关于经缓冲的超帧是否需要平滑进行确定。在一方面中,检测 器204操作以确定并测试一指示是否需要平滑的平滑度因子。举例来说,如果选定超 帧的位速率超过选定阈值,则平滑度因子可指示不合意的突发性。在另一方面中,如 果超帧之间的位速率的变化超过选定阈值,则平滑度因子可指示不合意的突发性。在 一方面中,检测器204操作以检测经缓冲的超帧中的突发性或任何不平衡。应注意, 检测器204可操作以确定出于任何原因或目的而需要平滑。如果不需要平滑,则方法 进行到方框414。如果需要平滑,则方法进行到方框406。
在方框406处,识别与所要的平滑相关联的第一超帧及第二超帧(SF(i)及 SF(i+l))。举例来说,检测器204操作以确定其间位速率经历较大变化的两个超帧。 将所述超帧的身份传递到编码器206。
在方框408处,对第一经识别的超帧SF(i)中是否存在I帧进行确定。举例来说, 编码器206进行此确定。如果存在I帧,则方法进行到方框410。如果第一经识别的 超帧SF(i)中不存在I帧,则方法进行到方框416。
在方框410处,编码第一经识别的超帧SF(i)中的I帧以产生变瘦的It帧。举例来 说,编码器206操作以编码I帧,以便使其分辨率及/或质量降低从而产生变瘦的It帧。
在方框412处,编码第二超帧中的P帧以形成变胖的Pf帧。举例来说,编码器206 操作以编码第二经识别的超帧SF(i+l)中的选定P帧,以便使经移除以产生变瘦的It 帧的数据被编码到P帧中,从而产生变胖的Pf帧。结果,第一经识别的超帧SF(i)经 历大小(且因此位速率)的减小,且第二经识别的超帧SF(i+l)经历大小(且因此位速 率)的增加,此使与超帧相关联的检测到的突发性减小。
在方框416处,已确定I帧位于第二经识别的超帧SF(i+l)中且I帧变瘦以产生变 瘦的It帧。举例来说,编码器206操作以编码I帧以产生变瘦的It帧。
在方框418处,编码在变瘦的It帧之后的P帧以产生变胖的Pf帧。在一方面中, 编码器206操作以用从It帧导出的数据来编码Pf帧。
在方框420处,将第二经识别的超帧SF(i+l)中的It帧及任何先前P帧移动到第一 经识别的超帧SF(i)。举例来说,编码器206操作以将SF(i+l)中的It帧及任何先前P帧移动到第一经识别的超帧SF(i)。此在图3D中加以说明。
在方框422处,对第一经识别的超帧SF(i)中是否存在C帧进行确定。在一方面中, 编码器206进行此确定。如果第一超帧SF(i)中不存在C帧,则方法进行到方框414。 如果第一超帧SF(i)中存在C帧,则方法进行到方框424。
在方框424处,移除第一经识别的超帧SF(i)中的C帧,且将C帧插入在第二经 识别的超帧SF(i+l)中。在一方面中,编码器206执行此功能。举例来说,移除图3D 中的第一超帧SF(i)中所示的C帧344,且将C帧346插入在第二超帧SF(i+l)中。
在方框414处,如果需要则平衡一个或一个以上超帧的层。在一方面中,编码器 206操作以平衡一个或一个以上超帧的基本层与增强层。举例来说,在编码帧并在超 帧之间移动帧之后,可能需要通过将帧从基本层移动到增强层(或将帧从增强层移动 到基本层)来平衡基本层与增强层的大小。
因而,方法400操作以提供平滑系统的一方面。应注意,方法400仅表示一个实 施方案且在所述方面的范围内其它实施方案是可能的。
图5展示供在平滑系统的方面中使用的示范性平滑逻辑500。举例来说,平滑逻 辑500适于用作图1中所示的平滑逻辑102。在一方面中,由至少一个处理器来实施 平滑逻辑500,所述至少一个处理器包含经配置以执行一个或一个以上代码集合从而 提供如本文中所述的平滑系统的方面的一个或一个以上模块。举例来说,每一模块包 含硬件、软件或其任何组合。
平滑逻辑500包含第一模块502,所述第一模块502包含用于检测平滑度因子的 装置,所述第一模块502在一方面中包含检测器204。平滑逻辑500还包含第二模块 504,所述第二模块504包含用于确定需要平滑的装置,所述第二模块504在一方面中 包含检测器204。平滑逻辑500还包含第三模块506,所述第三模块506包含用于移动 选定多媒体数据的装置,所述第三模块506在一方面中包含编码器206。应注意,平 滑逻辑500仅表示一个实施方案且在所述方面的范围内其它实施方案是可能的。
结合本文中所揭示的方面而描述的各种说明性逻辑、逻辑块、模块及电路可以经 设计以执行本文中所描述的功能的通用处理器、数字信号处理器(DSP)、专用集成电 路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑装置、离散门或晶体管逻 辑、离散硬件组件或其任何组合来实施或执行。通用处理器可为微处理器,但在替代 方案中,所述处理器可为任何常规的处理器、控制器、微控制器或状态机。处理器也 可实施为计算装置的组合,例如,DSP与微处理器的组合、多个微处理器、与DSP核 心结合的一个或一个以上微处理器,或任何其它此配置。结合本文中所揭示的方面而描述的方法或算法的步骤可直接实施于硬件中、由处 理器执行的软件模块中,或两者的组合中。软件模块可驻存在RAM存储器、快闪存 储器、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可装卸盘、 CD-ROM或此项技术中已知的任何其它形式的存储媒体中。示范性存储媒体耦合到处 理器,使得处理器可从存储媒体读取信息并将信息写入到存储媒体。在替代方案中, 存储媒体可整合于处理器。处理器及存储媒体可驻存在ASIC中。ASIC可驻存在用户 终端中。在替代方案中,处理器及存储媒体可作为离散组件驻存在用户终端中。
提供对所揭示方面的描述以使所属领域的技术人员能够制作或使用本发明。所属 领域的技术人员可易于明白对这些方面的各种修改,且在不脱离本发明的精神或范围 的情况下,本文中所界定的一般原理可应用于其它方面,例如在实时消息传输服务或 任何通用无线数据通信应用中。因此,本发明不希望限于本文中所示的方面,而是符 合与本文中所揭示的原理及新颖特征一致的最广泛范围。单词"示范性"在本文中专
门用来意味着"充当一实例、例子或说明"。不必将本文中描述为"示范性"的任何方 面理解为比其它方面优选或有利。
因此,虽然本文中已说明并描述平滑系统的方面,但是应了解,在不脱离其精神 或本质特性的情况下,可对所述方面进行各种改变。因此,本文中的揭示内容及描述 希望说明(但不限制)随附权利要求书中所陈述的本发明的范围。
权利要求
1.一种用于处理多媒体数据的方法,所述方法包含检测与所述多媒体数据的一个或一个以上部分相关联的平滑度因子;基于所述平滑度因子来确定需要平滑;以及将选定的多媒体数据从所述多媒体数据的第一选定部分移动到所述多媒体数据的第二选定部分,其中所述平滑度因子被调整。
2. 根据权利要求1所述的方法,其中所述检测包含检测与所述多媒体数据的至少一个 部分相关联的位速率何时超过选定阈值。
3. 根据权利要求1所述的方法,其中所述检测包含检测与所述多媒体数据的至少--个 部分相关联的位速率何时下降到选定阈值以下。
4. 根据权利要求1所述的方法,其中所述检测包含检测所述多媒体数据的至少两个部 分之间的位速率变化何时超过选定阈值。
5. 根据权利要求1所述的方法,其中所述移动包含调整与多媒体数据的所述第一选定 部分及所述第二选定部分中的至少一者相关联的持续时间。
6. 根据权利要求1所述的方法,其中所述移动包含在多媒体数据的所述第一选定部分 与所述第二选定部分之间移动与一个或一个以上视频帧相关联的数据。
7. 根据权利要求1所述的方法,其中所述移动包含跨越与所述一个或一个以上部分相 关联的时间边界及层边界中的至少一者移动与一个或一个以上视频帧相关联的数 据。
8. 根据权利要求1所述的方法,其中所述移动包含编码第一视频帧,以便减小第一视频帧大小以产生其中移除了选定数据的变瘦的 视频帧;以及编码第二视频帧以包括所述选定数据,以便增加第二视频帧大小以产生变胖的 帧。
9. 根据权利要求8所述的方法,其中所述移动包含跨越与所述一个或一个以上部分相 关联的时间边界及层边界中的至少一者移动所述变瘦的帧及所述变胖的帧中的至 少一者。
10. 根据权利要求1所述的方法,其进一步包含平衡与所述至少一个或一个以上部分相 关联的基本层大小与增强层大小。
11. 一种用于处理多媒体数据的设备,所述设备包含检测器,其经配置以检测与所述多媒体数据的一个或一个以上部分相关联的平滑度因子,且基于所述平滑度因子来确定需要平滑;以及编码器,其经配置以将选定多媒体数据从所述多媒体数据的第一选定部分移动到 所述多媒体数据的第二选定部分,其中所述平滑度因子被调整。
12. 根据权利要求11所述的设备,其中所述检测器经配置以检测与所述多媒体数据的 至少一个部分相关联的位速率何时超过选定阈值。
13. 根据权利要求11所述的设备,其中所述检测器经配置以检测与所述多媒体数据的 至少一个部分相关联的位速率何时下降到选定阈值以下。
14. 根据权利要求11所述的设备,其中所述检测器经配置以检测所述多媒体数据的至 少两个部分之间的位速率变化何时超过选定阈值。
15. 根据权利要求11所述的设备,其中所述编码器经配置以调整与多媒体数据的所述 第一选定部分及所述第二选定部分中的至少一者相关联的持续时间。
16. 根据权利要求11所述的设备,其中所述编码器经配置以在多媒体数据的所述第一 选定部分与所述第二选定部分之间移动与一个或一个以上视频帧相关联的数据。
17. 根据权利要求11所述的设备,其中所述编码器经配置以跨越与所述一个或一个以 上部分相关联的时间边界及层边界中的至少一者移动与一个或一个以上视频帧相 关联的数据。
18. 根据权利要求11所述的设备,其中所述编码器经配置以编码第一视频帧,以便减小第一视频帧大小以产生其中移除了选定数据的变瘦的 视频帧;以及编码第二视频帧以包括所述选定数据,以便增加第二视频帧大小以产生变胖的帧。 ,
19. 根据权利要求18所述的设备,其中所述编码器经配置以跨越与所述一个或一个以 上部分相关联的时间边界及层边界中的至少一者移动所述变瘦的帧及所述变胖的 帧中的至少一者。
20. 根据权利要求11所述的设备,其中所述编码器经配置以平衡与所述至少一个或一 个以上部分相关联的基本层大小与增强层大小。
21. —种用于处理多媒体数据的设备,所述设备包含用于检测与所述多媒体数据的一个或一个以上部分相关联的平滑度因子的装置; 用于基于所述平滑度因子来确定需要平滑的装置;以及用于将选定多媒体数据从所述多媒体数据的第一选定部分移动到所述多媒体数 据的第二选定部分的装置,其中所述平滑度因子被调整。
22. 根据权利要求21所述的设备,其中所述用于检测的装置包含用于检测与所述多媒 体数据的至少一个部分相关联的位速率何时超过选定阈值的装置。
23. 根据权利要求21所述的设备,其中所述用于检测的装置包含用于检测与所述多媒 体数据的至少一个部分相关联的位速率何时下降到选定阈值以下的装置。
24. 根据权利要求21所述的设备,其中所述用于检测的装置包含用于检测所述多媒体 数据的至少两个部分之间的位速率变化何时超过选定阈值的装置。
25. 根据权利要求21所述的设备,其中所述用于移动的装置包含用于调整与多媒体数 据的所述第一选定部分及所述第二选定部分中的至少一者相关联的持续时间的装 置。
26. 根据权利要求21所述的设备,其中所述用于移动的装置包含用于在多媒体数据的 所述第一选定部分与所述第二选定部分之间移动与一个或一个以上视频帧相关联 的数据的装置。
27. 根据权利要求21所述的设备,其中所述用于移动的装置包含用于跨越与所述一个 或一个以上部分相关联的时间边界及层边界中的至少一者移动与一个或一个以上 视频帧相关联的数据的装置。
28. 根据权利要求21所述的设备,其中所述用于移动的装置包含-用于编码第一视频帧以便减小第一视频帧大小以产生其中移除了选定数据的变 瘦的视频帧的装置;以及用于编码第二视频帧以包括所述选定数据以便增加第二视频帧大小以产生变胖 的帧的装置。
29. 根据权利要求28所述的设备,其中所述用于移动的装置包含用于跨越与所述一个 或一个以上部分相关联的时间边界及层边界中的至少一者移动所述变瘦的帧及所 述变胖的帧中的至少一者的装置。
30. 根据权利要求21所述的设备,其进一步包含用于平衡与所述至少一个或一个以上 部分相关联的基本层大小与增强层大小的装置。
31. —种机器可读媒体,其上存储有指令,所述所存储的指令包括一个或一个以上代码 部分,且可在一个或一个以上机器上执行,所述一个或一个以上代码部分包含-用于检测与所述多媒体数据的一个或一个以上部分相关联的平滑度因子的代码; 用于基于所述平滑度因子来确定需要平滑的代码;以及用于将选定多媒体数据从所述多媒体数据的第一选定部分移动到所述多媒体数 据的第二选定部分的代码,其中所述平滑度因子被调整。
32. 根据权利要求31所述的机器可读媒体,其中所述检测包含检测与所述多媒体数据 的至少一个部分相关联的位速率何时超过选定阈值。
33. 根据权利要求31所述的机器可读媒体,其中所述用于检测的代码包含用于检测与 所述多媒体数据的至少一个部分相关联的位速率何时下降到选定阈值以下的代码。
34. 根据权利要求31所述的机器可读媒体,其中所述用于检测的代码包含用于检测所 述多媒体数据的至少两个部分之间的位速率变化何时超过选定阈值的代码。
35. 根据权利要求31所述的机器可读媒体,其中所述用于移动的代码包含用于调整与 多媒体数据的所述第一选定部分及所述第二选定部分中的至少一者相关联的持续 时间的代码。
36. 根据权利要求31所述的机器可读媒体,其中所述用于移动的代码包含用于在多媒 体数据的所述第一选定部分与所述第二选定部分之间移动与一个或一个以上视频 帧相关联的数据的代码。
37. 根据权利要求31所述的机器可读媒体,其中所述用于移动的代码包含用于跨越与 所述一个或一个以上部分相关联的时间边界及层边界中的至少一者移动与一个或 一个以上视频帧相关联的数据的代码。
38. 根据权利要求31所述的机器可读媒体,其中所述用于移动的代码包含用于编码第一视频帧以便减小第一视频帧大小以产生其中移除了选定数据的变瘦的视频帧的代码;以及用于编码第二视频帧以包括所述选定数据以便增加第二视频帧大小以产生变胖 的帧的代码。
39. 根据权利要求38所述的机器可读媒体,其中所述用于移动的代码包含用于跨越与 所述一个或一个以上部分相关联的时间边界及层边界中的至少一者移动所述变瘦 的帧及所述变胖的帧中的至少一者的代码。
40. 根据权利要求31所述的机器可读媒体,其进一步包含用于平衡与所述至少一个或 一个以上部分相关联的基本层大小与增强层大小的代码。
全文摘要
本发明提出用于在通信网络中编码数据的方法及系统。在一方面中,提供一种用于处理多媒体数据的方法。所述方法包括检测与所述多媒体数据的一个或一个以上部分相关联的平滑度因子,及基于所述平滑度因子来确定需要平滑。所述方法还包括将选定的多媒体数据从所述多媒体数据的第一选定部分移动到所述多媒体数据的第二选定部分,其中所述平滑度因子被调整。在一方面中,提供一种设备,所述设备包括检测器,所述检测器经配置以检测与所述多媒体数据的一个或一个以上部分相关联的平滑度因子,且基于所述平滑度因子来确定需要平滑。所述设备还包括编码器,所述编码器经配置以将选定的多媒体数据从所述多媒体数据的第一选定部分移动到所述多媒体数据的第二选定部分。
文档编号H04N7/24GK101627632SQ200780051837
公开日2010年1月13日 申请日期2007年5月7日 优先权日2007年3月1日
发明者陈培松, 强 高 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1