我使用这些命令发送和接收rtp数据:
将rtp数据发送到UDP端口5000
从udp端口5000接收rtp数据并播放。
gst-launch-1.0 -v filesrc location = haizeiwang.mp4 ! decodebin ! x264enc ! rtph264pay ! udpsink host=192.168.1.101 port=5000
但我只能得到视频(不太清楚),而且没有声音。我可以同时获得视频和音频吗?我应该使用哪些元素?命令应该是什么?
谢谢。
答案 0 :(得分:3)
发件人(音频+视频):
gst-launch-1.0 -v uridecodebin name=uridec uri=file:///C:\\video.mp4 ! videoconvert ! x264enc noise-reduction=10000 tune=zerolatency byte-stream=true threads=4 key-int-max=15 intra-refresh=true ! mpegtsmux alignment=7 name=mux ! rtpmp2tpay ! queue ! udpsink host=127.0.0.1 port=5000 sync=true uridec. ! audioconvert ! voaacenc ! audio/mpeg ! queue ! mux.
接收器(音频+视频,简短版):
gst-launch-1.0 -v playbin uri=udp://127.0.0.1:5000
接收器(音频+视频,长版):
gst-launch-1.0 -v udpsrc port=5000 ! tsparse ! decodebin name=dec ! videoconvert ! autovideosink sync=true dec. ! queue ! audioconvert ! audioresample ! autoaudiosink sync=true
如果您可以通过cmd-line访问 VLC ,则可以使用以下命令播放该流:
vlc rtp://@:5000
或者只是转到VLC图形界面 Open Network Stream (CTRL + N)并使用我在上面分享的地址。