- WebRTC 教程
- WebRTC - 首頁
- WebRTC - 概述
- WebRTC - 架構
- WebRTC - 環境
- WebRTC - MediaStream API
- WebRTC - RTCPeerConnection API
- WebRTC - RTCDataChannel API
- WebRTC - 傳送訊息
- WebRTC - 信令
- WebRTC - 瀏覽器支援
- WebRTC - 移動裝置支援
- WebRTC - 影片演示
- WebRTC - 語音演示
- WebRTC - 文字演示
- WebRTC - 安全性
- WebRTC 資源
- WebRTC - 快速指南
- WebRTC - 有用資源
- WebRTC - 討論
WebRTC - 概述
隨著WebRTC(Web 即時通訊)的出現,網路不再與即時通訊隔絕。儘管它於 2011 年 5 月釋出,但它仍在不斷發展,其標準也在不斷變化。一組協議由IETF(網際網路工程任務組)的http://tools.ietf.org/wg/rtcweb/處的網路瀏覽器中的即時通訊工作組標準化,而新的 API 集則由W3C(全球資訊網聯盟)的http://www.w3.org/2011/04/webrtc/處的Web 即時通訊工作組標準化。隨著 WebRTC 的出現,現代 Web 應用程式可以輕鬆地將音訊和影片內容流式傳輸到數百萬人。
基本方案
WebRTC 允許您快速輕鬆地建立到其他 Web 瀏覽器的點對點連線。要從頭開始構建這樣的應用程式,您將需要大量的框架和庫來處理諸如資料丟失、連線斷開和 NAT 穿越等典型問題。使用 WebRTC,所有這些都內建在瀏覽器的開箱即用功能中。這項技術不需要任何外掛或第三方軟體。它是開源的,其原始碼可在http://www.webrtc.org/.免費獲得。
WebRTC API 包括媒體捕獲、音訊和影片的編碼和解碼、傳輸層以及會話管理。
媒體捕獲
第一步是訪問使用者裝置的攝像頭和麥克風。我們檢測可用裝置的型別,獲取使用者訪問這些裝置的許可權並管理流。
音訊和影片的編碼和解碼
透過網際網路傳送音訊和影片資料流並非易事。這就是編碼和解碼發揮作用的地方。這是將影片幀和音訊波分解成更小的塊並壓縮它們的過程。此演算法稱為編解碼器。有大量的不同編解碼器,由不同公司維護,具有不同的業務目標。WebRTC 內部也有許多編解碼器,如 H.264、iSAC、Opus 和 VP8。當兩個瀏覽器連線在一起時,它們會在兩個使用者之間選擇最優的支援的編解碼器。幸運的是,WebRTC 在幕後完成了大部分編碼工作。
傳輸層
傳輸層管理資料包的順序、處理資料包丟失以及連線到其他使用者。同樣,WebRTC API 使我們能夠輕鬆訪問告知我們連接出現問題的事件。
會話管理
會話管理處理管理、開啟和組織連線。這通常稱為信令。如果您將音訊和影片流傳輸給使用者,那麼傳輸輔助資料也是有意義的。這是透過RTCDataChannel API完成的。
來自 Google、Mozilla、Opera 等公司的工程師已經出色地將這種即時體驗帶到了 Web 上。
瀏覽器相容性
WebRTC 標準是 Web 上發展最快的標準之一,因此這並不意味著每個瀏覽器都同時支援所有相同的特性。要檢查您的瀏覽器是否支援 WebRTC,您可以訪問http://caniuse.com/#feat=rtcpeerconnection。在所有教程中,我建議您在所有示例中都使用 Chrome。
試用 WebRTC
讓我們立即開始使用 WebRTC。
點選“加入”按鈕。您應該會看到一個下拉通知。
點選“允許”按鈕開始將您的影片和音訊流式傳輸到網頁。您應該會看到您自己的影片流。
現在在新的瀏覽器選項卡中開啟您當前所在的 URL,然後點選“加入”。您應該會看到兩個影片流 - 一個來自您的第一個客戶端,另一個來自第二個客戶端。
現在您應該理解為什麼 WebRTC 是一款強大的工具。
用例
即時 Web 為一系列全新的應用程式打開了大門,包括基於文字的聊天、螢幕和檔案共享、遊戲、影片聊天等等。除了通訊之外,您還可以將 WebRTC 用於其他目的,例如 -
- 即時營銷
- 即時廣告
- 後臺辦公通訊(CRM、ERP、SCM、FFM)
- 人力資源管理
- 社交網路
- 約會服務
- 線上醫療諮詢
- 金融服務
- 監控
- 多人遊戲
- 直播
- 電子學習
總結
現在您應該清楚地瞭解 WebRTC 的含義。您還應該瞭解可以使用 WebRTC 構建哪些型別的應用程式,因為您已經在瀏覽器中嘗試過它了。總而言之,WebRTC 是一項非常有用的技術。