999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Android的VoFi語音系統(tǒng)的設(shè)計與實現(xiàn)

2013-06-23 09:42:52金林珠庫流亨
電子設(shè)計工程 2013年17期
關(guān)鍵詞:設(shè)備系統(tǒng)

金林珠,庫流亨

(1.武漢科技大學(xué) 湖北 武漢 430081;2.華北計算機系統(tǒng)工程研究所 北京 100083)

網(wǎng)絡(luò)通信技術(shù)的快速發(fā)展和應(yīng)用正改變著人們的通信和交流方式,VoIP(Voice over Internet Protocol)實現(xiàn)了將模擬聲音訊號數(shù)字化,并以數(shù)據(jù)封包的形式在IP數(shù)據(jù)網(wǎng)絡(luò)上實時傳遞的功能[1]。隨著WiFi無線網(wǎng)絡(luò)信號覆蓋范圍的逐漸擴大以及支持WiFi的智能手機、平板電腦等手持終端設(shè)備的大量增加,利用現(xiàn)有的無線網(wǎng)絡(luò)進行語音通信將會成為更加廉價和便利的方式。早期實現(xiàn)的無線寬帶接入商業(yè)模式在校園內(nèi)已得到試用,但校園網(wǎng)內(nèi)用戶終端與外網(wǎng)之間較大的數(shù)據(jù)傳輸延遲,經(jīng)常導(dǎo)致連通率降低,話音質(zhì)量差,頻繁掉線等問題。雖然目前市場上出現(xiàn)的部分WiFi手機已實現(xiàn)了上述應(yīng)用,但功能比較單一,使用不便,且需要增加額外開支。

基于上述背景和問題,本文提出了一種基于Android平臺的VoFi語音設(shè)計系統(tǒng),有效結(jié)合VoIP和WiFi技術(shù)[2],實現(xiàn)Android終端用戶在局域網(wǎng)內(nèi)免費、廣域網(wǎng)內(nèi)廉價的語音通信。并且此設(shè)計的擴展應(yīng)用在智能家居和電話會議上都體現(xiàn)出了一定的優(yōu)勢,進一步突破了傳統(tǒng)電話的局限性。

1 系統(tǒng)架構(gòu)設(shè)計及模塊功能描述

1.1 系統(tǒng)架構(gòu)概述

整個系統(tǒng)基于C/S模式,采用“瘦客戶端,胖服務(wù)器”的設(shè)計理念來實現(xiàn),在局域網(wǎng)內(nèi)采用TCP這種可靠的連接進行數(shù)據(jù)通信,同時在服務(wù)器端建立功能豐富的狀態(tài)機來響應(yīng)終端的各種不同信令。

整個系統(tǒng)是結(jié)合cloud來形成一個龐大的信息交流平臺,構(gòu)成完善的網(wǎng)絡(luò)信息共享機制,系統(tǒng)的網(wǎng)絡(luò)示意圖如圖1所示。

圖1 系統(tǒng)網(wǎng)絡(luò)示意圖Fig.1 Schematic diagram of the network system

1.2 服務(wù)器

服務(wù)器的主要功能:服務(wù)器主要承擔(dān)終端設(shè)備管理和數(shù)據(jù)轉(zhuǎn)發(fā)功能,響應(yīng)處理終端請求,同時負(fù)責(zé)檢查數(shù)據(jù)鏈接,調(diào)用對應(yīng)的VoIP接口,與VoIP軟件進行數(shù)據(jù)的交互,其主要功能如圖2所示。

圖2 服務(wù)器端功能圖Fig.2 Function diagram of the server

1.3 客戶終端

客戶終端的主要功能:建立與服務(wù)器的連接并得到可呼叫設(shè)備列表;向服務(wù)器發(fā)送發(fā)起登陸、呼叫、狀態(tài)變更、設(shè)置優(yōu)先級、好友管理等請求;監(jiān)聽并執(zhí)行服務(wù)器發(fā)送的反饋或命令;處理接收的音頻數(shù)據(jù),經(jīng)過解碼實時播放給用戶;同時對用戶語音信息進行采樣和編碼等處理后發(fā)送出去。

