CN101689946A - 用于确定抖动缓冲器级别的方法和接收器 - Google Patents

用于确定抖动缓冲器级别的方法和接收器 Download PDF

Info

Publication number
CN101689946A
CN101689946A CN200880022334.1A CN200880022334A CN101689946A CN 101689946 A CN101689946 A CN 101689946A CN 200880022334 A CN200880022334 A CN 200880022334A CN 101689946 A CN101689946 A CN 101689946A
Authority
CN
China
Prior art keywords
buffer
buffer level
level
grouping
receiver
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.)
Granted
Application number
CN200880022334.1A
Other languages
English (en)
Other versions
CN101689946B (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.)
Google LLC
Original Assignee
Global IP Solutions GIPS AB
Global IP Solutions Inc
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
Priority claimed from EP07111282A external-priority patent/EP2009820B1/en
Priority claimed from US11/822,025 external-priority patent/US7733893B2/en
Application filed by Global IP Solutions GIPS AB, Global IP Solutions Inc filed Critical Global IP Solutions GIPS AB
Publication of CN101689946A publication Critical patent/CN101689946A/zh
Application granted granted Critical
Publication of CN101689946B publication Critical patent/CN101689946B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/062Synchronisation of signals having the same nominal but fluctuating bit rates, e.g. using buffers
    • H04J3/0632Synchronisation of packets and cells, e.g. transmission of voice via a packet network, circuit emulation service [CES]
    • 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/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及具有确定抖动缓冲器的目标分组级别的控制逻辑部件的方法和接收器,所述抖动缓冲器适于从分组数据网络接收经历了延迟抖动的、具有数字化信号样本的分组。根据本发明,通过收集描述当前网络条件的统计值测量,使抖动缓冲器适于这些条件,即:由接收器观测到的抖动的性质和量值。根据真实信号的间断回放的持续时间,关于分组丢失的效果确定目标缓冲器级别。从如通过接收器侧感知的和如概率质量函数(以分组到达之间的时间来连续地更新)反映的网络条件的统计值测量来推导该效果。目标缓冲器级别是价值函数的最小化的结果,所述价值函数对内部缓冲器延迟和缓冲器下溢的期望长度进行加权。

Description

