基于S3C6410的無線視頻監(jiān)控系統(tǒng)設計
Mjpg—streamer是一個視頻流應用軟件,使用V4L2(Video4 Linux 2)的接口,通過文件或HTTP方式訪問linux—UVC兼容攝像頭。視頻采集功能通過調用mmap()函數(shù)將視頻采集設備映射到系統(tǒng)內存中來實現(xiàn),取代了傳統(tǒng)的直接讀取用戶空間設備的方式,繞過了內核緩沖區(qū),加快了視頻數(shù)據的處理速度,提高了實時性。
Mjpg—streamer支持使用攝像頭內的DSP硬件壓縮功能付出少量硬件壓縮時的電源開銷,減少了CPU的負荷,減少帶寬的占用,特別適用于嵌入式設備。
MJpg—streamer采用模塊化的設計方法,以功能塊,即plug—in(組件)為單位進行描述。Mjpg—streamer的工作就是將其中的一個輸入組件和多個輸出組件綁定在一起,所有的功能都是通過它的各個組件完成的。用戶可以選擇需要的模塊,并進行必要修改,以完成所需功能。體系結構如圖2所示。
插件最主要且最常用的組件是input—uvc輸入組件和output—http輸出組件。其他組件包括input—control、input_file、input_test picture、input_gspcavl、output_autofocus、output_file、out_viewer,如圖3所示。
2.2. 1 input_uvc輸入組件
Input_uvc組件的主要功能是獲取攝像頭拍攝的圖像并將其壓縮編碼,共包括5個組件接口函數(shù),這些組件接口函數(shù)是各個組件提供給外部使用的接口。相關函數(shù)的定義可查看input_uvc.c文件。
Output_http輸出插件是功能齊全的HTTP 1.0的web服務器,通過輸入插件獲取的USB攝像頭圖像數(shù)據處理之后以流媒體的形式輸出,并可為設置用戶名和密碼,最終在其客戶端瀏覽器顯示。
2.2.2 mjpg—streamer視頻服務器的移植
Mjpg—streamer的移植需要JPEG庫的支持,所以首先需要移植JPEG庫到開發(fā)板。從http://www.ijg.org/files/下載jpeg源碼包,解壓縮后進入其目錄,在源碼包目錄執(zhí)行./configureCC=arm-linux-gec-host=arm-unknown-linux-prefix=/opt/linux/jpeg-enable-shared-enable-static命令配置其交叉編譯器和編譯后安裝的目錄,然后執(zhí)行make命令編譯和makeinstall命令安裝,最后將jpeg目錄下生成的庫文件libjpeg.so.9拷貝到開發(fā)板根目錄下的lib文件夾中,即完成jpeg庫的移植。
通過sourceforge網站下載mjpg-streamer源碼包。修改input_uvc目錄下的Makefile文件,以其滿足編譯要求。然后執(zhí)行make CC=arm-linux-gcc命令進行編譯。在開發(fā)板建立mjpg安裝目錄,將其源碼目錄中的.so為后綴的共享庫文件和start.sh文件及文件夾WWW拷貝到其中,同時復制編譯后目標文件路徑下的可執(zhí)行文件mjpg_streamer到開發(fā)板根目錄的bin文件夾中,至此整個移植過程完畢。最后執(zhí)行./ mjpg_streamer-i“mjpg/input_uvc.so-y-d/dev/video2”-o“/mjpg/output_http.so-w/mjpg/www”命令以開啟視頻服務器。
3 系統(tǒng)測試及性能分析
本文采用飛凌公司的ARM11開發(fā)板進行實驗,通過燒寫并運行應用程序,可在遠程PC機上看到視頻監(jiān)控效果。在瀏覽器端輸入服務器端的IP地址訪問目標服務器,即輸入http://10.17.133.88:8080/?action=stream,視頻監(jiān)控效果如圖4所示。從監(jiān)控畫面可以看出,接收到的監(jiān)控畫面比較清晰,反映出通過Mjpg-streamer服務器進行無線傳輸的圖像畫面質量較好,達到了無線傳輸的功能。
通過表1中兩種方法進行穩(wěn)定性測試,從測試效果可以看出,在瀏覽器端顯示的圖像信息良好,系統(tǒng)不管在何種情況下,均沒有出現(xiàn)死機或卡頓的現(xiàn)象,說明設計的監(jiān)控系統(tǒng)性能穩(wěn)定。
4 結束語
本文設計了一種基于ARM11、USB攝像頭、WIFI以及Mjpg-streamer軟件的嵌入式視頻監(jiān)控系統(tǒng),進行了linux系統(tǒng)及視頻服務器軟件的編譯與移植,實現(xiàn)了視頻流在基于802.11g的遠程視頻的實時穩(wěn)定傳輸。該系統(tǒng)體積小,功耗低,經測試,系統(tǒng)穩(wěn)定可行,實時性好,可被多用戶同時訪問,遠端計算機可以清晰地觀測到室內監(jiān)控畫面。該系統(tǒng)滿足室內視頻監(jiān)控的需求,為進一步提高視頻圖像傳輸質量和傳輸效率,可以考慮加入最新H.264編解碼算法進行視頻圖像的編解碼。
評論