我有几个 Eufy Cam 2 Pro。我想将 RTSP 流录制到我的 NAS。
我尝试过内置的NAS服务(仅适用于synology)以及许多开源视频录制软件,但都存在不同的问题。
因此,我想使用一些简单的开源东西并将摄像机流记录到我的通用内部存储器中。
主要问题似乎是 Eufy 摄像头仅在内部触发时传输视频以节省电池寿命。
通过反复试验和无数个小时的努力,我终于找到了一组可以记录流发生的命令:
openRTSP -t -b 10000000 -B 10000000 -v -H rtsp://user:password@cam_IP/path | ffmpeg -i - -c:v copy cam_name-$(date +"%Y-%m-%d-%H-%M-%S").mp4
问题是,如果流未处于活动状态,则会出现错误并停止“监听”。我打算尝试创建一个每隔几秒运行一次的脚本,并在运行 openRTSP 之前先查看 openRTSP 是否已在运行。
这似乎是一个非常新手/不雅的解决方案,但我找不到一个 openRTSP 开关(或其他解决方案),它只是不断监听流并在发送时将它们记录到单独的文件中。
非常感谢所有的帮助。
谢谢。
答案1
为什么不只使用带有合适选项的 openRTSP?
$ openRTSP -D 1 -c -B 10000000-b 10000000 -q -Q -F ip_cam -d 28800 -P 900 -t rtsp://192.168.xx.xx/11
一些选项的解释:
-D 1 # Quit if no packets for 1 second or more
-c # Continuously record,after completion of -d timeframe
-B 10000000 # Input buffer of 10 MB
-b 10000000 # Output buffer 10MB (to file)
-q # Produce files in QuickTime format
-Q # Display QOS statistics
-F ip_cam # Prefix output filenames with this text
-d 28800 # Run openRTSP 28800 seconds
-P 900 # Start a new output file every 900 seconds
-t # Request camera end stream over TCP, not UDP (slower but packets are checked)
rtsp://192.168.xx.xx/11 # Camera's RTSP URL
这对我来说很有效,使用 iegeek g20 ip 摄像头和旧 rpi 2,它会监听流并将它们记录到单独的文件中。一种贫民窟廉价的 rpi nvr。有几种不同的配置和选项我不使用,只是探索它们。 http://www.live555.com/openRTSP/
或者你也可以使用 ffmpeg
ffmpeg -i "rtsp://192.168.xx.xx/11" -c copy -reset_timestamps 1 ip_cam_file.avi
请记住,您可以在此处将 rstp 地址的分辨率从 11 更改为 12。
答案2
这很可能是硬件限制,例如常规泛光灯无法使用 RTSP室内摄像头将连续 RTSP 流降低到仅 1080p。可能是因为 CPU 无法处理,因此永远不会通过软件更新打开。太糟糕了,因为没有真正的替代泛光灯可以实现 24/7 RTSP 和本地存储或 PoE 数据。