實現VoIP高音質 編解碼器iLBC廣獲青睞

2007-02-16
自VoIP問世以來,現存的低位元率編解碼器標準備受矚目。影響網路電話設備製造和應用開發商的主要問題,包括涉及眾多專利持有者的複雜知識產權管理、昂貴的使用許可模式,以及實際IP網路的低劣品質,讓網路電話的高音質始終難以實現。不過,隨著業者的投入,以及iLBC編解碼器出現,一切也隨之改觀。
自VoIP問世以來,現存的低位元率編解碼器標準備受矚目。影響網路電話設備製造和應用開發商的主要問題,包括涉及眾多專利持有者的複雜知識產權管理、昂貴的使用許可模式,以及實際IP網路的低劣品質,讓網路電話的高音質始終難以實現。不過,隨著業者的投入,以及iLBC編解碼器出現,一切也隨之改觀。  

在2000年,專為網路即時溝通提供嵌入式音效處理解決方案的業者Global IP Sound(GIPS),決定開發一種能滿足網路電話產業需求的編解碼器(Codec)。其目標是開發一款免授權費(Royalty-free)、專為資料封包通訊而設計,且在理想無錯情況和丟包情況下,都能提供高音質的編解碼器,並導入不同的標準化機構,以符合互操作性的要求。此為iLBC編解碼器誕生的緣起。  

CELP連續語音片斷成缺陷  

目前大多數的語音編解碼器都是基於代碼激勵線性預測(Code Excited Linear Prediction, CELP)編碼模型,如ITU G.729和G.723.1、GSM-EFR和3GPP-AMR等。代碼激勵線性預測一直都被視為在交換網路中,以低位元率電路獲得高品質的一種成功方法。這種編碼方法之所以具有高效性,主要是由於它利用了連續語音片斷之間的互相依賴性。  

然而,正因為代碼激勵線性預測編解碼器的性能,主要取決於前面的編碼歷史,因此基於記憶體的代碼激勵線性預測編碼器,丟包或延遲所造成的誤差會擴散,進而造成單個丟包影響到隨後多個資料封包的品質,成為資料封包通訊的一大缺陷。  

iLBC是為專為提供穩健的IP語音通訊而開發的語音編解碼器,以窄頻語音為設計基礎,具有8kHz的取樣率。iLBC編解碼器支持兩種基本的幀長度,在13.3kbit/s位元率下編碼幀長度的30毫秒,而15.2kbit/s位元率下編碼幀長度則為20毫秒。  

iLBC獨立資料封包具高穩定性  

採用iLBC演算法可以獲得一個具有丟包回應控制的語音編碼系統。iLBC對每一個資料封包的處理都能夠獨立於其他資料封包來進行,是資料封包通訊的理想選擇。即使IP丟包和/或延遲現象的惡化,這種編解碼器的語音品質下降情況也不會太差。丟包現象發生時,語音編解碼器的一項相關基準是從單個丟包情況下恢復過來所需的幀/包數量。而在iLBC的情況中,數量是零。在丟包之後的第一個資料封包總是能按原本安排的被精確解碼。  

iLBC與基於代碼激勵線性預測模型的一般編解碼器的行為不同點在於,iLBC編解碼器最先是為交換電路網路或無線網路而設計,原先以恢復位元錯誤設計為主,而非應付丟包。  

iLBC是一種窄帶語音編解碼器,使用了整個4kHz頻帶,而大多數標準低位元率編解碼器只利用從300~3,400Hz的頻帶。這一點對音質的影響相當明顯。此外,iLBC語音編碼的頻譜特性精確模擬原始訊號的特性,其語音比標準低位元率編解碼器的更自然清晰。  

總而言之,iLBC演算法為資料封包網路實現尖端的固定位元率編碼,並在品質與位元率之間取得平衡。  

iLBC步入高標準化  

iLBC在2002年3月時獲得網際網路工程工作組(Internet Engineering Task Force, IETF)認可,成為第一個標準化的語音/音頻編解碼器。現在,iLBC編解碼器已踏入網際網路工程工作組標準化過程的最後階段,是網際網路工程工作組視聽傳輸工作小組(Audio Visual Transport Work Group)的一部分。  

近年GIPS和一些獨立實驗室都對編解碼器的若干性能進行評測。如2002年Dynastat對iLBC實施正式的聽力測試。2003年,AT& T的音質評估實驗室(Voice Quality Assessment Lab, VQA)也對iLBC編解碼器進行廣泛測試。  

