如何使用 GStreamer 从 IP RTMP 摄像机流式传输到 v4l2loopback 摄像机?

Posted

技术标签:

【中文标题】如何使用 GStreamer 从 IP RTMP 摄像机流式传输到 v4l2loopback 摄像机?【英文标题】:How to use GStreamer to stream from IP RTMP Camera to v4l2loopback Camera? 【发布时间】:2020-08-01 20:16:42 【问题描述】:

我正在尝试使用 GStreamer 将 RTMP/RTSP 流连接到 v4l2loopback 虚拟设备。

作品 1 - RTMP 到 AutoVideoSink sudo gst-launch-1.0 rtspsrc location=rtsp://192.168.xxx.xxx/live/av0 !解码器!自动视频接收器 sudo gst-launch-1.0 rtmpsrc location=rtmp://192.168.xxx.xxx/live/av0 !解码器!自动视频接收器

作品 2 - TestSrc 到 Dummy Video5 sudo gst-launch-1.0 videotestsrc ! v4l2sink device=/dev/video5

不起作用 - RTMP 到 Dummy Video5 - 没有错误但不显示视频 sudo gst-launch-1.0 rtspsrc location=rtsp://192.168.xxx.xxx/live/av0 do-timestamp=true protocols="tcp" ! rtph264depay! h264解析!解码器! v4l2sink device=/dev/video5

我高度怀疑 Gstreamer 的某些参数是必需的,但我不知道。 因为日志文件中有很多关于未知像素格式、默认值等的条目。

请您给我一些关于设置哪些参数的指示吗? 来源是支持 RTMP 和 RTSP 的高质量 PTZ 摄像机。 Sink 是 V4L2 环回设备。

【问题讨论】:

【参考方案1】:

您可能需要在decodebin 之后添加videoconvert

尝试使用GST_DEBUG=3 运行您的管道,这将为您提供有关上限协商失败原因的更多信息!

【讨论】:

以上是关于如何使用 GStreamer 从 IP RTMP 摄像机流式传输到 v4l2loopback 摄像机?的主要内容,如果未能解决你的问题,请参考以下文章

GStreamer画中画rtmp转rtmp

AR Drone 2.0、Gstreamer、C++ RTMP 服务器(无需 SDK 的流式传输)

在 RTMP 流上添加时间叠加的 Gstreamer 问题

通过 GStreamer 和 Python 实现 RTMP

如何通过动态链接在 GStreamer 合成器中正确播放视频?

如何在 kurento 媒体服务器中进行 rtmp 流式传输?