新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于ARM11的無線視頻監(jiān)控系統(tǒng)

基于ARM11的無線視頻監(jiān)控系統(tǒng)

作者: 時間:2015-04-24 來源:網(wǎng)絡(luò) 收藏

  4.1.1 WI-FI 無線網(wǎng)絡(luò)搭建過程

本文引用地址:http://m.butianyuan.cn/article/273139.htm

  (1)加載WI-FI 模塊。通過insmod 命令加載,這里需要加載2 個文件helper_sd.bin、sd8686.bin,這2 個文件可以從Marvel 官方網(wǎng)站下載。

  (2)搜索WI-FI 網(wǎng)絡(luò)。先用ifconfig eth1 up 命令把WI-FI 網(wǎng)絡(luò)接口卡打開,然后用iwlist eth1 scanning命令搜索WIFI 網(wǎng)絡(luò)。

  (3)設(shè)置eth1 的ip 地址和子網(wǎng)掩碼。

  (4)設(shè)置ESSID.通過iwconfig eth1 essid 402命令實(shí)現(xiàn)的,ESSID 用來區(qū)分不同的網(wǎng)絡(luò)。

  (5)設(shè)置密碼。通過iwconfig eth1 key s:your_key命令實(shí)現(xiàn)的,其中your_key 就是登陸密碼。

  4.1.2 基于RTP 協(xié)議的視頻數(shù)據(jù)傳輸

  RTP 是實(shí)時傳送協(xié)議( Real-time TransportProtocol)的縮寫,代表一個網(wǎng)絡(luò)傳輸?shù)膮f(xié)議,為音頻、視頻上傳中的常用協(xié)議[5].RTCP 和RTP 一起提供流量控制和擁塞控制服務(wù),它們能以有效反饋和最小開銷使傳輸效率最佳化,因而特別適合傳送實(shí)時的數(shù)據(jù),所以采用該協(xié)議傳輸視頻數(shù)據(jù)。

  本系統(tǒng)采用開源代碼Jrtplib 提供的RTP 協(xié)議棧,由于Jrtplib 對RFC3550 的實(shí)現(xiàn)進(jìn)行了封裝,使得傳輸視頻數(shù)據(jù)更加簡單。由于本系統(tǒng)的網(wǎng)絡(luò)最大有效載荷為1500 字節(jié),因此設(shè)置RTP 包大小的上限為1400 字節(jié),如果發(fā)送的數(shù)據(jù)大于1400 字節(jié),則采用拆包的方法再發(fā)送,具體傳輸過程如圖4 和圖5 所示。

  

 

  圖4 發(fā)送端流程框圖。

  

 

  圖5 接收端流程框圖。

  發(fā)送端主要過程如下:

  (1)創(chuàng)建RTP 會話并設(shè)置目標(biāo)地址。調(diào)用Create方法得到RTP 會話實(shí)例,然后調(diào)用AddDestination 方法設(shè)置目標(biāo)IP 以及目標(biāo)端口號。

  (2)獲得數(shù)據(jù),調(diào)用Get_Data()函數(shù)得到。

  (3)發(fā)送數(shù)據(jù),通過SendPacket()方法實(shí)現(xiàn)。

  接收端主要過程如下:

  (1)創(chuàng)建RTP 會話。調(diào)用Create 方法來創(chuàng)建一個會話實(shí)例,并且在創(chuàng)建會話的同時設(shè)置端口號,要與發(fā)送端的端口號保持一致。

  (2)接受RTP 數(shù)據(jù)。調(diào)用RTPSession 類的PollData()方法接收數(shù)據(jù)。

  (3)保存RTP 數(shù)據(jù)報。通過創(chuàng)建了一個指針數(shù)組,里面存放的是RTP 數(shù)據(jù)報的指針,只要將剛接收到RTP 數(shù)據(jù)報的指針賦給這個指針數(shù)組即可,這樣可以節(jié)省數(shù)據(jù)拷貝的時間。

  (4)判斷是否接收完成,如果沒有,則跳轉(zhuǎn)到第b 步,否則接收端程序退出。

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


攝像頭相關(guān)文章:攝像頭原理

上一頁 1 2 3 下一頁

關(guān)鍵詞: ARM11 視頻監(jiān)控

評論


相關(guān)推薦

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

關(guān)閉