網頁監控系統設計之使用mjpg-streamer
開始我們使用的是servfox和spcaview來搭建網頁監控系統框架的,參考這篇文章:
今天我教給大家一個更好的方法,通過mjpg-streamer來搭建網頁監控系統的設計。
需要準備的環境如下:
移植mjpg-streamer:這篇文章講解。
需要的攝像頭是符合UVC規範的USB攝像頭,能夠正常執行的Linux作業系統。
下面開始移植mjpg-streamer原始碼:點選這裡下載!
tar -xzvf mjpg-streamer-r63.tar.gz
cd mjpg-streamer-r63
把下面所有的Makefile中的CC = gcc修改成CC = arm-linux-gcc
根目錄Makefile
plugins/input_gspcav1/Makefile
plugins/input_uvc/Makefile
plugins/output_file/Makefile
plugins/output_autofocus/Makefile
plugins/output_http/Makefile
plugins/input_testpicture/Makefile
在修改plugins/output_file/Makefile,在CFLAGS
+=新增自己安裝libjpg標頭檔案的路徑,我的路徑是 -I /home/book/workspace/digial_photo/libjpeg-turbo-1.2.1/tmp/include
再將input_uvc.so:後面新增庫檔案路徑 -L /home/book/workspace/digial_photo/libjpeg-turbo-1.2.1/tmp/lib
然後會好根目錄,直接make
根目錄下就生成了 mjpg_streamer可執行檔案,和一些庫檔案,將 mjpg_streamer複製到根檔案系統的/usr/bin目錄,將庫檔案複製到/lib目錄下。
cp *so* / work/nfs_root/
把www目錄複製到開發板的/etc/boa/目錄下(移植boa伺服器時候搭建的)
然後我們就可以開始測試了:
ls /dev/video* /* 看有沒有攝像頭驅動的裝置節點 */
./boa & /* 執行boa伺服器 */
一般的UVC攝像頭:
mjpg_streamer -i "input_uvc.so -f 10 -r 320*240 -y" -o "output_http.so -w etc/boa/www"
CMOS攝像頭:
mjpg_streamer -i "input_uvc.so -f 10 -r 320*240 " -o "output_http.so -w etc/boa/www"
開啟電腦的google瀏覽器或者火狐瀏覽器輸入:172.16.148.111 :8080/?action=stream 就可以成功觀測到攝像頭的資料,172.16.148.111是我開發板的IP,這裡要注意一下,如果是其他瀏覽器請安裝JAVA執行環境。
到目前為止在區域網內任意一臺電腦輸入上面的網址就可以成功顯示攝像頭資料,注意是區域網,放到公網上目前沒有做出來,我也正在開發階段中,模擬QQ視訊聊天程式(難度有點大,我做出來了在分享出來),下一步利用自己的USB無線網絡卡來發射視訊資料,用android手機來監控視訊資料。正在開發中。。