gstreamer:无法启动rtsp流媒体

时间:2013-10-11 01:13:54

标签: stream gstreamer rtsp

我是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报告“无法连接...”错误。但如果我在第一步中使用“测试启动”,它就可以正常工作。

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

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

但是gstreamer没有抱怨任何元素“ffdec_h264”而没有元素“xvimagesink”。

有关额外信息,我从git(1.2版本)安装了“gstreamer”和“gst-plugins-base / good / bad / ugly”。

非常感谢您的提示。

2 个答案:

答案 0 :(得分:0)

我不知道VLC,但就gstreamer发射线而言,你似乎错过了ffmpeg包。你可以在找到其他插件的同一个地方找到它。

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

答案 1 :(得分:0)

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

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

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

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