一.安装依赖环境
sudo apt-get install subversion libv4l-dev
libjpeg8-dev imagemagick fswebcam
v4l-util build-essential libjpeg-dev
二.安装编译mjpg-streamer
svn co https:
//svn
.code.sf.net
/p/mjpg-streamer/code/mjpg-streamer/
下载源码
cd
mjpg-streamer
/mjpg-streamer
make
USE_LIBV4L2=
true
clean all
sudo
make
DESTDIR=
/usr
install
执行完sudo make DESTDIR=/usr install 后信息如下:
1 2 3 4 5 |
|
编译时可能会报 i: init_VideoIn failed 错误 错误原因:市面上大部分摄像头都是支持YUV的,而不是JPEG的。mjpg-stream支持JPEG和YUV两种格式。 1、打开以下文件: sudo vi mjpg-streamer/plugins/input_uvc/input_uvc.c 2、查找 V4L2_PIX_FMT_MJPEG 大概第三页 将一行中的: int width = 640, height = 480, fps = -1, format = V4L2_PIX_FMT_MJPEG , i; 把 V4L2_PIX_FMT_MJPEG 改成 V4L2_PIX_FMT_YUYV
需要重新编译才会有效。
三.摄像头测试
- 首先需要检测摄像头是否已加载
1 2 |
|
- 确认摄像头支持的类型:
1 |
|
运行命令
mjpg_streamer -i
"/usr/lib/input_uvc.so -d /dev/video0 -r 1024x768 -f 30"
-o
"/usr/lib/output_http.so -w /usr/www"
结果
1 2 3 4 5 6 7 8 9 10 |
|
访问(注意用FireFox或chrome,其它浏览器支持不是很好),看到下面的就对了:
http://ip:8080 (这个端口取决于你的设置 -p 如果未设置默认为8080)