1、手上刚好有个OpenWRT AR9331硬件平台 ,还有个USB摄像头。所以想试着做个webCam
2、确认摄像头、安装摄像头驱动
1)摄像头有两种。一种是gspca devices,一种是UVC Webcam Devices。
我的摄像头ID为:
root@Off-1CD0:/# lsusb
Bus 001 Device 002: ID 1871:0101
OpenWRT支持的UVV摄像头列表(我搜索1871即可):
http://www.ideasonboard.org/uvc/
安装驱动为:opkg install kmod-video-uvc
OpenWRT支持的gspca摄像头列表
http://linuxtv.org/wiki/index.php/Gspca_devices
网上有些人用的是zc3xx,查询列表可知安装为:opkg install kmod-video-gspca-zc3xx
2)确定是否安装了驱动:ls /dev
root@Off-1CD0:/# ls dev/vi*
dev/video0
3、安装opkg install mjpg-streamer
1)对于UVC摄像头
mjpg_streamer -i "input_uvc.so -d /dev/video0 -r 352x288 -f 30 -q 80 -y" -o "output_http.so -p 8080 -w /www/webcam"
在浏览器端输入设备的IP+:8080/?action=stream
我的设备在局域网内的IP为http://192.168.0.111,所以webCam访问地址为http://192.168.0.111:8080/?action=stream。
遇到问题:输入访问地址后,画面是空白的。此时可以调整视频帧率参数,我是把-f 15改为-f 30后可以看到视频画面。
root@Off-1CD0:/# mjpg_streamer -i "input_uvc.so -d /dev/video0 -r 480x320 -f 30 -q 80 -y" -o "output_http.so -p 8080 -w /www/webcam"
MJPG Streamer Version: svn rev: Unversioned directory
i: Using V4L2 device.: /dev/video0
i: Desired Resolution: 480 x 320
i: Frames Per Second.: 30
i: Format............: YUYV
i: JPEG Quality......: 80
i: TV-Norm...........: DEFAULT
i: The format asked unavailable, so the width 352 height 288
o: www-folder-path...: /www/webcam/
o: HTTP TCP port.....: 8080
o: username:password.: disabled
o: commands..........: enabled
2)mjpg_streamer -
-y是表示YUV格式。如果没有-y,默认启动是mjpeg格式,这个就报错。改成YUV格式
-d指定设备
-f 制订帧数,默认30帧
-r指定视频大小,如320×240
-q指定画质,默认80
对于输出参数:
-p 指定端口,这里是8080
-w 指定网页目录,这里咱们设置的是/www/webCam目录
-c设置通过密码访问
4效果:注意最好用google chrome 浏览器。
参考:http://tieba.baidu.com/p/2565884424
升级固件
sysupgrade -v openwrt-ar71xx-generic-tl-wr2543-v1-squashfs-sysupgrade.bin