《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 業(yè)界動態(tài) > ILBC編碼算法及其在VOIP中的應用

ILBC編碼算法及其在VOIP中的應用

2008-05-08
作者:郭廷廷, 李 敬

  摘 要: VOIP正在成為熱門的應用領域,語音質量" title="語音質量">語音質量的提高是其難點之一。ILBC算法是一種基于CELP(Code Excited Linear Predictive Coding)的新的低比特率語音編碼算法,其優(yōu)異的語音質量、突出的長時預測方法[1]及丟包掩蔽[2](PLC)技術,很好地解決了互聯網上傳輸語音的問題。詳細探討了ILBC的實現原理,對其關鍵技術進行了較深入的分析,給出了實驗結論,并對其應用作了一些展望。
  關鍵詞: ILBC(Internet Low Bit Vate Codec) VOIP(Voice Over IP) PLC 丟包掩蔽 動態(tài)碼本


  隨著互聯網的迅速發(fā)展,人們對通過互聯網進行實時語音、視頻傳輸的要求越發(fā)強烈,VOIP正是在這一應用背景下誕生的一門新技術,它把數字語音編碼技術與分組交換網相結合,提供實時語音及其相關服務,該技術要求占用盡可能小的網絡帶寬并擁有良好的語音質量。由于當前網絡環(huán)境" title="網絡環(huán)境">網絡環(huán)境的特點,丟包現象不可避免,以往的低比特率編碼標準雖然可以解決帶寬問題,但丟包時語音質量不能保證。因而,需要新的語音編碼算法來滿足這一要求。
1 ILBC簡介
  ILBC是由Global IP Sound公司提出的一種專為包交換網絡通信設計的編解碼" title="編解碼">編解碼,優(yōu)于目前流行的G.729A、G.723.1,對丟包進行了特殊處理,既使在丟包率相當高的網絡環(huán)境下,仍可獲得非常清晰的語音效果。
  ILBC是一種適用于窄帶網絡的編碼算法。根據網絡帶寬的不同,ILBC提供兩種編碼的格式,如表1。該算法使用了長時的預測技術和幀獨立編碼方法,使其非常適合在存在丟包的網絡環(huán)境中傳播。


2 ILBC算法的原理
2.1 ILBC編碼

  ILBC本質上是一種基于幀的線性預測編碼方法,是對CELP(碼激勵線性預測編碼)的一種發(fā)展,其獨有的動態(tài)碼本更新技術、語音加強算法和丟包掩蔽技術使其在VOIP中應用時有更好的性能。對于每一個含有160/240(20ms/30ms) 樣點的輸入幀,ILBC算法將進行以下主要操作:
  (1) 把該幀分為4/6 個子幀,每子幀40個樣點。對30ms的幀,進行兩組10階的LPC分析,得到相應的LPC系數;對于20ms的幀,進行一次10階LPC分析。
  (2)每次分析得到的LPC系數將轉化為LSF(線譜對)參數,并對LSF系數進行量化,內插以得到各個子幀的LSF系數;隨后,由各子幀的LSF系數得到各子幀對應的分析器,對各個子幀進行線性預測,計算各子幀的殘差。
  (3)從殘差中找到兩個能量最大的連續(xù)子幀,然后把能量值較小的首23/22個樣點(30ms/20ms)或尾23/22樣點從連續(xù)子幀中去除,剩余的57/58個被選定為本次處理的初始狀態(tài)。對于濁音語音,這樣的選取方式將至少包含一個基音脈沖。
  (4)對初始狀態(tài)進行基于DPCM的標量量化,量化結果將作為編碼輸出的一部分。與此同時,初始狀態(tài)被存入碼本存儲區(qū),以構成動態(tài)碼本的初始值,用于對本幀的剩余樣點進行矢量量化" title="矢量量化">矢量量化。
  (5)對于剩余的殘差,矢量量化將按下面順序進行:(a)包含有初始狀態(tài)的兩個連續(xù)子幀中剩余的23/22個樣點;(b) 時間軸上處于初始狀態(tài)之后的各個子幀; (c)時間軸上在初始狀態(tài)之前的各個子幀。對于此矢量量化,每次搜索碼本的范圍是動態(tài)碼本,其中存儲了已經被解碼的對象,并隨著最新的解碼結果,該動態(tài)碼本被更新。
  (6)對編碼結果進行封包處理。
  ILBC的編碼的框圖如圖1所示。


