用于编码装置内的速率控制的方法及系统的制作方法

文档序号:7675009阅读:139来源:国知局
专利名称:用于编码装置内的速率控制的方法及系统的制作方法
技术领域
本发明涉及多媒体编码及解码,且更明确地说涉及用于有效统计多路复用的多媒体 调整大小。
背景技术
例如无线通信网络的数据网络必须在为单个终端定制的服务与提供给大量终端的服 务之间加以取舍。举例来说,向大量资源有限便携式装置(订户)进行多媒体内容的分 配是一复杂问题。因此,对于网络管理者、内容零售商及服务提供商来说,采用一种途 径来以快速且有效的方式分配内容及/或其它网络服务以呈现于网络装置上是非常重要 的。
内容传递/媒体分配系统可将实时及非实时服务封装入传输帧中并将所述帧传递到 网络上的装置。举例来说,通信网络可利用正交频分多路复用(OFDM)以在网络服务 器与一个或一个以上移动装置之间提供通信。此技术提供具有数据槽(data slot)的传输 帧,所述数据槽封装有待经由分配网络进行传递并传输的服务。

发明内容
通常,本发明描述用于编码装置内的速率或质量控制的技术。更特定来说,响应于 调整多媒体数据段的大小的请求,编码模块调整所述数据段的大小以减小所述数据段的 位速率。本文所使用的术语"位速率"是指每单位时间用以表示多媒体数据段的位数目。 通常以千位每秒(kbit/s)规定位速率。因此,数据段的位速率对应于数据段的大小。
编码模块可通过调节一个或一个以上编码变量来调整数据段的大小以减小所述数据 段的位速率。如一实例,编码模块可通过增加用以编码数据段的量化参数(QP)来调整 数据段的大小。如另一实例,编码模块可通过降低帧速率(即丢弃更多帧)来调整数据 段的大小。编码模块还可通过调节其它编码变量来减小数据段的位速率且从而减小数据 段的大小。
另外,编码模块调节用以编码一个或一个以上后继数据段的至少一个编码变量,使 得所述后继数据段以一位速率编码,所述位速率不同于在对于先前数据段未接收到重编 码请求的情况下将用于编码后继数据段的位速率。举例来说,编码模块可将编码后继数 据段的位速率调节到一位速率,所述位速率小于在对于先前数据段未接收到调整大小请 求的情况下将用于编码后继数据段的位速率。以此方式,编码模块试图以一位速率来编 码一个或一个以上后继数据段,所述位速率允许所述段在相应传输帧内有效配合,而不 接收对于后继数据段的调整大小请求。
在某一点,编码模块重调节用以编码后继数据段的编码变量,使得所述后继数据段 以所要编码结果编码。换句话说,编码模块重调节编码变量,使得编码模块如同对于先 前数据段未接收到调整大小请求般而编码后继数据段。举例来说,编码模块可重调节编 码变量而以所要位速率、所要质量水平、所要帧速率等编码后继数据段。在本发明的一 方面中,当在一时间周期内未接收到调整大小请求时,编码模块可重调节编码变量。或 者,编码模块可递增地调节用以编码后继数据段的编码变量,直到后继数据段以所要编 码结果编码为止。然而,如果对于后继数据段中的一者接收到调整大小请求,则编码模 块可再次调节用以编码后继数据段的一个或一个以上编码变量。
在一方面中, 一种用于编码多媒体数据串流的方法包含接收一调整与所述数字多 媒体数据串流相关联的数据段的大小的请求;响应于所述请求调整所述数据段的大小; 及调节用以编码一个或一个以上后继数据段的至少一个编码变量,使得所述后继数据段 以一位速率编码,所述位速率不同于在无调整大小请求的情况下将用于编码所述后继数 据段的位速率。
在另一方面中, 一种用于编码数字多媒体数据串流的设备包含调整大小模块,其 接收一调整与所述数字多媒体数据串流相关联的当前数据段的大小的请求并响应于所述 请求调整所述数据段的大小;及速率控制模块,其调节用以编码一个或一个以上后继数 据段的至少一个编码变量,使得所述后继数据段以一位速率编码,所述位速率不同于在 无调整大小请求的情况下将用于编码所述后继数据段的位速率。
在另一方面中, 一种用于编码数字多媒体数据串流的设备包含接收装置,其用于 接收一调整与所述数字多媒体数据串流相关联的数据段的大小的请求;调整大小装置,
其用于响应于所述请求调整所述数据段的大小;及调节装置,其用于调节用以编码一个 或一个以上后继数据段的至少一个编码变量使得所述后继数据段以一位速率编码,所述 位速率不同于在无调整大小请求的情况下将用于编码所述后继数据段的位速率。
在另一方面中, 一种用于处理数字视频数据的处理器适于接收一调整与所述数字
多媒体数据串流相关联的数据段的大小的请求;响应于所述请求调整所述数据段的大小; 及调节用以编码一个或一个以上后继数据段的至少一个编码变量使得所述后继数据段以 一位速率编码,所述位速率不同于在无调整大小请求的情况下将用于编码所述后继数据 段的位速率。
本文所描述的技术可以硬件、软件、固件或其任何组合实施。如果以软件实施,则 所述技术整体或部分可由包含指令的计算机可读媒体来实现,所述指令在由处理器执行 时执行本文所描述的方法中的一者或多者。因此,本发明还涵盖用于处理数字视频数据 的计算机程序产品,所述计算机程序产品包含计算机可读媒体,所述计算机可读媒体包 含指令,所述指令致使至少一个计算机接收一调整与所述数字多媒体数据串流相关联的 数据段的大小的请求、响应于所述请求调整所述数据段的大小,及调节用以编码一个或 一个以上后继数据段的编码变量使得所述后继数据段以一位速率编码,所述位速率不同 于在无调整大小请求的情况下将用于编码所述后继数据段的位速率。
一个或一个以上方面的细节在附图及以下描述中阐明。本发明的其它特征、目的及 优点将从描述及图式和从权利要求书显而易见。