用于确定抖动缓冲器级别的方法和接收器
技术领域
本发明总的来说涉及从分组数据网络接收具有数字化信号样本的数据分组,并且更具体地说,涉及确定适于从网络接收具有延迟抖动(jitter)的分组的抖动缓冲器的目标分组级别。
背景技术
在分组交换网络(如因特网)中,通过网络发送的数据分组由于当传送分组时的网络负荷、传送分组的网络路径和其他网络条件而经历变化的延迟。因此,由发送器以恒定速率产生的数据分组以可变延迟到达接收器。数据分组的变化的延迟主要由于分组网络造成的延迟,并且通常将其称为抖动。抖动的严重程度可能取决于网络类型和当前条件而显著地变化;在各网络类型之间,分组延迟的变化可能以几个数量级(order)的量值而改变。
为了再现忠实于原始的音频流,必须以与发送数据分组的速率相同的恒定速率向解码器提供数据分组。因此,一般地在接收器中引入称为抖动缓冲器的装置。抖动缓冲器必须对进入的分组的流进行去抖动,并向解码器提供恒定的数据流。这是通过在缓冲器中保存分组而完成的,因此在接收器处引入延迟,使得经历了更大延迟的未来分组将在它们各自使用时间之前已经到达。换言之,在抖动缓冲器中需要分组以防止缓冲器下溢,或者至少最小化缓冲器处于下溢状态的时间。分组的长延迟不仅可能导致缓冲器变为空,而且还可以导致缓冲器在不可接受的长时间内为空。如果缓冲器变为空,则接收信号的连续回放不再可能,并且将延迟的分组作为丢失分组处理。然而,高缓冲器级别将引入接收器处的长延迟,这对于双路人类通信来说在本质上是有害的。
这是在一方面缓冲器延迟与另一方面由于晚到达而引起的分组丢失之间,抖动缓冲器中不可避免的折中。针对低缓冲器级别,以及因此的短延迟,由于对于连续回放来说它们将到达得太晚,因此导致分组的更大部分被丢弃,同时高缓冲器级别和长延迟对于双路人类通信来说是非常讨厌的。
在现有技术中,经常进行尝试,以估计和控制端对端延迟(即,从声源(如,麦克风)到目的地(如,扬声器)的总延迟)。该总延迟难以估计,并需要在发送和接收端的同步时钟。除了需要同步时钟之外,该解决方案遭受样本时钟偏移的问题。
本发明致力于解决如何确定抖动缓冲器级别(这提供了缓冲器延迟与分组丢失之间的适当的折中)的问题。
发明内容
本发明的目标是确定抖动缓冲器级别,这提供了缓冲器延迟与分组丢失之间的适当的折中。通过如独立权利要求1中定义的方法以及如独立权利要求14中定义的接收器来实现该目标。
本发明的基本构思是通过收集描述当前网络条件的统计值测量,使得抖动缓冲器适于这些条件,即:由接收器观测到的抖动的性质和量值。
根据本发明,以接收到的分组之间的到达之间的时间连续地更新概率质量函数。通过更新的概率质量函数,定义空抖动缓冲器的期望持续时间。
因此,根据真实信号的间断回放的持续时间,不是像那样关于分组丢失的概率而确定期望的缓冲器级别,而是关于分组丢失的效果确定期望的缓冲器级别。从通过接收侧感知的当前和最近的网络条件的统计值测量来推导该效果。当前和最近网络条件由更新的概率质量函数反映。使用概率质量函数,可以推导出“下溢”缓冲器的危险,即在下一分组到达缓冲器之前解码某一缓冲器级别上的所有分组的概率。此外,对于某一缓冲器级别,由概率质量函数给出空缓冲器的期望持续时间。该“停用时间”大约等于必须在缓冲器变为空时产生和播放的合成数据或者分组丢失隐藏数据的量。因此,本发明的优点是基于网络条件的连续统计值测量来确定适当的缓冲器级别。
本发明最小化价值函数,所述函数包括抖动缓冲器延迟和空缓冲器的期望持续时间。通过将加权因子应用到价值函数,以便关于空缓冲器的期望延迟时间加权抖动缓冲器延迟,本发明可以在确定期望的缓冲器级别时考虑由数据分组携带的业务(traffic)的类型。由于不同种类的数据业务可能关于由缓冲器引起的延迟与任意的数据间断回放的持续时间之间的折中具有不同的要求,因此这是有利的。
优选地,将实际的当前缓冲器级别与所确定的适当的或目标缓冲器级别进行比较。如果存在差异,则做出应该修改解码信号样本信息的长度的信令,即:加长或缩短。因此,在确定的目标缓冲器级别的方向中,间接地控制当前缓冲器级别。
从以下详细的描述中,本发明的进一步的特征以及其特点将变得更加易于显而易见。如理解的那样,对于本领域的技术人员来说,当研究这里提出的一般教导和以下详细的描述时,在由所附权利要求限定的本发明的范围内的各种修改、变更和不同的组合将变得显而易见。
附图说明
参照附图,将以更多细节描述本发明的示例性实施例,其中:
图1示意性地示出包括并配置来进行操作的发明性接收器的实施例的示例性系统;
图2是根据本发明的实施例的、图1中所示的接收器的控制逻辑部件的操作的流程图;以及
图3示出了用于滤波根据本发明的实施例的、图1中的抖动缓冲器的当前缓冲器级别的滤波器。
具体实施方式
参照图1,公开了示例性系统,其中包括发明性接收器的实施例,并将其配置来进行操作。发送端包括音频源110以及用于编码和分组化音频以在分组数据网络130(这里表示为因特网协议网络)上作为分组数据进行传输的编码器120。接收端包括接收器135和音频目的地140。接收器135包括抖动缓冲器150、解码器160、音频缓冲器170和控制逻辑部件180。控制逻辑部件180与抖动缓冲器交换信令信息(signaling information),并且还负责对解码器160和音频缓冲器170的信令。本发明关注接收器135的抖动缓冲器150和控制逻辑部件180。如将在下文中所述的那样,解码器160至少部分地由控制逻辑部件控制。然而,解码器160本身及其操作不形成本发明的部分,但描述在EP 1243090中。
控制逻辑部件180通过现有技术的硬件电路(包括处理电路和接口电路)的适当状态来实现,适于执行接收器135的存储器中存储的程序指令,以使控制逻辑部件根据本发明来操作。编程领域的技术人员在已经研究了本发明公开之后,将理解这些程序指令的设计。
参照图2中的流程图,现在将描述根据本发明的图1中的接收器135(更具体地说,控制逻辑部件180)的操作。
在步骤200,接收端处的接收器135从分组数据网络130接收具有数字化信号样本的数据分组。将接收到的分组插入到抖动缓冲器150中。在步骤210,控制逻辑部件180对接收分组的到达时间进行记录(log),以便还在步骤220,对定义为当前分组与先前分组的接收之间的时间的分组到达之间的时间进行记录。可替代地,不是对每一个分组的到达时间都进行记录,而是关于两个出现的连续分组以预定规则的间隔对两个连续分组之间的到达之间的时间进行记录。
继续到步骤230,由控制逻辑部件180更新分组到达统计值。根据以上情况,可以针对每一个接收到的分组更新统计值,或以规则的间隔更新统计值。在两个分组到达之间的经过时间具有关键影响,并且将用在接下来的推导中。让第k和第k+1个到来分组(incoming packet)的到达之间的时间为τk≥0。假设τk是对于所有k以某一PDF fτ(t)的随机变量。这里将所有时间标准化(normalize),以便分组携带具有持续时间1的语音信息,并且标称分组到达之间的时间也为1。此外,定义pτ(m)作为分组到达之间的时间在间隔m≤τ<m+1中的概率,即,
p &tau; ( m ) = Pr { m &le; &tau; < m + 1 } = &Integral; m m + 1 f &tau; ( t ) dt
函数pτ(m)表示对于四舍五入的到达之间的时间的概率质量函数(probabilitymass function)。通过控制逻辑部件180连续地更新该PMF,以便反映分组到达之间的时间。可以根据以下情况推导出对于m=0,1,......,M的该PMF pτ(m)的估计。
让m表示自从接收到上一分组起经过的整数个分组时间,其中分组时间是从分组携带的数据产生的音频的持续时间。(例如,如果分组时间是20ms并且上一分组在50ms之前到达,那么m=2,因为已经经过了两个完整的分组时间。)
在具有M+1个元素的矢量p=[p(0)p(1)...p(M)]中存储到达之间的时间统计值。第一个元素p(0)表示观测到分组到达之间的时间大于或等于0但小于1的概率,p(1)表示1和2之间的到达之间的时间,等等。最后一个元素p(M)表示观测到到达之间的时间大于或等于M的概率。给出所有时间作为分组时间。一旦观测到给定到达之间的时间,矢量p中的对应元素就朝向1增大,同时剩余元素减小。通过遗忘因子μ(其为设计变量)来管理增大和减小。以下步骤组成统计值更新方法:
1.当接收新分组时,计数自从接收到上一分组起经过的分组时间的数量。将该数量表示为m。
2.将上限M应用在测量的时间上:如果m>M,让m=M。
3.增大与当前测量的时间对应的统计值矢量元素:让第m个元素p(m)更新为μp(m)+(1-μ)。
4.减小剩余统计值矢量元素:将每一个元素(除了p(m)之外)乘以因子μ。
矢量p将是分组到达之间的时间概率密度函数(PDF)的恒定的展开估计(constantly evolving estimate),并且应该通过总和为1来构建。PDF估计指示网络条件是什么。
估计到达之间的时间统计值的目的是计算适于当前网络条件的缓冲器级别。如果网络条件比较好(fair),则观测到到达分组之间的非常长的时段的概率很小,并且低缓冲器级别是合适的。相反,如果相同的概率高,则缓冲器中的分组数量应该保持得更高,以便准备用于没有到来的分组的长时段。
确定适当的缓冲器级别是在接收器处的低内部延迟与对抗网络抖动的强壮性(robustness)之间的折中,这是因为这两种需求是矛盾的。内部延迟简单地是缓冲器级别B。对抗网络抖动的强壮性的量度标准是给定缓冲器级别B的缓冲器下溢的持续时间,即:空抖动缓冲器的期望持续时间。在该上下文中,B是任意缓冲器级别。
在步骤240,由控制逻辑部件180定义空抖动缓冲器的期望的持续时间。假设任意缓冲器级别B,即在抖动缓冲器中存在B个分组,如果在下一分组到达之前我们已经解码和使用了所有B个分组,则出现下溢。换言之,如果上一接收到的分组与下一分组之间的到达之间的时间大于B·Tframe秒,其中Tframe是在每一个分组中携带的音频数据的长度,则缓冲器下溢发生。假设我们在缓冲器中具有B个分组,可以在PDFfτ(t)中将下溢的概率表示为
Pr { underflow | B } = &Integral; B &infin; f &tau; ( t ) dt
类似地,下溢的期望长度(即,必须产生的隐藏数据的大体长度)可以写为
E [ length ( underflow ) | B ] = &Integral; B &infin; ( t - B ) f &tau; ( t ) dt
因此,以上等式定义给定缓冲器级别B的空抖动缓冲器的期望持续时间。
如以上所讨论的那样,在空抖动缓冲器的低期望持续时间方面,确定适当的缓冲器级别是在接收器处的低内部延迟与对抗网络抖动的强壮性之间的折中。这两个量的组合形成需要解决的最优化问题的基础。
因此,在步骤250,控制逻辑部件180被配置为定义和利用价值函数,其中对这两个量进行加权和组合。一般地,价值函数与(例如)空抖动缓冲器的期望持续时间与缓冲器级别B的抖动缓冲器延迟的函数(如,求和)对应。
&eta; ( B ) = C &CenterDot; B + E [ length ( underflow ) | B ] = C &CenterDot; B + &Integral; B &infin; ( t - B ) f &tau; ( t ) dt
参数C是设置所述两个量的相对重要性的加权因子。大的C值将更严厉地惩罚(punish)大的内部缓冲器延迟,而小C值将惩罚严重的缓冲器下溢。目标是寻找最小化价值函数的B。
在步骤260,控制逻辑部件180关于缓冲器级别B最小化价值函数,由此推导出目标缓冲器级别。分析地,这通过以下方式而执行该推导。
以关于B微分η(B)并使结果等于0开始推导目标缓冲器级别:
d dB &eta; ( B ) = C - &Integral; B &infin; f &tau; ( t ) dt &equiv; 0 &DoubleLeftRightArrow; &Integral; B * &infin; f &tau; ( t ) dt = C .
也就是说,从B*到无穷的fτ(t)的积分等于C的值B*是价值函数η(B)的极值。因为fτ(t)≥0且积分到1,因此对于所有0<C<1,最佳值是唯一的,并且被良好地定义。此外,二次微分η(B)产生正结果,指示η(B)是具有一个唯一最小值的凸函数。
使用连续函数fτ(t)给出以上结果,同时在实施的方法中的可用统计值是离散版本的pτ(m)。因此,我们必须根据离散的统计值来重写以上最优性标准。
首先,我们使用这样的事实
&Integral; 0 &infin; f &tau; ( t ) dt = 1 &DoubleLeftRightArrow; &Integral; B * &infin; f &tau; ( t ) dt = 1 - &Integral; 0 B * f &tau; ( t ) dt
以将最优性标准写为
1 - &Integral; 0 B * f &tau; ( t ) dt = C .
现在,由于
p &tau; ( m ) = Pr { m &le; &tau; < m + 1 } = &Integral; m m + 1 f &tau; ( t ) dt ,
所以从0到B*的fτ(t)的积分可以表示为
&Integral; 0 B * f &tau; ( t ) dt = &Sigma; m = 0 B * - 1 p &tau; ( m ) ,
但是仅当B*是整数值时。对于非整数值,保持以下不等式
&Sigma; m = 0 B * - 1 p &tau; ( m ) < &Integral; 0 B * f &tau; ( t ) dt < &Sigma; m = 0 B * p &tau; ( m )
因此,我们不能期望找到1减去所述求和结果精确地为C的B*(如最优性标准中规定的那样)。因此,我们定义目标缓冲器级别是最小的B,以便1减去pτ(0)、pτ(1)、...、pτ(B)之和小于或等于C。这可以表示为
B * = arg min B { B : 1 - &Sigma; m = 0 B p &tau; ( m ) &le; C } .
(可以等效地将该公式用公式表示为从最后元素pτ(M)朝向第一元素的向后进行的和。)
因此,图2中的步骤260关注求解以上最后一个表达式以推导B*。实现步骤260的一种方式是通过进行以下计算步骤5-8(上述统计值更新方法的步骤1-4之后)。在以下步骤中,C表示加权因子。
5.将变量S设置为1。
6.将变量B初始化为0。
7.从S中减去统计值矢量元素p(B):
S:=S-p(B)
8.当S>C且B<M时,将B增大1,并返回到步骤7。否则,使用B的值作为目标缓冲器级别B*
根据有益的实施例,控制逻辑部件在步骤270将目标缓冲器级别与抖动缓冲器150的当前缓冲器级别进行比较。根据一个实施例,将目标缓冲器级别B*与当前缓冲器级别的滤波版本Bf(而不是瞬时缓冲器级别B)进行比较。由于瞬时缓冲器级别具有固有变化(其宁愿不立即响应),所以完成上述比较。
当前缓冲器级别受以下三个处理影响:
·分组从网络进入缓冲器;
·从缓冲器中取出分组以进行解码和播放(playout);
·由于用以减小或增大缓冲器级别的主动(active)决定(下文中进一步讨论这些决定)的缓冲器级别修改。
将前两个处理看作具有随机性质,并且应该优选地平滑。后一处理由仔细考虑的且已知的缓冲器级别修改组成,并且这些应该优选地立即影响滤波的缓冲器级别,而不进行滤波。
由通过控制逻辑部件180实现的缓冲器级别低通滤波器(例如,如在图3中描绘的滤波器)来执行平滑。根据滤波器的实施例,以具有指数地衰减的脉冲响应的IIR(无限脉冲响应)的形式的指数窗构成该使用。在图3中,B(n)是作为由抖动缓冲器150报告的、在时间n处当前滤波器级别,Bf(n)是在时间n处的滤波的缓冲器级别,D是一级(one-step)延迟块,ΔB(n-1)是自从上一滤波器更新起完成的主动缓冲器级别修改(对于级别增大为正,而对于级别减小为负)。矢量v是滤波器系数,确定滤波器的响应。
在该示例性实施中使滤波器系数v自适应,由以下自变量激发。在分组到达之间的时间上具有很大变化的网络方案中,在瞬时缓冲器级别中的自然的波动更大,且期望更大的v,以便增大噪声抵抗力。当网络条件更好时,可以应用更小的v以改进响应时间。最优缓冲器级别B*是当前网络条件的指示符:较大的B*暗示在到达之间的时间中的更大变化,并且应该导致更大的滤波器系数v,反之亦然。
每当播放音频时由控制逻辑部件180执行滤波处理,并且总结为如下步骤9-14(在上述计算步骤5-8之后):
9.基于最优缓冲器级别B*来计算滤波器系数v:
v = 250 / 256 , B * = 0 ; 251 / 256 , B * = 1 ; 252 / 256 , 2 &le; B * &le; 3 ; 253 / 256 , 4 &le; B * &le; 7 ; 254 / 256 , B * &GreaterEqual; 8 .
10.测量抖动缓冲器中分组B的当前数量(可能是分组的一小部分)。将该级别乘以1-v。
11.将该乘积与乘以滤波器系数v的、来自先前滤波器更新的滤波的缓冲器级别相加。
12.将通过主动抖动缓冲器扩展插入到抖动缓冲器的数据量(可能是分组的一小部分)与以上和(sum)相加。
13.从以上和中减去通过主动抖动缓冲器相减从抖动缓冲器中除去的数据量(可能是分组的一小部分)。
14.该结果是新的滤波的缓冲器级别。
因此,在计算目标缓冲器级别以及可能的滤波的缓冲器级别之后,控制逻辑部件180将目标缓冲器级别与当前缓冲器级别或当前滤波的缓冲器级别进行比较,以做出关于应该在目标缓冲器级别的方向上修改当前缓冲器级别的任意信令的决定。该比较与结果信令是非常直接的,并且以接下来的步骤15和16描述:
15.如果(滤波的)当前缓冲器级别充分地大于目标缓冲器级别,那么做出应该减少缓冲器中的数据的信令。优选地,如果Bf>a·B(其中a是大于或等于1的参数),则做出应该减少缓冲器中的数据的信令。
16.如果(滤波的)当前缓冲器级别充分地小于目标缓冲器级别,那么做出应该增多缓冲器中的数据的信令。优选地,如果Bf<b·B(其中b是小于或等于1的参数),则做出应该增多缓冲器中的数据的信令。
参数a和b定义目标缓冲器级别B*周围的容限窗口。如果当前级别处于该窗口内,则不调整缓冲器级别,即,不需要信令。从控制逻辑部件180向解码器160或向音频缓冲器170做出应该减少或增多缓冲器中的数据的信令。响应于该信令,解码器160或音频缓冲器170将修改解码信号样本信息的长度。这将导致来自抖动缓冲器150的、解码器160的分组需要的改变,即:将增大或减小从抖动缓冲器150读取分组的频率,由此减小或增大缓冲器级别。然而,如何减小或增大缓冲器级别的实际实施在该发明的范围之外。对于这种实施的详细描述,参照EP 1 243 090。

