我是一名冲浪/风筝冲浪者,我住在阿联酋。我正在尝试建立一个基本的气象站,可以提供风和网络摄像头的细节,地点是在一个偏远的地方。我正在使用一个PI41GB,我几乎准备好安装站在现场。我的技能是相当基本的,但这正是我所处的位置:
pi4运行ddns,因此它的动态地址可以通过端口转发远程访问-完成
weewx将风和天气信息从传感器上传到windguru-这正在进行中,将在本周末最后一部分到达时完成
motion eye提供摄像机1和摄像机2的视频流-完成并从LAN外部可见
运行apache/mysql/wordpress为人们提供一个基本的界面,让他们从浏览器中查看信息——几乎完成了。
现在,关于第三点。。。我注意到这是残废的圆周率。运行nmon我可以看到每台相机使用110%的CPU。这是一个最小的视频流设置和1fps的速率。由于两个摄像头都在运行,通过vnc或ssh几乎无法访问pi,而且它变得非常热-我需要在它冻结时继续重新启动它。
我不需要直播,我很乐意每30秒就有一张照片。即使我禁用了视频流并使用静态图像捕获,“运动”仍会使每台摄像机的CPU成本增加110%,仅用于监视它。有没有更好的软件可以让我使用?
我试图编辑sudo nano/etc/motion/motion.conf,希望减少motion初始化设备时使用的fps,但这不会影响CPU的使用。
需要注意的是,我的相机通过IP连接,而motion通过RTSP连接到设备://
如有任何建议,将不胜感激。
谢谢,
肖恩。
最佳答案
尝试使用UV4L和RPi_Web_Cam_界面作为运动的替代品。
RPIWCI在这个站点有很好的文档记录
https://elinux.org/RPi-Cam-Web-Interface
来自RPIWCI的预览mjpeg流可以在URLhttp://YourPiIP:Port/cam_pic_new.php
您可以使用piip:80/html/(将端口更改为转发端口)上预览/控制页底部的“相机控制”栏设置质量和大小
也有机会使用timelapse函数,它可能提供一个不同的路径来获取1fps jpeg流,我还没有尝试过。
我目前正在以1024x720~15fps的压缩质量将预览流30%传输到本地网络上的多个设备,而Pi4仅使用约10%的CPU。
其他评论。。。。。
你试过把Pi上的GPU内存分割设置为1024吗
你也试过在linux提示符下使用“top”命令来查看哪些进程正在使用所有的CPU吗?raspimjpeg在我的Pi4上使用了2%到3%的CPU。
希思,希望能帮上忙。
关于linux - 在pi上流式传输视频的更有效方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58263681/