0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

探討下WebRTC可能將發(fā)生的變化

BYXG_shengwang ? 來(lái)源:未知 ? 作者:李倩 ? 2018-07-20 15:28 ? 次閱讀

在6月19日至20日,WebRTC 工作組進(jìn)行了一次臨時(shí)會(huì)議,討論 WebRTC 的未來(lái)。 所有瀏覽器供應(yīng)廠商都對(duì)WebRTC v1.0做出了很正向的評(píng)價(jià)。WebRTC v1.0在2018年6月更新修復(fù)了多個(gè) bug。WebRTC v1.0新 API 包括:

RTCRtpSender.setStreams()RTCRtpTransceiver.currentDirectionRTCSctpTransport.maxChannelsRTCPeerConnection.onstatsendedRTCStatsEvent interface

在本文中,我們一起來(lái)探討下 WebRTC 可能將發(fā)生的變化。

WebRTC的應(yīng)用場(chǎng)景

在我們討論 WebRTC API 未來(lái)的變化之前,我們應(yīng)該考慮它的實(shí)際應(yīng)用。當(dāng)我們?cè)?011年構(gòu)建 WebRTC v1.0時(shí),我們僅討論了幾個(gè)應(yīng)用場(chǎng)景。自2011年以來(lái),行業(yè)發(fā)生了許多變化,其中最引人注目的就是移動(dòng)互聯(lián)網(wǎng)。我們可以通過(guò)移動(dòng)應(yīng)用、虛擬現(xiàn)實(shí)、增強(qiáng)現(xiàn)實(shí)和其他方式,為最終用戶提供完全身臨其境的體驗(yàn)。我們還發(fā)現(xiàn)圖片的重要性也越發(fā)明顯,交互式網(wǎng)站也逐漸成為互聯(lián)網(wǎng)的新常態(tài)。因此,對(duì)于現(xiàn)在的 WebRTC API,及其未來(lái)可能出現(xiàn)的任何變化,都應(yīng)該以這些新的應(yīng)用趨勢(shì)作為出發(fā)點(diǎn)來(lái)考慮。

不過(guò),遺憾的是,現(xiàn)在的 WebRTC API 還無(wú)法很好地實(shí)現(xiàn)或適應(yīng)其中部分應(yīng)用場(chǎng)景。因此,我們需要強(qiáng)化 API 的能力。這種強(qiáng)化主要涉及兩方面:應(yīng)用場(chǎng)景和開(kāi)發(fā)易用性。

媒體與數(shù)據(jù)的統(tǒng)一

這次會(huì)議也廣泛討論了媒體與數(shù)據(jù)的統(tǒng)一,包括幾方面:

多個(gè)媒體流與數(shù)據(jù)流的同步;

IoT 設(shè)備通信;

直播;

游戲,包括VR/AR;

media pipline 的控制

為了可以更好地控制 media pipline,會(huì)議上討論了幾個(gè)策略,包括:

可插拔擁塞控制(Pluggable Congestion Control):有幾個(gè)可插拔擁塞控制的支持者,包括 Callstats.io。支持它的主要原因之一就是會(huì)采用多路徑協(xié)議來(lái)做多媒體實(shí)時(shí)通訊。 我們?cè)谶@個(gè)領(lǐng)域有長(zhǎng)期的投入,包括在多媒體擁塞控制和相關(guān)優(yōu)化方面的工作。

取代瀏覽器實(shí)現(xiàn)的算法:能夠取代瀏覽器實(shí)現(xiàn)的算法,意味著開(kāi)發(fā)者將能使用自己的 jitter buffer、FEC算法(例如 LDPC,Raptor 等),編碼器和解碼器(編解碼器)等。

WebRTC 下一步的演進(jìn)

在會(huì)議上,Google 的 Peter Thatcher 提出了很多 WebRTC 下一步演進(jìn)的可能性。我們接下來(lái)逐一來(lái)聊聊這些提議。

請(qǐng)記住,隨著 API 的每一次更新,應(yīng)用開(kāi)發(fā)者都將得到對(duì)信道更好的控制。同時(shí),也意味著 API 將變得更加復(fù)雜,但對(duì)信令的把控上將更可靠且靈活。

