CN100375468C - 比特率控制方法及装置 - Google Patents

比特率控制方法及装置 Download PDF

Info

Publication number
CN100375468C
CN100375468C CNB038016664A CN03801666A CN100375468C CN 100375468 C CN100375468 C CN 100375468C CN B038016664 A CNB038016664 A CN B038016664A CN 03801666 A CN03801666 A CN 03801666A CN 100375468 C CN100375468 C CN 100375468C
Authority
CN
China
Prior art keywords
bit rate
mentioned
rate
probability
bit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB038016664A
Other languages
English (en)
Other versions
CN1596528A (zh
Inventor
伊藤博纪
仙田裕三
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of CN1596528A publication Critical patent/CN1596528A/zh
Application granted granted Critical
Publication of CN100375468C publication Critical patent/CN100375468C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2416Real-time traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/19Flow control; Congestion control at layers above the network layer
    • H04L47/193Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/25Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/38Flow control; Congestion control by adapting coding or compression rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Communication Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明涉及一种对应网络状态,根据预先确定的概率来决定是否变更比特率进行比特率控制的数据发送装置。通过确定能够使通信系统的全体终端的比特率的平均值为所期望的比特率的变更各终端的比特率的概率值,能够实现各终端的比特率变动较少的控制,且能够提高声音、图像等实时通信的品质。另外,还能够实现和TCP等其他控制方式之间的公平性。

Description

比特率控制方法及装置
技术领域
本发明涉及一种发送声音数据以及图像数据等实时通信量的技术,特别是其比特率控制方法及装置。
背景技术
众所周知,以前的公共电话网等所使用的电路交换方式,由于不管是否有要发送的信号都占用两个终端之间的通信线路,虽然很适合实时传送声音以及图像等,但很难提高网络的利用效率。另外,电路交换方式中,由于在终端间连接中要进行监视网络全体的利用率的呼叫控制,所以随着终端数的增加,会产生呼叫控制负荷增大这一问题。
另外,包交换方式由于不占用线路,和电路交换方式相比网络的利用效率更高,所以现在被广泛普及。特别是采用TCP/IP(Transmission ControlProtocol/Internet Protocol:传输控制协议/网间协议)的包交换方式中,不进行呼叫控制,在各个终端进行能够公平使用网络利用带宽的独立分散型的速率控制,所以不会产生如上所述的呼叫控制负荷增大这一问题。另外,TCP协议通过检测有没有丢包,在发生了丢包的情况下发出再发送请求,提高了通信的可靠性。
然而,在通过近年来越来越普及的采用IP协议的包交换方式进行声音·图像数据的实时通信中,采用TCP的速率控制并不适用。这是因为TCP(Transmission Control Protocol)协议中的包再发送对文件转发等数据通信来说,由于能够提高可靠性,因此是理想的,然而在声音、图像等的实时通信中却成为产生较大延迟的原因,另外由于发送比特率的剧烈变动还会引起音质、像质的劣化。
所以,在实时通信中,使用不进行速率控制的UDP(User DatagramProtocol:用户数据包协议)协议来代替TCP协议。但是,由于UDP协议中一方连续发送数据,所以当UDP的通信量的增大时会占用TCP的使用带宽,会产生与TCP之间的公平性这一新的问题。为解决这些问题而开发出来的RSVP(Resource reSerVation Protocol),是一种能够确保连接时的各终端的带宽的方式,使延迟以及丢包等问题得到了解决,然而和电路交换方式一样产生了网络效率问题。
因此,作为其他解决方式被考虑到的是,进行和TCP之间有公平性的速率控制的TCP友好控制。TCP友好控制分为下面的两种方式。
1)根据TCP速率控制法AIMD(Additive Increase/Multiple Decrease)的方式(参考文献1:Reza Rejaie,Mark Handley,Dehorah Estrin,“RAP:An End-to-end Rate-based Congestion Control Mechanism forRealtime Stream in the Internet,INFOCOM’99(1999.3))。
2)以TCP的总处理能力为目标比特率的方式(TFRC)(参考文献2:”TCP Friendly Rate Control(TFRC):Protocol Specification,”IETF Internet draft(draft-ietf-tsvwg-tfrc-03.txt))
AIMD方式中,在提高发送比特率的时候加上一定的值,降低发送比特率的时候就乘上一个比1小的值。通过适当设定该加值和乘值,能够保持和TCP之间的公平性,且能够抑制像TCP那样的发送比特率的大变动。
TCRF方式以如公式(1)所示的TCP的总处理能力作为目标比特率来进行控制。
R = 1 / ( RTT × ( 2 × L / 3 ) + TO × min ( 1,3 × ( 3 × L / 8 ) ) + L × ( 1 + 32 × L 2 ) ) - - - ( 1 )
这里RTT表示循环时间,TO表示超时时间,L表示丢包率。
但是,上述TCP友好控制的前提是发送比特率为连续值。由于实际上的声音·图像编码器的发送比特率为离散的,所以这种控制方式不能够直接适用于声音·图像编码器。
另外,也可以根据网络的繁忙状态来预先设定编码器的工作比特率这种方式。例如参考:
文献3:Jeong Wook Seo,et al.,“A study on the application of an AMRspeech codec to VoIP,”Proc.ICASSP2001 Vol.3,pp.1373-1376,以及
文献4:V.Abreu-Sernandez,et al.,“Adaptive multi-rate speech coder forVoIP transmission,”Electronics Letters,Vol.36,pp.1978-1980。
文献3中根据循环时间,文献4中根据丢包率,切换各自的编码器的比特率。然而,这些方式都没有顾及和TCP协议之间的公平性。
下面,对照图1,说明以前的声音·图像数据通信装置的一个例子。声音·图像数据通信装置一般如图1所示,由声音·图像编码部402,包发送部403,包接收部404,比特率控制部405以及声音·图像解码部406构成。声音·图像编码部402对输入的声音·图像401进行编码,将声音·图像比特流输出到包发送部403。包发送部403给被输入的声音·图像比特流加上IP/UDP/RTP头(参考文献5:“RTP:A Tranport Protocol for Real-TimeApplications,”IETF RFC0889),向网络发送。RTP头中包括声音·图像数据通信所必要的信息。
另外,包接收部404从网络接收声音·图像包,从接收到的包中抽取出声音·图像比特流并输出到声音·图像解码部406。声音·图像解码部406对来自包接收部的声音·图像比特流进行解码,输出输出声音·图像数据407。
另外,包接收部404,接收例如RTCP(Rea1-time Transport ControlProtocol)(文献5)包,从中抽取循环时间以及丢包率的相关信息,作为网络信息发送给比特率控制部405。比特率控制部405根据AIMD以及TRFC等来控制比特率。
在根据AIMD的比特率控制中,对应从包接收部404得到的丢包率,在没有发生丢包的情况下,给现在的发送比特率加上某个值,在发生了丢包的情况下,给现在的发送比特率乘上某个值,这样来计算目标比特率。
在根据TRFC的比特率控制中,通过从包接收部404得到的循环时间RTT和丢包率L,以及公式(1)来计算目标比特率。这里的循环时间和丢包率,为了提高测定精度,采用某个时间的平均值。
如上计算出来的目标比特率,不一定与声音·图像编码部402中所设定的多个离散的比特率中的一个相一致。因此,选择和计算出来的目标比特率最接近的离散比特率,声音·图像编码部402将该选择出来的离散比特率设定为发送比特率。
在上述文献3以及文献4中的比特率的控制中,根据从包接收部404得到的循环时间和丢包率,所设定的编码器的比特率被输出到声音·图像编码部402。然而如上所述,这些方式无法保证和TCP协议之间的公平性
声音·图像解码部406以从比特率控制部405得到的比特率来对声音、图像进行解码。
特开平5-260090号公报中,公布了采用离散的比特率的编码器的比特率控制方法的一个例子。该以前的例子中,图像编码部能够根据传送线路的繁忙状态来控制比特率,设定采用多级的比特率(128kbps,64kbps,10kbps等)的哪一个作为发送比特率。具体而言,如果传送线路中发生了繁忙,就设定为小一级的比特率,如果传送线路中没有发生繁忙,就设定为大一级比特率,这样来进行控制。
如上所述,根据AIMD以及TFRC的TCP友好控制,由于其前提是比特率为连续值,对编码器的比特率为离散值的声音·图像通信不能够直接适用。因此要选择和比特率控制所得到的目标值最接近的比特率。然而这样又产生了目标值和实际值之间的误差,该误差成了使设定的发送比特率频繁变动的主要原因,致使音质、像质恶化。
图2为说明采用以前的独立分散型比特率控制法时的比特率变动的时间图。例如,在和网络连接的各个终端中,是根据循环时间以及丢包率等网络信息计算出目标比特率,以与其最接近的离散比特率来设定编码器进行控制的。这里为了说明,假定在被设定为某个离散比特率R(n+1)时造成网络繁忙而目标比特率降低,当设定为更低的比特率R(n)时目标比特率上升。
这种情况下,如图2所示,如果目标比特率降低,则比特率控制部405将编码部402的比特率从R(n+1)降低到和现在的目标值最接近的比特率R(n)。该状态短暂持续后,目标比特率又会上升,并且与之相应地,会使编码部402的比特率再次上升到R(n+1)。这样反复变动发送比特率,发送接收声音、图像的终端之间的实时通信的品质被显著降低了。
另外,在文献3以及文献4中对应循环时间以及丢包率切换编码器的比特率的方式,以及特开平5-260090号公报中所公开的方式中,无法实现和TCP控制之间的公平性。
发明内容
因此,本发明的目的是提供一种即使在根据网络状态离散地变更实时通信的发送比特率情况下,也能够抑制实时通信的品质的恶化的比特率控制方法以及控制装置。
本发明的其他目的是提供一种能够抑制使实时通信的品质的恶化的发送比特率的变动,且能够实现和TCP等其他控制方式之间的公平性的比特率控制方法以及控制装置。
本发明中的比特率控制方法的特征在于,在控制实时通信发送时的发送比特率的时候,根据概率来确定发送比特率
采用该比特率控制方法,即使能够使用的比特率为离散的,通过预先设定各终端的发送比特率变更概率,使所有终端的发送比特率的平均值为期望比特率,使发送比特率的变动较少的控制成为可能。
也即,通过计算能够使网络全体的平均比特率为期望值的概率,并根据该概率来进行对各终端的发送比特率的变更控制,如图3所示,能够抑制发送比特率的变动。
另外,在对应网络的状态变更编码器的工作比特率时,如果根据上述计算出来的概率来变更发送比特率,能够不损坏和TCP等的控制方式之间的公平性而进行比特率控制。
本发明的比特率控制方法的特征在于,在通过网络发送实时通信时的比特率控制方法中,a)预备多个预先设定的离散比特率,b)确定选择上述多个离散比特率中的任意相邻比特率的一方的概率,c)根据上述所确定的概率,判断是否将哪一方的比特率设定为发送比特率。
依据本发明的实施方式1,上述步骤(b)的特征在于,b.1)根据上述网络状态计算目标比特率,b.2)确定和上述计算出来的目标比特率相邻的比特率,b.3)上述计算出来的目标比特率与上述被确定比特率中的一方越接近,选择该一方比特率的概率就越大。
也即,计算出目标比特率后,确定和该目标比特率相邻的离散的比特率,将编码器设定为哪个比特率,是根据目标比特率和哪个比特率接近,而概率性所决定的。因此,全体终端的平均设定比特率变得接近于目标比特率,所以,在能够保持和TCP等其他控制方式之间的公平性的同时,使各终端接近目标比特率而能够避免频繁变动比特率的设定这一以前所产生的问题。
本发明的实施方式2的特征在于,上述步骤(b)中,b.1)根据上述网络状态计算目标比特率,b.2)根据上述计算出来的目标比特率和目前设定的比特率之间的差的大小,改变选择与上述目前设定的发送比特率相邻的比特率中的一方的概率。
也即,目前设定的发送比特率和计算出来的目标比特率之间的差越大,变更比特率的概率就越大。所以,在目前设定的发送比特率远离计算出来的目标比特率的终端,变更发送比特率的概率较高,在接近目标比特率的终端较低。因此,全体终端的平均设定比特率变得接近于目标比特率,在能够保持和TCP等其他控制方式之间的公平性的同时,使各终端接近目标比特率而能够避免频繁变动比特率的设定这一以前所产生的问题。并且,本发明的实施方式2中,各终端的目前设定的发送比特率R(n)仅仅在上下一级的范围内变动,不会发生剧烈的发送比特率的变更。因此,具有抑制声音、图像品质恶化的效果。
本发明的实施方式3的特征在于,上述步骤(b)中,b.1)根据上述网络状态确定发送比特率的变更方向,b.2)根据上述目前设定的比特率在上述多个离散比特率中的高度,改变选择与上述目前设定的发送比特率相邻的比特率中的一方的概率。
例如在检测出丢包而必须要降低发送比特率的情况下,或者在没有检测出丢包能够提高发送比特率的情况下,根据目前设定的发送比特率位于比特率设定可能范围中的什么位置上,来变化变更比特率的概率。具体而言,当检测出了丢包的情况下,在目前设定的发送比特率较高的终端中,提高使其比特率降低的概率,对于较低的终端降低使其比特率降低的概率。反之,没有检测出丢包的情况下,在目前设定的发送比特率较低的终端,提升比特率的概率就较高,在较高的终端,提升概率较低。因此,全体终端之间能够公平的设定比特率,在能够使网络的利用率最佳化的同时,使各终端接近目标比特率而能够避免频繁变动比特率的设定这一以前所产生的问题。并且,通过设定比特率的变更概率来和TCP友好控制协调,能够确保终端之间以及和TCP之间的公平性。
本发明的实施方式4的特征在于,上述步骤(b)中,根据相邻比特率之间的间隔来确定上述概率。也即,相邻比特率之间的间隔大小被反映在降低以及提升发送比特率的概率上。例如,和相邻比特率之间的距离越大,就使比特率的变更概率越小,能够抑制声音、图像品质恶化。
附图说明
图1为说明声音·图像数据通信装置的基本构成的方框图。
图2为说明采用以前的比特率控制方法的发送比特率变动的模式图。
图3为说明采用本发明的比特率控制方法的发送比特率变动的模式图。
图4为本发明的实施方式一的比特率控制方法的流程图。
图5为本发明的实施方式二的比特率控制方法的流程图。
图6为采用降低比特率判断中所使用的概率计算公式(3.1)~公式(3.4)所求出来的目标比特率和概率Pd之间的关系的曲线图。
图7为采用提升比特率判断中所使用的概率计算公式(4.1)~公式(4.4)所求出来的目标比特率和概率Pu之间的关系的曲线图。
图8为本发明的实施方式三的比特率控制方法的流程图。
图9为实现本发明的上述各个实施方式的比特率控制部的构成的方框图。
图10为在对方终端进行比特率控制的情况下的系统构成的方框图。
具体实施方式
对照附图说明本发明的实施方式。
采用本发明的比特率控制方法的声音·图像通信装置,其整体结构基本像图1中所示的一样,但比特率控制部405的动作不同。
下面的说明中,设定声音·图像编码部402有N种离散的比特率R(0)~R(N-1),来详细说明本发明的比特率控制的实施方式。且设定R(0)<R(1)<......<R(N-1)。
(1)实施方式1
图4为说明本发明的实施方式1的比特率控制的流程图。首先,使用根据以前的AIMD或者TFRC的TCP友好控制等来计算目标比特率Rt(步骤101)。
针对该Rt,求出满足R(n)<R(t)<R(n+1)的n,对发送比特率为R(n)的概率P,采用使Rt越接近R(n)概率就越高的公式,例如公式
(2)来计算出来(步骤102)
P(n)=(R(n+1)-Rt)/(R(n+1)-R(n))...(2)
另外,还可以使用记载了目标比特率Rt和概率P(n)之间的对应关系的具体数值的表格来代替这样的公式,通过检索来确定概率P(n)。不管采用哪种方法,这样的公式或表格都作为变更概率生成信息被预先保存在存储装置中。
接下来,根据概率P(n)执行比特率的判定。本实施方式中,例如采用随机数来进行比特率判定。首先在0≤P0<1的范围内产生随机数(准确的说是伪随机数)P0(步骤103)。这里使用一致随机数作为随机数。将所得到的随机数P0与步骤102中所计算出来的概率P(n)进行比较,判断发送比特率是设定为R(n)还是设定为R(n+1)(步骤104)。这里,当P0<P(n)时(步骤104中的YES),判定为R(n);当P0≥P(n)时(步骤104中的NO),判定为R(n+1)。
在判定应当选择的比特率为R(n)的情况下,设定R=R(n)(步骤105),判定为R(n+1)的情况下,设定R=R(n+1)(步骤106),将R输出到编码器(步骤107)。这样,声音·图像编码部402就以指定的比特率R对输入的声音·图像数据进行编码,被编码的数据通过包发送部403被发送到网络上。
如上所说明的那样,本发明的实施方式1中,计算出目标比特率,确定和该目标比特率相邻的离散的比特率,将编码器的比特率设定为哪个比特率,是根据目标比特率Rt和哪个比特率接近,而概率性所确定的。
所以,如果目标比特率Rt接近于比特率R(n),设定为该比特率R(n)的概率就较大。若假定多个终端和网络连接,这些终端的目标比特率几乎相同,则可以认为,与该概率对应的数量的终端被设定为比特率R(n),其余的终端被设定为比特率R(n+1)。因此,全体终端的平均设定比特率接近于目标比特率,所以,在能够保持和TCP等其他控制方式之间的公平性的同时,由于各终端接近目标比特率而能够避免频繁变动比特率的设.定这一以前所产生的问题。
(2)实施方式2
本发明的实施方式2中,根据目前的发送比特率和目标比特率之间的差来确定比特率变更的概率,这时由于能够避免发送比特率的大变动,而使其仅变更为相邻的比特率。
2.1)控制流程
图5为说明本发明的实施方式2的比特率控制的流程图。首先,和实施方式1一样计算目标比特率Rt(步骤101),判断目标比特率Rt是否比目前的发送比特率R(n)小(步骤202)。在判断出Rt较小的情况下(步骤202的YES),进行是否降低发送比特率的判断(比特率降低判断:步骤204~207),在Rt不是较小的情况下(步骤202的NO),判断Rt和目前的发送比特率R(n)是否相等(步骤203)。
在判断出Rt和目前的发送比特率R(n)相等的情况下(步骤203的YES),继续保持R=R(n)(步骤214)。在不相等的情况下(步骤203的NO),进行是否提升发送比特率的判断(比特率上升判断:步骤209~212)。
比特率降低判断(步骤204~207)中,首先,采用使Rt和R(n)之间的差越大概率Pd(n)的值就越大的公式,计算概率Pd(n)的值(步骤204)。下面的公式(3)就是该计算公式的一例
Pd(n)=(R(n)-Rt)/(R(N-1)-R(0))...(3)
接下来,根据概率Pd(n)执行比特率的判定。本实施方式中,例如采用随机数来进行比特率判定。首先在0≤P0<1的范围内产生随机数(正确的是伪随机数)P0(步骤205)。这里使用一致随机数作为随机数。将所得到的随机数P0与步骤204中所计算出来的概率Pd(n)进行比较(步骤206)。
如果P0<Pd(n)(步骤206中的YES),进一步判断目前的比特率R(n)是否位于下限(最低比特率)处(这里判断是否n=0)(步骤207)。如果目前的发送比特率R(n)不位于下限处(步骤207的YES),判定应当降低发送比特率,降低n(n=n-1)(步骤208),设定R=R(n)(步骤214)。
如果P0≥Pd(n)(步骤206中的NO),或者目前的发送比特率R(n)位于下限处(步骤207的NO),判定应当不变更发送比特率,保持R=R(n)(步骤214)。
比特率上升判断(步骤209~212)中,首先,采用使Rt和R(n)之间的差越大概率Pu(n)的值就越大的公式,计算概率Pu(n)的值(步骤209)。下面的公式(4)就是该计算公式的一例
Pu(n)=(Rt-R(n))/(R(N-1)-R(0))...(4)
接下来,根据概率Pu(n)执行比特率的判定。本实施方式中,例如采用随机数来进行比特率判定。首先在0≤P0<1的范围内产生随机数(正确的是伪随机数)P0(步骤210)。这里使用一致随机数作为随机数。将所得到的随机数P0与步骤209中所计算出来的概率Pu(n)进行比较(步骤211)。
如果P0<Pu(n)(步骤211中的YES),进一步判断目前的比特率R(n)是否位于上限(最高比特率)处(这里判断是否n=N-1)(步骤212)。如果目前的发送比特率R(n)不位于上限处(步骤212的YES),判定应当提升发送比特率,提升n(n=n+1)(步骤213),设定R=R(n)(步骤214)。
如果P0≥Pu(n)(步骤211中的NO),或者目前的发送比特率R(n)位于上限处(步骤212的NO),判定应当不变更发送比特率,保持R=R(n)(步骤214)。
将这样所确定的R输出到编码器402(步骤215)。这样,声音·图像编码部402就以指定的比特率R对输入的声音·图像数据进行编码,被编码的数据通过包发送部403被发送到网络上。
2.2)概率Pd(n)的其他计算公式
计算概率Pd(n),除了上述公式(3),还可以使用下面的变形方式。
Pd(n)=(R(n)-Rt)/(R(n)-R(0))...(3.1)
Figure C0380166600241
Figure C0380166600242
图6为说明根据公式(3.1)~公式(3.4)所确定的目标比特率和概率Pd之间的关系的曲线图。
公式(3.1)将公式(3)中的分母替换为目前发送比特率R(n)和最低比特率R(0)之间的差,目标比特率Rt越远离目前发送比特率R(n),产生的概率Pd(n)的值就越大。
公式(3.2)采用和公式(3.1)一样的方法产生概率Pd(n),在目标比特率更接近目前发送比特率R(n)而不是相邻的比特率R(n-1)的情况下,使概率Pd(n)为0。这样能够抑制发送比特率的无效变动。
公式(3.3)中,在目标比特率Rt比相邻的比特率R(n-1)大的情况下,目标比特率Rt越远离目前发送比特率R(n),产生的概率Pd(n)的值就越大,在目标比特率Rt小于相邻的比特率R(n-1)的情况下,使概率Pd(n)固定为1。
公式(3.4)采用和公式(3.3)一样的方法产生概率Pd(n),在目标比特率更接近目前发送比特率R(n)而不是相邻的比特率R(n-1)的情况下,使概率Pd(n)为0。这样能够抑制发送比特率的无效变动。
这里,在使用公式(3.1)~公式(3.4)的情况下,可以在其右边乘上一个小于1的常数。这时,该常数的值越小,就越能够抑制发送比特率的变动,从而降低了对目标比特率的追踪性。
2.3)概率Pu(n)的其他计算公式
计算概率Pu(n),除了上述公式(4),还可以使用下面的变形方式。
Pu(n)=(Rt-R(n))/(R(n)-R(0))...(4.1)
Figure C0380166600251
Figure C0380166600252
图7为说明根据公式(4.1)~公式(4.4)所确定的目标比特率和概率Pu之间的关系的曲线图。
公式(4.1)将公式(4)中的分母替换为目前发送比特率R(n)和最低比特率R(0)之间的差,目标比特率Rt越远离目前发送比特率R(n),产生的概率Pu(n)的值就越大。
公式(4.2)采用和公式(4.1)一样的方法产生概率Pu(n),在目标比特率更接近目前发送比特率R(n)而不是相邻的比特率R(n+1)的情况下,使概率Pu(n)为0。这样能够抑制发送比特率的无效变动。
公式(4.3)中,在目标比特率Rt比相邻的比特率R(n+1)小的情况下,目标比特率Rt越远离目前发送比特率R(n),产生的概率Pu(n)的值就越大,在目标比特率Rt大于相邻的比特率R(n+1)的情况下,使概率Pu(n)固定为1。
公式(4.4)采用和公式(4.3)一样的方法产生概率Pu(n),在目标比特率更接近目前发送比特率R(n)而不是相邻的比特率R(n+1)的情况下,使概率Pu(n)为0。这样能够抑制发送比特率的无效变动。
这里,在使用公式(4.1)~公式(4.4)的情况下,可以在其右边乘上一个小于1的常数。这时,该常数的值越小,就越能够抑制发送比特率的变动,从而降低了对目标比特率的追踪性。
另外,还可以使用记载了目标比特率Rt和概率Pd(n)/Pu(n)之间的对应关系的具体数值的表格来代替上述公式(3)、(4)、(3.1)~(3.4)以及(4.1)~(4.4),通过检索来确定概率P(n)。不管采用哪种方法,这样的公式或表格都作为变更概率产生信息被预先保存在存储装置中。
如上所说明,本发明的实施方式2中,目前设定的发送比特率R(n)和计算出来的目标比特率Rt之间的差越大,变更发送比特率的概率就越大。也即,在目前设定的发送比特率R(n)远离计算出来的目标比特率Rt的终端,变更发送比特率的概率较高,在接近目标比特率的终端则较低。
因此,假定多个终端和网络连接,这些终端的目标比特率几乎相同,全体终端的平均设定比特率就变得接近于目标比特率。所以,在能够保持和TCP等其他控制方式之间的公平性的同时,由于各终端接近目标比特率而能够避免频繁变动比特率的设定这一以前所产生的问题。
更进一步,本发明的实施方式2中,各终端的目前设定的发送比特率R(n)仅仅在上下一级的范围内变动,不会发生剧烈的发送比特率的变更。因此,具有抑制声音、图像品质恶化的效果。
(3)实施方式3
本发明的实施方式3,和AIMD中的动作一样,根据丢包而变更发送比特率。在变更发送比特率时,通过根据概率进行判断,能够设定的比特率即使为离散的,也能够实现TCP友好控制。
3.1)控制流程
图8为说明本发明的实施方式3的比特率控制的流程图。图9中,首先根据接收到的声音·图像包的丢失数或者对方终端所通知的丢包率,检测出有没有丢包(步骤301),判断是否发生了丢包(步骤302)。
在发生了丢包的情况下(步骤302的YES),进行是否降低发送比特率的判断(比特率降低判断:步骤303~306)。在没有发生丢包的情况下(步骤302的NO),进行是否提升发送比特率的判断(比特率上升判断:步骤308~311)。
比特率降低判断(步骤303~306)中,首先,采用使目前发送比特率越大概率Pd(n)的值就越大的公式,计算概率Pd(n)的值(步骤303)。下面的公式(5)就是该计算公式的一例
Pd(n)=(R(n)-R(0))/(R(N-1)-R(0))...(5)
接下来,根据概率Pd(n)执行比特率的判定。本实施方式中,例如采用随机数来进行比特率判定。首先在0≤P0<1的范围内产生随机数(正确的是伪随机数)P0(步骤304)。这里使用一致随机数作为随机数。将所得到的随机数P0与步骤303中所计算出来的概率Pd(n)进行比较(步骤305)。
如果P0<Pd(n)(步骤305中的YES),进一步判断目前的比特率R(n)是否位于下限(最低比特率)处(这里判断是否n=0)(步骤306)。如果目前的发送比特率R(n)不位于下限处(步骤306的YES),判定应当降低发送比特率,降低n(n=n-1)(步骤307),设定R=R(n)(步骤313)。
如果P0≥Pd(n)(步骤305中的NO),或者目前的发送比特率R(n)位于下限处(步骤306的NO),判定应当不变更发送比特率,保持R=R(n)(步骤313)。
比特率上升判断(步骤308~311)中,首先,采用使目前发送比特率越小概率Pd(n)的值就越大的公式,计算概率Pd(n)的值(步骤308)。下面的公式(6)就是该计算公式的一例
Pu(n)=(R(N-1)-R(n))/(R(N-1)-R(0))...(6)
接下来,根据概率Pu(n)执行比特率的判断。本实施方式中,例如采用随机数来进行比特率判断。首先在0≤P0<1的范围内产生随机数(正确的是伪随机数)P0(步骤309)。这里使用一致随机数作为随机数。将所得到的随机数P0与步骤308中所计算出来的概率Pu(n)进行比较(步骤310)。
如果P0<Pu(n)(步骤310中的YES),进一步判断目前的比特率R(n)是否位于上限(最高比特率)处(这里判断是否n=N-1)(步骤311)。如果目前的发送比特率R(n)不位于上限处(步骤311的YES),判定应当提升发送比特率,提升n(n=n+1)(步骤307),设定R=R(n)(步骤313)。
如果P0≥Pd(n)(步骤310中的NO),或者目前的发送比特率R(n)位于上限处(步骤311的NO),判定应当不变更发送比特率,保持R=R(n)(步骤313)。
将这样所确定的R输出到编码器402(步骤314)。这样,声音·图像编码部402就以指定的比特率R对输入的声音·图像数据进行编码,被编码的数据通过包发送部403被发送到网络上。
这里,可以在公式(5)以及公式(6)的右边乘上一个小于1的常数。这时,该常数的值越小,就越能够抑制发送比特率的变动,从而降低了对目标比特率的追踪性。
另外,还可以使用记载了目标比特率Rt和概率Pd(n)/Pu(n)之间的对应关系的具体数值的表格来代替上述公式(5)以及公式(6),通过检索来确定概率P(n)。不管采用哪种方法,这样的公式或表格都作为变更概率产生信息被预先保存在存储装置中。
3.2)其他概率设定方法
下面,对在使本实施方式中的控制为TCP友好控制的情况下的图8的步骤303以及步骤308中的确定概率Pd(n)以及Pu(n)的方法进行说明。
首先,设根据AIMD动作的TCP友好控制中的比特率增加时的加数以及比特率减少时的乘数分别为A以及M。通过求解表示本实施方式中的发送比特率的增加值的平均值与根据AIMD动作的TCP友好控制中的比特率增加时的加数相等的公式(7),能够求出提升发送比特率时的概率Pu(n)。
A=(R(n+1)-R(n))Pu(n)...(7)
Pu(n)=A/(R(n+1)-R(n))
另外,根据AIMD动作的TCP友好控制中,发送比特率为R(n)时的比特率减少值D(n)可以通过公式(8)来计算。
D(n)=(1-M)R(n)...(8)
同样,通过求解表示本实施方式中的发送比特率的减少值的平均值与根据AIMD动作的TCP友好控制中的减少值相等的公式(9),能够求出降低发送比特率时的概率Pd(n)。
D(n)=(R(n)-R(n-1))Pd(n)...(9)
Pd(n)=D(n)/(R(n)-R(n-1))
通过如上求出降低发送比特率时的概率Pd(n)以及提升时的概率Pu(n),能够使比特率控制为TCP友好控制。
另外,还可以将离散的比特率各自的比特率降低概率Pd(n)以及上升概率Pu(n)预先记载在表格中来代替上述公式(5)~(9),通过使用目前的发送比特率R(n)来检索也能够求出同样的比特率变更概率。
如上所述,本发明的实施方式3中,在检测出丢包,必须要降低比特率的情况下,或者,在没有检测出丢包,能够提升比特率的情况下,根据目前设定的比特率R(n)位于比特率设定可能范围中的什么位置上,来确定变更比特率的概率。具体而言,检测出了丢包的情况下,在目前设定的比特率R(n)较高的终端,降低比特率的概率就较高,在较低的终端则概率也较低。反之,没有检测出丢包的情况下,由于网络运行顺畅,在目前设定的比特率R(n)较低的终端,提升比特率的概率就较高,在较高的终端,概率也较低。
因此,在和网络连接的多个终端检测出丢包时,比特率越高的终端降低比特率的概率就越高,没有检测出丢包时,比特率越低的终端提升比特率的概率就越高。所以,全体终端之间能够公平的设定比特率,在能够使网络的利用率最佳化的同时,使各终端接近目标比特率而能够避免频繁变动比特率的设定这一以前所产生的问题。
更进一步,由于和TCP友好控制结合来设定比特率的变更概率,能够确保终端之间以及和TCP之间的公平性。
(4)实施方式4
本发明的实施方式4的比特率控制中,相邻比特率之间的间隔大小被反映在上述实施方式2或者实施方式3中降低以及提升比特率的概率Pd(n)以及Pu(n)上。例如,和相邻比特率之间的距离越大,就使比特率的变更概率越小,能够抑制声音、图像品质恶化。
如上所述,声音·图像编码部402所具有的N种离散的比特率R(0)~R(N-1)中,R(0)<R(1)<......<R(N-1)。相邻比特率的间隔(也即,差)R(n)-R(n-1)或R(n+1)-R(n)一般并不固定。例如在声音·图像编码部402具有的3个比特率(10kbps、64kbps以及128kbps)的情况下,R(1)-R(0)=54kbps,R(2)-R(1)=64kbps。
这种离散的比特率的间隔不固定的情况下,根据一律的概率计算进行对发送比特率的变更,在有的终端上会产生比特率的大变更,成为使声音、图像品质恶化的主要原因。因此,本实施方式中,根据目前发送比特率和相邻比特率之间的差,预先设定比特率的变更概率。下面进行具体说明。
在根据目前发送比特率和相邻比特率之间的差来确定比特率变更概率时,使用表格比使用计算公式更合适。例如,如下表所示,将离散的比特率各自所对应的使发送比特率降低的概率Pd(n)和提升的概率Pu(n)预先记载在表中。
表1
  离散的比特率   R(0)  R(1) ...  R(n) ...  R(N-1)
  比特率降低概率Pd   Pd(0)  Pd(1) ... Pd(n) ...  Pd(N-1)
  比特率提升概率Pu   Pu(0)  Pu(1) ... Pu(n) ...  Pu(N-1)
