将MJPEG流式传输到文件,但仅保留最后x分钟

时间:2015-12-26 16:43:27

标签: curl ffmpeg mjpeg

我希望在检测到的动作上录制MJPEG流。但我的动作检测通知比动作发生的时间晚了几秒钟。

为了解决这个问题,我想一直记录,但只保留最后2分钟的镜头。

现在我用cURL进行无限下载,但我仍然坚持如何正确地将文件正面修剪为2分钟。

1 个答案:

答案 0 :(得分:4)

FFmpeg 中查看段muxer

使用段muxer ,可以捕获流并将其写入多个独立的文件。

您可能感兴趣的选项是segment_wrap

来自文档:

segment_wrap limit

Wrap around segment index once it reaches limit.

所以你可以这样使用ffmpeg

ffmpeg -i URL -c copy -f segment -segment_time 120 -segment_wrap 2 out_file

周期性地写两个文件。

每个文件的持续时间等于两分钟,并且在每个时刻至少持续两分钟的视频。

我当然明白这个解决方案很糟糕,但这是我可以提供的ffmpeg解决问题的唯一方法。