天天看点

基于Linux的视频监控系统构建方法更新于2011-12-30 03:47:29

http://avr.eefocus.com/article/11-11/3217351320716660.html

?存?颁?2011-12-30 03:47:29

??瑕?锛? ???轰?绉??轰?ARM 宓??ュ?寮???骞冲?拌?棰????х??瀹??版?规?????杩?V4L2 ??inux涓???寤鸿?棰??惧?????????剧ず锛??跺??浣跨??ervfox ??spcaview ??寤鸿?棰????″???绯荤?????inux ??Windows??浣?绯荤?涓???杩?绐??f????缃?椤佃?琛?瑙?棰????у???惧????????娴?璇?琛ㄦ??绯荤??????у?惧??娓??帮?骞跺?锋??浣?绉?灏???????浣????????у己绛?浼??广??

?

??????????锛?宓??ュ?绯荤??ㄨ?棰????т腑??搴??ㄨ??ヨ?骞挎???浼撮????缃?缁???寮哄ぇ???斤?瑙?棰????ф?翠晶??缃?缁????ф?规?锛?瑕?姹?浣?绉?灏???杩?绋?????????浣???????灏?????浣?????汉?у??绛?????绯荤??轰?宓??ュ?Linux骞冲?颁??╃??SB ????澶撮????瑙?棰??惧??锛???杩?瑙?棰??惧????缂╁??缁???缃?缁?杩?琛?瑙?棰??惧??浼?杈?锛?浣胯?绋????ф??涓哄???姐??

?

??1 绯荤?姒?杩?

?

?????? 瑙?棰??惧?????х郴缁??? ?ㄥ??缁???锛?????涓鸿?棰??惧????????瑙?棰??惧??澶?????瑙?棰??惧??浼?杈???瑙?棰??惧???剧ず??瑙?棰??惧???????ㄥ???辨?板??????澶淬??USB??????宓??ュ?澶????ㄦ??????瑙?棰??惧??澶???涓昏???瑙?棰??惧????缂╋??辩??娉?瀹??般??瑙?棰??惧??浼?杈?涓昏??╃?ㄨ?棰????″?ㄦ?ュ???般??瑙?棰??惧???剧ず涓昏????ㄨ?绋???涓绘?轰?瀹??拌?棰??惧????娴?瑙???淇?瀛???澶???绛?锛?Linux涓绘?轰??卞??ㄧ?搴?瀹??帮?Windows 涓绘?轰???杩?娴?瑙??ㄤ???JAVA 绋?搴?瀹??般??绯荤?????妗??惧??? ??绀恒??

?

基于Linux的视频监控系统构建方法更新于2011-12-30 03:47:29

????????????????????????????????????????????????????????????????????????????? 绯荤?妗???

?

??2 绯荤?纭?浠?

?

???????? CPU 澶????ㄤ娇??amsungS3C2440A锛? 涓婚?400 MHz锛???楂?533 MHz;64 M SDRAM??32 bit ?版???荤嚎??SDRAM ?堕??棰???100MHz;256 M/1 GB Nand Flash锛? ???甸????澶便??2 M NorFlash锛????甸????澶憋?缁?瀹?3.5??褰?CD锛?灞?????4 绾跨?甸?诲?瑙??稿?锛? 灞?骞???杈ㄧ????浠ヨ揪??024?768 璞$?锛?100 M 浠ュお缃?RJ-45 ?ュ?o?????M9000缃?缁?????锛???涓茶??c??USB Host??USB Slave B ???ュ?c??SD ?″???ㄦ?ュ?c??璺?绔?浣?澹伴?抽?杈??烘?ュ?o? 楹???椋??ュ?c??JTAG?ュ?c??4 USER Leds??6 USER buttONs锛?甯???哄骇锛???I2C ?荤嚎AT24C08 ??????20 pin????澶存?ュ?o?????澶寸?ㄨ???帮??煎??N9C20X 绯诲????????椹卞?????绯荤??????镐腑????浜?璇ラ┍?ㄣ??

?

??3 绯荤?杞?浠?

?

3.1 Linux ???哥??绉绘?

??????? 绉绘??板???镐富瑕???涓轰?缁?LCD浠ュ??????澶存坊???稿???椹卞?ㄦ????锛???edora 9 涓???寮????哥????褰?锛?浣跨?ㄧ己????缃???浠惰?琛???缃?锛??ㄥ???镐腑娣诲??V4L ??????娣诲??涓???SB????澶撮┍??SPCA??

?3.2 ?轰?V4L2 ???惧??????绋?搴?

???????绯荤?浣跨?ㄧ??浜ゅ??缂?璇?宸ュ?蜂负arm-linux-gcc-4.3.2.璁捐?′娇?ㄥ?扮??搴??ㄧ?搴??借???杩?璇ョ?璇??ㄧ?璇???涓?杞藉?板????夸?杩?琛???灏?缂?濂界??搴??ㄧ?搴?V4L2.c浜ゅ??缂?璇???涓?杞藉?版?裤??