和相邻的比特率之间的距离越大,就使离散的比特率各自所对应的比特率降低/提升的概率Pd(n)/Pu(n)的值越小。
例如,设定目前设定的发送比特率为R(n),如下面的公式(10)以及(11)所示,比特率的变更概率和与相邻比特率之间的距离成反比。
Pd(n)=Cd(n)/(R(n)-R(n-1))...(10)
Pu(n)=Cu(n)/(R(n+1)-R(n))...(11)
且Cd(n)由实施方式2中的公式(3)、(3.1)以及(3.2),或实施方式3中的公式(5)来确定。Cu(n)由实施方式2中的公式(4)、(4.1)以及(4.2),或实施方式3中的公式(6)来确定。
通过使用这种使用表格来确定比特率的变更概率的步骤,来代替图5的步骤204以及209、图8的步骤303以及308,使目前的发送比特率和相邻比特率的差越大变更比特率的概率就越小,能够抑制发送比特率的大幅度变化,从而能够抑制声音、图像的品质恶化。
(5)比特率控制部的构成方式
图9为说明实现本发明的上述各实施方式的比特率控制部的构成的方框图。比特率控制部由数字信号处理器(DSP)以及中央处理器(CPU)等的程序控制处理器601,程序存储装置602以及保存概率的计算公式或表格的变更概率生成信息存储装置(图中未显示)构成。程序存储装置602中预先保存有对应于上述实施方式1~4中的任何一个的比特率控制程序。
程序控制处理器601从程序存储装置602中读出比特率控制程序并执行,参考保存在变更概率生成信息存储装置中的计算公式或表格,根据循环时间或丢包率来确定发送比特率,并将该发送比特率输出到声音·图像编码部402。
(6)比特率控制系统
如上所述,图1中所示的终端例如在包接收部404接收RTCP包,从中抽取出循环时间以及丢包率的相关信息(网络信息),输出到本发明的比特率控制部405。比特率控制部405通过上述过程来进行比特率控制。也即,在本终端内进行比特率控制。与此相对,还可以在对方终端来控制本终端的比特率。
图10为说明在对方终端进行比特率控制的情况下的系统构成的方框图。这里为使说明简单化,假设两个终端A和B连接在网络上,互相发送接收声音·图像数据。另外,具有和图1中的同样的功能结构被标上了和图1中一样的标号,这里省略说明。
图10中,例如终端A的包接收部504,通过网络接收来自对方终端B的声音·图像数据包,根据所接收到的声音·图像数据包的丢失数等来产生丢包率等第1网络信息,并输出到比特率控制部505。比特率控制部505根据第1网络信息,如本发明的实施方式1~4所述的那样确定第1发送比特率,并将表示该第1发送比特率的第1比特率信息输出到包发送部503。另外包接收部504抽取出对方终端B所产生的第2比特率信息并输出到声音·图像编码部402。包发送部503将第1比特率信息以及被编码的声音·图像信息生成为发送包,通过网络发送给终端B。例如在RTP声音通信中,采用AMR(Adaptive MultiRate)声音Codec的情况下,头信息中包括表示4速率的CMR(Codec Mode Request)的字段,能够根据Codec Mode(比特率的对应号码)来指定对方终端向本终端的发送比特率。
终端B接收来自终端A的包,从中抽取出第1比特率信息并输出到声音·图像编码部402。声音·图像编码部402以该第1比特率信息所指定第1发送比特率R对要发送的声音·图像信息401进行编码,被编码的声音·图像数据和由比特率控制部505所产生的第2比特率信息一起从包发送部503被发送到终端A。
这样,通过终端A和B互相控制对方的发送比特率,不需要交换使用RTCP包的网络信息,能够节约被RTCP包所占用的带宽。
进一步,由于RTCP包的发送间隔为5秒左右,不能够及时对应网络的变化,通过各终端从接收到的包中检测出网络状况,能够迅速对应网络的变化,从而能够进一步提高本发明的效果。
另外,在上述实施方式1~4中,由于能够避免连续变更比特率所引起的音质以及像质的恶化,能够在比特率变更之后的一定时间中,使变更比特率的概率为0或较小值。另外,通过多次使用例如R(n)=R(n+1)=R(n+2)这样的相同值的比特率,甚至能够抑制比特率的变动。
另外,本发明的比特率控制方法不管对哪种更新时间都能够适用。例如,在设定更新时间为10秒,迁移概率为0.1的情况下,即使更新时间变化为1秒,如果将迁移概率调整为原来的1/10即0.01,也能够维持几乎一样的效果。
根据上述说明,由于本发明在对应网络的状态控制比特率时,根据概率来确定比特率,能够抑制引起实时通信的品质恶化的比特率的剧烈变动,且能够实现和TCP之间的公平性。
也即,通信系统的全体终端的各个能够利用的比特率即使是离散的,通过设定各终端的比特率变更概率值来使全体终端的比特率的平均值为期望的比特率,使各终端的比特率变动较少的控制成为可能,从而能够提高声音、图像等实时通信的品质。

