發(fā)布日期:2022-07-15 點擊率:45
自 VoIP 技術面世以來,業(yè)界對現(xiàn)存的低比特率編解碼器 (codec) 標準的關注一直不斷。影響 VoIP 設備制造和應用開發(fā)商的主要問題包括涉及眾多專利持有者的復雜知識產(chǎn)權 (IPR) 管理、昂貴的使用許可模式,以及實際 IP 網(wǎng)絡的低劣質量。在 2000 年,Global IP Sound (GIPS) 公司決定開發(fā)一種能夠滿足 VoIP 產(chǎn)業(yè)需求的 codec,目標是利用 GIPS 內部的專業(yè)能力開發(fā)一款免授權費 (royalty-free)、專為數(shù)據(jù)包通信而設計,而且在理想無錯情況和丟包情況下都能提供高音質的 codec,并把它引入不同的標準化機構以符合互操作性的要求。這就是 iLBC codec 誕生的緣起。
歷史
目前大多數(shù)的語音 codec 都是基于代碼激勵線性預測 (Code Excited Linear Prediction, CELP) 編碼模型的,例如 ITU 和 .1、GSM-EFR 和 3GPP-AMR。CELP 一直都被視為在交換網(wǎng)絡中以低比特率電路獲得高質量的一種非常成功的方法。這種編碼方法具有高效性,主要是由于它利用了連續(xù)語音片斷之間的互相依賴性,因此 CELP codec 的性能主要取決于前面編碼的歷史。CELP 編碼器是基于存儲器的,故丟包或延遲所造成的誤差會擴散開來,結果是單個丟包會影響到隨后多個數(shù)據(jù)包的質量,這顯然是數(shù)據(jù)包通信的一大缺陷。
iLBC 編解碼器
iLBC 是為專為提供穩(wěn)健的 IP 語音通信而開發(fā)的語音 codec,以窄帶語音為設計基礎,具有 8 kHz 的采樣率。iLBC codec 支持兩種基本的幀長度:13.3 kbps 比特率下編碼幀長度為 30 ms;而 15.2 kbps比特率下編碼幀長度則為 20 ms。
采用 iLBC 算法可以獲得一個具有丟包響應控制的語音編碼系統(tǒng)。iLBC 對每一個數(shù)據(jù)包的處理都能夠獨立于其它數(shù)據(jù)包來進行,是數(shù)據(jù)包通信的理想選擇。即使 IP 丟包和/或延遲現(xiàn)象的惡化,這種 codec 的語音質量下降情況也不會太差。這與基于 CEIP 模型的一般 codec 的行為不同,這類 codec 最先是為交換電路網(wǎng)絡或無線網(wǎng)絡而設計的,是設計來恢復位錯誤而非丟包的。
丟包現(xiàn)象發(fā)生時,語音 codec 的一項相關基準是從單個丟包情況下恢復過來所需的幀/包數(shù)量。在 iLBC 的情況中,數(shù)量是零。在丟包之后的第一個數(shù)據(jù)包總仍能按原本安排的被精確解碼。
iLBC 是一種窄帶語音 codec,使用了整個 4kHz 頻帶,而大多數(shù)標準低比特率 codec 只利用從 300 Hz 到 3400 Hz 的頻帶。這一點對音質的影響是相當明顯的。此外,iLBC 語音編碼的頻譜特性精確模擬了原始信號的特性,其語音比標準低比特率 codec 的更自然清晰。
總而言之,iLBC 算法為數(shù)據(jù)包網(wǎng)絡實現(xiàn)了尖端的固定比特率編碼,在質量與比特率之間取得了非常出色的平衡。
標準化
2004 年 4 月,在針對多媒體終端適配器 (multiple terminal adapter, MTA) 和媒體網(wǎng)關發(fā)布的 CableLabs PacketCableTM 1.1 音頻/視頻 codec 規(guī)范中,iLBC 被規(guī)定為一種強制式 codec。Comcast 公司新媒體開發(fā)高級副總裁兼 CableLabs 的 PacketCable 業(yè)務部門主席 Steve Craddock 表示:“由于 GIPS iLBC 編碼是專門為數(shù)據(jù)包網(wǎng)絡而設計的,所以我們深信該種專業(yè)水平的規(guī)范,能夠為有線運營商提供所需的高性能和音質,讓其 VoIP 解決方案在客戶中贏得優(yōu)勢。”
iLBC 在 2002 年 3 月獲互聯(lián)網(wǎng)工程工作小組 (Internet Engineering Task Force, IETF) 認可,成為第一個標準化的語音/音頻 codec。現(xiàn)在,iLBC codec 處于 IEIF 標準化過程的最后一個階段,是 IETF 視聽傳輸工作小組 (Audio Visual Transport Work Group) 的一部分。
Codec 性能
GIPS 公司和一些獨立實驗室對 codec 的若干性能進行了評測。2002 年,Dynastat 公司對 iLBC 實施了正式的聽力測試。2003 年,AT&T 的音質評估實驗室 (Voice Quality Assessment Lab, VQA) 也對 iLBC codec 進行了廣泛的測試。
下圖所示為 Dynastat 的評估結果,其根據(jù)現(xiàn)有編碼標準 A 和 .1 對 iLBC 的 30ms 模式進行了標準測試。結果明顯表明,用于實際環(huán)境時,iLBC 的性能卓越,即使在惡劣的網(wǎng)絡條件下,其固有的數(shù)據(jù)包網(wǎng)絡屬性也能提供很高的質量。
這些測試還顯示了 iLBC 在丟包條件下的性能不僅顯著優(yōu)于目前的標準 codec (.1、、、GSM 等),而且還等于甚至優(yōu)于理想信道 (無丟包) 條件下的標準 codec。
AT&T 的測試結果也顯示,iLBC 中,20 ms 和 30 ms 模式之間沒有顯著的性能差異;而在丟包情況下,20 ms 模式甚至表現(xiàn)出更好的丟包穩(wěn)健性。AT&T VQA 實驗室也表示,iLBC 在存在背景噪聲時的性能十分優(yōu)秀,可媲美信道無丟包的 .E。
實現(xiàn)方案
目前,好幾家 VoIP 設備及應用生產(chǎn)商都在自己的產(chǎn)品中集成了 iLBC。下面我們列出了在自家商用產(chǎn)品中選用了 iLBC 的部分公司:
iLBC 使用許可
設備和應用生產(chǎn)商一直在尋找高成本效益的方法來滿足新的要求,并為市場提供新的功能。在決定是由內部自行開發(fā) iLBC、還是從其它供應商那里獲得 iLBC 編碼使用授權時,需要對好幾個方面進行全面考慮。
從其它供應商那里獲得 iLBC 編碼使用授權能夠大量節(jié)省開發(fā)成本;提高質量;加快上市速度;降低風險,并增強靈活性。不過,選擇供應商時應該非常謹慎,力求把風險或額外成本降至最低。
選擇供應商的準則包括:
計算自行開發(fā) iLBC 設計的成本
為了計算一位經(jīng)驗豐富的設計人員把浮點代碼轉換為定點 ANSI C 代碼、或轉換為 DSP 平臺所花費的設計時間,我們作出了以下的假設:
上表只考慮到設計工作量。要對總體成本進行全面的評估,我們還必須考慮以下各種因素:
此外,還不應該低估上市時間縮短的價值。相比內部自行開發(fā)的代碼,采用授權優(yōu)化 iLBC 編碼,最終產(chǎn)品的上市時間能夠提早好幾個月。
作者:Yann Lejas
亞太區(qū)客戶工程總監(jiān)
Global IP Sound (GIPS) 公司