管道stdout到gstreamer

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了管道stdout到gstreamer相关的知识,希望对你有一定的参考价值。

美好的一天,

我试图让gst-launch(gstreamer)从stdout获取输入。网上的大多数示例都是关于从文件读取或从设备读取。有谁知道一个示例管道?

filesrc location="lowframe.h264"

要么

device=/dev/video0

有没有可以从stdout读取的?

答案

有一个名为fdsrc的GStreamer元素,允许您从(已打开的)文件描述符中读取。 stdin基本上是fd 0(在Linux / Mac等POSIX系统上;参见Wikipedia),所以你可以简单地使用类似下面的启动线:

curl http://example.com:8000/stream1.ogg ! gst-launch fdsrc fd=0 ! decodebin ! autoaudiosink

另一种方法是使用filesrc并从/dev/stdin读取支持它的系统,例如:

gst-launch filesrc location=/dev/stdin ! decodebin ! autoaudiosink < /path/to/file.mp3

/编辑发现有关fdsrc方法(这似乎是解决这个问题的更好方法)

以上是关于管道stdout到gstreamer的主要内容,如果未能解决你的问题,请参考以下文章

如何将 opencv mat 写入 gstreamer 管道?

处理 chrome 的 rtp 流需要哪些 gstreamer 管道设置?

带有 Gstreamer 流的 OpenCV 具有延迟、缓慢和伪影

sh 简单的gstreamer管道,用于将从网络摄像头捕获的视频录制到OGG,同时在屏幕上显示视频。

从 python 中的 opencv 写入 Gstreamer 管道

在 EOS 上用 Python 重启 GStreamer 管道