2.2 ILBC解碼
  ILBC是一種運用了分析合成方法的編解碼算法,解碼部分的運算量相對要小一些,使其在功能不強的客戶端的實時解碼成為可能。
  解碼的主要過程如下:
  (1)解包,參數提取。
  (2)從得到的LSF參數進行內插,并轉化各個子幀的LPC系數,以便進行合成操作。
  (3) 對初始狀態(tài)進行解碼,解碼結果一方面作為激勵信號" title="激勵信號">激勵信號暫存,另一方面存入碼本存儲區(qū),以構成動態(tài)碼本的初始值。
  (4) 對剩余的子幀部分,按照與編碼相同的次序進行殘差解碼,并用解碼結果更新動態(tài)碼本,重復(4)直到所有子幀完成譯碼。
  (5) 對于解碼得到的殘差信號,進行語音增強的操作。該語音增強采用了條件限制的增強方法。
  (6) 進行語音合成,形成解碼后的語音。
  (7) 高通濾波,以消除合成后的低頻語音。
  ILBC解碼的流程圖如圖2所示。


2.3 ILBC的比特流定義
  對于20 ms的幀,共使用了304個比特來表示編碼后的語音信號,被封裝在38個字節(jié)中;對于30ms的幀,共使用了400個比特,封裝在50個字節(jié)中。在封裝的過程中,按照數據對傳輸誤差的敏感程度不同,這些比特被分成三類,第一類代表了最敏感的數據[3]。表2 列出了ILBC編碼的比特流分配情況。


3 ILBC的關鍵技術
  與以往的低比特率語音編解碼算法相比,ILBC除了采用經典的線性預測分析法、LPC系數到LSF系數相互轉換、分裂矢量量化LSF參數和多級形狀-增益量化[4]殘差外,主要有下面特殊的方法。
  (1) 基于初始狀態(tài)的動態(tài)碼本的選取和更新。
  ILBC利用了基于初始狀態(tài)的動態(tài)碼本的更新方法,把最新的解碼結果加入碼本,以取代較老的碼矢。通過這種算法,可以較為方便地生成碼本,同時也提供了很好的碼本預測能力。
  (2) 幀間獨立的長時預測方法,在此基礎上的PLC(丟包掩蔽)技術。
  經典的CELP方法是利用以往的激勵信號來對自適應碼本進行更新的,這樣的方法在分組交換網中有下面問題:
  ①如果過去的信號丟失或在傳輸過程中被污染,解碼用的碼本就會與編碼時不同,將導致解碼語音質量變差;
  ②在語音建立階段,解碼端的自適應碼本并不能很好地描述基音周期,導致解碼語音建立時間加長。
  ILBC采用了基于初始狀態(tài)的解碼方法,初始碼本是從初始狀態(tài)中得到的,通常都會包含至少一個基音脈沖,因而建立時間較快;同時,從初始狀態(tài)出發(fā),既有時間上前向的預測,也有向后的預測,因而體現了長時預測的概念,配合PLC技術,即使出現丟幀,解碼語音質量也不會有明顯下降。
  PLC技術的基本原則是:解碼端若收到正確的幀,則計算出的LPC系數和激勵碼本被存儲; 若丟幀,則使用上一個正確幀中的激勵信號,利用基音同步重復的方法得到本幀解碼信號。
  (3) 利用有條件限制的優(yōu)化算法[3]加強殘差語音。
  該算法的主要思想是對要加強的殘差語音塊,尋找其前3個塊和后3個塊,用這6個塊的線性組合逼近當前待加強的塊。計算待加強塊和逼近塊的均方誤差。若誤差足夠小,就把逼近塊作為加強塊;否則,加強塊為待加強塊和逼近塊的線性組合。