Claims (33)

1.一种比特率控制方法,是通过网络发送实时通信时的比特率控制方法,包括以下步骤:
a)将预先设定的离散比特率中的一个比特率设为发送比特率,
b)通过使用目标比特率和目前设定的发送比特率之一或二者,针对上述预先设定的离散比特率中的一个比特率或另一个比特率,确定选择上述预先设定的离散比特率中的一个比特率或另一个比特率作为新的发送比特率的概率,
c)根据所确定的概率,判断将上述一个比特率还是上述另一个比特率设定为新的发送比特率。
2.一种比特率控制方法,是通过网络发送实时通信时的比特率控制方法,包括以下步骤:
a)预备多个预先设定的离散比特率;
b.1)根据网络的状态计算目标比特率,
b.2)确定与上述计算的目标比特率相邻的两个预先设定的离散比特率,
b.3)随着计算的目标比特率越来越接近两个相邻比特率中的一个,将选择上述两个相邻比特率中的一个的概率确定为越来越大;
c)根据所确定的概率,判断是否将上述两个相邻比特率中的一个设定为发送比特率。
3.一种比特率控制方法,是通过网络发送实时通信时的比特率控制方法,包括以下步骤:
a)预备多个预先设定的离散比特率;
b)确定选择两个任意相邻比特率中的一个的概率;以及
c)根据所确定的概率,判断是否将上述两个相邻比特率中的一个设定为发送比特率;
由此当目前设定的发送比特率是相邻比特率中较低的一个时,保持目前设定的发送比特率或将其变更为相邻比特率中较高的一个,以及
由此当目前设定的发送比特率是相邻比特率中较高的一个时,保持目前设定的发送比特率或将其变更为相邻比特率中较低的一个。
4.如权利要求3所述的比特率控制方法,其特征在于:
上述步骤(b)中,
b.1)根据上述网络状态计算目标比特率,
b.2)根据上述计算出来的目标比特率和目前设定的比特率之间的差的大小,改变选择与上述目前设定的发送比特率相邻的比特率中的一个的概率。
5.如权利要求3所述的比特率控制方法,其特征在于:
上述步骤(b)中,
b.1)根据上述网络状态确定发送比特率的变更方向,
b.2)根据上述目前设定的比特率和与目前设定的比特率相邻的较高或较低比特率之间的差值,改变选择与上述目前设定的发送比特率相邻的比特率中的一个的概率。
6.如权利要求1所述的比特率控制方法,其特征在于:
上述步骤(b)中,根据相邻比特率的间隔来确定上述概率。
7.如权利要求1~6中的任何一个所述的比特率控制方法,其特征在于,还包括以下步骤:
d)判断上述步骤(c)是否变更了目前所设定的比特率,
e)在发送比特率被变更的情况下,在变更后的预先设定时间经过之前,使上述概率比所确定的概率小。
8.如权利要求7所述的比特率控制方法,其特征在于:
在上述预先设定时间经过之前,使上述概率为0。
9.一种比特率控制方法,是通过网络发送实时通信时的比特率控制方法,其特征在于,包括以下步骤:
a)预备多个预先设定的离散比特率,
b)根据上述网络的状态计算目标比特率,
c)预备变更概率生成信息,上述变更概率生成信息使得在上述离散比特率的任意两个相邻比特率中,选择更接近上述目标比特率的上述任意两个相邻比特率中的一个的概率更高,
d)根据与上述所计算出来的目标比特率相邻的比特率以及上述变更概率生成信息,确定选择与上述目标比特率更接近的上述两个相邻比特率中的一个的概率,
e)根据上述所确定的概率,将上述两个相邻比特率中的一个设定为发送比特率。
10.如权利要求9所述的比特率控制方法,其特征在于:
针对两个相邻比特率中较低的一个,上述变更概率生成信息用下面的公式来表示
P=(R(n+1)-Rt)/(R(n+1)-R(n))
其中:P为上述选择比特率的概率,Rt为上述目标比特率,R(n)为两个相邻比特率中较低的一个,R(n+1)是两个相邻比特率中较高的一个。
11.如权利要求9所述的比特率控制方法,其特征在于上述变更概率生成信息针对相邻比特率中较高的一个。
12.如权利要求9、10或11所述的比特率控制方法,其特征在于:
上述步骤(c)中,按照传输控制协议友好控制计算出上述目标比特率。
13.一种比特率控制方法,是通过网络发送实时通信时的比特率控制方法,其特征在于,包括以下步骤:
a)预备多个预先设定的离散比特率,
b)预备变更概率生成信息,使得目标比特率和目前所设定的比特率之间的差越大,选择和上述目前所设定的比特率相邻的比特率中的一个的概率就越高,
c)根据上述网络的状态计算目标比特率,
d)根据上述计算出来的目标比特率以及上述变更概率生成信息,确定选择和上述目前所设定的比特率相邻的比特率中的一个的概率,
e)根据上述所确定的概率,判断是否将上述一个比特率设定为发送比特率。
14.如权利要求13所述的比特率控制方法,其特征在于,上述变更概率生成信息:
在上述目前所设定的发送比特率比上述目标比特率高的情况下,该差越大,将上述目前所设定的发送比特率变更到较低一个的相邻比特率的概率就越高;
在上述目前所设定的发送比特率比上述目标比特率低的情况下,该差越大,将上述目前所设定的发送比特率变更到较高的一个的相邻比特率的概率就越高;
在上述目前所设定的发送比特率和上述目标比特率相等的情况下,不变更上述目前所设定的发送比特率。
15.如权利要求14所述的比特率控制方法,其特征在于:
上述目前所设定的发送比特率比上述目标比特率高的情况下,上述变更概率生成信息由下面的公式(1)~(5)中的一个公式来表示:
(1)Pd(n)=(R(n)-Rt)/(R(N-1)-R(0))
(2)Pd(n)=(R(n)-Rt)/(R(n)-R(0))
以及
Figure C038016660005C3
其中:N为离散的比特率的个数,n为0到N之间的整数,Pd(n)为降低比特率的概率,Rt为上述目标比特率,R(0)为离散的比特率中的最低的比特率,R(n)为上述目前所设定的发送比特率,R(n-1)为与上述目前所设定的发送比特率相邻的前一个比特率,Pd表示降低发送比特率的概率。
16.如权利要求14所述的比特率控制方法,其特征在于:
上述目前所设定的发送比特率比上述目标比特率低的情况下的上述变更概率生成信息,由下面的公式(6)~(10)中的一个公式来表示:
(6)Pu(n)=(Rt-R(n))/(R(N-1)-R(0))
(7)Pu(n)=(Rt-R(n))/(R(n)-R(0))
Figure C038016660006C1
Figure C038016660006C2
以及
Figure C038016660006C3
其中:N为离散的比特率的个数,n为0到N之间的整数,Pu(n)为提升比特率的概率,Rt为上述目标比特率,R(0)为离散的比特率中的最低的比特率,R(n)为上述目前所设定的发送比特率,R(n+1)为与上述目前所设定的发送比特率相邻的下一个比特率,R(N-1)为离散的比特率中的最高的比特率,Pu表示提升发送比特率的概率。
17.如权利要求13~16中任何一个所述的比特率控制方法,其特征在于:
上述步骤(c)中,按照传输控制协议友好控制计算出上述目标比特率。
18.一种比特率控制方法,是通过网络发送实时通信时的比特率控制方法,其特征在于,包括以下步骤:
a)预备多个预先设定的离散比特率,
b)预备变更概率生成信息,使目标比特率和目前所设定的比特率之间的差越大,选择和上述目前所设定的比特率相邻的比特率中的一个的概率就越高,
c)根据上述网络的状态确定发送比特率的变更方向,
d)根据上述所确定的发送比特率的变更方向、上述目前所设定的发送比特率以及上述变更概率生成信息,确定选择和上述目前所设定的比特率相邻的比特率中的一个的概率,
e)根据上述所确定的概率,判断是否将上述一个比特率设定为发送比特率。
19.如权利要求18所述的比特率控制方法,其特征在于:
上述变更概率生成信息,在上述发送比特率的变更方向为降低方向的情况下,上述目前所设定的发送比特率越高,将上述目前所设定的发送比特率变更到较低的一个的相邻比特率的概率就越高;
在上述发送比特率的变更方向为上升方向的情况下,上述目前所设定的发送比特率越低,将上述目前所设定的发送比特率变更到较高的一个的相邻比特率的概率就越高。
20.如权利要求19所述的比特率控制方法,其特征在于,上述变更概率生成信息:
在上述发送比特率的变更方向为降低方向的情况下,用下面的公式来表示:
Pd(n)=(R(n)-R(0))/(R(N-1)-R(0))
其中:N为离散的比特率的个数,n为0到N之间的整数,Pd(n)为降低发送比特率的概率,R(0)为离散的比特率中的最低的比特率,R(n)为上述目前所设定的发送比特率,R(N-1)为离散的比特率中的最高的比特率;
在上述发送比特率的变更方向为上升方向的情况下,用下面的公式来表示:
Pu(n)=(R(N-1)-R(n))/(R(N-1)-R(0))
其中:N为离散的比特率的个数,n为0到N之间的整数,Pu(n)为提升发送比特率的概率,R(0)为离散的比特率中的最低的比特率,R(n)为上述目前所设定的发送比特率,R(N-1)为离散的比特率中的最高的比特率。
21.如权利要求19所述的比特率控制方法,其特征在于,上述变更概率生成信息:
在上述发送比特率的变更方向为降低方向的情况下,确定降低发送比特率的概率并使其与传输控制协议友好控制中的比特率降低值协调;
在上述发送比特率的变更方向为上升方向的情况下,确定提升发送比特率的概率并使其与传输控制协议友好控制中的比特率提升值协调。
22.如权利要求21所述的比特率控制方法,其特征在于:
上述传输控制协议友好控制是根据线增倍减控制,当设定线增倍减中比特率增加时的加值以及比特率减少时的乘值分别为A以及M时,
上述变更概率生成信息,
在上述发送比特率的变更方向为上升方向的情况下,用来求出提升发送比特率的概率Pu的公式用下面的公式,
Pu(n)=A/(R(n+1)-R(n))
来表示;
在上述发送比特率的变更方向为降低方向的情况下,用来求出降低发送比特率的概率Pd的公式用下面的公式,
Pd(n)=D(n)/(R(n)-R(n-1))
其中:D(n)=(1-M)R(n))
N为离散的比特率的个数,n为0到N之间的整数,R(n)为目前所设定的发送比特率,R(N-1)为离散的比特率中的最高的比特率。
23.一种比特率控制方法,是通过网络发送实时通信时的比特率控制方法,其特征在于,包括以下步骤:
a)预备多个预先设定的离散比特率,
b)预备变更概率生成信息,使概率按照上述多个离散比特率中的任意相邻的比特率之间的间隔而变化,
c)根据上述网络的状态确定发送比特率的变更方向,
d)根据上述所确定的发送比特率的变更方向、目前所设定的发送比特率以及上述变更概率生成信息,确定选择和上述目前所设定的比特率相邻的比特率中的任意一个的概率,
e)根据上述所确定的概率,判断是否将上述任意一个比特率设定为发送比特率。
24.如权利要求23所述的比特率控制方法,其特征在于,上述变更概率生成信息:
在上述发送比特率的变更方向为降低方向的情况下,用下面的公式来表示,
Pd(n)=Cd(n)/(R(n)-R(n-1))
d其中Cd(n)由下面的公式(1)~(4)中的任何一个来确定,
(1)Cd(n)=(R(n)-Rt)/(R(N-1)-R(0))
(2)Cd(n)=(R(n)-Rt)/(R(n)-R(0))
Figure C038016660009C1
(4)Cd(n)=(R(n)-R(0))/(R(N-1)-R(0))
其中:N为离散的比特率的个数,n为0到N之间的整数,Rt为上述目标比特率,R(0)为离散的比特率中的最低的比特率,R(n)为上述目前所设定的发送比特率,R(n-1)为与上述目前所设定的发送比特率相邻的前一个比特率,Pd为降低发送比特率的概率,Pu为提升发送比特率的概率,RM=(R(n)+R(n-1))/2;
在上述发送比特率的变更方向为上升方向的情况下,用下面的公式来表示,
Pu(n)=Cu(n)/(R(n+1)-R(n))
其中Cu(n)由下面的公式(5)~(8)中的任何一个来确定,
(5)Cu(n)=(Rt-R(n))/(R(N-1)-R(0))
(6)Cu(n)=(Rt-R(n))/(R(n)-R(0))
(8)Cu(n)=(R(N-1)-R(n))/(R(N-1)-R(0))
其中:N为离散的比特率的个数,n为0到N之间的整数,Rt为上述目标比特率,R(0)为离散的比特率中的最低的比特率,R(n)为上述目前所设定的发送比特率,R(n+1)为与上述目前所设定的发送比特率相邻的下一个比特率,R(N-1)为离散的比特率中的最高的比特率,Pu为提升发送比特率的概率。
25.一种比特率控制装置,处于使用具有多个预先设定的离散比特率的编码器来通过网络发送实时通信的系统中,上述比特率控制装置包括:
保存单元,其保存变更概率生成信息,用来针对上述多个预先设定的离散比特率中的每一个分别产生选择上述离散比特率中的每一个作为发送比特率的概率;和
控制单元,其根据目标比特率和目前设定的发送比特率中的一个或二者,通过上述变更概率生成信息来生成针对离散比特率中一个的概率,并根据该概率执行对上述编码器的比特率控制。
26.一种比特率控制装置,处于使用具有多个预先设定的离散比特率的编码器来通过网络发送实时通信的系统中,上述比特率控制装置包括:
保存单元,其保存变更概率生成信息,用来针对上述多个预先设定的离散比特率中的每一个分别产生选择上述离散比特率中的每一个作为发送比特率的概率;和
控制单元,其根据目标比特率和目前设定的发送比特率中的一个或二者,通过上述变更概率生成信息来生成针对离散比特率中一个的概率,并根据该概率执行对上述编码器的比特率控制,
其中,上述比特率控制装置还包括用来根据网络的状态计算目标比特率的目标比特率计算装置,以及
上述控制单元确定与上述计算的目标比特率相邻的两个预先设定的离散比特率,执行上述编码器的比特率控制,以使上述计算的目标比特率越接近上述两个相邻比特率中的一个比特率,则选择上述一个比特率的概率越高。
27.一种比特率控制装置,处于使用具有多个预先设定的离散比特率的编码器来通过网络发送实时通信的系统中,上述比特率控制装置包括:
保存单元,其保存变更概率生成信息,用来针对上述多个预先设定的离散比特率中的每一个分别产生选择上述离散比特率中的每一个作为发送比特率的概率;和
控制单元,其根据目标比特率和目前设定的发送比特率中的一个或二者,通过上述变更概率生成信息来生成针对离散比特率中一个的概率,并根据该概率执行对上述编码器的比特率控制,
其中控制单元确定选择两个相邻比特率中的一个的概率。并根据所确定的概率来判断是否将上述两个相邻比特率中的一个设定为新的发送比特率,
由此当目前设定的发送比特率是相邻比特率中较低的一个时,保持目前设定的发送比特率或将其变更为相邻比特率中较高的一个,以及
由此当目前设定的发送比特率是相邻比特率中较高的一个时,保持目前设定的发送比特率或将其变更为相邻比特率中较低的一个。
28.如权利要求27所述的比特率控制装置,其特征在于:
上述控制单元中,包括用来根据上述网络的状态计算目标比特率的目标比特率计算装置,
执行上述编码器的比特率控制,使得选择和上述目前所设定的发送比特率相邻的比特率中的一个的概率,根据上述所计算出来的目标比特率和目前所设定的通信比特率之间的差的大小而变化。
29.如权利要求27所述的比特率控制装置,其特征在于:
上述控制单元中,包括用来根据上述网络的状态确定发送比特率的变更方向的变更方向确定装置,
执行上述编码器的比特率控制,使得选择和上述目前所设定的发送比特率相邻的比特率中的一个的概率,根据上述目前所设定的比特率在上述多个离散的比特率中的高度而变化。
30.如权利要求29所述的比特率控制装置,其特征在于:
上述变更方向确定装置,根据丢包的有无来确定发送比特率的是降低还是上升。
31.如权利要求27所述的比特率控制装置,其特征在于:
上述变更概率生成信息,根据相邻比特率的间隔而确定概率,上述控制单元,根据依赖于相邻比特率之间间隔的概率来执行上述编码器的比特率控制。
32.一种实时通信终端,是通过网络进行终端之间的实时通信的系统中的实时通信终端,上述实时通信终端包括:
发送接收装置,和上述网络连接并且进行数据的发送接收;
编码装置,具有多个预先设定的离散比特率,并对发送数据进行编码;以及,
比特率控制装置,用来控制上述编码装置的比特率,
上述比特率控制装置包括:
保存单元,用来保存变更概率生成信息,用来针对上述预先设定的离散比特率中的每一个分别产生选择上述预先设定的离散比特率中的每一个作为发送比特率的概率;以及,
控制单元,用来根据目标比特率和目前设定的发送比特率中的一个或二者,通过使用变更概率生成信息来产生针对离散比特率之一的概率,并根据上述概率执行对上述编码器的比特率控制。
33.一种实时通信系统,其特征在于:
网络上连接有多个如权利要求32所述的实时通信终端。
CNB038016664A 2002-04-23 2003-04-23 比特率控制方法及装置 Expired - Fee Related CN100375468C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP120066/2002 2002-04-23
JP2002120066A JP4000895B2 (ja) 2002-04-23 2002-04-23 リアルタイム通信のためのビットレート制御方法および装置

