国产精品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>

      一種實現(xiàn)語音業(yè)務(wù)的方法

      文檔序號:7596800閱讀:147來源:國知局
      專利名稱:一種實現(xiàn)語音業(yè)務(wù)的方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及語音傳輸技術(shù),特別是涉及在分組網(wǎng)絡(luò)中實現(xiàn)語音業(yè)務(wù)的方法。
      背景技術(shù)
      傳統(tǒng)的電路方式的語音傳輸需要64kbps的帶寬,而隨著2.5G和3G無線網(wǎng)絡(luò)的發(fā)展,引入了分組數(shù)據(jù)業(yè)務(wù),分組語音技術(shù)通常采用小于8Kbps的編碼方式,由于用戶通話靜默期的存在,分組網(wǎng)絡(luò)傳輸分組語音的實際平均帶寬往往會低至2到3Kbps。所以,分組語音技術(shù)能夠有效節(jié)約帶寬,從而降低了分組網(wǎng)絡(luò)的組網(wǎng)和運營成本,并且,由于分組網(wǎng)絡(luò)具有組網(wǎng)靈活的特點,使其越來越受到重視,故得以廣泛應(yīng)用于無線網(wǎng)絡(luò)中。
      在實現(xiàn)分組語音業(yè)務(wù)的系統(tǒng)中,需要設(shè)置語音幀數(shù)據(jù)和語音分組數(shù)據(jù)的轉(zhuǎn)換的單元,進行語音幀數(shù)據(jù)和語音分組數(shù)據(jù)之間的轉(zhuǎn)換。并且,分組網(wǎng)絡(luò)中存在分組抖動,抖動的大小反映在一定時間之內(nèi),不同分組數(shù)據(jù)的端到端時延的差值上,分組數(shù)據(jù)之間端到端時延的差值越大,說明分組網(wǎng)絡(luò)的抖動越嚴重。在利用分組網(wǎng)絡(luò)傳輸語音數(shù)據(jù)時,抖動會造成語音數(shù)據(jù)不能及時播放,引起聲音空缺,從而影響通話的語音質(zhì)量,所以,需要對語音分組數(shù)據(jù)進行抖動處理。
      CDMA系統(tǒng)實現(xiàn)分組語音業(yè)務(wù)的方式有多種,其中較傳統(tǒng)的一種實現(xiàn)分組語音業(yè)務(wù)的系統(tǒng)結(jié)構(gòu)如圖1所示,該組網(wǎng)方式下分組語音業(yè)務(wù)的具體實現(xiàn)方式是語音信息在發(fā)送方移動臺(MS)上編碼并以語音幀數(shù)據(jù)的格式從發(fā)送方MS經(jīng)由無線接入網(wǎng)(RAN)和移動交換中心(MSC)發(fā)送至發(fā)送方分組語音網(wǎng)關(guān),在發(fā)送方分組語音網(wǎng)關(guān)將語音幀數(shù)據(jù)轉(zhuǎn)換為語音分組數(shù)據(jù),由分組網(wǎng)絡(luò)傳到接收方,接收方分組語音網(wǎng)關(guān)對來自分組網(wǎng)絡(luò)的語音分組數(shù)據(jù)進行抖動處理并將語音分組數(shù)據(jù)轉(zhuǎn)換為語音幀數(shù)據(jù),然后通過MSC和RAN發(fā)送至接收方MS,接收方MS將語音幀數(shù)據(jù)解碼為語音信號。
      該組網(wǎng)方式的缺陷是需要設(shè)置專門的分組語音網(wǎng)關(guān)設(shè)備對語音幀數(shù)據(jù)和語音分組數(shù)據(jù)進行轉(zhuǎn)換,并進行抖動處理,增加了額外的成本。
      為了解決上述分組語音的實現(xiàn)方式的缺陷,出現(xiàn)了另一種CDMA系統(tǒng)實現(xiàn)分組語音業(yè)務(wù)的方式,這種分組語音業(yè)務(wù)所采用的系統(tǒng)結(jié)構(gòu)如圖2所示,該組網(wǎng)方式下分組語音業(yè)務(wù)的具體實現(xiàn)方式是直接在發(fā)送方MS上將語音數(shù)據(jù)打包為語音分組數(shù)據(jù),通過發(fā)送方RAN發(fā)送至分組網(wǎng)絡(luò),分組網(wǎng)絡(luò)將語音分組數(shù)據(jù)傳輸至接收方RAN,接收方RAN發(fā)送語音分組數(shù)據(jù)至接收方MS,接收方MS對語音分組數(shù)據(jù)進行抖動處理并將該數(shù)據(jù)直接解碼為語音信號。
      可以看出,第二種組網(wǎng)方式和第一種組網(wǎng)方式相比,無需設(shè)置專門的分組語音網(wǎng)關(guān),但是,本組網(wǎng)方式也存在一些缺陷首先,需要由手機實現(xiàn)語音分組數(shù)據(jù)和語音幀數(shù)據(jù)之間的轉(zhuǎn)換,而早期的手機多數(shù)不能支持該功能。
      其次,這種組網(wǎng)方式需要由手機來進行抖動處理,導致手機處理復雜,需要更高的處理性能,提高了手機的成本。

      發(fā)明內(nèi)容
      本發(fā)明的主要目的在于提供一種實現(xiàn)語音業(yè)務(wù)的方法,由RAN實現(xiàn)語音幀數(shù)據(jù)和語音分組數(shù)據(jù)之間的轉(zhuǎn)換。
      本發(fā)明的目的是通過如下技術(shù)方案實現(xiàn)的一種實現(xiàn)語音業(yè)務(wù)的方法,該方法包括如下步驟在無線接入網(wǎng)RAN的協(xié)議層上增加用于進行語音分組數(shù)據(jù)和語音幀數(shù)據(jù)互相轉(zhuǎn)換的語音數(shù)據(jù)協(xié)議VDP層;發(fā)送方RAN接收到發(fā)送方移動臺MS發(fā)來的經(jīng)過編碼的語音幀數(shù)據(jù)后,由自身的VDP層將語音幀數(shù)據(jù)轉(zhuǎn)換為語音分組數(shù)據(jù),并將語音分組數(shù)據(jù)發(fā)送至分組網(wǎng)絡(luò);接收方RAN接收到來自分組網(wǎng)絡(luò)的語音分組數(shù)據(jù)后,由自身的VDP層將語音分組數(shù)據(jù)轉(zhuǎn)換為語音幀數(shù)據(jù),并將語音幀數(shù)據(jù)發(fā)送至接收方MS,接收方MS對語音幀數(shù)據(jù)解碼并播放。
      其中,該方法進一步包括在RAN中為每一條接通的鏈路分配一定容量的暫時存儲語音分組數(shù)據(jù)的抖動緩沖區(qū),所述接收方RAN接收到語音分組數(shù)據(jù)之后,將該語音分組數(shù)據(jù)轉(zhuǎn)換為語音幀數(shù)據(jù)之前,進一步包括接收方RAN將接收到的語音分組數(shù)據(jù)存入抖動緩沖區(qū),并在滿足取出條件時從抖動緩沖區(qū)取出語音分組數(shù)據(jù)至VDP層。
      其中,所述接收方RAN將接收到的語音分組數(shù)據(jù)存入抖動緩沖區(qū)的方法為接收方RAN判斷當前抖動緩沖區(qū)是否有剩余空間,如果是,則將語音分組數(shù)據(jù)存入抖動緩沖區(qū);否則,丟棄抖動緩沖區(qū)中最早存入的語音分組數(shù)據(jù),然后將接收到的語音分組數(shù)據(jù)存入抖動緩沖區(qū)。
      其中,所述接收方RAN從抖動緩沖區(qū)取出語音分組數(shù)據(jù)至VDP層的方法為A、接收方RAN判斷抖動緩沖區(qū)是否為空,如果是,則轉(zhuǎn)到步驟B;否則,從抖動緩沖區(qū)取出語音分組數(shù)據(jù)至VDP層,然后返回步驟A,繼續(xù)判斷抖動緩沖區(qū)是否為空;B、接收方RAN判斷當前是否滿足從抖動緩沖區(qū)取出數(shù)據(jù)的條件,如果是,則從抖動緩沖區(qū)取出語音分組數(shù)據(jù)至VDP層,然后返回步驟A;否則,返回步驟B,繼續(xù)判斷當前是否滿足從抖動緩沖區(qū)取出數(shù)據(jù)的條件。
      其中,所述判斷當前是否滿足從抖動緩沖區(qū)取出數(shù)據(jù)的條件的方法為接收方RAN判斷抖動緩沖區(qū)的空間占用率是否達到已設(shè)置的緩沖區(qū)空間占用率閾值,如果是,則從抖動緩沖區(qū)取出語音分組數(shù)據(jù)至VDP層;否則,繼續(xù)判斷抖動緩沖區(qū)的空間占用率是否達到已設(shè)置的緩沖區(qū)空間占用率閾值。
      其中,該方法進一步包括在RAN中設(shè)置抖動緩沖定時器,在步驟B中,判斷當前是否滿足從抖動緩沖區(qū)取出數(shù)據(jù)之前,進一步包括啟動抖動緩沖定時器,所述判斷當前是否滿足從抖動緩沖區(qū)取出數(shù)據(jù)的條件的方法為B01、接收方RAN判斷抖動緩沖區(qū)的空間占用率是否達到已設(shè)置的緩沖區(qū)空間占用率閾值,如果是,則從抖動緩沖區(qū)取出語音分組數(shù)據(jù)至VDP層,然后退出本流程;否則轉(zhuǎn)到步驟B02;B02、接收方RAN判斷抖動緩沖定時器是否超時,如果是,則從抖動緩沖區(qū)取出語音分組數(shù)據(jù)至VDP層,然后退出本流程;否則返回步驟B01。
      其中,該方法進一步包括在RAN中設(shè)置抖動緩沖定時器,在步驟B中,判斷當前是否滿足從抖動緩沖區(qū)取出數(shù)據(jù)之前,進一步包括啟動抖動緩沖定時器,所述判斷當前是否滿足從抖動緩沖區(qū)取出數(shù)據(jù)的條件的方法為B11、接收方RAN判斷抖動緩沖定時器是否超時,如果是,則從抖動緩沖區(qū)取出語音分組數(shù)據(jù)至VDP層,然后退出本流程;否則轉(zhuǎn)到步驟B12;B12、接收方RAN判斷抖動緩沖區(qū)的空間占用率是否達到已設(shè)置的緩沖區(qū)空間占用率閾值,如果是,則從抖動緩沖區(qū)取出語音分組數(shù)據(jù)至VDP層,然后退出本流程;否則返回步驟B11。
      其中,所述抖動緩沖區(qū)的容量為根據(jù)預(yù)測的分組網(wǎng)絡(luò)的抖動情況和用戶要求的通話質(zhì)量而設(shè)置的固定值。
      其中,所述抖動緩沖區(qū)的容量為接收方RAN根據(jù)當前分組網(wǎng)絡(luò)的抖動情況而動態(tài)確定的。
      其中,所述根據(jù)當前分組網(wǎng)絡(luò)的抖動情況動態(tài)確定抖動緩沖區(qū)的容量的方法為確定反映當前分組網(wǎng)絡(luò)抖動情況的當前語音分組數(shù)據(jù)的抖動值;根據(jù)當前語音分組數(shù)據(jù)的抖動值確定當前抖動緩沖區(qū)的容量。
      其中,所述確定當前語音分組數(shù)據(jù)的抖動值的方法為判斷當前語音分組數(shù)據(jù)是否是此次語音業(yè)務(wù)中接收方RAN接收到的第一個語音分組數(shù)據(jù),如果是,則接收方RAN將已設(shè)置的抖動初始值作為當前語音分組數(shù)據(jù)的抖動值;否則,接收方RAN確定當前語音分組數(shù)據(jù)的傳輸時間,然后根據(jù)當前語音分組數(shù)據(jù)的傳輸時間、上一語音分組數(shù)據(jù)的傳輸時間和上一語音分組數(shù)據(jù)的抖動值確定當前分組數(shù)據(jù)的抖動值。
      其中,所述確定語音分組數(shù)據(jù)的傳輸時間的方法為接收方RAN將接收到語音分組數(shù)據(jù)的時間減去包含在該數(shù)據(jù)中的數(shù)據(jù)生成時間,得到語音分組數(shù)據(jù)的傳輸時間。
      其中,所述根據(jù)當前語音分組數(shù)據(jù)的傳輸時間、上一語音分組數(shù)據(jù)的傳輸時間和上一語音分組數(shù)據(jù)的抖動值確定當前語音分組數(shù)據(jù)抖動值的方法為抖動值n=抖動值n-1+(|傳輸時間n-傳輸時間n-1|-抖動值n-1)/o′,其中,抖動值n為當前語音分組數(shù)據(jù)的抖動值,抖動值n-1為上一語音分組數(shù)據(jù)的抖動值,傳輸時間n為當前語音分組數(shù)據(jù)的傳輸時間,傳輸時間n-1為上一語音分組數(shù)據(jù)的傳輸時間,o′為收斂系數(shù)。
      其中,所述收斂系數(shù)為16。
      其中,所述根據(jù)當前語音分組數(shù)據(jù)的抖動值確定抖動緩沖區(qū)容量的方法為在RAN上設(shè)置最大抖動門限、最小抖動門限、最大容量門限和最小容量門限;將當前語音分組數(shù)據(jù)的抖動值與最大抖動門限和最小抖動門限進行比較,如果當前語音分組數(shù)據(jù)的抖動值大于最大抖動門限,則判斷判斷當前抖動緩沖區(qū)容量是否小于最大容量門限,如果是,則增大抖動緩沖區(qū)容量;否則,保持當前抖動緩沖區(qū)容量不變;如果當前語音分組數(shù)據(jù)的抖動值小于最小抖動門限,則判斷當前抖動緩沖區(qū)容量是否大于最小容量門限,如果是,則減小抖動緩沖區(qū)容量;否則,保持當前抖動緩沖區(qū)容量不變;
      如果當前語音分組數(shù)據(jù)的抖動值大于或等于最小抖動門限且小于或等于最大抖動門限,保持當前抖動緩沖區(qū)的容量不變。
      其中,所述增大抖動緩沖區(qū)容量的方法為在RAN上設(shè)置容量步長值;增大的抖動緩沖區(qū)容量為當前抖動緩沖區(qū)容量與容量步長值之和,所述減小抖動緩沖區(qū)容量的方法為在RAN上設(shè)置容量步長值;減小的抖動緩沖區(qū)容量為當前抖動緩沖區(qū)容量與容量步長值之差。
      其中,所述增大抖動緩沖區(qū)容量的方法為在RAN上設(shè)置容量百分比;增大的抖動緩沖區(qū)容量為當前抖動緩沖區(qū)容量加上該容量與容量百分比的乘積,所述減小抖動緩沖區(qū)容量的方法為在RAN上設(shè)置容量百分比;減小的抖動緩沖區(qū)容量為當前抖動緩沖區(qū)容量減去該容量與容量百分比的乘積。
      其中,該方法進一步包括在RAN中分配一定容量的暫時存儲語音幀數(shù)據(jù)的抖動緩沖區(qū),所述接收方RAN將語音分組數(shù)據(jù)轉(zhuǎn)換為語音幀數(shù)據(jù)之后,進一步包括接收方RAN將語音幀數(shù)據(jù)存入抖動緩沖區(qū);接收方RAN從抖動緩沖區(qū)取出語音幀數(shù)據(jù)。
      其中,所述分組網(wǎng)絡(luò)是碼分多址網(wǎng)絡(luò)。
      本發(fā)明提供了一種實現(xiàn)語音業(yè)務(wù)的方法,該方法是在RAN的協(xié)議層上增加用于進行語音分組數(shù)據(jù)和語音幀數(shù)據(jù)互相轉(zhuǎn)換的VDP層;發(fā)送方RAN接收到發(fā)送方MS發(fā)來的經(jīng)過編碼的語音幀數(shù)據(jù)后,由自身的VDP層將語音幀數(shù)據(jù)轉(zhuǎn)換為語音分組數(shù)據(jù),并將語音分組數(shù)據(jù)發(fā)送至分組網(wǎng)絡(luò);接收方RAN接收到來自分組網(wǎng)絡(luò)的語音分組數(shù)據(jù)時,由自身的VDP層將語音分組數(shù)據(jù)轉(zhuǎn)換為語音幀數(shù)據(jù),并將語音幀數(shù)據(jù)發(fā)送至接收方MS,接收方MS對語音幀數(shù)據(jù)解碼并播放?,F(xiàn)有技術(shù)的方法是由分組語音網(wǎng)關(guān)實現(xiàn)語音分組數(shù)據(jù)和語音幀數(shù)據(jù)之間的互相轉(zhuǎn)換,或由手機實現(xiàn)語音分組數(shù)據(jù)和語音幀數(shù)據(jù)之間的轉(zhuǎn)換。從本發(fā)明和現(xiàn)有技術(shù)的對比來看,本發(fā)明的方法無需設(shè)置專門的設(shè)備進行語音分組數(shù)據(jù)和語音幀數(shù)據(jù)之間的轉(zhuǎn)換,從而簡化了網(wǎng)絡(luò)結(jié)構(gòu),避免額外的成本;此外,本發(fā)明無需手機進行上述數(shù)據(jù)格式的轉(zhuǎn)換,從而對手機沒有額外的要求,同時簡化了手機的操作。
      而且,從技術(shù)方案中可以看出,本發(fā)明的方法由接收方RAN對語音分組數(shù)據(jù)進行抖動處理,這也避免了現(xiàn)有技術(shù)中由于分組語音網(wǎng)關(guān)或手機進行抖動處理所造成的網(wǎng)絡(luò)成本增加或手機操作復雜的問題。


      圖1是現(xiàn)有技術(shù)一的實現(xiàn)語音業(yè)務(wù)的系統(tǒng)結(jié)構(gòu)示意圖;圖2是現(xiàn)有技術(shù)二的實現(xiàn)語音業(yè)務(wù)的系統(tǒng)結(jié)構(gòu)示意圖;圖3是本發(fā)明的RAN的協(xié)議層的結(jié)構(gòu)示意圖;圖4是根據(jù)本發(fā)明的實現(xiàn)語音業(yè)務(wù)的系統(tǒng)結(jié)構(gòu)示意圖;圖5是根據(jù)本發(fā)明的實現(xiàn)語音業(yè)務(wù)的方法流程圖;圖6是接收方RAN向抖動緩沖區(qū)存入語音分組數(shù)據(jù)的流程圖。
      圖7是接收方RAN從抖動緩沖區(qū)取出語音分組數(shù)據(jù)的流程圖。
      圖8是根據(jù)本發(fā)明的動態(tài)調(diào)整抖動緩沖區(qū)大小的方法流程圖。
      具體實施例方式
      為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點更清楚,下面結(jié)合附圖和具體實施方式
      對本發(fā)明作進一步描述。
      本發(fā)明的方法在圖2所示的組網(wǎng)方式的基礎(chǔ)上對現(xiàn)有技術(shù)加以改進,在RAN上增加語音數(shù)據(jù)協(xié)議(VDP)層,圖3是本發(fā)明的RAN的協(xié)議層的結(jié)構(gòu)示意圖,從圖3中可以看出,本發(fā)明的RAN在與分組網(wǎng)絡(luò)交互的協(xié)議層中,除了包括原有的分組傳輸層、鏈路層和物理層之外,還在分組傳輸層的上面增加了VDP層,以實現(xiàn)語音幀數(shù)據(jù)和語音分組數(shù)據(jù)之間的互相轉(zhuǎn)換。使RAN具有將語音幀數(shù)據(jù)轉(zhuǎn)換為語音分組數(shù)據(jù),并將語音分組數(shù)據(jù)轉(zhuǎn)換為語音幀數(shù)據(jù)的功能。
      圖4是根據(jù)本發(fā)明的實現(xiàn)語音業(yè)務(wù)的系統(tǒng)結(jié)構(gòu)示意圖,本發(fā)明的方法在發(fā)送方MS上將語音數(shù)據(jù)以語音幀的格式傳送至發(fā)送方RAN,發(fā)送方RAN將語音幀格式轉(zhuǎn)換為語音分組格式,然后發(fā)送至分組網(wǎng)絡(luò),分組網(wǎng)絡(luò)將語音分組數(shù)據(jù)傳輸至接收方RAN,接收方RAN對接收到的語音分組數(shù)據(jù)進行抖動處理,然后將語音分組數(shù)據(jù)轉(zhuǎn)換為語音幀數(shù)據(jù),并發(fā)送至接收方MS,接收方MS將語音幀格式的數(shù)據(jù)直接解碼為語音信號。
      抖動處理是接收方RAN將接收到的語音分組數(shù)據(jù)存入預(yù)先設(shè)置的抖動緩沖區(qū),在滿足一定取出條件時將語音分組數(shù)據(jù)從抖動緩沖區(qū)取出,然后執(zhí)行將語音分組數(shù)據(jù)轉(zhuǎn)換為語音幀數(shù)據(jù)的步驟。
      圖5是根據(jù)本發(fā)明的實現(xiàn)語音業(yè)務(wù)的方法流程圖,從圖5中可以看出,本發(fā)明的方法包括如下步驟步驟501在發(fā)送方RAN和接收方RAN上分別增加VDP層和用于進行抖動處理的抖動緩沖區(qū),并設(shè)置抖動緩沖區(qū)的空間占用率閾值和緩沖定時器。
      VDP層的作用是實現(xiàn)語音幀數(shù)據(jù)和分組數(shù)據(jù)之間的互相轉(zhuǎn)換,在RAN上增加VDP層可使RAN具有將語音幀數(shù)據(jù)轉(zhuǎn)換為語音分組數(shù)據(jù),并將語音分組數(shù)據(jù)轉(zhuǎn)換為語音幀數(shù)據(jù)的功能。
      步驟502發(fā)送方MS對用戶的語音數(shù)據(jù)進行編碼,將語音轉(zhuǎn)換為數(shù)字比特流,在空口以語音幀的形式將語音數(shù)據(jù)發(fā)送至RAN。
      對語音數(shù)據(jù)進行編碼的方式有多種,例如,可以采用增強可變速率編解碼(EVRC,Enhanced Variable Rate Codec)或高通提出的碼激勵線性預(yù)測編碼(QCELP,QUALCOMM Code Excited Linear Prediction)兩種編碼方式。語音幀數(shù)據(jù)也可以采用不同的格式,例如,可以采用20ms/幀的格式,即每幀中存儲20ms的語音數(shù)據(jù)。
      步驟503發(fā)送方RAN接收到發(fā)送方MS發(fā)來的語音幀數(shù)據(jù)之后,在VDP層按照一定的語音分組方式將語音幀數(shù)據(jù)轉(zhuǎn)換為語音分組數(shù)據(jù),并填寫目的地址,然后將語音分組數(shù)據(jù)傳入分組網(wǎng)絡(luò)。
      語音分組方式有多種,例如,可以將一個語音幀打包為一個語音分組,或?qū)⒍鄠€語音幀打包為一個語音分組,每個語音分組中包含的語音幀的數(shù)目由設(shè)置的參數(shù)確定,且數(shù)目的多寡各有利弊每個語音分組包含的語音幀越少則網(wǎng)絡(luò)延時越小,但語音分組的數(shù)量多,導致分組網(wǎng)絡(luò)負擔增大;每個語音分組包含的語音幀越多則網(wǎng)絡(luò)延時越大,但語音分組的數(shù)量少,所以分組網(wǎng)絡(luò)的負擔較小。由于存在上述利弊,所以需要根據(jù)不同時刻的網(wǎng)絡(luò)實測的語音質(zhì)量和網(wǎng)絡(luò)負載動態(tài)調(diào)整控制語音分組方式的參數(shù),以確定組建語音分組的語音幀數(shù)。
      步驟504接收方RAN利用已經(jīng)設(shè)置的抖動緩沖區(qū)對分組網(wǎng)絡(luò)發(fā)來的語音分組數(shù)據(jù)進行抖動處理。
      步驟505接收方RAN在VDP層將語音分組數(shù)據(jù)轉(zhuǎn)換為語音幀數(shù)據(jù),并將語音幀數(shù)據(jù)發(fā)送至接收方MS。
      步驟506接收方MS按照發(fā)送方MS的幀格式對接收到的語音幀數(shù)據(jù)解碼,并播放語音數(shù)據(jù)。
      在接收方RAN不向MS發(fā)送語音數(shù)據(jù)的時候,為了不使接收方MS的用戶感到明顯的話音中斷,可以發(fā)送舒適噪聲至接收方MS,接收方MS解碼該舒適噪聲并放音,舒適噪聲是指對人體不產(chǎn)生刺激的特殊噪聲。
      在步驟504中,接收方RAN對分組網(wǎng)絡(luò)發(fā)來的語音分組數(shù)據(jù)進行抖動處理,抖動處理的流程由兩個并行的流程組成,一個是接收方RAN向抖動緩沖區(qū)存入語音分組數(shù)據(jù)的流程,另一個是接收方RAN從抖動緩沖區(qū)取出語音分組數(shù)據(jù)的流程。下面詳細介紹抖動處理的兩個流程。
      圖6是接收方RAN向抖動緩沖區(qū)存入語音分組數(shù)據(jù)的流程圖,從圖中可以看出,該流程包括如下步驟步驟601接收方RAN判斷是否接收到分組網(wǎng)絡(luò)發(fā)來的語音分組數(shù)據(jù),如果是,則轉(zhuǎn)到步驟602;否則,返回到步驟601,繼續(xù)判斷是否接收到語音分組數(shù)據(jù)。
      步驟602接收方RAN判斷抖動緩沖區(qū)是否有剩余空間,如果是,則轉(zhuǎn)到步驟604;否則,轉(zhuǎn)到步驟603。
      步驟603接收方RAN舍棄抖動緩沖區(qū)中最早存入的語音分組數(shù)據(jù),然后轉(zhuǎn)到步驟604。
      步驟604接收方RAN將語音分組數(shù)據(jù)存入抖動緩沖區(qū),然后重復執(zhí)行步驟601。
      圖7是接收方RAN從抖動緩沖區(qū)取出語音分組數(shù)據(jù)的流程圖,從圖中可以看出,該流程包括如下步驟步驟701接收方RAN判斷抖動緩沖區(qū)是否為空,如果是,則轉(zhuǎn)到步驟702;否則,轉(zhuǎn)到步驟704。
      步驟702接收方RAN啟動抖動緩沖定時器。
      步驟703接收方RAN判斷當前是否滿足從抖動緩沖區(qū)中取出語音分組數(shù)據(jù)的條件,有兩種判斷方式,可任選其一(1)接收方RAN判斷抖動緩沖區(qū)的空間占用率是否達到了設(shè)定的緩沖區(qū)容量的空間占用率閾值,如果達到閾值,則轉(zhuǎn)到步驟704;如果未達到閾值,則判斷抖動緩沖定時器是否超時,如果超時,則轉(zhuǎn)到步驟704;如果未超時,則返回步驟703。
      (2)接收方RAN判斷抖動緩沖定時器是否超時,如果超時,則轉(zhuǎn)到步驟704;如果未超時,則判斷緩沖區(qū)的空間占用率是否達到空間占用率閾值,如果達到閾值,則轉(zhuǎn)到步驟704;如果未達到閾值,則返回步驟703。
      步驟704接收方RAN從抖動緩沖區(qū)取出語音分組數(shù)據(jù)至VDP層。
      需要說明,在從抖動緩沖區(qū)取出語音分組數(shù)據(jù)的方案中,也可以不設(shè)置抖動緩沖定時器,而直接通過判斷當前抖動緩沖區(qū)的空間占用率是否達到空間占用率閾值來判斷當前是否滿足取出語音分組數(shù)據(jù)的條件。
      另外,抖動緩沖區(qū)的容量可以是網(wǎng)絡(luò)配置的參數(shù),也可以是根據(jù)分組網(wǎng)絡(luò)的抖動情況而動態(tài)更改的參數(shù)。上述實施例屬于前一種情況,在對網(wǎng)絡(luò)進行配置的時候根據(jù)預(yù)測的分組網(wǎng)絡(luò)的抖動情況和用戶要求的話音質(zhì)量來調(diào)整緩沖區(qū)的容量,一旦配置完畢,則不能自動調(diào)整該參數(shù);在后一種情況下,需要設(shè)定一個初始的抖動緩沖區(qū)容量,然后根據(jù)分組網(wǎng)絡(luò)的抖動情況動態(tài)更改該容量,動態(tài)更改抖動緩沖區(qū)容量的方法是在接收方RAN接收到新的語音分組數(shù)據(jù)之后,根據(jù)接收到的語音分組數(shù)據(jù)計算抖動值,并根據(jù)抖動值調(diào)整抖動緩沖區(qū)的容量。
      下面對動態(tài)調(diào)整抖動緩沖區(qū)容量的方法予以說明。
      為了動態(tài)調(diào)整抖動緩沖區(qū)容量,除了在RAN上增加VDP層和抖動緩沖區(qū)并設(shè)置各項參數(shù)以外,還需要設(shè)置一些動態(tài)調(diào)整抖動緩沖區(qū)容量所需的參數(shù),諸如初始抖動值、最大抖動門限、最小抖動門限、抖動緩沖區(qū)最大容量門限和最小容量門限。
      由于實施動態(tài)調(diào)整抖動緩沖區(qū)的前提是記錄發(fā)送方RAN生成語音分組數(shù)據(jù)的時間和接收方RAN接收到語音分組數(shù)據(jù)的時間,所以,在發(fā)送方RAN組成語音分組數(shù)據(jù)時,記錄當前的系統(tǒng)時間并將該時間作為分組數(shù)據(jù)生成時間附加在語音分組數(shù)據(jù)中;在接收方RAN接收到來自分組網(wǎng)絡(luò)的語音數(shù)據(jù)時,記錄當前的系統(tǒng)時間作為分組數(shù)據(jù)到達時間。
      在接收方RAN接收到來自分組網(wǎng)絡(luò)的語音分組數(shù)據(jù)之后,對該語音分組數(shù)據(jù)進行抖動處理之前,增加動態(tài)調(diào)整緩沖區(qū)容量的步驟,如圖8所示,本發(fā)明的動態(tài)調(diào)整抖動緩沖區(qū)容量的步驟如下步驟801接收方RAN按照公式(1)計算抖動值
      抖動值n=抖動值n-1+(|傳輸時間n-傳輸時間n-1|-抖動值n-1)/o′(1)其中,抖動值n是當前計算所得的抖動值;抖動值n-1是上一次計算得到的抖動值;傳輸時間n是當前分組數(shù)據(jù)在網(wǎng)絡(luò)上的傳輸時間,其值是當前分組數(shù)據(jù)到達時間與分組中攜帶的分組數(shù)據(jù)生成時間的差;傳輸時間n-1是上一個分組數(shù)據(jù)在網(wǎng)絡(luò)上的傳輸時間;o′是可根據(jù)網(wǎng)絡(luò)情況進行適當調(diào)整的收斂系數(shù),優(yōu)選地,其值可取16。
      如果當前接收到的語音分組數(shù)據(jù)是第一個語音分組數(shù)據(jù),首先計算分組數(shù)據(jù)的傳輸時間,傳輸時間為分組數(shù)據(jù)到達時間與分組數(shù)據(jù)生成時間之差,此時不計算抖動值,抖動值為設(shè)置的初始抖動值。
      從接收方RAN接收到第二個語音分組數(shù)據(jù)之后,將上一個語音分組數(shù)據(jù)的傳輸時間作為傳輸時間n-1,將上一個語音分組數(shù)據(jù)的抖動值作為抖動值n-1,并將當前分組數(shù)據(jù)的傳輸時間作為傳輸時間n,用公式(1)計算抖動值n。
      步驟802將計算所得的當前時刻的抖動值與最大抖動門限和最小抖動門限進行比較,如果抖動值大于最大抖動門限,則轉(zhuǎn)到步驟803;如果抖動值小于最小抖動門限,則轉(zhuǎn)到步驟804;如果抖動值在最大抖動門限和最小抖動門限之間,包括最大抖動門限和最小抖動門限,則轉(zhuǎn)到步驟805。
      步驟803判斷當前抖動緩沖區(qū)的容量是否小于最大容量門限,如果是,則轉(zhuǎn)到步驟806;否則,轉(zhuǎn)到步驟805。
      步驟804判斷當前抖動緩沖區(qū)的容量是否大于最小容量門限,如果是,則轉(zhuǎn)到步驟807;否則,轉(zhuǎn)到步驟805。
      步驟805保持當前抖動緩沖區(qū)的容量不變,然后結(jié)束。
      步驟806增加將抖動緩沖區(qū)的容量,然后結(jié)束。
      增加容量的方法有兩種一種是增加固定的步長值;另一種是增加當前容量的一定百分比,例如,增加當前容量的20%。
      步驟807減小將抖動緩沖區(qū)的容量。
      減小容量的方法有兩種一種是減小固定的步長值;另一種是減小當前容量的一定百分比,例如,減小當前容量的20%。
      在確定了緩沖區(qū)容量之后,接收方RAN在VDP層利用抖動緩沖區(qū)對語音分組數(shù)據(jù)進行抖動處理。
      在上述的實現(xiàn)分組語音業(yè)務(wù)方法中,接收方RAN對接收到的語音分組數(shù)據(jù)進行抖動處理,然后將語音分組數(shù)據(jù)轉(zhuǎn)換為語音幀數(shù)據(jù)。在實際處理中,接收方RAN也可先將接收到的語音分組數(shù)據(jù)轉(zhuǎn)換為語音幀數(shù)據(jù),然后對語音幀數(shù)據(jù)進行抖動處理,對語音幀數(shù)據(jù)進行抖動處理的方法也是利用抖動緩沖區(qū)進行抖動處理,在這種情況下,抖動緩沖區(qū)中存儲的是語音幀數(shù)據(jù),而不是語音分組數(shù)據(jù)。抖動緩沖區(qū)的容量可以是預(yù)先設(shè)置的固定值,也可以如前文所述,根據(jù)當前分組網(wǎng)絡(luò)的抖動情況計算抖動值,并根據(jù)計算出的抖動值動態(tài)地改變抖動緩沖區(qū)的容量。
      在具體的實施過程中可對根據(jù)本發(fā)明的方法進行適當?shù)母倪M,以適應(yīng)具體情況的具體需要。因此可以理解,根據(jù)本發(fā)明的具體實施方式
      只是起示范作用,并不用以限制本發(fā)明的保護范圍,例如,本發(fā)明不局限于在CDMA網(wǎng)絡(luò)中應(yīng)用,也可應(yīng)用在其它類型的分組網(wǎng)絡(luò)中。
      權(quán)利要求
      1.一種實現(xiàn)語音業(yè)務(wù)的方法,其特征在于,該方法包括如下步驟在無線接入網(wǎng)RAN的協(xié)議層上增加用于進行語音分組數(shù)據(jù)和語音幀數(shù)據(jù)互相轉(zhuǎn)換的語音數(shù)據(jù)協(xié)議VDP層;發(fā)送方RAN接收到發(fā)送方移動臺MS發(fā)來的經(jīng)過編碼的語音幀數(shù)據(jù)后,由自身的VDP層將語音幀數(shù)據(jù)轉(zhuǎn)換為語音分組數(shù)據(jù),并將語音分組數(shù)據(jù)發(fā)送至分組網(wǎng)絡(luò);接收方RAN接收到來自分組網(wǎng)絡(luò)的語音分組數(shù)據(jù)后,由自身的VDP層將語音分組數(shù)據(jù)轉(zhuǎn)換為語音幀數(shù)據(jù),并將語音幀數(shù)據(jù)發(fā)送至接收方MS,接收方MS對語音幀數(shù)據(jù)解碼并播放。
      2.根據(jù)權(quán)利要求1所述的實現(xiàn)語音業(yè)務(wù)的方法,其特征在于,該方法進一步包括在RAN中為每一條接通的鏈路分配一定容量的暫時存儲語音分組數(shù)據(jù)的抖動緩沖區(qū),所述接收方RAN接收到語音分組數(shù)據(jù)之后,將該語音分組數(shù)據(jù)轉(zhuǎn)換為語音幀數(shù)據(jù)之前,進一步包括接收方RAN將接收到的語音分組數(shù)據(jù)存入抖動緩沖區(qū),并在滿足取出條件時從抖動緩沖區(qū)取出語音分組數(shù)據(jù)至VDP層。
      3.根據(jù)權(quán)利要求2所述的實現(xiàn)語音業(yè)務(wù)的方法,其特征在于,所述接收方RAN將接收到的語音分組數(shù)據(jù)存入抖動緩沖區(qū)的方法為接收方RAN判斷當前抖動緩沖區(qū)是否有剩余空間,如果是,則將語音分組數(shù)據(jù)存入抖動緩沖區(qū);否則,丟棄抖動緩沖區(qū)中最早存入的語音分組數(shù)據(jù),然后將接收到的語音分組數(shù)據(jù)存入抖動緩沖區(qū)。
      4.根據(jù)權(quán)利要求2所述的實現(xiàn)語音業(yè)務(wù)的方法,其特征在于,所述接收方RAN從抖動緩沖區(qū)取出語音分組數(shù)據(jù)至VDP層的方法為A、接收方RAN判斷抖動緩沖區(qū)是否為空,如果是,則轉(zhuǎn)到步驟B;否則,從抖動緩沖區(qū)取出語音分組數(shù)據(jù)至VDP層,然后返回步驟A,繼續(xù)判斷抖動緩沖區(qū)是否為空;B、接收方RAN判斷當前是否滿足從抖動緩沖區(qū)取出數(shù)據(jù)的條件,如果是,則從抖動緩沖區(qū)取出語音分組數(shù)據(jù)至VDP層,然后返回步驟A;否則,返回步驟B,繼續(xù)判斷當前是否滿足從抖動緩沖區(qū)取出數(shù)據(jù)的條件。
      5.根據(jù)權(quán)利要求4所述的實現(xiàn)語音業(yè)務(wù)的方法,其特征在于,所述判斷當前是否滿足從抖動緩沖區(qū)取出數(shù)據(jù)的條件的方法為接收方RAN判斷抖動緩沖區(qū)的空間占用率是否達到已設(shè)置的緩沖區(qū)空間占用率閾值,如果是,則從抖動緩沖區(qū)取出語音分組數(shù)據(jù)至VDP層;否則,繼續(xù)判斷抖動緩沖區(qū)的空間占用率是否達到已設(shè)置的緩沖區(qū)空間占用率閾值。
      6.根據(jù)權(quán)利要求4所述的實現(xiàn)語音業(yè)務(wù)的方法,其特征在于,該方法進一步包括在RAN中設(shè)置抖動緩沖定時器,在步驟B中,判斷當前是否滿足從抖動緩沖區(qū)取出數(shù)據(jù)之前,進一步包括啟動抖動緩沖定時器,所述判斷當前是否滿足從抖動緩沖區(qū)取出數(shù)據(jù)的條件的方法為B01、接收方RAN判斷抖動緩沖區(qū)的空間占用率是否達到已設(shè)置的緩沖區(qū)空間占用率閾值,如果是,則從抖動緩沖區(qū)取出語音分組數(shù)據(jù)至VDP層,然后退出本流程;否則轉(zhuǎn)到步驟B02;B02、接收方RAN判斷抖動緩沖定時器是否超時,如果是,則從抖動緩沖區(qū)取出語音分組數(shù)據(jù)至VDP層,然后退出本流程;否則返回步驟B01。
      7.根據(jù)權(quán)利要求4所述的實現(xiàn)語音業(yè)務(wù)的方法,其特征在于,該方法進一步包括在RAN中設(shè)置抖動緩沖定時器,在步驟B中,判斷當前是否滿足從抖動緩沖區(qū)取出數(shù)據(jù)之前,進一步包括啟動抖動緩沖定時器,所述判斷當前是否滿足從抖動緩沖區(qū)取出數(shù)據(jù)的條件的方法為B11、接收方RAN判斷抖動緩沖定時器是否超時,如果是,則從抖動緩沖區(qū)取出語音分組數(shù)據(jù)至VDP層,然后退出本流程;否則轉(zhuǎn)到步驟B12;B12、接收方RAN判斷抖動緩沖區(qū)的空間占用率是否達到已設(shè)置的緩沖區(qū)空間占用率閾值,如果是,則從抖動緩沖區(qū)取出語音分組數(shù)據(jù)至VDP層,然后退出本流程;否則返回步驟B11。
      8.根據(jù)權(quán)利要求2所述的實現(xiàn)語音業(yè)務(wù)的方法,其特征在于,所述抖動緩沖區(qū)的容量為根據(jù)預(yù)測的分組網(wǎng)絡(luò)的抖動情況和用戶要求的通話質(zhì)量而設(shè)置的固定值。
      9.根據(jù)權(quán)利要求2所述的實現(xiàn)語音業(yè)務(wù)的方法,其特征在于,所述抖動緩沖區(qū)的容量為接收方RAN根據(jù)當前分組網(wǎng)絡(luò)的抖動情況而動態(tài)確定的。
      10.根據(jù)權(quán)利要求9所述的實現(xiàn)語音業(yè)務(wù)的方法,其特征在于,所述根據(jù)當前分組網(wǎng)絡(luò)的抖動情況動態(tài)確定抖動緩沖區(qū)的容量的方法為確定反映當前分組網(wǎng)絡(luò)抖動情況的當前語音分組數(shù)據(jù)的抖動值;根據(jù)當前語音分組數(shù)據(jù)的抖動值確定當前抖動緩沖區(qū)的容量。
      11.根據(jù)權(quán)利要求10所述的實現(xiàn)語音業(yè)務(wù)的方法,其特征在于,所述確定當前語音分組數(shù)據(jù)的抖動值的方法為判斷當前語音分組數(shù)據(jù)是否是此次語音業(yè)務(wù)中接收方RAN接收到的第一個語音分組數(shù)據(jù),如果是,則接收方RAN將已設(shè)置的抖動初始值作為當前語音分組數(shù)據(jù)的抖動值;否則,接收方RAN確定當前語音分組數(shù)據(jù)的傳輸時間,然后根據(jù)當前語音分組數(shù)據(jù)的傳輸時間、上一語音分組數(shù)據(jù)的傳輸時間和上一語音分組數(shù)據(jù)的抖動值確定當前分組數(shù)據(jù)的抖動值。
      12.根據(jù)權(quán)利要求11所述的實現(xiàn)語音業(yè)務(wù)的方法,其特征在于,所述確定語音分組數(shù)據(jù)的傳輸時間的方法為接收方RAN將接收到語音分組數(shù)據(jù)的時間減去包含在該數(shù)據(jù)中的數(shù)據(jù)生成時間,得到語音分組數(shù)據(jù)的傳輸時間。
      13.根據(jù)權(quán)利要求11所述的實現(xiàn)語音業(yè)務(wù)的方法,其特征在于,所述根據(jù)當前語音分組數(shù)據(jù)的傳輸時間、上一語音分組數(shù)據(jù)的傳輸時間和上一語音分組數(shù)據(jù)的抖動值確定當前語音分組數(shù)據(jù)抖動值的方法為抖動值n=抖動值n-1+(|傳輸時間n-傳輸時間n-1|-抖動值n-1)/σ,其中,抖動值n為當前語音分組數(shù)據(jù)的抖動值,抖動值n-1為上一語音分組數(shù)據(jù)的抖動值,傳輸時間n為當前語音分組數(shù)據(jù)的傳輸時間,傳輸時間n-1為上一語音分組數(shù)據(jù)的傳輸時間,σ為收斂系數(shù)。
      14.根據(jù)權(quán)利要求13所述的實現(xiàn)語音業(yè)務(wù)的方法,其特征在于,所述收斂系數(shù)為16。
      15.根據(jù)權(quán)利要求10所述的實現(xiàn)語音業(yè)務(wù)的方法,其特征在于,所述根據(jù)當前語音分組數(shù)據(jù)的抖動值確定抖動緩沖區(qū)容量的方法為在RAN上設(shè)置最大抖動門限、最小抖動門限、最大容量門限和最小容量門限;將當前語音分組數(shù)據(jù)的抖動值與最大抖動門限和最小抖動門限進行比較,如果當前語音分組數(shù)據(jù)的抖動值大于最大抖動門限,則判斷判斷當前抖動緩沖區(qū)容量是否小于最大容量門限,如果是,則增大抖動緩沖區(qū)容量;否則,保持當前抖動緩沖區(qū)容量不變;如果當前語音分組數(shù)據(jù)的抖動值小于最小抖動門限,則判斷當前抖動緩沖區(qū)容量是否大于最小容量門限,如果是,則減小抖動緩沖區(qū)容量;否則,保持當前抖動緩沖區(qū)容量不變;如果當前語音分組數(shù)據(jù)的抖動值大于或等于最小抖動門限且小于或等于最大抖動門限,保持當前抖動緩沖區(qū)的容量不變。
      16.根據(jù)權(quán)利要求15所述的實現(xiàn)語音業(yè)務(wù)的方法,其特征在于,所述增大抖動緩沖區(qū)容量的方法為在RAN上設(shè)置容量步長值;增大的抖動緩沖區(qū)容量為當前抖動緩沖區(qū)容量與容量步長值之和,所述減小抖動緩沖區(qū)容量的方法為在RAN上設(shè)置容量步長值;減小的抖動緩沖區(qū)容量為當前抖動緩沖區(qū)容量與容量步長值之差。
      17.根據(jù)權(quán)利要求15所述的實現(xiàn)語音業(yè)務(wù)的方法,其特征在于,所述增大抖動緩沖區(qū)容量的方法為在RAN上設(shè)置容量百分比;增大的抖動緩沖區(qū)容量為當前抖動緩沖區(qū)容量加上該容量與容量百分比的乘積,所述減小抖動緩沖區(qū)容量的方法為在RAN上設(shè)置容量百分比;減小的抖動緩沖區(qū)容量為當前抖動緩沖區(qū)容量減去該容量與容量百分比的乘積。
      18.根據(jù)權(quán)利要求1所述的實現(xiàn)語音業(yè)務(wù)的方法,其特征在于,該方法進一步包括在RAN中分配一定容量的暫時存儲語音幀數(shù)據(jù)的抖動緩沖區(qū),所述接收方RAN將語音分組數(shù)據(jù)轉(zhuǎn)換為語音幀數(shù)據(jù)之后,進一步包括接收方RAN將語音幀數(shù)據(jù)存入抖動緩沖區(qū);接收方RAN從抖動緩沖區(qū)取出語音幀數(shù)據(jù)。
      19.根據(jù)權(quán)利要求1所述的實現(xiàn)語音業(yè)務(wù)的方法,其特征在于,所述分組網(wǎng)絡(luò)是碼分多址網(wǎng)絡(luò)。
      全文摘要
      本發(fā)明公開了一種實現(xiàn)語音業(yè)務(wù)的方法,該方法是在RAN上設(shè)置用于進行語音幀數(shù)據(jù)和語音分組數(shù)據(jù)互相轉(zhuǎn)換的VDP層,發(fā)送方RAN接收到發(fā)送方MS發(fā)來的經(jīng)過編碼的語音幀數(shù)據(jù)后,由自身的VDP層將語音幀數(shù)據(jù)轉(zhuǎn)換為語音分組數(shù)據(jù),并發(fā)送至分組網(wǎng)絡(luò);接收方RAN接收到來自分組網(wǎng)絡(luò)的語音分組數(shù)據(jù)后,由自身的VDP層將語音分組數(shù)據(jù)轉(zhuǎn)換為語音幀數(shù)據(jù),并將語音幀數(shù)據(jù)發(fā)送至接收方MS,接收方MS對語音幀數(shù)據(jù)解碼后播放。應(yīng)用本發(fā)明的方法后,利用RAN進行語音幀數(shù)據(jù)和語音分組數(shù)據(jù)之間的轉(zhuǎn)換,而無需在系統(tǒng)中設(shè)置專門的語音幀和語音分組之間轉(zhuǎn)換的分組網(wǎng)關(guān)設(shè)備,或在終端上增加語音幀和語音分組之間轉(zhuǎn)換功能,從而降低了系統(tǒng)的成本,并簡化了系統(tǒng)的結(jié)構(gòu)。
      文檔編號H04L12/56GK1747465SQ20041007374
      公開日2006年3月15日 申請日期2004年9月9日 優(yōu)先權(quán)日2004年9月9日
      發(fā)明者路謳 申請人:華為技術(shù)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1