树莓派3B+ 安装mjpg-streamer用自带CSI摄像头做网页监控

硬件准备:

树莓派3B+,500万CSI模块摄像头

系统环境:

pi@raspberrypi:~ $ cat /etc/issue
Raspbian GNU/Linux 9 \n \l
pi@raspberrypi:~ $ uname -a
Linux raspberrypi 4.14.50-v7+ #1122 SMP Tue Jun 19 12:26:26 BST 2018 armv7l GNU/Linux

mjpg-Streamer是一个命令行应用程序,它将JPEG帧从一个或多个输入插件复制到多个输出插件。它可以用于通过基于IP的网络传输JPEG文件,从一个网络摄像头到各种类型的观看者,如Chrome、Firefox、VLC、mPlayer和其他能够接收MJPG流的软件。它最初是为内存和CPU资源非常有限的嵌入式设备编写的。它的前身“UVC_Streer”的创建是因为LinuxUVC兼容的摄像机直接生成JPEG数据,即使是从运行OpenWRT的嵌入式设备上也允许快速和完善的M-JPEG流。输入模块“inputuvc.so”从连接的webcam.mjpg-Streer中捕获这样的JPG帧,现在支持各种不同的输入设备。mjpg-streamer是github上的一个开源项目,很适合树莓派。它的优点是监控画面流畅,流畅,还是流畅,而且画质高。缺点是第一那么大的一个网页,监控区域占的小还不能调整。第二个就是带宽占用过高,每秒稳定2M左右的下载,高的时候4M多,还好是局域网,公网带宽可用不起。CPU占用率和motion相比不相上下,CPU温度大概在58度左右。所以说做监控一定要给树莓派装散热片和风扇,不然会影响设备使用寿命。

1.安装辅助工具

在树莓派上执行:
sudo apt-get install libjpeg8-dev -y
sudo apt-get install cmake -

2.从github下载并解压

 
wget https://github.com/jacksonliam/mjpg-streamer/archive/master.zip

在树莓派上执行:

sudo unzip mjpg-streamer-master.zip

3.编辑源文件

在树莓派上执行:
cd mjpg-streamer-master/mjpg-streamer-experimental/plugins/input_raspica
(移动到mjpg-streamer-master/mjpg-streamer-experimental/plugins/input_raspicam目录)
sudo nano input_raspicam.
(用nano编辑input_raspicam.c文件)
进入nano页面后,按下ctrl+w(搜索),输入fps,回车,可看到如下界面
fps.png

将fps,width,height设置成图片那样

然后按ctrl+x,再按y,再回车(保存,退出)

4.编译mjpg软件

在树莓派上执行:
cd ../
cd ../(没错,同一个命令执行两次)
sudo make clean all

5.制作mjpg的启动脚本

在树莓派上执行:
cd  
sudo nano webcam.sh
将下面两条命令复制进去
cd mjpg-streamer-master/mjpg-streamer-experimental
./mjpg_streamer -i "./input_raspicam.so" -o "./output_http.so -w ./www"
像上面一样,按ctrl+x,再按y,再回车(保存,退出)
继续,在树莓派上执行:
sudo chmod 744 webcam.sh

6.执行mjpg的启动脚本(启动mjpg)

在树莓派上执行:
sudo sh webcam.sh
最后,在浏览器上打开:(我用的是谷歌浏览器)

树莓派的ip:8080

QQ浏览器截图20180731155103_眸目压缩.jpg


7.停止

ctrl+c就可以停止了


8.解决网页播放不能全屏的缺点

windows电脑下载VLC播放器,打开网络串流,输入地址http://树莓派IP:8080/?action=stream 即可全屏播放,至此,树莓派监控完美实现。



最后编辑于:2018/07/31作者: admin

发表评论