【技術方案】一對一或一對多音視頻通話會議系統,可以通過哪些方式實現?

講到音視頻互動通話系統,目前市面上出現比較多的有兩種,一種是基於WebRTC的視頻互動系統,另一種是RTMP/RTSP的一對一互動。由於近期TSINGSEE青犀視頻研發團隊在對這個做研究,因此我們也和大家探討對比一下這兩個互動系統。

104.png

WebRTC

很多互動系統都是基於webrtc做的,其最大的優點就是方便。現在WebRTC技術內置於瀏覽器中,用戶不需要使用任何插件或者軟件就能通過瀏覽器來實現實時通信。對於開發者來說,在Google將WebRTC開源之前,瀏覽器之間實現通信的技術是掌握在大企業手中,這項技術的開發是一個很困難的任務,現在開發者使用簡單的HTML標籤和JavaScript API就能夠實現Web音/視頻通信的功能。

但是在視頻流傳輸方面,webrtc也有其不可避免的缺陷,其服務器部署非常複雜,不利於私有部署,在一些私密性高的場景下,無法使用,如公安、市政等體系;傳輸基於UDP,很難保證傳輸質量,由於UDP是不可靠的傳輸協議,在複雜的公網網絡環境下,各種突發流量、偶爾的傳輸錯誤、網絡抖動、超時等都會引起丟包異常,都會在一定程度上影響音視頻通信的質量;且整個框架體系也不夠靈活。

105.png

RTMP/RTSP

基於現有RTMP、RTSP推送、或內置RTSP服務、播放成熟的開發包,產品穩定度高,行業內首屈一指的超低延遲特性; 加入噪音抑制、迴音消除、自動增益控制等特性,確保通話效果;採用通用的RTMP和RTSP服務器,如nginx、SRS或 Darwin Stream Server(原生版本),更有利於私有部署。

總結

不管以上哪種實現邏輯,具體都是涉及以下部分:採集端,獲取原始的yuv/rgb數據,h.264/h.265編碼打包成需要的格式,如按照rtmp或rtsp打包併發送數據;拉流端,通過rtsp或者rtmp協議,獲取到數據,並進行音視頻數據parser,然後解碼,解碼後的原始數據,繪製即可。

微信截圖_20201020104825.png

EasyRTC就是TSINGSEE青犀視頻雲邊端架構產品中的網頁實時互動通話系統,綜合了webrtc和rtmp/rtsp方案的優點,支持一對一、一對多等視頻會議互動通話,滿足語音社交、在線教育和培訓、視頻會議和遠程醫療等場景。

EasyRTC.png

EasyRTC的視頻傳輸總體可劃分成三個部分:
1.用戶端通過使用手機、電腦等終端設備,向EasyRTC推數據流;
2.EasyRTC視頻會議雲服務通過降噪、增加、回聲消除等手段處理接收的數據流,再推送給其他終端的用戶;
3.客戶端(Windows、Android、iOS、H5)接收EasyRTC傳出的數據,從而完成一整個視頻通話。


如果大家有此類需求,歡迎聯繫我們瞭解,EasyRTC提供試用版本供大家測試,歡迎諮詢。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章