压缩mpeg流并通过网络gstreamer发送

压缩mpeg流并通过网络gstreamer发送,gstreamer,mpeg,gst-launch,Gstreamer,Mpeg,Gst Launch,我想构建一个管道,通过网络发送带有gstreamer 1.0的mpeg文件。我尝试了一些管道和示例,但既不知道元素,也无法链接两个元素 有人能给我举一个发送端和接收端udp协议的例子吗?还是有人给我一些提示 我目前正在使用Ubuntu 14.04,最好添加您尝试过的代码/脚本以及收到的错误消息。比如说,我的作品如下: 发送方:从视频文件中获取原始视频,用H.264编码,用RTP打包并转储到UDP端口5000 gst-launch-1.0 uridecodebin uri=file://`pwd`

我想构建一个管道,通过网络发送带有gstreamer 1.0的mpeg文件。我尝试了一些管道和示例,但既不知道元素,也无法链接两个元素

有人能给我举一个发送端和接收端udp协议的例子吗?还是有人给我一些提示


我目前正在使用Ubuntu 14.04,最好添加您尝试过的代码/脚本以及收到的错误消息。比如说,我的作品如下:

发送方:从视频文件中获取原始视频,用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
接收器端:从UDP端口5000读取RTP数据包,以GStreamer术语获取视频数据depay,解码成原始视频并播放

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

非常感谢你的回答,巴里斯。我已经找到了一种建造好管道的方法。我想向那些仍在搜索的人推荐,在src和rtpdepay之间添加一个rtpjitterbuffer。这将允许您避免视频中的延迟,并在管道末端使用sync=false,因为避免视频中的延迟是一个丑陋的解决方法。