2 系統(tǒng)的工作原理

整個系統(tǒng)中將數(shù)據(jù)分為信令和音頻數(shù)據(jù)兩大類。信令采用XML格式傳輸,語音采用特定的編碼格式傳輸。服務(wù)器和移動終端采用兩個不同的TCP端口分別監(jiān)聽信令和數(shù)據(jù),并對各自的數(shù)據(jù)進行對應(yīng)的狀態(tài)處理。

其中常見的信令包括:NEWCALL、HOLD、RESUME、FORWARD、FINISH。它們分別對應(yīng)于常用的VoIP軟件Skype中的發(fā)起新電話,電話保持,回復(fù)通話,來電轉(zhuǎn)移和結(jié)束通話功能命令。

語音連接分為兩種,一種是被動接聽,另一種是主動撥打。主動撥打時,需要進行完善的信令確認(rèn),保證操作的連續(xù)性和可靠性,對于被動接聽只需要進行電話的應(yīng)答和語音的采樣和播放。

3 系統(tǒng)的設(shè)計流程

1)初始化

首先用戶終端應(yīng)用程序打開WiFi,進入登陸界面,然后設(shè)置服務(wù)器的IP地址,終端設(shè)備首先根據(jù)該IP地址登錄服務(wù)器。服務(wù)器接收到終端設(shè)備的連接請求后,獲取與其建立連接的終端設(shè)備的信息,如IP地址、MAC地址、設(shè)備狀態(tài)等,將MAC地址進行哈希映射后得到各終端的ID用來標(biāo)識各個終端設(shè)備,并把這些信息存放在數(shù)據(jù)庫中。終端設(shè)備和服務(wù)器建立連接后,將從服務(wù)器數(shù)據(jù)庫中得到所有可建立連接的終端ID,此時用戶才可以向設(shè)備列表中的任一設(shè)備發(fā)起呼叫。

2)終端發(fā)起的呼叫

終端向服務(wù)器發(fā)送NEWCALL命令以及呼叫對方地址ID,服務(wù)器監(jiān)聽到指令,執(zhí)行相關(guān)操作:

如果被呼叫方為本局域網(wǎng)內(nèi)在線登錄到服務(wù)器的用戶,則由服務(wù)器來建立與被叫之間的數(shù)據(jù)鏈路,打開網(wǎng)絡(luò)通信信道,然后將主叫端和被叫端的語音數(shù)據(jù)分別向目的終端按一定的節(jié)奏進行轉(zhuǎn)發(fā),同時處理各種不同的異常情況。

如果被呼叫方為遠(yuǎn)程互聯(lián)網(wǎng)上的用戶,且好友在線,則先由服務(wù)器端通過好友列表信息來建立與被叫方之間的數(shù)據(jù)連接和通信信道,然后調(diào)用VoIP接口,將語音數(shù)據(jù)通過VoIP軟件進行相互傳輸。

3)VoIP軟件發(fā)起的遠(yuǎn)程呼叫

首先由遠(yuǎn)程VoIP軟件向服務(wù)器端的VoIP軟件代理模塊發(fā)起呼叫,服務(wù)器從本地的VoIP軟件中通過HOOK技術(shù)[3]獲取到語音數(shù)據(jù)流。

然后服務(wù)器通過聯(lián)網(wǎng)終端設(shè)備的網(wǎng)絡(luò)信號強弱、優(yōu)先級設(shè)置等因素綜合選取最優(yōu)的在線可用移動終端設(shè)備作為該次通話的目的設(shè)備。

最后由服務(wù)器向該WiFi局域網(wǎng)內(nèi)的本地移動終端進行數(shù)據(jù)轉(zhuǎn)發(fā),同時實時傳輸由本地移動終端設(shè)備采集的語音信息到遠(yuǎn)端的VoIP軟件,形成一次連貫流暢的通話。

