无论使用何种推流方式,我们要使用树莓派CSI摄像头时必须首先要进行一些设置

具体参考前面的博客:https://blog.csdn.net/zz531987464/article/details/83422794

1.raspivid工具推流-延迟大约170ms

该工具已经默认集成到了树莓派之中

  1. raspivid -t 0 -w 1280 -h 720 -fps 20 -o - | nc -k -l 8090

-t 表示延时;-o表示輸出;-fps 表示帧率;端口号为8090

-w表示图像宽度;,-h 表示图像高度,此处设置的分辨率为1280720;我们可以修改 -w 1920 -h 1080将分辨率设置为19201080

该命令执行玩后不会出现任何打印信息即可

在局域网内的linux主机上安装mplayer工具(sudo apt-get install mplayer),然后执行命令

  1. mplayer -fps 200 -demuxer h264es ffmpeg://tcp://192.168.31.166:8090

即会弹出一个显示树莓派实时视频流的窗口,而且延迟尚可,大概在200ms左右,基本上可以满足实时性的要求了。

2.mjpeg-streamer 视频监控-延时大约220ms

使用mjpeg-streamer可以建一个视频流服务,用来做远程监控,而且搭建监控的过程比较简单快捷。但是mjpeg-streamer不支持使用树莓派CSI接口的原装摄像头,因为rpicam不是V4L驱动,只能用usb接口的摄像头。

https://github.com/jacksonliam/mjpg-streamer

于是,我们可以在github上下载经过修改的支持树莓派CSI摄像头的mjpeg-streamer,具体网址如上

  1. sudo apt-get install cmake sudo apt-get install libjpeg8-devunzip mjpg-streamer-master.zipcd mjpg-streamer-master/mjpg-streamer-experimental./mjpg_streamer -i "./input_raspicam.so -fps 15 -x 640 -y 480" -o "./output_http.so -w ./www"

然后我们会看到执行后会打印相关日志:

树莓派直播推流---树莓派摄像头推流的几种方式_运维_galaxy-CSDN博客 - 图1

说明该mjpg-streamer工具推流正常,我们可以在局域网内的任意pc机的浏览器中输入: http://<树莓派ip地址>:8080即可看到摄像头的监控视频流了。

树莓派直播推流---树莓派摄像头推流的几种方式_运维_galaxy-CSDN博客 - 图2

如上所示,在网页中选择Stream就可以看到实时视频流图像监控了。

树莓派直播推流---树莓派摄像头推流的几种方式_运维_galaxy-CSDN博客 - 图3 树莓派直播推流---树莓派摄像头推流的几种方式_运维_galaxy-CSDN博客 - 图4

发布了62 篇原创文章 · 获赞 52 · 访问量 8万+