• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 手機與無線通信 > 設計應用 > 基于AMR語音編解碼算法的VoIP系統

    基于AMR語音編解碼算法的VoIP系統

    作者: 時間:2010-07-05 來源:網絡 收藏
    本文提出了一種的新,該可以根據網絡信道質量的好壞來自適應地選擇一種最佳的傳輸速率,從而使得合成后的質量有了更加良好的QoS保障。通過NS-2平臺下的仿真,實驗結果表明:新在網絡延時和數據包丟失率方面均要明顯優于采用G.729的傳統系統。
    1 NS-2和相關技術
    1.1 NS-2網絡模擬器
    NS-2(Network Simulator,version 2)是由加州大學伯克利分校開發的面向對象的、離散事件驅動的網絡模擬器,主要用于解決網絡研究方面的問題,目前NS-2可以用于模擬各種不同的通信網絡。它功能強大,模塊豐富,已經實現的主要模塊有:網絡傳輸協議(如TCP和UDP),業務源流量產生器(如FTP、Telnet、Web、CBR和VBR),路由隊列管理機制(如Droptail、FQ、RED和CBQ),路由(如Dijkstra),無線網絡WLAN、移動IP、衛星通信網絡模塊、多播協議以及一些MAC子層協議等。
    NS-2使用了被稱為分裂對象模型的開發機制,采用C++和OTcl兩種開發語言進行開發,它們之間采用TclCL進行自動連接和映射。NS-2的模擬可分為2個層次,其中第一個層次是OTcl的模擬,主要利用NS-2現有的網絡元素來實現模擬,因此無需對NS-2本身做任何修改,只需要編寫一個完整的OTcl腳本程序即可;另外一個層次是C++和OTcl的模擬,該層次中沒有所需的網絡元素,因此需要對NS-2進行擴展,添加所需要的網絡元素。一般來說,NS-2的模擬需要與NamvNetwork animaterw配合使用。Nam是基于Tcl/Tk的動畫演示工具,以把模擬的過程用可視化的方式呈現出來[2]。
    1.2 自適應技術的介紹
    自適應多速率編碼(AMR)有8種信源編碼模式,2種信道模式(即全速率信道模式和半速率信道模式)以及不同信道模式下所對應的不同信道編碼模式。其中,全速率信道模式下所對應的信道編碼模式為8種,半速率信道模式下所對應的信道編碼模式為6種,每種信道編碼模式都有一種信源編碼模式與之相對應。此外為了降低算法的復雜度,8種信源編碼模式均采用ACELP(Algebraic Code Excited Linear Prediction)模型,不同的只是參量的量化碼本和量化比特數。在移動通信中,當信道模式固定后,通過測量歸一化的載(載波信號)干(干擾信號)比來估計當前信道的質量,度量級別為4個級別,分別為很差、差、好、很好。如果當前信道質量估計為較好或者好,則降低信道編碼速率、提高信源編碼速率,以此來提高重構后的語音質量;如果當前信道質量估計為差或者較差,則提高信道編碼速率、降低信源編碼速率,以此來保障通話質量。所以高模式下的信源編碼(如MR122),雖然可以提供優良的語音可懂度和自然度,但是抗噪能力差;而低模式下的信源編碼(如MR475),由于多數比特被用作信道編碼,因此具有很強的糾錯能力,但是重構后的語音質量不佳[3]。
    2 AMR算法下的VoIP系統
    VoIP傳輸的基本過程可分為4種:PC-PC模型、PC-Phone模型、Phone-PC模型和Phone-Phone模型[4]。本文中仿真的是Phone-Phone模型,具體過程如圖1所示。在該模型中,語音的傳輸過程可以拆分為2個階段。第一個階段,語音數據通過UDP協議打包從源點pc0-T開始發送,通過網關gk0、gk1轉發,將語音數據包轉發到目的地點pc0-R,從而實現節點0~5之間的語音數據通信;第二個階段,語音數據通過UDP協議打包從源點pc1-T開始發送,通過網關gk1和gk0轉發,將語音數據包轉發到目的地點pc1-R,從而實現節點6~1之間的語音數據通信。2個階段連續的傳輸過程構成了VoIP中語音數據的基本傳輸過程。此外,為了更加真實地模擬網絡資源的變化,設置了一個pc到pc的網絡數據量的傳輸過程。該過程為:網絡數據通過TCP協議打包從源點pc2-T開始發送,通過網關gk0和gk1轉發,將網絡數據包轉發到目的地點pc2-R,從而實現節點2~7之間的網絡數據的傳輸。通過設置不同的網絡數據流量可以來模擬當前網絡信道質量的好壞,從而為選擇不同的AMR信源編碼模式做準備。

    本文引用地址:http://www.czjhyjcfj.com/article/157319.htm

    為了檢測網絡擁塞下新VoIP系統的性能,需要對上述語音模型的一些參數進行調整:(1)公共交換網(PSTN)傳輸帶寬的設定。節點0~3之間的鏈路是用來模擬PSTN的,而PSTN中最大的語音傳輸速率(無損語音編碼方案G.711)為64 Kb/s,因此為了體現帶寬資源的寶貴性,設置此鏈路的傳輸帶寬為64 Kb,同理節點1~3之間、節點5~4之間、節點6~4之間的傳輸帶寬也設為64 Kb;(2)Internet網傳輸帶寬的設定。節點3~4之間的鏈路是用來模擬Internet網的,由于Internet網中傳輸數據量往往很大,而分配給每個用戶之間的傳輸帶寬是有限的,因此為了體現網絡帶寬的有限性,設置此鏈路的傳輸帶寬為1 Mb。同理節點2~3之間、節點4~7之間的傳輸帶寬也設為1 Mb;(3)當前網絡信道質量的度量。為了度量當前網絡信道質量,選取衡量VoIP系統性能的參數如時延、抖動、數據包丟失率等來作為衡量當前信道質量的參數。在本實驗中,選取的是在一定時間內的語音數據丟包率,其計算公式為:λ=Sd/SRTT,式中Sd為固定時間內丟失的語音包數目,SRTT為固定時間內發送的語音包數目[4];(4)AMR信源編碼模式的選擇。由于AMR有8種信源編碼模式,且8種信源編碼模式均是基于ACELP模型,各個模式下重構后的語音MOS值相差也不大,但是AMR總的代碼量卻很大,所以綜合衡量起來,可以根據不同的語音數據包丟失率來自適應地選取其中的3種,即:MR122、MR74、MR475[3]。選擇標準為:當λ≤1%時,選取MR122模式;當1%λ≤3%時,選取MR74模式;當λ>3%時,選取MR475模式;初始信源編碼模式為MR122。
    3 實驗結果與分析
    新VoIP系統在NS-2平臺下的運行情況如圖2所示。在該運行模型中,節點2~7之間流量的大小代表了網關節點3~4之間鏈路的狀況。即當節點2~7之間傳送的網絡數據很大時(>1 Mb),則認為節點3~4之間的鏈路發生了擁塞狀況;當節點2~7之間傳送的數據量較小時(1 Mb),則認為不會發生擁塞狀況。節點0~6是語音數據包的發送節點,且具有根據網絡質量來自適應地調整語音發送速率的功能,其中初始發送速率為12.2 Kb/s;數據包的發送用NS-2自帶的Pareto分布流量產生器,這主要是考慮到話音激活檢測技術(VAD)對IP話音的影響[2]。

    此外,為了更加方便和有效地分析實驗數據,需要對上述VoIP模型進行簡化處理,簡化后的VoIP傳輸模型如圖3所示。其中節點2為網關,節點3既是網關也是所有網絡數據的接收節點;節點0為語音數據包的發送節點,節點1為網絡數據量的發送節點。

    圖4為采用不同語音算法的網絡數據的時延圖和丟包率圖。


    上一頁 1 2 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 固原市| 琼结县| 柯坪县| 宣城市| 河西区| 合肥市| 紫金县| 南川市| 青海省| 揭东县| 勐海县| 银川市| 旺苍县| 郧西县| 奉贤区| 松桃| 龙胜| 周宁县| 呼图壁县| 布拖县| 黎城县| 金乡县| 梁平县| 科技| 友谊县| 万安县| 潼关县| 建水县| 广汉市| 博爱县| 杭州市| 满洲里市| 灯塔市| 彭山县| 桐柏县| 班玛县| 鹤岗市| 新乡县| 九龙县| 贡嘎县| 砚山县|