ORTC(對象RTC)以及WebRTC的未來

2014-09-01 13:50:35   作者:   來源:InfoQ.com   評論:0  點擊:


\

 

  第一版穩(wěn)定的ORTC(對象RTC)規(guī)范已經(jīng)發(fā)布。問題是,它會對WebRTC產(chǎn)生什么樣的影響呢?

  讓我們回顧一下,在2013年,Hookflash的首席架構(gòu)師Robin Raymond就表達了對于在WebRTC中使用SDP(會話描述協(xié)議)的不滿。他總結(jié)了自己關(guān)于SDP的問題,如下:

  • 不需要——太多高層次的API
  • 晦澀難懂的格式——遺留下來的,而且有問題
  • 要求沒有得到應(yīng)答
  • 不兼容
  • 缺少API契約
  • 無法真正解決與遺留系統(tǒng)兼容性的問題

  在接下來的幾個月間,其他成員加入進來,成立了W3C對象RTC (ORTC)社區(qū)小組,要定義“一系列WebIDL中的ECMAScript API,讓媒體可以從其他瀏覽器或者設(shè)備進行發(fā)送和接收”。該小組當(dāng)前擁有60名成員,包括微軟和Google,并且已經(jīng)產(chǎn)出了第一個穩(wěn)定的規(guī)范草案: 針對WebRTC的對象RTC(ORTC)API。

  Doug Mahugh(微軟)認為“ORTC現(xiàn)在已經(jīng)完成了足夠多的內(nèi)容,可以實現(xiàn)以獲取經(jīng)驗,從而可以號召更多人來對其進行實現(xiàn)。” 他概述了一些原因,來說明為什么ORTC有用:

  ORTC API很適合“移動優(yōu)先,云優(yōu)先”的世界,因為它支持高級視頻特性,像可伸縮的視頻編碼和simulcast。這些高級視頻技術(shù)已經(jīng)被證實難以在WebRTC 1.0中的SDP中以可互操作的方式支持。相對而言,在JavaScript對象API中利用這些高級視頻技術(shù)會更簡單。

  此外,ORTC FAQ中的問題,也讓大家發(fā)現(xiàn)需要創(chuàng)建新的web通信規(guī)范:

  通過JavaScript,ORTC可以更好地訪問更多控件。這樣,在web開發(fā)者構(gòu)建實時通信應(yīng)用程序和特性的時候,就有更多能力和靈活性。比方說:分層視頻編碼、根據(jù)每個軌道設(shè)置編碼格式等等。

并且

  ORTC的主要API都是用JavaScript編寫的。想要在WebRTC 1.0中修改同樣的控件,可能需要瀏覽源代碼的變化。當(dāng)我們問web開發(fā)者更喜歡哪種的時候,大多數(shù)人都說更喜歡在應(yīng)用程序中可以訪問更多控件,而不需要等瀏覽器或者其他軟件廠商的更新。

  既然微軟和Google都在推動ORTC,大家可能會想,WebRTC會走向何方? 由于多家瀏覽器廠商——Google、Mozilla、Opera、微軟——都已經(jīng)投入大量資金來支持WebRTC,所以它不會被拋棄,而是會做調(diào)整來支持ORTC。據(jù)Google的Justin Uberti所說,WebRTC 1.1會集成ORTC。因此,開發(fā)者不需要重新編寫他們的RTC應(yīng)用程序,但是還是建議轉(zhuǎn)而使用ORTC API,因為在瀏覽器中使用它更自然一些。

  在GitHub上有大量類庫幫助開發(fā)者使用ORTC: 針對客戶端的JavaScript shim library for WebRTC、針對服務(wù)端應(yīng)用程序的Node.js庫以及針對移動設(shè)備的C++ wrapper。

  據(jù)Uberti和Google的Serge Lachappelle所說,迄今為止已經(jīng)有大概450家公司開發(fā)了WebRTC應(yīng)用,并且有大概17億臺設(shè)備支持它(參見視頻@ 43m40s),到2018年,這個數(shù)量預(yù)計會增長到40億,因為在所有那些設(shè)備中,WebRTC會被用于視頻聊天,語音通話、文件共享等等,Google的一個團隊還演示通過WebRTC操作帶有3D攝像頭的路虎汽車。

相關(guān)閱讀:

分享到: 收藏

專題