??????? V4L锛?Video forLinux锛???Linux 涓???渚???涓?涓??宠?棰??ュ?h???锛????????宠?棰?椹卞?ㄧ????借??ㄥ?拌?浜??ュ?c??

??????? V4L 浠?2.4.1.x ?????哥????涓?寮?濮??虹?帮?璁捐?′娇?ㄧ??Video for Linux2锛?绠?绉?4L2锛???V4L ???硅???锛?淇?澶?浜?绗?涓?浠d腑???ㄥ??BUG??

??????? 璁捐?$???惧????????澶???绋?搴?涓昏??轰?V4L2 ?舵??锛???杩?瀵逛?浜?ioctl ?芥?扮??璋??ㄦ?ュ???拌?棰?璁惧?????寮?锛??惧????????澶???锛??惧?????剧ず绛?????涓?涓昏???ioctl ?芥?扮??绠?浠?锛?

??????? 1锛?ioctl锛?fd锛?VIDIOC_S_FMT锛?&fmt锛?锛??ㄤ?璁剧疆?惧?????煎???

??????? 2锛?ioctl锛?fd锛?VIDIOC_REQBUFS锛? &req锛?锛?????瀛??宠?风??插?猴??宠?风??buffer 涓??板????ount 涓???

??????? 3锛?ioctl锛?fd锛?VIDIOC_QUERYBUF锛? &buf锛?锛??ヨ?㈠凡缁???????V4L2 ??瑙?棰?缂??插?虹???稿?充俊??锛?????瑙?棰?缂??插?虹??浣跨?ㄧ?舵?????ㄥ???哥┖?寸????绉诲?板????缂??插?洪?垮害绛???

??????? 4锛?ioctl锛?fd锛? VIDIOC_QBUF锛?&buf锛?锛??句?涓?绌虹??瑙?棰?缂??插?哄?拌?棰?缂??插?鸿??ラ????涓?锛??芥?版?ц???????锛???浠ょ??瑙?棰?缂??插?鸿??ヨ?棰?杈??ラ????锛??ㄥ???ㄨ?棰?璁惧??????惧???讹??稿???瑙?棰??版??琚?淇?瀛??拌?棰?杈??ラ?????稿???瑙?棰?缂??插?轰腑??

??????? 5锛?ioctl锛?fd锛?VIDIOC_STREAMON锛? &type锛?锛????ㄨ?棰??????戒护锛?搴??ㄧ?搴?璋???IDIOC_STREAMON???ㄨ?棰??????戒护??锛?瑙?棰?璁惧?椹卞?ㄧ?搴?寮?濮?????瑙?棰??版??锛?骞舵???????扮??瑙?棰??版??淇?瀛??拌?棰?椹卞?ㄧ??瑙?棰?缂??插?轰腑??

??????? ?惧??????澶???娴?绋??惧??? ??绀恒??

?

基于Linux的视频监控系统构建方法更新于2011-12-30 03:47:29

????????????????????????????????????????????????????????????????????????????? ?惧??????澶???娴?绋???

3.3 缃?缁????″??

??????? 绯荤?????oa ???″?ㄣ??Boa??涓?绉???甯稿?宸х??Web ???″??? ?跺???ц?浠g??????澶х害60 kB 宸??炽??浣?涓轰?绉???浠诲??eb ???″???Boa???戒?娆″?????ㄦ?风??璇锋?锛?Boa ????CGI锛??藉?涓?GI 绋?搴?fork ?轰?涓?杩?绋??ユ?ц????夸?绉绘?璇ユ???″???Boa???″?ㄩ?璁ゅ??鸿???ㄨ?琛?锛???缃?conf ??浠躲??

??????? ???″?ㄧ??搴??ㄧ?搴?浣跨??ervfox锛?servfox-R1_1_3 瑙e??淇???akefile??浠讹?CC=arm-linux-gcc锛?缂?璇???寰??板???ц???浠?ervfox锛?涓?杞藉?版?夸?锛?杈??ュ?戒护chmod +x servfox涓哄??娣诲?????ц?灞??с??

??????? 瀹㈡?风??绋?搴?浣跨??pcawiew锛?璇ョ?搴??ㄤ???inux 涓绘?轰?瀵规???″?ㄨ?琛????э?????绉绘?????inux涓?缂?璇?spcaview.?变?姝よ蒋浠跺??渚?璧?涓?libsdl锛???浠ュ?ㄥ??瑁?spcaview 涔???锛???瑕?瀹?瑁?SDL-1.2.13.瀹?瑁?spcaview 杞?浠跺??锛??ㄦ???浠剁??褰?涓???3 涓????ц???浠讹?spcacat锛?绠????剧????????宸ュ?凤?涓??界?ㄤ?缃?缁???瑙?瀹㈡?风??锛?Spcaserv锛?娴?濯?浣????″???Spcaview锛??ㄦ?ョ邯褰??版??娴?锛?涔??界?ㄦ?ユ???炬?版??锛?涔??戒?涓虹?缁???瑙?瀹㈡?风???ㄣ??

