我正在尝试从 DM365 Board 获取 rtp 流。
使用 VLC 没有问题。流可以用 sdp 文件打开。它是使用 TI 特定的 h264 编码器 (TIVidenc1 codecName=h264enc) 和声音编码的摄像机视图。我正在开发一个应用程序,我想使用 gstreamer。我构建了一个 gstreamer 管道以在我的应用程序中嵌入稍后的视频。但我无法使用此管道打开流。 在 ubuntu 客户端管道上
gst-launch -v gstrtpbin name=rtpbin latency=200 \
udpsrc caps="application/x-rtp,media=(string)video,clock-rate=(int)90000,encoding-name=(string)H264" port=5000 ! rtpbin.recv_rtp_sink_0 \
rtpbin. ! rtph264depay ! decodebin ! xvimagesink \
udpsrc port=5001 ! rtpbin.recv_rtcp_sink_0 \
rtpbin.send_rtcp_src_0 ! udpsink port=5005 host=192.168.231.14 sync=false async=false \
udpsrc caps="application/x-rtp,media=(string)audio,clock-rate=(int)8000,encoding-name=(string)PCMA" port=5002 ! rtpbin.recv_rtp_sink_1 \
rtpbin. ! rtppcmadepay ! decodebin ! audioconvert ! audioresample ! alsasink \
udpsrc port=5003 ! rtpbin.recv_rtcp_sink_1 \
rtpbin.send_rtcp_src_1 ! udpsink port=5007 host=192.168.231.14 sync=false async=false
发件人是 DM365 管道如下:
发件人
gst-launch-0.10 gstrtpbin name=rtpbin
v4l2src always-copy=FALSE input-src=composite ! queue !
TIVidResize contiguousInputFrame=FALSE ! 'video/x-raw-yuv,width=608,height=384,format=(fourcc)NV12,bitRate=48100' !
TIVidenc1 codecName=h264enc engineName=encode contiguousInputFrame=TRUE ! rtph264pay ! queue !
rtpbin.send_rtp_sink_0 rtpbin.send_rtp_src_0 ! udpsink port=5000 host=192.168.231.255 ts-offset=0 name=vrtpsink rtpbin.send_rtcp_src_0 ! udpsink port=5001 host=192.168.231.255 sync=false async=false name=vrtcpsink udpsrc port=5005
name=vrtpsrc !
rtpbin.recv_rtcp_sink_0 alsasrc ! queue !
alawenc ! rtppcmapay ! queue !
rtpbin.send_rtp_sink_1 rtpbin.send_rtp_src_1 ! udpsink port=5002 host=192.168.231.255 ts-offset=0 name=artpsink rtpbin.send_rtcp_src_1 ! udpsink port=5003 host=192.168.231.255 sync=false async=false name=artcpsink udpsrc port=5007 name=artpsrc ! rtpbin.recv_rtcp_sink_1";