2004年4月,在針對多媒體終端配接器(Multiple Terminal Adapter, MTA)和媒體閘道發布的CableLabs PacketCableTM 1.1音頻/視頻編解碼器規範中,iLBC被規定為一種強制式編解碼器。Comcast新媒體開發高級副總裁兼線纜實驗室(CableLabs)的纜線封包(PacketCable)業務部門主席Steve Craddock表示,由於GIPS iLBC編碼是專門為資料封包網路而設計的,所以能為有線營運商提供所需的高性能和音質,讓網路電話解決方案在客戶中贏得優勢。  

圖1所示為Dynastat的評估結果,Dynastat根據現有編碼標準G.729A和G.723.1對iLBC的30毫秒模式進行標準測試。結果顯示,用於實際環境時,iLBC即使在惡劣的網路條件下,其固有的資料封包網路屬性也能提供極高音質。  

這些測試還顯示了iLBC在丟包條件下的性能不僅明顯優於目前的G.723.1、G.728、G.729、GSM等標準編解碼器,更甚至優於理想通道無丟包條件下的標準編解碼器(表1)。AT&T的測試結果也顯示,在iLBC中,20毫秒和30毫秒模式之間沒有顯著的性能差異;而在丟包情況下, 20毫秒模式更表現出較佳的丟包穩健性。AT&T的VQA實驗室表示,iLBC在存在背景雜訊時的性能十分優秀,可媲美通道無丟包的 G.729.E。  

iLBC接受度全面提升  

目前已有數家網路電話設備及應用生產商在自己的產品中整合iLBC。表2為在自家商用產品中選用iLBC的部分公司。  

設備和應用生產商一直在尋找高成本效益的方法來滿足新的要求,並為市場提供新的功能。在決定是由內部自行開發iLBC、還是從其他供應商處獲得iLBC編碼使用授權時,廠商必須進行全面考慮。  

從其他供應商獲得iLBC編碼使用授權,能夠大量節省開發成本、提高品質、加快產品上市速度、降低風險,並增強處理靈活性。不過,選擇供應商時必須非常謹慎,力求把風險或額外成本降至最低。  

選擇供應商的準則包括:  

‧具備專業能力,以應付把iLBC移植到定點數位訊號處理器(DSP)環境時一些極敏感的推行和測試問題。  

‧對於所選定的平台,在MIPS性能、品質、代碼大小,以及記憶體等方面能滿足相關的技術要求。  

‧從浮點(FLP)到定點(FIP)的轉換必須在效率、記憶體利用率和最重要的音質之間取得平衡。  

‧不良的iLBC定點代碼推行將有礙DSP的移植。  

‧提供語音編解碼器的定點ANSI C轉換紀錄,提供DSP優化和訊號處理技術。  

‧所選定的平台,必須在iLBC獲授權者中擁有良好的表現紀錄。  

‧必須選擇一家經過驗證的iLBC供應商,以確保獲得及時的成果和高品質的性能。  

此外,設備和應用生產商也應計算自行開發iLBC設計的成本(表3)。  

為了算出一位經驗豐富的設計人員把浮點代碼轉換為定點ANSI C代碼,或轉換為DSP平台所花費的設計時間,可作以下假設:  

‧由一位在編解碼器、定點及DSP方面均具備豐富知識的高級工程師來執行設計任務  

‧標準優化︰大部分代碼採用C程式,關鍵部分採用組合語言  

‧DSP轉換基於高質iLBC定點代碼進行  

表3只考慮到設計工作量,要對整體成本進行全面的評估,還必須考慮以下各種因素:  

‧內部培訓  

‧熟習iLBC編解碼器所需的時間  

‧專案風險:若是從外部供應商處獲得iLBC授權,其複雜性、性能和品質均不能預先驗證  

‧一般的技術及商業風險  

‧文檔處理  

‧測試  

‧支援成本與生命周期成本  

‧開銷:與員工、工具等相關的固定成本  

‧無法抽調工程資源以開發其他產品或功能  

此外,廠商還不應低估產品面市時間縮短所帶來的優勢。相比內部自行開發的代碼,採用授權優化iLBC編碼,能夠提早最終產品的問市時間數個月。  

(本文作者為GIPS亞太區客戶工程總監)  

(詳細圖表請見新通訊元件雜誌72期2月號)  

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!