树莓派安装mjpg-streamer视频监控

在树莓派上有几种视频监控软件
fswebcam
motion
mjpg-streamer

上面两种都相对简单,唯独mjpg-streamer整了半天。所以记录下安装过程

首先安装所需软件
sudo apt-get install subversion
sudo apt-get install libv4l-dev
sudo apt-get install libjpeg8-dev

svn下载软件到本地
svn co ttps://mjpg-streamer.svn.sourceforge.net/svnroot/mjpg-streamer mjpg-streamer
打开mjpg-streamer目录
cd mjpg-streamer/mjpg-streamer
编译安装
make USE_LIBV4L2=true clean all
make DESTDIR=/usr install

编译时可能会报 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
需要重新编译才会有效。

运行
mjpg_streamer -i “/usr/lib/input_uvc.so -d /dev/video0  -r 320×240 -f 30” -o “/usr/lib/output_http.so -p 8090 -w ./www”

这里很关键,好像视频大小不能大于 320×240 ,前几次设置了 640*480 ,能运行,但打开web无图像。经过测试 只要设置到 320×240 就可以