通常來(lái)講,我們認(rèn)為應(yīng)用開(kāi)發(fā)者獲得的可控性越高,就越能開(kāi)發(fā)出好的產(chǎn)品。首先,要降低一些協(xié)議和算法為瀏覽器開(kāi)發(fā)帶來(lái)的復(fù)雜度。

其次,Web 開(kāi)發(fā)者已經(jīng)知道如何通過(guò) shim 來(lái)進(jìn)行更好的開(kāi)發(fā),并讓其也能被其它開(kāi)發(fā)者復(fù)用。

ORTC

在 ORTC 中首次提出的幾個(gè)對(duì)象被添加到WebRTC v1.0中。 ORTC 不使用 SDP 作為控制界面,開(kāi)發(fā)者可直接控制媒體和數(shù)據(jù)傳輸通道,這一點(diǎn)與 WebRTC v1.0完全不同。更多對(duì)象可被直接控制。例如,使用 ORTC,您可以使用和控制可擴(kuò)展的視頻編解碼器。

可插拔傳輸

考慮到進(jìn)一步拆分 media pipeline 的對(duì)象,可插拔傳輸可實(shí)現(xiàn)更多對(duì) media pipeline 控制功能。 例如,向編碼/解碼幀添加或移除元數(shù)據(jù),或?qū)γ襟w質(zhì)量進(jìn)行控制。

為了實(shí)現(xiàn)這一點(diǎn),并讓媒體傳輸更加可控。我們需要分別將編碼器和解碼器與 RTCRtpSender 和 RTCRtpReceiver 分隔開(kāi)。進(jìn)一步,我們可以將媒體和數(shù)據(jù)分開(kāi)傳輸,比如 RTP over UDP 或 QUIC 或 SCTP。 除了可插拔傳輸之外,這將能夠讓大規(guī)模會(huì)議服務(wù)使用不同的加密密鑰進(jìn)行 hop-by-hop 加密(通過(guò)DTLS / SRTP)和 end-to-end 加密。

媒體裸數(shù)據(jù)和完全控制

提供對(duì) pipeline 完整的控制權(quán)限,將讓 App 可以完全控制編碼和解碼、媒體擁塞控制、安全性(任何形式的加密),媒體幀的處理(如 FEC、RTX),以及解碼這一端的媒體同步等。這種靈活度的提升,也會(huì)需要 App 支持更多功能,需要在開(kāi)發(fā)方面下更多功夫,當(dāng)然,做與不做,這決定權(quán)也在開(kāi)發(fā)者的手上。

小結(jié)

將有兩個(gè)方面的變化:

音頻,視頻和數(shù)據(jù)的信道中的組件創(chuàng)建更多對(duì)象;

提供訪問(wèn)媒體裸數(shù)據(jù)的權(quán)限。

這些變化也將帶來(lái)一些疑問(wèn):

裸數(shù)據(jù)加密與否;

JavaScript 并不具備實(shí)時(shí)性。

關(guān)于安全性的討論,我們認(rèn)為媒體裸數(shù)據(jù)應(yīng)該是加密的,而且應(yīng)用不會(huì)接收未加密的數(shù)據(jù)。

關(guān)于JavaScript 的問(wèn)題。如果在主線程中管理完整的 pipeline,每秒將只能處理1幀,甚至更低。因此,我們需要一系列新的 JavaScript 和瀏覽器功能,比如 WebWorkers、WebAssembly(wasm)。除此之外,JavaScript 還會(huì)帶來(lái)其它問(wèn)題,在這種情況下, 也需要讓 Web 端能訪問(wèn)媒體流,App 端可以跟蹤預(yù)期任務(wù)狀態(tài)。

對(duì)這些 WebRTC 將可能發(fā)生的變化,以及我們更多關(guān)于未來(lái)實(shí)時(shí)互聯(lián)網(wǎng)變革的想法。我們將在 RTC 2018 實(shí)時(shí)互聯(lián)網(wǎng)大會(huì)上與大家進(jìn)行深入分享和探討。