Claims (25)

1、响应于分组数据网络的当前网络条件确定抖动缓冲器中的目标缓冲器级别的方法,所述抖动缓冲器从分组数据网络接收具有数字化信号样本的数据分组,所述方法包括以规则的间隔执行如下步骤:
对于最近接收到的分组,记录被定义为自从接收到前一分组起经过的时间的分组到达之间的时间;
响应于记录步骤,更新反映分组到达之间的时间的概率质量函数;
使用更新的概率质量函数以定义任意缓冲器级别的空抖动缓冲器的期望持续时间;
提供价值函数作为在任意缓冲器级别的空缓冲器的期望持续时间和在相同任意缓冲器级别的抖动缓冲器延迟的函数,其中将加权因子应用到抖动缓冲器延迟;以及
确定目标缓冲器级别作为最小化价值函数的抖动缓冲器级别。
2、根据权利要求1所述的方法,其中将价值函数定义为加权的抖动缓冲器延迟与空抖动缓冲器的期望持续时间之和。
3、根据权利要求1或2的方法,包括:
将当前缓冲器级别与目标缓冲器级别进行比较;以及
如果比较步骤导致两个级别之间的差异,则做出应该修改所解码的信号样本信息的长度的信令,其中所述信令通过影响向缓冲器做出的数据分组需求,在目标缓冲器级别的方向上,间接地控制当前缓冲器级别。
4、根据权利要求1到3中任意一个所述的方法,其中倘若当前缓冲器级别与目标缓冲器级别之间的差异大于预定容限窗口,则执行所述信令。
5、根据权利要求1到4中任意一个所述的方法,其中对于每一个接收到的分组执行所述方法的步骤。
6、根据权利要求3到5中任意一个所述的方法,包括当执行所述比较步骤时低通滤波当前缓冲器级别。
7、根据权利要求6所述的方法,其中低通滤波包括以具有指数地衰减的脉冲响应的无限脉冲响应滤波器进行滤波。
8、根据权利要求1到7中任意一个所述的方法,其中在所述价值函数中,抖动缓冲器延迟和空缓冲器的期望持续时间被赋予相等权重。
9、根据权利要求1到7中任意一个所述的方法,其中在所述价值函数中,抖动缓冲器延迟被赋予比空缓冲器的期望持续时间更多的权重。
10、根据权利要求8或9所述的方法,其中具有数字化信号样本的数据分组包括语音信号的样本。
11、根据权利要求1到7中任意一个所述的方法,其中在所述价值函数中,空缓冲器的期望延迟时间被赋予比抖动缓冲器延迟更多的权重。
12、根据权利要求8或11所述的方法,其中具有数字化信号样本的数据分组包括无线电信号的样本。
13、具有用于当在处理单元上运行时执行根据权利要求1到12中的任意一个所述的方法的每一个步骤的计算机可执行指令的计算机可读介质。
14、一种用于从分组数据网络接收具有数字化信号样本的数据分组的接收器,所述接收器包括:
抖动缓冲器,用于存储接收到的数据分组,其中缓冲器级别指示存储的数据分组的量;以及
控制逻辑部件,用于以规则的间隔,响应于分组数据网络的当前网络条件确定抖动缓冲器中的目标缓冲器级别,所述控制逻辑部件适于:
对于最近接收到的分组,记录被定义为自从接收到前一分组起经过的时间的分组到达之间的时间;
响应于记录步骤,更新反映分组到达之间的时间的概率质量函数;
使用更新的概率质量函数以定义任意缓冲器级别的空抖动缓冲器的期望持续时间;
提供价值函数作为在任意缓冲器级别的空缓冲器的期望持续时间和在相同任意缓冲器级别的抖动缓冲器延迟的函数,其中将加权因子应用于抖动缓冲器延迟;以及
确定目标缓冲器级别作为最小化所述价值函数的抖动缓冲器级别。
15、根据权利要求14所述的接收器,其中将所述价值函数定义为加权的抖动缓冲器延迟与空抖动缓冲器的期望持续时间之和。
16、根据权利要求14或15所述的接收器,所述控制逻辑部件进一步适于:
将当前缓冲器级别与目标缓冲器级别进行比较;以及
如果所述比较导致所述两个级别之间的差异,则做出应该修改所解码的信号样本信息的长度的信令,其中所述信令通过影响向缓冲器做出的数据分组需求,在目标缓冲器级别的方向上,间接地控制当前缓冲器级别。
17、根据权利要求14到16中任意一个所述的接收器,其中只有当前缓冲器级别与目标缓冲器级别之间的差异大于预定容限窗口,才执行所述信令。
18、根据权利要求14到17中任意一个所述的接收器,其中所述控制逻辑部件适于对于每一个接收到的分组执行其操作。
19、根据权利要求14到18中任意一个所述的接收器,所述控制逻辑部件进一步适于当执行所述比较操作时低通滤波当前缓冲器级别。
20、根据权利要求19所述的接收器,其中低通滤波包括以具有指数地衰减的脉冲响应的无限脉冲响应滤波器进行滤波。
21、根据权利要求14到20中任意一个所述的接收器,其中在所述价值函数中,抖动缓冲器延迟和空缓冲器的期望持续时间被赋予相等权重。
22、根据权利要求14到20中任意一个所述的接收器,其中在所述价值函数中,抖动缓冲器延迟被赋予比空缓冲器的期望持续时间更多的权重。
23、根据权利要求21或22所述的接收器,其中具有数字化信号样本的数据分组包括语音信号的样本。
24、根据权利要求14到20中任意一个所述的接收器,其中在所述价值函数中,空缓冲器的期望持续时间被赋予比抖动缓冲器延迟更多的权重。
25、根据权利要求21或24所述的接收器,其中具有数字化信号样本的数据分组包括无线电信号的样本。
CN200880022334.1A 2007-06-28 2008-06-24 用于确定抖动缓冲器级别的方法和接收器 Active CN101689946B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
EP07111282.5 2007-06-28
EP07111282A EP2009820B1 (en) 2007-06-28 2007-06-28 Method and receiver for determining a jitter buffer level
US11/822,025 US7733893B2 (en) 2007-06-29 2007-06-29 Method and receiver for determining a jitter buffer level
US11/822,025 2007-06-29
PCT/EP2008/057991 WO2009000821A1 (en) 2007-06-28 2008-06-24 Method and receiver for determining a jitter buffer level

