基于OMAP5912遠(yuǎn)程視頻監(jiān)控系統(tǒng)的設(shè)計(jì)
3)視頻網(wǎng)絡(luò)傳輸
考慮到B/S模式拓展性好、維護(hù)和升級容易、安全度較高等優(yōu)點(diǎn),系統(tǒng)采用B/S模式。用戶只需要在遠(yuǎn)程客戶機(jī)的網(wǎng)頁地址欄內(nèi)輸入服務(wù)器的IP地址,通過瀏覽器就能實(shí)時查看現(xiàn)場視頻畫面。
系統(tǒng)網(wǎng)絡(luò)通信程序的設(shè)計(jì)包括服務(wù)端和監(jiān)控端的設(shè)計(jì),其中監(jiān)控端采用通用的IE瀏覽器即可,主要是服務(wù)器部分的設(shè)計(jì),包括構(gòu)建WEB服務(wù)器[4](主要涉及BOA Web Server的移植及配置, CGI腳本的創(chuàng)建)、C語言實(shí)現(xiàn)CGI(通用網(wǎng)關(guān)接口)、實(shí)現(xiàn)嵌入式數(shù)據(jù)庫和制作簡單網(wǎng)頁等。其中,CGI為WEB服務(wù)器和應(yīng)用程序的接口,如通過CGI程序?qū)?a class="contentlabel" href="http://cafeforensic.com/news/listbylabel/label/遠(yuǎn)程">遠(yuǎn)程設(shè)備的進(jìn)行參數(shù)設(shè)置;采用嵌入式數(shù)據(jù)庫MSQL用于存取系統(tǒng)的重要信息,如用戶的帳號、密碼,攝像頭參數(shù)等。采用B/S模式后,服務(wù)器和監(jiān)控端的通信程序結(jié)構(gòu)圖如圖4所示。
圖4 服務(wù)器和監(jiān)控端的通信程序結(jié)構(gòu)圖
嵌入式WEB服務(wù)器部分程序如下。
//創(chuàng)建TCP套接字連接TCP網(wǎng)絡(luò)
if((sock_fd=socket(AF_INET,SOCK_STREAM,0))==-1)
{
perror(sock_fd error);
exit(1);
}
setsockopt(sock_fd,SOL_SOCKET,SO_REUSEADDR,on,sizeof(on));
//為套接字分配HTTP協(xié)議地址
my_addr.sin_family=AF_INET;
ddr.sin_port=htons(80);
my_addr.sin_addr.s_addr=htons(INADDR_ANY);
if(bind(sock_fd,(struct sockaddr*)my_addr,sizeof(their_addr))==-1)
{
perror(bind errorn);
exit(1);
}
……
if(!fork())
{
recv(new_fd,http_rec,2048,0);//接收用戶端控制命令
//捕捉圖像
image=videograb(320,240,brightness,contrast,colour,hue);
……
}
系統(tǒng)充分發(fā)揮了OMAP5912的雙核優(yōu)勢,實(shí)現(xiàn)了視頻實(shí)時采集、存儲、編碼及網(wǎng)絡(luò)傳輸。視頻監(jiān)控用戶界面效果圖如圖5所示。
結(jié)語
設(shè)計(jì)和實(shí)現(xiàn)了基于OMAP5912的遠(yuǎn)程視頻監(jiān)控系統(tǒng),系統(tǒng)充分發(fā)揮了OMAP5912的雙核優(yōu)勢,實(shí)現(xiàn)了服務(wù)器端進(jìn)行視頻的實(shí)時采集、存儲、編碼及網(wǎng)絡(luò)傳輸,而監(jiān)控端的PC機(jī)可以通過IE瀏覽器查看監(jiān)測點(diǎn)的視頻,也可以設(shè)置視頻的分辨率、亮度、對比度等參數(shù)。經(jīng)實(shí)際運(yùn)行表明,系統(tǒng)運(yùn)行穩(wěn)定,視頻流暢,能夠滿足遠(yuǎn)程視頻監(jiān)控的要求。
評論