新聞中心

EEPW首頁 > 手機與無線通信 > 設(shè)計應(yīng)用 > 基于局域網(wǎng)的視頻聊天系統(tǒng)--蛙酷

基于局域網(wǎng)的視頻聊天系統(tǒng)--蛙酷

作者:邱超 丁建輝 陽平 時間:2014-12-29 來源:電子產(chǎn)品世界 收藏
編者按:  摘要:隨著無線網(wǎng)絡(luò)的發(fā)展,支持Wi-Fi的電子產(chǎn)品越來越多,與Wi-Fi綁定的應(yīng)用也層出不窮,但還沒有一款基于Wi-Fi的視頻聊天軟件能夠滿足人們的日常交互需求,因此我們開發(fā)出“蛙酷”,一款基于局域網(wǎng)的視頻聊天軟件,能夠在局域網(wǎng)覆蓋下實現(xiàn)隨時隨地視頻聊天和視頻會議,且無需耗費任何手機數(shù)據(jù)流量,真正給用戶帶來了隨聊隨見的交互體驗。   1 引言   目前,社會所流行的聊天軟件所專注的問題僅限于視頻效果和軟件盈利上,應(yīng)用目的趨于商業(yè)化,而沒有真正從用戶的角度出發(fā)去設(shè)計開發(fā)軟件,

  摘要:隨著無線網(wǎng)絡(luò)的發(fā)展,支持的電子產(chǎn)品越來越多,與綁定的應(yīng)用也層出不窮,但還沒有一款基于軟件能夠滿足人們的日常交互需求,因此我們開發(fā)出“”,一款基于軟件,能夠在覆蓋下實現(xiàn)隨時隨地和視頻會議,且無需耗費任何手機數(shù)據(jù)流量,真正給用戶帶來了隨聊隨見的交互體驗。

本文引用地址:http://2s4d.com/article/267433.htm

  1 引言

  目前,社會所流行的聊天軟件所專注的問題僅限于視頻效果和軟件盈利上,應(yīng)用目的趨于商業(yè)化,而沒有真正從用戶的角度出發(fā)去設(shè)計開發(fā)軟件,由于視頻通訊不同于文字通訊和語言通訊,傳輸信息量大且十分耗費數(shù)據(jù)流量,導(dǎo)致用戶想用能用卻不敢用。基于這一點,我們提出了“”,這是一款基于無線的視頻聊天軟件,主要包含在線視頻聊天和視頻組播功能,用戶可以使用這款軟件與同一局域網(wǎng)內(nèi)的任意一位好友隨時隨地進(jìn)行視頻通訊,也可邀請多名好友開啟在線視頻會議。這款軟件最大的特性在于我們能夠通過訪問局域網(wǎng)的方式來滿足各種交互需求且節(jié)省數(shù)據(jù)流量,適用于高校、企業(yè)、商城以及其它有無線局域網(wǎng)覆蓋的各大場所,這款軟件簡單實用,穩(wěn)定的后臺服務(wù)能夠讓用戶隨時隨地與好友進(jìn)行視頻通訊。

  2 成果展示及介紹

  2.1 主界面

  如圖1所示。

  2.2 系統(tǒng)架構(gòu)

  (1)視頻聊天 一方客戶端發(fā)出邀請(發(fā)送IP及端口),然后服務(wù)器在此局域網(wǎng)內(nèi)檢索該IP地址,一旦檢索到即鎖定IP并發(fā)送端口號,接收端接收到邀請后,即做出應(yīng)答(接受/拒絕),拒絕則關(guān)閉連接,接受則開啟連接并互相發(fā)送數(shù)據(jù)給對方,實現(xiàn)視頻聊天。

  (2)視頻會議 由發(fā)送端客戶端開啟視頻會議號(組播IP地址段),開啟時即開始發(fā)送數(shù)據(jù)到服務(wù)器端(不管有沒有終端客戶端連入),開啟組播后,多個終端客戶端可以通過加入同一組播IP而開始接收發(fā)送端發(fā)送的數(shù)據(jù)信息,實現(xiàn)視頻會議。

  3 詳細(xì)分析硬件與軟件模塊

  3.1 Wi-Fi

  3.1.1 Wi-Fi程序模塊

  (1)開源庫wpa_supplicant

  一個開源庫,加入到源碼中,經(jīng)過修改后成為實現(xiàn)Wi-Fi功能的基礎(chǔ)。它的代碼位于./external/wpa_supplicant文件夾中,主要用C和C++寫成,實現(xiàn)了從上層接到命令后,發(fā)送給硬件驅(qū)動程序,接著操作硬件完成需要的操作,這里是通過socket來與硬件驅(qū)動進(jìn)行通信的。

  (2)硬件驅(qū)動程序

  前文所說的wpa_supplicant,與之通信的硬件驅(qū)動的代碼位于./hardware/libhardware_legacy/wifi/wifi.c中。

  (3)部分

  首先簡要介紹一下,是JavaNativeInterface的縮寫,它實現(xiàn)了Java代碼與其他代碼進(jìn)行交互,使得在Java虛擬機中運行的Java代碼能夠與用其他語言編寫的應(yīng)用程序和庫進(jìn)行交互。在中,JNI可以讓Java程序調(diào)用C程序。

  與Wi-Fi相關(guān)的JNI代碼位于./frameworks/base/core/jni/android_net_wifi_Wifi.cpp中。

  (4)Wi-Fi API部分

  這部分源代碼使用Java完成了對Wi-FiAPI的封裝,使應(yīng)用程序可以使用Wi-Fi功能,它們位于frameworks/base/services/java/com/android/server/和frameworks/base/wifi/java/android/net/wifi/中。

c++相關(guān)文章:c++教程



上一頁 1 2 3 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