TWI454101B - 用於封包化資料通信之適應型低抖動緩衝區 - Google Patents

用於封包化資料通信之適應型低抖動緩衝區 Download PDF

Info

Publication number
TWI454101B
TWI454101B TW094129711A TW94129711A TWI454101B TW I454101 B TWI454101 B TW I454101B TW 094129711 A TW094129711 A TW 094129711A TW 94129711 A TW94129711 A TW 94129711A TW I454101 B TWI454101 B TW I454101B
Authority
TW
Taiwan
Prior art keywords
packet
time
packets
memory storage
window
Prior art date
Application number
TW094129711A
Other languages
English (en)
Other versions
TW200629816A (en
Inventor
Peter John Black
Rohit Kapoor
Serafin Diaz Spindola
Mehmet Yavuz
Original Assignee
Qualcomm 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
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of TW200629816A publication Critical patent/TW200629816A/zh
Application granted granted Critical
Publication of TWI454101B publication Critical patent/TWI454101B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • 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/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
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9084Reactions to storage capacity overflow
    • H04L49/9089Reactions to storage capacity overflow replacing packets in a storage arrangement, e.g. pushout
    • H04L49/9094Arrangements for simultaneous transmit and receive, e.g. simultaneous reading/writing from/to the storage element
    • 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/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/752Media network packet handling adapting media to network capabilities
    • 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/005Correction of errors induced by the transmission channel, if related to the coding algorithm
    • 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/29Flow control; Congestion control using a combination of thresholds
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Dc Digital Transmission (AREA)
  • Telephone Function (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Use Of Switch Circuits For Exchanges And Methods Of Control Of Multiplex Exchanges (AREA)
  • Telephonic Communication Services (AREA)

Description

用於封包化資料通信之適應型低抖動緩衝區
本發明係關於一種無線通信系統,且特定言之,係關於一種用於封包交換通信中IP語音傳輸(VoIP)的適應型低抖動緩衝區。
在一通信系統中,封包之端對端延遲可定義為自來源處產生至封包到達目標之時間。在一封包交換通信系統中,封包自來源到達目標之延遲視不同操作條件而變化,操作條件包括(但不限於)通道條件及網路負載。通道條件指無線鏈路之品質。決定無線鏈路之品質的若干因素為訊號強度、行動及/或實體阻礙物之速度。
端對端延遲包括網路中及封包經過之各種元件中引起之延遲。諸多因素形成端對端延遲。端對端延遲之變化稱為抖動。抖動可導致封包在被接收之前已不再起作用。舉例而言,在諸如語音之低潛伏應用中,若過遲接收到封包,則其可能被接收機丟棄。此等情形導致通信品質降低。
在封包交換系統中,資料形成為若干封包且藉由一網路而傳送。每一封包均基於封包內(通常於標頭中)所含有之指定位址而被發送至網路中之一目標。封包之端對端延遲或封包於網路內自第一使用者(或發送者)傳輸至第二使用者(或接收機)的時間視系統之通道條件、網路負載、服務品質(QoS)效能及爭奪其它事物中之資源的其它資料流而 變化。注意,為清晰起見,以下討論描述展頻通信系統;然而,本發明可應用於支持封包資料通信的系統,包括(但不限於)劃碼多向近接(CDMA)系統、正交分頻多重接取(OFDMA),W-CDMA,全球行動通信(GSM)系統,支持IEEE標準(諸如802.11(a,b,g)、802.16)之系統等。
在一無線通信系統中,每一封包可引起來源至目標之延遲,其不同於屬於相同資料流之其它封包所經歷之延遲。延遲之此差異稱之為"抖動"。抖動為接收機方面之應用帶來了額外的複雜度。若接收機無法校正抖動,則接收之訊息將於封包重新組合時失真。某些系統於重建來自已接收封包的訊息時校正抖動。此等系統併入一低抖動緩衝區,其添加一稱為低抖動緩衝區延遲的等待時間。當低抖動緩衝區應用一固定的大的低抖動緩衝區延遲時,其可容納到達之封包中的大量抖動;然而,由於即使具有較小延遲之封包能較早得到處理,但是其亦藉由使用較大低抖動緩衝區延遲而予以處理,故此種用途並非有效的。與使用較小低抖動緩衝區延遲可獲得之端對端延遲相比,此導致此等封包之較大的端對端延遲。
為防止此種情況,併入低抖動緩衝區之VoIP系統可嘗試適應封包延遲之變化。舉例而言,低抖動緩衝區藉由分析封包到達之統計數字可偵測封包延遲之變化。諸多低抖動緩衝區之建構完全不適應其延遲且經組態以具有適當的大延遲。在此情形下,低抖動緩衝區可將額外延遲添加至引起使用者體驗次佳的封包。
以下討論描述了藉由改變低抖動緩衝區延遲而適應封包延遲性能之變化的適應型低抖動緩衝區。此低抖動緩衝區利用語音時間彎曲以增強其追蹤封包之可變延遲的能力。
通信系統
圖1係說明數位通信系統50之方塊圖。兩部存取終端機(AT)52及82經由基地台(BS)70而通信。在AT 52內,傳輸處理單元64將語音資料傳輸至編碼器60,編碼器60對語音資料進行編碼並使之封包化且將封包化之資料發送至下層處理單元58。隨後在傳輸時,資料發送至BS 70。BS 70處理已接收資料並將其傳輸至AT 82,其中資料於下層處理單元88處被接收。接著,將資料提供至低抖動緩衝區86,後者儲存該資料以隱藏或減小抖動之影響。接著將資料自低抖動緩衝區86發送至解碼器84,且繼續發送至接收處理單元92。
在自AT 82傳輸時,將資料/語音自傳輸處理單元94提供至編碼器90。下層處理單元88處理傳輸至BS 70之資料。在AT 52處接收來自BS 70之資料時,資料於下層處理單元58處被接收。隨後將資料封包發送至低抖動緩衝區56,且儲存在那裏直至達到要求之緩衝長度或延遲為止。一旦達到該長度或延遲,低抖動緩衝區56即開始將資料發送至一解碼器54。解碼器54將封包化資料轉化為語音資料封包且將該封包發送至接收處理單元62。在此實例中,AT 52之性能類似於AT 82之性能。
低抖動緩衝區
於諸如上述之AT中使用一儲存器或低抖動緩衝區以隱藏抖動之影響。在一實例中,適應型低抖動緩衝區用於諸如VoIP通信之封包交換通信。低抖動緩衝區具有一適應型緩衝記憶體且使用語音時間彎曲以增強追蹤可變延遲及抖動之能力。在此實例中,低抖動緩衝區之處理與解碼器之處理一致,其中低抖動緩衝區識別對封包進行時間彎曲之機會或需要並命令解碼器對封包進行時間彎曲。按照低抖動緩衝區之命令,解碼器藉由壓縮或擴展封包而對封包進行時間彎曲。
圖2說明低抖動緩衝區之一實例。傳入之已編碼封包累積並儲存於緩衝區中。在一實例中,緩衝區為先進先出(FIFO)緩衝區,其中以特定順序接收資料且以同樣順序處理資料;第一處理之資料係第一接收之資料。在另一實例中,低抖動緩衝區為記錄待處理之下一封包的有序列表。可將已處理資料自低抖動緩衝區發送至解碼器或其它公用程式。已編碼封包可對應於固定量之語音資料,例如在8Khz取樣頻率時,20msec對應於160個語音資料樣本。在本發明之一實例中,解碼器/時間彎曲產生之樣本的數目可基於封包是否經時間彎曲而變化。當低抖動緩衝區命令解碼器/時間彎曲器擴展一封包時,解碼器/時間彎曲器可產生160個以上之樣本。另一方面,當低抖動緩衝區命令解碼器/時間彎曲壓縮封包時,解碼器/時間彎曲器可產生不足160個之樣本。請注意,替代性系統可具有諸如除20 ms語音編碼之外的不同播放機制。
到達低抖動緩衝區之封包可不以規則間隔到達。因此,低抖動緩衝區之設計目的之一係調整傳入資料的不規則性。在本發明之一實例中,低抖動緩衝區具有目標低抖動緩衝區長度。目標低抖動緩衝區長度指開始播放第一封包之前累積於低抖動緩衝區中之所要資料量。在另一實例中,目標低抖動緩衝區長度可指低抖動緩衝區中之第一個封包於被播放前所需要延遲的時間量。圖2中說明目標低抖動緩衝區之長度。藉由於開始播放封包前在低抖動緩衝區中累積足夠的封包,低抖動緩衝區能以規則間隔播放後續封包,同時使用完封包之可能降到最低。圖2說明低抖動緩衝區,其中首先接收入低抖動緩衝區之語音編碼器封包係排定好的自低抖動緩衝區輸出之下一個封包。低抖動緩衝區包括足以達成要求之低抖動緩衝區延遲的封包。以此方式,低抖動緩衝區使封包經歷之抖動平滑且隱藏封包到達接收機之時間的差異。
圖3說明用於各種方案中之封包的傳輸、接收及讀取的時間線。第一封包PKT 1於時間t0 時被傳輸並於時間t1 時被接收後隨即被播放。後續封包PKT 2、PKT 3及PKT 4於PKT 1之後以20ms間隔傳輸。在無時間彎曲之情形下,解碼器自第一封包之播放時間開始以規則間隔時間(例如,20ms)播放封包。舉例而言,若解碼器以規則的20ms之間隔播放封包,則第一接收到之封包於時間t1 時被播放,且後續封包將於時間t1 後20ms時,時間t1 後40ms時,時間t1 後60ms時(等等)被播放。如圖3中所說明,PKT 2之預期播放時間(無低抖動緩衝區延遲之情況下)為t2 =t1 +20ms。PKT 2於預期播放時間t2 之前被接收到。另一方面,封包3於預期播放時間t3 =t2 +20ms之後被接收到。此種情況稱為缺空。缺空發生於播放公用程式準備播放一封包而該封包不存在於低抖動緩衝區中時。缺空通常導致解碼器產生疑符(erasure)且降低播放品質。
圖3進一步說明一第二方案,其中低抖動緩衝區於播放第一封包之前引入一延遲tdjb 。在此方案中,添加低抖動緩衝區延遲以使播放公用程式能每20ms接收封包(或樣本)。在此方案中,雖然PKT 3係於其預期播放時間t3 之後被接收,但是低抖動緩衝區延遲之增加允許於播放PKT 220ms後播放PKT 3。
PKT 1於時間t0 時被發送且與先前所執行之於時間t1 時被播放不同,其係於時間t1 +tdjb =t1 '時被播放。播放公用程式以預定間隔(例如,20ms)於PKT 1之後或於時間t2 '=t1 +tdjb +20=t2 +tdjb 時播放PKT 2且在時間t3 '=t3 +tdjb 時播放PKT 3。播放延遲tdjb 允許在不導致缺空之情況下播放第三封包。因此,如圖3所說明,低抖動緩衝區延遲之引入可減少缺空並防止語音品質降低。
語音由通話陡增時段及無聲時段組成。無聲時段之擴展/壓縮對語音品質無影響或影響甚微。此允許低抖動緩衝區不同地延遲對每一通話陡贈之第一封包之播放。語音通信之各種特徵導致延遲或不規則性之結果,例如,語音結構 由通話陡增之替代性時段及無聲時段組成。可於通話陡增時段及無聲時段以不同速率於低抖動緩衝區處接收資料。若可能則利用所有已接收資料來播放通話陡增。因為無聲可被模擬為雜訊,所以無聲時段無需播放所有已接收資訊。因此,接收到一通話陡增之後,隨即可要求低抖動緩衝區儲存大於無聲時段之資料量。此可能引入一初始延遲以將低抖動緩衝區補足為一目標低抖動緩衝區長度。因此,此語音特徵可增加播放第一封包之前缺空的可能性。由於封包延遲通常因通話陡增不同而不同,故低抖動緩衝區引入之延遲可因通話陡增不同而不同。本發明所描述之低抖動緩衝區利用語音之該特性以適應不同通話陡增之低抖動緩衝區長度。
圖4A及4B說明用於不同通話陡增之傳輸及接收時間線。請注意,低抖動緩衝區延遲之數量經判定以防止缺空。此稱為"最佳低抖動緩衝區延遲"。該最佳低抖動緩衝區延遲與目標低抖動緩衝區長度有關。換言之,目標低抖動緩衝區長度經判定以允許足夠資料儲存於緩衝區中,因此與播放公用程式之詳細描述一致地播放封包。最佳低抖動緩衝區延遲可藉由系統經歷之最大端對端延遲而判定。或者,最佳低抖動緩衝區延遲可基於系統經歷之平均延遲。判定最佳低抖動緩衝區延遲之其它方法亦可針對給定標準或系統設計而建構。此外,目標低抖動緩衝區長度經判定以實現最佳低抖動緩衝區延遲,且因此,可基於已接收封包之速率、封包錯誤率(PER)或其它操作統計數字而 計算目標低抖動緩衝區長度。
圖4A及4B說明兩個實例之最佳低抖動緩衝區延遲。如所說明,連續封包之傳輸與接收之間的時間隨時間而變化。因為PKT 3具有自傳輸至接收之最長延遲,所以使用此區別來判定低抖動處理之最佳延遲。
使用具有目標低抖動緩衝區長度之低抖動緩衝區可至少避免某些缺空情形。重新參看圖3,第二方案避免了缺空(當解碼器期望一封包及播放公用程式準備播放一封包,但是封包儲存緩衝區中無封包時發生)。此處,於時間t1 後再經歷一預定間隔20ms後播放PKT 2,其中t1 為PKT 1之播放時間。雖然排定或預期於時間t3 時播放PKT 3,但是直至時間t3 後才接收到PKT 3。換言之,播放公用程式準備播放PKT 3但是此封包卻不在儲存緩衝區內。由於PKT 3不適合在預期時間播放,且未經播放,故導致與PKT 3有關之大量抖動及一缺空。PKT 4於t4 (PKT 4之預期播放時間)時被播放。請注意,預期時間t4 自時間t3 開始計算。由於每一封包均可含有一個以上之語音封包,故由於缺空而導致之封包損失使語音品質降級。
用於考慮之另一方案涉及圖5中說明之一系列"歸因於延遲封包的缺空",其中及時說明了封包之傳輸、接收及預期播放時間。在此方案中,每一封包均於其預期播放時間之不久後被接收。舉例而言,PKT 50之預期播放時間為t0 但直至時間t0 之後之t0 '才接收到PKT 50。下一封包51預期於時間t1 時被接收但卻直至時間t1 後之時間t1 '時才被接 收。由於延遲封包,使得一系列缺空導致高百分比之"延遲缺空",且因此導致更高的端對端延遲。
顯然,較大量地延遲播放之低抖動緩衝區將成功地最小化缺空。然而,此低抖動緩衝區將大的低抖動緩衝區延遲引入封包之端對端延遲。大的端對端延遲可導致維持會話資料流之困難。因此,優良品質理論上會考慮避免缺空及減少端對端延遲。問題在於一問題之解決方法可惡化另一問題。換言之,較小之端對端延遲通常導致更多缺空,且反之亦然。因此,需要平衡該等競爭性目標。特定言之,需要避免缺空同時減少端對端延遲之低抖動緩衝區。
低抖動緩衝區目標長度
適應型低抖動緩衝區之一設計目標在於允許系統為語音封包之一特定"缺空速率"設定目標,同時獲得低的端對端延遲。因為知覺品質為缺空之百分比之一函數,所以為缺空設定一特定的目標百分比的能力使得語音品質可控。
低抖動緩衝區處之封包缺空可發生於各種情況中。在第一方案中,當封包於到達接收機之前被丟棄時可發生缺空。在此情形下,封包被丟棄於存取網路中之某處(例如實體層或前向鏈路排程器上)。在此方案中,因為封包從不到達低抖動緩衝區,所以缺空不能藉由使用低抖動緩衝區延遲來加以校正。在第二方案中,由於封包延遲而發生缺空且封包於播放時間後到達。
延遲封包所引起的缺空的數目可藉由以缺空交換低抖動緩衝區延遲來加以控制。代表由於封包延遲而引起之缺空 的目標百分比的值稱為"缺空目標"。此值為用於操作低抖動緩衝區之目標值且經選擇以將端對端延遲保持在合理限制內。在一實例中,使用值1%(0.01)作為"缺空目標"。另一實例使用值0.5%(0.005)。為達成"缺空目標",可對低抖動緩衝區延遲進行調整。
在本發明之一實例中,由於延遲封包(下文稱為"延遲缺空")而引起之缺空之百分比的篩選值可用於調整低抖動緩衝區延遲。每一無聲時段結束時(或每一通話陡贈開始時),低抖動緩衝區延遲如圖6中所說明般被更新。如圖6中所說明,演算法說明如下:
在該實例中,初始低抖動緩衝區延遲可設置為諸如40ms之一恆定值。TARGET_VALUE為"延遲缺空"之目標值(例如1%)。PERdelay 為封包之"延遲缺空"速率的篩選值,其中該篩選器之參數允許達成TARGET_VALUE。last_PERdelay 為先前更新低抖動緩衝區延遲處時PERdelay 的值。DEJITTER_DELAY為上文定義之目標低抖動緩衝區長度。在該實例中,CONSTANT等於20ms。MIN_JITTER及 MAX_JITTER為低抖動緩衝區延遲之最小值及最大值;根據一實例,該等值分別設定為20ms及80ms。可基於系統模擬來估算MIN_JITTER及MAX_JITTER。該等值(MIN_JITTER、MAX_JITTER及CONSTANT)可視採用低抖動緩衝區之通信系統而予以最佳化。
PERdelay 可於每一無聲時段結束時或每一通話陡贈開始時予以更新,其中PERdelay 計算如下:PERdelay =PER_CONSTANT×PERdelay +(1-PER_CONSTANT)×Current_PERdelay (2)
PER_CONSTANT為用於估算PERdelay 之篩選器的時間常數。該常數之值決定記憶體之篩選且允許達成TARGET_VALUE。Current_PERdelay 為PERdelay 之最後更新與當前更新之間觀察到的"延遲缺空"的速率。
Current_PERdelay 定義為延遲缺空封包之數目與PERdelay 之最後更新與當前更新之間接收之封包總數目的比。
參看圖6,用於計算及更新低抖動緩衝區延遲之處理程序100於步驟102(比較PERdelay 與TARGET_VALUE)開始。若PERdelay 小於TARGET_VALUE,則在步驟104,自DEJITTER_DELAY減去CONSTANT值。若在步驟102時,PERdelay 大於TARGET_VALUE且不小於最後一PERdelay 時,則處理持續至決策步驟108。在步驟108,DEJITTER_DELAY設定為DEJITTER_DELAY加CONSTANT值。繼而,在步驟110中,DEJITTER_DELAY設定為等於 MIN_JITTER及DEJITTER_DELAY之最大值。處理自步驟110持續至步驟112,以在步驟112將DEJITTER_DELAY設定為等於MAX_JITTER及DEJITTER_DELAY之最小值。
隱含緩衝區適應性
在某些情況下,解碼器可有望播放尚未接收之封包。此情況展示於圖5A中,其中PKT 50之預期播放時間為t0 ,但是PKT 50於此預期播放時間之後被接收到。類似地,PKT 51於其預期播放時間t1 後被接收到,PKT 52於其預期播放時間t2 後被接收到,依此類推。此處應注意,封包之到達相當有規律,但是因為PKT 50略遲於其預期播放時間而被接收,因此其導致所有後續封包皆錯過其播放時間。另一方面,若解碼器能於t0 時插入疑符,且仍於時間t1 時播放PKT 50,則允許所有封包能按其預期播放時間而播放。藉由於播放一疑符來代替PKT 50後播放PKT 50,低抖動緩衝區長度被有效地隱式地調整。
請注意,於疑符後播放PKT 50可導致不連續性,可藉由使用2005年7月7日申請之標題為"PHASE MATCHING IN VOCODERS"的同在申請中的申請案(申請號為11/192,231)中描述的相位匹配(Phase Matching)技術而移除此不連續性,特意以引用的方式併入本文。
如圖7A中所說明,於接收封包時可能存在間隙(諸如PKT 3與PKT 4之間的時隙)。每一封包之封包到達之延遲可不同。低抖動緩衝區可立即以調整作出回應以補償該延遲。如所說明,PKT 1、PKT 2及PKT 3分別於時間t1、t2 及t3時被接收到。於時間t4時,預期PKT 4將被接收到,但是PKT 4尚未到達。假定在圖7A中,預期封包每20ms被接收到。在該說明中,PKT 2於PKT 1後過20ms被接收,且PKT 3於PKT 1後過40ms被接收。預期PKT 4於PKT 1後過60ms被接收,但是直至PKT 1後過80ms時PKT 4才到達。
在圖7B中,在播放所接收之第一封包PKT 1之前於低抖動緩衝區處引入初始延遲。本文中,初始延遲為Dinit 。在此情形下,緩衝區於時間Dinit 時播放PKT 1,於時間Dinit +20ms時播放PKT 2,於時間Dinit +40ms時播放PKT 3等等。在圖7B中,當PKT 4不能於預期時間Dinit +60ms到達時,可由低抖動緩衝區播放一疑符。下次播放一封包時,低抖動緩衝區設法播放PKT 4。若PKT 4仍未到達,可於時間Dinit +80ms時發送另一疑符。疑符持續被播放直至PKT 4到達低抖動緩衝區為止。PKT 4到達低抖動緩衝區之後隨即被播放。由於接收到PKT 4之前無其它封包被播放,故此處理導致延遲。當系統無法恢復,意即再不接收PKT 4時,系統可應用處理重設,允許不播放PKT 4而播放PKT 4之後續封包。在上述方案中,因為在PKT 4到達之前疑符可經持續發送一很長時間段,所以低抖動緩衝區之端對端延遲具有增加之可能。
相反,根據圖7C說明之實例,若封包不能到達或封包被延遲接收,則於PKT 4之預期播放時間播放一疑符。此類似於上述關於圖7B之方案,其中該系統等待PKT 4。於下次播放時間時,若PKT 4仍未到達而下一封包PKT 5已到 達,則播放PKT 5。為進一步說明,假定PKT 4被延遲接收且低抖動緩衝區預期於時間Dinit +80ms時接收PKT 4。當PKT 4被延遲時,播放一疑符。於時間Dinit +100ms,若PKT 4仍未到達,則播放PKT 5而並非播放另一疑符。在第二方案中,立即進行延遲調整因而避免了通信網路中之過度端對端延遲。因為播放前儲存於緩衝區中之資料的大小根據接收資料而增加或減小,所以此處理程序可稱為隱含緩衝區適應性。
圖8中之流程圖說明隱含緩衝區適應性處理程序200。處理程序200可建構於適應型低抖動緩衝區內之一控制器內(例如於輸出控制器760中或低抖動緩衝區控制器756中)。處理程序200可駐於支持適應型低抖動緩衝區之系統內的其它部分。於步驟202,於適應型低抖動緩衝區處接收到一請求以提供用於播放之下一封包。下一封包識別為具有序列形式之指數i的封包(具體為PKT[i])。於判定方塊204處,若啟用隱含緩衝區適應性(IBA)模式,則處理持續至判定方塊206以根據IBA模式進行處理;若禁用IBA模式,則處理持續至判定方塊226以在無IBA模式之情況下進行處理。
若PKT[i](於判定方塊206處)被接收,則適應型低抖動緩衝區於步驟208處提供用於播放之PKT[i]。IBA模式於步驟210處被禁用,且指數i遞增,意即(i=i+1)。此外,若PKT[i](於判定方塊206處)未被接收到且若PKT[i+1](於判定方塊214處)被接收到,則處理持續至步驟216以播放 PKT[i+1]。IBA模式於步驟218處被禁用且指數i於步驟220處兩次遞增,意即,(i=i+2)。
若於判定方塊214處未接收到PKT[i]及PKT[i+1],則控制器於步驟222處開始播放一疑符;且指數i於步驟224處遞增。請注意,在該實例中,當處於IBA模式時,控制器檢查多至兩個(2)封包以回應於對下一封包之請求,諸如於步驟202處接收之封包。此有效地建構了一封包視窗,控制器經由該視窗搜尋已接收之封包。替代性實例可建構不同的視窗尺寸,例如搜尋三個(3)封包,在此實例中為封包序列編號i、i+1及i+2。
返回判定方塊204,若IBA模式未啟用,則處理持續至判定方塊226以判定是否接收到PKT[i]。若已接收到,則於步驟228處提供PKT[i]以播放,且指數i於步驟230處遞增。若PKT[i]未於判定方塊226處接收到,則於步驟232處,適應型低抖動緩衝區提供一疑符用於播放。因為未接收到PKT[i]而代之以播放疑符,所以啟用IBA模式。
圖8B為關於IBA模式之狀態圖。當處於正常模式242時,若適應型低抖動緩衝區提供PKT[i]以用於播放,則控制器繼續處於正常模式。當播放疑符時,控制器自正常模式242轉變為IBA模式240。一旦處於IBA模式240時,控制器繼續播放疑符。控制器自IBA模式240轉變為正常模式242以播放PKT[i]或PKT[i+1]。
圖9為建構諸如圖8A及8B中所述之隱含緩衝區適應性的低抖動緩衝區的實例。在該說明中,播放公用程式自解碼 器請求用於播放的樣本。解碼器接著自低抖動緩衝區請求足夠封包以允許播放公用程式進行不間斷的播放。在該說明中,封包載運語音通信且播放公用程式每20ms播放一樣本。替代性系統可藉由其它組態,將封包化之資料自低抖動緩衝區提供至播放公用程式,且封包化資料可為除語音通信之外的資料。
於圖9中將低抖動緩衝區作為封包之堆疊而加以說明。在該說明中,緩衝區首先接收PKT 49,且接著接收PKT 50、PKT 51、PKT 52、PKT 53等。該說明中之封包編號表示封包之順序。然而,在封包化系統中,並不保證能以此順序接收封包。為理解清晰起見,在該說明中,封包之接收與傳輸的數字順序(亦為播放之順序)相同。就說明目的而言,在圖9中,隨後接收之封包堆疊於低抖動緩衝區中之先前接收之封包上;舉例而言,PKT 49堆疊於PKT 50之上,PKT 51堆疊於PKT 50之上等等。低抖動緩衝區中之堆疊底部的封包將首先發送至播放公用程式。亦請注意,在該說明中,未展示目標低抖動緩衝區之長度。
在圖9中用圖表表示封包之接收、封包之預期接收時間及封包之播放時間相對於時間的關係。說明了每接收到一封包後更新的緩衝區狀態。舉例而言,PKT 49於時間t0 接收到,其中PKT 49預期於時間t1 被播放。接收到PKT 49時之緩衝區狀態圖示於圖表頂部PKT 49之接收時間t0 上。低抖動緩衝區處接收之每一封包的接收時間圖示為已接收。預期播放時間圖示於已接收時間下方。播放時間標識為播 放。
在該實例中,用於播放之下一封包最初為PKT 49,其預期於時間t0 時被播放。下一後續封包預期於時間t1 時被播放等等。第一封包PKT 49於預期播放時間t0 之前被接收。因此,PKT 49如期於時間t0 時被播放。下一封包PKT 50預期於時間t1 被播放。然而,PKT 50之接收被延遲,且一疑符代替PKT 50而被發送至播放公用程式。PKT 50之延遲導致先前描述之缺空。於預期播放時間t1 之後且於下一預期播放時間t2 之前接收到PKT 50。一旦接收到PKT 50,其即被儲存於低抖動緩衝區中。因此,當接收到於時間t2 時播放一封包之請求時,系統搜尋低抖動緩衝區中之最低順序之封包;且將PKT 50提供至播放公用程式以於時間t2 時播放。請注意,藉由使用隱含緩衝區適應性,即使未及時接收到PKT 50以如期播放,PKT 50亦可稍後播放且序列之剩餘部分自該點恢復。如所說明,後續封包PKT 51、PKT 52等被及時接收並播放,避免了更多的疑符。
雖然隱含緩衝區適應性似乎增加了封包之端對端延遲,但實際並非如此。由於隱含緩衝區適應性導致較小數量之缺空,故自以上方程式估算之低抖動緩衝區值維持為一較小值。因此,隱含緩衝區適應性之總效果可整體上減少封包之平均端對端延遲。
隱含緩衝區適應性可增強具有通話陡贈之通信處理。通話陡贈是指語音通信之話音部分,其中語音通信與正常話音型式一樣包括話音部分及無聲部分。在話音處理中,語 音編碼器產生用於話音部分之一封包及用於無聲部分之另一封包。話音封包以同一編碼率編碼,而無聲封包則以不同編碼率編碼。當於低抖動緩衝區處接收到已編碼之封包時,低抖動緩衝區根據編碼率來識別封包類型。低抖動緩衝區假定話音訊誆為通話陡贈之部分。第一非無聲訊誆為通話陡贈之開始。當接收到無聲封包時通話陡贈結束。在不連續傳輸中,並非所有無聲封包皆被傳輸。此係因為接收機可實現模擬雜訊以佔據通信之無聲部分。在連續傳輸中,所有無聲封包皆被傳輸並接收。在一實例中,低抖動緩衝區根據已接收封包之類型來調整低抖動緩衝區長度。換言之,系統可決定減少通信之無聲部分所需要的低抖動緩衝區的長度。請注意,隱含緩衝區適應性方法可應用於任何通信,其中根據諸如固定比率等之預定時序機制(time scheme)來播放。
時間彎曲
一通話陡贈通常由多個資料封包組成。在一實例中,通話陡贈之第一封包之播放可被延遲到等於低抖動緩衝區延遲的長度。低抖動緩衝區延遲可以多種方式加以判定。在一方案中,低抖動緩衝區延遲可為基於諸如上述方程式1之演算法而計算得之低抖動緩衝區延遲。在另一方案中,低抖動緩衝區延遲可為其接收等於低抖動緩衝區延遲之長度的語音資料的時間。或者,低抖動緩衝區延遲可選作上述值中之較小值。在此實例中,假定使用方程式1計算低抖動緩衝區延遲為60ms,且通話陡增之第一封包於第一 時間t1 接收到。當通話陡增之下一封包於第一封包後50ms時被接收到,則適應型低抖動緩衝區資料等於低抖動延遲60ms。換言之,自適應型低抖動緩衝區處接收到封包時至播放的時間為60ms。請注意,適應型低抖動緩衝區之目標長度可設定為達成60ms之延遲。此計算判定為了符合延遲時間需要儲存多少封包。
適應型低抖動緩衝區監視緩衝區之資料的填補及排空,且調整緩衝區之輸出以將緩衝區維持為目標延遲長度,意即維持達成該目標延遲時間之資料之數量。當低抖動緩衝區發送通話陡增之第一封包以播放時,存在一等於△之延遲,其中△=MIN(低抖動緩衝區延遲,接收等於低抖動延遲之語音資料的時間)。通話陡增之後續封包之延遲時間為△加上其播放先前封包之時間。因此,一旦第一封包之低抖動緩衝區延遲已經定義,相同通話陡增之後續封包的低抖動緩衝區延遲即被隱式地定義。實務上,低抖動緩衝區延遲之此定義可能需要額外考慮以適應諸如圖10中所述之情況。
圖10說明通話陡增中之語音資訊的傳輸。通話陡增150接收於時間t0 且通話陡增154接收於時間t2 。在通話陡贈150與通話陡贈154之間接收到20ms之無聲時段152。一旦接收,適應型低抖動緩衝區即可儲存已接收之資料且判定每一通話陡增之播放延遲。在該實例中,通話陡增150於時間t0 時接收於適應型低抖動緩衝區處,其中適應型低抖動緩衝區延遲時間經計算為80ms。將低抖動緩衝區延遲 添加至接收時間以得到播放時間。以此方式,通話陡增150於播放之前由適應型低抖動緩衝區延遲80ms。通話陡增150於播放時間t1 時(其中t1 =t0 +80ms)或其被接收達80ms後開始播放;且於時間t4 完成播放。藉由使用諸如方程式1之演算法來計算如上目標低抖動緩衝區長度,應用於通話陡增154之低抖動緩衝區延遲為40ms。此意謂通話陡增154之第一封包係播放於時間t3 (其中t3 =t2 +40ms)或其被接收達40ms後。然而,於時間t3 播放封包154與播放通話陡增150之最後封包(其於時間t4 完成播放)衝突。因此,已計算之40ms的低抖動緩衝區延遲(就封包154而言)不允許通話陡增150有足夠時間來完成播放。為避免此衝突並允許正確播放封包154及通話陡贈150之最後封包,應於播放通話陡增150之最後封包之後間隔一無聲時段再播放通話陡增154之第一封包。在此實例中,通話陡增150及通話陡增154自t3 至t4 重疊。因此,該方案中之播放方法不合乎需要。為防止本文所描述之封包播放之間的重疊,需要偵測何時播放先前通話陡增之最後封包。因此,計算一封包之低抖動緩衝區延遲可考慮先前播放封包的播放時序,以避免重疊或衝突。
如上所述,在一實例中,於通話陡增開始時計算或更新低抖動緩衝區延遲。請注意,接收機可計算由編碼率所確定之無聲時段的第一低抖動緩衝區延遲(諸如其中1/8之編碼率用於無聲時段);且接收機可計算話音部分之第二低抖動緩衝區延遲,其中話音具有不同於無聲編碼率之編碼 率。然而,將低抖動緩衝區延遲之更新限制至通話陡增之開始可為限制性的,此係因為通話陡增之長度經常變化且操作條件可於通話陡增期間發生改變(參看圖10之實例)。因此,可能需要於通話陡增期間更新低抖動緩衝區延遲。替代性實例增強了低抖動緩衝區,此使得追蹤變化的網路條件(包括於通話陡增期間的)成為可能。
請注意,需要控制來自適應型低抖動緩衝區之資料流以維持目標延遲長度。以此方式,若適應型低抖動緩衝區以多種延遲來接收資料,則來自適應型低抖動緩衝區之資料經調整以允許緩衝區填充足夠達成目標適應型低抖動緩衝區長度之資料。當適應型低抖動緩衝區接收之封包不足以維持目標延遲長度時,可使用時間彎曲來擴展封包。類似地,當適應型低抖動緩衝區接收之封包過多且儲存封包超過目標延遲長度時,可使用時間彎曲來壓縮封包。如本文所述,適應型低抖動緩衝區可與解碼器協作以對封包進行時間彎曲。
圖11為包括兩個藉由一網路元件通信之接收機之系統的方塊圖。兩個接收機為AT 252及AT 282;如所說明,AT 252及AT 282適合經由基地台(BS)270進行通信。在AT 252中,傳輸處理單元264將語音資料傳輸至編碼器260,編碼器260將語音資料數字化並將封包化資料發送至下層處理單元258。接著將封包發送至BS 270。當AT 252接收來自BS 270之資料時,資料首先於下層處理單元258中經處理,資料封包自下層處理單元258提供至適應性低抖動緩 衝區256。接收之封包儲存於適應型低抖動緩衝區256中直至達成目標低抖動緩衝區之長度為止。一旦達成目標低抖動緩衝區之長度,則適應型低抖動緩衝區256將資料發送至解碼器254。在所說明之實例中,實施時間彎曲之壓縮及擴展可於解碼器254中執行,解碼器254將封包化之資料轉換為語音資料並將該語音資料發送至接收處理單元262。在本發明之另一實例中,時間壓縮及擴展(時間彎曲)可由控制器(未圖示)在適應型低抖動緩衝區內執行。AT 282之性能與AT 252之性能相似。AT 282沿自傳輸處理單元294至編碼器290、至下層處理單元288且最後至BS 270之路徑傳輸資料。AT 282沿自下層處理單元288至適應型低抖動緩衝區286、至解碼器284、至接收處理單元292之路徑接收資料。雖然未說明進一步之處理,但是其可影響諸如語音之資料之播放且可涉及音訊處理、螢幕顯示等。
方程式1中給定之低抖動緩衝區方程式計算通話陡增開始時之低抖動緩衝區延遲。低抖動緩衝區延遲可表示一特定數目之封包(諸如由通話陡贈所決定),或可表示用於資料(諸如語音資料)播放所期望的時間當量。此處請注意,低抖動緩衝區具有目標尺寸且該目標尺寸決定低抖動緩衝區在任何時刻所期望儲存之資料量。
由於通道條件及其它操作條件而引起之封包延遲的差異可導致封包到達適應型低抖動緩衝區之時間不同。因此,適應型低抖動緩衝區中之資料可小於或大於經計算之低抖動緩衝區延遲值DEJITTER_DELAY。舉例而言,封包可以 低於或高於編碼器最初產生之封包之速率而到達低抖動緩衝區。當封包以低於期望之速率到達低抖動緩衝區時,由於輸入之封包不能以相同速率補充輸出之封包,所以低抖動緩衝區開始枯竭。或者,若封包以快於編碼器處產生之速率的速率到達時,則由於封包輸出之速率低於其輸入之速率,所以低抖動緩衝區之尺寸開始增加。前一情形可導致缺空,而後一情形可由於低抖動緩衝區中之較大緩衝時間而導致高的端對端延遲。若封包資料系統之端對端延遲減少(存取終端機移動至較少負載之區域或使用者移動至具有較佳通道品質之區域),則需要將該延遲減少併入語音之播放,因此後一情形係重要的。端對端延遲係一重要話音品質因素且播放延遲之任何減少皆可理解為會話或話音品質之提高。
為校正低抖動緩衝區處DEJTTTER_DELAY與實際存在於低抖動緩衝區中之資料量之間的偏差,低抖動緩衝區之一實例採用了時間彎曲。時間彎曲涉及擴展或壓縮話音封包之持續時間。低抖動緩衝區藉由於適應型低抖動緩衝區開始枯竭時擴展話音封包、及藉由於適應型低抖動緩衝區變得大於DEJTTTER_DELAY時壓縮話音封包來實施時間彎曲。適應型低抖動緩衝區可與一解碼器協作以對封包進行時間彎曲。時間彎曲提供大體改良之話音品質而不增加端對端延遲。
圖12為實施時間彎曲之適應型低抖動緩衝區之實例的方塊圖。實體層處理單元302向資料堆疊304提供資料。資料 堆疊304將封包輸出至適應型低抖動緩衝區及控制單元306。前向鏈路(FL)媒體存取控制(MAC)處理單元300向低抖動處理單元306提供交遞指示。MAC層實施用於在實體層上(意即於空氣中)接收及發送資料之協定。MAC層可包括安全、加密、鑑別及連接資訊。在一支持IS-856之系統中,MAC層含有支配控制通道、存取通道以及前向及反向訊務通道的規則。目標長度估算器314使用方程式1中給定之計算而為低抖動緩衝區提供目標低抖動緩衝區長度。向目標長度估算器314之輸入包括封包到達資訊及當前封包錯誤率(PER)。請注意,替代性組態可包括適應型低抖動緩衝區及控制單元306內之目標長度估算器314。
在一實例中,適應型低抖動緩衝區及控制單元306進一步包括控制提供至播放之資料速率的播放控制。封包自適應型低抖動緩衝區及控制單元306發送至一非連續傳輸(DTX)單元308,其中在不接收話音資料時,DTX單元308向解碼器310提供背景雜訊。請注意,適應型低抖動緩衝區及控制單元306提供之封包係為用於解碼處理而準備且可稱為語音編碼封包。解碼器310對封包解碼並將脈衝碼調變(PCM)話音樣本提供至時間彎曲單元312。在替代性實例中,時間彎曲單元312可建構於解碼器310內。時間彎曲單元312接收來自適應型低抖動緩衝區及控制單元306之時間彎曲指示符。在一實例中,時間彎曲指示器命令時間彎曲單元312擴展或壓縮資料。時間彎曲指示符指示擴展、壓縮或不彎曲。時間彎曲指示符可視為啟動時間彎曲單元 312處之動作之控制訊號。時間彎曲指示符可為規定如何擴展或壓縮封包之訊息。時間彎曲指示符可識別需要時間彎曲之封包及採取之動作(擴展或壓縮)。此外,時間彎曲指示符可向時間彎曲單元312提供選項之一選擇。在無聲間隔期間,DTX模塊將低抖動緩衝區提供之疑符流修改為解碼器用以重建更精確且更高品質之背景雜訊的疑符及無聲訊誆流。在一替代性實例中,時間彎曲指示符打開及關閉時間彎曲。在另一實例中,指示符識別用於播放之壓縮及擴展之數量。時間彎曲單元312可修改來自解碼器之樣本且將該等樣本提供至音訊處理器316,音訊處理器316可包括一介面及轉換單元,以及音訊驅動器及揚聲器。
雖然時間彎曲指示符識別何時壓縮或何時擴展,但是需要判定應對給定封包施加多少時間彎曲。在一實施例中,時間彎曲之數量為固定的,其中根據話音週期或基周來對封包進行時間彎曲。
在一實施例中,時間彎曲指示符係作為目標擴展或目標壓縮等級之百分比而傳達。換言之,時間彎曲指示符命令壓縮給定百分比或擴展給定百分比。
解碼器亦提供用於聾人資訊之電傳打字機/電信器件(TTY/TDD)之帶內處理的狀態。該指示用於遮蔽低抖動緩衝區提供之時間彎曲指示。若解碼器處理具有TTY/TDD資訊之封包,則應禁用時間彎曲。此可以兩種方式完成:向低抖動緩衝區控制器提供TTY/TDD狀態或向時間彎曲單元提供TTY/TDD狀態。若解碼器TTY/TDD狀態提供至低抖 動緩衝區控制器,則當語音解碼器指示處理TTY/TDD時,該控制器不應指示任何擴展或壓縮指示。若解碼器TTY/TDD狀態提供至時間彎曲單元,則其充當篩選器且若解碼器正處理TTY/TDD資訊,則時間彎曲單元不按照時間彎曲指示而起作用。
在圖12中說明之系統中,適應型低抖動緩衝區及控制單元306監視輸入資料之速率,且當過多或過少封包可用或被緩衝時,產生時間彎曲指示符。適應型低抖動緩衝區及控制單元306判定何時進行時間彎曲及採取何種動作。圖13說明藉由使用壓縮及擴展臨限值來進行時間彎曲判定之適應型低抖動緩衝區之一實例的操作。低抖動緩衝區積累於不規則時間間隔到達之封包。低抖動目標長度估算器314產生一目標低抖動緩衝區長度;隨後將該目標低抖動緩衝區長度應用於低抖動緩衝區。實際上,適應型低抖動緩衝區及控制單元306使用低抖動緩衝區長度值來作出關於低抖動緩衝區操作之控制決定且控制播放。壓縮臨限值及擴展臨限值分別指示何時觸發壓縮或擴展。此等臨限值可規定為低抖動目標長度之幾分之一。
如圖13中所說明,目標低抖動緩衝區長度給定為LTarget 。壓縮臨限值給定為TCcmpress ,且擴展臨限值給定為TExpand 。當低抖動緩衝區長度增加超過壓縮臨限值TCcmpress 時,低抖動緩衝區指示解碼器壓縮封包。
類似地,當低抖動緩衝區長度枯竭而低於擴展臨限值TExpand 時,低抖動緩衝區指示解碼器擴展封包,且以較低 速率而有效地播放封包。
擴展臨限值與壓縮臨限值之間的操作特點(a point of operation)避免了缺空以及端對端延遲之過度增加。因此,目標操作處於TCcmpress 與TExpand 之間。在一實例中,用於擴展臨限值及壓縮臨限值之值各設定為低抖動緩衝區之目標值的50%及100%。但在一實例中,時間彎曲可於解碼器內部執行,在替代性實例中,該功能可於(例如)解碼之後在解碼器外部執行。
圖14說明具有及不具有時間彎曲之封包之播放。在圖14中,PKT 1於時間t1 傳輸,PKT 2於時間t2 發送,依此類推。封包按照指示到達接收機,其中PKT 1於時間t2 '到達,且PKT 2於時間t2 "到達。就每一封包而言,不使用時間彎曲之播放時間給定為PLAYBACK WITHOUT WARPING。相反,使用時間彎曲之播放時間給定為PLAYBACK WITH WARPING。由於該實例為用於諸如話音通信之即時資料,因此封包之預期播放時間具有固定時間間隔。在播放期間,理論上每一封包皆於預期播放時間之前到達。若封包到達時間太遲而不能在預期時間播放,則會影響播放品質。
PKT 1及PKT 2於各自之預期播放時間之前被接收到,且因此,PKT 1及PKT 2於預期播放時間播放而無需時間彎曲。PKT 3及PKT 4同時於時間t4 '被接收到。然而,因為每一封包於其相關預期播放時間(PKT 3為t4 "且PKT 4為t5 ')之前被接收到,因此符合兩個封包之接收時間。PKT 3及 PKT 4被準時播放而無需彎曲。問題出現於PKT 5於預期播放時間之後的時間t6 '時被接收時。在預期播放時間播放的為一疑符而非PKT 5。PKT 5在開始播放疑符之後才到達。
在無需彎曲之第一方案中,PKT 5被丟棄失而PKT 6被接收並於下一預期播放時間被播放。請注意,在此情形下,PKT 6被及時接收到以用於播放。在第二方案中,若PKT 5及所有PKT 5後之封包均被延遲,則可能每一封包之到達時間均遠比預期播放時間晚,且導致一串疑符。在此兩個方案中,資訊丟失,意即,在第一方案中,PKT 5丟失,且在第二方案中,PKT 5及後續封包均丟失。
另外,使用隱含緩衝區適應性技術允許PKT 5於下一預期播放時間被播放,其中後續封包自該點繼續。隱含緩衝區適應性可防止資料丟失,但是延遲了封包流。
無需時間彎曲之此播放可增加通信系統中之總端對端延遲。如圖14中所說明,封包間延遲可導致資訊丟失或播放延遲。
藉由實施時間彎曲,當PKT 5於其預期播放時間之後到達時,封包經擴展且可避免疑符。舉例而言,擴展PKT 4可引起23毫秒而非20毫秒之播放。PKT 5於其被接收到時被播放。此比發送疑符的情況下其被播放之時間早(如在圖14中所述之無需時間彎曲但是具有隱含緩衝區適應性之播放的一替代例中所說明)。擴展PKT 4而非發送疑符使得播放品質下降較小。因此,時間彎曲提供較佳之總播放品質以及潛伏減少。如圖14中所說明,PKT 5後之封包使用時間 彎曲之播放早於不使用時間彎曲技術之播放。在此特定實例中,當使用時間彎曲時,PKT 7於時間t9 被播放,此早於不使用時間彎曲之播放。
應用時間彎曲以改良播放品質、同時考慮變化的操作條件以及傳輸資訊之特徵之變化的一例係於話音傳輸中。話音特徵(包括通話陡贈時段及無聲時段)改變時,目標低抖動緩衝區延遲長度及每一類型資料之壓縮臨限值及擴展臨限值亦會不同。
圖15說明歸因於通話陡增之間的低抖動延遲之差異而產生的"無聲壓縮"及"無聲擴展"的實例。在圖15中,陰影區域120、124及128表示通話陡增,而無陰影區域122及126表示接收之資訊的無聲時段。如所接收,通話陡增120開始於時間t1 且終止於時間t2 。於接收機處引入低抖動緩衝區延遲,且因此通話陡增120之播放開始於時間t1 '。低抖動緩衝區延遲確定為時間t1 '及時間t1 之間的差值。如所接收,無聲時段122開始於時間t2 且終止於時間t3 。無聲時段122被壓縮並播放於自時間t2 '至t3 '之無聲時段132,無聲時段132小於接收之無聲時段122之原始持續時間。通話陡增124於來源處開始於時間t3 且終止於時間t4 。通話陡增124自時間t3 '至時間t4 '於接收機處播放。無聲時段126(時間t4 至t5 )於接收機處播放時擴展為無聲時段136,其中(t5 '-t4 ')大於(t5 -t4 )。當低抖動緩衝區需要較早播放封包時,無聲時段可經壓縮,且當低抖動緩衝區需要延遲播放封包時,無聲時段可經擴展。在一實例中,無聲時段之壓縮或擴展 使語音品質下降甚微。因此,適應型低抖動延遲可在不降低語音品質之情況下達成。在圖15之實例中,適應型低抖動緩衝區壓縮及擴展由適應型低抖動緩衝區識別及控制之無聲時段。
請注意,如本文所使用,時間彎曲指回應於接收之資料到達時間及長度的對播放的適應型控制。可藉由使用播放時之資料壓縮、播放時之資料擴展或藉由使用播放時之資料壓縮及擴展兩者來實施時間彎曲。在一實例中,使用一臨限值來觸發壓縮。在另一實例中,使用一臨限值來觸發擴展。在另一實例中,使用兩種觸發:一種用於壓縮,另一種用於擴展。其它實例可使用多個觸發,以指示各等級之時間彎曲(例如不同速率之快速播放)。
時間彎曲亦可於解碼器內部執行。執行解碼器時間彎曲之技術在2005年5月5日申請之標題為"Time Warping Frame Inside the Vocoder by Modifying the Residual"的同在申請之申請案11/123,467)中加以描述,特意以引用的方式併入本文。
在一實例中,時間彎曲併入用於"合併"話音區段之方法。合併話音區段涉及比較至少兩個連續話音區段中之話音樣本,且若於相比之話音區段之間發現關聯性,則創建至少兩個連續區段之一單個區段。話音區段之合併於試圖保持話音品質之同時完成。保持話音品質及使非自然訊號(artifact)(諸如包括"滴答"及"劈啪"之對使用者而言降低品質的聲音)引入輸出語音最小化係藉由仔細選擇待合併之 區段而達成。話音區段之選擇係基於區段之相似性或關聯性。話音區段愈相似,則最終之話音品質愈好且引入話音非自然訊號的可能性愈低。
圖16說明隨時間變化而繪製之話音訊號。垂直軸表示訊號之振幅;水平軸表示時間。請注意,話音訊號具有獨特的型式,其中話音訊號之各部分隨時間變化而重複。在該實例中,話音訊號包括自時間t1 至時間t2 之第一區段,其於時間t2 至t3 期間作為第二區段而重複。當發現一區段如此重複時,可消除區段中之一個或一個以上區段(諸如時間t2 至t3 之區段),而實際上不影響樣本之播放品質或影響甚微。
在一實例中,可使用下文給定之方程式4來發現兩個話音區段之間的關係。關聯性係兩個區段之間的關係強度的量測標準。方程式4提供一絕對的且有界的關聯性因數(自-1至+1)作為關係強度的量測標準,其中低負數(low negative number)反映出比高正數(high positive number)較弱之關係(意即,較小關聯性),高正數反映出較強之關係(意即,較大關聯性)。若方程式4之應用指示"良好相似性",則執行時間彎曲。若方程式4之應用表現極小相似性,則合併之話音區段中可能存在非自然訊號。給出關聯性如下:
在方程式4中,x及y表示兩個話音區段,且m表示一視窗,兩個話音區段之間的關聯性藉由該視窗而計算。若方程式4之應用指示區段可在不引入非自然訊號之情況下予以合併,則可藉由使用"添加-重疊"技術來完成合併。添加-重疊技術將相比較之話音區段結合且自兩個獨立的話音區段中產生一個話音區段。使用添加-重疊進行之合併可基於諸如方程式5之方程式,給出如下:
i=0..WindowSize-1 WindowSize=RWindowSize
生成之樣本可為脈衝碼調變(PCM)樣本。每一PCM樣本均具有界定PCM樣本之位元長度及格式的預定格式。舉例而言,16位元帶正負號數可為表示PCM樣本之格式。應用方程式5而產生的添加-重疊技術包括加權以在區段1之第一PCM樣本與區段2之最後PCM樣本之間提供平緩過渡。在方程式5中,"RWindowSize"為參考視窗中之PCM樣本之數目,且"OutSegment"為所產生之添加-重疊區段之尺寸。"WindowSize"等於參考視窗尺寸且"Segment"為目標區段尺寸。視話音之取樣頻率、含頻量及品質與計算複雜性之間的所要權衡而判定該等變數。於圖17A及17B中描述上述添加-重疊技術。在圖17A中,展示了由160個PCM樣本構成之話音區段。在該實例中,RWindowSize由PCM樣本0-47表示。換言之,PCM樣本0-47對應於尺寸為 WindowSize之參考視窗中的樣本數目。Segment指目標搜尋區域之尺寸且由PCM樣本10-104表示。在該實例中,PCM樣本0-47與樣本10-104比較(一次比較一個樣本),以發現參考樣本與目標搜尋區域之間的最佳關聯性。發現最大關聯性之目標搜尋區域內的位置稱為"偏移"。在偏移點,RWindowSize可與對應於尺寸RWindowSize之部分Segment結合。對應於PCM樣本104-160之話音區段未改變。
在圖17B中,話音區段之第一RWindowSize樣本與話音區段之後續部分相比較(一次比較一個PCM樣本)。發現目標搜尋區域(Segment)內之樣本的RWindowSize與對應長度之間最大關聯性的位置為"偏移"。偏移長度為自話音區段之開始至RWindowSize與Segment之間關聯性最大之點的距離。一旦發現最大關聯性,RWindowSize即與對應長度Segment合併(於偏移點處)。換言之,藉由將RWindowSize添加至相同長度之Segment部分來執行添加-重疊。此步驟於所說明之偏移點處完成。剩餘樣本自所說明之原始區段複製。所產生之話音區段由自原始話音區段複製、附加於所說明之經合併之話音區段的剩餘樣本組成。所產生之封包比原始區段短一偏移之長度。此過程稱為話音壓縮。話音區段壓縮愈少,則可偵測到品質降低的可能性愈低。
當低抖動緩衝區含有較少數目之語音封包時執行語音擴展。若低抖動緩衝區具有較低數目之封包,則增加了缺空之可能性。低抖動緩衝區於缺空發生時可饋入一疑符至解 碼器。然而,此導致語音品質降低。為了防止語音品質降低,延遲播放低抖動緩衝區內之最後封包。此可藉由擴展封包而完成。
語音擴展可藉由重複話音區段之多個PCM樣本而完成。藉由與多於執行話音時間壓縮時之PCM話音樣本協作來完成重複多個PCM樣本而同時避免非自然訊號或基周均勻性(pitch flatness)。舉例而言,用於實施語音擴展之PCM樣本之數目為用於話音時間壓縮之PCM樣本之數目的雙倍。額外的PCM樣本可自播放之先前話音封包獲取。
圖18A說明語音擴展之一實例,其中每一封包或話音區段均係160個PCM樣本長且產生"預擴展"話音區段。在此實例中,比較兩個話音區段:一"當前"話音區段及一"先前"話音區段。當前話音區段之第一RWindowSize PCM樣本選為參考樣本。該等RWindowSize樣本與話音之先前封包之Segment相比較,其中判定最大關聯性(或偏移)之點。於偏移點處對RWindowSize PCM樣本添加-重疊先前封包內的對應尺寸之Segment。藉由將剩餘樣品自先前話音區段複製並附加至圖18A中所說明之經添加-重疊之區段來創建預擴展話音區段。接著,經擴展之話音區段之長度為圖18A中所說明之預擴展話音區段之長度加上當前話音區段之長度。在該實例中,PCM樣本自話音區段之開始處偏移。
在另一實例中,如圖18B中所說明般擴展當前封包或話音樣本。參考樣本RWindowSize位於當前話音區段開始之 處。將RWindowSize與剩餘當前話音封包相比較,直至發現最大關聯性(偏移)之點。對參考樣本添加-重疊被發現具有當前話音區段內最大關聯性的對應PCM樣本。接著,藉由將開始於封包之開始處的PCM樣本複本至偏移點、將經添加-重疊之話音區段附加於此且複製並附加來自當前封包之未經修改的剩餘PCM樣本來創建擴展話音區段。擴展話音區段之長度等於偏移加上原始封包之長度的總數。
在另一實例中,如圖18C中所說明而擴展話音,其中RWindowSize嵌入當前封包或話音區段內,且非發生於封包之開始處。Roffset係對應於當前封包之開始處與RwindowSize開始之點之間的距離的話音區段的長度。將RWindowSize添加-重疊在最大關聯性之點發現之當前封包內之PCM樣本的對應尺寸。接著,藉由複製開始於原始封包或當前封包之開始處且終止於偏移處之PCM樣本且附加經添加-重疊之話音區段及原始封包之剩餘PCM樣本而創建擴展語音區段。所生成之擴展話音區段的長度為原始封包之長度加上偏移並減去Roffset樣本(意即,以上定義之Roffset中的PCM樣本的數目。
經篩選之時間彎曲臨限值
在支持突發資料傳遞、稱為1×EV-DO之IS-856之系統中,傳遞至給定接收機之封包於前向鏈路上係分時多工,接收機可一次接收數個封包,而之後一段時間無封包。此種情況導致接收機之適應型低抖動緩衝區處接收突發資料。該接收之資料顯著經受"打包",其中存在兩個或兩個 以上封包幾乎同時準時到達之情形。此種打包容易導致封包之擴展與壓縮之間的波動,其中適應型低抖動緩衝區提供時間彎曲指令以回應接收資料之速率及緩衝區之狀態。舉例而言,考慮一實例,其中低抖動緩衝區之計算值於通話陡增開始時為40ms。稍後,低抖動緩衝區負載降至擴展臨限值之下,導致擴展一資料封包之決定。在播放該封包之後,打包之三個封包隨即到達。到達之資料填滿低抖動緩衝區之尺寸使得超出壓縮臨限值。此種情況使得封包被壓縮。由於打包封包到達後某段時間無封包到達,故低抖動緩衝區可能再次枯竭,使得封包被擴展。擴展與壓縮之間的此種轉換可導致高百分比之封包經受時間彎曲。此種情況並非所期望,此係因為吾人欲將歸因於時間彎曲而被修改訊號資訊之封包的百分比限制為一較小值。
藉由消除打包對適應型低抖動緩衝區之適應型控制及時間彎曲及資料播放所產生之影響,一實例避免了此種波動。該實例使用平均值來判定何時進行時間彎曲。藉由篩選用於該等計算中之變數來計算平均值。在一實例中,藉由篩選或平均低抖動緩衝區之尺寸來判定壓縮臨限值及擴展臨限值。請注意,緩衝區之尺寸指緩衝區之當前狀態。
由於本應使用非篩選值來擴展之某些封包不能藉由使用篩選值而被擴展,故比較緩衝區尺寸之篩選值與擴展臨限值可導致較高數目之缺空。另一方面,比較篩選值與壓縮臨限值可阻抑多數波動(或時間彎曲控制之間的轉換),其負面影響最小或無顯著負面衝擊。因此,可對壓縮臨限值 及擴展臨限值進行不同處理。
在一實例中,適應型低抖動緩衝區之尺寸的瞬時值係對照擴展臨限值而進行檢查。相反,低抖動緩衝區之篩選值係對照壓縮臨限值而進行檢查。一組態使用無限脈衝響應(IIR)篩選器來判定適應型低抖動緩衝區之平均尺寸,其中適應型低抖動緩衝區具有可定期(諸如每隔60ms)重新計算之篩選值。篩選時間常數可自打包統計數字中衍生且此一實例是1×EV-DO Rev A可為60msec。因為打包統計數字與瞬時低抖動緩衝區尺寸如何於操作期間波動具有較強關聯性,所以其用於衍生篩選時間常數。
歸因於錯過封包之擴展
如上文所提及,適應型低抖動緩衝區及用於控制適應型低抖動緩衝區及控制接收資料之時間彎曲的各種方法經調適以特定系統規格及操作條件。通信系統在實施諸如混成式自動重送要求(H-ARQ)機制之重送要求機制以改良效能時,此重送處理程序係關於如何擴展語音封包。具體言之,H-ARQ可引起封包重排(意即,無次序)後到達。參看圖19,其說明具有一定長度及擴展臨限值TExpand (給定為目標低抖動緩衝區長度之50%)之低抖動緩衝區。正播放之當前封包之序號為20(PKT 20)。低抖動緩衝區含有序號為21、23、24之三個封包,各標誌為PKT 21,PKT 23及PKT 24。當播放公用程式於播放PKT 20後請求下一封包時,因為低抖動緩衝區含有足夠封包以維持計算之低抖動緩衝區長度之50%以上的緩衝區長度,所以擴展臨限值並未觸 發。在該實例中,PKT 20因此未被擴展。因為封包係按順序播放,所以若PKT 22於PKT 21結束播放時未到達,則此可能導致缺空,且因此播放公用程式不會在PKT 22之前播放PKT 23。即使擴展臨限值未觸發,一實例亦預期接收封包之不連續性且選擇擴展PKT 21以允許更多時間用於PKT 22之到達。以此方式,PKT 21之擴展可避免錯過封包及疑符。因此,即使低抖動緩衝區長度大於擴展臨限值TExpand ,封包亦可被擴展。
封包得以擴展之條件可得到增強。如上文所述,若低抖動緩衝區尺寸低於擴展臨限值,則封包可被擴展。在另一方案中,若具有下一序號之封包並不存在於低抖動緩衝區內,則封包可被擴展。
如先前所提及,低抖動緩衝區延遲可於通話陡增之開始時進行計算。由於網路條件(包括但不限於通道條件及負載條件)於通話陡增期間(尤其在較長的通話陡增期間)可能改變,故一實例經組態以於通話陡增期間改變低抖動緩衝區延遲。因此,上文給定之低抖動緩衝區方程式可於通話陡增期間每隔CHANGE_JITTER_TIME秒而定期地重新計算。或者,變數可於諸如操作條件、負載、空中介面指示或其它事件中之顯著變化的觸發事件發生時進行重新計算。在一實例中,CHANGE_JITTER_TIME之值可設定為0.2sec(200ms)。
例如壓縮臨限值及擴展臨限值之時間彎曲臨限值可指導如何於通話陡增期間改變值。正常操作指接收機在適應型 低抖動緩衝區狀態處於壓縮臨限值與擴展臨限值之間且約為一目標低抖動緩衝區長度時之操作。每一臨限值均用作一觸發。當達成或違反臨限值時,適應型低抖動緩衝區內之封包可視臨限值而予以擴展或壓縮。適應型低抖動緩衝區之尺寸可於其接收封包時繼續擴展或縮小。適應型低抖動緩衝區之尺寸的連續改變表明擴展臨限值及壓縮臨限值可於通信期間不斷接近。一般而言,系統試圖使適應型低抖動緩衝區尺寸保持於擴展臨限值與壓縮臨限值之間,其被視為一穩定狀態。在該穩定狀態中,適應型低抖動緩衝區之尺寸未改變。而接收封包改變,且因此適應型低抖動緩衝區尺寸之改變可自動引起壓縮臨限值/擴展臨限值分別觸發且壓縮/擴展封包,直至達成新的適應型低抖動緩衝區延遲為止。在此方案中,適應型低抖動緩衝區目標長度根據CHANGE_JITTER_TIME而更新。因為低抖動緩衝區尺寸在由於達到時間彎曲擴展臨限值/壓縮臨限值之任一者而觸發時自動改變,所以不必計算低抖動緩衝區之實際尺寸。在一實例中,CHANGE_JITTER_TIME之值可設定為0.2sec(200ms)。
交遞預彎曲
交遞通常伴隨有較短時間之覆蓋損失。當即將交遞時,AT可能經歷不良通道條件及增加之封包延遲。一實例以對語音封包應用時間彎曲之特定方式處理交遞條件。一旦AT決定交遞至一新基地台,該資訊即用於控制低抖動緩衝區。一旦接收到此交遞訊號,AT即進入"預彎曲"模式。在 此模式中,AT擴展封包,直至符合兩個條件中之一者為止。在第一條件下,低抖動緩衝區持續積累封包且積累之擴展導致低抖動緩衝區尺寸PRE_WARPING_EXPANSION等於低抖動緩衝區之最大長度。換言之,執行封包之擴展,直至達成PRE_WARPING_EXPANSION為止。或者,在第二條件下,滿足時間段WARPING_TIME。計時器於接收交遞訊號或中斷指示符(outage indicator)時啟動;於WARPING_TIME時終止。一旦滿足兩個條件中之一者,AT即退出預彎曲模式。在預彎曲模式期間,除非滿足條件End_Talkspurt(稍後描述),否則無封包被壓縮,此係因為低抖動緩衝區需要累積足夠封包以按規則間隔將其發送至播放公用程式。除非低抖動緩衝區被請求以較快速率發送封包,否則不會觸發封包之壓縮。此種情況在低抖動緩衝區具有足夠按規則間隔發送出之封包或表明已達到通話陡增結束時(諸如滿足條件End_Talkspurt)可能發生。End_Talkspurt表明通話陡增結束。在一實例中,其中期望封包具有規則間隔(例如,20ms),PRE_WARPING_EXPANSION之值可設定為40ms且WARPING_TIME之值可等於100時隙(166ms)。
交遞僅為中斷事件之一形式。低抖動緩衝區可實施一機制以處理交遞或其它類型之中斷。此所需要之資訊為需要多少低抖動超出量(de-jitter excess)來處理中斷(PRE_WARPING_EXPANSION)及低抖動緩衝區在中斷規避模式(WARPING_TIME)下工作之時間。
計算延遲缺空
由於上文提供之適應型低抖動緩衝區方程式經設計以為延遲缺空設定目標百分比,故要求精確量測延遲缺空之數目。當發生缺空時,並不瞭解缺空是歸因於封包延遲還是歸因於封包被丟棄於網路中之某處(意即,傳輸路徑)而引起。因此,需要準確說明缺空之類型。
在一實例中,就使用RTP/UDP/IP之通信而言,每一封包均包括一RTP序號。序號用於按傳輸封包之順序排列接收之封包。當發生缺空時,引起缺空之封包之RTP序號可儲存於諸如記憶體陣列之記憶體中。若具有確定序號之封包遲到,則將此缺空視為"延遲缺空"。
"延遲缺空速率"為缺空之數目與接收封包之總數目之比。缺空之數目與接收封包之數目在每次更新低抖動緩衝區方程式時皆設定為零。
通話陡增開始及結束之增強
參看圖20,其說明兩個使用者之間通話之時間線。在此圖式中,垂直軸表示時間。每一使用者均傳輸通話陡增時段及無聲時段,接著二者均被另一使用者接收。為清晰起見,陰影方塊區段400及410表示使用者1之通話陡增(話音區段)。無陰影方塊區段405表示使用者2之通話陡增。時間線上通話陡增外部之區域表示使用者未交談之時間,但可聆聽另一使用者或接收一無聲時段。區段400於使用者2處被播放。一旦區段400於使用者2處結束播放,使用者2即在等待一較短時間間隔之後開始交談。隨後使用者1聽 到使用者2之第一話音區段405開始。使用者1感覺到之會話往返程延遲(RTD)為使用者1停止說話時與使用者1聽到使用者2之話音區段開始時之間的時隙。會話RTD並非單向端對端延遲,但係針對特定使用者且自使用者角度來看係顯著的。舉例而言,若會話RTD對使用者1而話音過大,則其將提示使用者1開始再次講話,而不等待播放使用者2之話音區段。此種情況會打斷會話流且被視為通話品質降低。
可以不同方式改變使用者1經歷之會話RTD。在一實例中,可改變使用者2播放使用者1之話音區段之結束的時間。在第二實例中,改變了使用者1播放使用者2之話音區段之開始的時間。請注意,僅通話陡增之開始及結束之延遲會影響對話之語音品質。設計目的係進一步減少通話陡增開始及結束時之延遲。
在一實例中,目的係增強通話陡增之開始。藉由操控使用者1之通話陡增之第一封包而使聽者(使用者2)接收封包之時間早於實施預設適應型低抖動緩衝區之情況,此增強可得以完成。應用於適應型低抖動緩衝區中之封包的延遲可為預設適應型低抖動緩衝區延遲、計算之值或經選擇以使聽者於特定時間接收封包的值。在一實例中,藉由於每一接收之通話陡增開始時重新計算適應型低抖動緩衝區延遲而改變通話陡贈之第一封包的時序。當應用於通話陡增之第一封包的適應型低抖動緩衝區延遲減少時,將此第一封包加快發送至聽者。當應用之延遲增加時,稍後聽者即 接收到第一封包。第一封包之預設低抖動緩衝區延遲可小於計算之低抖動緩衝區延遲,且反之亦然。在所說明之實例中,每一通話陡增之第一封包的低抖動延遲受到稱為MAX_BEGINNING_DELAY的值(以秒為單位來量測)的限制。此值可為重新計算之低抖動緩衝區延遲或經設計以使聽者於指定時間接收封包的延遲。MAX_BEGINNING_DELAY之值可小於實際計算之低抖動緩衝區延遲。當MAX_BEGINNING_DELAY小於低抖動緩衝區之經計算之延遲且應用於通話陡增之第一封包時,通話陡增之後續封包得以自動擴展。因為低抖動緩衝區可以不同於播放封包之速率來接收封包,所以發生後續封包之自動擴展。在低抖動緩衝區播放封包時,低抖動緩衝區尺寸減小且達到擴展臨限值。一旦擴展臨限值就緒,擴展即被觸發且通話陡增中之後續封包被擴展,直至低抖動緩衝區接收之進入封包足以超過該擴展臨限值時為止。藉由實施MAX_BEGINNING__DELAY值,擴展後續封包時,聽者可較早接收到通話陡增之第一封包。較早接收到初始封包可令聽者滿意。增強通話陡增之開始具有少量增加缺空數目的可能。然而,MAX_BEGINNING_DELAY之適當值減輕了此效果。在一實例中,MAX_BEGINNING_DELAY之值計算為實際低抖動目標之幾分之一。舉例而言,TARGET DE-JITTER_BUFFER LENGTH之MAX_BEGINNING_DELAY值為0.7可導致缺空之略微增加。在另一實例中,MAX_BEGINMNG_DELAY值可為諸如40ms之固定值,其 導致缺空之略微增加(諸如於支持1×EV-DO Rev A之系統中)。
通話陡增中之後續封包的擴展並不降低總的語音品質。此於圖20中說明,其中使用者2接收到來自使用者1之通話陡增的第一封包且初始的或"單向延遲"被限制為Td1 。如所說明,話音區段400在無擴展或壓縮之情況下於使用者2處被接收到,然而,話音區段405於接收時在使用者1處被壓縮。
圖21係說明增強通話陡增之開始的流程圖。首先於步驟510中判定系統是否處於無聲模式。無聲模式可對應於通話陡增之間的無聲時段或低抖動緩衝區未接收到封包之時間。若系統並不處於無聲模式,則處理程序結束。若系統處於無聲模式,則於步驟520中執行目標低抖動長度估算。接著,在步驟530中判定系統是否得到增強。根據一實例,增強表明計算之目標適應型低抖動長度大於給定值,在一實例中其給定為諸如MAX_BEGINNING_DELAY之增強因數。在步驟540中,系統等待等於增強因數或目標長度之幾分之一之時段以開始播放。若系統未得到增強,則其在步驟550中等待新目標以開始播放。新目標之值可等於計算之目標低抖動緩衝區長度或最大低抖動緩衝區長度。
圖22亦說明通話陡增開始之增強。所描述之處理程序580在識別到通話陡增時開始。考慮兩個方案:i)需要時間彎曲;及ii)無需時間彎曲。在此實例中使用20ms長度之 話音封包。但是可實施任何長度之話音封包。本文之適應型低抖動緩衝區於播放封包之前等待20ms。步驟582中,此值為適應型目標低抖動緩衝區長度且接收自適應型低抖動緩衝區目標估算器。在該實例中,120ms相等於無需時間彎曲情況下接收6個封包,每個封包接收20ms。若未使用時間彎曲(判定方塊584),則在120ms內提供6個封包。因此,在第一方案中,低抖動緩衝區將於接收到6個封包之後開始播放封包。此在時間上等於120ms延遲。在第二方案中,藉由實施時間彎曲,低抖動緩衝區可擴展接收之前4個封包且於接收到該4個封包後開始播放。因此,即使此種情況下之80ms之低抖動緩衝區延遲小於120ms之估算之低抖動緩衝區延遲,亦可藉由擴展前面數個封包來避免可能之缺空。換言之,具有時間彎曲之封包播放比不具有時間彎曲之封包播放早。因此,在不影響缺空數目之情況下,時間彎曲可用於增強通話陡增之開始。
在另一實例中,可增強通話陡增之結束。此藉由壓縮通話陡增之最後數個封包而完成,從而減少端對端延遲。換言之,通話陡增結束處之延遲變小且第二使用者能較快聽到第一使用者。通話陡增之結束之增強於圖23中說明。本文之1/8速率之封包表明通話陡增之結束。此與可用於傳輸語音資料之全速率(速率1),半速率(速率1/2)或四分之一速率(速率1/4)之封包不同。其它速率之封包亦可用於在無聲時段期間或通話陡增結束時之傳輸。語音通信中將1/8速率之封包實施為無聲指示符之進一步描述在優先權 日期為2005年2月1日之標題為"METHOD FOR DISCONTINUOUS TRANSMISSION AND ACCURATE REPRODUCTION OF BACKGROUND NOISE INFORMATION"的同在申請之美國專利申請(申請號為11/123,478)中,特意以引用的方式併入本文。
如圖23中說明,在無時間彎曲之情況下,封包N至N+4係於100ms內播放。藉由壓縮通話陡增之最後數個封包,相同封包N至N+4可於70ms而並非於100ms內播放。當實施時間壓縮時,不會降低或略微降低話音品質。通話陡增之結束之增強假定接收機知道識別通話陡增之結束且預期何時結束的。
於一實例中藉由即時傳輸協定(RTP)發送語音封包時,指示符"通話陡增之結束"可於每一通話陡增之最後一封包中加以設定。當提供一封包以播放時,檢查低抖動緩衝區中之封包以獲取"通話陡增之結束"指示符。若指示符設定於封包之一者中且在提供用以播放之當前封包與"話音封包之結束"封包之間無丟失序號,則被提供用以播放之封包以及當前通話陡增之所有未來封包皆可被壓縮。
在另一實例中,若系統處於通話陡增中且將1/8速率之封包或具有無聲指示符(SID)位元設定之封包傳遞至播放公用程式,則系統轉變為無聲。1/8速率之封包可藉由檢查其尺寸而偵測到。SID位元載運於RTP頭內。若系統處於無聲時段且既非1/8速率亦無SID位元設定之封包被傳遞以播放,則系統轉變為通話陡增。請注意,在一實例中, 本文提供之適應型低抖動緩衝方法可於系統處於通話陡增狀態時執行,且於無聲狀態時忽視。
請注意,此方法可正確丟棄延遲到達之重複封包。若一重複封包到達時,則其僅被丟棄,此係由於封包之第一範例已於正確時間播放且其順序未保存於含有"延遲缺空"候選者之陣列中。
於一實例中藉由即時傳輸協定(RTP)發送語音封包時,"通話陡增之結束"指示符可於每一通話陡增之最後一封包中加以設定。當提供一封包以播放時,檢查低抖動緩衝區中之封包以獲取"通話陡增之結束"指示符。若指示符係於封包之一者中設定且在為播放而提供之當前封包與"通話陡贈之結束"封包之間未丟失序號,則為播放而提供之封包及當前通話陡增之所有未來封包皆被壓縮。
在圖24中,說明根據一實例而說明通話陡增之結束之增強的流程圖。一新封包開始於步驟600中。在步驟605中,若低抖動緩衝區長度大於或等於壓縮臨限值,則於步驟635中產生壓縮指示且於步驟600中向新封包提供尾標(tail)。在步驟605中,若低抖動緩衝區不大於或等於壓縮臨限值,則於步驟610中判定低抖動緩衝區長度是否小於或等於擴展臨限值。若是,則步驟615判定尾標是否等於可表示無聲時段或通話陡增之結束的封包速率。在一實例中,在無聲時段或通話陡增結束處,可以恆定間隔(例如,每隔20ms)發送連續一串1/8速率之封包。在圖24中,若在步驟615中判定尾標並不等於1/8速率之封包,則區段 於步驟620中經擴展且於步驟600返回至新封包。步驟625判定尾標是否等於1/8。在步驟625中,若尾標等於1/8速率,則於步驟635中產生壓縮指示。若其不等於1/8速率,則在步驟630中,於無時間彎曲之情況下正常播放。
隔開時間彎曲封包
當若干連續封包經壓縮(或擴展)時,此可顯著加速(或減速)音訊且引起語音品質降低。藉由隔開經時間彎曲之封包(意即,繼一個經時間彎曲之封包之後是數個未經時間彎曲的封包,再其後才是另一個經彎曲之封包),可避免此降低。
若上述隔開彎曲封包應用於擴展,則其可引起原本應擴展之一些封包未經擴展。由於封包括展係在低抖動緩衝區耗盡封包時執行的,故此可能導致缺空。因此,在一實例中,壓縮封包時可應用上述隔開彎曲封包,意即,繼一經壓縮之封包之後是數個未經壓縮之封包,再其後另一個封包才能被壓縮。兩個壓縮封包之間的不應壓縮的封包的數量通常可設定為2個或3個。
設定觸發時間彎曲之條件
本文所描述的係觸發語音封包之時間彎曲(擴展/壓縮)的若干條件。以下是判定封包經壓縮、經擴展亦或既未經壓縮亦未經擴展之一組組合規則(以偽碼之形式):
圖25說明耦合有解碼器功能之習知低抖動緩衝區的實施。在圖25中,期望封包以20ms間隔到達低抖動緩衝區。在此實例中發現封包以不規則時間間隔到達(意即具有抖動)。低抖動緩衝區積累封包,直至達到一特定低抖動緩衝區長度為止,使得低抖動緩衝區在一旦以諸如20ms之規則間隔發送封包時不會枯竭。在所要低抖動緩衝區長度處,低抖動緩衝區開始以20ms之規則間隔播放封包。解碼器以規格間隔接收到此等封包且將每一封包轉換為每一封包20ms之語音。替代性實施例可選擇其他時間 間隔。
比較而言,圖26說明支持時間彎曲之適應型低抖動緩衝區的實例。此處之封包以不規則間隔到達適應型低抖動緩衝區。然而,在此情形下,目標低抖動緩衝區長度小得多。此係因為若低抖動緩衝區開始枯竭,則時間彎曲允許擴展封包,從而允許補足適應型低抖動緩衝區之時間。若適應型低抖動緩衝區開始枯竭,則解碼器可擴展封包;若適應型低抖動緩衝區開始積累過多封包,則解碼器可壓縮封包。吾人發現不均勻傳遞之語音封包係自適應型低抖動緩衝區輸入解碼器及時間彎曲單元。因為使用了時間彎曲,解碼器視原始封包之到達時間將每一封包轉換為不同長度之語音封包,所以允許此等封包以規則間隔到達。舉例而言,在此實例中,解碼器將每一封包轉換為每一封包15ms-35ms之語音。由於封包可歸因於時間彎曲而較早播放,故所要緩衝區尺寸較小,使得網路中潛伏較少。
圖27為說明根據一實例之AT的方塊圖,該AT包括適應型低抖動緩衝區及時間彎曲控制單元。通信係經由接收電路714來接收。低抖動緩衝區706在處理器722之控制下儲存輸入之封包。處理器722進一步耦接至記憶體710。低抖動緩衝區亦耦接至傳輸電路712。下文將繼續說明(TBD continued)。
圖28說明一實例中之封包處理程序,其中封包由低抖動緩衝區接收且最終由說話者播放。如所說明,封包於低抖動緩衝區處被接收到。低抖動緩衝區於接收到來自解碼器 之封包請求後隨即將封包及時間彎曲資訊發送至解碼器。解碼器於接收到來自輸出驅動器之請求後隨即將樣本發送至輸出驅動器。
低抖動緩衝區內之輸入控制器追蹤輸入之封包且表明輸入之封包中存在錯誤。低抖動緩衝區可接收具有序號之封包。(例如)當輸入之封包具有低於先前之封包的序號時,輸入控制器可偵測到錯誤。位於圖28中之輸入控制器內之分類單元將輸入之封包分類。由分類單元界定之不同種類可包括"好封包"、"延遲封包"及"壞封包"等。輸入控制單元亦比較封包且將此資訊發送至低抖動緩衝區控制器。
圖28說明之低抖動緩衝區控制器接收來自低抖動緩衝區之輸入及輸出控制器的雙向輸入。低抖動緩衝區控制器接收來自輸入控制器之資料,其中此資料表明諸如接收之好封包之數目、接收之壞封包之數目等的輸入資料的特徵。低抖動緩衝區可使用此資訊來判定低抖動緩衝區何時需要收縮或擴展,此可產生時間彎曲控制器進行壓縮或擴展之一訊號。低抖動緩衝區控制器單元內之封包錯誤率(PER)單元計算PER延遲。低抖動緩衝區之輸出控制器請求來自低抖動緩衝區之封包。低抖動緩衝區之輸出控制器單元亦可表明所播放之最後一封包。
解碼器將封包請求發送至低抖動緩衝區且在發出此等請求後隨即自低抖動緩衝區接收到封包。解碼器內之時間彎曲控制器單元自低抖動緩衝區之輸出控制器接收時間彎曲控制資訊。時間彎曲控制資訊表明封包是經壓縮、經擴展 還是未經修改。解碼器接收之封包經解碼並轉換為話音樣本;且在接收到來自輸出驅動器內之緩衝區的請求之後隨即將樣本發送至輸出驅動器。輸出驅動器之樣本請求被解碼器內之輸出控制器接收。
輸入至輸出驅動器之時鐘判定輸出驅動器內之緩衝區請求資料之頻率。此係系統中之主要時鐘且可以不同方式建構。此系統之主要時鐘可藉由PCM樣本之取樣頻率而衍生。舉例而言,若傳輸窄頻話音,則系統每秒播放8000個PCM樣本(8KHz)。時鐘可驅動系統之剩餘部分。一方法係使音訊介面770於需要時自解碼器請求更多樣本。另一方法係使解碼器/時間彎曲器獨立地運行,且因為此模組瞭解先前傳遞之PCM樣本的數量,所以其瞭解接下來在何時提供更多樣本。
雖然本規範描述了本發明之特定實例,但是彼等熟習此項技術者能在不偏離本發明概念之情況下對本發明作出修改。舉例而言,本文之教示係針對電路轉換網路元件,但是亦可應用於封包交換網域之網路元件。又,本文之教示不限於驗證三重態組,但是亦可應用於包括兩個SRES值(習知格式之一者及本文所揭示之較新格式之一者)之單態三重態。
彼等熟習此項技術者將瞭解藉由使用諸多不同技術之任一者皆可表示資訊及訊號。舉例而言,上述通篇提到之資料、指令、命令、資訊、訊號、位元、符號及晶片可由電壓、電流、電磁波、磁場或磁粒子、光場或光粒子、或其 組合來表示。
彼等熟習此項技術者將進一步瞭解結合本文所揭示之實例之諸多說明性邏輯方塊、模組、電路、方法及演算法可作為電子硬體、計算機軟體或兩者之組合而實施。為明確說明硬體與軟體之間的可互換性,諸多說明性組件、方塊、模組、電路、方法及演算法已就其功能性於上文作了一般描述。此功能性是作為硬體還是軟體而實施依賴於施加於整個系統之特定應用及設計限制。熟習此項技術者可以諸多方式為每一特定應用實施上述功能,但是此等實施決定不應看做是偏離了本發明之範疇。
結合本文所揭示之實例而描述之諸多說明性邏輯方塊、模組及電路可藉由通用處理器、數位訊號處理器(DSP)、特殊應用積體電路(ASIC)、場可程式閘陣列(FPGA)或其他可程式化邏輯器件、離散閘或電晶體邏輯、離散硬體組件或設計為執行本文所述之功能的任何組合來實施或執行。通用處理器可為一微處理器,但是處理器可另外為任何習知的處理器、控制器、微控制器、或狀態機。處理器亦可建構為計算器件之組合,例如一DSP與一微處理器、複數個微處理器之組合、一或多個微處理器結合一DSP核心之組合、或其它任何此等組態。
結合本文揭示之實例描述之方法或演算法可直接體現為硬體、處理器執行之軟體模組或兩者之組合。軟體模組可駐於RAM記憶體、快閃記憶體、ROM記憶體、EPROM記憶體、EEPROM記憶體、暫存器、硬碟、可移硬碟、CD一 ROM或業界已知之其它任何形式的儲存媒體中。一儲存媒體可耦接至處理器,使得處理器可自該儲存媒體播放資訊及將資訊寫入儲存媒體。或者,儲存媒體可與處理器整合為一體。處理器及儲存媒體可駐於一ASIC中。
提供所揭示實例之上述描述係使任何熟習此項技術者能製造或使用本發明。熟習此項技術者將顯而易見對此等實例之諸多修改,且本文所定義之通用原則可在不偏離本發明之精神及範疇之情況下應用於其它實例。因此,本發明並非意欲限制於本文所展示之實例,而是欲使其在最廣泛之範疇內與本文所揭示之原則及新穎特徵一致。
50‧‧‧數位通信系統
52‧‧‧存取終端機
54‧‧‧解碼器
56‧‧‧低抖動緩衝區
58‧‧‧下層處理單元
60‧‧‧編碼器
62‧‧‧接收處理單元
64‧‧‧傳輸處理單元
70‧‧‧基地台
82‧‧‧存取終端機
84‧‧‧解碼器
86‧‧‧低抖動緩衝區
88‧‧‧下層處理單元
90‧‧‧編碼器
92‧‧‧接收處理單元
94‧‧‧傳輸處理單元
150,154‧‧‧通話陡增
152‧‧‧無聲時段
120,124,128‧‧‧陰影區域
122,126‧‧‧無陰影區域
132,136‧‧‧無聲時段
240‧‧‧隱含緩衝區適應性(IBA)模式
242‧‧‧正常模式
252‧‧‧存取終端機
254‧‧‧具有時間彎曲控制器之解碼器
256‧‧‧適應型低抖動緩衝區
258‧‧‧下層處理單元
260‧‧‧編碼器
262‧‧‧接收處理單元
264‧‧‧傳輸處理單元
270‧‧‧基地台
282‧‧‧存取終端機
284‧‧‧具有時間彎曲控制器之解碼器
286‧‧‧適應型低抖動緩衝區
288‧‧‧下層處理單元
290‧‧‧編碼器
292‧‧‧接收處理單元
294‧‧‧傳輸處理單元
300‧‧‧前向鏈結(FL)媒體存取控制(MAC)處理單元
302‧‧‧實體層處理單元
304‧‧‧資料堆疊
306‧‧‧適應型低抖動緩衝區及控制單元
308‧‧‧不連續傳輸(DTX)單元
310‧‧‧解碼器
312‧‧‧時間彎曲單元
314‧‧‧目標估算器
316‧‧‧音訊處理器
400,410‧‧‧陰影方塊區段
405‧‧‧無陰影方塊區段
704‧‧‧錯誤校正
706‧‧‧適應型低抖動緩衝區
708‧‧‧解碼器
710‧‧‧記憶體
712‧‧‧傳輸單元
714‧‧‧接收機
716‧‧‧編碼器
718‧‧‧時間彎曲控制器
720‧‧‧混合式自動重送要求(H-ARQ)控制器
722‧‧‧處理器
724‧‧‧語音處理
726‧‧‧通話陡增ID
750‧‧‧適應型低抖動緩衝區
752‧‧‧輸入控制器
754‧‧‧分類單元
756‧‧‧低抖動緩衝區控制器
758‧‧‧封包錯誤率計算
760‧‧‧輸出控制器
764‧‧‧TW控制器
766‧‧‧輸出控制器
770‧‧‧音訊介面及控制單元
772‧‧‧緩衝區
780‧‧‧揚聲器
790‧‧‧時鐘
802‧‧‧適應型低抖動緩衝區
804‧‧‧解碼器
806‧‧‧固定變數之單元
808‧‧‧音訊驅動器
810‧‧‧音訊介面及控制單元
820‧‧‧揚聲器
圖1係先前技術之通信系統的方塊圖,其中一存取終端機包括一低抖動緩衝區。
圖2說明先前技術之低抖動緩衝區。
圖3係說明導致"缺空"之封包的傳輸、接收及播放的時序圖。
圖4A及4B係說明兩種方案中計算最佳低抖動緩衝區之長度的時序圖。
圖5係說明由延遲封包導致之一連串缺空的時序圖。
圖6係說明計算目標低抖動緩衝區之長度的流程圖。
圖7A係說明第一種方案中傳輸封包之時序圖。
圖7B係說明接收無低抖動緩衝區適應性之封包的時序圖。
圖7C係說明接收具有低抖動緩衝區適應性之封包之時序 圖,其中接收機機可於一封包之期望時間後接收到該封包。
圖8A係說明隱含緩衝區適應性之一實例的流程圖,適應性允許接收機機於一封包之期望時間之後接收該封包。
圖8B係適應型低抖動緩衝區之操作模式的狀態圖。
圖9係說明根據另一實例之低抖動緩衝區適應性之應用的時序圖。
圖10係說明根據一實例之通話陡增中傳輸語音資訊的圖,其中低抖動緩衝區延遲不足以避免資料碰撞。
圖11為併入一適應型低抖動緩衝區之通信系統的方塊圖。
圖12係包括一適應型低抖動區及一時間彎曲單元之接收機之一部分的方塊圖。
圖13說明包括壓縮臨限值及擴展臨限值之適應型低抖動緩衝區之一實例。
圖14係說明對具有各種延遲之封包之接收時間進行彎曲的時序圖。
圖15係說明i)語音區段之無聲部分之壓縮及ii)語音區段之無聲部分之擴展的實例的時序圖。
圖16係說明話音訊號之時序圖,其中話音訊號之若干部分可重複。
圖17A係說明一語音區段之圖,其中確定了用於添加-重疊(add-overlap)操作之參考視窗中之PCM樣本的數目(稱為RwindowSize),且其中確定了目標區段或所要區段之尺寸 (稱為Segment)。
圖17B係說明根據一實例之壓縮話音區段之添加-重疊操作之應用的圖。
圖18A係說明多個語音區段之圖,其中確定了用於添加-重疊操作之參考視窗中的PCM樣本的數目(稱為RWindowSize),且其中確定了目標區段或所要區段之尺寸(稱為Segment),以準備擴展當前語音區段。
圖18B係說明根據一實例之擴展語音樣本之添加-重疊操作的應用的圖。
圖18C係根據替代性實例之擴展一語音樣本之操作的應用的圖。
圖19係說明允許延遲封包及無序到達之封包到達的封包括展的圖,通常於混成式自動重送要求方式(Hybrid ARQ)之再傳輸中為如此。
圖20係說明兩個使用者之間的通話的時間線的圖。
圖21係說明根據一實例於通話陡增開始時增強的流程圖。
圖22係說明根據替代性實例於通話陡增開始時增強的圖。
圖23係說明通話陡增結束時增強的圖。
圖24係說明根據一實例之通話陡增結束時增強的圖。
圖25係說明先前技術之低抖動緩衝區及解碼器系統之操作的圖,其中低抖動緩衝區以規則時間間隔將封包傳遞至解碼器。
圖26係說明根據一實例之適應型低抖動緩衝區及解碼器之操作的圖,其中適應型低抖動緩衝區以不規則時間間隔將封包傳遞至解碼器。
圖27係說明根據一實例之包括一適應型低抖動緩衝區及一時間彎曲控制單元的存取終端機(AT)的方塊圖。
圖28說明根據一實例之包括一適應型低抖動緩衝區、且適合進行時間彎曲之封包的一接收機的一部分。
圖29說明根據另一實例之包括一適應型低抖動緩衝區、且適合進行時間彎曲之封包的一接收機的一替代性實例。
750‧‧‧適應型低抖動緩衝區
752‧‧‧輸入控制器
754‧‧‧分類單元
756‧‧‧低抖動緩衝區控制器
758‧‧‧封包錯誤率計算
760‧‧‧輸出控制器
764‧‧‧TW控制器
766‧‧‧輸出控制器
770‧‧‧音訊介面及控制單元
772‧‧‧緩衝區
780‧‧‧揚聲器
790‧‧‧時鐘

