【问题标题】:gstreamer: cannot launch rtsp streaminggstreamer:无法启动 rtsp 流
【发布时间】:2013-10-18 23:29:47
【问题描述】:

我是 gstreamer 的新手。虽然这听起来像是一个非常入门级的问题,但到目前为止我还没有找到明确的答案。

我尝试根据一些示例启动如下所示的服务器。

$ gst-launch-1.0 -v videotestsrc ! x264enc ! rtph264pay name=pay0 pt=96 ! udpsink rtsp://127.0.0.1:8554/test

然后我使用 VLC 作为客户端(在同一台计算机上)。

$ vlc rtsp://127.0.0.1:8554/test

VLC 报告“无法连接...”的错误。但是如果我在第一步中使用“test-launch”,它就可以正常工作。

另一个问题是除了VLC,我尝试这样启动客户端。

$ gst-launch-1.0 rtspsrc location=rtsp://127.0.0.1:8554/test ! rtph264depay ! ffdec_h264 ! xvimagesink

但是 gstreamer 抱怨没有元素“ffdec_h264”和没有元素“xvimagesink”。

关于更多信息,我安装了“gstreamer”和“gst-plugins-base/good/bad/ugly”,均来自 git(1.2 版本)。

非常感谢您的提示。

【问题讨论】:

    标签: stream gstreamer rtsp


    【解决方案1】:

    ffdec_h264 来自 gst-0.10,因此您需要在 gst-1.0 中使用 avdec_h264。另一方面,我习惯在我的 udp 流中将 autovideosink sync=false 作为管道接收器播放。

    gst-rtsp-0.10.8/examples 中有一个示例代码可以帮助您使用 rstp 流服务器,但我建议您在 gstreamer 中使用 udpsrc 接收流以减少延迟(在源代码中使用 -v 选项查看caps参数并在receiver中配置)。

    如果您希望 VLC 播放您的 rtsp 流,您需要根据您的 rtsp 流会话定义 .sdp 文件。

    您应该看到这个问题以了解更多信息: GStreamer rtp stream to vlc

    【讨论】:

    • 我放弃了。我应该只使用“test-launch”来满足我的测试目的。不过还是谢谢。
    【解决方案2】:

    我不了解 VLC,但就 gstreamer 启动线而言,您似乎缺少 ffmpeg 包。您可能可以在与其他插件相同的位置找到它。

    另外,将 xvimagesink 替换为 autovideosink,它将使用您可用的任何接收器。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-10-11
    • 2014-01-04
    • 1970-01-01
    • 2012-11-03
    • 2017-10-24
    • 1970-01-01
    • 2017-10-23
    • 1970-01-01
    相关资源
    最近更新 更多