2015-10-08 36 views
0

我想建立一个通过网络发送带有gstreamer 1.0的mpeg文件的管道。我已经尝试了一些管道和示例,但这些元素既不知道,也不能链接两个元素。压缩MPEG流并通过网络发送gstreamer

有人可以给我看一个用于发送和接收udp协议的管道吗?或者有些给我一些提示?

我目前使用的Ubuntu 14.04

回答

0

它总是最好添加你的代码/你试过脚本和错误消息。继对我的作品,例如,

发送方:从视频文件,编码在H.264,包的原始视频在RTP和转储到UDP端口5000,

gst-launch-1.0 uridecodebin uri=file://`pwd`/sample.mpg ! x264enc ! h264parse ! rtph264pay ! udpsink host=127.0.0.1 port=5000 

接收侧:读RTP来自UDP端口5000的数据包,获取视频数据(以GStreamer术语取代),解码为原始视频并播放。

gst-launch-1.0 udpsrc port=5000 ! application/x-rtp, encoding-name=H264,payload=96 ! rtph264depay ! decodebin ! autovideosink 
+0

非常感谢您的回答Baris。我已经找到了一种建立良好管道的方法。我想推荐那些仍在搜索的人,在src和rtpdepay之间添加一个rtpjitterbuffer。这样可以让你避免视频滞后和管道末端的sync = false(因为这是一个丑陋的解决方法,以避免视频滞后)。 – Archimedes