摘要:隨著寬帶網絡的發展,基于IP網絡的流媒體機頂盒逐漸在家庭中普及,利用已有的資源提供VOIP服務成為用戶的潛在需求。通過擴展機頂盒的硬件接口,并配合適當的軟件和網絡協議處理,可以基于網絡機頂盒實現VOIP的傳輸和編碼處理。從而實現了基于網絡機頂盒的VOIP終端。
關鍵字:VOIP;網絡機頂盒;嵌入式Linux;SIP協議;H.323
中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2010)03-563-02
Achieve VOIP Terminal Based on the Network STB
YU Wen-hua
(Henan Star Hi-Tech Co., Ltd., Zhengzhou 450001, China)
Abstract: With the development of broadband networks, IP-based streaming media set-top boxes increasingly popular in the family, using existing resources to provide VOIP services to a potential demand of users. By extending the set-top box hardware interface, and in line with the appropriate software and network protocol processing, you can achieve the VOIP network-based set-top box transmission and encrypted. In order to achieve the network-based set-top box VOIP terminal.
Key words: VOIP; IPSTB; embedded linux; SIP protocol; H.323
VoIP是Voice Over Intemet Protocol的縮寫,是建立在IP技術上的分組化、數字化傳輸技術,其基本原理是:通過語音壓縮算法對語音數據進行壓縮編碼處理,然后把這些語音數據按IP等相關協議進行打包,經過IP網絡把數據包傳輸到接收地,再把這些語音數據包經過終端解碼解壓處理后,恢復成原來的語音信號,從而達到由IP網絡傳送語音的目的。
VOIP體系結構中,組網協議及其標準化工作是其關鍵。目前構建VOIP體系結構的標準主要有兩種:H.323和SIP協議。H.323沿用傳統電話信令模式,最大優勢在于比較成熟。SIP 協議借鑒了互聯網標準和協議的設計思想,結構比較簡單,但在大型組網和計費方面還不很成熟,但在新型智能電話終端中常常應用。
1 通用Voip終端實現方式
以機頂盒作為終端實現Voip的功能,機頂盒相當于Voip體系中IP電話終端的角色。一般的IP電話終端機組成如圖1所示。
主控模塊負責對整個系統進行核心控制,完成系統的網絡協議、信令交互、呼叫處理等通信功能,是整個系統的呼叫控制核心;
語音處理模塊一般由數字信號處理器DSP構成,是整個系統的語音信號處理核心,完成語音信號的編解碼、壓縮等功能;
語音采樣和播放模塊負責系統語音信號的采樣轉換和最后的語音播放,由A/D編解碼器、模擬電路和一個串口組成,同時還包括話筒、放大電路、揚聲器驅動電路。
2 機頂盒作為Voip實現方式
IPSTB以網絡音視頻流媒體作為其主要應用而設計,其中具備大部分的功能模塊具備IP電話終端的技術和設計要求,在主處理器的能力,對音視頻信號的解碼能力上都高于普通IP電話終端。
但和專業的IP電話相比,機頂盒在輸入輸出接口(如鍵盤和用戶顯示接口),聲音輸入輸出方面沒有針對IP電話的專門用途進行設計和規劃,由此造成機頂盒實現Voip功能一般有多種方式,業界主流的有三種:
STB通過USB接口外接USB話機,USB話機完成電話按鍵的輸入、聲音的采集和播放,機頂盒內實現USB話機驅動和其它協議,控制軟件,從而實現機頂盒VOIP功能。
VOIP的輸入輸出主要通過機頂盒的RJ11接口,機頂盒設計時已經增加了RJ11電話機接口。電話機信號經過語音接口單元,送入語音處理單元完成語音編碼壓縮與解壓縮,以及一些語音協議處理,如SIP、H.323等協議,再經過主控制器處理后傳送給接收端。
VOIP的輸入輸出接口通過機頂盒的音頻輸出和MIC輸入接口完成。與第二種方式相比,去掉語音接口單元,用帶有音頻接口的CODEC代替,按鍵的輸入由機頂盒通過軟件界面展現(TV上展現界面)。
對比以上方式,第一種方式對機頂盒的硬件和處理單元沒有特殊要求,在不修改機頂盒硬件和設計的前提下,是一種較為簡單快速的實現方式。
3 硬件及軟件設計
圖2為STB USB話機硬件組成;圖3為STB USB話機軟件模塊組成。
其中:
SIP協議棧:支持RFC3261、RFC3311、RFC2327,實現SIP消息的構造、傳輸,解碼,完成網絡上的SIP呼叫信令。
RTP/RTCP協議:支持RFC1889、RFC3551,完成音頻媒體數據打包、傳輸、消除亂序、抖動緩沖、解包處理。
語音編解碼:支持ITU-TG.711編碼方式,實現音頻數據的PCMA/PCMU編碼解碼,也可以支持其他編碼格式,比如G.723等。
USB話機的驅動中,需要支持USB HID及Audio驅動協議,同時,可能需要通過自定義的數據協議進行通信(比如完成響鈴等動作,或模擬AT指令)。
當前的IPSTB開發環境,一般都采用基于2.4/2.6的嵌入式Linux作為主要系統,Linux本身對TCP/IP網絡都具備良好的支持,在基于Linux上擁有大量的優秀開源軟件協議棧支持上述描述的RTP,SIP,H.323協議族等主流協議。
4 結論
由機頂盒通過有限的硬件擴展和軟件程序的編寫,可以經濟便利地實現VOIP話機的基本功能,經過初步的驗證,證明該方法簡便可行,可以作為增值業務為用戶提供更好的用戶體驗。
參考文獻:
[1] 張登銀,孫精科.VOIP技術分析與系統設計[M].北京:人民郵電出版社,2005.
[2] Karm Yaghmour.構建嵌入式Linux系統[M].北京:中國電力出版社,2004.
[3] 盧官明,宗昉.IPTV技術及應用[M].北京:人民郵電出版社,2007.