當前位置:
首頁 > 知識 > WebRTC 將一統實時音視頻天下?

WebRTC 將一統實時音視頻天下?

WebRTC 將一統實時音視頻天下?

WebRTC 將一統實時音視頻天下?

在迭代不休的技術蒼穹之中,要論 2019 年最火熱的技術,那麼非 5G 莫屬。5G 的到來,不僅強化了 4G 網路的穩定性、高頻傳輸技術,還為移動互聯網時代主流的短視頻、直播、雲遊戲等娛樂行業帶來更多的可能性。

而作為這些新興行業的支撐,不得不提及實時通信技術。對於諸多業界開發者而言,對實時通信其實也並不陌生,畢竟從騰訊 QQ 音視頻,到風靡國內的狼人殺、大吉大利的吃雞遊戲、線上抓娃娃、直播答題、線上 KTV,再到如今的微信小程序音視頻等,其背後都離不開實時音視頻的解決方案,更離不開 WebRTC 技術的支持。

對此,我們不禁產生疑問,WebRTC 究竟有何技術優勢可以征服各種應用程序?當前 WebRTC 的發展又處於一個什麼樣的階段?它是否有可能在未來實現瀏覽器、移動端的全面覆蓋?基於此,我們在今年由聲網 Agora 主辦的 AllThingsRTC 實時互聯網會議期間,採訪了微軟首席架構師 Bernard Aboba,探討 WebRTC 的前生今世以及在微軟新版 Edge 中 WebRTC 的應用現狀與下一步計劃。

WebRTC 將一統實時音視頻天下?

微軟首席架構師兼 W3C WebRTC 工作組聯合主席 Bernard Aboba


註:由聲網 Agora 主辦的 AllThingsRTC 實時互聯網會議已於 6 月 17 日在美國舊金山市中心 Parc 55 酒店落幕。作為全球首屈一指的實時音視頻技術盛會,此次會議彙集來自谷歌和微軟等財富 100 強科技公司的專家以及新興創業公司的企業家,以及遊戲社交直播 、AR/VR 等前沿技術和領域的一線技術專家。

WebRTC 將一統實時音視頻天下?

WebRTC 的前世

無論是在 PC 互聯網時代、移動互聯網時代,還是當下以雲計算、人工智慧、IoT 為主導的萬物互聯時代,WebRTC 的到來都是實時互聯網技術標準演進過程中至關重要的一個節點。

回憶 Web 的早期發展,設備和 Web 伺服器之間的通信非常有限。在訪問網站時,只有當用戶在地址欄中輸入新地址或點擊超鏈接時,瀏覽器才能與存儲網站的網路伺服器進行通信。而這就是靜態網頁需要運行的全部內容。

但是彼時的一些開發者意識到 Web 應該能以更具吸引力的方式實踐應用。正因此,為了使各大網站更具動態性和響應性,諸如 Ajax 類似的框架最終在 90 年代後期被相繼開發,從而瀏覽器也能夠實時地與 Web 伺服器通信、允許創建適當的 Web 應用程序或即時響應用戶操作。不過,彼時的實時通信技術在 Web 瀏覽器和伺服器之間仍存在很大的局限性。

具體而言,過去,兩個不同用戶的 Web 瀏覽器之間的通信速度很慢,因為其二者之間的所有流量都必須通過中間的伺服器,這產生了明顯的延遲。但是,我們也發現直接收發消息之類的延遲並不算是真正的問題。這是因為發送消息的一個用戶和接收消息的另一個用戶之間幾秒鐘的差異並沒有真正影響到整體的傳輸效果。但是,伺服器延遲導致了一系列的連接延遲,不過如果沒有這種延遲則無法實現用戶之間互相呼叫等實時視頻的服務。

如今 WebRTC 的出現,可以完全實現桌面和基於移動的多人多媒體聊天應用程序。

WebRTC 將一統實時音視頻天下?

WebRTC 的今生

那具體而言,到底何為 WebRTC?

WebRTC(Web Real-Time Communication,網頁即時通信),是一個支持網頁瀏覽器進行實時語音對話或視頻對話的技術。它的起源,要從 2010 年 Google 以 6820 萬美元收購 VoIP 軟體開發商 Global IP Solutions 的 GIPS 引擎談起,在經過收購之後沒多久,Google 將該引擎改名為「WebRTC」,並宣布向開發者們開源了源代碼。

2012 年,Google 將 WebRTC 集成到 Chrome 瀏覽器中。隨後,在它的帶動下,Mozilla、Opera、Ericsson 等 PC 瀏覽器以及手機瀏覽器均開始支持 WebRTC 技術。

2017 年,蘋果在 WWDC17 上正式宣布其瀏覽器內核 WebKit 也正式支持 WebRTC。

