国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種延時處理方法及裝置的制作方法

      文檔序號:7699172閱讀:209來源:國知局
      專利名稱:一種延時處理方法及裝置的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及ー種延時處理方法及裝置。
      背景技術(shù)
      基于IP 的語音傳輸(Voice over Internet Protocol, VoIP)是一種以 IP 電話為主的增值業(yè)務(wù),也就是將模擬的聲音訊號以“數(shù)據(jù)封包”的型式在IP數(shù)據(jù)網(wǎng)絡(luò)上做實時傳遞。隨著VoIP技術(shù)的廣泛應(yīng)用,國際和國內(nèi)開始越來越廣泛地使用各種網(wǎng)關(guān)產(chǎn)品,以實現(xiàn)模擬聲音信號到語音包的轉(zhuǎn)換,并將語音包在IP網(wǎng)絡(luò)上傳真。語音包按照實時傳送協(xié)議(RTP)格式打包,對端網(wǎng)關(guān)再將語音包轉(zhuǎn)換為模擬聲音信號并播放出來。這種技術(shù),使得通過IP網(wǎng)傳輸語音成為可能,形成了ー種有別于公共交換電話網(wǎng)(Public SwitchedTelephone Network, PSTN)的語音傳輸模式。
      相比PSTN,VoIP技術(shù)具有建網(wǎng)方便、投資小、方便服務(wù)擴展等優(yōu)點,但由于IP網(wǎng)絡(luò)固有的不穩(wěn)定性,例如丟包、抖動、延時,會導(dǎo)致VoIP服務(wù)質(zhì)量不穩(wěn)定,導(dǎo)致延時增加、聲音斷續(xù),影響通話效果。尤其是網(wǎng)絡(luò)抖動的問題,會對語音質(zhì)量造成極大影響,會嚴(yán)重降低語音通話的舒適度和可理解度。網(wǎng)絡(luò)抖動是由不同網(wǎng)絡(luò)包的傳輸時延差異引起的。為了抵御這種網(wǎng)絡(luò)抖動,在網(wǎng)關(guān)中需要設(shè)計相應(yīng)的延時去抖模塊,即抖動緩存(Jitter Buffer),通過適當(dāng)増加延時的方式抵消網(wǎng)絡(luò)抖動造成的影響。但是,現(xiàn)有技術(shù)中沒有給出如何根據(jù)網(wǎng)絡(luò)抖動情況確定延時調(diào)整速度的方案,而延時過快或過慢的調(diào)整會導(dǎo)致網(wǎng)絡(luò)丟包,影響通話質(zhì)量。

      發(fā)明內(nèi)容
      本發(fā)明實施例提供了ー種延時處理方法及裝置,用以提高VoIP業(yè)務(wù)在不同網(wǎng)絡(luò)情況下的通話質(zhì)量。本發(fā)明實施例提供的一種延時處理方法包括確定用于表示當(dāng)前網(wǎng)絡(luò)抖動情況的網(wǎng)絡(luò)抖動參數(shù);根據(jù)當(dāng)前網(wǎng)絡(luò)抖動參數(shù),調(diào)整抖動緩存Jitter Buffer的延時參數(shù);根據(jù)調(diào)整后的Jitter Buffer的延時參數(shù),對Jitter Buffer中的數(shù)據(jù)包進行延時處理。本發(fā)明實施例提供的ー種延時處理裝置包括網(wǎng)絡(luò)抖動確定単元,用于確定用于表示當(dāng)前網(wǎng)絡(luò)抖動情況的網(wǎng)絡(luò)抖動參數(shù);延時參數(shù)調(diào)整單元,用于根據(jù)當(dāng)前網(wǎng)絡(luò)抖動參數(shù),調(diào)整抖動緩存Jitter Buffer的延時參數(shù);處理單元,用于根據(jù)調(diào)整后的Jitter Buffer的延時參數(shù),對Jitter Buffer中的數(shù)據(jù)包進行延時處理。本發(fā)明實施例,確定用于表示當(dāng)前網(wǎng)絡(luò)抖動情況的網(wǎng)絡(luò)抖動參數(shù);根據(jù)當(dāng)前網(wǎng)絡(luò)抖動參數(shù),調(diào)整抖動緩存Jitter Buffer的延時參數(shù);根據(jù)調(diào)整后的Jitter Buffer的延時參數(shù),對Jitter Buffer中的數(shù)據(jù)包進行延時處理,從而提高VoIP業(yè)務(wù)在不同網(wǎng)絡(luò)情況下的通話質(zhì)量。


      圖I為本發(fā)明實施例提供的一種延時處理方法的流程示意圖;圖2為本發(fā)明實施例提供的20ms打包間隔時的延時漸增模型示意圖;圖3為本發(fā)明實施例提供的IOms打包間隔時的延時漸增模型示意圖;圖4為本發(fā)明實施例提供的一種延時處理裝置的結(jié)構(gòu)示意圖。
      具體實施方式

      本發(fā)明實施例提供了一種延時處理方法及裝置,用以提高VoIP業(yè)務(wù)在不同網(wǎng)絡(luò)情況下的通話質(zhì)量。本發(fā)明實施例采用的延時去抖方案的基本原理是當(dāng)網(wǎng)絡(luò)抖動嚴(yán)重時,增加延時;當(dāng)網(wǎng)絡(luò)抖動減輕時,減少延時。本發(fā)明實施例根據(jù)網(wǎng)絡(luò)抖動的不同變化情況,給出延時調(diào)整速度,通過區(qū)分延時增加和延時減小的速率,以達(dá)到較低的實際丟包率和較好的語音效果。在延時需要增加時,較快地進行調(diào)整,以避免過多的網(wǎng)絡(luò)丟包,當(dāng)延時需要減小時,調(diào)整過程盡量放緩,以避免頻繁調(diào)整造成不必要的丟包,影響通話連續(xù)性。本發(fā)明實施例,根據(jù)網(wǎng)絡(luò)狀況的變化實時調(diào)整延時,避免出現(xiàn)語音斷續(xù);另外,通過調(diào)整機制防止通話延時累加。參見圖1,本發(fā)明實施例提供的一種延時處理方法,總體包括步驟SlOl、確定用于表示當(dāng)前網(wǎng)絡(luò)抖動情況的網(wǎng)絡(luò)抖動參數(shù);S102、根據(jù)當(dāng)前網(wǎng)絡(luò)抖動參數(shù),調(diào)整抖動緩存Jitter Buffer的延時參數(shù);S103、根據(jù)調(diào)整后的Jitter Buffer的延時參數(shù),對Jitter Buffer中的數(shù)據(jù)包進行延時處理。下面給出本發(fā)明實施例如何解決延時累加問題的具體方案說明。通過同步Jitter Buffer鏈表的收包和發(fā)包過程,保持Jitter Buffer深度不變,使延時恒定。延時越小,抗網(wǎng)絡(luò)抖動的能力越差,延時越大,通話效果越不能令人滿意。因此,需要在不同的網(wǎng)絡(luò)環(huán)境下測試,確定合適的延時參數(shù)。其中,所述Jitter Buffer深度,即Jitter Buffer緩存的語音包的數(shù)量。具體地,為解決延時累加問題,跟蹤Jitter Buffer處理語音包的過程,當(dāng)語音包的存儲和讀出時序存在偏移時,采用間隔丟包方案去除這種偏移。于是,Jitter Buffer深度保持恒定,延時不會增加。其中,所述的間隔丟包方案是指當(dāng)需要丟棄η個語音包時,不是一次性將η個語音包連續(xù)丟棄,而是每隔若干個語音包(例如100個語音包)丟一個,分η次丟完。采用這種丟包方式,可避免嚴(yán)重的語音失真。單純采用丟包方案解決延時累加問題,會更加降低網(wǎng)關(guān)在網(wǎng)絡(luò)較差情況下的適應(yīng)性,因此需要對丟包方案進行改進。當(dāng)語音包進入Jitter Buffer鏈表前,認(rèn)為已完成去除冗余包和重排序的工作,因此在本發(fā)明實施例提供的Jitter Buffer算法中,僅僅完成如下工作延時去抖。
      Jitter Buffer進行延時去抖處理時,有三種狀態(tài)非同步(Unsync)狀態(tài)、播放(Play)狀態(tài)和等待(Wait)狀態(tài)。當(dāng)Jitter Buffer處于Unsync狀態(tài)(Jitter Buffer初始狀態(tài))時,Jitter Buffer進行同步,保證同步以后的包均延時指定的時間再進行處理,所述同步,即接收包,直到接收的包的數(shù)量達(dá)到預(yù)設(shè)的Jitter Buffer深度。同步完成之后,將Jitter Buffer進入Play狀態(tài)。同步的結(jié)果與同步時接收包的分布情況有關(guān),目前僅能做到盡量使同步結(jié)果接近預(yù)設(shè)的 Jitter Buffer 深度。當(dāng)Jitter Buffer處于Play狀態(tài)(Jitter Buffer正常工作狀態(tài))時,勻速地從Jitter Buffer進行取包操作(每次I個)。如果網(wǎng)絡(luò)抖動太大,Jitter Buffer會遷移到Unsync狀態(tài),即如果網(wǎng)絡(luò)抖動的瞬時值超過預(yù)設(shè)的允許的最大延時,則Jitter Buffer會遷移到Unsync狀態(tài);如果Jitter Buffer為空,Jitter Buffer會進入Wait狀態(tài)。當(dāng)Jitter Buffer處于Wait狀態(tài)(Jitter Buffer過渡狀態(tài))時,根據(jù)要求決定是向數(shù)字信號處理芯片(DSP)重發(fā)上一個包還是不動作。根據(jù)收包個數(shù)情況,決定Jitter Buffer遷入Play狀態(tài)還是Unsync狀態(tài)。本發(fā)明實施例中設(shè)置的Jitter Buffer主要延時參數(shù)有標(biāo)準(zhǔn)延時(Nom Delay):標(biāo)準(zhǔn)延時(IOms單位),在Unsync狀態(tài)要求使同步結(jié)果盡量接近該值。例如,Nom_Delay = 4。允許的最大延時(Max_Delay):允許的最大延時(IOms單位)。如果網(wǎng)絡(luò)最大瞬時延時超過此范圍,就會出現(xiàn)丟包,并重新同步,即Jitter Buffer重新進入Unsync狀態(tài)。丟包補償(PLC):該參數(shù)僅僅決定Jitter Buffer為空時,是向DSP重發(fā)上一個包還是不動作。例如,PLC為1,表示當(dāng)Jitter Buffer為空時,向DSP重發(fā)上一個包,PLC為O,表示當(dāng)Jitter Buffer為空時,不動作。同步等待時間(WaitTimesForSync):決定同步速度。WaitTimesForSync的值越大,在Jitter Buffer處于Unsync狀態(tài)時需同步的次數(shù)越多,同步結(jié)果越接近Nom_Delay,但同步耗時越多。例如,WaitTimesForSync = 2。該WaitTimesForSync 參數(shù)是可選的。最大重傳時間(MaxResendTimes):表示當(dāng)Jitter Buffer為空時,若PLC為I,連續(xù)重發(fā)包的最大次數(shù)。例如,MaxResendTimes = 3。在網(wǎng)絡(luò)包均勻到達(dá)時,Jitter Buffer狀態(tài)機始終處于Play狀態(tài),此時延時不應(yīng)該增加。但由于收發(fā)時鐘存在不同步,會出現(xiàn)延時漸增問題,每隔一段時間,實際延時就會增加I個單位(IOms)。假設(shè)當(dāng)前實際進入Jitter Buffer的IOms語音包個數(shù)為P ;由于采樣不準(zhǔn)確,檢測新到IOms語音包個數(shù)為P ;向DSP發(fā)包前,Jitter Buffer中的IOms語音包個數(shù)為K ;向DSP發(fā)包之后,留在Jitter Buffer中的IOms語音包個數(shù)為Ks。為方便起見,假設(shè)采樣延時偏差為2ms。如圖2所示,實際延時N的變化為4— > 5— > 6 ;如圖3所示,實際延時N的變化為5— > 6— > 7 ;根據(jù)上述分析,調(diào)整Jitter Buffer狀態(tài)機算法,在Jitter Buffer處于Play狀態(tài)下,引入I個新參數(shù)Jitter Buffer的實際緩沖深度(RealJittDeep),用于記錄當(dāng)前Jitter Buffer的實際緩沖深度,它與當(dāng)前實際延時N的關(guān)系是N = RealJittDeep-SegNum其中,SegNum為I個網(wǎng)絡(luò)包中含有的IOms語音包的個數(shù),即SegNum = PI/10。PI為打包間隔,例如若PI為10ms,則每隔IOms為一個語音包,若PI為20ms,則每隔20ms為
      一個語音包。也就是說,Jitter Buffer需要延時N個IOms的時間長度,播放緩存的語音包。根據(jù)RealJittDeep,調(diào)整當(dāng)前Play狀態(tài)下的Jitter Buffer中的語音包緩沖個·數(shù),使Jitter Buffer鏈中的語音包緩沖個數(shù)的最大值始終和RealJittDeep的值相同,即保持為一個常值。也就是說,當(dāng)播放Play狀態(tài)下的Jitter Buffer中的語音包緩沖個數(shù),大于RealJittDeep時,進行丟包處理,使得Jitter Buffer中的語音包緩沖個數(shù)為RealJittDeep0例如當(dāng)前Play狀態(tài)下的Jitter Buffer中的語音包緩沖個數(shù)的最大值為10,而當(dāng)前RealJittDeep為8,則需要丟棄10-8 = 2個語音包。Jitter Buffer新算法中延時漸增問題的解決,使得語音包的播放延時可以精確控制。下面給出本發(fā)明實施例中自適應(yīng)的延時去抖方案的詳細(xì)說明。當(dāng)網(wǎng)絡(luò)狀況變化時,計算出當(dāng)前的網(wǎng)絡(luò)抖動,并據(jù)此修改延時參數(shù),達(dá)到延時去抖的目的。如果網(wǎng)絡(luò)抖動超過Jitter Buffer深度,需要增大延時以適應(yīng)此抖動,當(dāng)網(wǎng)絡(luò)狀況好轉(zhuǎn)時,又能使語音延時逐漸恢復(fù)至正常水平。Jitter Buffer狀態(tài)機算法設(shè)計簡單,延時參數(shù)不能根據(jù)網(wǎng)絡(luò)狀況做到自適應(yīng),只能預(yù)先設(shè)置較大的處理延時來適應(yīng)網(wǎng)絡(luò)抖動。為了不影響透傳傳真、調(diào)制解調(diào)器傳輸(Modem)性能,Nom_Delay、Max_Delay的初始值值均較大,例如,Nom_Delay初始值可以設(shè)置為8,Max_Delay初始值可以設(shè)置為20,以便在網(wǎng)絡(luò)狀況較差時Jitter Buffer仍能正常工作。因此,有必要進一步改進算法,做到延時參數(shù)隨著網(wǎng)絡(luò)狀況自適應(yīng)變化。網(wǎng)關(guān)的Jitter Buffer要實現(xiàn)自適應(yīng),就是要隨著網(wǎng)絡(luò)狀況自適應(yīng)地調(diào)整相關(guān)的延時參數(shù)。網(wǎng)絡(luò)狀況包括延時、抖動、丟包,其中抖動對Jitter Buffer處理的影響最大。因此,這里所說的自適應(yīng),就是網(wǎng)關(guān)能夠根據(jù)網(wǎng)絡(luò)抖動狀況自動調(diào)整Jitter Buffer的播放延時,從而達(dá)到延時去抖的目的。要實現(xiàn)延時去抖,就要計算出網(wǎng)絡(luò)抖動參數(shù)(J),這個參數(shù)能夠反映當(dāng)前網(wǎng)絡(luò)抖動狀況,根據(jù)它去實時調(diào)整Jitter Buffer狀態(tài)機中的延時參數(shù)。處理步驟如下一、以PktComeThisTime記錄每次到達(dá)Jitter Buffer的IOms包的個數(shù)。記錄Hn個PktComeThisTime,獲得其中的最大值,記為Pm。其中,Hn例如可以為80。二、共獲得 F 個 Pm,記為(Pm)l,(Pm) 2,(Pm) 3,(Pm) 4,··.,(Pm)F.例如,F(xiàn)= 5.三、根據(jù)上述記錄情況,計算當(dāng)前的網(wǎng)絡(luò)抖動J(其單位為IOms包的個數(shù))J = {[ (Pm) 1*A1] + [ (Pm) 2*A2] + [ (Pm) 3*A3] + [ (Pm)4*A4] +···+[ (Pm)F*AF]}/AH其中,Α1、Α2、Α3、Α4·. .AF 表示權(quán)值,并且A1+A2+A3+A4+. . . +AF = AH ;AF >= AF-I >= · · · > = A3 > = A2 > = Al.
      根據(jù)J確定Nom_Delay、Max_Delay、RealJittDeep等參數(shù),達(dá)到調(diào)整延時的目的。例如,可以令Nom_Delay = J, Max_Delay = 2J, RealJittDeep = J。需要說明的是,通過上述方法確定的J,可以減緩網(wǎng)絡(luò)抖動的影響。AF所占的比重越大,J變化的越快。由于當(dāng) Jitter Buffer 處于 Play 狀態(tài)時,Nom_Delay、Max_Delay、RealJittDeep等參數(shù)也可以根據(jù)J自動調(diào)整,因此Jitter Buffer進入Unsync狀態(tài)的次數(shù)會大大減少。
      根據(jù)實際測試結(jié)果,調(diào)整Jitter Buffer的其他各項參數(shù),例如延時增加或減小的速率,即調(diào)整A1、A2、. . .、AF的權(quán)值分布。自適應(yīng)的目的是在網(wǎng)絡(luò)有抖動時,自動提高延時以適應(yīng)抖動;當(dāng)網(wǎng)絡(luò)恢復(fù)正常時,逐漸減少延時至正常值。通過分析,最終確定作如下改進為了減少丟包,從網(wǎng)絡(luò)良好轉(zhuǎn)變?yōu)榫W(wǎng)絡(luò)較差時(即J的值由從小變大時),計算J時AF所占比重要增大(但仍然是所有權(quán)值中的最大值),從而保證延時被迅速拉大。當(dāng)從網(wǎng)絡(luò)較差轉(zhuǎn)變?yōu)榫W(wǎng)絡(luò)良好時(即J的值從大變小時),需要丟包以達(dá)到延時減少的目的,計算J時AF所占比重要減小(但仍然是所有權(quán)值中的最大值),保證延時緩緩下降。因此,當(dāng)網(wǎng)絡(luò)變差時,計算J時所采用的權(quán)值A(chǔ)F,為預(yù)設(shè)第一 AF值;當(dāng)網(wǎng)絡(luò)變好時,計算J時所采用的權(quán)值A(chǔ)F,為預(yù)設(shè)第二 AF值;其中,第一 AF值大于第二 AF值。J重新計算的周期是10ms。當(dāng)J變大時,表示網(wǎng)絡(luò)抖動增加,則要立即根據(jù)最新計算的J的值更新延時參數(shù);當(dāng)J變小時,表示網(wǎng)絡(luò)抖動減少,則可以等待一段時間Tw之后根據(jù)最新計算的J的值更新延時參數(shù)。例如,Tw= 5 秒。這樣可以確保對網(wǎng)絡(luò)抖動迅速反應(yīng),而又能使延時參數(shù)保持恒定,避免頻繁調(diào)整。Tw越大,可以覆蓋更大的抖動區(qū)域,防止頻繁調(diào)整延時參數(shù)造成太多的丟包。參見圖4,本發(fā)明實施例提供的一種延時處理裝置,包括網(wǎng)絡(luò)抖動確定單元11,用于確定用于表示當(dāng)前網(wǎng)絡(luò)抖動情況的網(wǎng)絡(luò)抖動參數(shù);延時參數(shù)調(diào)整單元12,用于根據(jù)當(dāng)前網(wǎng)絡(luò)抖動參數(shù),調(diào)整抖動緩存Jitter Buffer的延時參數(shù);處理單元13,用于根據(jù)調(diào)整后的Jitter Buffer的延時參數(shù),對Jitter Buffer中的數(shù)據(jù)包進行延時處理。較佳地,所述網(wǎng)絡(luò)抖動確定單元11,以PktComeThisTime記錄每次到達(dá)JitterBuffer的IOms包的個數(shù);記錄多個PktComeThisTime,并確定其中的最大值,記為Pm ;共確定F個Pm,記為(Pm) I, (Pm) 2, (Pm) 3, (Pm) 4,. . . , (Pm)F ;利用下述公式計算用于表示當(dāng)前網(wǎng)絡(luò)抖動情況的網(wǎng)絡(luò)抖動參數(shù)J J = {[ (Pm) 1*A1] + [ (Pm) 2*A2] + [ (Pm) 3*A3] + [ (Pm)4*A4] +···+[ (Pm)F*AF]}/AH其中,A1、A2、A3、A4.. .AF 表示權(quán)值,并且A1+A2+A3+A4+. . . +AF = AH ;AF >= AF-I >= . . . >= A3 >= A2 >= Al。較佳地,所述網(wǎng)絡(luò)抖動確定單元11周期性地確定所述網(wǎng)絡(luò)抖動參數(shù)J ;并且,當(dāng)網(wǎng)絡(luò)變差時,計算J時所采用的權(quán)值A(chǔ)F,為預(yù)設(shè)第一 AF值;當(dāng)網(wǎng)絡(luò)變好時,計算J時所采用的權(quán)值A(chǔ)F,為預(yù)設(shè)第二 AF值;其中,第一 AF值大于第二 AF值。較佳地,所述延時參數(shù)調(diào)整單元12,根據(jù)J確定標(biāo)準(zhǔn)延時參數(shù)Nom_Delay、最大延時參數(shù) Max_Delay ;所述處理單元13,當(dāng)Jitter Buffer處于非同步Unsync狀態(tài)時,接收數(shù)據(jù)包,以使得接收到的數(shù)據(jù)包的個數(shù)達(dá)到Nom_Delay ;當(dāng)網(wǎng)絡(luò)最大瞬時延時超過Max_Delay時,令Jitter Buffer重新處于Unsync狀態(tài),以重新接收數(shù)據(jù)包。較佳地,所述延時參數(shù)調(diào)整單元12,進一步根據(jù)J確定Jitter Buffer的實際緩沖深度參數(shù) RealJittDeep ;所述處理單元13,進一步當(dāng)播放Play狀態(tài)下的Jitter Buffer中的語音包緩沖個數(shù),大于RealJittDeep時,進行丟包處理,使得Jitter Buffer中的語音包緩沖個數(shù)為RealJittDeep0 較佳地,本發(fā)明實施例提供的一種延時處理裝置,為網(wǎng)關(guān)。綜上所述,本發(fā)明實施例涉及VoIP通訊領(lǐng)域的RTP包的延時去抖措施,提供了一種防止語音播放延時累加,并具有網(wǎng)絡(luò)自適應(yīng)性的Jitter Buffer延時去抖的技術(shù)方案,可提高VoIP在不同網(wǎng)絡(luò)情況下的通話效果,尤其是通話連續(xù)性。與現(xiàn)有技術(shù)相比,能夠根據(jù)網(wǎng)絡(luò)變化的不同情形,采用非對稱方式(針對網(wǎng)絡(luò)較差轉(zhuǎn)變?yōu)榫W(wǎng)絡(luò)良好,以及網(wǎng)絡(luò)良好轉(zhuǎn)變?yōu)榫W(wǎng)絡(luò)較差的不同情況,給出不同的處理方式,選擇不同的AF值),更好地實現(xiàn)延時調(diào)整,減少丟包數(shù)并避免額外丟包,提供更好的通話效果。本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實施例、完全軟件實施例、或結(jié)合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(zhì)(包括但不限于磁盤存儲器和光學(xué)存儲器等)上實施的計算機程序產(chǎn)品的形式。本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設(shè)備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。這些計算機程序指令也可存儲在能引導(dǎo)計算機或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計算機或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程設(shè)備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。顯然,本領(lǐng)域的技術(shù)人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和 變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。
      權(quán)利要求
      1.ー種延時處理方法,其特征在于,該方法包括 確定用于表示當(dāng)前網(wǎng)絡(luò)抖動情況的網(wǎng)絡(luò)抖動參數(shù); 根據(jù)當(dāng)前網(wǎng)絡(luò)抖動參數(shù),調(diào)整抖動緩存Jitter Buffer的延時參數(shù); 根據(jù)調(diào)整后的Jitter Buffer的延時參數(shù),對Jitter Buffer中的數(shù)據(jù)包進行延時處理。
      2.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述確定用于表示當(dāng)前網(wǎng)絡(luò)抖動情況的網(wǎng)絡(luò)抖動參數(shù),包括 以PktComeThisTime記錄姆次到達(dá)Jitter Buffer的IOms包的個數(shù);記錄多個PktComeThisTime,并確定其中的最大值,記為Pm ;共確定 F 個 Pm,記為(Pm) I, (Pm) 2, (Pm) 3, (Pm) 4, . . . , (Pm)F ; 利用下述公式計算用于表示當(dāng)前網(wǎng)絡(luò)抖動情況的網(wǎng)絡(luò)抖動參數(shù)J J = {[ (Pm) 1*A1] + [ (Pm) 2*A2] + [ (Pm) 3*A3] + [ (Pm)4*A4] +...+[ (Pm)F*AF]}/AH 其中,A1、A2、A3、A4. . . AF表示權(quán)值,并且A1+A2+A3+A4+. . . +AF = AH ;AF >= AF-I >= . . . > = A3 > = A2 > = Al。
      3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述網(wǎng)絡(luò)抖動參數(shù)J的計算是周期進行的; 當(dāng)網(wǎng)絡(luò)變差吋,計算J時所采用的權(quán)值A(chǔ)F,為預(yù)設(shè)第一 AF值; 當(dāng)網(wǎng)絡(luò)變好吋,計算J時所采用的權(quán)值A(chǔ)F,為預(yù)設(shè)第二 AF值; 其中,第一 AF值大于第二 AF值。
      4.根據(jù)權(quán)利要求2或3所述的方法,其特征在于,所述根據(jù)當(dāng)前網(wǎng)絡(luò)抖動,調(diào)整抖動緩存Jitter Buffer的延時參數(shù),包括 根據(jù)J確定標(biāo)準(zhǔn)延時參數(shù)Nom_Delay、最大延時參數(shù)Max_Delay ; 所述根據(jù)調(diào)整后的Jitter Buffer的延時參數(shù),對Jitter Buffer中的數(shù)據(jù)包進行延時處理,包括 當(dāng)Jitter Buffer處于非同步Unsync狀態(tài)時,接收數(shù)據(jù)包,以使得接收到的數(shù)據(jù)包的個數(shù)達(dá)到Nom_Delay ; 當(dāng)網(wǎng)絡(luò)最大瞬時延時超過Max_Delay時,令Jitter Buffer重新處于Unsync狀態(tài),以重新接收數(shù)據(jù)包。
      5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述根據(jù)當(dāng)前網(wǎng)絡(luò)抖動,調(diào)整抖動緩存Jitter Buffer的延時參數(shù),還包括 根據(jù)J確定Jitter Buffer的實際緩沖深度參數(shù)RealJittDeep ; 所述根據(jù)調(diào)整后的Jitter Buffer的延時參數(shù),對Jitter Buffer中的數(shù)據(jù)包進行延時處理,還包括 當(dāng)播放Play狀態(tài)下的Jitter Buffer中的語音包緩沖個數(shù),大于RealJittDeep時,進行丟包處理,使得Jitter Buffer中的語音包緩沖個數(shù)為RealJittDeep。
      6.ー種延時處理裝置,其特征在于,該裝置包括 網(wǎng)絡(luò)抖動確定単元,用于確定用于表示當(dāng)前網(wǎng)絡(luò)抖動情況的網(wǎng)絡(luò)抖動參數(shù); 延時參數(shù)調(diào)整單元,用于根據(jù)當(dāng)前網(wǎng)絡(luò)抖動參數(shù),調(diào)整抖動緩存Jitter Buffer的延時參數(shù); 處理單元,用于根據(jù)調(diào)整后的Jitter Buffer的延時參數(shù),對Jitter Buffer中的數(shù)據(jù)包進行延時處理。
      7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述網(wǎng)絡(luò)抖動確定單元,以PktComeThisTime記錄姆次到達(dá)Jitter Buffer的IOms包的個數(shù);記錄多個PktComeThisTime,并確定其中的最大值,記為Pm ;共確定F個Pm,記為(Pm) I, (Pm) 2,(Pm) 3, (Pm)4, (Pm)F ;利用下述公式計算用于表示當(dāng)前網(wǎng)絡(luò)抖動情況的網(wǎng)絡(luò)抖動參數(shù)J J = {[ (Pm) 1*A1] + [ (Pm) 2*A2] + [ (Pm) 3*A3] + [ (Pm)4*A4] +...+[ (Pm)F*AF]}/AH 其中,A1、A2、A3、A4. . . AF表示權(quán)值,并且A1+A2+A3+A4+. . . +AF = AH ;AF >= AF-I >= . . . > = A3 > = A2 > = Al。
      8.根據(jù)權(quán)利要求7所述的裝置,其特征在干,所述網(wǎng)絡(luò)抖動確定單元周期性地確定所述網(wǎng)絡(luò)抖動參數(shù)J ;并且,當(dāng)網(wǎng)絡(luò)變差時,計算J時所采用的權(quán)值A(chǔ)F,為預(yù)設(shè)第一 AF值;當(dāng)網(wǎng)絡(luò)變好吋,計算J時所采用的權(quán)值A(chǔ)F,為預(yù)設(shè)第二 AF值;其中,第一 AF值大于第二 AF值。
      9.根據(jù)權(quán)利要求7或8所述的裝置,其特征在于,所述延時參數(shù)調(diào)整単元,根據(jù)J確定標(biāo)準(zhǔn)延時參數(shù)Nom_Delay、最大延時參數(shù)Max_Delay ; 所述處理單元,當(dāng)Jitter Buffer處于非同步Unsync狀態(tài)時,接收數(shù)據(jù)包,以使得接收到的數(shù)據(jù)包的個數(shù)達(dá)到Nom_Delay ;當(dāng)網(wǎng)絡(luò)最大瞬時延時超過Max_Delay時,令JitterBuffer重新處于Unsync狀態(tài),以重新接收數(shù)據(jù)包。
      10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述延時參數(shù)調(diào)整単元,進ー步根據(jù)J確定Jitter Buffer的實際緩沖深度參數(shù)RealJittDeep ; 所述處理單元,進ー步當(dāng)播放Play狀態(tài)下的Jitter Buffer中的語音包緩沖個數(shù),大于RealJittDeep時,進行丟包處理,使得Jitter Buffer中的語音包緩沖個數(shù)為RealJittDeep。
      全文摘要
      本發(fā)明公開了一種延時處理方法及裝置,用以提高VoIP業(yè)務(wù)在不同網(wǎng)絡(luò)情況下的通話質(zhì)量。本發(fā)明提供的一種延時處理方法包括確定用于表示當(dāng)前網(wǎng)絡(luò)抖動情況的網(wǎng)絡(luò)抖動參數(shù);根據(jù)當(dāng)前網(wǎng)絡(luò)抖動參數(shù),調(diào)整抖動緩存JitterBuffer的延時參數(shù);根據(jù)調(diào)整后的Jitter Buffer的延時參數(shù),對Jitter Buffer中的數(shù)據(jù)包進行延時處理。
      文檔編號H04L29/06GK102843339SQ20111016730
      公開日2012年12月26日 申請日期2011年6月21日 優(yōu)先權(quán)日2011年6月21日
      發(fā)明者邵名波 申請人:中興通訊股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1