我有一台 PC,它使用调用 FFmpeg 的 .NET Core C# 应用程序读取 6 个 RTSP 流并将其保存到硬盘驱动器。这几乎不占用 PC 上的任何 CPU,并且运行良好。
我想知道树莓派是否可以用 USB 硬盘完成这项任务?
每个摄像机返回 3.2 Mb/s 的网络流量,并按照任务管理器以 0.4 MB/s 的速度向驱动器写入。
我会有几个选择,并且愿意接受其中之一,
- 让 .NET core 在 pi 上运行,并按当前状态运行应用程序
- 放弃 .NET 核心应用程序,编写一些在 Linux 中本地运行的东西来调用 ffmpeg(不确定它会是什么样子,但像 python 或其他脚本)
- 使用 Windows IoT 核心,但我不确定 FFmpeg 在这种情况下是否可以工作?
我所有的 .NET core 应用程序都这样做,
- 启动 ffmpeg 录制 1 条流,15 分钟后停止
- 14 分 30 秒后开始新录音(以创建重叠)
- 如果 ffmpeg 在任何时候断开连接或停止,则提前启动它
目前我不太担心细节。只是从性能角度来看,pi 是否能够处理运行 6 个 ffmpeg 实例以保存 RTSP 流。
无需重新编码。这是直接复制。
此时我会考虑 Raspberry Pi 3,但如果它成功的可能性更大,我也会考虑等待 Pi 4。
答案1
不幸的是我还没有回答这个问题。我所做的就是重新利用双核奔腾机器并安装 Linux 发行版 KDE Neon。
我有一堆 dotnet core 代码来记录我的相机,我很高兴地报告,FFMpeg 与我的 dotnet core 代码在 KDE Neon 上运行良好,只需很少的修改。KDE Neon 基于 LTS Ubuntu 构建,非常稳定。
RTSP 好坏参半,一些较便宜的相机效果也参差不齐。但使用 FFMpeg 的这个设置效果很好。
我将寻找其他可以用我的 Raspberry Pi 来做的事情。