Publications (2)

Publication Number Publication Date
CN1596528A CN1596528A (zh) 2005-03-16
CN100375468C true CN100375468C (zh) 2008-03-12

Family

ID=29267352

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB038016664A Expired - Fee Related CN100375468C (zh) 2002-04-23 2003-04-23 比特率控制方法及装置

Country Status (6)

Country Link
US (1) US20050105604A1 (zh)
EP (1) EP1499073A4 (zh)
JP (1) JP4000895B2 (zh)
KR (1) KR100615119B1 (zh)
CN (1) CN100375468C (zh)
WO (1) WO2003092227A1 (zh)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8254358B2 (en) 2003-03-06 2012-08-28 Ericsson Ab Communicating a broadcast message to change data rates of mobile stations
KR100602916B1 (ko) * 2003-05-23 2006-07-19 가부시키가이샤 히다치 고쿠사이 덴키 화상전송방법 및 화상전송장치
US7599394B2 (en) * 2003-06-16 2009-10-06 Telefonaktiebolaget Lm Ericsson (Publ) Common rate control method for reverse link channels in CDMA networks
GB0321093D0 (en) * 2003-09-09 2003-10-08 Nokia Corp Multi-rate coding
US7616660B2 (en) * 2003-11-21 2009-11-10 Telefonaktiebolaget Lm Ericsson (Publ) Common rate control method for reverse link channels in CDMA networks
US8165692B2 (en) 2004-06-10 2012-04-24 Medtronic Urinary Solutions, Inc. Implantable pulse generator power management
US7761167B2 (en) 2004-06-10 2010-07-20 Medtronic Urinary Solutions, Inc. Systems and methods for clinician control of stimulation systems
US9308382B2 (en) 2004-06-10 2016-04-12 Medtronic Urinary Solutions, Inc. Implantable pulse generator systems and methods for providing functional and/or therapeutic stimulation of muscles and/or nerves and/or central nervous system tissue
US9205255B2 (en) 2004-06-10 2015-12-08 Medtronic Urinary Solutions, Inc. Implantable pulse generator systems and methods for providing functional and/or therapeutic stimulation of muscles and/or nerves and/or central nervous system tissue
US8195304B2 (en) 2004-06-10 2012-06-05 Medtronic Urinary Solutions, Inc. Implantable systems and methods for acquisition and processing of electrical signals
WO2006022993A2 (en) 2004-06-10 2006-03-02 Ndi Medical, Llc Implantable generator for muscle and nerve stimulation
JP2006126894A (ja) * 2004-10-26 2006-05-18 Sony Corp コンテンツ配信方法、プログラムおよび情報処理装置
KR100800794B1 (ko) * 2005-07-01 2008-02-04 삼성전자주식회사 패킷망을 통해 음성 서비스를 지원하는 이동통신시스템에서 음성 서비스의 전송률을 제어하는 방법 및 장치
JP4817990B2 (ja) * 2005-08-17 2011-11-16 キヤノン株式会社 撮像装置及びその制御方法及びプログラム及び記憶媒体
US9480846B2 (en) 2006-05-17 2016-11-01 Medtronic Urinary Solutions, Inc. Systems and methods for patient control of stimulation systems
GB0622830D0 (en) * 2006-11-15 2006-12-27 Cambridge Silicon Radio Ltd Transmission rate selection
US7844725B2 (en) 2008-07-28 2010-11-30 Vantrix Corporation Data streaming through time-varying transport media
US8001260B2 (en) 2008-07-28 2011-08-16 Vantrix Corporation Flow-rate adaptation for a connection of time-varying capacity
US7975063B2 (en) * 2009-05-10 2011-07-05 Vantrix Corporation Informative data streaming server
JP2011120168A (ja) * 2009-12-07 2011-06-16 Kyocera Corp 通信装置
US9137551B2 (en) 2011-08-16 2015-09-15 Vantrix Corporation Dynamic bit rate adaptation over bandwidth varying connection
CN102710374B (zh) * 2012-05-28 2015-05-20 天津大学 无线流媒体传输中的速率控制方法
EP3220681B1 (en) * 2016-03-18 2020-07-15 Nokia Technologies Oy Adaptive and dynamic qos/qoe enforcement
CN110192394B (zh) * 2016-12-21 2023-10-20 英国电讯有限公司 通过网络传送媒体内容的方法和服务器
KR20200100387A (ko) * 2019-02-18 2020-08-26 삼성전자주식회사 실시간 비트레이트 제어 방법 및 이를 위한 전자 장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5228033A (en) * 1990-10-05 1993-07-13 Ricoh Company, Ltd. Data multiplexing and separation method
JPH06252870A (ja) * 1993-02-24 1994-09-09 Nec Corp データ多重化伝送方式
JPH06276172A (ja) * 1993-03-18 1994-09-30 Fujitsu Ltd タイムスロット割付け方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05260090A (ja) * 1992-03-09 1993-10-08 Nippon Telegr & Teleph Corp <Ntt> 映像転送方式
US6112239A (en) * 1997-06-18 2000-08-29 Intervu, Inc System and method for server-side optimization of data delivery on a distributed computer network
US6567420B1 (en) * 1999-04-15 2003-05-20 Qualcomm, Incorporated Method and apparatus for high rate channel access control
DE60239898D1 (de) * 2001-02-12 2011-06-09 Lg Electronics Inc Steuerung der Datenübertragungsrate in der Rückwärtsverbindung für jede Mobilstation einzeln
US7961616B2 (en) * 2001-06-07 2011-06-14 Qualcomm Incorporated Method and apparatus for congestion control in a wireless communication system
US7363353B2 (en) * 2001-07-06 2008-04-22 Juniper Networks, Inc. Content service aggregation device for a data center
JP2003046976A (ja) * 2001-07-31 2003-02-14 Matsushita Electric Ind Co Ltd 映像配信装置、映像配信方法及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5228033A (en) * 1990-10-05 1993-07-13 Ricoh Company, Ltd. Data multiplexing and separation method
JPH06252870A (ja) * 1993-02-24 1994-09-09 Nec Corp データ多重化伝送方式
JPH06276172A (ja) * 1993-03-18 1994-09-30 Fujitsu Ltd タイムスロット割付け方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A Study on the Application of an AMR Speech Codec toVOIP. Jeong Wook Seo et AL.Proc. of IEEE International Conference on Acoustics, Speech, and Signal,Vol.3 . 2001 *
RAP: An End-to -end Rate-based CongestionControlMechanism for Realtime Streams in the Internet. Reza Rejaie et AL.IEEE. 1999 *