如今,繼去年微軟宣布 Edge 將採用 Chromium 開源項目之後,就 WebRTC 技術應用而言,Bernard Aboba 表示,「基於 Chromium 的新版 Edge 現在可在預覽版中使用。新版本的 Edge 提供了 WebRTC 開發者常用的許多功能,如支持數據通道、RTCPeerConnection 中的 Strem、VP9 編解碼器和 MediaStream Recording。」

事實上,除了以上的瀏覽器以及文章伊始提及國內主流的應用程序之外,在 Discord、Google Hangouts 和 Facebook Messenger 等一些國內的多媒體網路應用中,也都需要 WebRTC 才能實現。

WebRTC 將一統實時音視頻天下?

WebRTC 一統瀏覽器、移動端的實時音視頻天下?

按照這樣的發展趨勢,WebRTC 能否一舉成功奪下各層面的實時音頻霸主之位?

其實,在 WebRTC 的全名——Web Real Time Communication 中,我們從 Web 一詞就可以看出,最初這項技術是為瀏覽器量身打造用以實時音視頻能力而準備的。而 WebRTC 項目一開始的初衷也是讓 Web 開發者能夠基於如 Chrome、Edge、Firefox 等瀏覽器平台輕易快捷開發出豐富的實時多媒體應用,而無需下載安裝任何插件,Web 開發者也僅需關注多媒體的數字信號處理過程,只需編寫簡單的 JavaScript 程序即可實現。

不過,就瀏覽器應用而言,WebRTC 的發展還面臨著諸多的挑戰。對此,Bernard Aboba 表示:

  • 瀏覽器面臨的主要挑戰是完成 WebRTC 1.0 API 的實現,以及消除實現差異。為了達到提議標準,WebRTC 工作組需要記錄每個功能的兩個實現,並通過 Web 平台測試(WPT)的結果展示互操作性。當下,W3C 在實現這一目標方面一直在穩步前進,但在 WebRTC 以及 WebRTC-Stats 等相關規範方面仍有許多工作要做。

  • 其次,就 WebRTC 自身的發展而言,WebRTC API 在其歷史中經歷了三次主要迭代,最後一次迭代是 addTransceiver API,這是 WebRTC 1.0 候選推薦中的首選 API。隨著瀏覽器現在實施候選推薦標準並融合「Unified Plan」SDP,WebRTC 工作組正在為開發人員一直要求的互操作性方面而努力,並且 W3C 需要將規範推進到推薦的標準中。就需要改進的領域而言,W3C 仍然需要改進同步廣播等高級功能的測試覆蓋率,並將 WebRTC-Statistics 規範納入候選推薦標準中。

  • 當前實時音視頻通信領域,也並不只有 WebRTC 一種可供選擇的技術。事實上,在 WebRTC 誕生之前,很多領域的公司都有自己自研的通信協議。而如何保證自研協議與 WebRTC 協議在 Windows、Mac 等平台上做到互通?Bernard Aboba 建議道,專有的自研協議和 WebRTC 的互操作性通常使用網關實現。使用 Janus 等工具,開發人員可以通過在已建立的框架內構建模塊。但是,在各種情況下測試兼容性的任務仍然很困難。對此,Bernard Aboba 也表示,由 Cosmo Consulting 開發的測試框架(如 KITE)可能會有所幫助。

然而,除此之外,WebRTC 在移動端的應用也一直被開發者所詬病。針對這一點,Bernard Aboba 坦言道,「對移動或嵌入式設備優化 WebRTC,是一項重大的挑戰,尤其是在內存、應用程序大小,以及連接性和功耗等方面。」

不過當下,W3C 組織為了解決這些難題,該團隊的開發者們經常需要創建自定義構建,其中包含了許多更改改進,舉例說明,例如,Ortc Lib 創建了 OpenPeer Foundation 的 Robin Raymond,支持使用 ORTC API 在移動設備上進行開發,同時允許開發人員自定義庫,以便僅包含所需的功能。 事實證明這種方法非常成功。

熱 文推 薦

?小米崔寶秋:小米 AIoT 深度擁抱開源

?為什麼 C 語言仍然佔據統治地位?

?蘋果應用審核團隊:每人日審百款 App!

?華為在美研發機構 Futurewei 意欲分家?

?老司機教你如何寫出沒人敢維護的代碼!

?Python有哪些技術上的優點?比其他語言好在哪兒?

?上不了北大「圖靈」、清華「姚班」,AI專業還能去哪上?

?公鏈史記 | 從鴻蒙初辟到萬物生長的十年激蕩……

?邊緣計算容器化是否有必要?

?馬雲曾經偶像,終於把阿里留下的1400億敗光了!

WebRTC 將一統實時音視頻天下?

點擊閱讀原文,輸入關鍵詞,搜索CSDN文章。

WebRTC 將一統實時音視頻天下?

你點的每個「在看」,我都認真當成了喜歡

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 CSDN 的精彩文章:

為什麼 C 語言仍然佔據統治地位?
5G 來了,需要更換 SIM 卡嗎?

TAG:CSDN |