4 實驗結果與性能評測
  圖3是Dynstat公司在具有丟包情況的網絡環(huán)境下對ILBC、G729.A、G723.1幾種算法進行測試后的MOS(平均意見得分)對比圖,可以看出ILBC編碼的語音質量整體高于其余兩種編碼,尤其是當丟包率較高時,MOS得分遠高于另外兩種編碼。
  為了對ILBC在丟幀時仍有良好語音質量做出解釋,進行了以下實驗:
  (1)在短時間內對有丟包時的解碼片斷做分析,如圖4所示。實驗得出,僅有一幀丟失時,語音的損壞基本上不會被聽者察覺,當出現連續(xù)兩幀以上丟失時,才會被察覺。在文獻[2]中有ILBC與G.729.A的丟幀對比。


  (2)初始狀態(tài)編碼是ILBC中的關鍵步驟,應用了標量編碼的方式。為使編碼更有效,實現時,先用一個全通濾波器將殘差的動態(tài)范圍壓縮,解碼時再通過逆濾波恢復。圖5是對某一幀語音的殘差分析的結果,經過多幀測試發(fā)現,該技術使殘差的動態(tài)范圍減小了約1/3。
  由于實時傳輸的需要,算法的時間復雜度成為實際系統實現時重要的考慮因素,在PC機(Celeron 2.7G, 512M內存)上對用ANSI-C實現的ILBC浮點算法[1]進行運算量統計,可以得到表3的結果,可以得到①解碼的復雜度較小,是一種非對稱的編碼方案;②編碼部分碼本搜索占用了最長的時間,成為算法優(yōu)化時要考慮的關鍵部分。

?


  ILBC算法優(yōu)異的語音質量及良好的丟包掩蔽技術,使其在VOIP中的應用前景非常廣闊。2002年2月,ILBC是IETF 接受的關于語音/音頻編解碼的第一個標準。2004年4月在關于多媒體終端適配器和媒體網關分布的CableLabsPacketCable1.1 Audio/Video編解碼規(guī)范中,被指定為強制的編解碼算法。軟件與系統方面, Skype、Hostip、Pandora Networks和Pingtel Instant都對該算法進行支持,DSP及專用集成電路方面,TI 已經推出相應的定點DSP實現方案,AudioCodes已有專用芯片支持。
  可以預計,不久的將來, ILBC將在VOIP中得到更加廣泛的應用。
參考文獻
1 Andersen S V. Internet low bit rate codec. IETF internet-draft, 2002
2 Andersen S V. ILBC- A linear predictive coder with robustness to packetlosses. Global IP Sound
3 Klein WB. Enhancement of coded speech by constrained optimization. In: proc IEEE Speech Coding Workshop, 2002,submitted for publication
4 楊行峻, 唐 昆. 語音信號數字處理. 北京:電子工業(yè)出版社,1995

