【问题标题】:GStreamer Recording and Viewing Stream SimultaneouslyGStreamer 同时录制和查看流
【发布时间】:2016-05-26 20:40:54
【问题描述】:

我手头有一个奇怪的任务,我已经尝试了所有方法。我想知道你是否可以帮忙。

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

这可以查看它:

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

好的,太好了。现在同时保存。

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

帮助?

【问题讨论】:

  • superuser.com 上提问。
  • gst-launch-1.0 udpsrc 端口=5000 !应用程序/x-rtp,有效载荷 = 96 ! rtpjitterbuffer! rtph264depay! avdec_h264 !吨。三通名称=t! fpsdisplaysink sync=false text-overlay=false t. !文件接收位置=视频
  • @karlphillip 不,这对于 stackoverflow 来说是完美的;)gst-launch 是类似语言的脚本......只需检查一些 gstreamer 问题 - 他们通常使用 gst-launch 进行演示......

标签: gstreamer


【解决方案1】:

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

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

如下所述:

http://www.oz9aec.net/index.php/gstreamer/410-x264enc-problem-in-gstreamer-video-switcher-solved

该管道有两个处理速率截然不同的分支,因此您需要在渲染分支中设置 leaky 队列(并禁用时钟同步)。否则,此示例管道会阻塞。

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

Gstreamer 有时可能会令人困惑,但我真的建议您下次再多看看。 gstreamer-devel 邮件列表是一个很好的信息来源:http://gstreamer-devel.966125.n4.nabble.com/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多