Publications (2)

Publication Number Publication Date
CN101689946A true CN101689946A (zh) 2010-03-31
CN101689946B CN101689946B (zh) 2013-10-02

Family

ID=39791637

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200880022334.1A Active CN101689946B (zh) 2007-06-28 2008-06-24 用于确定抖动缓冲器级别的方法和接收器

Country Status (2)

Country Link
CN (1) CN101689946B (zh)
WO (1) WO2009000821A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105939289A (zh) * 2015-12-21 2016-09-14 小米科技有限责任公司 网络抖动处理方法、装置和终端设备

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2408165B1 (en) 2010-07-14 2012-10-03 Google, Inc. Method and receiver for reliable detection of the status of an RTP packet stream
US9680507B2 (en) 2014-07-22 2017-06-13 Qualcomm Incorporated Offset selection for error correction data

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5623483A (en) * 1995-05-11 1997-04-22 Lucent Technologies Inc. Synchronization system for networked multimedia streams
US6072809A (en) * 1997-08-14 2000-06-06 Lucent Technologies, Inc. Statistical method for dynamically controlling the playback delay of network multimedia streams
US6259677B1 (en) * 1998-09-30 2001-07-10 Cisco Technology, Inc. Clock synchronization and dynamic jitter management for voice over IP and real-time data
JP3344401B2 (ja) * 2000-03-03 2002-11-11 日本電気株式会社 ゆらぎバッファ制御装置
AU2001259868A1 (en) * 2000-05-18 2001-11-26 Brix Networks, Inc. Ip packet identification method and system for tcp connection and udp stream
US7110422B1 (en) * 2002-01-29 2006-09-19 At&T Corporation Method and apparatus for managing voice call quality over packet networks
US7190669B2 (en) * 2002-07-09 2007-03-13 Hewlett-Packard Development Company, L.P. System, method and computer readable medium for flow control of data traffic

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105939289A (zh) * 2015-12-21 2016-09-14 小米科技有限责任公司 网络抖动处理方法、装置和终端设备
WO2017107544A1 (zh) * 2015-12-21 2017-06-29 小米科技有限责任公司 网络抖动处理方法、装置和终端设备
US10129161B2 (en) 2015-12-21 2018-11-13 Xiaomi Inc. Method and apparatus for handling network jitter
CN105939289B (zh) * 2015-12-21 2019-03-12 小米科技有限责任公司 网络抖动处理方法、装置和终端设备