本站內容除特別聲明的原創(chuàng)文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創(chuàng)文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
91久久久久久久久久久久久| 亚洲一区二区三区免费视频| 夜夜嗨av一区二区三区| 激情综合五月天| 国产一区二区高清| 国产精品日本| 欧美午夜片在线观看| 欧美日韩伦理在线| 欧美日韩久久久久久| 欧美精品国产一区| 欧美精品系列| 欧美日韩高清在线一区| 欧美激情欧美狂野欧美精品| 欧美国产综合视频| 欧美久久成人| 欧美日韩精品免费观看视一区二区 | 久久国产精品第一页| 午夜精品亚洲一区二区三区嫩草| 亚洲欧美激情诱惑| 欧美一进一出视频| 欧美一区二区三区在线观看| 欧美一区二区三区在线免费观看| 性色av一区二区三区红粉影视| 亚洲欧美日本另类| 欧美一区二区三区的| 亚洲国产精品久久久久| 亚洲六月丁香色婷婷综合久久| 一本久道久久久| 亚洲欧美日韩综合aⅴ视频| 久久xxxx| 免费精品视频| 欧美日韩一区二区三区免费看| 国产精品久久久久久久久久直播| 国产日韩高清一区二区三区在线| 国内精品久久久久影院薰衣草| 一区二区在线视频播放| 最新成人av在线| 一区二区三欧美| 午夜国产精品视频| 亚洲二区三区四区| 一区二区毛片| 欧美中文字幕精品| 女人色偷偷aa久久天堂| 欧美日韩喷水| 国产欧美日本| 亚洲国产三级| 亚洲欧美另类国产| 亚洲国产精品成人| 亚洲线精品一区二区三区八戒| 欧美在线观看一区二区三区| 蜜臀av性久久久久蜜臀aⅴ| 欧美视频精品一区| 国内成人精品2018免费看| 亚洲精品国产视频| 午夜精品久久久久| 亚洲美女中文字幕| 羞羞漫画18久久大片| 欧美刺激性大交免费视频| 国产精品久久久久999| 一区二区三区在线观看欧美| 日韩视频在线观看| 久久高清国产| 亚洲天堂网在线观看| 久久久久国产精品午夜一区| 欧美日本网站| 国内精品模特av私拍在线观看| 亚洲精品自在久久| 久久成人18免费网站| 亚洲婷婷免费| 美国十次了思思久久精品导航| 国产精品国产三级国产普通话99 | 午夜精品久久久久久久白皮肤| 久久久久久久一区二区三区| 欧美伦理91| 激情国产一区| 亚洲天堂黄色| 日韩亚洲精品在线| 久久久久国产精品厨房| 国产精品海角社区在线观看| 在线日韩电影| 欧美亚洲视频在线看网址| 一区二区三区偷拍| 乱码第一页成人| 国产精品视屏| 99精品欧美一区二区蜜桃免费| 亚洲成人在线视频播放 | 欧美影片第一页| 欧美劲爆第一页| 国色天香一区二区| 亚洲一区二区三区精品在线| 日韩午夜在线| 美国成人毛片| 国精品一区二区三区| 亚洲一区二区三区高清不卡| 一本久久a久久免费精品不卡| 久久综合色影院| 国产亚洲毛片在线| 亚洲欧美另类在线观看| 亚洲一区二区三区国产| 欧美寡妇偷汉性猛交| 激情综合色综合久久| 欧美一区午夜精品| 香蕉久久一区二区不卡无毒影院 | 欧美综合77777色婷婷| 午夜精品久久久久久久久久久| 欧美精品在线视频| 亚洲国产成人精品女人久久久| 亚洲第一综合天堂另类专| 久久精品2019中文字幕| 国产精品视频999| 99精品欧美| 亚洲一区二区动漫| 欧美激情久久久久| 亚洲精品国产视频| 一本色道**综合亚洲精品蜜桃冫| 欧美国产第一页| 1000部精品久久久久久久久| 久久国产精品一区二区| 久久久久网站| 黄色日韩在线| 亚洲国产婷婷香蕉久久久久久99 | 亚洲一区二区三区四区中文 | 亚洲成人原创| 亚洲国产精品一区二区第一页| 久久免费国产精品| 国内在线观看一区二区三区| 久久成人久久爱| 久久久久综合一区二区三区| 国产一区二区三区免费观看| 欧美影片第一页| 久久午夜色播影院免费高清| 激情一区二区三区| 91久久国产精品91久久性色| 欧美成人精品一区二区| 亚洲欧洲日产国产综合网| 99综合电影在线视频| 欧美日韩在线不卡| 亚洲视频免费在线观看| 欧美一区二视频| 国产一区二区三区丝袜| 亚洲成色精品| 欧美承认网站| 在线视频精品一| 欧美一区二区久久久| 国产一区二区三区四区| 亚洲欧洲日韩在线| 欧美三区在线| 午夜精品视频在线观看| 久久尤物视频| 亚洲人成高清| 亚洲欧美视频在线观看| 国产一区二区三区在线免费观看| 亚洲黄色尤物视频| 欧美成人免费在线| 一区二区国产日产| 久久久久国产成人精品亚洲午夜| 亚洲国产黄色片| 国产精品99久久久久久久久久久久 | 亚洲午夜精品| 久久久亚洲成人| 亚洲精品黄网在线观看| 性一交一乱一区二区洋洋av| 伊人久久大香线| 一级日韩一区在线观看| 国产精品一级| 最近中文字幕日韩精品| 欧美吻胸吃奶大尺度电影| 欧美一级一区| 欧美日韩精品一区| 性做久久久久久| 欧美剧在线免费观看网站| 亚洲一级二级| 欧美高清视频一区二区| 亚洲影院高清在线| 欧美va日韩va| 亚洲一区二区在线免费观看视频| 久久婷婷激情| 在线视频亚洲| 免费人成网站在线观看欧美高清| 亚洲伦伦在线| 久久婷婷亚洲| 一区二区高清在线| 欧美成人一二三| 亚洲欧美中文在线视频| 欧美久久久久久蜜桃| 性久久久久久久久久久久| 欧美国产三级| 欧美一区二区三区久久精品| 欧美日韩高清在线一区| 久久激情中文| 国产精品高潮呻吟视频| 亚洲激情成人网| 国产精品推荐精品| 99精品久久久| 激情五月婷婷综合| 欧美亚洲综合久久| av成人动漫| 欧美激情国产精品| 久久se精品一区精品二区| 欧美日韩亚洲一区二区|