4)擴展應(yīng)用

由于智能家居環(huán)境中的各種電器和設(shè)備是通過網(wǎng)絡(luò)實現(xiàn)相互之間的協(xié)調(diào)與合作,組成的是一個分布式內(nèi)網(wǎng)系統(tǒng)。那么在VoIP軟件發(fā)起的遠(yuǎn)程呼叫中,每個家庭可視為獨立的被呼叫單元,服務(wù)器則控制所有的智能設(shè)備,在閑置狀態(tài)時,各個在線設(shè)備可設(shè)為待機狀態(tài),一旦服務(wù)器監(jiān)聽到遠(yuǎn)程呼入,首先根據(jù)各個設(shè)備的電力、功耗、信號等參數(shù)優(yōu)先選擇最佳適合接聽的終端設(shè)備,然后喚起該設(shè)備進行應(yīng)答,此時其他智能設(shè)備仍處于待機狀態(tài),由此可以達到節(jié)能作用。如果在公司企業(yè),此系統(tǒng)亦可應(yīng)用在電話會議中,會議發(fā)起者向服務(wù)器發(fā)起呼叫申請,服務(wù)器根據(jù)請求控制各個部門的終端設(shè)備,同時喚起多終端設(shè)備進行應(yīng)答,由此可以提高整個公司的效率。

4 系統(tǒng)軟件設(shè)計實現(xiàn)

4.1 系統(tǒng)的開發(fā)環(huán)境

1)開發(fā)服務(wù)器端程序:Eclipse+Visual Studio 2010;

Visual Studio 2010主要用來構(gòu)建HOOK Lib與對應(yīng)的VoIP軟件進行Windows下的信息交互,同時在Eclipse中進行JNI調(diào)用,彼此相互支持和協(xié)作,由此完成信息的無縫銜接和傳遞。

2)開發(fā)終端應(yīng)用程序:Eclipse+JDK+ADT插件+Android SDK;

Eclipse是開發(fā)Android應(yīng)用程序的首選集成開發(fā)環(huán)境。安裝Android開發(fā)環(huán)境,首先需要安裝java開發(fā)工具包(JDK),然后安裝集成開發(fā)環(huán)境Eclipse和ADT插件,最后安裝整個系統(tǒng)。對于客戶端的程序,本實驗進行了完整的測試與美工優(yōu)化,形成良好的人機交互界面。

4.2 關(guān)鍵代碼實現(xiàn)

4.2.1 客戶端UI設(shè)計

AndroidManifest.xml:每個Android程序必須在根目錄下包含一個AndroidManifest.xml文件。AndroidManifest.xml是XML格式的Android應(yīng)用程序聲明文件,包含了系統(tǒng)運行Android程序前所必須掌握的重要信息,包括應(yīng)用程序名、圖標(biāo)、包名、模塊組成等。res/main.xml:與用戶界面相關(guān)的布局文件,描述所要顯示的用戶界面。4.2.2 客戶端工作原理及流程

客戶端主要通過android系統(tǒng)自帶的音頻系統(tǒng)框架[5]來進行系統(tǒng)的開發(fā),首先通過MIC按照一定的采樣頻率來進行音頻數(shù)據(jù)的采集,同時使用單獨的線程來進行數(shù)據(jù)的編碼,以及將數(shù)據(jù)裝入隊列,最后通過socket[6]發(fā)送到指定的server端口;同時監(jiān)聽本地的數(shù)據(jù)端口,然后將收到的數(shù)據(jù)壓入隊列,并使用單獨的線程進行數(shù)據(jù)的解析和播放,由此實現(xiàn)實時的語音通信,具體的工作流程圖如下圖3所示。

圖3 客戶端語音模塊工作流程圖Fig.3 Flow chart of the client voice module

