GStreamer同时记录和查看流

GStreamer同时记录和查看流,gstreamer,Gstreamer,我手头有一项奇怪的任务,我什么都试过了。我想知道你是否能帮忙 我的任务是抓取RaspPi输出的流并将其保存到我的PC。但是,我需要同时查看和保存它 这可以用来查看它: gst-launch-1.0 udpsrc端口=5000!应用程序/x-rtp,有效载荷=96!rtpjitterbuffer!rtph264depay!avdec_h264!fpsdisplaysink sync=false文本覆盖=false 好的,很好。现在要同时保存它 我只是没有足够的经验来解决这个问题。我知道我必须使用“

我手头有一项奇怪的任务,我什么都试过了。我想知道你是否能帮忙

我的任务是抓取RaspPi输出的流并将其保存到我的PC。但是,我需要同时查看和保存它

这可以用来查看它:


gst-launch-1.0 udpsrc端口=5000!应用程序/x-rtp,有效载荷=96!rtpjitterbuffer!rtph264depay!avdec_h264!fpsdisplaysink sync=false文本覆盖=false

好的,很好。现在要同时保存它

我只是没有足够的经验来解决这个问题。我知道我必须使用“tee”命令。但这就是我所知道的


帮助?

这是一个测试管道,它呈现videotestsrc,对其进行编码,然后将其保存到磁盘:

gst-launch-1.0 -vv videotestsrc ! tee name=t ! queue leaky=1 ! autovideosink sync=false t. ! queue ! x264enc ! mpegtsmux ! filesink location=testvideo.mp4
如下文所述:

该管道有两个处理速率相差很大的分支,因此需要在渲染分支中设置一个泄漏队列(同时禁用时钟同步)。否则,此示例将阻塞管道

在您的问题中,您没有解释要保存的格式,但您可能希望将其保存为编码格式。我建议您使用
gst-inspect-1.0
并仔细阅读每个过滤器的规格,这样您就知道每个插件中使用的是哪种类型的buff。这将帮助您找到正确的插件,您需要连接到编码和保存流


Gstreamer有时会让人困惑,但我真的建议你下次再多看看。gstreamer-devel邮件列表是一个很好的信息来源:

这里有一个测试管道,它呈现videotestsrc,对其进行编码,然后将其保存到磁盘:

gst-launch-1.0 -vv videotestsrc ! tee name=t ! queue leaky=1 ! autovideosink sync=false t. ! queue ! x264enc ! mpegtsmux ! filesink location=testvideo.mp4
如下文所述:

该管道有两个处理速率相差很大的分支,因此需要在渲染分支中设置一个泄漏队列(同时禁用时钟同步)。否则,此示例将阻塞管道

在您的问题中,您没有解释要保存的格式,但您可能希望将其保存为编码格式。我建议您使用
gst-inspect-1.0
并仔细阅读每个过滤器的规格,这样您就知道每个插件中使用的是哪种类型的buff。这将帮助您找到正确的插件,您需要连接到编码和保存流


Gstreamer有时会让人困惑,但我真的建议你下次再多看看。gstreamer-devel邮件列表是一个很好的信息来源:

在superuser.com.gst-launch-1.0 udpsrc port=5000上询问此问题!应用程序/x-rtp,有效载荷=96!rtpjitterbuffer!rtph264depay!avdec_h264!T发球台名称=t!fpsdisplaysink sync=false文本覆盖=false t!文件链接位置=video@karlphillip不,这非常适合stackoverflow;)gst启动是脚本式语言。。只需检查一些gstreamer问题-他们通常使用gst launch进行演示..在superuser.com.gst-launch-1.0 udpsrc port=5000上问这个问题!应用程序/x-rtp,有效载荷=96!rtpjitterbuffer!rtph264depay!avdec_h264!T发球台名称=t!fpsdisplaysink sync=false文本覆盖=false t!文件链接位置=video@karlphillip不,这非常适合stackoverflow;)gst启动是脚本式语言。。只需检查一些gstreamer问题-他们通常使用gst启动进行演示。。