Claims (93)

  1. 一種用於處理封包化資料之裝置,其包含:一記憶體儲存單元,其經組態以儲存資料封包;及一第一控制器,其經組態以將儲存於該記憶體儲存單元中之封包之一數目與該記憶體儲存單元之一第一時間彎曲臨限值相比較,該第一控制器進一步經調適以在經儲存之封包之該數目不符合該第一時間彎曲臨限值時產生一時間彎曲指示符,其中該第一時間彎曲臨限值包含儲存於該記憶體儲存單元中之封包之一目標延遲長度之一第一百分比。
  2. 如請求項1之裝置,其中該裝置進一步包含:一輸入控制器,其經組態以接收封包且將封包儲存於該記憶體儲存單元中;及一輸出控制器,其耦接至該第一控制器且經組態以自該第一控制器接收該時間彎曲指示符。
  3. 如請求項2之裝置,其進一步包含:用於回應於該時間彎曲指示符而對封包進行時間彎曲之構件,其中該輸出控制器經調適以將該時間彎曲指示符提供給用於對封包進行時間彎曲之該構件。
  4. 如請求項1之裝置,其中該第一控制器經進一步組態以將儲存於該記憶體儲存單元中之封包之該數目與該記憶體儲存單元之一第二時間彎曲臨限值相比較且在經儲存之封包之該數目超過該第二時間彎曲臨限值時產生該時 間彎曲指示符。
  5. 如請求項1之裝置,其中該第一控制器經進一步組態以產生該時間彎曲指示符之一第一值用於封包之擴展。
  6. 如請求項1之裝置,其中該第一控制器經進一步組態以產生該時間彎曲指示符之一第二值用於封包之擴展。
  7. 如請求項6之裝置,其中該第二值為該目標延遲長度之一第二百分比。
  8. 如請求項1之裝置,其中該第一控制器經進一步組態以在於前一順序封包之後的一第一時間週期內未接收到下一順序封包時產生該第一值。
  9. 如請求項1之裝置,其中該第一控制器經進一步組態以對該記憶體儲存單元在一時間窗內之一狀態求平均。
  10. 如請求項1之裝置,其中該第一控制器經進一步組態以篩選在一時間窗內儲存於該記憶體儲存單元中之封包之該數目。
  11. 如請求項10之裝置,其中該第一控制器經進一步組態以判定一目標低抖動緩衝區延遲長度,且根據該目標低抖動緩衝區延遲長度來判定該時間窗。
  12. 如請求項1之裝置,其中該第一控制器經進一步組態以將該目標低抖動緩衝區延遲長度判定為待儲存於該記憶體儲存單元中之封包之一目標數目。
  13. 如請求項9之裝置,其中該第一控制器經進一步組態以將儲存於該記憶體儲存單元中之封包之該數目與該記憶體儲存單元之一第二時 間彎曲臨限值相比較,及在經儲存之封包之該數目超過該第二時間彎曲臨限值時產生該時間彎曲指示符;及該第一控制器經進一步組態以將儲存於該記憶體儲存單元中之封包之該數目與該第一時間彎曲臨限值及該第二時間彎曲臨限值相比較。
  14. 如請求項1之裝置,其中第一控制器經進一步組態以產生該時間彎曲指示符作為一在無時間彎曲之情況下壓縮該封包、擴展該封包或處理該封包之指令。
  15. 如請求項1之裝置,其中該記憶體儲存單元包含一適應型低抖動緩衝區。
  16. 如請求項3之裝置,其中該用於時間彎曲之構件進一步包含:用於將儲存於該記憶體儲存單元中之封包之一數目與一第一時間彎曲臨限值相比較之構件,其中該第一時間彎曲臨限值包含儲存於該記憶體儲存單元中之封包之一目標延遲長度之一第一百分比;及用於在儲存於該記憶體儲存單元中之封包之該數目不符合該第一時間彎曲臨限值時產生一時間彎曲指示符之構件。
  17. 如請求項16之裝置,其中該用於比較之構件進一步包含用於將儲存於該記憶體儲存單元中之封包之該數目與一第二時間彎曲臨限值相比較之構件;及該用於產生之構件進一步包含在儲存於該記憶體儲存 單元中之封包之該數目小於該第一時間彎曲臨限值時產生一為一第一值之時間彎曲指示符,且在儲存於該記憶體儲存單元中之封包之該數目超過該第二時間彎曲臨限值時產生一為一第二值之時間彎曲指示符之構件。
  18. 如請求項16之裝置,其中該用於產生之構件進一步包含:用於在該時間彎曲指示符為該第一值時擴展至少一封包之構件;及用於在該時間彎曲指示符為一第二值時壓縮至少一封包之構件。
  19. 如請求項18之裝置,其中該用於產生之構件進一步包含:用於接收複數個順序封包之構件;及用於回應於該時間彎曲指示符而添加-重疊該等順序封包之區段之構件。
  20. 如請求項19之裝置,其中該用於添加-重疊之構件進一步包含:用於將該複數個區段之至少兩者合併如下之構件: i =0..WindowSize -1WindowSize =RWindowSize 其中OutSegment 為一生成之添加-重疊區段;Segment1Segment2 為待添加-重疊之該複數個區段之該至少兩者;WindowSize 對應於一第一區段;及RWindowSize 對應於一第二區段。
  21. 如請求項16之裝置,其中該用於產生之構件進一步包含:用於藉由追蹤延遲封包之一數目而判定一第一時間彎曲臨限值之構件。
  22. 如請求項21之裝置,其中一延遲封包為在該封包之一相關聯之預期播放時間之後所接收的一封包。
  23. 如請求項16之裝置,其中該用於產生之構件進一步包含用於播放該至少一經時間彎曲之封包之構件。
  24. 一種用於處理資料封包之經處理器執行之方法,該方法包含:將資料封包儲存於一記憶體儲存單元中;將儲存於該記憶體儲存單元中之封包之一數目與一第一時間彎曲臨限值相比較,其中該第一時間彎曲臨限值包含儲存於該記憶體儲存單元中之封包之一目標延遲長度之一第一百分比;及當儲存於該記憶體儲存單元中之封包之該數目不符合該第一時間彎曲臨限值時產生一時間彎曲指示符。
  25. 如請求項24之方法,其進一步包含:回應於該時間彎曲指示符而對至少一封包進行時間彎曲。
  26. 如請求項24之方法,其進一步包含:將儲存於該記憶體儲存單元中之封包之該數目與一第二時間彎曲臨限值相比較;及當儲存於該記憶體儲存單元中之封包之該數目小於該第一時間彎曲臨限值時產生一為一第一值之時間彎曲指示符,且當儲存於該記憶體儲存單元中之封包之該數目超過該第二時間彎曲臨限值時產生一為一第二值之時間彎曲指示符。
  27. 如請求項24之方法,其進一步包含:當該時間彎曲指示符為該第一值時擴展至少一封包;及當該時間彎曲指示符為一第二值時壓縮至少一封包。
  28. 如請求項27之方法,其進一步包含:接收複數個順序封包;及回應於該時間彎曲指示符而添加-重疊該等順序封包之區段。
  29. 如請求項28之方法,其中添加-重疊進一步包含:將該複數個區段之至少兩者合併為: i =0..WindowSize -1WindowSize =RWindowSize 其中OutSegment 為一生成之添加-重疊區段;Segment1Segment2 為待添加-重疊之該複數個區段 之該至少兩者;WindowSize 對應於一第一區段;及RWindowSize 對應於一第二區段。
  30. 如請求項24之方法,其進一步包含:藉由追蹤延遲封包之一數目而判定一第一時間彎曲臨限值。
  31. 如請求項30之方法,其中一延遲封包為在該封包之一相關聯之預期播放時間之後所接收的一封包。
  32. 如請求項24之方法,其進一步包含:對至少一封包進行時間彎曲;及播放該至少一經時間彎曲之封包。
  33. 一種電腦可讀儲存媒體,其含有藉由一處理器執行之一組指令,該組指令包含:一輸入常用程式,其用於將資料封包儲存於一記憶體儲存單元中;一第一常用程式,其用於將儲存於該記憶體儲存單元中之封包之數目與一第二時間彎曲臨限值相比較,其中該第二時間彎曲臨限值包含儲存於該記憶體儲存單元中之封包之一目標延遲長度之一第二百分比;及一第二常用程式,其用於在儲存於該記憶體儲存單元中之封包之該數目小於該第一時間彎曲臨限值時產生一為一第一值之時間彎曲指示符,其中該第一時間彎曲臨限值包含儲存於該記憶體儲存單元中之封包之一目標延遲長度之一第一百分比,且在儲存於該記憶體儲存單元 中之封包之該數目超過該第二時間彎曲臨限值時產生一為一第二值之時間彎曲指示符。
  34. 一種用於處理封包化資料之裝置,其包含:一記憶體儲存單元,其經組態以儲存資料封包;及一第一控制器,其經組態以將儲存於該記憶體儲存單元中之封包之一數目與該記憶體儲存單元之一第一壓縮時間彎曲臨限值及一第一擴展時間彎曲臨限值相比較,其中該第一壓縮時間彎曲臨限值包含儲存於該記憶體儲存單元中之封包之一目標延遲長度之一第一百分比,及該第一擴展時間彎曲臨限值包含儲存於該記憶體儲存單元中之封包之一目標延遲長度之一第二百分比,該第一控制器進一步經調適以在經儲存之封包之該數目超過該第一壓縮時間彎曲臨限值時產生一指示壓縮之時間彎曲控制信號,且在經儲存之封包之該數目超過該第一擴展時間彎曲臨限值時產生一指示擴展之時間彎曲控制信號。
  35. 如請求項34之裝置,其中該第一控制器經進一步組態以在於下一順序封包之一預期播放時間之後接收到該下一順序封包時產生該時間彎曲控制信號用於擴展。
  36. 如請求項34之裝置,其中該第一控制器經進一步組態以在將經儲存之封包之該數目與時間彎曲臨限值相比較之前對該記憶體儲存單元在一時間窗內之一狀態求平均。
  37. 如請求項34之裝置,其中該第一控制器經進一步組態 以篩選在一時間窗內儲存於該記憶體儲存單元中之封包之該數目。
  38. 如請求項37之裝置,其中該第一控制器經進一步組態以判定一目標延遲長度,且根據該目標延遲長度來判定該時間窗。
  39. 如請求項34之裝置,其中該第一控制器經進一步組態以將該目標延遲長度判定為待儲存於該記憶體儲存單元中之封包之一目標數目。
  40. 如請求項34之裝置,其中該第一控制器經進一步組態以將儲存於該記憶體儲存單元中之封包之一平均數目與該第一擴展時間彎曲臨限值及該第一壓縮時間彎曲臨限值相比較。
  41. 如請求項34之裝置,其中該第一控制器經進一步組態以產生該時間彎曲控制信號作為一多狀態控制信號。
  42. 如請求項34之裝置,其中該第一控制器經進一步組態以判定該記憶體儲存單元之一目標延遲長度,其中該記憶體儲存單元為一適應型低抖動緩衝區,且其中該目標延遲長度為一目標低抖動緩衝區延遲。
  43. 一種用於處理封包化資料之裝置,其包含:一記憶體儲存單元,其經組態以儲存資料封包;及一第一控制器,其經調適以基於歸因於該等資料封包之延遲的缺空之一百分比之經篩選之一值而判定該記憶體儲存單元之一目標延遲長度以用缺空之該百分比追蹤該目標延遲長度,其中該第一控制器經進一步組態以如 下計算該目標延遲長度: 其中PERdelay 為歸因於延遲封包之缺空之一速率,TARGET_VALUE為延遲封包之一目標速率,DEJITTER_DELAY為適應型低抖動緩衝區之目標延遲長度,CONSTANT為一預定值,且MAX_JITTER及MIN_JITTER為分別表示最大目標延遲長度及最小目標延遲長度之預定值。
  44. 如請求項43之裝置,其中該第一控制器經組態以如下計算該PERdelayPER delay =PER_CONSTANT ×PER delay +(1-PER_CONSTANTCurrent_PER delay 其中PER_CONSTANT為用以估算PERdelay 之篩選器之時間常數。
  45. 如請求項44之裝置,其中該第一控制器包含:一封包錯誤計算單元,其經組態以作為延遲封包之一速率來計算Current_PERdelay ,其中延遲封包係在一預期 播放時間之後被接收。
  46. 如請求項45之裝置,其中該封包錯誤計算單元經組態以作為自PERdelay 之一最後更新至一當前更新所測得的延遲封包與包括延遲封包之所接收之總封包的一比率來計算該Current_PERdelay ,且如下計算:
  47. 如請求項43之裝置,其中該第一控制器經組態以識別所接收之封包之一第一部分,其中該第一部分對應於一通話陡增,且其中該通話陡增包含複數個順序封包。
  48. 如請求項47之裝置,其中該第一控制器經組態以藉由該第一部分之編碼而識別該第一部分。
  49. 如請求項47之裝置,其中該第一控制器經組態以判定該通話陡增之一第一封包之一預期播放時間,且在該預期播放時間之前起始該通話陡增之該第一封包之播放。
  50. 如請求項47之裝置,該第一控制器進一步經組態以在播放該第一封包之後起始後續封包之擴展。
  51. 如請求項47之裝置,其中該第一控制器經組態以識別一通話陡增之開始及結束。
  52. 如請求項51之裝置,其中該第一控制器經組態以識別該通話陡增之一結束部分,且在該通話陡增之該結束部分中壓縮至少一封包。
  53. 如請求項51之裝置,其中該第一控制器經組態以藉由 所接收之封包之一編碼率來識別該通話陡增之該結束部分。
  54. 如請求項51之裝置,其中該第一控制器經組態以藉由一無聲指示符來識別該通話陡增之該結束部分。
  55. 如請求項51之裝置,其中該第一控制器經組態以藉由一通話陡增結束指示符來識別該通話陡增之該結束部分。
  56. 一種用於處理封包化資料之方法,其包含:將資料封包儲存於一記憶體儲存單元中;基於歸因於該等資料封包之延遲的缺空之一百分比之經篩選之一值而判定該記憶體儲存單元之一目標延遲長度;關於該目標延遲長度而評估該記憶體儲存單元之一狀態,其中該記憶體儲存單元之該狀態為儲存於該記憶體儲存單元中之資料之一量測標準;及在該記憶體儲存之該狀態不符合該目標延遲長度時起始對來自該記憶體儲存單元之至少一封包之時間彎曲,其中判定該目標延遲包含如下計算: 其中PERdalay 為歸因於延遲封包之缺空之一速率,該TARGET_VALUE為延遲封包之一目標速率,該DEJITTER_DELAY為適應型低抖動緩衝區之目標延遲長度,該CONSTANT為一預定值,且該MAX_JITTER及該MIN_JITTER為分別為最大目標延遲長度及最小目標延遲長度之預定值。
  57. 如請求項56之方法,其進一步包含:產生一時間彎曲控制信號;接收複數個順序封包;及回應於該時間彎曲控制信號而添加-重疊區段。
  58. 如請求項57之方法,其中該添加-重疊包含:將該複數個區段之至少兩者合併為: i =0..WindowSize -1WindowSiz e=RWindowSize 其中OutSegment 為一所得的添加-重疊區段,Segment1Segment2 為待添加-重疊之區段,WindowSize 對應於一第一區段,且RWindowSize 對應於一第二區段。
  59. 如請求項58之方法,其中該添加-重疊進一步包含:識別該第一區段與該第二區段之間的最大關聯性之一 部分。
  60. 如請求項59之方法,其中識別該第一區段與該第二區段之間的最大關聯性之該部分進一步包含:藉由如下計算最大關聯性來識別最大關聯性之該部分: 其中x 表示該第一區段,y 表示語音之該第二區段,m 表示關聯性窗,i 為一指數值,且d 表示該關聯性部分。
  61. 如請求項56之方法,其進一步包含:對複數個順序封包進行時間彎曲;抑制對於至少一順序封包之時間彎曲,其中該至少一順序封包在該複數個順序封包之後;及在該至少一順序封包之後啟用時間彎曲。
  62. 如請求項56之方法,其進一步包含:計算一時間彎曲速率,其中該時間彎曲速率為一時間窗內經時間彎曲之封包之一數目;及根據該時間彎曲速率來起始封包之時間彎曲。
  63. 一種儲存媒體,其含有藉由一處理器執行之一組指令,該組指令包含:一輸入常用程式,其用於將資料封包儲存於一記憶體 儲存單元中;一目標延遲長度計算常用程式,其用於基於歸因於該等資料封包之延遲的缺空之一百分比之經篩選之一值而判定該記憶體儲存單元之一目標延遲長度以用缺空之該百分比追蹤該目標延遲長度;一第一常用程式,其用於關於該目標延遲長度而評估該記憶體儲存單元之一狀態,其中該記憶體儲存單元之該狀態為儲存於該記憶體儲存單元中之資料之一量測標準;及一第二常用程式,其用於在該記憶體儲存之該狀態不符合該目標延遲長度時起始對來自該記憶體儲存單元之至少一封包之時間彎曲。
  64. 一種用於處理封包化資料之裝置,其包含:一緩衝區記憶體儲存單元,其經組態以儲存包含順序識別符之經接收之資料封包;及用於緩衝區適應性之構件,其經組態以為複數個預期封包設定用於一播放順序之一視窗,其中該視窗具有一視窗大小、將所接收之該等資料封包之該等順序識別符與該視窗之一播放順序相比較、基於所接收之該等封包之該等順序識別符與該視窗之該播放順序之該比較而判定是否任何用於該視窗之該複數個預期封包已被接收,及若任何用於該視窗之該複數個預期封包已被接收,則以對應於該複數個預期封包之一最低順序識別符起始經接收之該封包之播放,及僅在用於該視窗之該複數個預 期封包皆未被接收時起始一疑符之播放、及基於該播放而調整該視窗之該播放順序。
  65. 如請求項64之裝置,其中調整該視窗之該播放順序包含在對應於該複數個預期封包之一下一預期封包之該播放順序中遞增一指數。
  66. 如請求項65之裝置,其中若該疑符之該播放被起始,則該指數被遞增一次。
  67. 如請求項66之裝置,其中若被播放之經接收之該封包對應於該視窗中之一最後預期封包,則該指數被遞增至超過該視窗之該播放順序之一順序識別符。
  68. 如請求項67之裝置,其中該視窗大小包含兩個順序識別符。
  69. 如請求項67之裝置,其中該視窗大小包含三個順序識別符。
  70. 一種用於處理封包化資料之裝置,其包含:一記憶體儲存單元,其經組態以儲存資料封包;及用於基於歸因於該等資料封包之延遲的缺空之一百分比之經篩選之一值而判定該記憶體儲存單元之一目標延遲長度以用缺空之該百分比追蹤該目標延遲長度之構件;用於關於該目標延遲長度而評估該記憶體儲存單元之一狀態之構件,其中該記憶體儲存單元之該狀態為儲存於該記憶體儲存單元中之資料之一量測標準;及用於在該記憶體儲存之該狀態不符合該目標延遲長度 時起始對來自該記憶體儲存單元之至少一封包之時間彎曲之構件,其中判定該目標延遲包含如下計算: 其中PERdelay 為歸因於延遲封包之缺空之一速率,TARGET_VALUE為延遲封包之一目標速率,DEJITTER_DELAY為適應型低抖動緩衝區之目標延遲長度,CONSTANT為一預定值,且MAX_JITTER及MIN_JITTER係分別為最大目標延遲長度及最小目標延遲長度之預定值。
  71. 如請求項70之裝置,其中該用於起始之構件進一步包含:用於產生一時間彎曲控制信號之構件;用於接收複數個順序封包之構件;及用於回應於該時間彎曲控制信號而添加-重疊區段之構件。
  72. 如請求項71之裝置,其中該用於添加-重疊之構件包含:用於將該複數個區段之至少兩者合併如下之構件: i =0..WindowSize -1WindowSize =RWindowSize 其中OutSegment 為一所得的添加-重迭區段,Segment1Segment2 為待添加-重迭之區段,WindowSize 對應於一第一區段,且RWindowSize 對應於一第二區段。
  73. 如請求項71之裝置,其中該用於添加-重疊之構件進一步包含:用於識別該第一區段與該第二區段之間的最大關聯性之一部分之構件。
  74. 如請求項70之裝置,其中該用於起始之構件進一步包含:用於對複數個順序封包進行時間彎曲之構件;用於抑制對於至少一順序封包之時間彎曲之構件,其中該至少一順序封包在該複數個順序封包之後;及用於在該至少一順序封包之後啟用時間彎曲之構件。
  75. 如請求項70之裝置,其中該用於起始之構件進一步包含:用於計算一時間彎曲速率之構件,其中該時間彎曲速率為一時間窗內經時間彎曲之封包之一數目;及用於根據該時間彎曲速率來起始封包之時間彎曲之構 件。
  76. 一種用於抖動緩衝區適應性之方法,其包含:藉由耦接至一低抖動緩衝區之一低抖動緩衝區控制器為複數個預期封包設定用於一播放順序之一視窗,其中該視窗具有一視窗大小;藉由該低抖動緩衝區儲存包含順序識別符之經接收之資料封包;藉由該低抖動緩衝區控制器將所接收之該等資料封包之該等順序識別符與該視窗之該播放順序相比較;藉由該低抖動緩衝區控制器而基於所接收之該等封包之該等順序識別符與該視窗之該播放順序之該比較來判定是否任何用於該視窗之該複數個預期封包已被接收,及若任何用於該視窗之該複數個預期封包已被接收,則以對應於該複數個預期封包之一最低順序識別符起始經接收之該封包之播放,及僅在用於該視窗之該複數個預期封包皆未被接收時起始一疑符之播放;及藉由該低抖動緩衝區控制器而基於該播放而調整該視窗之該播放順序。
  77. 如請求項76之方法,其中調整該視窗之該播放順序包含在對應於該複數個預期封包之一下一預期封包之該播放順序中遞增一指數。
  78. 如請求項77之方法,其中若該疑符之該播放被起始,則該指數被遞增一次。
  79. 如請求項78之方法,其中若被播放之經接收之該封包 對應於該視窗中之一最後預期封包,則該指數被遞增至超過該視窗之該播放順序之一順序識別符。
  80. 如請求項79之方法,其中該視窗大小包含兩個順序識別符。
  81. 如請求項79之方法,其中該視窗大小包含三個順序識別符。
  82. 一種非暫時性電腦可讀儲存媒體,其包含一組指令,該組指令包含:為複數個預期封包設定用於一播放順序之一視窗,其中該視窗具有一視窗大小;儲存包含順序識別符之經接收之資料封包;將所接收之該等資料封包之該等順序識別符與該視窗之該播放順序相比較;基於所接收之該等封包之該等順序識別符與該視窗之該播放順序之該比較來判定是否任何用於該視窗之該複數個預期封包已被接收,及若任何用於該視窗之該複數個預期封包已被接收,則以對應於該複數個預期封包之一最低順序識別符起始經接收之該封包之播放,及僅在用於該視窗之該複數個預期封包皆未被接收時起始一疑符之播放;及基於該播放而調整該視窗之該播放順序。
  83. 如請求項82之非暫時性電腦可讀儲存媒體,其中調整該視窗之該播放順序包含在對應於該複數個預期封包之一下一預期封包之該播放順序中遞增一指數。
  84. 如請求項83之非暫時性電腦可讀儲存媒體,其中若該疑符之該播放被起始,則該指數被遞增一次。
  85. 如請求項84之非暫時性電腦可讀儲存媒體,其中若被播放之經接收之該封包對應於該視窗中之一最後預期封包,則該指數被遞增至超過該視窗之該播放順序之一順序識別符。
  86. 如請求項85之非暫時性電腦可讀儲存媒體,其中該視窗大小包含兩個順序識別符。
  87. 如請求項85之非暫時性電腦可讀儲存媒體,其中該視窗大小包含三個順序識別符。
  88. 一種用於處理封包化資料之裝置,其包含:一低抖動緩衝區,其用於儲存包含順序識別符之經接收之資料封包;耦接至該低抖動緩衝區之一低抖動緩衝區控制器,其用於為複數個預期封包設定用於一播放順序之一視窗,其中該視窗具有一視窗大小,用於將所接收之該等資料封包之該等順序識別符與該視窗之該播放順序相比較,用於基於所接收之該等封包之該等順序識別符與該視窗之該播放順序之該比較來判定是否任何用於該視窗之該複數個預期封包已被接收,及若任何用於該視窗之該複數個預期封包已被接收,則以對應於該複數個預期封包之一最低順序識別符起始經接收之該封包之播放,及僅在用於該視窗之該複數個預期封包皆未被接收時起始一疑符之播放,及用於基於該播放而調整該視窗之該播放 順序。
  89. 如請求項88之裝置,其中調整該視窗之該播放順序包含在對應於該複數個預期封包之一下一預期封包之該播放順序中遞增一指數。
  90. 如請求項89之裝置,其中若該疑符之該播放被起始,則該指數被遞增一次。
  91. 如請求項90之裝置,其中若被播放之經接收之該封包對應於該視窗中之一最後預期封包,則該指數被遞增至超過該視窗之該播放順序之一順序識別符。
  92. 如請求項91之裝置,其中該視窗大小包含兩個順序識別符。
  93. 如請求項91之裝置,其中該視窗大小包含三個順序識別符。
TW094129711A 2004-08-30 2005-08-30 用於封包化資料通信之適應型低抖動緩衝區 TWI454101B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US60603604P 2004-08-30 2004-08-30

Publications (2)

Publication Number Publication Date
TW200629816A TW200629816A (en) 2006-08-16
TWI454101B true TWI454101B (zh) 2014-09-21

Family

ID=35700421

Family Applications (1)

Application Number Title Priority Date Filing Date
TW094129711A TWI454101B (zh) 2004-08-30 2005-08-30 用於封包化資料通信之適應型低抖動緩衝區

Country Status (17)

Country Link
US (4) US7830900B2 (zh)
EP (4) EP2204796B1 (zh)
JP (4) JP2008512062A (zh)
KR (4) KR100964436B1 (zh)
CN (5) CN102779517A (zh)
AT (1) ATE488838T1 (zh)
BR (1) BRPI0514801B1 (zh)
CA (4) CA2691959C (zh)
DE (1) DE602005024825D1 (zh)
DK (1) DK2200024T3 (zh)
ES (2) ES2355039T3 (zh)
MX (1) MX2007002483A (zh)
MY (1) MY149811A (zh)
PL (2) PL2200024T3 (zh)
PT (1) PT2200024E (zh)
TW (1) TWI454101B (zh)
WO (1) WO2006026635A2 (zh)

Families Citing this family (161)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8017791B2 (en) * 2003-03-28 2011-09-13 Wayne State University Tri-substituted 2-benzhydryl-5-benzylamino-tetrahydro-pyran-4-ol and 6-benzhydryl-4-benzylamino-tetrahydro-pyran-3-ol analogues, and novel, 3,6-disubstituted pyran derivatives
MY149811A (en) * 2004-08-30 2013-10-14 Qualcomm Inc Method and apparatus for an adaptive de-jitter buffer
US7674096B2 (en) * 2004-09-22 2010-03-09 Sundheim Gregroy S Portable, rotary vane vacuum pump with removable oil reservoir cartridge
US8085678B2 (en) * 2004-10-13 2011-12-27 Qualcomm Incorporated Media (voice) playback (de-jitter) buffer adjustments based on air interface
US7672742B2 (en) * 2005-02-16 2010-03-02 Adaptec, Inc. Method and system for reducing audio latency
US20060187970A1 (en) * 2005-02-22 2006-08-24 Minkyu Lee Method and apparatus for handling network jitter in a Voice-over IP communications network using a virtual jitter buffer and time scale modification
US8355907B2 (en) * 2005-03-11 2013-01-15 Qualcomm Incorporated Method and apparatus for phase matching frames in vocoders
US7746847B2 (en) * 2005-09-20 2010-06-29 Intel Corporation Jitter buffer management in a packet-based network
US8102878B2 (en) * 2005-09-29 2012-01-24 Qualcomm Incorporated Video packet shaping for video telephony
US8411662B1 (en) 2005-10-04 2013-04-02 Pico Mobile Networks, Inc. Beacon based proximity services
US8257177B1 (en) 2005-10-04 2012-09-04 PICO Mobile Networks, Inc Proximity based games for mobile communication devices
US8548048B2 (en) * 2005-10-27 2013-10-01 Qualcomm Incorporated Video source rate control for video telephony
US8406309B2 (en) * 2005-10-21 2013-03-26 Qualcomm Incorporated Video rate adaptation to reverse link conditions
US8842555B2 (en) * 2005-10-21 2014-09-23 Qualcomm Incorporated Methods and systems for adaptive encoding of real-time information in packet-switched wireless communication systems
US8514711B2 (en) * 2005-10-21 2013-08-20 Qualcomm Incorporated Reverse link lower layer assisted video error control
JP4640824B2 (ja) * 2006-01-30 2011-03-02 富士通株式会社 通信環境の測定方法、受信装置、及びコンピュータプログラム
JP4573780B2 (ja) * 2006-02-02 2010-11-04 富士通株式会社 パケット記録再生装置
US20070201656A1 (en) * 2006-02-07 2007-08-30 Nokia Corporation Time-scaling an audio signal
US8832540B2 (en) 2006-02-07 2014-09-09 Nokia Corporation Controlling a time-scaling of an audio signal
US20070186146A1 (en) * 2006-02-07 2007-08-09 Nokia Corporation Time-scaling an audio signal
JP4983054B2 (ja) * 2006-03-10 2012-07-25 富士通株式会社 サーバ装置及び同装置におけるバッファ制御方法
US20070294087A1 (en) * 2006-05-05 2007-12-20 Nokia Corporation Synthesizing comfort noise
US20070263672A1 (en) * 2006-05-09 2007-11-15 Nokia Corporation Adaptive jitter management control in decoder
JP2008005392A (ja) * 2006-06-26 2008-01-10 Kddi Corp 通信端末装置およびバッファ制御方法
US8005094B2 (en) * 2006-06-30 2011-08-23 Agere Systems Inc. Method and apparatus for circuit emulation services over cell and packet networks
US8619623B2 (en) 2006-08-08 2013-12-31 Marvell World Trade Ltd. Ad-hoc simple configuration
WO2008022181A2 (en) * 2006-08-15 2008-02-21 Broadcom Corporation Updating of decoder states after packet loss concealment
CN101366080B (zh) * 2006-08-15 2011-10-19 美国博通公司 一种更新解码器的状态的方法和系统
US7573907B2 (en) * 2006-08-22 2009-08-11 Nokia Corporation Discontinuous transmission of speech signals
US7680099B2 (en) * 2006-08-22 2010-03-16 Nokia Corporation Jitter buffer adjustment
US8239190B2 (en) * 2006-08-22 2012-08-07 Qualcomm Incorporated Time-warping frames of wideband vocoder
DE602006005360D1 (de) * 2006-08-24 2009-04-09 Ntt Docomo Inc Verfahren und Vorrichtung für nahtloses Handover
US7796626B2 (en) * 2006-09-26 2010-09-14 Nokia Corporation Supporting a decoding of frames
KR101347404B1 (ko) * 2006-10-05 2014-01-02 엘지전자 주식회사 무선통신 시스템에서 음성 패킷의 전송 방법
US9135951B2 (en) * 2006-10-10 2015-09-15 Qualcomm Incorporated System and method for dynamic audio buffer management
US8274945B2 (en) * 2006-10-16 2012-09-25 Qualcomm Incorporated Method and apparatus for time-warping packets at the sender side
US8732315B2 (en) 2006-10-16 2014-05-20 Marvell International Ltd. Automatic ad-hoc network creation and coalescing using WiFi protected setup
US8233456B1 (en) 2006-10-16 2012-07-31 Marvell International Ltd. Power save mechanisms for dynamic ad-hoc networks
US8855275B2 (en) * 2006-10-18 2014-10-07 Sony Online Entertainment Llc System and method for regulating overlapping media messages
US9308455B1 (en) 2006-10-25 2016-04-12 Marvell International Ltd. System and method for gaming in an ad-hoc network
US8817740B2 (en) * 2006-10-31 2014-08-26 Motorola Mobility Llc Methods and devices of a queue controller for dual mode bidirectional audio communication
US8792945B2 (en) * 2006-10-31 2014-07-29 Motorola Mobility Llc Methods and devices for dual mode bidirectional audio communication
US7889686B1 (en) 2006-11-21 2011-02-15 Picomobile Networks, Inc. Seamless switching of media streams between different networks
US7961756B1 (en) 2006-11-21 2011-06-14 Picomobile Networks, Inc. Integrated multimedia system
US8279884B1 (en) 2006-11-21 2012-10-02 Pico Mobile Networks, Inc. Integrated adaptive jitter buffer
US7970384B1 (en) 2006-11-21 2011-06-28 Picomobile Networks, Inc. Active phone book enhancements
US7978699B1 (en) 2006-11-21 2011-07-12 Picomobile Networks, Inc. Protocol compression with synchronized sequence numbers
WO2008069719A1 (en) * 2006-12-06 2008-06-12 Telefonaktiebolaget Lm Ericsson (Publ) Jitter buffer control
US8111720B2 (en) * 2007-01-09 2012-02-07 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus to indicate maximum scheduling delay for jitter buffer implementations
US8537197B2 (en) * 2007-01-10 2013-09-17 Qualcomm Incorporated Content- and link-dependent coding adaptation for multimedia telephony
US7983309B2 (en) * 2007-01-19 2011-07-19 Nokia Corporation Buffering time determination
JP5140684B2 (ja) * 2007-02-12 2013-02-06 ドルビー ラボラトリーズ ライセンシング コーポレイション 高齢又は聴覚障害聴取者のための非スピーチオーディオに対するスピーチオーディオの改善された比率
BRPI0807703B1 (pt) 2007-02-26 2020-09-24 Dolby Laboratories Licensing Corporation Método para aperfeiçoar a fala em áudio de entretenimento e meio de armazenamento não-transitório legível por computador
GB0705329D0 (en) 2007-03-20 2007-04-25 Skype Ltd Method of transmitting data in a communication system
DE602007004358D1 (de) * 2007-06-13 2010-03-04 Ntt Docomo Inc Verfahren und Vorrichtung zur Durchführung einer nahtlosen Weiterleitung einer mobilen Vorrichtung
US8918051B1 (en) 2007-06-18 2014-12-23 Marvell International Ltd. Method and apparatus for performing a handoff of a data communication session from one network to another network
US8628420B2 (en) * 2007-07-03 2014-01-14 Marvell World Trade Ltd. Location aware ad-hoc gaming
WO2009010831A1 (en) * 2007-07-18 2009-01-22 Nokia Corporation Flexible parameter update in audio/speech coded signals
US20090028300A1 (en) * 2007-07-25 2009-01-29 Mclaughlin Tom Network communication systems including video phones
US8340121B2 (en) * 2007-08-22 2012-12-25 Qualcomm Incorporated Method and apparatus for transmission of circuit switched voice over packet switched networks
EP2191664A4 (en) * 2007-08-24 2012-10-24 Alcatel Lucent RESOURCE PROGRAMMING METHOD, NETWORK ELEMENT, AND USER EQUIPMENT
KR101418354B1 (ko) * 2007-10-23 2014-07-10 삼성전자주식회사 음성 통신 시스템에서 플레이아웃 스케줄링 방법 및 장치
KR101152854B1 (ko) * 2007-12-27 2012-06-12 교세라 가부시키가이샤 무선통신장치
US8797850B2 (en) * 2008-01-10 2014-08-05 Qualcomm Incorporated System and method to adapt to network congestion
EP2235894B1 (en) * 2008-01-25 2014-01-22 Telefonaktiebolaget L M Ericsson (publ) A simple adaptive jitter buffering algorithm for network nodes
WO2009107588A1 (ja) * 2008-02-27 2009-09-03 京セラ株式会社 無線通信装置
US8649353B2 (en) 2008-03-04 2014-02-11 Interdigital Patent Holdings, Inc. Method and apparatus for accessing a random access channel by selectively using dedicated or contention-based preambles during handover
US8873543B2 (en) * 2008-03-07 2014-10-28 Arcsoft (Shanghai) Technology Company, Ltd. Implementing a high quality VOIP device
US8406715B2 (en) * 2008-03-27 2013-03-26 Panasonic Automotive Systems of America, division of Panasonic Corporation of North America Method and apparatus for dynamically adapting FM tuner sensitivity to a local environment for a single-tuner system
CN101304557B (zh) * 2008-04-25 2012-09-05 华为技术有限公司 一种分组传输控制方法及装置
ATE536614T1 (de) * 2008-06-10 2011-12-15 Dolby Lab Licensing Corp Verbergen von audioartefakten
US8055292B1 (en) * 2008-06-12 2011-11-08 Sprint Spectrum L.P. Method and system for power level adjustment of forward channels
US8488661B2 (en) * 2008-06-13 2013-07-16 Verizon Patent And Licensing Inc. Systems and methods for data streaming
US8670573B2 (en) * 2008-07-07 2014-03-11 Robert Bosch Gmbh Low latency ultra wideband communications headset and operating method therefor
US20110158201A1 (en) * 2008-08-28 2011-06-30 Kyocera Corporation Radio terminal and communication terminal
US20100202302A1 (en) * 2008-09-21 2010-08-12 Research In Motion Limited System and method for reserving and signaling hybrid automatic repeat request identifiers
US8346995B2 (en) 2008-09-30 2013-01-01 Microsoft Corporation Balancing usage of hardware devices among clients
US8245229B2 (en) * 2008-09-30 2012-08-14 Microsoft Corporation Temporal batching of I/O jobs
US8479214B2 (en) * 2008-09-30 2013-07-02 Microsoft Corporation Hardware throughput saturation detection
US7920475B2 (en) * 2008-12-15 2011-04-05 Verizon Patent And Licensing Inc. System and method for adaptive removal of delay jitter effect and low end-to-end delay
EP2211335A1 (en) * 2009-01-21 2010-07-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus, method and computer program for obtaining a parameter describing a variation of a signal characteristic of a signal
US8611337B2 (en) * 2009-03-31 2013-12-17 Adobe Systems Incorporated Adaptive subscriber buffering policy with persistent delay detection for live audio streams
US9137719B2 (en) * 2009-10-27 2015-09-15 Clearwire Ip Holdings Llc Multi-frequency real-time data stream handoff
US9036624B2 (en) * 2009-12-24 2015-05-19 Telecom Italia S.P.A. Method of scheduling transmission in a communication network, corresponding communication node and computer program product
US9380401B1 (en) 2010-02-03 2016-06-28 Marvell International Ltd. Signaling schemes allowing discovery of network devices capable of operating in multiple network modes
WO2011127059A1 (en) 2010-04-05 2011-10-13 Huawei Technologies Co., Ltd. Method for dynamic migration of a process or services from one control plane processor to another
US8532804B2 (en) * 2010-06-18 2013-09-10 Microsoft Corporation Predictive resampler scheduler algorithm
US8744367B2 (en) 2010-08-31 2014-06-03 At&T Intellectual Property I, L.P. Tail optimization protocol for cellular radio resource allocation
KR101399604B1 (ko) * 2010-09-30 2014-05-28 한국전자통신연구원 지터버퍼 조정장치, 전자장치 및 그 방법
US8527627B2 (en) 2010-12-14 2013-09-03 At&T Intellectual Property I, L.P. Intelligent mobility application profiling with respect to identified communication bursts
KR20120108564A (ko) * 2011-03-24 2012-10-05 삼성전자주식회사 데이터 처리 시스템 및 그 동작 방법
US9177570B2 (en) * 2011-04-15 2015-11-03 St-Ericsson Sa Time scaling of audio frames to adapt audio processing to communications network timing
US9264872B2 (en) 2011-06-20 2016-02-16 At&T Intellectual Property I, L.P. Controlling traffic transmissions to manage cellular radio resource utilization
US9220066B2 (en) 2011-06-20 2015-12-22 At&T Intellectual Property I, L.P. Bundling data transfers and employing tail optimization protocol to manage cellular radio resource utilization
US8797874B2 (en) 2011-09-09 2014-08-05 Futurewei Technologies, Inc. Apparatus and system for packet routing and forwarding in an interior network
GB2520867B (en) 2011-10-25 2016-05-18 Skype Ltd Jitter buffer
CN103325385B (zh) * 2012-03-23 2018-01-26 杜比实验室特许公司 语音通信方法和设备、操作抖动缓冲器的方法和设备
EP2672393A1 (en) * 2012-06-04 2013-12-11 Dialog Semiconductor B.V. Circuit and methods to use an audio interface to program a device within an audio stream
TWI511500B (zh) 2012-09-07 2015-12-01 Apple Inc 用於具有不同條件之網路之適應型抖動緩衝區管理
US10356143B2 (en) * 2012-10-10 2019-07-16 Samsung Electronics Co., Ltd. Method and apparatus for media data delivery control
CN102970133B (zh) * 2012-11-12 2015-10-14 安徽量子通信技术有限公司 量子网络的语音传输方法和语音终端
KR20140067512A (ko) * 2012-11-26 2014-06-05 삼성전자주식회사 신호 처리 장치 및 그 신호 처리 방법
CN103888381A (zh) 2012-12-20 2014-06-25 杜比实验室特许公司 用于控制抖动缓冲器的装置和方法
US9526037B2 (en) * 2013-02-04 2016-12-20 Apple Inc. SRVCC handover indication for remote party to voice call
US9420475B2 (en) * 2013-02-08 2016-08-16 Intel Deutschland Gmbh Radio communication devices and methods for controlling a radio communication device
US9565139B2 (en) 2013-03-15 2017-02-07 Comcast Cable Communications, Llc Remote latency adjustment
US9107159B2 (en) 2013-06-07 2015-08-11 Apple Inc. Enhancing jitter buffer performance through radio level feedback
PT3011564T (pt) 2013-06-21 2018-05-08 Fraunhofer Ges Forschung Escalonador de tempo, descodificador de áudio, método e programa de computador utilizando um controlo de qualidade
AU2014283320B2 (en) 2013-06-21 2016-09-15 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Jitter buffer control, audio decoder, method and computer program
CN103474083B (zh) * 2013-09-18 2015-11-18 中国人民解放军电子工程学院 基于正交正弦脉冲序列定位标签的语音时间规整方法
GB201318653D0 (en) * 2013-10-22 2013-12-04 Microsoft Corp Adapting a jitter buffer
US9525641B1 (en) * 2014-01-24 2016-12-20 Google Inc. Facilitating buffer wait time determination based on device- or entity-related conditions
US9338259B2 (en) 2014-02-05 2016-05-10 Sergio Ammirata User defined protocol for zero-added-jitter and error free transmission of layer-2 datagrams across lossy packet-switched network links
KR102163269B1 (ko) * 2014-03-04 2020-10-08 삼성전자주식회사 브이오아이피 프레임 전송 방법 및 장치
US20160142840A1 (en) * 2014-03-14 2016-05-19 Qualcomm Incorporated Features and optimizations for personal communication device based public addressing system
EP3123776B1 (en) 2014-03-26 2019-05-08 Telefonaktiebolaget LM Ericsson (publ) Methods and equipment for management of playback buffers
CN105207955B (zh) * 2014-06-30 2019-02-05 华为技术有限公司 数据帧的处理方法和装置
US9712287B2 (en) * 2014-07-31 2017-07-18 Qualcomm Incorporated System and method of redundancy based packet transmission error recovery
EP3202106B1 (en) * 2014-10-02 2018-12-12 Jacoti BVBA Method to handle problematic patterns in a low latency multimedia streaming environment
KR101600284B1 (ko) 2014-10-17 2016-03-07 주식회사 이노와이어리스 영상 품질 측정 방법
CN104410587A (zh) * 2014-11-13 2015-03-11 京信通信系统(中国)有限公司 一种接收缓冲区容量控制方法及装置
US9826445B2 (en) 2015-05-21 2017-11-21 At&T Mobility Ii Llc Facilitation of adaptive dejitter buffer between mobile devices
US9998386B2 (en) 2015-05-21 2018-06-12 At&T Mobility Ii Llc Facilitation of adaptive dejitter buffer
US9788026B2 (en) * 2015-08-25 2017-10-10 Imagine Communications Corp. Converting adaptive bitrate chunks to a streaming format
US10412453B2 (en) * 2015-10-13 2019-09-10 Futurewei Technologies, Inc. Probability weighted DASH based video streaming over an information-centric network
US10204635B1 (en) * 2015-12-01 2019-02-12 Marvell International Ltd. Device and method for processing media samples
US20170187635A1 (en) * 2015-12-28 2017-06-29 Qualcomm Incorporated System and method of jitter buffer management
KR102419595B1 (ko) 2016-01-07 2022-07-11 삼성전자주식회사 재생 지연 조절 방법 및 이를 적용한 전자 장치
CN106656649B (zh) * 2016-09-14 2021-01-01 腾讯科技(深圳)有限公司 一种实时通话过程中基于测速的通道切换方法、客户端与服务器
CN107945807B (zh) * 2016-10-12 2021-04-13 厦门雅迅网络股份有限公司 基于静音游程的语音识别方法及其系统
JP6919261B2 (ja) 2017-03-24 2021-08-18 ヤマハ株式会社 音データ処理装置、音データ処理方法及びプログラム
US10454811B2 (en) * 2017-04-07 2019-10-22 Qualcomm Incorporated Apparatus and method for de-jitter buffer delay adjustment
US10978096B2 (en) * 2017-04-25 2021-04-13 Qualcomm Incorporated Optimized uplink operation for voice over long-term evolution (VoLte) and voice over new radio (VoNR) listen or silent periods
US10998002B2 (en) * 2017-05-31 2021-05-04 Nxp B.V. Audio time stretching
US10616123B2 (en) * 2017-07-07 2020-04-07 Qualcomm Incorporated Apparatus and method for adaptive de-jitter buffer
US10313416B2 (en) * 2017-07-21 2019-06-04 Nxp B.V. Dynamic latency control
US20190102223A1 (en) * 2017-09-29 2019-04-04 Niall Power System, Apparatus And Method For Real-Time Activated Scheduling In A Queue Management Device
EP3794783A1 (en) * 2018-05-16 2021-03-24 Telefonaktiebolaget Lm Ericsson (Publ) Delay-aware resource sharing
US10616304B2 (en) * 2018-05-30 2020-04-07 Qualcomm Incorporated Audio dejittering using delay standard deviation
US11240176B2 (en) 2018-08-21 2022-02-01 At&T Intellectual Property I, L.P. Time-spaced messaging for facilitating network communications
US10432272B1 (en) 2018-11-05 2019-10-01 XCOM Labs, Inc. Variable multiple-input multiple-output downlink user equipment
US10659112B1 (en) 2018-11-05 2020-05-19 XCOM Labs, Inc. User equipment assisted multiple-input multiple-output downlink configuration
US10756860B2 (en) 2018-11-05 2020-08-25 XCOM Labs, Inc. Distributed multiple-input multiple-output downlink configuration
US10812216B2 (en) 2018-11-05 2020-10-20 XCOM Labs, Inc. Cooperative multiple-input multiple-output downlink scheduling
EP3888256A4 (en) 2018-11-27 2022-08-31 Xcom Labs, Inc. MULTIPLE INPUT AND INCOHERENT COOPERATIVE MULTIPLE OUTPUT COMMUNICATIONS
EP3895398B1 (en) * 2018-12-12 2024-06-26 Telefonaktiebolaget Lm Ericsson (Publ) Communication system with de-jitter buffer for reducing jitter
US10756795B2 (en) 2018-12-18 2020-08-25 XCOM Labs, Inc. User equipment with cellular link and peer-to-peer link
US11063645B2 (en) 2018-12-18 2021-07-13 XCOM Labs, Inc. Methods of wirelessly communicating with a group of devices
US11330649B2 (en) 2019-01-25 2022-05-10 XCOM Labs, Inc. Methods and systems of multi-link peer-to-peer communications
US10756767B1 (en) 2019-02-05 2020-08-25 XCOM Labs, Inc. User equipment for wirelessly communicating cellular signal with another user equipment
US10896021B2 (en) 2019-02-26 2021-01-19 Nvidia Corporation Dynamically preventing audio underrun using machine learning
JPWO2020217605A1 (zh) * 2019-04-23 2020-10-29
US10686502B1 (en) 2019-04-29 2020-06-16 XCOM Labs, Inc. Downlink user equipment selection
US10735057B1 (en) 2019-04-29 2020-08-04 XCOM Labs, Inc. Uplink user equipment selection
US11411778B2 (en) 2019-07-12 2022-08-09 XCOM Labs, Inc. Time-division duplex multiple input multiple output calibration
US11411779B2 (en) 2020-03-31 2022-08-09 XCOM Labs, Inc. Reference signal channel estimation
US11889128B2 (en) 2021-01-05 2024-01-30 Qualcomm Incorporated Call audio playback speed adjustment
EP4294023A4 (en) * 2021-03-04 2024-04-10 Huawei Technologies Co., Ltd. DATA PROCESSING METHOD AND DEVICE
WO2022212968A1 (en) * 2021-03-30 2022-10-06 Qualcomm Incorporated Dejitter target delay value based on silence descriptors
DE102021117762B3 (de) * 2021-07-09 2022-08-18 Dfs Deutsche Flugsicherung Gmbh Verfahren zur Jitter-Kompensation bei einem Empfangen von Sprachinhalt über IP basierte Netzwerke und Empfänger hierfür sowie Verfahren und Vorrichtung zum Senden und Empfangen von Sprachinhalt mit Jitter-Kompensation
US20230283390A1 (en) * 2022-02-28 2023-09-07 Arris Enterprises Llc Method of measuring timing holdover performance in an r-phy system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5317604A (en) * 1992-12-30 1994-05-31 Gte Government Systems Corporation Isochronous interface method
US6377931B1 (en) * 1999-09-28 2002-04-23 Mindspeed Technologies Speech manipulation for continuous speech playback over a packet network
TW504937B (en) * 2000-02-08 2002-10-01 Opuswave Networks Inc Method and system for incorporating legacy private branch exchange features in a wireless network
TW515168B (en) * 2000-04-11 2002-12-21 Ibm Method for defining and controlling the overall behavior of a network processor device
US20030152093A1 (en) * 2002-02-08 2003-08-14 Gupta Sunil K. Method and system to compensate for the effects of packet delays on speech quality in a Voice-over IP system
US20040156397A1 (en) * 2003-02-11 2004-08-12 Nokia Corporation Method and apparatus for reducing synchronization delay in packet switched voice terminals using speech decoder modification

Family Cites Families (137)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US152152A (en) * 1874-06-16 Improvement in bob-sleds
US16711A (en) * 1857-03-03 Pen and pencil holder
US179474A (en) * 1876-07-04 Improvement in the manufacture of gas for illuminating and heating
US89003A (en) * 1869-04-20 Improved railway-carriage wheel
US243846A (en) * 1881-07-05 David buick
US185186A (en) * 1876-12-12 Improvement in mail-bag fastenings
US742026A (en) * 1903-07-09 1903-10-20 Isaac Pendleton Henthorn Embryotractor.
JPS5643800A (en) 1979-09-19 1981-04-22 Fujitsu Ltd Multilayer printed board
JPS57158247A (en) 1981-03-24 1982-09-30 Tokuyama Soda Co Ltd Flame retardant polyolefin composition
JPS57159038A (en) 1981-03-25 1982-10-01 Fujitsu Ltd Forming method for v-shaped isolation region
JPS57158247U (zh) * 1981-03-30 1982-10-05
JPS59153346A (ja) 1983-02-21 1984-09-01 Nec Corp 音声符号化・復号化装置
JPS61156949A (ja) 1984-12-27 1986-07-16 Matsushita Electric Ind Co Ltd 音声パケツト通信方式
JPS61158949A (ja) 1985-01-07 1986-07-18 Toyo Gosei Kogyo Kk 2−(4′−アミルベンゾイル)安息香酸混合物の製造方法
JPH0650888B2 (ja) * 1985-09-20 1994-06-29 日本電信電話株式会社 音声パケツト通信方式
JPS637297A (ja) 1986-06-24 1988-01-13 辻 賢二 横ミシン刄固定具
BE1000415A7 (nl) 1987-03-18 1988-11-22 Bell Telephone Mfg Asynchroon op basis van tijdsverdeling werkend communicatiesysteem.
JPS6429141A (en) 1987-07-24 1989-01-31 Nec Corp Packet exchange system
JPH01113744A (ja) 1987-10-27 1989-05-02 Ritsutai Shiyashinzou Kk 立体写真像製作方法およびその装置
JP2760810B2 (ja) 1988-09-19 1998-06-04 株式会社日立製作所 音声パケット処理方法
SE462277B (sv) 1988-10-05 1990-05-28 Vme Ind Sweden Ab Hydrauliskt styrsystem
JPH02288441A (ja) * 1989-04-28 1990-11-28 Oki Electric Ind Co Ltd 音声パケット受信回路
GB2243793B (en) * 1990-05-09 1993-08-18 Pall Corp Filter assemblies
JPH04113744A (ja) 1990-09-04 1992-04-15 Fujitsu Ltd 可変速度パケット伝送方式
AU642540B2 (en) 1990-09-19 1993-10-21 Philips Electronics N.V. Record carrier on which a main data file and a control file have been recorded, method of and device for recording the main data file and the control file, and device for reading the record carrier
JP2846443B2 (ja) 1990-10-09 1999-01-13 三菱電機株式会社 パケット組立分解装置
JPH04331529A (ja) * 1991-05-07 1992-11-19 Fujitsu Ltd ゆらぎ吸収バッファの制御装置
DE69232202T2 (de) 1991-06-11 2002-07-25 Qualcomm Inc Vocoder mit veraendlicher bitrate
US5283811A (en) * 1991-09-03 1994-02-01 General Electric Company Decision feedback equalization for digital cellular radio
US5371853A (en) 1991-10-28 1994-12-06 University Of Maryland At College Park Method and system for CELP speech coding and codebook for use therewith
JPH06152648A (ja) * 1992-11-09 1994-05-31 Mitsubishi Electric Corp データ・パケット通信方法
JP3186315B2 (ja) 1993-02-27 2001-07-11 ソニー株式会社 信号圧縮装置、信号伸張装置、信号送信装置、信号受信装置及び信号送受信装置
US5490479A (en) 1993-05-10 1996-02-13 Shalev; Matti Method and a product resulting from the use of the method for elevating feed storage bins
US5440582A (en) 1993-05-28 1995-08-08 Motorola, Inc. Method and apparatus for determining signal usability
US5640368A (en) * 1993-07-26 1997-06-17 Exxon Production Research Company Migration velocity analysis using limited-aperture and monte carlo migration
US5440562A (en) * 1993-12-27 1995-08-08 Motorola, Inc. Communication through a channel having a variable propagation delay
US5784532A (en) 1994-02-16 1998-07-21 Qualcomm Incorporated Application specific integrated circuit (ASIC) for performing rapid speech compression in a mobile telephone system
EP0734159B1 (en) 1994-08-12 2007-10-24 Sony Corporation Video signal editing device
NL9401696A (nl) 1994-10-14 1996-05-01 Nederland Ptt Bufferuitleesbesturing van ATM ontvanger.
US5602959A (en) * 1994-12-05 1997-02-11 Motorola, Inc. Method and apparatus for characterization and reconstruction of speech excitation waveforms
US5699478A (en) 1995-03-10 1997-12-16 Lucent Technologies Inc. Frame erasure compensation technique
US5929921A (en) 1995-03-16 1999-07-27 Matsushita Electric Industrial Co., Ltd. Video and audio signal multiplex sending apparatus, receiving apparatus and transmitting apparatus
JP3286110B2 (ja) 1995-03-16 2002-05-27 松下電器産業株式会社 音声パケット補間装置
KR0164827B1 (ko) 1995-03-31 1999-03-20 김광호 프로그램 가이드신호 수신기
CN1121684C (zh) 1995-09-14 2003-09-17 艾利森公司 用于选择性地改变一帧数字信号的方法和装置
JPH09127995A (ja) 1995-10-26 1997-05-16 Sony Corp 信号復号化方法及び信号復号化装置
US5640388A (en) 1995-12-21 1997-06-17 Scientific-Atlanta, Inc. Method and apparatus for removing jitter and correcting timestamps in a packet stream
JPH09261613A (ja) 1996-03-26 1997-10-03 Mitsubishi Electric Corp データ受信再生装置
US5866187A (en) * 1996-08-28 1999-02-02 Bunge Foods Corporation Baking formulation containing pelletized shortening
KR0185858B1 (ko) * 1996-08-31 1999-05-15 대우전자주식회사 에이티엠망에서의 이디디를 이용한 스톱-앤-고우 큐 서비스방법
US5940479A (en) 1996-10-01 1999-08-17 Northern Telecom Limited System and method for transmitting aural information between a computer and telephone equipment
JPH10190735A (ja) 1996-12-27 1998-07-21 Secom Co Ltd 通話システム
JPH10313315A (ja) 1997-05-12 1998-11-24 Mitsubishi Electric Corp 音声セルゆらぎ吸収装置
US6073092A (en) * 1997-06-26 2000-06-06 Telogy Networks, Inc. Method for speech coding based on a code excited linear prediction (CELP) model
JP3075246B2 (ja) * 1998-01-26 2000-08-14 日本電気株式会社 音声パケット送受信方法および装置
US6240386B1 (en) 1998-08-24 2001-05-29 Conexant Systems, Inc. Speech codec employing noise classification for noise compensation
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
US6370125B1 (en) * 1998-10-08 2002-04-09 Adtran, Inc. Dynamic delay compensation for packet-based voice network
JP2000124947A (ja) 1998-10-13 2000-04-28 Oki Electric Ind Co Ltd 音声パケット受信装置及び方法
AU6519399A (en) * 1998-10-21 2000-05-08 Tiernan Communications, Inc. Method and apparatus for de-jittering asynchronous data transfer delay
US6473399B1 (en) 1998-11-30 2002-10-29 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for determining an optimum timeout under varying data rates in an RLC wireless system which uses a PDU counter
US6456964B2 (en) * 1998-12-21 2002-09-24 Qualcomm, Incorporated Encoding of periodic speech using prototype waveforms
US6922669B2 (en) 1998-12-29 2005-07-26 Koninklijke Philips Electronics N.V. Knowledge-based strategies applied to N-best lists in automatic speech recognition systems
US6311154B1 (en) * 1998-12-30 2001-10-30 Nokia Mobile Phones Limited Adaptive windows for analysis-by-synthesis CELP-type speech coding
US6452950B1 (en) 1999-01-14 2002-09-17 Telefonaktiebolaget Lm Ericsson (Publ) Adaptive jitter buffering
US20020101885A1 (en) * 1999-03-15 2002-08-01 Vladimir Pogrebinsky Jitter buffer and methods for control of same
DE60023237T2 (de) 1999-04-19 2006-07-13 At & T Corp. Verfahren zur verschleierung von paketverlusten
US7117156B1 (en) * 1999-04-19 2006-10-03 At&T Corp. Method and apparatus for performing packet loss or frame erasure concealment
JP2000307654A (ja) 1999-04-23 2000-11-02 Canon Inc 音声パケット伝送システム
GB9911737D0 (en) 1999-05-21 1999-07-21 Philips Electronics Nv Audio signal time scale modification
JP4218186B2 (ja) * 1999-05-25 2009-02-04 パナソニック株式会社 音声伝送装置
US6785230B1 (en) 1999-05-25 2004-08-31 Matsushita Electric Industrial Co., Ltd. Audio transmission apparatus
JP3506960B2 (ja) * 1999-08-03 2004-03-15 シャープ株式会社 パケット処理装置及びパケット処理プログラムを記録した記憶媒体
JP4895418B2 (ja) 1999-08-24 2012-03-14 ソニー株式会社 音声再生方法および音声再生装置
JP4005359B2 (ja) 1999-09-14 2007-11-07 富士通株式会社 音声符号化及び音声復号化装置
US6859460B1 (en) * 1999-10-22 2005-02-22 Cisco Technology, Inc. System and method for providing multimedia jitter buffer adjustment for packet-switched networks
US6665317B1 (en) * 1999-10-29 2003-12-16 Array Telecom Corporation Method, system, and computer program product for managing jitter
US6496794B1 (en) * 1999-11-22 2002-12-17 Motorola, Inc. Method and apparatus for seamless multi-rate speech coding
US6366880B1 (en) * 1999-11-30 2002-04-02 Motorola, Inc. Method and apparatus for suppressing acoustic background noise in a communication system by equaliztion of pre-and post-comb-filtered subband spectral energies
US6693921B1 (en) * 1999-11-30 2004-02-17 Mindspeed Technologies, Inc. System for use of packet statistics in de-jitter delay adaption in a packet network
JP3841256B2 (ja) * 2000-02-15 2006-11-01 三菱電機株式会社 通信システム及び通信方法及び送信端末
GB2360178B (en) * 2000-03-06 2004-04-14 Mitel Corp Sub-packet insertion for packet loss compensation in Voice Over IP networks
US6813274B1 (en) 2000-03-21 2004-11-02 Cisco Technology, Inc. Network switch and method for data switching using a crossbar switch fabric with output port groups operating concurrently and independently
DE60132080T2 (de) 2000-04-03 2008-12-11 Ericsson Inc., Plano Verfahren und vorrichtung zum effizienten weiterreichen in datenpaketkommunikationssystemen
DE60128677T2 (de) 2000-04-24 2008-03-06 Qualcomm, Inc., San Diego Verfahren und vorrichtung zur prädiktiven quantisierung von stimmhaften sprachsignalen
US6584438B1 (en) 2000-04-24 2003-06-24 Qualcomm Incorporated Frame erasure compensation method in a variable rate speech coder
SE518941C2 (sv) 2000-05-31 2002-12-10 Ericsson Telefon Ab L M Anordning och förfarande relaterande till kommunikation av tal
US7016970B2 (en) 2000-07-06 2006-03-21 Matsushita Electric Industrial Co., Ltd. System for transmitting stream data from server to client based on buffer and transmission capacities and delay time of the client
CN1119890C (zh) * 2000-09-30 2003-08-27 华为技术有限公司 一种ip语音数据包的抗丢包处理方法
JP4110734B2 (ja) 2000-11-27 2008-07-02 沖電気工業株式会社 音声パケット通信の品質制御装置
US7155518B2 (en) 2001-01-08 2006-12-26 Interactive People Unplugged Ab Extranet workgroup formation across multiple mobile virtual private networks
JP2002223247A (ja) * 2001-01-25 2002-08-09 Matsushita Electric Ind Co Ltd リアルタイム音声再生装置
US20020133334A1 (en) 2001-02-02 2002-09-19 Geert Coorman Time scale modification of digitally sampled waveforms in the time domain
US20040204935A1 (en) * 2001-02-21 2004-10-14 Krishnasamy Anandakumar Adaptive voice playout in VOP
US7005511B2 (en) 2001-02-26 2006-02-28 The Regents Of The University Of California Fluorescent protein variants and methods for making same
US7212517B2 (en) * 2001-04-09 2007-05-01 Lucent Technologies Inc. Method and apparatus for jitter and frame erasure correction in packetized voice communication systems
ATE353503T1 (de) * 2001-04-24 2007-02-15 Nokia Corp Verfahren zum ändern der grösse eines zitlerpuffers zur zeitausrichtung, kommunikationssystem, empfängerseite und transcoder
JP3644404B2 (ja) * 2001-04-27 2005-04-27 三菱電機株式会社 光加入者線端局装置及びaponシステム及びセル遅延ゆらぎ抑制方法
US7006511B2 (en) 2001-07-17 2006-02-28 Avaya Technology Corp. Dynamic jitter buffering for voice-over-IP and other packet-based communication systems
US7079486B2 (en) 2002-02-13 2006-07-18 Agere Systems Inc. Adaptive threshold based jitter buffer management for packetized data
US7158572B2 (en) * 2002-02-14 2007-01-02 Tellabs Operations, Inc. Audio enhancement communication techniques
US7126957B1 (en) 2002-03-07 2006-10-24 Utstarcom, Inc. Media flow method for transferring real-time data between asynchronous and synchronous networks
US7263109B2 (en) * 2002-03-11 2007-08-28 Conexant, Inc. Clock skew compensation for a jitter buffer
US20030187663A1 (en) 2002-03-28 2003-10-02 Truman Michael Mead Broadband frequency translation for high frequency regeneration
US6944540B2 (en) * 2002-03-28 2005-09-13 Motorola, Inc. Time determination in satellite positioning system receivers and methods therefor
JP3761486B2 (ja) * 2002-03-29 2006-03-29 Necインフロンティア株式会社 無線lanシステム、主装置およびプログラム
WO2003090209A1 (en) 2002-04-22 2003-10-30 Nokia Corporation Method and device for obtaining parameters for parametric speech coding of frames
US7496086B2 (en) * 2002-04-30 2009-02-24 Alcatel-Lucent Usa Inc. Techniques for jitter buffer delay management
US7280510B2 (en) 2002-05-21 2007-10-09 Nortel Networks Limited Controlling reverse channel activity in a wireless communications system
WO2003107591A1 (en) 2002-06-14 2003-12-24 Nokia Corporation Enhanced error concealment for spatial audio
US20040001494A1 (en) * 2002-07-01 2004-01-01 Zarlink Semiconductor V.N. Inc Architecture for obtaining playback time from a packet sequence number in AAL2 SSCS voice
US7336678B2 (en) * 2002-07-31 2008-02-26 Intel Corporation State-based jitter buffer and method of operation
US8520519B2 (en) 2002-09-20 2013-08-27 Broadcom Corporation External jitter buffer in a packet voice system
JP3796240B2 (ja) 2002-09-30 2006-07-12 三洋電機株式会社 ネットワーク電話機および音声復号化装置
JP4146708B2 (ja) 2002-10-31 2008-09-10 京セラ株式会社 通信システム、無線通信端末、データ配信装置及び通信方法
US6996626B1 (en) * 2002-12-03 2006-02-07 Crystalvoice Communications Continuous bandwidth assessment and feedback for voice-over-internet-protocol (VoIP) comparing packet's voice duration and arrival rate
KR100517237B1 (ko) 2002-12-09 2005-09-27 한국전자통신연구원 직교 주파수 분할 다중화 무선 통신 시스템에서의채널품질 추정과 링크적응 방법 및 그 장치
US7525918B2 (en) * 2003-01-21 2009-04-28 Broadcom Corporation Using RTCP statistics for media system control
JP2004266724A (ja) 2003-03-04 2004-09-24 Matsushita Electric Ind Co Ltd リアルタイム音声用バッファ制御装置
JP3825007B2 (ja) * 2003-03-11 2006-09-20 沖電気工業株式会社 ジッタバッファの制御方法
JP4034217B2 (ja) 2003-03-20 2008-01-16 クボタ松下電工外装株式会社 出隅部材とこれを用いた出隅納め構造
US7551671B2 (en) * 2003-04-16 2009-06-23 General Dynamics Decision Systems, Inc. System and method for transmission of video signals using multiple channels
JP2005057504A (ja) 2003-08-05 2005-03-03 Matsushita Electric Ind Co Ltd データ通信装置及びデータ通信方法
CA2446469A1 (en) 2003-08-15 2005-02-15 M-Stack Limited Apparatus, and an associated method, for preserving communication service quality levels during hand-off of communications in a radio communication system
US7596488B2 (en) * 2003-09-15 2009-09-29 Microsoft Corporation System and method for real-time jitter control and packet-loss concealment in an audio signal
US7505764B2 (en) 2003-10-28 2009-03-17 Motorola, Inc. Method for retransmitting a speech packet
US7272400B1 (en) 2003-12-19 2007-09-18 Core Mobility, Inc. Load balancing between users of a wireless base station
US7424026B2 (en) * 2004-04-28 2008-09-09 Nokia Corporation Method and apparatus providing continuous adaptive control of voice packet buffer at receiver terminal
JP4076981B2 (ja) 2004-08-09 2008-04-16 Kddi株式会社 通信端末装置およびバッファ制御方法
MY149811A (en) 2004-08-30 2013-10-14 Qualcomm Inc Method and apparatus for an adaptive de-jitter buffer
US8085678B2 (en) 2004-10-13 2011-12-27 Qualcomm Incorporated Media (voice) playback (de-jitter) buffer adjustments based on air interface
SG124307A1 (en) 2005-01-20 2006-08-30 St Microelectronics Asia Method and system for lost packet concealment in high quality audio streaming applications
US8102872B2 (en) * 2005-02-01 2012-01-24 Qualcomm Incorporated Method for discontinuous transmission and accurate reproduction of background noise information
US20060187970A1 (en) * 2005-02-22 2006-08-24 Minkyu Lee Method and apparatus for handling network jitter in a Voice-over IP communications network using a virtual jitter buffer and time scale modification
US8355907B2 (en) 2005-03-11 2013-01-15 Qualcomm Incorporated Method and apparatus for phase matching frames in vocoders
US8155965B2 (en) 2005-03-11 2012-04-10 Qualcomm Incorporated Time warping frames inside the vocoder by modifying the residual
AU2006232364B2 (en) 2005-04-01 2010-11-25 Qualcomm Incorporated Systems, methods, and apparatus for wideband speech coding

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5317604A (en) * 1992-12-30 1994-05-31 Gte Government Systems Corporation Isochronous interface method
US6377931B1 (en) * 1999-09-28 2002-04-23 Mindspeed Technologies Speech manipulation for continuous speech playback over a packet network
TW504937B (en) * 2000-02-08 2002-10-01 Opuswave Networks Inc Method and system for incorporating legacy private branch exchange features in a wireless network
TW515168B (en) * 2000-04-11 2002-12-21 Ibm Method for defining and controlling the overall behavior of a network processor device
US20030152093A1 (en) * 2002-02-08 2003-08-14 Gupta Sunil K. Method and system to compensate for the effects of packet delays on speech quality in a Voice-over IP system
US20040156397A1 (en) * 2003-02-11 2004-08-12 Nokia Corporation Method and apparatus for reducing synchronization delay in packet switched voice terminals using speech decoder modification

Also Published As

Publication number Publication date
CA2691959C (en) 2013-07-30
US20060045138A1 (en) 2006-03-02
CN101048813A (zh) 2007-10-03
TW200629816A (en) 2006-08-16
US7817677B2 (en) 2010-10-19
KR100964436B1 (ko) 2010-06-16
CN101867522A (zh) 2010-10-20
JP2010226744A (ja) 2010-10-07
US20060056383A1 (en) 2006-03-16
CA2691589A1 (en) 2006-03-09
DK2200024T3 (da) 2013-07-01
JP2010136346A (ja) 2010-06-17
MX2007002483A (es) 2007-05-11
ES2355039T3 (es) 2011-03-22
US8331385B2 (en) 2012-12-11
CA2691959A1 (en) 2006-03-09
EP2200024A1 (en) 2010-06-23
BRPI0514801B1 (pt) 2019-06-18
CN101873266A (zh) 2010-10-27
DE602005024825D1 (de) 2010-12-30
CN101873266B (zh) 2015-11-25
EP2189978A1 (en) 2010-05-26
PL2200024T3 (pl) 2013-08-30
CN102779517A (zh) 2012-11-14
KR20090028640A (ko) 2009-03-18
EP2204796A1 (en) 2010-07-07
EP2204796B1 (en) 2017-07-12
JP2013031222A (ja) 2013-02-07
ES2405750T3 (es) 2013-06-03
JP5591897B2 (ja) 2014-09-17
KR20070065876A (ko) 2007-06-25
CN101873267B (zh) 2012-10-24
CA2578737C (en) 2010-09-21
PT2200024E (pt) 2013-07-08
KR100938032B1 (ko) 2010-01-21
WO2006026635A3 (en) 2006-06-22
PL1787290T3 (pl) 2011-04-29
EP1787290A2 (en) 2007-05-23
EP1787290B1 (en) 2010-11-17
BRPI0514801A (pt) 2008-06-24
JP4933605B2 (ja) 2012-05-16
CA2691762A1 (en) 2006-03-09
ATE488838T1 (de) 2010-12-15
WO2006026635A2 (en) 2006-03-09
KR100964437B1 (ko) 2010-06-16
US20060050743A1 (en) 2006-03-09
KR20090026818A (ko) 2009-03-13
CA2691762C (en) 2012-04-03
MY149811A (en) 2013-10-14
CN101048813B (zh) 2012-08-29
US7830900B2 (en) 2010-11-09
KR100938034B1 (ko) 2010-01-21
JP2008512062A (ja) 2008-04-17
US7826441B2 (en) 2010-11-02
EP2200024B1 (en) 2013-03-27
CN101873267A (zh) 2010-10-27
CA2578737A1 (en) 2006-03-09
KR20090028641A (ko) 2009-03-18
US20060045139A1 (en) 2006-03-02
JP5389729B2 (ja) 2014-01-15

Similar Documents

Publication Publication Date Title
TWI454101B (zh) 用於封包化資料通信之適應型低抖動緩衝區
US8279884B1 (en) Integrated adaptive jitter buffer
JP2008517560A (ja) 端末間のボイスオーバインターネットプロトコルのメディアの待ち時間を管理する方法および装置