CN101506754B - 时钟偏移补偿 - Google Patents
时钟偏移补偿 Download PDFInfo
- Publication number
- CN101506754B CN101506754B CN2006800556783A CN200680055678A CN101506754B CN 101506754 B CN101506754 B CN 101506754B CN 2006800556783 A CN2006800556783 A CN 2006800556783A CN 200680055678 A CN200680055678 A CN 200680055678A CN 101506754 B CN101506754 B CN 101506754B
- Authority
- CN
- China
- Prior art keywords
- communication equipment
- impact damper
- received communication
- audio samples
- grouping
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/10—Distribution of clock signals, e.g. skew
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/062—Synchronisation of signals having the same nominal but fluctuating bit rates, e.g. using buffers
- H04J3/0632—Synchronisation of packets and cells, e.g. transmission of voice via a packet network, circuit emulation service [CES]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0016—Arrangements for synchronising receiver with transmitter correction of synchronization errors
- H04L7/002—Arrangements for synchronising receiver with transmitter correction of synchronization errors correction by interpolation
- H04L7/0029—Arrangements for synchronising receiver with transmitter correction of synchronization errors correction by interpolation interpolation of received data signal
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
在接收通信设备(2)中补偿接收通信设备(2)与发送通信设备(1)的时钟频率所控样本率之间差别的方法和装置,发送通信设备传送包括M个音频样本的分组,分组在播出前要存储在接收通信设备中容纳至少2·M个样本的缓冲器(5)中。补偿涉及从M个音频样本接收的预期与实际接收时间点之间差别不断更新估计(520)时钟偏移,计算(525)要在播出前从所述缓冲器读取音频样本的调整的数量N,以及通过内插,将读取的N个音频样本重新采样(535)为M个音频样本以便播出。
Description
技术领域
本发明涉及能够接收音频样本分组的通信设备,并且更具体地说,涉及在接收通信设备中补偿所述接收通信设备与发送通信设备之间的时钟频率差别的方法和装置,时钟频率控制音频样本率。
背景技术
在常规电话交换电话网络中,每个电话交换机接收分层分发到网络中每个节点的同步时钟信号,由此实现同步通信。然而,此类分层同步在分组交换网络中并不是始终可能的,例如,在个人计算机通过因特网通信时。
在例如IP(因特网协议)电话中,话音样本从发送通信设备转发到接收通信设备,并且连接的等待时间或延迟限定了数据分组在发送通信设备与接收通信设备之间传输所需的时间。分组暂时存储在分组交换网络节点中的缓冲器中,并且缓冲器中变化的存储时间导致延迟变化,这称为延迟抖动(jitter)。虽然电路交换网络通常设计为将抖动降到最低,但分组交换网络设计为通过为后面的传输将缓冲器中的分组排队而最大化链路利用,这将增加延迟抖动。
用于通过IP网络携带话音信号的协议通常称为VoIP(因特网话音协议),允许统一的网络用于多个服务。输入IP电话呼叫可自动路由到位于任何地方的IP电话,因此,用户可在旅行期间使用同一电话号码拨打和接收电话呼叫,而无论在任何位置。然而,VoIP涉及诸如延迟、分组丢失和上述延迟抖动等缺陷。在播出缓冲器由于下一话音分组未到达而用光要播出话音数据时,延迟抖动可导致缓冲器欠载运行,但抖动的后果通常通过位于接收通信设备中的去抖动缓冲器而降低。去抖动缓冲器在分组的音频样本播出前添加了可变的额外延迟以保持总体延迟时间不变或缓慢变化,以便根据当前网络条件将在某一给定分组丢失率的整体延迟降到最低。因此,由于延迟抖动而发生的缓冲器欠载运行可得以避免,但总体延迟会增大。
另外,由于例如时钟的石英晶体振荡器的差别,控制接收通信设备中样本接收的时钟频率与发送通信设备的时钟频率不完全相同。样本的发射时钟频率fTx与接收时钟频率fRx之间的差别通常称为时钟偏移。时钟的精确度A经常以ppm(百万分之)表示,并且在现有IP电话连接中,时钟偏移通常小于60ppm(百万分之),但在一些情况下可达到300ppm。在包含M个样本的数据分组中,分组的时间段为M/f,并且在发射器与接收器中分组时间段之间的实际差别可表示为τ=(M/fTx)-(M/fRx),这有时称为时钟偏移参数,但在下文称为时钟偏移τ,它可具有正值或负值。
接收器中时钟与发射器中时钟指示的时间点之间的差别将随着时间而累积,并且导致问题。如果发射器的时钟频率高于接收器的时钟频率,则时钟偏移τ为负值,并且接收器将不断接收超过其遵循其自己的时钟频率能够播出的样本,这将导致接收器中播出缓冲器的超限运行。然而,如果发射器中的时钟频率比接收器中低,则时钟偏移为正值,并且接收器中的播出缓冲器将在某个间隔用完要播出的音频样本,即,欠载运行。
接收器可具有只容纳一个分组样本的播出缓冲器,并且这些样本在播出时从缓冲器读取。如果新分组在前一分组已从缓冲器播出前到达,则前一分组将在播出前被写覆盖(write over),导致分组滑移(packetslip)。类似地,如果缓冲器的数据在分组到达前播出,则无数据要读取,这也将导致分组滑移。
因此,在预期分组到达时间中累积的误差达到接收通信设备的分组时间段M/fRx时,播出缓冲器的超限运行和欠载运行均将导致以规则的时间间隔发生分组滑移,其中,M是分组中音频样本的数量。由于大的时钟偏移将导致更频繁的分组滑移,因此,分组滑移之间的时间段与时钟偏移的大小逆相关(depend inversely)。根据上述关系,在分组滑移之间的时间段平均值TPER可计算为1/(1-fTx/fRx)的绝对值。抖动的影响产生了在分组滑移之间围绕此平均值变化的实际时间段。因此,延迟抖动和时钟偏移将均对同步误差有影响。然而,延迟抖动的效应可如上所述通过去抖动缓冲器避免,但时钟偏移仍将导致播出缓冲器的超限运行或欠载运行。
时钟偏移的效应可通过例如使用GPS(全球定位系统)不断调整时钟频率而降低。然而,这不是始终可能的,例如,在音频样本率受标准个人计算机音频卡中独立的硬件时钟控制时,或者在IP网络和PSTN(公共交换电话网络)通过媒体网关互连时,这种情况下,音频样本的播出速率始终与PSTN时钟同步。所谓的媒体网关一般用于连接不同类型的通信网络,并且能够将数据从一种类型网络所需的格式转换为另一类型网络所需的格式。
补偿时钟偏移的另一种方法是通过信号处理,例如,通过每次接收器时钟相对发射器时钟多出(gain)一个样本时间时在播出缓冲器中重复样本值,并且每次接收器时钟少去(lost)一个样本时间时对应地删除一个样本。然而,这导致了播出质量降低。样本的添加/删除在静音期间执行时可实现更高的质量,但这只在背景相对无声时才可满足。
在Trump的“指数噪声中的最大似然趋势估计”,IEEE信号处理汇刊,卷49,号9(“Maximum Likelihood Trend Estimation inExponential Noise”,IEEE Transactions on Signal Processing,Vol.49,No.9),2001年9月,第2087-2095页中,提出了如何估计噪声中的线性趋势,特别是如何得到用于估计所述时钟偏移的递归算法,这可在实时应用中使用。此外,Trump在“通过语音内插补偿通过分组网络的话音中的时钟偏移”,IEEE电路与系统国际论坛(“Compensation for clock skew in voice over packet networks by speechinterpolation”,Proc.IEEE International Symposium on Circuits andSystems,)Vol.5,pp.V-608-V-611,2004年5月中描述了一种用于通过在接收通信设备中执行已接收音频样本的更复杂信号处理而补偿时钟偏移的算法。算法根据时钟偏移估计,对接收器中播出缓冲器中的样本数量执行重新采样,并且重新采样涉及样本内插,优选是使用样条内插。重新采样是通过将采样率除以/乘以一个适当的重新采样系数而更改信号采样率的过程,为向下采样或向上采样,并且内插涉及从已知样本构建另外样本。虽然在已知样本上执行的线性内插在样本之间插入线性函数,但样条内插在已知样本之间的每个间隔中使用低阶多项式。然而,上述理论在实际通信系统中难以实现,这是因为它们适用于完整的测试矢量,并且无法在每个已接收分组上持续应用。
因此,在时钟无法同步时,时钟偏移仍造成应用中的问题,导致音频内容中的分组丢失和干扰。
发明内容
本发明的目的是解决上面概述的问题并为时钟偏移提供有效的补偿。此目的和其它目的根据所附独立权利要求的方法和装置得以实现。
根据一方面,提供了在接收通信设备中补偿接收通信设备与发送通信设备的时钟频率所控样本率之间差别的方法。发送通信设备将包括M个音频样本的分组传送到接收通信设备,并且接收0、1或2个分组且存储在接收通信设备中的缓冲器中,该缓冲器容纳至少2·M个音频样本。此外,从所述音频样本的预期接收时间点与实际接收时间点之间计算得出的累积差别,不断更新时钟偏移τ的估计。播出前,使用所述时钟偏移的估计来计算要从所述缓冲器读取的音频样本调整的数量N,并且从缓冲器读取数量调整的N个音频样本。之后,通过内插,将N个音频样本重新采样为M个样本以便播出。
所述接收通信设备可以是最终用户终端、媒体网关或充当网络节点的任何其它通信设备。
方法可包括控制缓冲器中存储的样本数量b的另外步骤,包括计算要从所述缓冲器读出的样本已调整值Nlim。因此,进一步降低了例如估计误差引起的分组滑移。
在N大于缓冲器中存储的样本数量b时,Nlim可等于b以防止缓冲器下溢,并且在b大于2·M时等于b-M以防止上溢。
备选,为避免需要单独的去抖动缓冲器,Nlim可在N大于b-B0时等于缓冲器中存储的样本数量b减去B0,在b大于B0+2·M时等于b-(B0+M),其中,B0的值取决于Tjitter和接收通信设备的时钟频率的值。Tjitter值为选定的时间间隔,该间隔是分组播出前被延迟以补偿延迟抖动的间隔,并且它可以是固定的或自适应的。
内插方法可包括样条内插,如三次样条内插,并且所述分组可以是IP分组,即根据因特网协议封装和传送的分组。
根据另一方面,提供了在接收通信设备中补偿接收通信设备与发送通信设备的时钟频率所控样本率之间差别的装置。发送通信设备将包括M个音频样本的分组传送到接收通信设备,并且补偿在每个分组播出前执行。装置包括容纳至少2·M个样本,用于存储0、1或2个已接收分组的缓冲器、用于从计算得出的M个音频样本预期接收时间点与实际接收时间点之间的累积时间差别,不断更新时钟偏移估计的时钟偏移估计单元、用于从所述时钟偏移的估计计算在播出前要从所述缓冲器读取的音频样本的调整的数量N的转换单元及通过内插将从缓冲器读取的N个音频样本重新采样为要播出的M个音频样本的内插单元。
所述接收通信设备可以是最终用户终端、媒体网关或充当网络节点的任何其它通信设备。
装置可还包括用于通过计算要从所述缓冲器读出的样本已调整值Nlim,控制缓冲器中存储的样本数量b的限制单元。在N大于缓冲器中存储的样本数量b时,Nlim可等于b以防止缓冲器下溢,并且在b大于2·M时等于b-M。由此进一步降低了例如估计误差引起的分组滑移。
备选,为避免需要单独的去抖动缓冲器,Nlim可在N大于b-B0时等于缓冲器中存储的样本数量b减去B0,而在b大于B0+2·M时等于b-(B0+M),其中,B0的值取决于Tjitter和接收通信设备的时钟频率的值。
内插单元可以是样条内插单元,并且更具体地说三次样条内插单元,并且所述分组可以是IP分组,即根据因特网协议封装和传送的分组。
附图说明
下面将参照附图更详细地描述本发明,其中:
-图1以示意图方式示出通过分组交换网络通信的两个通信设备,
-图2是示出分组预期到达时间误差累积的图形,
-图3以示意图方式示出包括去抖动缓冲器的接收器,
-图4是示出时钟偏移补偿装置逻辑功能的方框图,以及
-图5是根据本发明第一实施例的时钟偏移补偿方法的流程图,以及
-图6是示出时钟偏移补偿装置的第二和第三实施例,包括限制单元的方框图。
具体实施方式
因此,本发明补偿由可以是最终用户通信设备或例如媒体网关等所谓电信网络节点的发送通信设备与接收通信设备中不同的非同步时钟频率引起的时钟偏移。这通过在接收通信设备中通过补偿过程补偿在播出缓冲器中发生的超限运行和欠载运行而得以实现,该过程在包含M个音频样本的每个已接收分组上逐个分组执行。
补偿过程首先执行0、1或2个分组的M个样本的预期到达时间中累积误差的计算和时钟偏移估计的不断更新。之后,在分组输送时,它从估计的时钟偏移执行要从播出缓冲器读取的不同数量N个样本的时钟偏移补偿计算,并通过内插,根据系数M/N执行N个读取样本的重新采样,由此形成其中补偿了时钟偏移的要播出的M个音频样本。
重新采样是一种处理过程,其中,到来的样本用作形成以不同速率(即,每个时间帧的样本数)播出的第二样本集的基础。此第二样本集与接收通信设备是同步的,表示从发送通信设备使用样本的速率是可由重新采样处理过程控制的。因此,发送通信设备与接收通信设备之间时钟频率的差别补偿得以实现,并且不同时钟频率引起的大多数分组滑移可以消除。
根据本发明的时钟偏移补偿引入的时间延迟是至少一个分组周期M/fRx,这是因为否则将发生分组滑移,例如,在fTx小于fRx时的情况下。分组滑移将由于估计误差而仍会发生,但分组滑移之间的时间段会大大增加。
然而,为降低所述估计误差引起的分组滑移,可监视缓冲器中的实际样本数量b并将其限制为介于0到2·M之间。如果请求从缓冲器读出比缓冲器中实际样本数量b更多的N个样本,则将只读取所有存在的(remaining)样本以避免下溢,并且如果缓冲器中实际样本数量b大于2·M,则将读取超出M的所有其余样本以避免上溢。这根据本发明的第二实施例,通过涉及缓冲器中实际样本数量b与要从缓冲器中读取的样本数量N的计算得出值之间比较的限制过程,并且借助于数量2·M及通过相应地要从缓冲器读出的样本数量N的调整而得以实现。如果值N大于数量b,则N调整为等于b,如果b大于2·M,则N调整为等于b-M。因此,大多数剩余分组滑移得以消除,并且平均时间延迟限制为M/fRx。
根据本发明的第三实施例,时钟偏移补偿过程也补偿延迟抖动,因此,另外的常规去抖动缓冲器将不需要。这通过在缓冲器中引入另外数量的B0个样本以补偿延迟抖动,B0≈fRX·Tjitter,并且通过适当调整要读出的样本数量N,将播出缓冲器中样本的数量b限制为介于B0与B0+2·M之间而得以实现。如果N大于缓冲器中实际数量b减B0个样本,则N调整为b-B0以避免下溢,并且始终在缓冲器中保持B0个样本。对应地,如果b大于B0+2·M,则N调整为等于b-(B0+M)。只要分组按顺序到达,补偿过程便可配置用于任何Tjitter值,而不引起失真。因此,由于不需要单独的去抖动缓冲器,简化了接收通信设备的配置。
图1示出通过分组交换网络3通信的两个通信设备,根据技术领域内技术人员的常识,两个通信设备一般能够均通过合适的硬件和软件,作为发射通信设备和接收通信设备运行。然而,在此图中,通信设备1之一表示为发射通信设备Tx,并且另一通信设备2表示为接收通信设备Rx。发射通信设备和接收通信设备的时钟不同步,并且在发射通信设备1中以采样频率fTx采样的音频信号将在接收通信设备2中通过稍微不同的采样频率fRx播出。发射通信设备1将分组发送到接收通信设备2,每个分组包含M个音频样本,M一般是40的倍数,如40、80和160,并且分组的每个音频样本在由发射通信设备1时钟频率fTx控制的时刻tTx传送。分组由接收通信设备在由接收通信设备时钟频率fRx控制的预期时刻tRx预期,而预期的传输延迟时间dRx已添加到该时刻。然而,由于延迟抖动和时钟偏移,每个分组的实际到达时间tR一般将不会正好对应于此预期到达时间。
分组的实际与预期到达时间之间的差别也将随时间累积并且可定义为y(t)=tR-tRx。如图2中所示,时钟偏移对y(t)的作用是具有斜率τ的线性函数,并且抖动v(t)的作用是对y(t)加入了随机作用。此图示出y(t)=a+τt+v(t),其中,y(t)=tR-tRx,即,分组的实际与预期到达时间之间的所述差别,参数a可理解为预期传输延迟的校正,并且时钟偏移τ控制斜率。
图3以示意图方式示出包括根据现有技术的去抖动缓冲器4的接收通信设备2,去抖动缓冲器4一般用于解决延迟抖动引起的问题。包含M个音频样本的分组在实际到达时间tR输入到接收通信设备中,并且存储在去抖动缓冲器4中,该缓冲器适当地包括具有大小M的FIFO(先入先出)缓冲器。样本在预定的播出时间从去抖动缓冲器读取,该时间通过添加时间间隔Tjitter以补偿抖动v(t)而计算得出。添加更大的Tjitter降低了延迟的分组将不播出的风险,即,它降低了分组滑移的风险,但也将增大总体延迟。因此,Tjitter优选估计使得理想的情况是在实际到达时间后才将从去抖动缓冲器读取样本,由此补偿抖动,而同时引入最小的可能延迟。然而,由于时钟偏移的作用引起的预期与实际到达时间y(t)之间的差别将在τ≠0时在时间上呈线性累积,因此,这无法通过去抖动缓冲器补偿,而无论Tjitter的大小如何,因此导致由于超限运行/欠载运行造成的分组滑移。
为解决时钟偏移有关的问题,本发明涉及补偿由时钟偏移引起的播出缓冲器中的超限运行和欠载运行。
图4是示出根据本发明第一实施例,在接收通信设备中执行时钟偏移补偿的装置的方框图。包含M个音频样本的分组在实际时刻tR输入到接收器中并存储在例如FIFO缓冲器等具有至少2·M缓冲器大小的播出缓冲器5中,这是因为0、1或2个分组可在一个分组时段中到达。那些时刻tR存储在存储器(未示出)中,直至分组从缓冲器播出。时钟偏移估计单元6通过使用存储的时刻tR,计算M个样本的实际到达时间tR与预期到达时间tRx之间的累积差别y(t)。之后,时钟偏移估计单元相应地更新估计的时钟偏移τ。估计的时钟偏移值可通过任何合适的时钟偏移估计算法以数学方式从tR-tRx计算得出,优选是用于在实时系统中实现的递归算法,例如,递归最大似然算法。本发明中时钟偏移估计算法的用途是使用实际与预期到达时间之间的累积差别y=tR-tRx作为输入变量,在每个M个音频样本的已接收分组后更新估计的时钟偏移τ的值。
在分组播出前,转换单元7接收估计的时钟偏移τ,并从所述估计的时钟偏移计算在时刻tRx要从缓冲器5读取的样本的调整的数量N,以补偿时钟偏移以便避免缓冲器的欠载运行或超限运行。这通过选择n=M·(fTx/fRx)四舍五入到最近整数结果的值N,根据频率比fTx/fRx缩放数量M而得以实现。然而,到转换单元的输入将是时钟偏移的估计τ=(M/fTx)-(M/fRx),并且接收通信设备不知道fTx。由于n必须是可由接收通信设备从作为输入值的τ获得,并且接收器不知道fTx,因此,n例如可经可表示为ATx=-(fRx·τ)/(M+fRx·τ)的精确度A获得,由此n可计算为n=M2/(M+fRx·τ)。
内插单元8从转换单元7接收值N,从缓冲器5读取N个样本,并且通过内插对N个样本重新采样以提供包含M个样本的要在输出端输送的分组。此重新采样等效于通过系数M/N更改采样率,并且可通过任何合适的数字信号处理技术实现。重新采样的一个示范方法执行如下:先在每个样本后插入具有M-1个零的信号,之后提供低通滤波器以避免混叠,即,两个不同的连续信号在采样时变得不可区分,以及最后通过系数N执行抽取。然而,在比率M/N接近于1时,此方法复杂。通过内插重新采样的优选方法是应用样条内插,该方法在M/N接近于1时具有低复杂度。样条是具有平滑连接在一起的段的分段多项式,并且零阶B样条β0(t)是矩形脉冲,第n阶B样条是β0(t)与其本身的卷积的n+1倍(n+1 times a convolution of β0(t) with itself)。
图5是示出根据本发明第一实施例的时钟偏移补偿方法的流程图,第一部分包括可执行0、1或2次的接收分组的步骤500-520,并且第二步骤包括在接收通信设备要输送分组时执行的步骤525-530。
在第一步骤500中,接收通信设备2在实际时刻tR接收包含M个音频样本的分组。在下一步骤505中,接收通信设备在具有至少2·M大小以便容纳0、1或2个分组的缓冲器5中存储M个音频样本,缓冲器中存储的实际样本数量表示为b,并且在步骤510中,实际时刻存储在存储器中。在下一步骤515中,计算实际时刻tR与预期时刻tRx之间的累积时间差别,并且在步骤520中,从计算得出的差别更新估计的时钟偏移τ的值。估计的时钟偏移通过合适的算法计算得出,例如,递归最大似然算法。
在分组要输送,即播出时,在步骤525中将估计的时钟偏移转换为要在时刻tRX从缓冲器5读取以便补偿时钟偏移的样本数量N。通过使用从时钟偏移定义τ=(M/fTx)-(M/fRX)得出的关系N=M2/(M+fRx·τ),通过比率fTx/fRx缩放数量M,得到数量N。在步骤530中,从缓冲器5读取N个样本,并且在步骤535中,N个样本通过内插被重新采样为M个样本,例如,通过样条内插,或者通过任何其它合适的数字重新采样技术。
图6示出根据本发明第二实施例的装置,其中,为时钟偏移估计装置提供了用于控制在缓冲器5中存储的样本实际数量b的限制单元9,将样本数量b保持在介于0与2·M之间。这通过计算得出的要从缓冲器读取的数量N与缓冲器中存储的样本数量b之间的比较而实现。如果数量N大于缓冲器中存储的样本数量b,则数量N调整为Nlim=b,因此,将只读取缓冲器中b数量的样本,并且防止了缓冲器下溢。如果缓冲器中样本的数量b大于2·M,则将读取超出M数量的所有样本,即,Nlim=b-M,由此限制缓冲器中存储的样本数量并防止上溢。
在现有技术中,去抖动缓冲器4可用于通过将每个分组在播出前延迟时间段Tjitter,补偿延迟抖动。Tjitter的值可以是固定的或自适应的,并且选择为分组滑移概率与去抖动缓冲器引入的总体延迟之间的折衷。
然而,根据本发明的第三实施例,缓冲器5也将用作去抖动缓冲器以补偿延迟抖动。这通过设置限制单元9来控制缓冲器5从而始终在缓冲器中保持至少B0个样本而实现,并且B0可以是近似fRx·Tjitter舍入到更高的整数。因此,限制单元9将比较计算得出的要从缓冲器读取的样本数量N和在缓冲器中存储的样本数量b,并且监视存储的样本数量b以便通过相应地调整要读取的样本数量N来保持样本数量b不小于B0且不超过B0+2·M。如果计算得出的要读取的样本数量N大于缓冲器中实际样本数量b减去B0,则将要读出的样本数量N调整为Nlim=b-B0以便防止下溢并始终在缓冲器中保持B0个样本。如果b大于B0+2·M,则将读取超出数量B0+M的所有样本,即,Nlim=b-(B0+M),以便限制缓冲器中存储的样本数量b,防止上溢。
因此,根据本发明第三实施例引入的延迟将为(B0+M)/fRx而不是如第一和第二实施例中的M/fRx。缓冲器中编号0到B0的样本用于补偿延迟抖动,并且样本B0到B0+2·M用于补偿时钟偏移,并且不需要单独的去抖动缓冲器。
在操作开始时,估计时钟偏移τ中的误差可由于太少的可用数据而相当大。因此,根据本发明的又一实施例,在传输开始时,例如在前50帧接收期间,不使用来自时钟偏移估计单元的输出。
虽然本发明已参照特定示范实施例描述,但说明一般只是要示出本发明的概念,并且不应视为限制本发明范围。
Claims (20)
1.一种在接收通信设备(2)中补偿所述接收通信设备(2)的时钟频率所控样本率与发送通信设备(1)的时钟频率所控样本率之间差别的方法,所述发送通信设备将包括M个音频样本的分组传送到所述接收通信设备,其特征在于0、1或2个分组在播出前被接收(500)及存储(505)在所述接收通信设备中容纳至少2·M个音频样本的缓冲器(5)中,所述方法还包括以下步骤:
-存储(510)每个已接收音频样本的实际接收时间点;
-根据计算得出(515)的所述音频样本的预期接收时间点与存储的实际接收时间点之间的累积差别,不断更新时钟偏移τ的估计(520);
-播出前,使用所述时钟偏移的所述估计,计算(525)要从所述缓冲器(5)读取的音频样本的调整的数量N;
-从所述缓冲器读取(530)N个音频样本;
-通过内插,将从所述缓冲器读取的所述N个音频样本重新采样为要播出的M个样本;
-通过计算要从所述缓冲器(5)读出的样本数量的调整值Nlim来控制在所述缓冲器(5)中存储的样本数量b。
2.如权利要求1所述的在接收通信设备中的方法,其中所述接收通信设备(2)是最终用户终端。
3.如权利要求1所述的在接收通信设备中的方法,其中所述接收通信设备(2)是媒体网关。
4.如权利要求1所述的方法,其中在N大于所述缓冲器中存储的样本数量b时,Nlim等于b以防止所述缓冲器(5)的下溢。
5.如权利要求1所述的方法,其中在b大于2·M时,Nlim等于b-M。
6.如权利要求1所述的方法,其中在N大于所述缓冲器中存储的样本数量b减去数量B0时,Nlim等于b-B0以便补偿延迟抖动,B0的值取决于Tjitter和所述接收通信设备的时钟频率值,其中Tjitter的值为选定的时间间隔,该间隔是播出前分组被延迟以补偿延迟抖动的间隔。
7.如权利要求6所述的方法,其中在b大于B0+2·M时,Nlim等于b-(B0+M)。
8.如权利要求1-3中任一项所述的接收通信设备中的方法,其中所述内插方法包括样条内插。
9.如权利要求8所述的接收通信设备中的方法,其中所述样条内插方法包括三次样条内插。
10.如权利要求1-3中任一项所述的接收通信设备中的方法,其中所述传送的分组是IP分组。
11.一种在接收通信设备(2)中补偿所述接收通信设备(2)的时钟频率所控样本率与发送通信设备(1)的时钟频率所控样本率之间差别的装置,所述发送通信设备将包括M个音频样本的分组传送到所述接收通信设备,其特征在于所述补偿在每个分组播出前执行,所述装置包括:
-缓冲器(5),所述缓冲器(5)容纳至少2·M个样本以便存储0、1或2个已接收分组;
-存储器,所述存储器用于存储每个所述M个音频样本的实际接收时间点;
-时钟偏移估计单元(6),所述时钟偏移估计单元(6)用于根据计算得出的所述M个音频样本的预期接收时间点与存储的实际接收时间点之间的累积时间差别,不断更新时钟偏移的估计;
-转换单元(7),所述转换单元(7)用于在播出前根据所述时钟偏移的所述估计计算要从所述缓冲器(5)读取的音频样本调整的数量N;
-内插单元(8),所述内插单元(8)用于通过内插、将从所述缓冲器(5)读取的N个音频样本重新采样为要播出的M个音频样本;
-限制单元(9),所述限制单元(9)用于通过计算要从所述缓冲器(5)读出的样本数量的调整值Nlim来控制所述缓冲器(5)中存储的样本数量b。
12.如权利要求11所述的装置,其中所述接收通信设备(2)是最终用户终端。
13.如权利要求11所述的装置,其中所述接收通信设备(2)是媒体网关。
14.如权利要求11所述的装置,其中在N大于所述缓冲器中存储的样本数量b时,Nlim等于b以防止所述缓冲器(5)下溢。
15.如权利要求11所述的装置,其中在b大于2·M时,Nlim等于b-M。
16.如权利要求11所述的装置,其中在N大于所述缓冲器中存储的样本数量b减去所述样本数量B0时,Nlim等于b-B0以便补偿所述延迟抖动,B0的值取决于Tjitter和所述接收通信设备的时钟频率值,其中Tjitter的值为选定的时间间隔,该间隔是播出前分组被延迟以补偿延迟抖动的间隔。
17.如权利要求16所述的装置,其中在b大于B0+2·M时,Nlim等于b-(B0+M)。
18.如权利要求11-13中任一项所述的接收通信设备中的装置,其中所述内插方法包括样条内插。
19.如权利要求18所述的接收通信设备中的装置,其中所述样条内插方法包括三次样条内插。
20.如权利要求11-13中任一项所述的装置,其中所述传送的分组是IP分组。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/SE2006/050298 WO2008026976A1 (en) | 2006-08-28 | 2006-08-28 | Clock skew compensation |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101506754A CN101506754A (zh) | 2009-08-12 |
CN101506754B true CN101506754B (zh) | 2011-05-25 |
Family
ID=39136166
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006800556783A Expired - Fee Related CN101506754B (zh) | 2006-08-28 | 2006-08-28 | 时钟偏移补偿 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7949015B2 (zh) |
EP (1) | EP2057522B1 (zh) |
CN (1) | CN101506754B (zh) |
WO (1) | WO2008026976A1 (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2355387A1 (en) * | 2010-01-27 | 2011-08-10 | Harman Becker Automotive Systems GmbH | Sample rate converter for encoded data streams |
US8532804B2 (en) * | 2010-06-18 | 2013-09-10 | Microsoft Corporation | Predictive resampler scheduler algorithm |
EP2628320B1 (en) * | 2010-10-14 | 2018-11-28 | GN Hearing A/S | A hearing device and a method of compensating a frequency difference between a transmitter and receiver |
EP2734904B1 (en) * | 2011-07-20 | 2018-03-07 | Aviat Networks, Inc. | Systems and methods of network synchronization |
GB201115119D0 (en) * | 2011-09-01 | 2011-10-19 | Multi Mode Multi Media Solutions Nv | Generation of digital clock for system having RF circuitry |
WO2015116980A1 (en) * | 2014-01-31 | 2015-08-06 | University Of North Dakota | Network clock skew estimation and calibration |
US9514766B1 (en) * | 2015-07-08 | 2016-12-06 | Continental Automotive Systems, Inc. | Computationally efficient data rate mismatch compensation for telephony clocks |
US10445161B2 (en) | 2016-02-29 | 2019-10-15 | Schweitzer Engineering Laboratories, Inc. | Correction for linear interpolation error |
TWI648732B (zh) * | 2016-05-13 | 2019-01-21 | 景相科技股份有限公司 | 聲音同步存取方法以及使用其之聲音播放系統 |
WO2019088915A1 (en) * | 2017-11-01 | 2019-05-09 | Razer (Asia-Pacific) Pte. Ltd. | Method and apparatus for resampling audio signal |
CN112256087A (zh) * | 2020-10-16 | 2021-01-22 | 深圳市欧思数码科技有限公司 | 一种动态数字信号同步算法 |
CN112527237B (zh) * | 2021-02-09 | 2021-06-25 | 深圳市创成微电子有限公司 | 音频接口电路及其控制方法、音频设备 |
CN114387981B (zh) * | 2022-03-24 | 2022-09-06 | 广州迈聆信息科技有限公司 | 时钟不同步的补偿方法、装置、存储介质以及电子设备 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6208716B1 (en) * | 1998-06-02 | 2001-03-27 | 3Com Corporation | Telephone answering apparatus and method for determining the time of message reception |
CA2299943A1 (en) * | 2000-03-03 | 2001-09-03 | Shane M. Rogers | Apparatus for adjusting a local sampling rate based on the rate of reception of packets |
GB2360178B (en) * | 2000-03-06 | 2004-04-14 | Mitel Corp | Sub-packet insertion for packet loss compensation in Voice Over IP networks |
US6944189B2 (en) * | 2000-08-30 | 2005-09-13 | Verilink Corporation | System and method for measuring sample arrival rates on an asynchronous transport network |
US20020172229A1 (en) * | 2001-03-16 | 2002-11-21 | Kenetec, Inc. | Method and apparatus for transporting a synchronous or plesiochronous signal over a packet network |
US7263109B2 (en) * | 2002-03-11 | 2007-08-28 | Conexant, Inc. | Clock skew compensation for a jitter buffer |
US7177306B2 (en) * | 2002-09-30 | 2007-02-13 | Texas Instruments Incorporated | Calculation of clock skew using measured jitter buffer depth |
US7180435B2 (en) * | 2004-02-02 | 2007-02-20 | Broadcom Corporation | Low-complexity sampling rate conversion method and apparatus for audio processing |
-
2006
- 2006-08-28 US US12/439,024 patent/US7949015B2/en active Active
- 2006-08-28 EP EP06784212A patent/EP2057522B1/en not_active Not-in-force
- 2006-08-28 WO PCT/SE2006/050298 patent/WO2008026976A1/en active Application Filing
- 2006-08-28 CN CN2006800556783A patent/CN101506754B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN101506754A (zh) | 2009-08-12 |
EP2057522A4 (en) | 2011-06-29 |
EP2057522A1 (en) | 2009-05-13 |
EP2057522B1 (en) | 2012-06-27 |
US7949015B2 (en) | 2011-05-24 |
WO2008026976A1 (en) | 2008-03-06 |
US20100002683A1 (en) | 2010-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101506754B (zh) | 时钟偏移补偿 | |
US7551647B2 (en) | System and method for clock synchronization over packet-switched networks | |
CN101843082B (zh) | 用于时钟漂移补偿的方法和系统 | |
US5790538A (en) | System and method for voice Playout in an asynchronous packet network | |
US7079486B2 (en) | Adaptive threshold based jitter buffer management for packetized data | |
AU2008330261B2 (en) | Play-out delay estimation | |
EP1455473A2 (en) | Clock Synchronisation over a Packet Network | |
EP1517466A2 (en) | A self-adaptive jitter buffer adjustment method for packet-switched network | |
US20050232309A1 (en) | In band signal detection and presentation for IP phone | |
EP2250775A1 (en) | Buffer module, receiver, device and buffering method using windows | |
US7177306B2 (en) | Calculation of clock skew using measured jitter buffer depth | |
CN113055312B (zh) | 基于同步以太网的多路音频拾音方法和系统 | |
EP1198910B1 (en) | Method for sending information in a telecommunication system | |
US6480491B1 (en) | Latency management for a network | |
JP7148199B2 (ja) | 通信装置、通信方法及びプログラム | |
US7738613B1 (en) | Streaming multi-channel audio as packetized data or parallel data with a separate input frame sync | |
CN101316153B (zh) | 用于缓冲通过准同步信号传输的数据分组的方法和设备 | |
CN101848140A (zh) | 抖动缓存控制装置、方法和程序、以及信息处理装置 | |
GB2392589A (en) | Adaptive clock recovery using a packet delay variation buffer and packet count | |
JP3633542B2 (ja) | パケット受信回路およびパケット受信方法 | |
CN101141368A (zh) | 用于控制流媒体数据回放处理速率的方法和装置 | |
TR201619945A2 (tr) | TDMoIP Sistemlerinde saat işaretini, zaman bilgisi kullanarak, gerçek zamanlı olarak düzeltme yöntemi |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110525 Termination date: 20190828 |
|
CF01 | Termination of patent right due to non-payment of annual fee |