使用webrtc實時交流(1)

本系列文章翻譯自webrtc官網鏈接codelab。
https://codelabs.developers.google.com/codelabs/webrtc-web/#0
本人翻譯水平有限,本着翻譯過程就是學習過程的目的進行翻譯。若有不當之處,歡迎指出。

介紹

webrtc是一個開源項目,提供web層、(native)源碼層API,實現實時的音頻、視頻、數據交流。
JavaScript主要有以下API,點擊鏈接查看例子

有意思的例子2,能錄像還能把錄像下載。

webrtc可以使用在哪裏

安卓和桌面系統的Firefox, Opera, Chrome。在ios和安卓上支持native apps(原生開發)。

信令傳輸(signaling)

webrtc使用RTCPeerConnection在瀏覽器間傳輸媒體流,但同時還需要一個協調溝通,傳輸控制消息的機制,這個流程叫signaling。在codelab這裏我們使用Node實現,但還有很多其他選擇

什麼是STUN和TURN

webrtc基於p2p實現,用戶間儘量選擇最直接的路由連接(例如局域網)。但是現實世界中的網絡充滿了NAT網關和防火牆,在複雜的網絡情況下,p2p連接不能保證連接成功,所以需要後手。STUN服務器提供這樣一種容錯機制,通過webrtc APIS交換連接雙方所有的ip地址,儘可能的嘗試連接。一旦所有的連接嘗試都不成功,TURN作爲一箇中轉服務器的角色保證傳輸。詳細可看下面鏈接:
在互聯網中的webrtc

webrtc安全嗎

webrtc的組件都是加密的(估計指的是web api),只能通過https或者localhost調用。信令傳輸是你自己定義的,安不安全關我鳥事,你可以選擇安全性高的協議。

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