小编Dav*_*vid的帖子

如何使用 FFMPEG 向来自网络摄像头 (v4l2) 的实时流添加延迟?

如何使用 FFMPEG 为从(v4l2)网络摄像头发送到媒体服务器的流添加延迟?

这里的用例类似于安全摄像头,当在视频中检测到某些内容时,我希望能够将视频流式传输到服务器。确保在视频中捕获感兴趣的事件的最简单方法是使用 FFMPEG 将视频从摄像机流式传输到具有附加延迟的虚拟环回设备。然后,当发生感兴趣的事件时,该环回设备可用于启动实时流媒体。

在 GStreamer 中,我将使用queue元素的min-threshold-time参数完成此类延迟。例如,以下(大大简化的)示例管道在显示之前为来自 v4l2 网络摄像头的输出添加了 2 秒延迟:

gst-launch-1.0 v4l2src device=/dev/video1 ! queue max-size-buffers=0 max-size-time=0 max-size-bytes=0 min-threshold-time=2000000000 ! xvimagesink

我如何用 FFMPEG 完成同样的事情?有一些技术挑战阻止我们为此使用 GStreamer。

我已经调查了这个itsoffset选项,但据我所知,它仅可用于已录制的文件,目前尚不清楚什么是好的替代方案。

ffmpeg video-streaming gstreamer v4l2loopback

1
推荐指数
1
解决办法
2881
查看次数

标签 统计

ffmpeg ×1

gstreamer ×1

v4l2loopback ×1

video-streaming ×1