我正在使用gstreamer,主要是播放音樂播放功能。使用gtreamer通過RTP進行MP3流式播放
我目前正在嘗試使用RTP通過局域網發送mp3流,但直到現在還沒有成功。
在發送端我用下面的管道:
GST推出-v filesrc位置=/my_music_file.mp3! ffdemux_mp3! rtpmpapay! udpsink端口= 6969主機= 192.168.0.200
在接收器側予使用下面的管道:
GST-發射-v udpsrc端口= 6969個帽=「應用程序/ x-RTP,媒體=(串)的音頻,時鐘速率=(int)90000,編碼名稱=(字符串)MPA,淨荷=(int)96,ssrc =(guint)1951256090,clock-base =(guint)1711290778,seqnum-base =(guint)24773 「! rtpmpadepay! flump3dec! pulsesink
目前顯然沒有錯誤從接收端輸出爲:
設置管道停頓了一下。
管道是活的,不需要PREROLL ...
設置管道玩....
新的時鐘:GstSystemClock
...但聲音聽到奇怪,就好像它已經發揮 太快。
我已經通過本地播放mp3文件測試過音頻。我也通過流wav /μLaw文件測試了rtp。所有這一切運作良好。
我試圖要面對的問題在其他方面,比如,我用下面的管道,taht與audiotestsrc/amrnb編解碼器工作良好:
GST推出gstrtpbin名= rtpbin audiotestsrc! amrnbenc! rtpamrpay! rtpbin.send_rtp_sink_0 rtpbin.send_rtp_src_0! udpsink host = 192.168.0.200 port = 5002 rtpbin.send_rtcp_src_0! udpsink port = 5003 host = 192.168.0.200 sync = false async = false udpsrc port = 5005! rtpbin.recv_rtcp_sink_1
但使用與跛腳同一管道時,再次在接收端也沒有錯誤,但有一個「太快了」輸出:
發件人: GST推出gstrtpbin名= rtpbin audiotestsrc! lamemp3enc! rtpmpapay! rtpbin.send_rtp_sink_0 rtpbin.send_rtp_src_0! udpsink host = 192.168.0.200 port = 5002 rtpbin.send_rtcp_src_0! udpsink port = 5003 host = 192.168.0.200 sync = false async = false udpsrc port = 5005! rtpbin.recv_rtcp_sink_1
Receiver: gst-launch -v udpsrc port = 5002 caps =「application/x-rtp,media =(string)audio,clock-rate =(int)90000,encoding-name =(string )MPA,淨荷=(int)96「! rtpmpadepay! flump3dec! pulsesink
任何人都可以知道我的管道有什麼問題嗎?
非常感謝您對我們的支持,
豪爾赫
嘿,我正在收到警告,當我試圖發送。如何解決這個警告。警告:錯誤的管道:沒有元素「ffdemux_mp3」。 – ams 2017-08-11 09:06:13