Tips

Varun Singh 將在 RTC 2018 實(shí)時(shí)互聯(lián)網(wǎng)大會(huì)的“實(shí)時(shí)網(wǎng)絡(luò)與質(zhì)量專場(chǎng)”上分享更多干貨與 WebRTC 的近期動(dòng)態(tài),席位有限,希望深入了解的話,就趕快掃碼報(bào)名吧。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 編碼器
    +關(guān)注

    關(guān)注

    45

    文章

    3656

    瀏覽量

    134971
  • WebRTC
    +關(guān)注

    關(guān)注

    0

    文章

    57

    瀏覽量

    11268

原文標(biāo)題:WebRTC 工作組:我們相信 WebRTC 將會(huì)有這些革新

文章出處:【微信號(hào):shengwang-agora,微信公眾號(hào):聲網(wǎng)Agora】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    WebRTC的視頻部分有哪些功能?

    WebRTC的視頻部分有哪些功能?PTP/RTCP工作流程是怎樣的?
    發(fā)表于 06-15 07:31

    WEBRTC有哪幾種類型

    WEBRTC三種類型(Mesh、MCU 和 SFU)的多方通信架構(gòu)WebRTC 本身提供的是 1 對(duì) 1 的通信模型,在 STUN/TURN 的輔助,如果能實(shí)現(xiàn) NAT 穿越,那么兩個(gè)瀏覽器是可以
    發(fā)表于 11-01 06:34

    WebRTC技術(shù)相關(guān)資料推薦

    我們這里常說(shuō)的RTC可以理解為WebRTC技術(shù),因?yàn)?b class='flag-5'>WebRTC技術(shù)是目前使用最廣泛的即時(shí)通信技術(shù),雖然在早期我們提到WebRTC、提到視頻通話就會(huì)想到P2P的方式,但實(shí)際的視頻通話方式背后的邏輯有
    發(fā)表于 11-01 08:21

    WebRTC技術(shù)的應(yīng)用

    我們這里常說(shuō)的RTC可以理解為WebRTC技術(shù),因?yàn)?b class='flag-5'>WebRTC技術(shù)是目前使用最廣泛的即時(shí)通信技術(shù),雖然在早期我們提到WebRTC、提到視頻通話就會(huì)想到P2P的方式,但實(shí)際的視頻通話方式背后的邏輯有
    發(fā)表于 11-01 07:42

    WebRTC有哪些功能

    WebRTC 本身提供的是 1 對(duì) 1 的通信模型,在 STUN/TURN 的輔助,如果能實(shí)現(xiàn) NAT 穿越,那么兩個(gè)瀏覽器是可以直接進(jìn)行媒體數(shù)據(jù)交換的;如果不能實(shí)現(xiàn) NAT 穿越,那么只能通過(guò)
    發(fā)表于 11-03 08:16

    什么是WebRTC

    什么是WebRTCWebRTC,即Web Real-Time Communication(網(wǎng)頁(yè)即時(shí)通信)。它是一個(gè)開(kāi)源項(xiàng)目,旨在創(chuàng)建簡(jiǎn)單、標(biāo)準(zhǔn)化的流程通過(guò)Web提供實(shí)時(shí)通信(RTC)。WebRTC
    發(fā)表于 12-09 07:59

    如何使用WebRTC

    SRS 4.0與WebRTC音視頻通話1.音視頻高薪崗位都需要什么技能點(diǎn)2.WebRTC的技術(shù)點(diǎn)分析3.SRS4.0如何使用WebRTC視頻講解如下,點(diǎn)擊觀看:流媒體服務(wù)器開(kāi)發(fā)——SRS 4.0
    發(fā)表于 12-24 06:40

    webrtc流媒體轉(zhuǎn)發(fā)服務(wù)器是如何定義的

    webrtc流媒體轉(zhuǎn)發(fā)服務(wù)器定義難點(diǎn)建立連接如何轉(zhuǎn)發(fā)媒體流如何高效轉(zhuǎn)發(fā)媒體流轉(zhuǎn)發(fā)后如何保證視頻質(zhì)量定義由于webrtc是基于P2P技術(shù)的一個(gè)協(xié)議棧,大多數(shù)情況能滿足1-5人的同時(shí)并發(fā)音視頻通訊
    發(fā)表于 02-11 06:16

    WEBRTC有哪幾種類型

    WEBRTC三種類型(Mesh、MCU 和 SFU)的多方通信架構(gòu)WebRTC 本身提供的是 1 對(duì) 1 的通信模型,在 STUN/TURN 的輔助,如果能實(shí)現(xiàn) NAT 穿越,那么兩個(gè)瀏覽器是可以
    發(fā)表于 02-14 06:36

    WebRTC技術(shù)服務(wù)商:預(yù)測(cè)2018年WebRTC的5大趨勢(shì)

    也許對(duì)于大部分WebRTC的開(kāi)發(fā)者而言,2018年將是忙碌的一年。主流瀏覽器和蘋(píng)果官方支持,標(biāo)準(zhǔn)和API定型,WebRTC生態(tài)具備了快速發(fā)展的條件。WebRTC技術(shù)服務(wù)商“WebRTC
    的頭像 發(fā)表于 01-16 12:51 ?5961次閱讀

    WebRTC的獨(dú)特性及WebRTC的未來(lái)

    隨著Safari 11的發(fā)布,蘋(píng)果是最后一個(gè)將其瀏覽器與Edge瀏覽器兼容的公司。在這段時(shí)間里,WebRTC的使用率一直存在差距,因?yàn)镾afari是繼Chrome之后使用最多的瀏覽器。現(xiàn)在,WebRTC可以尋求得到廣泛的應(yīng)用,因?yàn)樗峁┝艘粋€(gè)無(wú)縫的解決方案,從不同的設(shè)備支
    的頭像 發(fā)表于 08-15 14:53 ?3490次閱讀

    當(dāng)應(yīng)用程序不能應(yīng)用于WebRTC補(bǔ)丁程序以及通信和安全問(wèn)題通知中斷時(shí)可能出問(wèn)題

    這是一個(gè)由三部分組成的系列文章,內(nèi)容涉及:利用WebRTC中的BUG和利用Messenger應(yīng)用程序。本系列文章重點(diǎn)闡述了當(dāng)應(yīng)用程序不能應(yīng)用于WebRTC補(bǔ)丁程序以及通信和安全問(wèn)題通知中斷時(shí)可能
    的頭像 發(fā)表于 09-16 18:17 ?2494次閱讀

    WebRTC標(biāo)準(zhǔn)化狀況

    一類是WebRTC對(duì)等連接的擴(kuò)展。這包括WebRTC擴(kuò)展,WebRTC-SVC和可插入流。我要提到的是,網(wǎng)絡(luò)實(shí)時(shí)傳輸中心建議和所有依賴于實(shí)時(shí)傳輸中心連接的工作都需要RTCPeerConnection“統(tǒng)一計(jì)劃”,
    的頭像 發(fā)表于 01-18 17:05 ?2188次閱讀

    Wowza:WebRTC加密和安全(上)

    在我們深入研究WebRTC安全漏洞以及它如何解決這些漏洞之前,讓我們探討WebRTC如何創(chuàng)建和維護(hù)媒體傳輸?shù)倪B接。人們會(huì)經(jīng)常提到“WebRTC
    的頭像 發(fā)表于 03-16 10:03 ?1234次閱讀

    什么是RTC技術(shù)(WebRTC

    主流瀏覽器都支持 WebRTC 標(biāo)準(zhǔn) API ,因此也讓瀏覽器之間無(wú)插件化的音視頻互通成為可能, 大大降低了音視頻開(kāi)發(fā)的門(mén)檻,開(kāi)發(fā)者只需要調(diào)用 WebRTC API 即可快速構(gòu)建出音視頻應(yīng)用。
    的頭像 發(fā)表于 05-26 17:24 ?1.1w次閱讀
    什么是RTC技術(shù)(<b class='flag-5'>WebRTC</b>)