Also Published As

Publication number Publication date
CN101689946B (zh) 2013-10-02
WO2009000821A1 (en) 2008-12-31

Similar Documents

Publication Publication Date Title
US7733893B2 (en) Method and receiver for determining a jitter buffer level
US7359324B1 (en) Adaptive jitter buffer control
US20200266839A1 (en) Media Controller with Buffer Interface
US7577565B2 (en) Adaptive voice playout in VOP
US7450601B2 (en) Method and communication apparatus for controlling a jitter buffer
US7110422B1 (en) Method and apparatus for managing voice call quality over packet networks
KR100964437B1 (ko) V o I P 용 적응성 디-지터 버퍼
EP1458145A1 (en) Error concealment apparatus and method
CN101421996A (zh) 在无线网络中估计无线处理设备队列长度和估计信号接收质量
US6072809A (en) Statistical method for dynamically controlling the playback delay of network multimedia streams
US7957303B2 (en) Communication quality evaluation method, derivation device, communication quality evaluation system and computer program
CN103888381A (zh) 用于控制抖动缓冲器的装置和方法
CN101636945A (zh) 在通信系统中传输数据的方法
EP2117139A1 (en) A service assembly method and system
CN101689946B (zh) 用于确定抖动缓冲器级别的方法和接收器
US20040258047A1 (en) Clock difference compensation for a network
CA2438905A1 (en) Method for tuning voice playback ratio to optimize call quality
Oklander et al. Jitter buffer analysis
JP4800250B2 (ja) 必要十分な受信バッファサイズを決定するパケット受信装置、方法及びプログラム
CN107770124A (zh) 一种ip语音缓冲区的动态控制方法及装置
Li et al. Adaptive playout scheduling for VoIP using the K-Erlang distribution
EP2009820B1 (en) Method and receiver for determining a jitter buffer level
Ranganathan et al. Neural and fuzzy computation techniques for playout delay adaptation in VoIP networks
Rubin et al. On improving voice quality under dynamic encoding algorithms in ATM networks
Turkes et al. Priority-Based Voice Segmentation and Transmission in Quality-Driven Wireless Audio Sensor Networks.

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Free format text: FORMER OWNER: GLOBAL IP SOLUTIONS INC. (US)

Owner name: GOOGLE INC.

Free format text: FORMER OWNER: GLOBAL IP SOLUTIONS INC.

Effective date: 20111111

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20111111

Address after: American California

Applicant after: Google Inc.

Address before: Stockholm

Applicant before: Global IP solutions (GIPS) limited liability company

Co-applicant before: Global IP Solutions Inc.

C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee
CP01 Change in the name or title of a patent holder

Address after: American California

Patentee after: Google Inc.

Address before: American California

Patentee before: Google Inc.

CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: American California

Patentee after: Google limited liability company

Address before: American California

Patentee before: Google Inc.