補償報文分組時延變化的系統和方法
2023-06-08 20:26:36
專利名稱:補償報文分組時延變化的系統和方法
相關申請的交叉引用不適用關於聯邦政府資助的研究或開發對發明權利的聲明不適用對以光碟提交的「序列表」、表格或電腦程式列表附件的參考不適用發明背景本發明涉及分組網絡中的數據流傳輸,尤其涉及對在這種網絡中傳輸的連續時間信號的時延(delay)變化進行補償的系統和方法。
報文分組(packet)是在諸如網際網路的分組交換網絡中的起源地與目的地之間發送的數據的單位。在使用報文分組的系統中,將被傳輸的數據被分成具有預定大小的多個報文分組。這些報文分組被分配以標識號和目的地地址並通過網絡傳輸。一旦報文分組抵達目的地,則它們的數據部分被進行重編以重新構建出原始發送的數據。但是,由於各種端對端(end-to-end)的時延(例如,像交替的數據路徑之類),報文分組不一定會按照發送時的次序抵達目的地。因此,不能簡單地按照這些報文分組的接收次序而對它們進行重編。解決這個問題的一個方法是,在接收這些報文分組時對它們加以緩衝。緩衝器越大,則報文分組準時抵達其目的地的可允許誤差(leeway)也越大。一旦完成了對這些報文分組的接收,則可根據它們的標識號按照適當順序對它們加以重編。
在對連續時間信號進行分組的應用中,典型地在接收地點對報文分組加以緩衝,並且它們的播放(play-out)被延遲以便對網絡的端對端的時延變化進行補償。如上所述,緩衝器引入了附加時延,該時延使系統能夠及時地保持計劃待在後面播放的報文分組。因此,它提供了一個時間窗口,網絡端對端時延可在這一時間窗口範圍內變化。在非實時應用的場合下,如音頻或視頻流傳輸,通常將緩衝器所引入的選定時延設定為很長的時間長度。這種很長的時間長度減小了接收滯後的報文分組的概率。
但是,在諸如視頻會議或音頻會談之類的實時應用場合下,長的時延有損於系統的可用性。實時應用場合中長的時延悖違了「實時」的概念,因為「實時」指得是使信息得以有效即時地傳輸。因此優選地是使緩衝器引入的時延最小化。但是,使用較小緩衝器帶來的風險是,若報文分組抵達的時延大於緩衝器所提供的時延,則會丟失報文分組。因此,如何恰當地選擇時延以使滯後報文分組抵達的概率小到足以達到可接受的水平已經成為一項工作。
在目前關於這個問題的解決方法中,緩衝器的大小是根據報文分組的抵達率(arrival rate)來進行調整的。例如,如若發覺所選擇的時延過小,則增大緩衝器的大小以減小滯後報文分組的數目。相反,如若發覺所選擇的時延過大,則減小緩衝器的大小以使該系統表現得更加透明(transparent)。但是,時延的減少會產生過量的報文分組。類似地,時延的增大會在播放過程中產生間隙。
通常有兩種方案用於設定上述時延。一種是對整個通話設定一次時延,另一種是在話音突峰(talkspurts)之間加以動態調整。話音突峰通常定義為其數據包含了聲音信號連續部分的報文分組集。在這兩種情況中,所做的一切都是為了避免在非靜音期間調整時延。已經發現,基於每個報文分組(即在話音突峰中)調整時延會導致破壞音頻品質的間隙和滑移(slips)。
因此,需要有一種用於在調整播放時延時減少報文分組過量丟棄現象並使間隙最小化的系統和方法。本發明的一個目的是消除或減輕至少一些上述提及的缺陷。
發明簡介依照本發明的一個方面,本發明提供了一種用於改進分組網絡中的實時數據的重構的系統。該系統包括下列組件。用於接收來自網絡的報文分組的播放緩衝器。重放部件,其與所述播放緩衝器相連,用於從所述播放緩衝器重新獲得報文分組並輸出數據以實現實時數據的重構。時間調整器,其根據報文分組的有效性(availability)來改變數據輸出的速率。
附圖的簡要說明現在將通過舉例參照附圖來描述本發明實施例,在附圖中
圖1是依照現有技術的重放系統的方框圖;圖2是200ms聲音採樣的波形圖;圖3是說明在圖1所示系統的緩衝器中減少10ms的波形圖;圖4是說明在圖1所示系統的緩衝器中增大10ms的波形圖;圖5是依照本發明一個實施例的重放系統的方框圖;圖6是說明在圖5所示系統的緩衝器中減少10ms的波形圖;圖7是說明在圖5所示系統的緩衝器中增大10ms的波形圖;以及圖8是說明依照本發明實施例的方法的流程圖。
本發明的詳細說明為簡便起見,在說明書中同一附圖標記指代附圖中的同一部件。參見圖1,圖1顯示了現有技術的重放(playback)系統,其通常由附圖標記100表示。該重放系統100包括重放部件102、單幀緩衝器104以及播放緩衝器106。播放緩衝器106連接在網絡(未示出)和單幀緩衝器104之間。單幀緩衝器104進一步與重放部件102相連。
對圖1所示系統的操作描述如下。播放緩衝器106接收自網絡引入的報文分組,且將報文分組的內容插入播放緩衝器106中。播放緩衝器106提供了為消除網絡的端對端時延變化所必需的時延。語音幀依照預先設定的播放時延被周期性地從播放緩衝器106中取出,並寫入單幀緩衝器104。網絡所攜載的語音幀可以是壓縮形式的或者是直接的抽樣對抽樣(sample-per-sample)的數位化表達。重放部件102重新建立原始波形。
參見圖2,其中顯示了一個典型的原始信號,該信號通常由附圖標記200表示。信號200描述了一個口語字在四分之一秒期間的振幅變化過程。若播放緩衝器106得以適當限定且沒有非所希望的時延,則將重新形成如圖2所示的原始信號。但是,由於時延實際上是恆定變化的,所以播放緩衝器106的改變是有規律的。
如前所述,優選地將播放緩衝器最小化以改進系統的「實時」性。但是,若改變播放緩衝器以使其出現一個10ms的時延減少而且報文分組的抵達比預期的要快,則將會有一些報文分組被丟失。參見圖3,其中示出了在這些環境條件下再現的信號,該信號通常由標記300表示。如在該再現信號中所見的那樣,該信號在約0.13s處出現了調整。在重構信號300中缺少了包含在丟失的報文分組中的原始信號200的數據,而且可以看出從整個包絡的衰減過程中波形有一個急劇跌落。
相反,若增大播放緩衝器以減小發生丟失報文分組的機會,則有可能在再現信號中出現間隙。若改變播放緩衝器以使其有一個10ms的時延增大而且報文分組的抵達比預期的要慢,則可能會需要系統等待報文分組的到來。參見圖4,其中示出了在這些環境條件下再現的信號,該信號通常由標記400表示。如在該再現信號中所見的那樣,該信號在約0.13s處出現了調整。系統等待引入報文分組的到達,且因此可以看出波形中插入了一段靜音間隙。
但是,通過增大或減小報文分組播放的速率來調整播放時延而不引入間隙或滑移(slip)是可能的。這是通過選擇性地壓縮或擴展語音信號部分的時間比例(time scale)而實現的。如若時延改變不頻繁發生,則時間比例改變就會非常小而幾乎檢測不到音頻中的變化,甚至根本察覺不到這種音頻的變化。
參見圖5,其中示出了一種改進的重放系統,該系統通常由附圖標記500表示。該改進系統500包括重放部件102、單幀緩衝器104以及播放緩衝器106。另外,該改進系統500還包括時間調整器502和專用緩衝器504。因此可以看出,所提出的時延補償的改進在於為分組化聲音信號的重放系統中所使用的標準組件集增加了附加裝置。重放部件102的輸出連接到專用緩衝器504,專用緩衝器504則連接到時間調整器502。時間調整器502確定重放部件102的重放速率。
在正常的穩定態工作期間,專用緩衝器504保持一個或多個語音信號的報文分組。若時延改變限於每次針對一個報文分組,則專用緩衝器504隻需要保持語音採樣的單個報文分組。在本發明實施例中,專用緩衝器504能夠保持兩個報文分組。時間調整器502根據專用緩衝器504中的數據量來確定重放部件102的播放速率。例如,若專用緩衝器504中的數據超過了第一預設門限,則增大重放部件102的播放速率。相反,若專用緩衝器504中的數據降至第二預設門限以下,則減小重放部件102的播放速率。
在一個另選實施例中,不是由時間調整器502來確定何時調整播放速率,而是由重放部件102自己來檢測專用緩衝器504中的數據量並指示時間調整器502是否要增大或減小播放速率。
對圖5所示系統的操作描述如下。播放緩衝器106的大小是參照現有技術的實現方式來確定的。但是,在本發明實施例中,由播放緩衝器106來確定將多少報文分組傳輸給單部件緩衝器104。在正常工作環境下,播放緩衝器106為每個預設的播放時延發送一個報文分組。如有必要,通過重放部件102對數據進行解壓縮並將其傳送給專用緩衝器504。由於專用緩衝器504內只存儲一個報文分組,所以重放部件102按照標準速率播放數據。
播放緩衝器106監測報文分組抵達和離開的狀況並確定報文分組是否過量積聚。例如,如果播放緩衝器106引致的時延有所減少而報文分組的抵達比預期的快,則可能發生這種報文分組過量積聚的情形。一旦播放緩衝器106超過預先設定的門限,則為每個預設的播放時延發送兩個或多個報文分組給重放部件102。結果,專用緩衝器504保持了播放信號的兩個或更多報文分組長度。作為對插入到專用緩衝器504中的額外採樣的反應,時間調整器502壓縮重放時間比例。通過壓縮時間比例,該模塊在每個單位時間內所播放的採樣數多於正常工作的情形。經過一段時間之後,過量採樣已經播放完畢,而播放緩衝器106將下降至低於預設門限。結果,只有一個報文分組發送給了重放部件102。時間調整器502檢測到在專用緩衝器504中只有一個報文分組因而恢復正常的時間定標(time scaling)。
參見圖6,其中示出了依照本發明當前實施例再現的信號,該信號通常由附圖標記600表示,其在播放緩衝器106所用的時延中減少了10ms。時延調整出現在約0.13s時間處,而時間比例在200ms的持續時間內被壓縮了5%。在波形600中沒有能夠引起視覺覺察的非自然信號(artifact),並且聽起來該採樣也沒有出現令人不舒服的斷續情況。
如若增大播放緩衝器106的時延而報文分組的抵達比預期的慢,則重放部件102將不能接收到足夠數目的報文分組以覆蓋所產生的時延滑移。這樣用盡了專用緩衝器504積聚的正常數量的報文分組。在本發明實施例中,專用緩衝器504將成為空的。作為對上述用盡情形的反應,時間調整器502擴展時間比例。通過擴展時間比例,重放部件102與其在正常情形下相比在每單位時間內播放的採樣較少。經過一段時間之後,報文分組將開始以預期的速率抵達,而專用緩衝器504將保持正常數目的報文分組,在本發明實施例中正常數目為一。時間調整器502檢測到專用緩衝器504中再次有一個報文分組並因而恢復正常的時間定標。
參見圖7,其中示出了依照本發明實施例再現的信號,該信號通常由附圖標記700表示,其在播放緩衝器106所用的時延中增加了10ms。時延調整出現在約0.13s時間處,而時間比例在200ms的持續時間內擴展了5%。在這個波形中沒有出現在現有技術(參見圖4)中存在的靜音間隙,並且沒有能夠引起視覺覺察的非自然信號。聽起來該採樣也沒有出現各種令人不舒服的邊緣效應(side effect)。
本領域普通技術人員將會預計到,可以有很多種調整重放部件的播放速率的方法,因此不必對時間調整器502做詳細描述。另外,本領域普通技術人員將會預計到,調整器502能夠以各種方式實現。在全數位化系統中,通過一連串數字內插和抽取就可以實現定時調整。另選地,可通過調整控制數模轉換的重放系統時鐘來實現定時調整。
圖8是依照本發明實施例的方法800的流程圖。在步驟802中,從網絡接收來自網絡的報文分組並將其存儲到播放緩衝器中。在步驟804中,根據播放緩衝器中報文分組的數目,以第一速率將報文分組傳輸給重放部件。在步驟806中,根據播放緩衝器傳輸報文分組的第一速率,重放部件以第二速率播放報文分組。這個方法的詳細情形參見上述圖5。
儘管本發明是結合特定實施例進行描述說明的,但是對於本領域普通技術人員而言,其各種變型都是明顯的,並且不會背離如所附權利要求書限定的本發明的精神和範圍。
權利要求
1.一種用於改進分組網絡中實時數據重構的系統,所述系統包括播放緩衝器,其用於接收來自所述網絡的多個報文分組;重放部件,其與所述播放緩衝器連接,用於從所述播放緩衝器接收所述多個報文分組並且輸出重構數據以用於所述實時數據的所述重構;以及時間調整器,其用於根據所述多個報文分組的有效性來改變所述重放部件輸出所述重構數據的速率。
2.如權利要求1所述的系統,其特徵在於,當所述播放緩衝器中接收的所述多個報文分組的數目超過預設的上限時,所述時間調整器增大所述速率。
3.如權利要求2所述的系統,其特徵在於,當所述多個報文分組的所述數目降低到所述預設的上限之下時,所述時間調整器將所述速率恢復到正常水平。
4.如權利要求1所述的系統,其特徵在於,當所述播放緩衝器中接收的所述多個報文分組的數目降低到預設的下限之下時,所述時間調整器減小所述速率。
5.如權利要求4所述的系統,其特徵在於,當所述多個報文分組的所述數目超過所述預設的下限時,所述時間調整器將所述速率恢復到正常水平。
6.如權利要求1所述的系統,其特徵在於,隨著所述播放緩衝器中的所述多個報文分組的數目的改變,所述播放緩衝器改變傳輸給所述重放部件的報文分組的數目。
7.如權利要求6所述的系統,其特徵在於,隨著所述播放緩衝器中的所述多個報文分組的所述數目超過預設的上限,所述播放緩衝器增大傳輸給所述重放部件的報文分組的所述數目。
8.如權利要求6所述的系統,其特徵在於,隨著所述播放緩衝器中的所述多個報文分組的所述數目降低到預設的下限之下,所述播放緩衝器減小傳輸給所述重放部件的報文分組的所述數目。
9.一種用於改進分組網絡中實時數據重構的方法,所述方法包括步驟從所述網絡接收多個報文分組並將所述多個報文分組存儲到播放緩衝器中;根據所述播放緩衝器中的報文分組的數目,以第一速率將所述多個報文分組傳輸給重放部件;以及根據從所述播放緩衝器傳輸的所述多個報文分組的所述第一速率,在所述重放部件上以第二速率播放所述多個報文分組。
10.如權利要求9所述的方法,其特徵在於,當所述播放緩衝器中的所述報文分組的數目超過預設的上限時,所述第二速率增大。
11.如權利要求10所述的方法,其特徵在於,當所述播放緩衝器中的報文分組的所述數目降低到所述預設的上限之下時,所述第二速率恢復到正常水平。
12.如權利要求9所述的方法,其特徵在於,當所述播放緩衝器中的報文分組的所述數目降低到預設的下限之下時,所述第二速率減小。
13.如權利要求12所述的方法,其特徵在於,當所述播放緩衝器中的所述報文分組的所述數目超過所述預設的下限時,所述第二速率恢復到正常水平。
全文摘要
一種系統改進了分組網絡中實時數據的重構。該系統包括下列組件。用於接收來自網絡的報文分組的播放緩衝器(106)。重放部件(102),其與所述播放緩衝器(106)相連,用於從所述播放緩衝器(106)重新獲得報文分組並輸出數據以實現實時數據的重構。時間調整器(502),其根據報文分組的有效性來改變數據輸出的速率。
文檔編號H04N7/24GK1613256SQ02826643
公開日2005年5月4日 申請日期2002年11月27日 優先權日2001年11月29日
發明者埃裡克·韋羅特 申請人:卡提納網絡公司