图1为说明例示性编码及解码系统的方框图。
图2为说明另一例示性编码及解码系统的方框图。
图3为说明用于多媒体编码装置中的例示性编码器模块的方框图。
图4为说明根据本发明的技术而编码多媒体数据的编码器模块的例示性操作的流程图。
图5为说明响应于调整大小请求而调节编码变量的编码器模块的例示性操作的流程图。
图6为说明响应于调整大小请求而调节编码变量的编码器模块的另一例示性操作的 流程图。
具体实施例方式
通常,本发明描述用于编码装置内的速率或质量控制的技术。更特定来说,响应于 调整多媒体数据段大小的请求,编码模块调整所述数据段的大小以减少所述数据段的位 速率。本文所使用的术语"位速率"是指每单位时间用以表示多媒体数据段的位数目。 通常以千位每秒(kbit/s)规定位速率。因此,数据段的位速率对应于数据段的大小。
编码模块可通过调节一个或一个以上编码变量来调整所述数据段的大小以减少所述 数据段的位速率。如一实例,编码模块可通过增加用以编码数据段的量化参数(QP)来
调整数据段的大小。如另一实例,编码模块可通过降低帧速率(即丢弃更多帧)来调整 数据段的大小。编码模块还可通过调节其它编码变量来减少数据段的位速率且从而减少 数据段的大小。
另外,编码模块调节至少一个用以编码一个或一个以上后继数据段的编码变量,使 得所述后继数据段以一位速率编码,所述位速率不同于在对于先前数据段未接收到重编 码请求的情况下将用于编码后继数据段的位速率。举例来说,编码模块可将编码后继数 据段的位速率调节到一位速率,所述位速率小于在对于先前数据段未接收到调整大小请 求的情况下将用于编码后继段的位速率。以此方式,编码模块试图以一位速率来编码一 个或一个以上后继数据段,所述位速率允许所述段在相应传输帧内有效配合,而不接收 对后继数据段的调整大小请求。
在某一点,编码模块重调节用以编码后继数据段的编码变量,使得后继数据段以所 要编码结果编码。换句话说,编码模块重调节所述编码变量使得编码模块如同对于先前 数据段未接收到调整大小请求般而编码后继数据段。举例来说,编码模块可重调节编码 变量而以所要位速率、所要质量水平、所要帧速率等编码后继数据段。在本发明的一方 面中,当在一时间周期内未接收到调整大小请求时,编码模块可重调节编码变量。或者, 编码模块可递增地调节用以编码后继数据段的编码变量,直到后继数据段以所要编码结 果编码为止。然而,如果接收到对后继数据段中的一者的调整大小请求,则编码模块可 再次调节用以编码后继数据段的一个或一个以上编码变量。
图1为说明例示性编码及解码系统IO的方框图。编码及解码系统IO包括多媒体编 码装置12及多媒体解码装置14。多媒体编码装置12编码多媒体数据、组合经编码的数 据并将经组合的数据经由传输信道16传输到多媒体解码装置14。多媒体编码装置12可 形成一用以广播多媒体数据的一个或一个以上信道的广播网络组件的一部分。举例来说, 多媒体编码装置12可形成以下装置的一部分无线基地台、服务器或用以将经编码的多 媒体数据的一个或一个以上信道广播到一个或一个以上无线装置(例如多媒体解码装置 14)的任何基础设施节点。
多媒体编码装置12可编码包括一个或一个以上多媒体数据流的多个服务、组合所述 经编码的流并将所述经组合的流经由传输信道16传输到多媒体解码装置。所述服务可包 括多媒体内容或服务,例如新闻、体育、天气、财务信息、电影及/或应用程序、程序、 指令代码或任何其它类型的合适内容或服务。在本发明的一方面中,多媒体编码装置12 编码、组合并传输在一时间周期内接收的数据流的若干部分。如一实例,多媒体编码装 置12可以每秒为基础对所述流进行操作。换句话说,多媒体编码装置12编码所述多个
流的一秒数据段、组合所述一秒数据段以形成数据超帧并经由传输器22通过传输信道 16传输所述超帧。如本文所使用,术语"超帧"是指在一时间周期或窗口 (例如一秒时 间周期或窗口)内收集到的数据段群组。所述数据段可包括一个或一个以上数据帧。尽 管在一秒数据段的情况下描述了本发明的技术,但所述技术还可用于组合及传输其它数 据段,例如在一不同时间周期中接收的数据段(所述不同时间周期可以是固定时间周期 或可以不是),或个别数据帧或数据帧集合。换句话说,超帧可经定义以覆盖比一秒周期 更长或更短的时间间隔,或甚至是可变时间间隔。
多媒体解码装置14可包含用户装置,所述用户装置接收由多媒体编码装置12传输 的经编码多媒体数据。举例来说,解码装置14可实施为以下装置的一部分数字电视、 无线通信装置、便携式数字助理(PDA)、膝上型计算机或桌上型计算机、数字音乐及视 频装置(例如以商标"iPod"出售的那些装置)或无线电电话(例如蜂窝式无线电电话、 基于卫星或陆地的无线电电话)。尽管为简明起见,图l仅说明单个多媒体解码装置14, 但是多媒体编码装置12可将经组合的数据流传输到一个以上多媒体解码装置。
传输信道16可包含任何有线或无线媒体,或其组合。在一方面中,传输信道16为 固定带宽信道。换句话说,可用于传输经组合的数据流的传输信道资源的数量有限。在 无线情况下,传输信道资源可包括空中链路或空中接口资源。因此,多媒体编码装置12 可经由传输信道16而传输的数据位的数目受到可用于传输的传输信道资源的数量的限 制。传输信道16可包含一个或一个以上无线电接入技术,例如全球移动通信系统(GSM)、 码分多址(CDMA)、 CDMA 2000、宽带CDMA (W-CDMA)、 CDMA lx演进数据优化 (Evolution-Data Optimized, EV-D0)、频分多址(FDMA)、时分多址(TDMA),或经发 展以促进由各种正EE 801.llx标准定义的无线联网技术的广泛系列标准。
多媒体编码装置12可试图以恒定质量水平或恒定位速率输出数据流中的每一者。本 文所描述的技术适用于任何情况下。举例来说,在试图维持恒定质量的情况下,多媒体 编码装置12基于目标质量水平选择用于数据流的位速率。用以确定所述位速率的所述目 标质量水平可由用户预选定、选定,经由需要来自用户或来自另一过程的输入的自动过 程或半自动过程选定,或基于预定准则由编码装置或系统动态选定。举例来说,目标质 量水平可基于编码应用的类型或将要接收多媒体数据的客户端装置的类型而选定。如果 以目标质量水平输出数据流中的每一者所需的位数目超过了可用传输信道资源经由传输 信道16进行传输的位数量,则多媒体编码装置12管理在所述流中的位分配,以试图保 持所述多个流的最高总质量。
如图1中所示,多媒体编码装置12包括编码器模块18A-18N (统称为"编码器模块
18")、多路复用模块20及传输器22。编码器模块18接收来自一个或一个以上源的数字 多媒体数据流。举例来说,编码器模块18可接收来自耦合到编码器模块18的存储器或 图像俘获装置的多媒体数据流。多媒体数据流可包含现场实时视频、音频,或待作为广 播或应要求被编码和传输的视频及音频流,或可包含经预先记录和存储的视频、音频或 待作为广播或应要求被编码和传输的视频及音频流。本发明的技术还可适用于非实时服 务或实时服务与非实时服务的组合。然而,为说明的目的,本发明描述关于实时服务的 编码技术的使用。
编码器模块18将与数据段相关联的传递要求发送到多路复用模块20。举例来说, 编码器模块18可将与实时服务相关联的质量及速率信息经由一个或一个以上控制信道 发送到多路复用模块20。另外,编码器模块18可发送与非实时服务相关联的优先级及 等待时间要求。多路复用模块20及编码器模块18可使用多个不同的通信协议经由控制 信道通信。在一方面中,多路复用模块20可使用利用消息输送层(MTL)作为基本输送 机制的协议来通信。
多媒体模块20分析传递要求(例如,质量及速率信息、优先级要求及等待时间要求), 以确定是否存在足够的传输信道资源来传输编码器模块18期望包括于当前超帧16中的 数据段。举例来说,多路复用模块20可确定以对应于所述质量水平的选定者的大小及/ 或位速率发送数据段中的每一者所必需的传输信道资源的数量、合计发送所述数据段所 必需的传输信道资源的数量,并将所有数据段所需的传输信道资源的总和与可用传输信 道资源的数量进行比较,以确定是否存在足够的传输信道资源来发送数据段。
如果多路复用模块20确定多个数据段在可用带宽内不适合(例如,所需传输信道资 源的总和超过可用传输信道资源),则多路复用模块20选择所述段中的一者或一者以上 以进行调整大小。多路复用模块20可能试图选择在相应减小的大小下具有最小量的质量 影响的数据段来进行调整大小。多路复用模块20将一请求发送到与选定数据段相关联的 编码器模块18,以根据减小的位分配或减小的位速率来调整数字多媒体数据流的大小。 调整大小请求可为选定数据段规定一最大大小(例如,以位为单位)或为数据段规定一 减小的位速率。
与选定数据段相关联的编码器模块18接收与相应数据段相关联的调整大小请求,并 调整多媒体数据段的大小。编码器模块18可以多种不同方式来减少数据段的位速率。特 定来说,与选定数据段相关联的编码器模块18调节一个或一个以上编码变量以减小所述 数据段的大小。举例来说,与选定数据段相关联的编码器模块18可通过以一较高QP重 新编码数据段、降低帧速率(即,丢弃待编码的额外数据帧)或调节某些其它编码变量,
来减小数据段的位速率。如上所述,与选定数据段相关联的编码器模块18可通过将位速 率减小到调整大小请求中所规定的减小的位速率或大小,来调整数据段的大小。或者, 编码器模块18可确定重新编码数据段的减小的位速率或大小。或者或另外,与选定数据 段相关联的编码器模块18可减少待编码的信息数量,从而减小数据段的大小。以此方式, 与选定数据段相关联的编码器模块18调整数据段的大小以满足调整大小请求中规定的 大小或位速率要求。
当多路复用模块20预备产生当前超帧时,多路复用模块20收集经编码的数据段。 举例来说,多路复用模块20可经由控制信道将传送请求发送到编码器模块18。响应于 所述请求,编码器模块18将经编码的多媒体数据段发送到多路复用模块20。多路复用 模块20组合多媒体数据流以形成超帧并将所述超帧发送到传输器22,以经由传输信道 16传输到一个或一个以上解码装置。以此方式,多路复用模块20管理在所述流中的位 分配,以将所有数据段配合到固定带宽信道16中同时保持所述多个数据流的最高总质
里o
本文将详细描述,与选定数据段相关联的编码器模块18可调节用以编码一个或一个 以上后继数据段(例如,下一数据段)的一个或一个以上编码变量,使得所述后继数据 段以一位速率编码,所述位速率不同于在对于先前数据段未接收到重编码请求的情况下 将用于编码后继数据段的位速率。举例来说,编码器模块18可调节QP、帧速率等以实 现不同位速率。在一方面中,与选定数据段相关联的编码器模块18可调节一个或一个以 上编码变量以实现用以调整选定数据段大小的减小的位速率。编码器模块18可在接收到 单个调整大小请求后调节编码变量以减小待用于编码后继数据段的位速率。或者,编码 器模块18可在接收到对于多个连续数据段的调整大小请求后调节编码变量以减小后继 数据段的位速率。
如上所述,编码器模块18可试图以恒定质量水平或恒定位速率输出数据流中的每一 者。对于试图以恒定位速率编码的编码模块18,编码器模块18可调节编码变量以将位 速率减小到目标位速率以下。类似地,对于试图以恒定质量水平编码的编码模块18,编 码器模块18调节编码变量以将位速率减小到实现目标质量水平所需的位速率以下。以此 方式,编码模块试图确保以不同位速率编码的后继数据段将配合于相应传输帧内,而无 需接收对于后继数据段的调整大小请求。
在某一点,编码器模块18重调节用以编码后继数据段的编码变量,使得所述后继数 据段以所要编码结果(例如,质量水平、位速率、帧速率、帧大小、纵横比、QP、 SNR、 PSNR、结构相似性、平均意见得分及其它所述客观及主观的变量及参数)编码。换句话
说,编码器模块18重调节编码变量使得编码器模块18如同对于先前数据段未接收到调 整大小请求般而编码后继数据段。在本发明的一方面中,当在一时间周期内未接收到调 整大小请求时,编码器模块18可重调节编码变量。换句话说,在时间周期过期后编码器 模块18使经调节的编码变量返回为所要值。或者,编码器模块可递增地调节用以编码后 继数据段的编码变量,直到后继数据段以所要编码结果编码为止。如果对于后继数据段 中的一者接收到调整大小请求,则编码器模块18可再次减小用于后继段的位速率并重新 开始处理。
多媒体编码装置12中的组件例示适用于实施本文所述的技术的所述组件。然而,如 果需要,多媒体编码装置12可包括许多其它组件。此外,本发明的技术未必限于在如同 图1系统的系统中使用,也不限于在广播系统中使用。所述技术可在使用编码技术来编 码多个多媒体数据流以经由具有有限带宽的传输信道进行传输的任何多媒体编码环境中 获得应用。所说明的多媒体编码装置12的组件可集成为编码器/解码器(CODEC)的一 部分。
多媒体编码装置12中的组件可实施为一个或一个以上处理器、数字信号处理器、专 用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固件或其 任何组合。此外,多媒体编码装置12可遵守一多媒体编码标准,例如运动图像专家组 (MPEG-4)、由国际电信联盟标准化部门(ITU-T)开发的标准中的一者或一者以上(例 如H.263或H.264)或其它编码标准,或其组合。对作为模块的不同特征进行的描绘希望 强调多媒体编码装置12的不同功能方面,而未必意味所述模块必须由单独硬件或软件组 件来实现。而是,与一个或一个以上模块相关联的功能性可集成在共用或单独硬件或软 件组件中。因此,本发明不应限于多媒体编码装置12的实例。
图2为说明另一例示性编码及解码系统30的方框图。编码及解码系统30大致符合 图1的编码及解码系统10,除了选定的多媒体数据段的调整大小是由与选定数据段相关 联的调整大小模块32A-32N (统称"调整大小模块32")来执行以外。因此,图1的编 码器模块18的功能性划分到编码器模块34A-34N (统称为"编码器模块34")与调整大 小模块32之间。换句话说,编码器模块34向多路复用模块20提供与数据段中的每一者 相关联的传递要求(例如质量及速率信息、优先级要求、等待时间要求等),用于将可用 带宽到分配数据段并在分配失败时选择待进行调整大小的数据段中的一者或一者以上。
调整大小模块32接收来自多路复用模块20的用于调整数据段大小的请求,并根据 调整大小请求中由多路复用模块20规定的要求而调整数据段的大小。此外,调整大小模 块32可向编码器模块34提供重编码数据段的位速率,以允许编码器模块34将后继数据
段的位速率设定为用于重编码选定数据段的减小的位速率。根据本发明的技术,编码器 模块34可继续以所述减小的位速率(即使用经调节的编码变量)编码后继数据段持续一 时间周期,且随后返回编码变量的原始值或逐渐增加用以编码后继数据段的编码变量的 值,直到编码变量的值达到所要值为止。
图3为说明用于多媒体编码装置(例如图1的多媒体编码装置12)内的例示性编码 器模块40的方框图。举例来说,编码器模块40可表示图1的编码装置12的编码器模块 18中的任何一者。编码器模块40包括多路复用模块接口 42、内容分类模块44、质量-速率信息产生模块46及编码模块48。编码模块48进一步包括调整大小模块50,所述调 整大小模块50调整经选定用于调整大小的数据段的大小。另外,编码模块48包括速率 控制模块52,所述速率控制模块52根据本发明的技术控制编码器模块40的位速率。
编码器模块40接收来自源的一个或一个以上多媒体数据流。举例来说,编码器模块 40可接收来自耦合到编码器模块40的存储器或图像俘获装置的多媒体数据流。多媒体 数据流可包含现场实时视频、音频,或待作为广播被编码和传输的视频及音频,或可包 含经预记录和存储的视频、音频,或待作为广播或应要求被编码和传输的视频及音频流。 本发明的技术还可应用于非实时服务或实时服务与非实时服务的组合。
编码器模块40可经配置而以恒定位速率或质量水平操作。举例来说,编码器模块 40可试图维持恒定的数据流感知质量度量,而不管数据的内容如何。换句话说,编码器 模块40可以目标质量水平输出每一数据流。为维持恒定或相似的感知质量水平,编码器 模块40可为具有不同内容的数据段选择不同位速率。为此,内容分类模块44基于数据 段的内容对数据段进行分类。内容分类模块44可基于数据段的复杂性(例如,空间复杂 性及/或时间复杂性)对数据段进行分类。 一种例示性内容分类方法描述于同在申请中且 共同转让的美国专利申请第11/373,577号中,其标题为"用于多媒体处理的内容分类 (CONTENT CLASSIFICATION FOR MULTIMEDIA PROCESSING)"且在2006年3月10 日提出申请,其全部内容以引用的方式并入本文中。举例来说,内容分类模块44可将运 动信息(例如,运动向量)分为"高"、"中"及"低"三类(沿x-轴)并将纹理信息(例 如,对比度定量值)分为"高"、"中"及"低"三类(沿y-轴),且在交点处指示内容分 类。举例来说,此分类可与特定质量-速率曲线相关联。
内容分类模块44基于分类使数据段与质量及速率信息或其它传递要求相关联。举例 来说,内容分类模块44可使数据段与相应质量-速率曲线相关联。质量-速率曲线建立一 质量度量模型,例如依据位速率而变峰值信噪比(PSNR)。可用脱机计算出的质量-速率 曲线来配置编码器模块40。或者,质量-速率信息产生模块46可通过(例如)使用形式
为2 = "*111 O) +6的对数函数而建立质量-速率曲线模型而产生质量-速率曲线,其中 Q为质量度量,r为位速率,且a及b为使用多个抽样数据点计算出的常数。质量-速率 信息产生模块46可维持多条质量-速率曲线,所述多条质量-速率曲线表示具有变动内容 的数据流的质量-速率特征。如一实例,质量-速率信息产生模块46可维持与所述流内容 中的运动及纹理的变动水平相关联的八个不同类别的质量-速率曲线。为计及恒定PSNR 不必意味恒定感知质量的事实,质量-速率信息产生模块46可维持使用除PSNR以外的 质量度量的质量-速率曲线,例如平均意见得分(MOS)。或者,质量-速率信息产生模块 46可调节质量-速率曲线以计及恒定PSNR不必意味恒定感知质量的事实。举例来说,质 量-速率信息产生模块46可将传统质量-速率曲线调节一偏移量,如同在申请中且共同转 让的美国专利申请案第11/373,577号中详细描述的,其标题为"用于多媒体处理的内容 分类(CONTENT CLASSIFICATION FOR MULTIMEDIA PROCESSING)"且在2006年3 月10日提出申请,其全部内容以引用的方式并入本文中。
或者,质量-速率信息产生模块46可将与内容曲线中的每一者相关联的目标质量水 平调节偏移量。举例来说,包括高运动、高纹理内容的数据段可以相对于目标质量水平 稍低的质量进行编码,而包括低运动、低纹理内容的数据段可以相对于目标质量水平稍 高的质量进行编码。由于每一内容类别相对于总体目标质量水平具有其自身经调节的质 量水平,因此编码器模块40可规范化每一内容类别的质量水平,以测量在编码器模块 40处的当前质量水平。编码器模块40可根据以下线性等式实现此规范化
Q隨m = Qr Qk
其中2n。nn为规范化质量水平,^为记录的质量水平,且仏为对于曲线A的质量水 平的调节偏移量。如果质量规范化不是线性函数,则在质量规范化后进行等级确定。
在另一实例中,内容分类模块44可使数据段与经预计算的质量-速率表相关联,所 述质量-速率表指示与所述段相关联的一个或一个以上质量水平以及每一质量水平处段 的大小。为进行此操作,内容分类模块44可使数据段与质量-速率曲线相关联,所述质
量-速率曲线对应于质量-速率表中的特定者。质量-速率信息产生模块46可预计算质量-
速率曲线、经调节的质量-速率曲线或质量-速率表,并将经预计算的质量及速率信息存储
在存储器(未图示)中。内容分类模块44可在需要时存取经预计算的质量及速率信息。 或者,质量-速率信息产生模块46可实时地产生数据段的质量及速率信息。举例来说, 质量-速率信息产生模块46可基于与数据段相关联的质量-速率曲线创建质量-速率表。
编码器模块40将与待包括于当前超帧中的数据段中每一者相关联的质量及速率信 息经由多路复用模块接口 42发送到多路复用模块20 (图1)。如果需要进行调整大小而
使数据段配合于当前超帧内,则质量及速率信息辅助多路复用模块20进行监视当前超帧 的大小并确定调整哪些数据段的大小。编码器模块40可响应于来自多路复用模块20的 请求而将质量及速率信息发送到多路复用模块20。如上所述,质量及速率信息可包含与 数据段相关联的质量-速率曲线或质量-速率表。
如果与编码器模块40相关联的任何数据段需要调整大小,则多路复用模块20将一 调整大小请求发送到编码器模块40。响应于所述调整大小请求,调整大小模块50调整 多媒体数据段的大小以减小数据段的大小。特定来说,调整大小模块50调节一个或一个 以上编码变量以减小选定数据段的位速率,并从而减小选定数据段的大小。举例来说, 调整大小模块50可增加量化值、减小编码速率、降低编码数据段的帧速率或调节影响数 据段的位速率或大小的另一编码器变量。在某些情况下,可在调整大小请求内规定减小 的位速率。或者,速率控制模块52可基于其它信息(例如调整大小请求中规定的最大大 小)选择减小的位速率。
在某些情况下,数据段的调整大小可导致数据段的质量水平降到目标质量水平以下。 然而,如上所述,多路复用模块20选择待重编码的段,使得所有数据段的总质量得以保 持。如果经调整大小的数据段的质量水平降到与编码器模块40相关联的最小质量水平以 下,则调整大小模块50可调整数据段的大小,使得经调整大小的数据段的质量水平大于 或等于所述最小质量水平。举例来说,如果包括在调整大小请求内的位速率导致数据段 以一低于与编码器模块40相关联的最小质量水平的质量水平进行编码,则速率控制模块 52可选择一较高位速率,其导致数据段以所述最小质量水平进行编码。
编码器模块40接收来自多路复用模块20的请求以发送待包括于当前超帧内的经编 码数据段。响应于来自多路复用模块20的所述请求,编码器模块40将经编码的数据段 发送到多路复用模块20。如上所述,编码器模块40以原始位速率发送未被选定来进行 调整大小的数据段,并以减小的位速率发送被选定来进行调整大小的数据段。
速率控制模块52可调节用以编码后继数据段的一个或一个以上编码变量,使得所述 后继数据段以一位速率编码,所述位速率不同于在对于先前数据段未接收到重编码请求 的情况下将用于编码后继数据段的位速率。举例来说,速率控制模块52可减小编码后继 数据段的位速率。如另一实例,速率控制模块52可调节另一编码变量(例如,QP值或 帧速率),所述另一编码变量影响编码后继数据段的位速率。速率控制模块52可调节编 码模块48的编码变量,使其等于用以重编码先前数据段的编码变量。在一个实例中,速 率控制模块52可设定编码模块48的位速率,使其等于对于先前数据段所接收的调整大 小请求中规定的减小的位速率。
如上所述,在某一点,编码模块48如同对于先前数据段未接收到调整大小请求般将 编码变量返回为其正常值以编码后继数据段。在本发明的一方面中,编码模块48可继续 使用经调节的编码变量编码后继数据段持续一时间周期,且随后将编码变量重调节为以 所要编码结果(例如,以目标质量水平或目标位速率)编码数据段所需的值。举例来说, 编码模块48可继续使用经调节的编码变量来编码后继数据段直到计时器过期为止,此时 编码模块48重调节编码变量,以便以所要编码结果(例如,目标质量水平)编码数据段。 在另一实例中,编码模块48可使用经调节的编码变量来继续编码后继数据段直到计数器 跟踪到在未接收调整大小请求的情况下已发送的后继数据段的数目超过了阈值。如果 编码模块48在计时器过期之前或在计数器超过所述阈值之前接收到一调整后继数据段 中一者的大小的请求,则编码模块48重设所述计时器或计数器,从而重新启动一时间周 期,在所述时间周期期间编码模块48使用经调节的编码变量编码后继数据段。
或者,速率控制模块52可递增地调节由编码模块48用以编码后继数据段的编码变 量,直到编码器模块40达到所要编码结果(例如,所要速率或质量)为止。对于以恒定 质量编码的编码器来说,速率控制模块52可逐渐增加编码变量直到实现目标质量为止。 为此,当在特定时间周期内未接收到调整大小请求时,速率控制模块52可使编码变量递 增一增量值。举例来说,速率控制模块52可针对未接收到调整大小请求的每一超帧而使 编码变量递增所述增量值。然而,如果对于后继数据段中的一者接收到调整大小请求, 则编码器模块18可再次调节用以编码后继数据段的编码变量并开始递增地调节编码变 量。递增地调节位速率或其它编码变量以实现所要编码结果的做法避免了从一超帧到另 一超帧的流中的突然质量变化,从而增强了最终用户的视觉体验。
编码器模块40中的组件例示适用于实施本文中所述技术的那些组件。然而,如果需 要,编码器模块40可包括许多其它组件。编码器模块40中的组件可实施为一个或一个 以上处理器、数字信号处理器、ASIC、 FPGA、离散逻辑、软件、硬件、固件或其任何 组合。此外,编码器模块40可遵守一多媒体编码标准,例如MPEG-4、 ITU-T H.263、 ITU-T H.264或其它编码标准。对作为模块的不同特征进行的描绘希望强调编码器模块40的不 同功能方面,且不必意味所述模块必须由单独硬件或软件组件来实现。而是,与一个或 一个以上模块相关联的功能性可集成在共用或单独硬件或软件组件中。因此,本发明不 应限于编码器模块40的实例。
图4为说明根据本发明的技术而编码多媒体数据的编码器模块(例如图3的编码器 模块40)的例示性操作的流程图。编码器模块40接收来自源的一个或一个以上多媒体 数据流(60)。举例来说,编码器模块40可接收来自耦合到编码器模块40的存储器或图
像俘获装置的多媒体数据流。多媒体数据流可包含现场实时内容、非实时内容,或实时 内容与非实时内容的组合。
编码器模块40基于数据段的内容对数据段加以分类(62)。举例来说,内容分类模 块44 (图3)可基于数据段的复杂性(例如,空间复杂性及/或时间复杂性)对所接收的 数据段加以分类。内容分类模块44基于所述分类进一步使数据段与质量及速率信息相关 联(64)。如一实例,内容分类模块44可使数据段与多条质量-速率曲线中的一者相关联。 如上所述,质量-速率曲线可经预计算并存储于存储器中。如另一实例,内容分类模块44 可使数据段与多个经预计算的质量-速率表中的一者相关联。
编码器模块40可产生数据段的额外质量及速率信息(66)。举例来说,质量及速率 信息产生模块46可为数据段中的每一者产生质量-速率表。如上所述,质量-速率表指示 与数据段相关联的一个或一个以上质量水平及在每一质量水平处数据段的大小。
编码器模块40将与数据段相关联的质量及速率信息发送到多路复用模块20 (68)。 举例来说,编码器模块40可响应于来自多路复用模块的请求而发送与数据段相关联的质 量及速率信息。举例来说,编码器模块40可发送与数据段相关联的质量-速率曲线及/或 质量-速率表。如以上详细描述,多路复用模块使用质量及速率信息来监视当前超帧的大 小并辅助多路复用模块确定哪些数据段需要进行调整大小。
如果需要调整与编码器模块40相关联的任何数据段的大小,则编码器模块40接收 来自多路复用模块20的调整大小请求(70)。来自多路复用模块20的调整大小请求可包 括用于数据段的减小的位速率或最大大小(例如,以位为单位)。响应于所述调整大小请 求,调整大小模块50调整经编码的数据段的大小以减小所述数据段的大小(72)。举例 来说,调整大小模块50可调节一个或一个以上编码变量以减小数据段的大小。举例来说, 调整大小模块50可以由速率控制模块52规定的减小位速率来重编码数据段。速率控制 模块52可识别包括于调整大小请求内的减小的位速率或独立确定减小的位速率。或者或 另外,调整大小模块50可使用经调节的(例如,较高的)量化参数来重编码数据段,以 减小数据段的大小。此外,调整大小模块50可调节待编码的信息的数量。举例来说,调 整大小模块50可通过合并一个或一个以上运动向量以减小用于编码运动信息的位数目 而减小数据段的大小。
编码器模块40接收来自多路复用模块20的请求以发送待包括于当前超帧内的经编 码的数据段内容(74)。响应于来自多路复用模块的所述请求,编码器模块2600将经编 码的数据段内容发送到多路复用模块20 (76)。如上所述,编码器模块40以原始大小发 送未被选定来进行调整大小的数据段,并以减小的大小发送被选定来进行调整大小的数
据段。
编码器模块40使用经调节的编码变量来编码一个或一个以上后继数据段,所述经调 节的编码变量导致以一位速率对后继数据段进行编码,所述位速率不同于假如未接收到 针对先前数据段的重编码请求原本将已用于编码后继数据段的位速率(78)。使用位速率 作为一实例,速率控制模块52可将编码模块48的位速率设定为用以重编码选定数据段 的位速率,例如设定为减小的位速率。在本发明的一方面中,编码模块48可继续以减小 的位速率对后继数据段进行编码持续一时间周期,且随后将位速率变为足够以目标质量 水平或高于目标质量水平而编码数据段的位速率。或者,速率控制模块52可逐渐增加编 码模块48编码后继数据段的位速率,直到所述位速率达到足以实现或超过目标质量的位 速率。在任何情况下,如果接收到针对后继数据段中的一者的调整大小请求,则速率控 制模块52可再次减小用于后继段的位速率并重新开始处理。尽管就调节位速率进行了描 述,然而编码模块48可调节其它编码变量,例如用于编码的QP、帧速率、质量等。
图5为说明响应于调整大小请求而调节编码变量的编码器模块(例如编码器模块40 (图3))的例示性操作的流程图。最初,调整大小模块50接收来自多路复用模块20 (图 1)的调整大小请求,所述调整大小请求引导调整大小模块50调整编码器模块40期望在 当前超帧中发送的数据段的大小(80)。响应于来自多路复用模块20的请求,调整大小 模块50调整当前数据段的大小(82)。如上所述,调整大小模块50可通过调节一个或一 个以上编码变量以将数据段的位速率减小到由速率控制模块52规定的位速率,来调整数 据段的大小。举例来说,速率控制模块52可调节一个或一个以上编码变量,来以调整大 小请求内规定的位速率调整数据段的大小。或者,速率控制模块52可基于调整大小请求 中规定的最大大小而确定减小的位速率,以所述减小的位速率调整数据段的大小。
在对当前数据段进行调整大小之后,速率控制模块52调节用以编码一个或一个以上 后继数据段的一个或一个以上编码变量,使得所述后继数据段以一位速率编码,所述位 速率不同于在无调整大小请求的情况下将用于编码后继数据段的位速率(84)。举例来说, 速率控制模块52可调节编码变量,从而以用以重编码先前数据段的位速率来编码后继数 据段。
编码器模块40将与后继数据段相关联的传递要求(例如,质量及速率信息)发送到 多路复用模块(85)。编码器模块40确定是否从多路复用模块20接收到对于所述后继数 据段的调整大小请求(86)。如果从多路复用模块20接收到调整大小请求,则速率控制 模块52可将编码变量递增地调节一减量值以减小位速率(87)。使编码变量位速率递减 所述减量值会将编码变量返回为以下值其导致后继数据段以在未请求调整大小的情况
下被多路复用模块20接受的最高位速率进行编码。在另一实例中,速率控制模块52可 调节编码变量以实现对于后继数据段所接收的调整大小请求中规定的减小的位速率,而 非递增地调节编码变量以减小位速率。
如果对于所述后继数据段未接收到调整大小请求,则编码模块48使用由速率控制模 块52设定的经调节的编码变量来编码后继数据段(88)。速率控制模块52确定所述后继 数据段是否以所要编码结果编码(90)。换句话说,速率控制模块52确定使用编码变量 的编码是否导致产生一足够以所要编码结果(例如,所要质量水平、位速率、QP值、帧 速率等)或高于所要编码结果来编码后继数据段的位速率。如果所述后继数据段以所要 编码结果或高于所要编码结果来编码,则速率控制模块52如同未接收到调整大小请求般 开始操作(92)。换句话说,速率控制模块52选择编码后继数据段所需的编码变量以实 现所要编码结果。举例来说,速率控制模块52可分析一与所述后继数据段相关联的质量 -速率曲线并选择对应于目标质量水平与相关联质量-速率曲线的交点的位速率。
如果后继数据段经编码而未实现所要编码结果,则速率控制模块52使编码变量递增 地调节一增量值以增加位速率(94)。举例来说,速率控制模块可使帧速率增加一增量值、 将QP减小一增量值等。编码器模块40继续发送对后继数据段的传递要求(例如,质量 及速率信息)并递增后继数据段的编码变量,直到对于后继数据段中的一者接收到调整 大小请求或编码变量导致产生一足以实现所要编码结果的位速率为止。以此方式,速率 控制模块52将编码变量从减小的位速率逐渐递增到一足以实现或超过目标质量水平的 位速率,以避免从一超帧到另一超帧的流中的突然质量变化,从而增强了最终用户的视 觉体验。
图6为说明响应于调整大小请求而调节编码变量的编码器模块(例如编码器模块40 (图3))的另一例示性操作的流程图。最初,调整大小模块50接收来自多路复用模块20 (图1)的请求,所述请求请求调整大小模块50来调整当前数据段的大小(100)。响应 于来自多路复用模块20的所述请求,调整大小模块50调整当前数据段的大小(102)。 如上所述,调整大小模块50可通过调节一个或一个以上编码变量以将数据段的位速率减 小到由速率控制模块52规定的位速率,来调整数据段的大小。
在对当前数据段进行调整大小之后,速率控制模块52调节用以编码一个或一个以上 后继数据段的一个或一个以上编码变量,使得所述后继数据段以一位速率编码,所述位 速率不同于在无调整大小请求的情况下将用于编码后继数据段的位速率(104)。举例来
说,速率控制模块52可调节QP或帧速率以调节编码模块48编码后继数据段的位速率。 速率控制模块52设定计时器,其跟踪自对于先前数据段中的一者接收到调整大小请求以
来已经过的时间量(106)。举例来说,所述计时器可设定为三秒并倒计时。或者,速率 控制模块52可使用计数器代替计时器,并跟踪在未接收到调整大小请求的情况下传送到 多路复用模块20的后继数据段的数目。
编码器模块40将与后继数据段相关联的传递要求(例如质量及速率信息)发送到多 路复用模块20 (108)。编码器模块40确定是否从多路复用模块20接收到对于所述后继 数据段的调整大小请求(110)。如果从多路复用模块20接收到调整大小请求,则速率控 制模块52以减小的位速率重编码所述后继数据段并设定编码模块48编码后继数据段的 位速率,使其等于所述减小的位速率(即调整大小请求中所规定的位速率)。此外,速率 控制模块52重设计时器。
如果对于后继数据段未接收到调整大小请求,则速率控制模块52确定计时器是否已 过期(112)。或者,如果速率控制模块维持用于跟踪在未接收到调整大小请求的情况下 所传送的后继数据段的数目的计数器,则速率控制模块52可检查以了解计数器是否超过 阈值。如果计时器已过期(或计数器超过阈值),则编码模块48使用由速率控制模块52 设定的经调节的编码变量编码后继数据段(113)。编码器模块40将与下一后继数据段相 关联的质量及速率信息发送到多路复用模块20并确定是否从多路复用模块20接收到对 于下一后继数据段的调整大小请求。
如果计时器已过期(或计数器超过阈值),则速率控制模块52重调节用以编码后继 数据段的编码变量,使得所述后继数据段经编码而实现所要编码结果(114)。举例来说, 速率控制模块52重调节编码变量以实现所要目标质量或所要目标位速率。以此方式,编 码模块48可继续以减小的位速率来编码后继数据段持续一时间周期且随后将位速率变 为以目标质量水平或高于目标质量水平编码数据段所需的位速率。
基于本文所描述的教示,所属领域的技术人员应了解本文所揭示的一方面可独立于 任何其它方面而实施且这些方面中的两者或两者以上可以各种方式组合。本文所描述的 技术可以硬件、软件、固件或其任何组合实施。如果以硬件实施,则可使用数字硬件、 模拟硬件或其组合来实现所述技术。如果以软件实施,则所述技术可至少部分地由一个 或一个以上在计算机可读媒体上所存储或传输的指令或代码来实现。计算机可读媒体可 包括计算机存储媒体、通信媒体或其两者,且可包括有助于计算机程序从一处传送到另 一处的任何媒体。存储媒体可为可由计算机存取的任何可用媒体。
举例来说(且非限制),所述计算机可读媒体可包含RAM (例如同步动态随机存取 存储器(SDRAM))、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、 ROM、 电可擦除可编程只读存储器(EEPROM)、 EEPROM、快闪存储器、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,或可用以携载或存储呈指令或数据结构 的形式的所需程序代码并可由计算机存取的任何其它有形媒体。
同样,任何连接可适当称为计算机可读媒体。举例来说,如果使用同轴电缆、光纤 电缆、双绞线、数字订户线(DSL)或例如红外线、无线电及微波的无线技术从网站、 服务器或其它远端源传输软件,则同轴电缆、光纤电缆、双绞线、DSL或例如红外线、 无线电及微波的无线技术包括于媒体的定义内。如本文所使用的磁盘及光盘包括压縮光 盘(CD)、激光光盘、光学盘片、数字化多功能光盘(DVD)、软磁盘及蓝光(blu-ray) 光盘,其中磁盘通常以磁性方式复制数据,而光盘以光学方式(例如利用激光)复制数 据。以上的组合还应包括于计算机可读媒体的范围内。
如本文所揭示的计算机程序产品包括计算机可读媒体以及与所述计算机可读媒体相 关联的任何材料,包括封装所述计算机可读媒体的封装材料。与计算机程序产品的计算 机可读媒体相关联的代码可由计算机执行,例如由一个或一个以上处理器(例如一个或 一个以上数字信号处理器(DSP))、通用微处理器、ASIC、 FPGA或其它等效集成或离 散逻辑电路执行。在某些方面中,本文所描述的功能性可提供于经配置以用于编码及解 码的专用软件模块或硬件模块中,或并入于组合式CODEC中。
己描述了各种方面。这些及其它方面在所附权利要求书范围内。
权利要求
1.一种用于编码数字多媒体数据串流的方法,所述方法包含接收调整与所述数字多媒体数据串流相关联的数据段的大小的请求;响应于所述请求调整所述数据段的大小;及调节用以编码一个或一个以上后继数据段的至少一个编码变量,以便以一位速率对所述后继数据段进行编码,所述位速率不同于假如无调整大小请求原本将已用于编码所述后继数据段的位速率。
2. 根据权利要求l所述的方法,其进一步包含重调节所述用以编码所述后继数据段的 编码变量以便以所要编码结果对所述后继数据段进行编码。
3. 根据权利要求2所述的方法,其中重调节所述编码变量包含重调节所述用以编码所 述后继数据段的编码变量以便以所要质量水平对所述后继数据段进行编码。
4. 根据权利要求2所述的方法,其中重调节所述编码变量包含重调节所述用以编码所 述后继数据段的编码变量以便以所要位速率对所述后继数据段进行编码。
5. 根据权利要求2所述的方法,其中重调节所述编码变量包含重调节所述用以编码所 述后继数据段的编码变量以便以所要帧速率对所述后继数据段进行编码。
6. 根据权利要求2所述的方法,其中重调节所述编码变量包含重调节所述用以编码所 述后继数据段的编码变量以便以所要量化参数(QP)对所述后继数据段进行编码。
7. 根据权利要求2所述的方法,其中重调节所述编码变量包含当在一时间周期内未接 收到调整大小请求时重调节所述用以编码所述后继数据段的编码变量。
8. 根据权利要求2所述的方法,其中重调节所述编码变量包含递增地调节所述用以编 码所述后继数据段的编码变量,直到以所要编码结果对所述后继数据段进行编码为 止。
9. 根据权利要求8所述的方法,其中递增地调节所述编码变量包含当未接收到针对所 述后继数据段的调整大小请求且未以所述所要编码结果对所述后继数据段进行编 码时将所述编码变量递增地调节一增量值。
10. 根据权利要求8所述的方法,其进一步包含接收针对所述后继数据段的调整大小请求;及在接收到所述针对所述后继数据段的调整大小请求后,便将所述用以编码所述后 继数据段的编码变量调节一减量值。
11. 根据权利要求8所述的方法,其进一步包含-接收针对所述后继数据段的调整大小请求;及调节所述编码变量以实现针对所述后继数据段所接收的所述调整大小请求中所 规定的减小的位速率。
12. 根据权利要求l所述的方法,其中调节所述待用以编码一个或一个以上后继数据段 的编码变量包含设定所述待用以编码一个或一个以上后继数据段的编码变量,使其 等于所述用以调整所述数据段的大小的编码变量。
13. 根据权利要求l所述的方法,其中调节所述用以编码一个或一个以上后继数据段的 编码变量包含在接收到针对多个连续数据段的调整大小请求后调节所述用以编码 一个或一个以上后继数据段的编码变量。
14. 根据权利要求l所述的方法,其中所述数据段包含实时数据段。
15. —种用于编码数字多媒体数据串流的设备,所述设备包含调整大小模块,其接收调整与所述数字多媒体数据串流相关联的当前数据段的大 小的请求并响应于所述请求调整所述数据段的大小,及速率控制模块,其调节用以编码一个或一个以上后继数据段的至少一个编码变量 以便以一位速率对所述后继数据段进行编码,所述位速率不同于假如无调整大小请 求原本将已用于编码所述后继数据段的位速率。
16. 根据权利要求15所述的设备,其中所述速率控制模块重调节所述用以编码所述后 继数据段的编码变量使得所述后继数据段以所要编码结果编码。
17. 根据权利要求16所述的设备,其中所述速率控制模块重调节所述用以编码所述后 继数据段的编码变量使得所述后继数据段以所要质量水平编码。
18. 根据权利要求16所述的设备,其中所述速率控制模块重调节所述用以编码所述后 继数据段的编码变量使得所述后继数据段以所要位速率编码。
19. 根据权利要求16所述的设备,其中所述速率控制模块重调节所述用以编码所述后 继数据段的编码变量使得所述后继数据段以所要帧速率编码。
20. 根据权利要求16所述的设备,其中所述速率控制模块重调节所述用以编码所述后 继数据段的编码变量使得所述后继数据段以所要量化参数(QP)编码。
21. 根据权利要求16所述的设备,其中当在一时间周期内未接收到调整大小请求时, 所述速率控制模块重调节所述用以编码所述后继数据段的编码变量。
22. 根据权利要求16所述的设备,其中所述速率控制模块的重调节递增地调节所述用 以编码所述后继数据段的编码变量,直到所述后继数据段以所要编码结果编码为 止。
23. 根据权利要求22所述的设备,其中当未接收到针对所述后继数据段的调整大小请 求且所述后继数据段未以所述所要编码结果编码时,所述速率控制模块的重调节将 所述编码变量递增地调节一增量值。
24. 根据权利要求22所述的设备,其中所述调整大小模块接收针对所述后继数据段的调整大小请求;且 在接收到所述针对所述后继数据段的调整大小请求后,所述速率控制模块便将所 述用以编码所述后继数据段的编码变量调节一减量值。
25. 根据权利要求22所述的设备,其中所述调整大小模块接收针对所述后继数据段的调整大小请求;且 所述调节模块调节所述编码变量以实现针对所述后继数据段所接收的所述调整 大小请求中所规定的减小的位速率。
26. 根据权利要求15所述的设备,其中所述速率控制模块设定所述待用以编码一个或 一个以上后继数据段的编码变量,使其等于所述用以调整所述数据段的大小的编码 变量。
27. 根据权利要求15所述的设备,其中在接收到针对多个连续数据段的调整大小请求 后,所述速率控制模块的重调节便调节所述用以编码一个或一个以上后继数据段的 编码变量。
28. 根据权利要求15所述的设备,其中所述数据段包含实时数据段。
29. —种用于编码数字多媒体数据串流的设备,所述设备包含接收装置,其用于接收调整与所述数字多媒体数据串流相关联的数据段的大小的 请求;调整大小装置,其用于响应于所述请求调整所述数据段的大小;及调节装置,其用于调节用以编码一个或一个以上后继数据段的至少一个编码变量使得所述后继数据段以一位速率编码,所述位速率不同于假如未接收到调整大小请求原本将已用于编码所述后继数据段的位速率。
30. 根据权利要求29所述的设备,其中所述调节装置重调节所述用以编码所述后继数 据段的编码变量使得所述后继数据段以所要编码结果编码。
31. 根据权利要求30所述的设备,其中所述调节装置重调节所述用以编码所述后继数 据段的编码变量使得所述后继数据段以所要质量水平编码。
32. 根据权利要求30所述的设备,其中所述调节装置重调节所述用以编码所述后继数 据段的编码变量使得所述后继数据段以所要位速率编码。
33. 根据权利要求30所述的设备,其中所述调节装置重调节所述用以编码所述后继数 据段的编码变量使得所述后继数据段以所要帧速率编码。
34. 根据权利要求30所述的设备,其中所述调节装置重调节所述用以编码所述后继数 据段的编码变量使得所述后继数据段以所要量化参数(QP)编码。
35. 根据权利要求30所述的设备,其中当在一时间周期内未接收到调整大小请求时, 所述调节装置重调节所述用以编码所述后继数据段的编码变量。
36. 根据权利要求30所述的设备,其中所述调节装置递增地调节所述用以编码所述后 继数据段的编码变量,直到所述后继数据段以所要编码结果编码为止。
37. 根据权利要求36所述的设备,其中当未接收到针对所述后继数据段的调整大小请 求且所述后继数据段未以所述所要编码结果编码时,所述调节装置将所述编码变量 递增地调节一增量值。
38. 根据权利要求36所述的设备,其中所述接收装置接收针对所述后继数据段的调整大小请求;且 在接收到所述针对所述后继数据段的调整大小请求后,所述调节装置便将所述用 以编码所述后继数据段的编码变量调节一减量值。
39. 根据权利要求36所述的设备,其中所述接收装置接收针对所述后继数据段的调整大小请求;且所述调节装置调节所述编码变量以实现针对所述后继数据段所接收的所述调整 大小请求中所规定的减小的位速率。
40. 根据权利要求29所述的设备,其中所述调节装置设定所述待用以编码一个或一个 以上后继数据段的编码变量,使其等于所述用以调整所述数据段的大小的编码变 量。
41. 根据权利要求29所述的设备,其中在接收到针对多个连续数据段的调整大小请求 后,所述调节装置便调节所述用以编码一个或一个以上后继数据段的编码变量。
42. 根据权利要求29所述的设备,其中所述数据段包含实时数据段。
43. —种用于处理数字视频数据的处理器,所述处理器适于接收调整与数字多媒体数据串流相关联的数据段的大小的请求; 响应于所述请求调整所述数据段的大小;及调节用以编码一个或一个以上后继数据段的至少一个编码变量使得所述后继数 据段以一位速率编码,所述位速率不同于假如无调整大小请求原本将已用于编码所 述后继数据段的位速率。
44. 根据权利要求43所述的处理器,其中所述处理器适于重调节所述用以编码所述后 继数据段的编码变量使得所述后继数据段以所要编码结果编码。
45. 根据权利要求44所述的处理器,其中所述处理器适于重调节所述用以编码所述后 继数据段的编码变量使得所述后继数据段以所要质量水平编码。
46. 根据权利要求44所述的处理器,其中所述处理器适于重调节所述用以编码所述后 继数据段的编码变量使得所述后继数据段以所要位速率编码。
47. 根据权利要求44所述的处理器,其中所述处理器适于重调节所述用以编码所述后 继数据段的编码变量使得所述后继数据段以所要帧速率编码。
48. 根据权利要求44所述的处理器,其中所述处理器适于重调节所述用以编码所述后 继数据段的编码变量使得所述后继数据段以所要量化参数(QP)编码。
49. 根据权利要求44所述的处理器,其中当在一时间周期内未接收到调整大小请求时, 所述处理器适于重调节所述用以编码所述后继数据段的编码变量。
50. 根据权利要求44所述的处理器,其中所述处理器适于递增地调节所述用以编码所 述后继数据段的编码变量,直到所述后继数据段以所要编码结果编码为止。
51. 根据权利要求50所述的处理器,其中当未接收到针对所述后继数据段的调整大小 请求且所述后继数据段未以所述所要编码结果编码时,所述处理器适于将所述编码 变量递增地调节一增量值。
52. 根据权利要求50所述的处理器,其中所述处理器适于接收针对所述后继数据段的调整大小请求;及在接收到所述针对所述后继数据段的调整大小请求后,便将所述用以编码所述后 继数据段的编码变量调节一减量值。
53. 根据权利要求50所述的处理器,其中所述处理器适于接收针对所述后继数据段的调整大小请求;及调节所述编码变量以实现针对所述后继数据段所接收的所述调整大小请求中所 规定的减小的位速率。
54. 根据权利要求43所述的处理器,其中所述处理器适于设定所述待用以编码一个或 一个以上后继数据段的编码变量,使其等于所述用以调整所述数据段的大小的编码 变量。
55. 根据权利要求43所述的处理器,其中在接收到针对多个连续数据段的调整大小请 求后,所述处理器适于调节所述用以编码一个或一个以上后继数据段的编码变量。
56. —种用于处理数字视频数据的计算机程序产品,其包含-计算机可读媒体,其包含致使至少一个计算机进行以下操作的指令 接收调整与数字多媒体数据串流相关联的数据段的大小的请求; 响应于所述请求调整所述数据段的大小;及调节用以编码一个或一个以上后继数据段的至少一个编码变量使得所述后继 数据段以一位速率编码,所述位速率不同于假如无调整大小请求原本将已用于编 码所述后继数据段的位速率。
57. 根据权利要求56所述的计算机程序产品,其中所述计算机可读媒体进一步包含致 使所述计算机重调节所述用以编码所述后继数据段原本以所要编码结果对所述后 继数据段进行编码的指令。
58. 根据权利要求57所述的计算机程序产品,其中所述致使所述计算机重调节所述编 码变量的指令包含致使所述计算机重调节所述用以编码所述后继数据段的编码变 量以便以所要质量水平对所述后继数据段进行编码的指令。
59. 根据权利要求57所述的计算机程序产品,其中所述致使所述计算机重调节所述编 码变量的指令包含致使所述计算机重调节所述用以编码所述后继数据段的编码变 量以便以所要位速率对所述后继数据段进行编码的指令。
60. 根据权利要求57所述的计算机程序产品,其中所述致使所述计算机重调节所述编 码变量的指令包含致使所述计算机重调节所述用以编码所述后继数据段的编码变 量以便以所要帧速率对所述后继数据段进行编码的指令。
61. 根据权利要求57所述的计算机程序产品,其中所述致使所述计算机重调节所述编 码变量的指令包含致使所述计算机重调节所述用以编码所述后继数据段的编码变 量以便以所要量化参数(QP)对所述后继数据段进行编码的指令。
62. 根据权利要求57所述的计算机程序产品,其中所述致使所述计算机重调节所述编 码变量的指令包含当在一时间周期内未接收到调整大小请求时致使所述计算机重 调节所述用以编码所述后继数据段的编码变量的指令。
63. 根据权利要求57所述的计算机程序产品,其中所述致使所述计算机重调节所述编 码变量的指令包含致使所述计算机递增地调节所述用以编码所述后继数据段的编 码变量直到以所要编码结果对所述后继数据段进行编码为止的指令。
64. 根据权利要求63所述的计算机程序产品,其中所述致使所述计算机递增地调节所 述编码变量的指令包含当未接收到针对所述后继数据段的调整大小请求且所述后 继数据段未以所述所要编码结果编码时致使所述计算机将所述编码变量递增地调 节一增量值的指令。
65. 根据权利要求63所述的计算机程序产品,其中所述计算机可读媒体进一步包含致 使所述计算机进行以下操作的指令接收针对所述后继数据段的调整大小请求;及在接收到所述针对所述后继数据段的调整大小请求后,便将所述用以编码所述后 继数据段的编码变量调节一减量值。
66. 根据权利要求63所述的计算机程序产品,其中所述计算机可读媒体进一步包含致 使所述计算机进行以下操作的指令接收针对所述后继数据段的调整大小请求;及调节所述编码变量以实现针对所述后继数据段所接收的所述调整大小请求中所 规定的减小的位速率。
67. 根据权利要求56所述的计算机程序产品,其中所述致使所述计算机调节所述待用 以编码一个或一个以上后继数据段的编码变量的指令包含致使所述计算机设定所 述待用以编码一个或一个以上后继数据段的编码变量而使其等于所述用以调整所 述数据段的大小的编码变量的指令。
68. 根据权利要求56所述的计算机程序产品,其中致使所述计算机调节所述用以编码 一个或一个以上后继数据段的编码变量的指令包含在接收到针对多个连续数据段 的调整大小请求后便致使所述计算机调节所述用以编码一个或一个以上后继数据 段的编码变量的指令。
全文摘要
本发明描述用于调节编码装置的编码变量的技术。响应于调整数据段的大小的请求,编码模块调节用以编码一个或一个以上后继数据段的至少一个编码变量,以便以一位速率对所述后继数据段进行编码,所述位速率不同于假如无调整大小请求原本将已用于编码所述后继数据段的位速率。在某一点,所述编码模块重调节所述用以编码所述数据段的编码变量使得所述后继数据段经编码以实现所要编码结果。举例来说,所述编码模块可在一时间周期后重调节所述编码变量或可递增地调节所述编码变量,直到所述编码变量导致实现所述所要编码结果为止。
文档编号H04N7/46GK101375604SQ200780003639
公开日2009年2月25日 申请日期2007年1月31日 优先权日2006年1月31日
发明者布鲁斯·柯林斯, 帕尼库马尔·巴米迪帕蒂, 比尼塔·古普塔, 维贾雅拉克希米·R·拉韦恩德拉恩, 肯特·G·沃克 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1