1)聲音數(shù)據(jù)的采樣和編碼

AudioRecord類在Java應(yīng)用程序中負(fù)責(zé)管理音頻資源,記錄音頻輸入設(shè)備中產(chǎn)生的數(shù)據(jù),AudioRecord對象用來完成讀取數(shù)據(jù)操作,并通以下幾個方法從AudioRecord對象中讀取數(shù)據(jù):read(byte[],int,int),read(short[],int,int)和read(ByteBuffer,int)。

在創(chuàng)建AudioRecord對象時,AudioRecord首先初始化,然后與音頻緩沖區(qū)建立連接。緩沖新的音頻數(shù)據(jù)時,根據(jù)指定的緩沖區(qū)大小決定AudioRecord能夠記錄的最長數(shù)據(jù)。從硬件設(shè)備讀取的數(shù)據(jù)時,必須保證讀取量小于整個記錄緩沖區(qū)。

4.3 Server端設(shè)計

服務(wù)器端進行數(shù)據(jù)的交互時,一方面主要進行數(shù)據(jù)監(jiān)聽,另一方面對數(shù)據(jù)端口進行監(jiān)聽,一旦收到特定的信令交由狀態(tài)機進行處理,同時使用多線程管理數(shù)據(jù)和各種信令,并且使用JNI[7]與特定的HOOK Lib進行交互,完成與VoIP的軟件的信息傳輸。其中對于數(shù)據(jù)庫、并行運算,采用較多的調(diào)度算法進行數(shù)據(jù)的并行處理,提高整個系統(tǒng)的吞吐能力和實時性。

5 系統(tǒng)測試結(jié)果

為了盡量的簡化操作,同時為了保持友好的操作界面,采用了定制尺寸的圖標(biāo)Logo在HTC G10上進行了實時的運行和測試,測試效果如圖4所示。

圖4 系統(tǒng)測試效果圖Fig.4 Effect chart of the test system

6 結(jié) 論

WiFi的頻段在世界范圍內(nèi)無需任何電信運營執(zhí)照,因此WLAN無線設(shè)備提供了一個世界范圍內(nèi)可以使用的,費用及其低廉且數(shù)據(jù)帶寬極高的無線空中接口。而VoIP電話則作為互聯(lián)網(wǎng)的一種應(yīng)用,進一步降低了網(wǎng)絡(luò)電話的運營成本。本研究基于Android開源操作系統(tǒng)平臺,將WiFi和VoIP有效結(jié)合,采用C/S設(shè)計模式,設(shè)計并實現(xiàn)了WiFi網(wǎng)絡(luò)終端之間的免費語音通信,同時應(yīng)答終端不再局限于手機,服務(wù)器可以根據(jù)性能參數(shù)自動優(yōu)化選擇合適的在線移動終端設(shè)備,在智能家居應(yīng)用中,體現(xiàn)了節(jié)能、低成本等特點。在公司企業(yè)中,亦可實現(xiàn)電話會議這種快捷的溝通方式,提高公司效益。該技術(shù)在家庭、學(xué)?;蛘叽笮推髽I(yè)中都有著廣泛的應(yīng)用前景。

[1]DANIEL Collins.VoIP技術(shù)與應(yīng)用[M].北京:人民郵電出版社,2003.

[2]陳法海,楊斌.Android系統(tǒng)中Wi-Fi網(wǎng)絡(luò)的研究與實現(xiàn)[J].成都信息工程學(xué)院學(xué)報,2010,25(5):495-497.CHEN Fa-hai,YANG Bin.Research and implementation of Wi-Fi network in Android system[J].Journal of Chengdu University of Information Technology,2010,25(5):495-497.

[3]Richter J,Nasarre C.Windows核心編程[M].葛子昂,周靖,廖敏,譯.北京:清華大學(xué)出版社,2008.

[4]Google.Android開發(fā)主頁[EB/OL].[2012-2-20].http://www.android.com.

