VoWLAN語音終端開發(fā)設計
21ic 2008/05/08
1引言圖1為VoWLAN語音終端的硬件框架圖
建立連接后用戶的模擬話音通過AIC10的AURXFP、AURXM、AURXCP輸入,將模擬信號進行A/D轉換形成數(shù)字信號流后傳至編碼模塊。編碼模塊中的DSP根據(jù)系統(tǒng)要求將語音數(shù)據(jù)壓縮,壓縮后放入DOUT的寄存器中。
在接收語音數(shù)據(jù)時,在TLV320AIC10的幀同步FS為低電平,轉換時鐘信號SCLK的上升沿時,系統(tǒng)處理器將語音數(shù)據(jù)通過DIN送入AIC10進行解壓縮,形成64Kbps的PCM碼流,送入D/A進行數(shù)模轉換,最后由AIC10的OUTP和OUTM輸出模擬語音。
3.VoWLAN的軟件設計
系統(tǒng)軟件是基于SIP協(xié)議棧的基礎上實現(xiàn)的。由于SIP協(xié)議棧采用模塊化設計思想,因此,系統(tǒng)軟件可以直接調用協(xié)議棧各模塊提供的API。軟件應用模塊的消息獲取線程是實時獲取協(xié)議棧處理的結果(以消息或事件的形式存儲在協(xié)議棧消息隊列中),并把它轉換成系統(tǒng)應用的消息結構存放在應用模塊的消息隊列中。圖2是軟件應用模塊的程序流程圖。
圖2 為軟件應用程序流程圖
圖2中的“應用初始化”包括建立消息讀取線程等;“SIP協(xié)議棧初始化”包括建立協(xié)議棧主線程、注冊回調函數(shù)、協(xié)議棧其它模塊的初始化及消息隊列的建立等;“關機準備操作”首先進行注銷操作,接著終止消息讀取線程和協(xié)議棧主線程,釋放軟件應用模塊和協(xié)議棧各模塊占用的資源。
協(xié)議棧模塊包含事務管理和對話管理這兩模塊,同樣,軟件應用模塊也包含類似的管理功能,即“呼叫(call)管理”。呼叫管理的功能和協(xié)議棧模塊中的對話管理功能類似,只是呼叫管理側重于和用戶交互,通過人機界面顯示信息,提示用戶當前呼叫的進度,引導用戶執(zhí)行進一步的操作。
呼叫有四種狀態(tài):“S_IDLE”、“S_PROGRESS”、“S_INCOMING”、“S_CONNECTED”,它們之間的關系用一個有限狀態(tài)機來描述,如圖3。
圖3 為呼叫管理有限狀態(tài)機
“S_IDLE”狀態(tài)就是我們通常所說的待機狀態(tài)。當用戶撥打對方的SIPURI,協(xié)議棧通過發(fā)送INVITE請求消息,得到臨時響應消息,呼叫就處于“S_PROGRESS”,圖中箭頭<1>表示該操作引起的狀態(tài)切換。在“S_PROGRESS”狀態(tài),對方如果拒絕接受呼叫,狀態(tài)又返回“S_IDLE”,如箭頭<2>;當對方接受呼叫,就處于連接通話狀態(tài)“S_CONNECTED”,如箭頭<5>。在“S_IDLE”狀態(tài)也可能收到對方的呼叫請求,當UA應用發(fā)現(xiàn)一個新的呼叫請求,就應當切換狀態(tài)到“S_INCOMING”,如箭頭<3>;同樣,用戶可以拒絕接受呼叫,狀態(tài)切換回“S_IDLE”,如箭頭<4>;當用戶接受呼叫請求,呼叫狀態(tài)就處于“S_CONNECTED”。在“S_CONNECTED”狀態(tài),通話雙方任何一方的結束通話請求都會導致狀態(tài)返回“S_IDLE”,結束通話。
4 結論
本終端成本價格低,目前已經(jīng)能夠注冊到有關廠家的SIP測試平臺,并可以完成基本會話功能;同時,在LAN中可以以靜態(tài)IP的方式注冊成功,并進行會話操作。
創(chuàng)新點
SIP/SDP信令協(xié)議的VoWLAN終端嵌入式開發(fā)使用;USERAgent在VoWLAN終端的嵌入實現(xiàn);實現(xiàn)VoWLAN終端對PC、VoWLAN終端對VoWLAN等終端、VoWLAN終端對PSTN的通話。
參考文獻
VOIP技術標準的走勢與難點分析 2008-05-06 |
SIP獲得成功的兩大因素 2008-05-06 |
SBC在企業(yè)IP通信系統(tǒng)中的應用 2008-05-04 |
基于SIP的VoIP系統(tǒng) 2008-04-25 |
用戶統(tǒng)一通信博弈的焦點 2008-04-25 |