用于多媒体电话的依赖于内容和链路的编码自适应的制作方法

文档序号:7936293阅读:230来源:国知局

专利名称::用于多媒体电话的依赖于内容和链路的编码自适应的制作方法
技术领域
:概括地说,本发明公开内容涉及无线通信,具体地说,涉及支持多媒体电话的通信技术。
背景技术
:在无线和有线通信中,多媒体电话(通常称为视频电话(VT))是需要的。在多媒体电话中,两个或更多个用户通过有线或无线通信或二者的结合,相互传输音频信息和视频信息。这种传输还可以包括其它的媒体元素,比如文本、静态图像或其它信息。举个例子,一个或多个用户可以在无线通信手机上运行多媒体电话,而其他用户可以在"有线"或"陆地线路"VT终端上运行多媒体电话。手机和/或终端从用户捕获音频信息,并且可以配备摄像头来捕获视频信息。可以将该音频和视频信息传输给其它设备,该设备将音频和视频信息解码并呈现给另一个用户。多种通信协议和网络结构都可以支持多媒体电话应用。
发明内容概括地说,本发明描述了各种有助于多媒体电话的技术。这些技术支持依赖于内容和链路的多媒体单元(如视频帧)编码。这些技术依赖于对上行链路和下行链路吞吐量的测量结果。可以定义媒体单元,然后在已定义的媒体单元包括了上行链路和下行链路都能容纳的数据时,对该媒体单元进行编码。在编码设备处测量上行链路吞吐量,在解码设备处测量下行链路吞吐量。将下行链路吞吐量反馈给编码设备。本发明中所描述的技术有助于编码设备的自适应,以便适应上行链路和下行链路的链路状况。具体而言,可以根据为视频单元(如视频帧)规定的比特预算以及与上行链路和下行链路分别关联的第一吞吐量水平和第二吞吐量水平对视频单元进行编码。在一个例子中,本发明提供了一种用于多媒体数据传输的方法,所述方法包括确定与从第一接入终端到网络的多媒体数据传输关联的第一吞吐量水平;根据从第二接入终端通过所述网络到所述第一接入终端的反馈,确定与从所述网络到所述第二接入终端的多媒体数据传输关联的第二吞吐量水平;确定与所述多媒体数据的视频单元的传输关联的预算;根据所述预算以及所述第一吞吐量水平和第二吞吐量水平,对所述多媒体数据的视频单元进行编码。在另一个例子中,本发明提供了一种用于传输多媒体数据的装置,所述装置包括第一令牌缓冲器模块,用于确定与从所述装置到网络的多媒体数据传输关联的第一吞吐量水平;第二令牌缓冲器模块,用于根据从接入终端到所述装置的反馈,确定与从所述网络到所述接入终端的多媒体数据传输关联的第二吞吐量水平;剩余量模块,用于确定与所述多媒体数据的视频单元的传输关联的预算;编码模块,用于根据所述预算以及所述第一吞吐量水平和第二吞吐量水平,对所述多媒体数据的视频单元进行编码。在另一个例子中,本发明提供了一种用于多媒体数据传输的装置,所述装置包括用于确定与从所述装置到网络的多媒体数据传输关联的第一吞吐量水平的模块;用于根据从接入终端通过所述网络到所述装置的反馈来确定与从所述网络到所述接入终端的多媒体数据传输关联的第二吞吐量水平的模块;用于确定与所述多媒体数据的视频单元的传输关联的预算的模块;用于根据所述预算以及所述第一吞吐量水平和第二吞吐量水平对所述多媒体数据的视频单元进行编码的模块。在另一个例子中,本发明提供了一种包括计算机可读介质的计算机程序产品,所述计算机可读介质包括指令,所述指令用于确定与从第一接入终端到网络的多媒体数据传输关联的第一吞吐量水平;根据从第二接入终端通过所述网络到所述第一接入终端的反馈,确定与从所述网络到所述第二接入终端的多媒体数据传输关联的第二吞吐量水平;确定与所述多媒体数据的视频单元的传输关联的预算;根据所述预算以及所述第一吞吐量水平和第二吞吐量水平,对所述多媒体数据的视频单元进行编码。在另一个例子中,本发明提供了一种接入终端(AT),包括天线,用于向网络发送无线传输并从网络接收无线传输;第一令牌缓冲器模块,用于确定与从所述AT到网络的多媒体数据传输关联的第一吞吐量水平;第二令牌缓冲器模块,用于根据来自另一个AT的反馈,确定与从所述网络到所述另一个AT的多媒体数据传输关联的第二吞吐量水平;剩余量模块,用于确定与所述多媒体数据的视频单元的传输关联的预算;编码模块,用于根据所述预算以及所述第一吞吐量水平和第二吞吐量水平,对所述多媒体数据的视频单元进行编码。在另一个例子中,本发明提供了一种用于多媒体数据传输的方法,所述包括接收从第一接入终端(AT)发送到第二AT的第一多媒体数据,其中,所述第一多媒体数据是从网络传输到所述第二AT的;在观测窗口中测量从所述网络到所述第二AT的吞吐量;从所述第二AT向所述第一AT发送信息,其中,该信息指示了在所述观测窗口中测量出的从所述网络到所述第二AT的吞吐量水平。在另一个例子中,本发明提供了一种用于多媒体数据传输的装置,所述装置包括接收机模块,用于接收从接入终端(AT)发送到所述装置的第一多媒体数据,其中,所述第一多媒体数据是从网络传输到所述装置的;吞吐量测量模块,用于在观测窗口中测量从所述网络到所述装置的吞吐量;发射机模块,用于从所述装置向所述AT发送信息,其中,该信息指示了在所述观测窗口中测量出的从所述网络到所述装置的吞吐量水平。在另一个例子中,本发明提供了一种用于多媒体数据传输的装置,所述装置包括用于接收从接入终端(AT)发送到所述装置的第一多媒体数据的模块,其中,所述第一多媒体数据是从网络传输到所述装置的;用于在观测窗口中测量从所述网络到所述装置的吞吐量的模块;用于从所述装置向所述AT发送信息的模块,其中,该信息指示了在所述观测窗口中测量出的从所述网络到所述装置的吞吐量水平。在另一个例子中,本发明提供了一种包括计算机可读介质的计算机程序产品,所述计算机可读介质包括指令,所述指令用于接收从第一接入终端(AT)发送到第二AT的第一多媒体数据,其中,所述第一多媒体数据是从网络传输到所述第二AT的;在观测窗口中测量从所述网络到所述第二AT的吞吐量;从所述第二AT向所述第一AT发送信息,其中,该信息指示了在所述观测窗口中测量出的从所述网络到所述第二AT的吞吐量水平。在另一个例子中,本发明提供了一种接入终端(AT),包括天线,用于向网络发送无线传输并从网络接收无线传输;接收机模块,用于接收从另一个AT发送的第一多媒体数据,其中,所述第一多媒体数据是从所述另一个AT传输到所述网络并从所述网络传输到所述AT的;吞吐量测量模块,用于在观测窗口中测量从所述网络到所述AT的吞吐量;发射机模块,用于从所述AT向所述另一个AT发送信息,其中,该信息指示了在所述观测窗口中测量出的从所述网络到所述AT的吞吐量水平。结合下面的附图和具体实施方式来详细阐明本发明的一个或多个方面。根据具体实施方式、附图以及权利要求,本发明中所描述的技术的其它特征、目标和优点将是显而易见的。图1是使用基于反馈的多媒体电话速率自适应的示例系统的框图。图2和3是说明对上行链路和下行链路分别采用不同的令牌桶时或对上行链路和下行链路采用一个共享的令牌桶时,令牌和时间的函数关系的曲线图。图4类似于图1,原理性地示出了用户设备之间基于反馈的速率控制系统的功能框图形式的例子。图5的流程图示出了与本发明一致的一个例子的操作过程。图6原理性地示出了一种装置(例如图1中所示的UEA或UEB)的示例性硬件实现。图7分别示出了有24、28、36和44个用户的系统中的设备帧速率的四个帧速率柱状图。图8和9是示出了仿真结果的曲线图,以说明本发明的技术的有效性。图10是示出能够实现本发明中各种技术的示例系统的示例性框图。图11-13是与本发明的技术一致的流程图。图14和15是可以用于实现本发明的各个方面的装置的框图。具体实施例方式下面将描述本发明的各个方面。显而易见的是,本发明中所讲的内容可以体现为多种形式,本发明中所描述的任何具体的结构、功能或上述二者都仅仅是代表性的。根据本发明中所讲的内容,本领域的一般技术人员应该了解的是,本发明中所公开的一个方面可以独立于任何其它方面来实现,两个或多个这样的方面也可以通过各种方式相结合。举个例子,可以利用本发明中所阐述的任意多个方面来实现一种装置或实现一种方法。另外,可以用本发明所提出的一个或多个方面以外的(或连同)其它结构、功能或结构和功能,来实现此类装置或实现此类方法。此外,一个方面包括至少一个权利要求要素。总体而言,本发明强调对适用于3G无线网络(比如高速分组接入(HSPA)、高速率分组数据(HRPD)等等)中的分组交换视频电话(PSVT)技术的挑战。本发明描述了能够改进3G无线网络中的PSVT服务的技术。在HSPA/HRPD中,根据用户在小区中的位置和/或系统负载情况,可能出现可用带宽的暂时性减少。这会使观测到的分组延迟显著增加,潜在地在接收机处造成分组丢失。为了克服这一问题,本发明的技术提供了一种基于反馈的速率自适应方案。所提出的方案能够使视频编码器比特速率适应于变化的信道带宽,并使分组延迟最小化。所描述的技术不需要在信道上做出任何分段的恒定比特率(CBR)的假设,就可以将编码后的源速率与不同的信道状况相匹配。这些技术可以应用于上行链路和/或下行链路是无线链路的任何环境中。上行链路指的是从用户设备(UE)到网络节点(比如,基站)的通信,下行链路指的是从网络节点到UE的通信。在所提出的方案中,在上行链路(比如,从发送方移动设备到网络)和下行链路(比如,从网络到接收方移动设备)上监测观测到的吞吐量。根据在上行链路和下行链路上观测到的吞吐量确定期望的目标数据速率。根据源端的变化和期望的目标数据速率,所描述的算法可以控制被调度以用于传输的视频帧的编码时间和分组尺寸(比如,字节数)。通常而言,术语"吞吐量"指的是在两个时刻之间发生的数据的总累计。因此,吞吐量是以数据的单位(比如,总比特数)给出的。依照本发明,可以在观测窗口中测量分组数目和这些分组的尺寸。这样,吞吐量就是在已定义的(但是也可能是任意的)观测窗口内与接收到的分组相关联的数据量。在一个例子中,该观测窗口可以包括两个连续的编码后的帧之间的时间量。因此,吞吐量不是对数据速率的测量,而是对数据的测量。观测窗口可以定义两个时刻,在二者之间累计的数据用于定义这段时间内的吞吐量。在用于VT的多媒体通信中,可以发送音频信息,而不用考虑是否发送了任何视频信息。视频信息可以包括视频单元(比如视频帧),其中,根据VT会话的设备之间协商好的数据速率和帧速率对视频单元进行调度以用于传输。但是,依照本发明,由于上行链路或下行链路上测量出的吞吐量的约束,视频单元的编码和发送会受到限制。依照本发明,用语"多媒体数据"可以包括音频信息(比如音频帧)、视频信息(比如视频帧),还可以包括语音、文本、静态图像、其它类型数据或它们的任何组合。本发明还根据第三代合作伙伴项目(3GPP)和国际电信联盟(ITU)所釆用的已认可的规范和普遍的仿真条件,对所提出的方法给出了仿真结果。本发明显示通过及时从接收方移动设备将观测到的吞吐量反馈给发送方移动设备,能够明显降低单向延迟。本发明显示,通过每200ms使用一个反馈消息,百分之九十五的分组能够以低于250ms的单向延迟送达。本发明还显示,所提出的算法能够根据可用系统资源和用户在给定小区中的位置合理的降低性能。下面对在无线网络中以较低延迟发送视频以便支持会话服务(比如,通常指的是视频电话(VT))的问题进行讨论。在常规视频编码器中,由于场景特征的变化,编码器要生成可变比特率(VBR)流以保持稳定的视觉质量。可以将这些比特流分装为不同尺寸的应用数据单元(ADU)以用于传输。可以通过具有统计复用增益但有一些无法避免的延迟的CBR信道来传输这些流。但是,与(比如,在电路交换业务中的)呼叫过程中所有用户有专用带宽相比较,诸如HSPA的无线网络中的无线资源在会话过程中是在多个用户之间共享的。当用户移动到小区中信号较差的位置和/或系统负载由于其它因素增加时,可用带宽就会低于会话建立过程中协商好的带宽,从而导致VBR信道。要注意的是,这一问题不同于在常规的尽力而为(besteffort)型网络(比如,因特网)中通常遇到的问题,在尽力而为型网络中,拥塞通常意味着没有分组能够送达。这里,在上行链路和/或下行链路拥塞时,分组还是可以发送的,但是可用带宽可能会降低。这会造成需要更长的时间向接收方移动设备传送视频分组,从而增加了延迟。可以发现可能由于上行链路或下行链路上的拥塞或由于很快的动作变化和场景变化所造成的较大的视频分组会使延迟增加。在HSPA和高速率分组数据(HRPD)的环境中,用户设备(UE)在上行链路和下行链路上的可用带宽依赖于多个方面,其中,一些是可以预测的(比如,服务提供商的服务质量(QoS)策略、系统负载或其它可预测的因素),一些是不可预测的(比如,l正的几何条件、信道状况或其它不可预测的因素)。另外,在实时的会话应用中,源端特征的变化可能是不可预因此,当发送方在上行链路或下行链路拥塞期间生成大的视频分组时,系统可能需要较长时间来发送这些分组,并且导致端到端延迟的增加。为了解决这一问题,本发明提供了一种动态的速率自适应方案。在这种方法中,发送方监测上行链路上的信道吞吐量。同时,接收方计算下行链路上的信道吞吐量,并将这一信息反馈给发送方。在发送方处的视频编码设备针对上行链路和下行链路分别维护两个独立的令牌桶,并根据分别观测到的信道吞吐量更新令牌桶。视频编码设备独立考虑上行链路和下行链路上的可用吞吐量,并将这些可用吞吐量和与对当前视频帧进行编码关联的预算进行比较。因为该预算包括当前(当前时间)帧的剩余数据(其中,该当前帧是根据之前的帧进行编码的),因此如果吞吐量不充足,则该预算也要进行自适应。虽然可用吞吐量可以随着时间累计,但是由于发送的视频序列中的场景随时间改变,当前帧所需要的吞吐量也可能随着时间而增加。也就是说,从先前已编码的帧开始经过的时间越多,对帧进行编码所需的必要比特预算也会增加。在发送方的上行链路和接收方的下行链路处导致拥塞的事件未必是相关的。通过维护发送设备中的两个独立的令牌桶,编码器能够在其操作中将上行链路和下行链路状况以及源端的变化一起考虑进来。在不同的编码时机,可以对生成满足期望目标质量的帧所需要的比特预算进行估计。如果有足够水平的吞吐量可用(如通过令牌桶所确定的),则对帧进行编码并进行发送。否则,跳过(即,不编码)当前帧,且编码器一直等到有足够的吞吐量可用才进行编码。但是,在跳过一帧之后,编码器要用比在两个设备之间的协商会话中进行更新更快的速度来更新吞吐量和必要的比特预算,否则,将会出现在两个设备之间的协商会话中进行更新的情况。举个例子,如果建立了每秒10帧的帧速率,那么在跳过一帧后,本发明中的技术会在之后很短时间内编码并发送帧,而不需要编码器等到调度下一个帧。与常规技术不同,本发明中提出的方案利用了反馈,但是反馈是从接收方UE到发送方UE的。通过将系统设计限制在应用层(比如,源编解码器)和实时传输(RTP)层,可以使已部署的网元(比如,网关、有线到无线的边缘路由器、节点B、调度器等)的变化最小化。因此,已部署的网元中的低层协议栈的实现方式不需要修改和/或改变接口。在本发明的技术中,发送方监测上行链路上的可用吞吐量,并且根据接收机反馈的信息,依赖于下行链路上观测到的吞吐量。然后,源编码器估计捕获源端的变化所需要的比特预算,并且触发速率自适应以便匹配上行链路和下行链路的相应特性。另外,也可以规定很多其它能够测量和反馈的度量标准以改进会话服务的系统级性能。本发明记载和描述了当源端特性、上行链路和下行链路特性都同时变化时,在3G网络中评价低延迟的会话服务的方法和一般性条件。可以用本发明中所提出的方法来评价各种可替代的方案。本发明采用多用户、多小区、系统级事件驱动的方法来论证在仿真的3GPPRelease-6网络中使用所提出的方案的可行性。网络布局和配置是基于UE—致性测试的测试环境的(比如,3GPP所制定的布局和配置)。对于HSPA而言,对所描述的技术的分析使用的是3GPP制定的假设。如本发明中所描述的,用R263+视频编解码器和RTP分组化来仿真分组交换的视频电话服务。在视频源和目标度量方面,本发明遵循对多媒体的评价方法。本发明针对会话服务来一般性地提供系统级性能分析。可以利用本发明中的信息得出下面讨论的结果。图i是示例性系统ioa的框图,该系统针对多媒体电话釆用了基于反馈的速率控制。具体地,图i显示了一个示例性的基于反馈的速率控制系统100的框图,该系统包括通过网络115进行通信的UE112和114。UEA112和UEB114分别代表视频流的发送方和接收方。UEA112和UEB114可以包括发射机和接收机,但是为了便于解释说明和简单性,这些组件在图1中并未示出。UEA112和UEB114还可以包括编码器和解码器(或集成的编码-解码器"CODEC"),但是为了便于解释说明和简单性,并未示出这些组件。在本发明中,术语"编码(coding)"指的是编码(encoding)、解码(decoding)或者编码和解码。图1中示出的UEA112和UEB114的组件可以看作为设备112、114的CODEC的组件,或者可以看作为用于在设备112、114的CODEC编码之前处理数据的组件。本发明分别用上标A或B代表UE,用下标u、d表示上行链路和下行链路。上行链路指的是去往UE112的数据通信信道(比如,从网络到UE112),下行链路指的是来自UE112的数据通信信道(比如,从网络115到UE114)。网络115中的节点117和118分别代表向UE112和114提供数据服务的分组数据服务节点(PDSN)。但是,更一般地来讲,节点117和118可以由任何类型的接入点(AP)来代替,包括节点、基站、任何合适的网络设备或可能的其它UE或AT。UE112和114包括很多种类的接入终端(AT)中的任何一种,比如无线通信设备、VT手机、个人数字助理(PDA)、膝上型或桌上型计算机或任何类型的包括VT功能的设备。但是,应该注意的是,本发明的各方面并不是必须限于无线环境。只要上行链路或下行链路是无线的,那么这些技术还可以结合非无线(比如,基于有线的网络组件)来使用。以灰色线示出从UEB114到UEA112的数据流,以黑色线示出从UEA112到l正B114的数据流。从节点117到UEA112的传输标识为RCAd(i)。从UEA112到节点117的传输标识为RCAu(i)。从节点118到UEB114的传输标识为RCBd(i)。从UEB114到节点118的传输标识为RCBu(i)。如本发明中所述,节点117禾n118可以由任何类型的接入点(AP)代替。接入点或节点可以包括分组数据服务节点(PDSN)、节点B、无线网络控制器("RNC")、eNodeB、基站控制器("BSC,,)、基站收发台("BTS")、基站("BS")、收发器功能("TF")、无线路由器、无线收发器、基本服务集("BSS")、扩展服务集("ESS")、无线基站("RBS")、中继站或一些其它专门术语。UE可以由AT代替,并且UE或AT可以包括用户单元、移动站、远程站、远程终端、接入终端、用户终端、用户代理、用户设备或任何类型的用户设备,比如移动站、蜂窝电话、无绳电话、个人数字助理("PDA")、有无线连接能力的手持设备或一些其它的与无线调制解调器连接的合适的处理设备。结合本发明中所公开的各个方面来描述的不同的示例性逻辑块、模块和电路可以在集成电路("IC")、接入终端或接入点中实现,或者由它们来执行。IC可以包括通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑设备、分立门或晶体管逻辑、分立硬件组件、电组件、光组件、机械组件或设计用于执行本发明所描述的功能的任何组合,并且IC可以执行存储在IC中和IC外的代码和指令。通用处理器可以是微处理器,但是作为替换,该处理器可以是任何常规处理器、控制器、微控制器或状态机。处理器还可以实现为计算设备的组合,比如DSP和微处理器的组合、一组微处理器、一个或多个微处理器与DSP内核结合,或者任何其它这类结构。在UEA112处,通过帧剩余量单元122利用先前已编码帧VA(n-1)的预测版本,计算在采样时刻n当前视频帧v(t)的帧剩余量DA(n)。该帧剩余量和来自上行链路令牌桶LBuA(n)单元126和下行链路令牌桶LBdB(n)单元128的令牌信息一起供速率决定算法(RDA)单元124使用。如果RDA单元124估计出的当前帧剩余量小于令牌桶单元LBUA(n)124或LBdB(n)126中令牌的最小量,则对当前帧进行编码,否则不对当前帧进行编码。RSA(n)是在时刻n被调度以用于传输的视频分组的尺寸。以这种方式,RDA单元124保证编码后的帧满足上行链路或下行链路所施加的最小约束。根据上行链路上的信道吞吐量以及缓冲器占用情况的函数fu(标识为127),来更新上行链路令牌桶单元LBuA(n)124。类似地,根据下行链路上的信道吞吐量以及缓冲器占用情况的函数fd(标识为129),来更新下行链路令牌桶单元LBdB(n)。本发明中所描述的技术的一个方面是使用两个不同的令牌桶(比如,单元126和128),从而能够独立跟踪上行链路和下行链路信道特性。根据分别观测到的信道吞吐量、协商好的QoS和经过的时间将令牌放入令牌桶单元126和128中。根据发送的帧的尺寸将令牌从令牌桶中移除。令牌通常指的是任何可以在上行链路或下行链路上发送的指示了一定信息量的单元c图2和图3的曲线图解释说明了针对上行链路和下行链路分别使用令牌桶的一种动机。在图2的示例曲线图中,拥塞最初发生在上行链路上,然后上行链路令牌桶中的令牌数减少。在拥塞结束之后,令牌数慢慢回升到最大值(如图2中的实线133所示)。但是,在图2的例子中,在令牌回升完成之前,下行链路上发生拥塞(如图2中的虚线134所示)。图3中的虚线135示出了由于这两个独立事件的影响,在单个令牌桶中的令牌数。但是,在图3的单个令牌桶的例子中,可能会低估系统带宽,这是因为系统带宽通常是上行链路带宽和下行链路带宽的最小值。因此,通过使用两个令牌桶,可以独立地跟踪上行链路带宽和下行链路带宽,并因此能够更准确地跟踪系统带宽(如图3中实线136所示)。在每个编码时机,根据在上行链路和下行链路信道上观测到的吞吐量,分别向LBuA(n)单元126和LB/(n)单元128所代表的上行链路令牌桶和下行链路令牌桶中添加令牌。该吞吐量是从前一个编码时机到当前时间的总的信道吞吐量。上行链路吞吐量T/(n)和TdB(n)可以按照下面的公式计算ruA(,)=E/c;)xitj)(i)iGfcu(n)其中,RCuA(i)和RCdB(i)定义为信道的瞬时数据速率(IDR),也就是由传输时间间隔(TTI)划分出的用于信道上当前传输的一个传输间隔中的比特数。TTl/(i)和TTIdB(i)分别代表上行链路和下行链路信道的TTI,ku(n)和kd(n)是用于对当前视频帧进行编码的那些时间间隔的索引。按照下面的公式将令牌插入到上行链路令牌桶中(比如,LBuA(n)单元26):Z丑u.4(n)-""^.(i^maa^A,(2)i丑/(7z—1)++L^oca!,/)其中,LBmax,uA是上行链路缓冲器尺寸的最大值,LB,。械uA是由上行链路缓冲器的aupl)控制的本地令牌因子,其定义如下类似地,按照下面的公式将令牌插入到下行链路桶(比如,LBdB(n)单元28)中丄AB(",)=.""^(£丑,離,,(4)—1)+rdB(n)+丄岛。co',浐)其中,LB,,dB是下行链路缓冲器尺寸的最大值,LB一/是由下行链路缓冲器的0td(〈1)控制的本地令牌因子,其定义如下/=adx(风亂?-瑪s(tz-l))(5)依照公式3和5,可以根据LB—max(预定的常数)、当前令牌桶占有情况和alpha(a)向令牌桶中添加额外的令牌。alpha(a)可以是一个常数,也可以是从上一个成功编码时机开始经过的时间的函数。alpha(a)可用于确定如何跳出拥塞的状况。当在吋刻n对视频帧编码并发送到较低层时,由UA112执行下面的步骤以便从令牌桶中移除令牌。(w+1)=i队A(n)—(n)(6)线>+1)=瑪B(n)-其中,RSA(n)是在时刻n的编码后的视频帧的尺寸。要注意RSA(n)也是源编码器在时刻n的瞬时数据速率(IDR),并且可用于估计给定时间段m到n2内的源平均数据速率(ADR)。因此,所描述的令牌桶算法可用于监测变化的上行链路和下行链路吞吐量。TMN8利用流量整形缓冲器的占用情况,为低延迟视频通信提供速率控制。在本发明中,代替流量整形缓冲器的占用情况,编码设备可以使用上行链路/下行链路令牌桶的占用情况。对此,TMN8的目标是标称平均数据速率(比如64kbps)。在每个编码时机(比如,针对每秒IO帧的视频其为100ms),视频帧尺寸RSA(n)可以通过本发明所描述的速率决定算法来估计。只有满足下面的条件时,才对视频帧进行编码和传输。只5"(ri)^打"打(L丑uA('7,),_LBds^》(7)如果对帧进行了编码和传输,则更新令牌桶。否则,就跳过帧,并且所节省的预算可用于在接下来的编码时机进行编码。但是,如本发明中所描述的,在跳过帧之后所规定的编码时机要比预定的更频繁。举个例子,在跳过帧之后每2ms就估计一次RSA(n),这样的话,一旦吞吐量充足,就可以在预定的用于构造被跳过的帧的时刻附近构造该帧。概括地说,本发明描述了基于反馈的网络自适应源编码装置和方法,其用于分组交换的多媒体电话应用,尤其是(例如,携带视频和音频数据的)多媒体流。该方法中所使用的算法对于各种CODEC和不同的接入技术而言是通用的。该算法用于使源编码行为适应于以下的网络状况(i)分组丢失、(ii)变化的吞吐量。概括地说,该算法的方法包括基于以下函数/标准的速率决定步骤,这些函数/标准包括(a)观测到的上行链路吞吐量的函数、(b)观测到的下行链路吞吐量的函数、(c)输入源与先前已编码并传输的数据相比的变化、(d)期望的压縮质量和(e)平均目标源速率。但是,这五个函数/标准(a)-(e)并不是都必须需要的。此外,这一方法支持可变帧速率编码。可以用经过的时间和变化的源端特性来调节视频质量。在本发明下面的讨论中,使用如下所定义的各种縮写VBR—可变比特速率PSVT—分组交换视频电话CADR—信道平均数据速率HSPA—高速分组接入HRPD"高速率分组数据3G"第三代IDR—瞬时数据速率RC—信道速率(即,给定信道的瞬时数据速率)RS—源速率(即,给定源的瞬时数据速率)ADR—平均数据速率UE—用户设备PDSN—分组数据服务节点ADR—平均数据速率QoS—服务质量VCEG"视频编解码专家组、ITU-TSG16WP3Q.6正TF—互联网工程任务组RFC—请求注解RTP—实时传输协议3GPP—第三代合作伙伴项目DL—下行链路UL—上行链路TTI一传输时间间隔在分组交换通信中,将源速率与信道速率匹配是有好处的。这些好处包括较低的端到端延迟、增加的统计复用增益(SMG)等等。基于反馈的VBR(F-VBR)能达到比整形的VBR(S-VBR)和受限的VBR(C-VBR)更好的性能。经由无线介质进行的分组交换电话通信形成了特殊的挑战。无线信道容易受到分组丢失的影响,编解码器(编码器-解码器)的设计需要针对这种丢失提供充分的错误恢复能力。到目前为止,很多错误恢复解决方案是由编码器辅助的方案(比如,定期的内部刷新、自适应的内部刷新等),并且会影响PSVT中所用的视频编解码器的速率控制。由于信道资源和分组丢失特性会针对无线信道(比如HSPA和HRPD)而有所不同,因此监测信道并对PSVT使用基于反馈的速率自适应是有好处的。本发明描述的算法利用反馈信息实现最佳的速率控制。可以确定3G共享信道(比如HSPA和HRPD)中的分组交换视频电话的反馈信号和信令发送机制。在进一步描述本发明的例子之前,下面定义了一些数学术语和标记瞬时数据速率(IDR):《("。在系统中最小的可能的时间单元中传输的比特量。要注意的是,信道和数据源的瞬时数据速率通常以不同时间单元进行测量。举个例子,视频编码器的瞬时数据速率包括由从先前已编码的视频帧开始经过的时间所划分出来的视频帧中的已编码比特数。信道的瞬时数据速率包括由以秒为单位的TTI划分出来的一个TTI中的比特数。其中-上标x-A或B(分别针对UEA或UEB);下标;^u或d(分别针对上行链路或下行链路信道);索引^=&U,其是测量IDR的时刻。标识RS对应于源或视频IDR,标识RC对应于信道IDR。源IDR^;("):由--D)划分的一个编码帧中的比特数,其中,源生成时刻7^("):当前编码的视频帧的时间(以秒为单位),初始值rs;(o):o。信道IDRWC》')由7T/(0划分的一个传输间隔中的比特数,其中,m(o=(rc-rc;(!'-1)):在信道上的当前传输的传输时间间隔(以秒为单位);信道传输时刻工》')在信道上的当前传输开始的时间(以秒为单位)。源平均数据速率(Sadk):s,(m,附)=%t^M)—;rs(附))fm(^(ra(a;)-r乖-1)),其中,w(m)-rs(M)是观测持续时间。信道平均数据速率(Cadk):C扁(M,附)=Xrc(M)—rc(w))£及CW*(7T/W),其中,TC(AO-TC(/n)是观测持续时间。ARD通常是在预定的持续时间内观测到的平均速率。下列持续时间可以用于计算视频ADR:持续时间可以是一个GOP。持续时间可以是用于仿真的一整段时间或会话的整个持续时间。持续时间可以是几秒钟的滑动窗口。对于3GPP2的可变速率语音编解码器来说,ADR是在12秒的持续时间内计算的。术语"速率"可用于代表Sadr和Cadr,在这样的情况中,可以使用上下文环境来辨别术语"速率"指的是sadr还是cadr。信道吞吐量r(",w)-c扁(",w"(rc(")-7U(附》。一个TTI的持续时间通常大大小于视频帧速率。术语"吞吐量7T""可用于代表从仿真开始到时刻n,由信道所传输的比特数。这可以用于确定在由源端生成的两个编码后的分组之间的时间间隔内的吞吐量,比如,源端帧n和n-l之间的信道吞吐r(ra;("),("-1))=r(rs;("),m)-rc(re;("-1),附)=c扁("),w)*(rc(re;("》—rc(附》—c扁("-1),附)*("-1))-rc(m))=乞iC(A:)承7T/(A:)"sr/("-i)恒定比特率信道(CBRChannel):及C(z')=iV!'的信道。例子包括PSTN中的DSO。可变比特率信道(VBRChannel):及C(/)在采样时间间隔上不同的信道。例子包括3G网络中的HSPA和HRPD。恒定比特率源(CBRSource):生成恒定IDR的源编解码器。is(")^v"。例子包括G.711、G722.1等。可变比特率源(VBRSource):能够在采样时间间隔上生成可变IDR的源编解码器。例子包括13K声音合成器、EVRC族、R263等。速率控制用于在特定时间间隔中将源ADR与信道ADR相匹配的模块或程序。该时间间隔通常要比用于计算IDR的时间间隔长。对于与CBR信道相匹配的CBR源来说,通常不需要速率控制。令牌桶1^/"在很多速率控制方法中使用的虚拟缓冲器。令牌桶的特性通常由每A秒P个字节的令牌到达速率、每^秒a个字节的分组发送速率和/字节的峰值令牌桶尺寸来表示。在图4中,令牌桶显示为丄^V^,其中,x-A或B(分别对应于UEA或B),;^u或d(分别对应于上行链路或下行链路信道)。此外,图4中的令牌到达速率cr和分组发送速率P是时间索引n的函数。令牌桶也可以指文中的令牌缓冲器。下面参考图4,图4与图1类似,原理性地表示出了两个UE(UEA和l正B)之间基于反馈的速率控制系统的功能框图形式的例子。图4中所示并在下面描述的各种功能可以由本领域所公知的电路来实现。为了便于解释说明,图4中没有示出与UEA和UEB相关联的网络功能,而仅仅是由PDSNA和PDSNB分别代表。在图4中,UEA显示为视频流的发送方,UEB显示为视频流的接收方。假设基带信号(比如视频或音频信号)反馈到估计器12的输入端10,该估计器用于估计源的特性。进行估计以便确定当前视频帧v(t)相比于先前的帧v(n-l)的失真情况。速率决定模块14利用速率决定算法(RDA)将该信息和分别保存在令牌桶丄W(")和丄W(")中的来自下行链路性质/状况的接收机16的令牌信息和来自上行链路性质/状况的测量器18的令牌信息一起使用。如果当前帧所需要的瞬时数据速率小于令牌桶Z^(")和中令牌的最小数量,则由编码器20对当前帧进行编码,否则不进行编码。然后通过发送电路(参见如图6)将编码后的信号发送到PDSNA。根据上行链路上的信道吞吐量、l正A处的信息和缓冲器占用情况的函数,对上行链路性质/状况的测量器18中的上行链路令牌桶丄W(")进行更新(添加令牌)。类似地,根据下行链路上的信道吞吐量和缓冲器占用情况,对下行链路性质/状况的接收机16中的下行链路令牌桶i^(")进行更新(添加令牌)。需要注意的是,如上所描述的令牌桶LB的使用仅仅作为解释说明性的示例。也可以使用作为对RDA的输入的其它函数。从UEB到l正A有一条信号路径反馈,在图4中标记为22,该信号路径可以采取多种形式。该信号路径22将下行链路信道性质/状况中继给发送方(比如UEA)。信号路径22可以是专为这种目的而分配的专用信道。或者,信号路径22不需要是专用信道,而是与任何其它信道共享的。举个例子,可以在其它信道上搭载专用信道上的信息。图5的流程图解释说明了与本发明一致的一个例子的操作过程,其总体上由参考序号24标出。假设通过一些方案(比如QoS协商)来规定目标源ADR。可以将整个处理过程24大概分组以便下面的解释说明。关于缓冲器更新,本发明中的一个方面使用两个单独的令牌桶来跟踪上行链路和下行链路信道特性。根据相应的信道吞吐量将令牌插入到令牌桶中,并根据已编码帧的尺寸将令牌从令牌桶中移除。图5中的处理过程24的方框36和38代表缓冲器更新程序。缓冲器更新的步骤包括向令牌桶插入令牌和从令牌桶移除令牌的子步骤。为了将令牌插入令牌桶中,根据相应链路(上行链路和下行链路)上的吞吐量,向令牌桶丄W(")和^J(")添加令牌。该吞吐量是从先前的编码时间到当前吋间的总信道吞吐量。类似的,在一次成功的编码操作之后,从令牌桶中刪除令牌。在此,上行链路令牌桶的功能是将依赖于内容的源编码VBR设计映射到上行链路VBR传输设计。类似的,下行链路令牌桶的功能是依赖于内容的源编码VBR设计映射到下行链路VBR设计。根据这种依赖于内容的源编码得到的VBR模式在任意给定时间都不需要类似于可用信道资源和相应的传输设计。最后,编码决定是根据对源端预算的估计结果和令牌桶的占用情况做出的。下面的公式将解释说明这些操作。根据上行链路上的吞吐量、UEA处的本地统计信息,对方框36中的丄W(")进行更新,并且将令牌漏入桶(^J。c"C)中。类似地,根据在UEB处下行链路上的吞吐量,对方框38中的Z^(")进行更新,并且将令牌漏入桶中"万—/oca/"。令牌漏入i^(")的速率是ADR最小值的函数。此外,/0<是(在切换到不同的小区期间)重新指向(re-pointing)的持续时间的函数,这样的话,下行链路吞吐量在切换过程中不会是被过度补偿的。另外,如果在切换后在一定的时段以后没有接收到下行链路反馈,则可以假设无法在新的小区中维持该视频。在这种情况中,有可能丢失视频从而导致中断。丄5_max纟=最大上行链路缓冲器尺寸_max-=最大下行链路缓冲器尺寸丄5一/oca/,=(丄£—max,-/:B,(w—1))*)^=cwr—".me—r51^(w-1)丄5,(")=min(LB—max二丄5,("—1)+p(r/("),t/£J+丄£—/oca/,)隱公式(1)UEA处的本地信息丄5—/oca/j=(丄5一max^—(w—1))*g(。)=cr—-751"4(w—1)Z^fl(")=min(£B—max〗,丄B-(w—1)+r/(")+丄万_/oca/dB)-公式(2)"(")=t及CJ(0*m<f(0在上面的公式中,f()、g()和P()是一些泛型函数。此外,f()和g()可以是本发明中描述的预定的常数alpha—d和alpha—u(dd和(Xu)。假设给定的观测窗口的吞吐量C(")是由UEB处的模块/d计算的,并由"Genie"发送给UEA。"Genie"包括给定视频解码器的新的比特流语法、或给定视频比特流的新的RFC负载的定义,或在现有RTP负载定义中搭载反馈信息的通用机制。另夕卜,"Genie"可以是用于携带反馈信息的专用逻辑信道。至于从方框60的令牌桶中移除令牌的子步骤,如果视频帧已经编码并在/7/l^"时发送到较低层,则采用下面的步骤来更新缓冲存储器。丄A乂(w+1)=Z^f(")—S^1(")关于错误抑制,当发送方通过反馈接收到分组丢失的指示时,发送方提高对当前帧的错误恢复能力以便降低接收机造成的错误传播。错误恢复能力可以通过多种技术来改进,比如,使用内部帧/片段、提高内部宏块(macro-block)的百分比或者对受到告知的丢失影响的宏块进行内部宏块编码。图5中处理过程24的方框48代表错误抑制程序。关于速率决定算法,图5中处理过程24的方框32、42、46、48、50和54代表示例性的速率决定步骤。对当前帧vf^执行运动估计(ME),然后,在方框48中收集ME度量(比如,绝对差值的和(SAD)、平方差的和(SSD))。利用这些收集到的度量和方框46中的分组丢失指示,方框48中的速率控制算法为每个宏块选择QP(帧QP或分段QP和A(2尸))和(内部或交互的)模式,以便在方框50中的约束下得到最小失真Z7V"入=min(i^("),i^(")),其中是从速率控制模块估计出的源IDR。令^(")为编码后的实际源IDR。如果在方框50中S、")^B(")+礼—,且在方框54中DV"入i^V"-"々f^V"力,7^(")-7^("-1),mv",则在方框58中对PY",进行编码,并在方框60中相应地更新丄W(")和丄^(")。要注意的是,作为结果的^(")还应该满足方框46中由目标源ADR所设定的条件。否则,在方框32中不对r(^进行编码。上面的方法一个有用的方面是编码决定是根据方框54中的i)V">Z)V"-"<<i>V"-"7^("-1),附<""做出的。这里,z()对应于性能降级容忍度,其是先前编码的质量、当前帧和先前已编码的帧之间的时间距离和动作向量的函数。该函数确定对当前帧进行编码时可以容忍多大的质量降级;如果性能降级满足该容忍度,则对帧编码,否则不会编码。当帧包括静态动作时,编码设备使用较高的限度,当帧包括高速动作内容时,使用较小的限度,这是因为事实上人的视觉系统(HVS)对高速动作场景中帧的质量的敏感度较低,而对静态场景中帧的质量的敏感度较高。要注意的是,利用7^(")-rW("-l)对mvf")进行标准化以便计算容忍度。z()的一个例子是z(),DA(n-l)。举个例子,如果在连续的帧之间允许"dB的性能降级,贝^=,1()-1。这个例子还可以通过使用较大的^值进一步扩展到高速动作内容的情况(比如针对较短观测窗口(小的ry(")-7^("-1))中的高wvf""。图6原理性地示出了一个装置(比如图1中所示的UEA或UEB)的示例性的硬件实现,该装置以参考序号60标识。装置60可以各种形式来构造和合并,比如作为无线电话、陆地线路数字电话设备、膝上型计算机或个人数字助理(PDA)等等。需要强调的是,本发明中的技术并不是必须限制为用于无线环境中。装置60包括将多个电路连接在一起的中央数据总线62。这些电路包括:CPU(中央处理单元)或控制器64、接收电路66、发送电路68和存储器单元70。如果装置60是无线设备的一部分,那么接收和发送电路66和68可以与RF(射频)电路连接,但是为了简单和便于解释说明,该RF电路没有在图6中示出。接收电路66在通过数据总线62发送信号之前,先对接收到的信号进行处理和缓存。在另一方面,发送电路68在从设备60发送数据之前,先对来自数据总线62的数据进行处理和缓存。CPU/控制器64执行数据总线62的数据管理功能,还执行一般的数据处理功能(包括执行存储器单元60的指令内容)。或者,代替如图6中所示的作为单独的组件,发送电路68和接收电路66可以是CPU/控制器64的组成部分。存储器单元70包括概括性地由参考序号72标识的一组指令。在这个例子中,除了其它以外,所述指令包括-源端特性估计器12、速率决定模块14、下行链路性质/状况的接收机16、上行链路性质/状况的测量器18和编码器20。在图4中己经描述并概括性地示出了模块12、14、16、18和20的各种功能。在这个例子中,存储器单元70可以包括随机访问存储器(RAM)电路。示例性的模块12、14、16、18和20可以包括软件例程和/或数据集。存储器单元70可以联系到另一个存储器电路(未示出),该存储器电路可以是易失性的,也可以是非易失性的。作为替换,存储器单元50可以是由其它类型的电路构成的,比如EEPROM(电可擦除可编程只读存储器)、EPROM(电可编程只读存储器)、ROM(只读存储器)、ASIC(专用集成电路)、磁盘、光盘以及其它本领域所公知的电路。还应该注意,图4和图5中描述和概括性示出的结构和技术也可以编码成计算机可读指令,其中,该指令装载在本领域已知的任何计算机可读介质上。在本说明书中,术语"计算机可读介质"指的是参与向任意处理器(比如图6中所示且描述的CPU/控制器64)提供指令以用于执行的任何介质。这样的介质可以是存储器类型的介质,并且可以采用如前所述的非易失性或易失性存储介质的形式(例如图6中对存储器单元70的描述)。这样的介质也可以是传输类型的介质,包括同轴电缆、铜线、光缆和携带声波、电磁波或光波的空中接口,其中,所述的声波、电磁波或光波能够携带机器或计算机可读信号。在本发明中,除非特别指明,携带信号的波都统称为介质波,其包括光波、电磁波和声波。计算机程序产品指的是包括计算机可读介质在内的实际的物理介质,其可用于出售或分发执行本发明功能的软件指令。计算机程序产品可以包括封装材料。编码器20可以调整源IDR以便于针对上行链路信道、下行链路信道或这两者进行信道吞吐量匹配。本发明的技术使编码器能利用可变的帧编码,并允许在受限的情况下(比如当吞吐量为0时)对帧进行冻结,这种受限的情况是在拥塞的小区中进行切换时经常出现的。不需要针对具体调度器的信息来实现本发明的技术。也就是说,所描述的技术旨在能与任何专有的调度器一起工作。可以将上面的公开内容中的至少一些特征总结如下。本速率决定算法基于(a)观测到的上行链路吞吐量的函数、(b)观测到的下行链路吞吐量的函数、(c)与先前已编码并传输的数据相比输入源的变化、(d)期望的压縮质量和(e)规定的ADR。所提出的解决方案执行可变帧速率编码,其中,输出帧速率是下列参数的函数(a)观测到的上行链路吞吐量、(b)观测到的下行链路吞吐量、(c)与先前已编码并传输的数据相比输入源的变化和(d)期望的压縮质量。提出的解决方案根据下列参数来控制编码质量(a)先前已编码帧的质量、(b)先前已编码帧和当前时间之间的时间距离和(c)源端特性的变化。所提出的解决方案用两个单独的令牌桶来跟踪上行链路和下行链路信道特性。使用各自的吞吐量的、最大令牌桶尺寸的和当前桶的占用情况的函数来更新每个令牌桶。还用最小平均数据速率的和在载入条件和切换期间的切换持续时间的函数,向下行链路令牌桶中漏入令牌。图7解释说明了分别针对24、28、36和44个用户的不同系统的四个帧速率柱状图。图7说明用户数量越多,本发明描述的速率控制算法跳过的帧越多,这证明了在用户体验和系统中用户数量之间做出合理的折衷的能力。确定此类网络的系统级性能需要事件驱动的、能够仿真多用户和多小区场景的动态系统仿真工具,以便准确地对反馈环路、信号延迟、站址选择、协议执行、随机分组到达以及多径衰落环中的移动性等等进行建模。为了进行仿真,可以遵照下面所总结的假设a)每秒内的时隙是1500,每秒的码片是3840000;b)基站数是19,每个基站的扇区数是3,在中心的小区中每个扇区的用户数在24到52之间;c)小区半径是1620米;d)天线模型是2,信道模型是步行A(PedestrianA)(3km/h);e)采用比例公平(proportionalfair)调度器。为了与本发明的技术保持一致,对有线到无线(land-to-mobile)的呼叫场景进行了仿真,以便研究系统负载对节点B中的调度器的影响。该仿真是通过以有规律的间隔向上行链路令牌桶LBuA添加恒定尺寸的令牌并对有线上行链路的CBR信道进行仿真来完成的。对于64kbps信道的特定QoS,本仿真在每100ms生成800个字节。通常而言,需要数据业务模型来确定无线链路算法/设计方案和终端用户应用之间的交互关系。TCP/IP上的网页浏览和其它应用以尽力而为模型为特征。它们是具有可变尺寸IP分组的闭环业务模型,其中,可变尺寸IP分组是依赖于无线链路的质量和无线网络的分组调度器的策略的。实时模型将对分组丢失的要求和延迟保证结合考虑,以测试空中接口的性能。可以通过阻塞概率和为尽力而为业务所保留的剩余容量来测量空中接口满足这些保证的能力。为了克服建立视频业务模型的困难,在上述事件驱动、多用户、多小区的仿真平台中实现对H,263+视频编解码器的仿真。这一仿真中所用的具体设置如下3)采用的视频编解码器是有丁,8速率控制的&263+(附录I、J、K、T),其中,对其进行了修改以使用所提出的反馈设计和根据来自接收机的分组丢失反馈的自适应内部宏块刷新;b)目标比特速率设为64kbps,编码未采用GOP结构;c)输入源是标称帧速率为10^5S的福曼(Foreman)QCIF序列,呼叫持续时间是30秒;d)采用虚拟信道来携带从UEB到UEA的反馈。,为了对及时反馈的好处进行评价,该虚拟信道可以以设定值将反馈信息进行延迟。平均峰值信噪比(PSNR)与所感知的恢复后的视频序列的质量不是非常相关。这在易发生错误的环境中尤其严重,在这种环境中由于视频编码的前涉(predictive)性,单个分组错误通常造成多个视频帧中的PSNR降低(错误传播)。因此,"客观地"确定分组丢失对解码后的视频质量的影响是很有好处的。为了确定这种错误传播的影响,可以使用一种新的客观的度量标准"百分比性能降级视频持续时间(percentagedegradedvideoduration(pDVD))"。pDVD指示了由于分组丢失(也就是说,与已编码帧的无损PSNR相比,该帧的PSNR是明显减低了的)造成视频序列性能变差的持续时间的百分比。pDVD可以定义为pWD(x)=1((P'SW《—PSiV《)>/Ar(8)其中,PSNRen和PSNRen分别是在无错误和有错误条件下的第n个帧的PSNR,如果y是真,贝Ul(y)为l,否则为0,x是预定的门限值,N是视频序列中的帧数。PSVT服务的一个目标应该是将pDVD最小化,同时将PSNR最大化。为了证明本速率自适应算法的优点,可以将记录的采用反馈的分组延迟的CDF和不采用反馈的CDF进行比较。图8示出了这一比较。当没有使用反馈时,多于40%的分组有2秒以上的端到端延迟。而当使用反馈时,分别对应于反馈时间常数为1000、500和200ms的情况,90%的分组的延迟在1.8、1.25和0.18秒左右。分组延迟的明显降低清楚地解释说明了本发明的技术的优点。此外,从图8可以清楚地看到通过使用更快的反馈能够改进性能。比如,当反馈常数是200ms时,最大的分组延迟在350ms左右。在图8中,通过以有规律的间隔向下行链路令牌桶LBdB添加恒定尺寸的令牌,来仿真没有反馈的情况。随着反馈时间的降低,观测到的分组延迟也会降低,这表明了通过及时反馈来控制编码器速率以对信道状况进行匹配的必要性。针对64kbps信道的特定QoS,每2ms将生成16个字节。随着更多的用户进入小区,如前面提到的,每个用户的可用带宽在减少。为了在减少后的可用带宽上支持合理的视频质量,编码器不得不跳过一些帧的编码。图7示出了随着系统中用户数量的增加,已编码帧的速率的变化。图7中的四个图表指示了针对24、28、36和44个用户的帧速率柱状图。可以发现,所描述的系统通过随着更多用户进入小区来降低平均的帧速率展示了在用户体验和系统中用户数量之间做出合理的折衷的能力。图9解释说明了当小区中有不同数量的用户时分组延迟的CDF。在小区中有24个用户的情况中,可以发现最大的分组延迟是170ms左右,分组CDF的百分之九十的点在100ms左右。通过确保将端到端延迟保持在较低的值,可以期望视频延迟对会话应用中的用户体验有最小的影响。即使当用户数量增加时,我们也希望分组延迟值不要增加得太明显以至于使服务无法使用。从图9可以看出即使有44个用户,分组CDF的百分之九十的点仍在350ms左右,这还是会话服务可接受的值。值得注意的,在图9中,3GPP规定了将位于340ms的百分之九十五的点作为视频服务的端到端传递延迟。下面表1中示出了两个典型用户的PSNR和pDVD的客观度量标准。用于将一个帧判断为质量降低的帧的pDVD门限值x(见公式8)为2dB。可以看出在反馈时间常数为200ms时,所有分组都能被按时接收到以进行回放(由pDVD值为0指示)。要注意的是,相比于"没有反馈"的情况,无损PSNR值在反馈延迟为200ms的情况中更低。这是因为当信道状况变差时,编码器减少了分配的比特。但是,这种方案的优点通过比较有损PSNR值得到了清楚的证明。这说明了当发送方可以对信道状况做出及时反馈时,编码器能够调整其传输以保证分组不会被过分延迟,因此能够明显改善接收机处的视频质量。可以从下面的表1看到所描述的技术的优点,该表显示在没有及时反馈或根本没采用反馈时,用户消耗了更多的系统资源(比如,总的比特率)。但是,这些额外的资源并没有转化为更好的用户体验,正如接收机处较高的pDVD和较低的PSNR所证明的。表l<table>tableseeoriginaldocumentpage41</column></row><table>概括地说,表1提供了两个用户针对不同反馈时间常数所达到的客观度量标准。可以看出,反馈时间常数为200ms时,所有分组都能被按时接收到以用于回放。还可以看出在及时的反馈不可用时,额外使用系统资源(比如,增加的比特率)并不能转化为改进用户体验。下面的讨论提出了一些用于从UE-B向UE-A发送反馈信息的可选方案。传统的方法(比如RTCP和RTCPAPP分组)可以用于反馈观测到的吞吐量信息。另外,诸如RTP报头扩展的方法也可用于有效地传送反馈信息。很多其它的设计选择也是可能的,而上面的例子能解释说明各种反馈信道设计选择的优点和缺点。对于所有这些可选方案,现有的实现方案可以忽略反馈信息并提供后向兼容性。如果假设最大比特率为128kbps(EL263简档(Profile)3等级(Level)45、MPEG-4精简简档等级lb、H.264基线简档等级lb),两个八位字节字段已经足够以字节的形式传送所观测到的吞吐量。如果每200ms发送一次反馈信息,则该反馈消息需要80bps的带宽。根据所用的反馈机制,可能还有额外的信令开销。对于传统的RTCP和TRCPAPP分组而言,这一信令开销可能高达每个消息90—120个八位字节,导致带宽高达4800bps。采用非复合式RTCPAPP分组,最小的APP分组尺寸是16字节,其中包括2字节的观测到的吞吐量信息。这造成需要640bps的带宽。利用RTP报头扩展,8个字节就足够在RTP负载流中传递反馈信息,因此带宽为320bps。需要注意的是,只能针对双向的服务(比如PSVT)将反馈信息合并到RTP流中。在一些分组交换服务中,有可能关掉RTCP。此外,当用户处于小区边缘的情况时,RTP可能比RTCP更可靠。这表明在需要快速反馈时应该使用基于非RTCP的机制。通常,RTP/AVP简档中的RTCP消息每5秒发送一次。采用RTP/AVPF简档,则能更频繁地传递RTCP消息。如果假设将典型的RTP带宽的5%用于RTCP,那么在以及时的方式发送反馈并实现本发明所述的效果时,RTP/AVPF简档还是受到的RTP/AVP限制。对此的解决方案是将RTP/AVPF简档和非复合式RTCPAPP分组一起使用。由于非复合式RTCPAPP分组的开销较小,所以有可能满足向发送方及时反馈的要求。值得注意的是,通过使用RTP报头扩展,能及时传递反馈信息,并且这种方法比基于RTCP的方法更可靠。本发明所描述的速率自适应技术在对视频源进行编码时考虑:(i)分组丢失、(ii)变化的信道吞吐量和(iii)视频源端特性。为了说明所描述的技术的好处,用标准化组织中所采用的实际的仿真条件来提供系统级的仿真结果。本发明己经表明了通过在编码器处考虑信道带宽因素,能够显著降低无线网络中视频分组的传输延迟,进而保证了在PSVT服务中改善用户体验。控制延迟的另一个好处是降低观测到的视频分组抖动,进而能够改善音频/视频的同步。此外,我们提出的方法能够通过在维持稳定的视频帧质量的同时隐式地降低帧编码速率,在更多PSVT用户进入系统时将性能降级控制在合理的范围内。图10的示例性框图示出了能够实现本发明中各种技术的示例性系统。在图10中,接入终端(AT)1002和AT1004通过网络1006相互通信。网络1006包括接入点(AP)1402和1404。AP1402通过上行链路1007从AT1002接收数据,AP1404通过下行链路1008从网络1006向AT1004发送数据。AP1402和1404在网络1006中通信地相耦合(可能通过很多路由器和交换机)。虽然图10中只示出了两个AT1002和1004,但是本发明的技术可以扩展到支持任何数量的AT的多媒体VT。示出的AT1002的组件用于信息捕获、编码和发送,示出的AT1004的组件用于信息接收、解码和显示。但是,AT1002和1004可以包括互补的组件以支持双向VT通信。也就是说,AT1002可以包括示出的设备1004的所有组件,反之亦然。AT1002和1004可以包括无线通信设备、VT手机、个人数字助理(PDA)、膝上型或桌上型计算机或包括VT功能的任何类型的设备。在一些情况中,AT1002和1004之一可以包括非无线的陆地线路终端。AT1002包括用于确定上行链路吞吐量的模块1110、用于确定下行链路吞吐量的模块1112、用于确定预算的模块1114、用于编码的模块1116、用于发送的模块1118、用于接收的模块1120和用于捕获的模块1121。但是,所有这些模块对于实现本发明的一些方面可能是不需要的。不同的模块1110、1112、1114、1116、1118、1120和1121可以通过总线1115或各种直接或非直接的接口通信地相耦合。用于确定上行链路吞吐量的模块1110和用于确定下行链路吞吐量的模块1112可以包括如本发明所描述的令牌桶。用于确定上行链路吞吐量的模块1110监测上行链路1007的吞吐量(比如,通过根据上行链路1007上传输的分组的尺寸来添加令牌的方式)。用于确定上行链路吞吐量的模块1110可以在两次成功编码操作的观测窗口上执行求和操作,以合计该观测窗口期间上行链路1007上的吞吐量。用于确定下行链路吞吐量的模块1112监测下行链路1008上的吞吐量(比如,通过根据来自AT1004的反馈得出的在下行链路1008上传输的分组的尺寸来添加令牌的方式)。用于确定下行链路吞吐量1112的模块也可以在两次成功编码操作的观测窗口上执行求和操作,以合计该观测窗口期间下行链路1008上的吞吐量。这里再次指出,可以通过本发明所描述的方式从AT1004反馈该下行链路信息。用于确定预算的模块1114计算在任意给定时刻对给定视频单元(比如视频帧)进行编码所需要的数据量。用于确定预算的模块1114可以根据当前视频帧相对于先前已编码的帧之间的差值来计算该数据量。随着不进行帧编码的时间的增加,对帧进行编码所需要的数据量通常会因为从先前已编码的帧到当前场景的时间距离的增加(视觉差也越大)而增加。用于编码的模块1116可以包括音频-视频CODEC。用于编码的模块1116对音频信息无缝地编码以便传输到AT1004,但是可以使用本发明的技术,根据测量出的上行链路1007和下行链路1008的吞吐量选择性地对视频信息进行编码。用于发送的模块1118可以包括无线或有线的发射机单元,用于接收的模块1120可以包括无线或有线的接收机单元。在一些情况中,用于发送的模块1118和用于接收的模块1120可以包括集成的收发机。用于捕获的模块1121可以包括一个或多个用于捕获VT的用户输入的单元。用于捕获的单元1121可以包括一个或多个音频捕获单元(比如用于捕获音频信息的麦克风)和一个或多个视频捕获单元(比如用于捕获视频信息的摄像头单元)。网络1006可以包括任何网络结构,在一些例子中其可以包括因特网。网络1006还可以包括很多种的公共或私有网络中的任何种类。网络1006可以包括用于与AT1002通信和用于与AT1004通信的接入节点。AT1004包括用于确定下行链路吞吐量的模块1122、用于发送的模块1124、用于接收的模块1126、用于编码的模块1128和用于输出的模块1130。用于确定下行链路吞吐量的模块1122可以包括如本发明所描述的令牌桶。用于确定下行链路吞吐量的模块1122监测下行链路1008的吞吐量,比如,通过根据在下行链路1008上接收到的分组尺寸来添加令牌的方式。用于发送的模块1118可以包括无线或有线的发射机单元,用于接收的模块1120可以包括有线或无线的接收机单元。在一些情况中,用于发送的模块1118和用于接收的模块1120可以包括集成的收发机。用于输出的模块1130可以包括一个或多个输出单元,这些输出单元用于向用户输出多媒体数据。举个例子,用于输出的模块1130可以包括一个或多个用于输出音频的扬声器和一个或多个用于输出视频的显示器。依照本发明,用于确定上行链路吞吐量的模块1110确定与从AT1002通过上行链路1007到网络1006的第一接入节点的多媒体数据传输关联的第一吞吐量水平。用于确定下行链路吞吐量的模块1112根据从AT1004到AT1002的反馈确定与从网络1006的第二接入节点通过下行链路1008到AT1004的多媒体数据传输关联的第二吞吐量水平。用于确定预算的模块1114确定与多媒体数据的视频单元的传输关联的预算。用于编码的模块1116根据预算及第一吞吐量水平和第二吞吐量水平对视频单元进行编码。如果用于编码的模块1116对视频单元进行编码,则用于发送的模块1118从AT1004通过网络1006向AT1002发送多媒体数据的视频单元。如上所述,模块1112和1114可以包括在AT1002处的两个不同的令牌桶,其中,第一个令牌桶存储用于指示第一吞吐量水平的信息,第二令牌桶存储用于指示第二吞吐量水平的信息。用于编码的模块1116以是所述预算以及所述第一令牌桶和第二令牌桶的占用情况的函数的尺寸,对视频单元进行编码。更新第一个令牌桶以便反映在AT1002处测量到的第一吞吐量水平,更新第二个令牌桶以反映在AT1004处测量到的第二吞吐量水平(比如,通过用于确定下行链路吞吐量1122的模块)。对令牌桶的更新可以根据AT1002和1004之间针对VT会话而协商好的服务质量(QoS)、第一令牌桶和第二令牌桶的当前缓冲器占用情况和经过的时间来进行。模块1110和1112可以在用于编码的模块1116对多媒体数据的视频单元编码时,降低第一令牌桶和第二令牌桶的容量。如图所示,用于编码的模块1116对与视频帧关联的音频信息进行编码,用于发送的模块1118将编码后的音频信息从AT1002通过网络1006发送到AT1004,而无须考虑该视频帧是否已经编码。以这种方式,多媒体VT可以为音频信息提供更好的保证和QoS,并且在带宽有限时(即上行链路1007或下行链路1008没有足够的吞吐量用于视频但是有足够的吞吐量用于音频)可使音频信息的优先级高于视频帧。如果预算大于第一吞吐量水平或第二吞吐量水平,则用于编码的模块1116可以跳过对多媒体数据的视频单元的编码。在这样的情况中,一旦跳过多媒体数据的视频单元的编码,模块1110可以根据在AT1002处的测量结果更新第一吞吐量水平,模块1112可以根据在AT1004处的要反馈给AT1002的测量结果更新第二吞吐量水平。用于确定预算的模块1004重新确定与多媒体数据的后续视频单元的传输关联的预算,如果重新确定出的预算小于更新后的第一吞吐量水平或第二吞吐量水平,则用于编码的模块1116对多媒体数据的后续视频单元进行编码。这里再次指出,多媒体数据的视频单元可以包括视频帧。AT1002和1004可以规定在会话期间用于多媒体数据的视频帧传输的帧速率,并且在跳过对多媒体数据的给定视频帧的编码后,所述的更新操作、重新确定操作和对后续视频帧的编码操作可以发生在由会话的帧速率定义的下一个周期之前。以这种方式,如果跳过一帧,用于编码的模块1116不需要一直等到下一个排定的帧,而是如果为上行链路和下行链路测量的更新后的吞吐量与重新确定的预算相符,则可以在下一个排定的帧之前进行帧编码。虽然图10中只示出了两个AT(1002和1004),但是,本发明的技术可以扩展到VT会议中任何数量的AT。对于每个AT而言,发送方设备维护一个令牌桶以根据反馈确定给定AT的吞吐量。因此,本发明预期要根据从第三设备到第一设备(比如,AT1002)的反馈,确定与从网络的第三接入节点到第三设备(比图,第三AT)的多媒体数据传输关联的第三吞吐量水平,并且当预算小于第一、第二和第三吞吐量水平时,对多媒体数据的视频单元进行编码。在这种情况中,AT1002要维护至少三个令牌桶,其中,第一个令牌桶存储用于指示第一吞吐量水平的信息,第二个令牌桶存储用于指示第二吞吐量水平的信息,第三令牌桶存储用于指示第三吞吐量水平的信息。在接收机一侧,装置1004的用于接收的模块1126接收从AT1002发送到1004的第一多媒体数据,其中,该第一多媒体数据从网络1006的网络节点通过下行链路1008传输到AT1004。用于确定吞吐量的模块1122在观测窗口中测量下行链路的吞吐量,用于发送的模块1124将指示在观测窗口中测量出的下行链路吞吐量水平的信息从第二设备发送到第一个设备。该指示了吞吐量水平的反馈传输信息在图IO中由虚线示出。上面讨论了用于将这一反馈信息从AT1004传输到1002的一些技术。但是,在一个例子中,用于发送的模块1124在捕获的、编码后的并从AT1004传输到AT1002的多媒体内容中搭载指示吞吐量水平的信息。在这种情况中,用于发送的模块1124可以从AT1004向AT1002发送第二多媒体数据,并且在该第二多媒体数据上搭载用于指示吞吐量水平的信息。图11-13是与本发明的技术一致的流程图。如图11中所示,AT1002的模块1110确定上行链路1007的第一吞吐量水平(1501)。为此,模块1110在观测窗口内测量与上行链路1007上发送的分组关联的数据量(比如,通过计算在该观测窗口期间发送的所有数据的和)。因此,测量出的吞吐量是数据的度量指标(比如,数据的累计)。在一个例子中,观测窗口可以由两个连续的己编码帧之间的时间量构成。在这种情况中,上行链路1007的吞吐量定义了该观测窗口中发送的数据量。模块1112确定下行链路1008的第二吞吐量水平(1502)(比如,根据从AT1004接收到的反馈)。在这种情况中,AT1004可以通过累计观测窗口中的数据来测量下行链路上的吞吐量,并将测量结果反馈给AT1002。模块1114确定要编码的帧的比特预算(1503)(比如,通过将当前场景与先前已编码的帧相比较,以及定义相对于该先前帧,对当前场景进行编码需要的比特数)。用于编码的模块1116根据预算以及第一吞吐量水平和第二吞吐量水平,对当前的帧(即,当前场景的帧)进行编码。举个例子,用于编码的模块1116可以对当前的帧进行编码,以使该当前的帧的尺寸是所述预算以及所述第一吞吐量水平和第二吞吐量水平的函数。如果需要,可以用较少的细节对该帧进行编码,这样该编码后的帧使用的数据小于预算,因此就小于上行链路和下行链路上的吞吐量的最小值。或者,如果预算小于第一吞吐量水平和第二吞吐量水平,则用于编码的模块1116可以依照该预算对当前的帧进行编码。在上述后面这种情况中,如果预算大于第一吞吐量水平或第二吞吐量水平,则用于编码的模块不对帧进行编码。如图12中所示,AT1002的模块1110确定上行链路1007的第一吞吐量水平(2001)。模块1112确定下行链路1008的第二吞吐量水平(2002)(比如,根据从AT1004接收到的反馈)。模块1114确定要编码的帧的比特预算(2003)。在图12中,如果比特预算小于第一吞吐量水平和第二吞吐量水平的最小值(2004的"是"分支),那么模块1116对帧进行编码(2005)且模块1118发送帧(2006)。然后,模块1116等待会话的下一个帧周期(2007)。该帧周期是在AT1002和1004之间针对多媒体电话会话协商好的。环路2011独立于环路2012。这就意味着,图12的算法会根据协商好的帧速率,对实际的帧速率进行调整。在一些情况中,环路2011用的时间比协商好的帧周期更长,在这种情况中,图12的算法对帧速率进行调整以便适应上行链路和下行链路上的可用吞吐量。在其它情况中,环路2011为帧添加一个很短的延迟,该延迟是在与协商好的帧速率相关的时间内的。在上述后面这种情况中,模块1116可以对帧进行编码(2005),模块1118用与期望的帧相关的较小的延迟来发送帧(2006)。举个例子,协商好的帧速率是每秒10帧,使得每100毫秒对期望的帧进行一次编码。如果吞吐量不足(2004中的"否"分支),环路2011每2毫秒继续一次。在这种情况中,一旦吞吐量足够(2004的"是"分支),帧就得以编码(2005)和发送(2006)。在这种情况中,发送的帧在上一个发送的帧之后(100+2N)毫秒,其中,N代表在发现吞吐量足够之前环路2011的循环次数。如图13中所示,AT1004的模块1126通过下行链路1008接收多媒体数据(3001)。模块1122测量下行链路1008的吞吐量(3002)。模块1124将下行链路1008的吞吐量的测量结果作为反馈发送给AT1002(3003)。以这种方式,AT1004测量下行链路吞吐量并将这一信息反馈给AT1002,以用于确定对多媒体电话会话的视频信息是否需要进行自适应操作以及需要采取何种程度的自适应操作(如本发明中所描述的)。图14和15是用于实现本发明的各方面的装置的框图。如上文所述,装置3000和3100可以包括AT或者包括一个或多个电路(比如芯片组),其构成了AT的一部分以便向这些AT提供本发明所描述的功能。如图14中所示,装置3000包括用于确定上行链路吞吐量的模块3110、用于确定下行链路吞吐量的模块3112、用于确定预算的模块3114和用于编码的模块3116。用于确定上行链路吞吐量的模块3110确定与从装置3000通过上行链路到网络的第一个接入节点的多媒体数据传输关联的第一吞吐量水平。用于确定下行链路吞吐量的模块3112确定与通过下行链路来自网络的第二个接入节点的多媒体数据传输关联的第二吞吐量水平(比如,根据来自接入终端的反馈)。用于确定预算的模块3114确定多媒体数据的视频单元传输相关的预算。用于编码的模块1116根据预算以及第一吞吐量水平和第二吞吐量水平对多媒体数据的视频单元进行编码。如图15中所示,装置3100包括:用于确定下行链路吞吐量的模块3122、用于发送的模块3124和用于接收的模块3126。用于接收的模块3126通过下行链路接收第一多媒体数据。用于确定下行链路吞吐量的模块3122包括吞吐量测量模块,用于在观测窗口中测量下行链路上来自网络的吞吐量。用于发送的模块3124包括发射机模块,用于发送指示了在观测窗口中测量出的下行链路上来自网络的吞吐量水平的信息。本发明中已经描述了很多技术和示例。本发明中所描述的一种或多种技术可以在硬件、软件、固件或它们的结合中实现。任何描述为模块或组件的特性可以一起实现在集成的逻辑设备中或分别作为分立的但相互协作的逻辑设备。如果在软件中实现,这些技术至少部分地由包括指令的计算机可读介质来实现,这些指令执行时能执行上述的一种或多种方法。该计算机可读介质可以构成计算机程序产品的一部分,其包括封装材料。该计算机可读介质包括随机访问存储器(RAM)(比如同步动态随机访问存储器(SDRAM))、只读存储器(ROM)、非易失性随机访问存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、FLASH存储器、磁的或光的数据存储介质等等。另外,或作为替换,这些技术可以至少部分由计算机可读通信介质来实现,该介质以指令或数据结构的形式携带或传输代码,并且可以被计算机访问、读取和/或执行。代码可由一个或多个处理器执行,比如一个或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它等价的集成的或分立的逻辑电路。因此,如本发明中所用的术语"处理器",可以指单独一个处理器或多个处理器,其包括任何前述的结构或任何其它适用于实现本发明所描述的技术的结构。另外,在一些方面,本发明所描述的功能可以在用于执行本发明所描述的技术的专用软件模块或硬件模块中提供。结合本发明公开的各个方面所描述的方法和算法的步骤可以直接体现在硬件中、由处理器执行的软件模块中或二者的组合中。软件模块(比如,包括可执行的指令和相关数据)和其它数据可存储在存储介质中(比如,数据存储器),其例如RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动硬盘、CD-ROM或本领域己知的任何其它计算机可读存储介质的形式。示例性的存储介质可与机器相耦合,比如举个例子,计算机/处理器(这里为了简便称为"处理器"),该处理器可以从存储器介质读取信息(比如,代码),并向存储器介质写入信息。示例性的存储介质可以集成到处理器中。处理器和存储介质可以存在于ASIC中。ASIC可以存在于用户设备中。作为替换,处理器和存储介质也可以作为分立的组件存在于用户设备中。这里再次指出,在一些方面,任何适用的计算机程序产品可以包括计算机可读介质,该介质包括涉及本发明的一个或多个方面的(比如,可以由至少一个计算机执行的)代码。在一些方面,计算机程序产品可以包括封装材料。如果在硬件中实现,本发明的技术可以直接位于装置中(比如用于执行本发明所描述的技术的电路或设备)。相应地,本发明还预期涵盖用于执行本发明所描述的技术的一个或多个电路。在这种情况中,包括一个或多个电路的装置可以是AT的组件,其中,该AT设计用于提供本发明所描述的AT的功能。本发明已经描述了很多的方面。这些方面和其它方面都在所附的权利要求的范围内。权利要求1、一种用于多媒体数据传输的方法,所述方法包括确定与从第一接入终端到网络的多媒体数据传输关联的第一吞吐量水平;根据从第二接入终端通过所述网络到所述第一接入终端的反馈,确定与从所述网络到所述第二接入终端的多媒体数据传输关联的第二吞吐量水平;确定与所述多媒体数据的视频单元的传输关联的预算;根据所述预算以及所述第一吞吐量水平和第二吞吐量水平,对所述多媒体数据的视频单元进行编码。2、根据权利要求1所述的方法,其中,根据所述预算以及所述第一吞吐量水平和第二吞吐量水平对所述多媒体数据的视频单元进行编码包括以下步骤对所述视频单元进行编码,以使所述视频单元的尺寸是所述预算以及所述第一吞吐量水平和第二吞吐量水平的函数。3、根据权利要求1所述的方法,其中,根据所述预算以及所述第一吞吐量水平和第二吞吐量水平对所述多媒体数据的视频单元进行编码包括以下步骤如果所述预算小于所述第一吞吐量水平和第二吞吐量水平,则依照所述预算对所述视频单元进行编码。4、根据权利要求1所述的方法,其中,所述网络包括第一接入点,其向所述第一接入终端发送数据并从所述第一接入终端接收数据;第二接入点,其向所述第二接入终端发送数据并从所述第二接入终端接收数据,其中,所述第一接入点和第二接入点在所述网络中相互通信地賴合o5、根据权利要求1所述的方法,还包括从所述第一接入终端通过所述网络向所述第二接入终端发送编码后的所述多媒体数据的视频单元。6、根据权利要求1所述的方法,还包括在所述第一接入终端处维护至少两个令牌桶,其中,第一令牌桶存储用于指示所述第一吞吐量水平的信息,第二令牌桶存储用于指示所述第二吞吐量水平的信息;其中,对所述多媒体数据的视频单元进行编码包括以下步骤以是所述预算以及所述第一令牌桶和第二令牌桶的占用情况的函数的尺寸,对所述视频单元进行编码。7、根据权利要求6所述的方法,还包括更新所述第一令牌桶,以反映在所述第一接入终端处测量出的所述第一吞吐量水平;更新所述第二令牌桶,以反映在所述第二接入终端处测量出的所述第二吞吐量水平。8、根据权利要求7所述的方法,其中,根据所述第一接入终端和第二接入终端之间协商好的服务质量(QoS)、所述第一令牌桶和第二令牌桶的当前缓冲器占用情况以及经过的时间,更新所述第一令牌桶和第二令牌桶。9、根据权利要求6所述的方法,还包括在对所述多媒体数据的视频单元进行编码后,降低所述第一接入终端中的所述第一令牌桶和第二令牌桶中的至少一个令牌桶的容量。10、根据权利要求1所述的方法,其中,所述多媒体数据的视频单元包括视频帧。11、根据权利要求10所述的方法,还包括对与所述视频帧关联的音频信息进行编码;将编码后的音频信息从所述第一接入终端通过所述网络发送到所述第二接入终端,而无需考虑所述视频帧是否已经编码。12、根据权利要求1所述的方法,还包括如果所述预算大于所述第一吞吐量水平或所述第二吞吐量水平,则跳过对所述多媒体数据的视频单元的编码。13、根据权利要求12所述的方法,还包括在跳过对所述多媒体数据的视频单元的编码后执行以下步骤根据在所述第一接入终端处的测量结果更新所述第一吞吐量水平;根据在所述第二接入终端处的测量结果更新所述第二吞吐量水平;重新确定与多媒体数据的后续视频单元的传输关联的预算;如果重新确定出的预算小于更新后的第一吞吐量水平和第二吞吐量水平,则对所述多媒体数据的后续视频单元进行编码。14、根据权利要求13所述的方法,其中,所述多媒体数据的视频单元包括视频帧;其中,所述第一接入终端和第二接入终端规定了会话期间用于所述多媒体数据的视频帧传输的帧速率;其中,在跳过对多媒体数据的给定视频帧的编码后,所述的更新步骤、重新确定歩骤和对后续视频帧的编码步骤发生在由所述会话的帧速率定义的下个周期之前。15、根据权利要求1所述的方法,还包括根据从第三接入终端通过所述网络到所述第一接入终端的反馈,确定与从所述网络到所述第三接入终端的多媒体数据传输关联的第三吞吐量水平;当所述预算小于所述第一吞吐量水平、第二吞吐量水平和第三吞吐量水平时,对所述多媒体数据的视频单元进行编码。16、根据权利要求15所述的方法,还包括在所述第一接入终端处维护至少三个令牌桶,其中,第一令牌桶存储用于指示所述第一吞吐量水平的信息,第二令牌桶存储用于指示所述第二吞吐量水平的信息,第三令牌桶存储用于指示所述第三吞吐量水平的信息。17、一种用于多媒体数据传输的装置,所述装置包括第一令牌缓冲器模块,用于确定与从所述装置到网络的多媒体数据传输关联的第一吞吐量水平;第二令牌缓冲器模块,用于根据从接入终端到所述装置的反馈,确定与从所述网络到所述接入终端的多媒体数据传输关联的第二吞吐量水平;剩余量模块,用于确定与所述多媒体数据的视频单元的传输关联的预算;编码模块,用于根据所述预算以及所述第一吞吐量水平和第二吞吐量水平,对所述多媒体数据的视频单元进行编码。18、根据权利要求17所述的装置,其中,所述编码模块对所述视频单元进行编码,以使所述视频单元的尺寸是所述预算以及所述第一吞吐量水平和第二吞吐量水平的函数。19、根据权利要求17所述的装置,其中,如果所述预算小于所述第一级和第二吞吐量水平,则所述编码模块依照所述预算对所述视频单元进行编码。20、根据权利要求17所述的装置,其中,所述网络包括第一接入点,其向所述装置发送数据并从所述装置接收数据;第二接入点,其向所述接入终端发送数据并从所述接入终端接收数据,其中,所述第一接入点和第二接入点在所述网络中相互通信地耦合。21、根据权利要求17所述的装置,还包括-发射机模块,用于从所述装置通过所述网络向所述接入终端发送编码后的所述多媒体数据的视频单元。22、根据权利要求17所述的装置,其中第一令牌桶存储用于指示所述第一吞吐量水平的信息,第二令牌桶存储用于指示所述第二吞吐量水平的信息;其中,所述编码模块以是所述预算以及所述第一令牌桶和第二令牌桶的占用情况的函数的尺寸,对所述视频单元进行编码。23、根据权利要求22所述的装置,其中,所述装置用于更新所述第一令牌桶,以反映在所述装置处测量出的所述第一吞吐量水平;更新所述第二令牌桶,以反映在所述接入终端处测量出的所述第二吞吐量水平。24、根据权利要求23所述的装置,其中,根据所述装置和其它设备之间协商好的服务质量(QoS)、所述第一令牌桶和第二令牌桶的当前缓冲器占用情况以及经过的时间,更新所述第一令牌桶和第二令牌桶。25、根据权利要求23所述的装置,其中在对所述多媒体数据的视频单元进行编码后,降低所述装置中的所述第一令牌桶和第二令牌桶中的至少一个令牌桶的容量。26、根据权利要求17所述的装置,其中,所述装置包括一个或多个集成电路。27、根据权利要求17所述的装置,其中,所述多媒体数据的视频单元包括视频帧。28、根据权利要求27所述的装置,其中,所述编码模块对与所述视频帧关联的音频信息进行编码;发射机将编码后的音频信息从所述装置通过所述网络发送到所述接入终端,而无需考虑所述视频帧是否已经编码。29、根据权利要求17所述的装置,其中,所述编码模块如果所述预算大于所述第一吞吐量水平或所述第二吞吐量水平,则跳过对所述多媒体数据的视频单元的编码。30、根据权利要求29所述的装置,其中,在跳过对所述多媒体数据的视频单元的编码后-所述第一令牌桶根据在所述装置处的测量结果更新所述第一吞吐量水平;所述第二令牌桶根据在所述接入终端处的测量结果更新所述第二吞吐量水平;所述剩余量模块重新确定与多媒体数据的后续视频单元的传输关联的预算;如果重新确定出的预算小于更新后的第一吞吐量水平和第二吞吐量水平,则所述编码模块对所述多媒体数据的后续视频单元进行编码。31、根据权利要求30所述的装置其中,所述多媒体数据的视频单元包括视频帧;其中,所述装置和所述终端规定了会话期间用于所述多媒体数据的视频帧传输的帧速率;其中,在跳过对多媒体数据的给定视频帧的编码后,所述的更新操作、重新确定操作和对后续视频帧的编码操作发生在由所述会话的帧速率定义的下个周期之前。32、根据权利要求17所述的装置,还包括第三令牌缓冲器模块,用于根据从另一个接入终端到所述装置的反馈,确定与从所述网络到所述另一个接入终端的多媒体数据传输关联的第三吞吐量水平;当所述预算小于所述第一吞吐量水平、第二吞吐量水平和第三吞吐量水平时,所述编码模块对所述多媒体数据的视频单元进行编码。33、根据权利要求32所述的装置,其中,第一令牌桶存储用于指示所述第一吞吐量水平的信息,第二令牌桶存储用于指示所述第二吞吐量水平的信息,第三令牌桶存储用于指示所述第三吞吐量水平的信息。34、一种用于多媒体数据传输的装置,所述装置包括-用于确定与从所述装置到网络的多媒体数据传输关联的第一吞吐量水平的模块;用于根据从接入终端通过所述网络到所述装置的反馈来确定与从所述网络到所述接入终端的多媒体数据传输关联的第二吞吐量水平的模块;用于确定与所述多媒体数据的视频单元的传输关联的预算的模块;用于根据所述预算以及所述第一吞吐量水平和第二吞吐量水平对所述多媒体数据的视频单元进行编码的模块。35、根据权利要求34所述的装置,其中,用于根据所述预算以及所述第一吞吐量水平和第二吞吐量水平对所述多媒体数据的视频单元进行编码的模块包括用于对所述视频单元进行编码以使所述视频单元的尺寸是所述预算以及所述第一吞吐量水平和第二吞吐量水平的函数的模块。36、根据权利要求34所述的装置,其中,用于根据所述预算以及所述第一吞吐量水平和第二吞吐量水平对所述多媒体数据的视频单元进行编码的模块包括用于如果所述预算小于所述第一吞吐量水平和第二吞吐量水平则依照所述预算对所述视频单元进行编码的模块。37、根据权利要求34所述的装置,其中,所述网络包括第一接入点,其向所述装置发送数据并从所述装置接收数据;第二接入点,其向所述接入终端发送数据并从所述接入终端接收数据,其中,所述第一接入点和第二接入点在所述网络中相互通信地耦合。38、根据权利要求34所述的装置,还包括用于从所述装置通过所述网络向所述接入终端发送编码后的所述多媒体数据的视频单元的模块。39、根据权利要求34所述的装置,还包括用于在所述装置处维护至少两个令牌桶的模块,其中,第一令牌桶存储用于指示所述第一吞吐量水平的信息,第二令牌桶存储用于指示所述第二吞吐量水平的信息;其中,用于对所述多媒体数据的视频单元进行编码的模块包括用于对所述视频单元进行编码以使所述视频单元的尺寸是所述预算以及所述第一吞吐量水平和第二吞吐量水平的函数的模块。40、根据权利要求39所述的装置,还包括用于更新所述第一令牌桶以反映在所述装置处测量出的所述第一吞吐量水平的模块;用于更新所述第二令牌桶以反映在所述接入终端处测量出的所述第二吞吐量水平的模块。41、根据权利要求40所述的装置,其中,用于更新所述第一令牌桶和第二令牌桶的模块包括用于根据所述装置和所述接入终端之间协商好的服务质量(QoS)、当前所述第一令牌桶和第二令牌桶的当前缓冲器占用情况以及经过的时间进行更新的模块。42、根据权利要求34所述的装置,其中,所述装置包括一个或多个集成电路。43、根据权利要求39所述的装置,还包括用于在对所述多媒体数据的视频单元进行编码后降低所述装置中的所述第一令牌桶和第二令牌桶中的至少一个令牌桶的容量的模块。44、根据权利要求34所述的装置,其中,所述多媒体数据的视频单元包括视频帧。45、根据权利要求44所述的装置,还包括用于对与所述视频帧关联的音频信息进行编码的模块;用于将编码后的音频信息从所述装置通过所述网络发送到所述接入终端而无需考虑所述视频帧是否已经编码的模块。46、根据权利要求34所述的装置,还包括用于如果所述预算大于所述第一吞吐量水平或所述第二吞吐量水平则跳过对所述多媒体数据的视频单元的编码的模块。47、根据权利要求46所述的装置,还包括,在跳过对所述多媒体数据的视频单元的编码后用于根据在所述装置处的测量结果更新所述第一吞吐量水平的模块;用于根据在所述接入终端处的测量结果更新所述第二吞吐量水平的模块;用于重新确定与多媒体数据的后续视频单元的传输关联的预算的模块;用于如果重新确定出的预算小于更新后的第一吞吐量水平和第二吞吐量水平则对所述多媒体数据的后续视频单元进行编码的模块。48、根据权利要求47所述的装置,其中,所述多媒体数据的视频单元包括视频帧;其中,所述装置和所述终端规定了会话期间用于所述多媒体数据的视频帧传输的帧速率;其中,在跳过对多媒体数据的给定视频帧的编码后,所述的更新操作、重新确定操作和对后续视频帧的编码操作发生由所述会话的帧速率定义的下个周期之前。49、根据权利要求34所述的装置,还包括用于根据从另一个接入终端通过所述网络到所述装置的反馈来确定与从所述网络到所述另一个接入终端的多媒体数据传输关联的第三吞吐量水平的模块;用于当所述预算小于所述第一吞吐量水平、第二吞吐量水平和第三吞吐量水平时对所述多媒体数据的视频单元进行编码的模块。50、根据权利要求49所述的装置,还包括用于在所述装置处维护至少三个令牌桶的模块,其中,第一令牌桶存储用于指示所述第一吞吐量水平的信息,第二令牌桶存储用于指示所述第二吞吐量水平的信息,第三令牌桶存储用于指示所述第三吞吐量水平的信息。51、一种包括计算机可读介质的计算机程序产品,所述计算机可读介质包括可执行指令,所述可执行指令用于确定与从第一接入终端到网络的多媒体数据传输关联的第一吞吐量水平;根据从第二接入终端通过所述网络到所述第一接入终端的反馈,确定与从所述网络到所述第二接入终端的多媒体数据传输关联的第二吞吐量水平;确定与所述多媒体数据的视频单元的传输关联的预算;根据所述预算以及所述第一吞吐量水平和第二吞吐量水平,对所述多媒体数据的视频单元进行编码。52、一种接入终端(AT),包括天线,用于向网络发送无线传输并从网络接收无线传输;第一令牌缓冲器模块,用于确定与从所述AT到网络的多媒体数据传输关联的第一吞吐量水平;第二令牌缓冲器模块,用于根据来自另一个AT的反馈,确定与从所述网络到所述另一个AT的多媒体数据传输关联的第二吞吐量水平;剩余量模块,用于确定与所述多媒体数据的视频单元的传输关联的预算;编码模块,用于根据所述预算以及所述第一吞吐量水平和第二吞吐量水平,对所述多媒体数据的视频单元进行编码。53、一种用于多媒体数据传输的方法,所述包括接收从第一接入终端(AT)发送到第二AT的第一多媒体数据,其中,所述第一多媒体数据是从网络传输到所述第二AT的;在观测窗口中测量从所述网络到所述第二AT的吞吐量;从所述第二AT向所述第一AT发送信息,其中,该信息指示了在所述观测窗口中测量出的从所述网络到所述第二AT的吞吐量水平。54、根据权利要求53所述的方法,还包括从所述第二AT向所述第一AT发送第二多媒体数据;在所述第二多媒体数据中搭载所述指示吞吐量水平的信息。55、根据权利要求53所述的方法,其中,所述多媒体数据包括视频帧。56、根据权利要求53所述的方法,其中,所述多媒体数据包括音频帧。57、根据权利要求53所述的方法,还包括在接收步骤、测量步骤和发送步骤之前,在所述第一AT和第二AT之间建立多媒体电话会话。58、根据权利要求53所述的方法,其中,所述第一多媒体数据是通过下行链路从所述网络传输到所述第二AT的;其中,测量吞吐量包括以下步骤测量所述下行链路上的吞吐量。59、一种用于多媒体数据传输的装置,所述装置包括-接收机模块,用于接收从接入终端(AT)发送到所述装置的第一多媒体数据,其中,所述第一多媒体数据是从网络传输到所述装置的;吞吐量测量模块,用于在观测窗口中测量从所述网络到所述装置的吞吐量;发射机模块,用于从所述装置向所述AT发送信息,其中,该信息指示了在所述观测窗口中测量出的从所述网络到所述装置的吞吐量。60、根据权利要求59所述的装置,其中,所述发射机从所述装置向所述AT发送第二多媒体数据;在所述第二多媒体数据中搭载所述指示吞吐量水平的信息。61、根据权利要求59所述的装置,其中,所述多媒体数据包括视频帧。62、根据权利要求59所述的装置,其中,所述多媒体数据包括音频帧。63、根据权利要求59所述的装置,其中,所述装置包括一个或多个集成电路。64、根据权利要求59所述的装置,其中,所述第一多媒体数据是通过下行链路从所述网络传输到所述装置的;其中,所述吞吐量测量模块测量所述下行链路上的吞吐量。65、一种用于多媒体数据传输的装置,所述装置包括用于接收从接入终端(AT)发送到所述装置的第一多媒体数据的模块,其中,所述第一多媒体数据是从网络传输到所述装置的;用于在观测窗口中测量从所述网络到所述装置的吞吐量的模块;用于从所述装置向所述AT发送信息的模块,其中,该信息指示了在所述观测窗口中测量出的从所述网络到所述装置的吞吐量水平。66、根据权利要求65所述的装置,还包括用于从所述装置向所述AT发送第二多媒体数据的模块;用于在所述第二多媒体数据中搭载所述指示吞吐量水平的信息的模67、根据权利要求65所述的装置,其中,所述多媒体数据包括视频帧。68、根据权利要求65所述的装置,其中,所述多媒体数据包括音频帧。69、根据权利要求65所述的装置,还包括用于在所述第一AT和第二AT之间建立多媒体电话会话的模块。70、根据权利要求65所述的装置,其中,所述第一多媒体数据是通过下行链路从所述网络传输到所述第二AT的;其中,用于测量吞吐量的模块包括-用于测量所述下行链路上的吞吐量的模块。71、一种包括计算机可读介质的计算机程序产品,所述计算机可读介质包括可执行指令,所述可执行指令用于-接收从第一接入终端(AT)发送到第二AT的第一多媒体数据,其中,所述第一多媒体数据是从网络传输到所述第二AT的;在观测窗口中测量从所述网络到所述第二AT的吞吐量;从所述第二AT向所述第一AT发送信息,其中,该信息指示了在所述观测窗口中测量出的从所述网络到所述第二AT的吞吐量水平。72、一种接入终端(AT),包括天线,用于向网络发送无线传输并从网络接收无线传输;接收机模块,用于接收从另一个AT发送的第一多媒体数据,其中,所述第一多媒体数据是从所述另一个AT传输到所述网络并从所述网络传输到所述AT的;吞吐量测量模块,用于在观测窗口中测量从所述网络到所述AT的吞吐且里;发射机模块,用于从所述AT向所述另一个AT发送信息,其中,该信息指示了在所述观测窗口中测量出的从所述网络到所述AT的吞吐量水平。全文摘要本发明描述了有助于多媒体电话的技术。在一个例子中,一种用于多媒体数据传输的方法包括确定与从第一接入终端到网络的多媒体数据传输关联的第一吞吐量水平;根据从第二接入终端通过所述网络到所述第一接入终端的反馈,确定与从所述网络到所述第二接入终端的多媒体数据传输关联的第二吞吐量水平;确定与所述多媒体数据的视频单元的传输关联的预算;根据所述预算以及所述第一吞吐量水平和第二吞吐量水平,对所述多媒体数据的视频单元进行编码。文档编号H04L29/06GK101578842SQ200880002133公开日2009年11月11日申请日期2008年1月10日优先权日2007年1月10日发明者C·顺达拉曼,G·维杰,H·加鲁达德里,N·B·斯里尼瓦桑莫特,P·萨格东申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1