[5]楊豐盛.Android技術(shù)內(nèi)幕[M].北京:機械工業(yè)出版社,2011.

[6]王志偉,丁海軍.OSGi/SIP通信中間件架構(gòu)設(shè)計[J].計算機工程,2011,37(20):234-235.WANG Zhi-wei.DING Hai-jun.Architecture design of OSGi/SIP communication middleware[J].Computer Engineering,2011,37(20):234-235.

[7]任俊偉,林東岱.JNI技術(shù)實現(xiàn)跨平臺開發(fā)的研究[J].計算機應(yīng)用研究,2005,22(7):180-184.REN Jun-wei,LIN Dong-dai.Research of platform independent programming using JNI technology[J].Application Research of Computers.2005.22(7):180-184.

猜你喜歡
設(shè)備系統(tǒng)
諧響應(yīng)分析在設(shè)備減振中的應(yīng)用
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統(tǒng)
半沸制皂系統(tǒng)(下)
基于VB6.0+Access2010開發(fā)的設(shè)備管理信息系統(tǒng)
基于MPU6050簡單控制設(shè)備
電子制作(2018年11期)2018-08-04 03:26:08
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
500kV輸變電設(shè)備運行維護探討
主站蜘蛛池模板: 亚洲第一成人在线| 精品一区二区三区视频免费观看| 五月天天天色| 亚洲成人www| 欧美日韩午夜视频在线观看| 91 九色视频丝袜| 日韩在线影院| 免费毛片全部不收费的| 成年免费在线观看| 福利在线免费视频| 国产黄色爱视频| 四虎在线观看视频高清无码| 日韩av无码精品专区| 精品少妇人妻无码久久| 国产又爽又黄无遮挡免费观看 | 91美女在线| 国产精品午夜电影| 久久影院一区二区h| 啦啦啦网站在线观看a毛片| 日韩精品无码一级毛片免费| 欧美成人综合在线| 精品亚洲欧美中文字幕在线看| 亚洲人成网18禁| 欧美国产日韩另类| 国产毛片基地| 99精品免费欧美成人小视频| 三级国产在线观看| 欧美啪啪一区| 亚洲黄网视频| 男人天堂伊人网| 成年女人18毛片毛片免费| 正在播放久久| 波多野结衣中文字幕久久| 尤物在线观看乱码| 国产成人无码Av在线播放无广告| 国产色婷婷视频在线观看| 国产精品香蕉在线观看不卡| 波多野结衣中文字幕一区| 亚洲无码高清一区| 怡红院美国分院一区二区| 亚洲欧美国产视频| 亚洲成人黄色在线| 久久五月视频| 成年看免费观看视频拍拍| 亚洲精品不卡午夜精品| 國產尤物AV尤物在線觀看| 欧美福利在线观看| 欧美精品色视频| 日韩精品中文字幕一区三区| 欧美日本在线观看| 国产成人1024精品| 国产精品亚洲精品爽爽| 一级毛片免费不卡在线视频| 欧美激情福利| 激情影院内射美女| 熟妇人妻无乱码中文字幕真矢织江 | www.99在线观看| 强奷白丝美女在线观看| 精品视频在线一区| 日韩毛片基地| 国产69精品久久久久孕妇大杂乱 | 中文字幕第1页在线播| 午夜精品久久久久久久无码软件 | 国产在线一区二区视频| 日韩无码一二三区| 波多野结衣第一页| 国产精品理论片| 午夜激情福利视频| 再看日本中文字幕在线观看| 天天躁狠狠躁| 国产精品亚洲欧美日韩久久| 国产精品第页| 色综合激情网| 亚洲人妖在线| 91小视频在线观看免费版高清| 又爽又大又光又色的午夜视频| 日本精品αv中文字幕| 九色在线视频导航91| 99热这里只有精品在线播放| 日本在线欧美在线| 亚洲AV无码不卡无码| 日本午夜在线视频|