WebRTC,名稱源自網頁即時通信(英語:Web Real-Time Communication)的縮寫,是一個支持網頁瀏覽器進行實時語音對話或視頻對話的API。它於2011年6月1日開源並在Google、Mozilla、Opera支持下被歸入萬維網聯盟的W3C推薦標準android
1、引言 最近有在關注Google IO 2016的同窗應該知道,google發佈了新的一款視頻聊天工具Duo(http://www.coolapk.com/apk/com.google.android.apps.tachyon),這款應用是基於 Google全新的QUIC和WebRTC協議開發的,也就是咱們今天這篇文章須要介紹的主角WebRTC。ios
2、它是什麼 正如導語所言WebRTC是一種視頻通話的一種標準,目的是經過瀏覽器提供簡單的JS就能夠達到實時通信的能力.除了Safari以外,主流的Chrome,Firefox,Opera已經在最新的瀏覽器中支持WebRTC好久了,Firefox更利用WebRTC製做了Hello應用,有興趣的同窗能夠在Firefox瀏覽器的右上角找到它,並快速的發起一個視頻會議。git
3、過程描述 只須要作到如下的十步,你就能夠完成一個簡單的WebRTC視頻應用了。github
至此10步,咱們就完成了一個簡單的1:1視頻的過程了.web
4、主要的API描述瀏覽器
WebRTC原生APIs文件是基於WebRTC規格書[1]撰寫而成,這些API可分紅Network Stream API、 RTCPeerConnection、Peer-to-peer Data API三類。服務器
###Network Stream API### MediaStream
:MediaStream用來表示一個媒體數據流。 MediaStreamTrack
在瀏覽器中表示一個媒體源。session
###RTCPeerConnection### RTCPeerConnection
:一個RTCPeerConnection對象容許用戶在兩個瀏覽器之間直接通信。 RTCIceCandidate
:表示一個ICE協議的候選者。 RTCIceServer
:表示一個ICE Server。app
###Peer-to-peer Data API### DataChannel
:數據通道(DataChannel)接口表示一個在兩個節點之間的雙向的數據通道。工具
5、學習的資源
針對於WebRTC的愛好學習者,本文羅列了一些學習的資源(乾貨)供你們參考。
參考示例:
第三方接入服務:
書籍(PPT)下載:
##版權申明
版權歸原做者全部,這裏僅作收集整理,歡迎自由轉載-非商用-非衍生-保持署名和連接。
本文中內容將持續更新。
ps:本文做者系代碼牛(面對面的技術分享平臺)講師keepcleargas,正在進行基於WebRTC的學習和開發,有興趣的可關注 代碼牛 公衆號,獲取最新的WebRTC項目的最新博客信息.