?

4 ???ц?绋?

?

4.1 ??inux ??浣?绯荤?涓???????

?????? 姝e父???ㄨ?琛?寮????匡?杩?琛????″?ㄧ??绋?搴?servfox锛?servfox-d /dev/video0-s 320x240-w 7070??

?????? ??inux 涓?杩?琛?锛? ??/spcaview-g-s320x240-w 10.1.91.230:7070

?????? ?朵腑10.1.91.230 ?????″?ㄧ??IP?板??锛?杩??峰氨??浠ュ??C?轰???瑙?USB ????澶撮????杩??ョ???版??浜???

?????? 绯荤???瑁??ㄨ?????轰腑??fedora 9 linux绯荤?锛???浠ユ????拌?瀵??版????澶寸???у?哄???????点??

4.2 Windows ??浣?绯荤?涓???????

??????瀵逛?缃?缁????х??瀹㈡?风??锛??藉?璺ㄥ钩?扮??宸ュ?风????????娴?瑙??????杩?娴?瑙??ㄦ?ョ???э???璁烘??Linux??Windows??MacOS?????朵???UNIX 绯荤?锛???瑕????惧舰???㈢??娴?瑙?????ㄦ??㈢??澧?涓??藉??浠ュ?硅?绋???????澶存?????у?垛???????磋?琛????с??

?????? Mini2440 涓?宸茬???Boa???″?ㄥ??渚?浣跨???Spcaview 涓???http-java-applet ??浠跺す涓?宸茬?????浜?涓?涓???浠ョ???т娇?ㄧ??web椤甸???灏?璇ユ??浠跺す澶??跺??oa ???″?ㄧ??涓绘??浠跺す/www 涓???

?????? ?变?http-java-applet ??浠跺す??????WEB涓婚〉???Index.html锛?????浜?JAVA ?т欢锛???浠ュ???ㄤ富?轰?瀹?瑁?JAVA ??澧?锛?璁╂?瑙??ㄦ????JAVA ??浠躲??

?????? 瀹?瑁?濂?RE ??锛??ㄦ?瑙??ㄧ???板????涓?杈??ユ???″?ㄥ?板??锛??冲??瀹??拌?绋????с??

4.3 杩?绋?????

?????? ??杩?web 琛ㄥ????浜?GI ?ヨ?琛?搴??ㄧ?搴???

?????? ???ㄧ??虫?ュ?o?CGI锛?瑙?????璁?eb???″?ㄦ?ц??朵???绋?搴?骞跺?瀹?浠???杈??哄?ㄥ???ㄥ????缁?Web 娴?瑙??ㄧ?????????惧舰???抽?涓??????″?ㄤ?CGI 绋?搴???缁????藉??╁??WorldWideWeb ???藉????

?????? CGI 绋?搴???浠ョ????Perl ????UNIX Shell????绛?娴?琛?缂?绋?璇?瑷?缂?????

?????? ?ㄦ??璁捐?′腑锛?缃?椤典???????shoot the picture??浜や?涓?涓???涓?4L ??CGI ??浠?4l.cgi锛?璇ユ??浠舵????hell????缂?????锛??ㄤ??ㄦ?夸?杩?琛?宸茬?璇?濂界???惧??????绋?搴?骞跺?规???????剧??杩????版?版??寮???缃?椤典腑杩?琛??ョ????

?????? Shell ????锛?v4l.cgi锛???瀹瑰?涓?锛?

?????? #锛? /bin/sh

?????? /www/http-java-applet/v4l2

?????? echo ??Content-type锛? text/html;charset=gb2312??

?????? echo

?????? echo ????????

?????? echo ??

???< >< src="??1.jpg??">

?????? exit 0

?

5 缁???璇?

?

??????? 绯荤????ㄥ?婧???Linux绯荤?锛???浣?浜?寮???????锛???浠ヤ换??瑁??????跺?????革??逛究绉绘???涓?浼?缁?PC?虹?????х郴缁??告??锛???绯荤??锋??浣?绉?灏???????浣????????у己绛?浼??裤????绯荤?杩??锋??涓?瀹????╁??э???浠ュ?????褰??????芥?╁??ユ弧瓒崇?ㄦ?锋?撮????瑕?姹?锛?濡??ㄥ?惧??????绔????ヨ?剧疆?ヤ镜妫?娴??????ヨ?????у?跺???姐??

继续阅读