Also Published As

Publication number Publication date
EP1499073A4 (en) 2009-12-23
EP1499073A1 (en) 2005-01-19
KR100615119B1 (ko) 2006-08-22
CN1596528A (zh) 2005-03-16
KR20040096495A (ko) 2004-11-16
WO2003092227A1 (en) 2003-11-06
JP4000895B2 (ja) 2007-10-31
JP2003318966A (ja) 2003-11-07
US20050105604A1 (en) 2005-05-19

Similar Documents

Publication Publication Date Title
CN100375468C (zh) 比特率控制方法及装置
US7167451B1 (en) User controlled audio quality for voice-over-IP telephony systems
US7023839B1 (en) System and method for dynamic codec alteration
CN101743725B (zh) 用于通信系统中的自适应速率控制的方法、装置和系统
US7680099B2 (en) Jitter buffer adjustment
EP1024637A1 (en) System and method for coding algorithm adjustment in telephony-over-lan networks
US9571552B2 (en) Systems, methods, and computer program products for selecting codecs to optimize resource utilization
US20130159495A1 (en) Controlling Bit-Rates for Media Streaming Sessions
RU2004118718A (ru) Способ обеспечения услуги потоковой передачи видеоданных
JP2007525884A (ja) 動的に構成された非対称エンドポイント・ビデオ交換のためのシステムおよび方法
JP4748729B2 (ja) データおよび対応するプロダクトを送信する準備のための装置と方法
CN110365600A (zh) 一种基于bbr的拥塞控制方法、装置、设备和存储介质
EP1339193B1 (en) Data rate controller
CN111741249B (zh) 一种网络拥塞检测方法及装置
CN109981687B (zh) 用于控制媒体流的传送比特率的装置和方法、存储介质
EP1296479A1 (en) Data communication method and system for transmitting multiple data streams calculating available bandwidth per stream and bit stream trade-off
US7707296B2 (en) Method and apparatus for selecting a media processor to host a conference
US7080010B2 (en) Complexity resource manager for multi-channel speech processing
CN103238349A (zh) 用于无线通信中的信道适配的方法和装置
WO2002035844A2 (en) Dynamic quality adaptation using personal quality profiles and composite performance metric
CN112911650A (zh) 移动高清视频智能双向探测带宽控制系统
KR100601934B1 (ko) 적응적 스트리밍 장치 및 방법
Tseng et al. Scene-change aware dynamic bandwidth allocation for real-time VBR video transmission over IEEE 802.15. 3 wireless home networks
Kazemian An intelligent video streaming technique in zigbee wireless
CN115842928A (zh) 视频码率切换方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080312

Termination date: 20140423