在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Zoom的Web客戶端和WebRTC有什么關系

LiveVideoStack ? 來源:工程師曾玲 ? 2019-02-02 15:17 ? 次閱讀

Zoom是非常出色的視頻會議平臺,拿Zoom的web客戶端和WebRTC對比似乎有失公允。重要的是,未來WebRTC還會不斷做明智的改進。

Zoom有一個Web客戶端,允許參與者在不下載他們的app的情況下參加會議。打開chrome://webrtc-internals顯示只有getUserMedia用于訪問相機和麥克風,但是沒有像WebRTC那樣調用RTCPeerConnection。這讓我很感興趣-他們沒有使用WebRTC是如何打電話的?

為什么不使用WebRTC?

Zoom的Web客戶端和WebRTC有什么關系

就像他們的網站上所說的那樣,Zoom和WebRTC的關系比較復雜。

JitSi團隊最近通過比較質量回應了這件事。Tsahi Levent Levi也對此發表了一些有用的評論。因此,讓我們在Chrome中運行這種非常有趣的環境下快速查看這些“優秀特性”。

Zoom web客戶端

Chrome網絡開發者工具迅速顯示了兩件事:

WebSocket用于數據傳輸

這是一些工作人員加載的WebAssembly (wasm) 文件

Zoom的Web客戶端和WebRTC有什么關系

基于WebSocket的媒體傳輸

基于WebSocket的媒體傳輸整體設計非常有趣。它使用WebSocket傳輸媒體,這當然不是最佳選擇。類似于WebRTC中的Turn/TCP——它會影響傳輸質量,并且在很多情況下都不能很好地工作。使用TCP傳輸實時媒體的一般問題是丟包,這會導致重新發送和增加延遲。Tsahi前一段時間在TestRTC上描述了這一點,顯示了使用這種方案對比特率和其他特性的影響。

基于WebSocket傳輸媒體最主要的優勢在于,它可以在TURN/TCP和TURN/TLS被防火墻阻塞時,穿過防火墻。它避免了WebRTC TRUN連接不經過認證代理的問題。這是Chrome WebRTC實施中長期存在的問題,去年才得到解決。

Zoom的Web客戶端和WebRTC有什么關系

在WebSocket上接收的數據進入基于WebAssembly (WASM)的解碼器。瀏覽器中的AudioWrkLead獲取到音頻數據。從那里,解碼的音頻使用WebAudio“magic”目的節點播放。

Zoom的Web客戶端和WebRTC有什么關系

視頻被渲染出來,這個過程出乎意料的順利,質量也非常高。

另一方面,WebAudio通過getUserMedia調用捕獲媒體數據,發送給WebAssembly編碼器編碼,然后通過WebSocket傳輸。640*360分辨率的視頻數據在發送給WebAssembly編碼器之前從畫布中獲取到,這是非常常見的。

WASM文件似乎包含與Zooms本地客戶端相同的編碼器和解碼器,這意味著網關不必進行轉碼。相反,它可能只是一個websocet-RTP中繼,類似于轉換服務器。編碼的視頻有時有些像素化。雖然編碼器的CPU使用率相當高(在640×360分辨率),但這可能并不重要,因為用戶可能將問題歸咎于Chrome,并在下次使用客戶端。

H.264

使用WebAssembly提供媒體引擎是非常有趣的,它允許支持Chrome/WebRTC不支持的編解碼器。用emscripten編譯的FFmpeg以前已經做了很多次了,這里似乎也使用了emscripten。通過WebSockets傳輸編碼后的數據,可以使用Chrome優秀的調試工具檢查RTP頭和一些幀來顯示H264荷載。

Zoom的Web客戶端和WebRTC有什么關系

令我驚訝的是,網絡抽象層單元(NALU)沒有表示H264-SVC。

和WebRTC的比較:

總之,讓我們比較一下Chrome在本例中使用的與WebRTC標準(W3C或者各種IETF草案)不同的地方:

特性 Zoom Web client WebRTC/RTCWeb Specifications
加密 基于安全Websocket的RTP DTLS-SRTP
數據通道 n/a? SCTP-based
ICE n/a for Websocket RFC 5245 (RFC 8445)
Audio codec 未知 Opus
多碼流 未研究 Chrome實現
Simulcast 在web client上未研究 擴展特性

WebRTC下一版

盡管WebRTC 1.0還遠遠沒有完成(而且大多數開發人員仍在使用被稱為“遺留API”的東西),但是關于“下一個版本”的討論仍然很多。

Zoom網絡客戶端的總體設計強烈地提醒了我,在今年早些時候在斯德哥爾摩召開的工作組面對面會議上,Google的Peter Thatcher為WebRTC NV提出的建議。請參閱幻燈片(https://www.w3.org/2011/04/webrtc/wiki/images/5/5c/WebRTCWG-2018-06-19.pdf)。

如果我們要在2018重建WebRTC,我們可能已經采取了類似的方法來分離組件。基本上采取以下步驟:

編譯用于wasm的webrtc.org編碼器/解碼器。

將解碼器與畫布連接,WebAudio用于”布局”

將編碼器和getUserMedia連接用于輸入

將編碼后的數據通過不可靠的信道發送

以某種方式連接RTCDataChannel反饋度量和音頻/視頻編碼器

該方法是從工作組會議幻燈片中看到的:

Zoom的Web客戶端和WebRTC有什么關系

與Zoom方法相比,該方案具有非常明顯的技術優勢。例如,使用RTCDataChannels傳輸數據,這比WebSocket具有更好的擁塞控制特性,特別是當存在分組丟失時。

該設計的最大優點是可以將編碼器和解碼器(以及相關的東西,如RTP打包)與瀏覽器分離,從而允許定制版本。主要問題是找到一種好的方法,以包括硬件加速的高性能方式使數據處理脫離主線程。這是Chrome早期面臨的一大挑戰,我記得很多關于沙箱讓事情變得困難的抱怨。Zoom看起來很好,但是我們只嘗試了1:1的聊天,而典型的WebRTC應用程序比這個要求更高一些。重用像MediaStreamTrack這樣的構建塊來進行從工人到工人的數據傳輸也比使用Canvas元素和WebAudio要好。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 編碼器
    +關注

    關注

    45

    文章

    3652

    瀏覽量

    134848
  • Web
    Web
    +關注

    關注

    2

    文章

    1266

    瀏覽量

    69557

原文標題:Zoom的Web客戶端與WebRTC有何不同?

文章出處:【微信號:livevideostack,微信公眾號:LiveVideoStack】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    labview web service發布數據到客戶端瀏覽器

    現在我想利用LV web service將采集到的數據發布到網絡上去,實現基于 Web 的瘦客戶端模式數據共享。目前的問題是數據是以xml格式發布到客戶端網頁,小弟不知道怎么對數據進行
    發表于 04-12 15:12

    求教:linux系統和WEB服務器什么關系?WEB服務器和網頁又是什么關系?

    最近在學習arm上linux系統移植以及WEB服務器,幾個問題非常非常困惑,希望大家能幫忙解答一下。1.linux操作系統和web服務器屬于什么關系?2.配置好
    發表于 10-10 20:20

    webrtc p2p

    web前端等實現,支持app的移植,信令服務器是websocket實現1.設備上線,通知信令服務器;2.web客戶端向信令服務器發起請求:?? ?2.1設備發送數據到信令服務器,內容json格式
    發表于 08-10 21:58

    在esp8266中內置客戶端WEB,請問固件版本的要求嗎?

    各位大神好!我想在8266中內置客戶端WEB,請問固件版本的要求嗎?WEB內容是不是可以自己定制?有沒有相關方面的資料嗎?我在上看到《esp8266從零快速開發教程》,但是鏈接已經失
    發表于 11-08 08:07

    CoolpyCould客戶端

    一款開源的物聯網服務器平臺,利用nodejs寫成,此文件是CoolpyCould客戶端
    發表于 11-06 17:00 ?18次下載

    CSDN博客客戶端源碼

    CSDN博客客戶端源碼CSDN博客客戶端源碼CSDN博客客戶端源碼
    發表于 11-18 10:22 ?1次下載

    一種基于多媒體的英語智能客戶端設計

    文中提出一種基于計算機多媒體技術的英語智能客戶端。通過采用B/S與C/S結合的方式,并通過web services 接口調用的方式,實現對系統的訪問,同時采用多媒體技術的中的視頻傳輸壓縮技術,以此減少視頻的大小,提高網絡資源帶寬,更好的促進英語智能
    發表于 12-24 16:05 ?5次下載

    Delphi教程之數據查詢Web服務客戶端開發數據查詢Web服務

    Delphi教程之數據查詢Web服務客戶端開發數據查詢Web服務客戶端開發,很好的Delphi資料,快來下載學習吧。
    發表于 04-11 15:59 ?5次下載

    如何使用WebRTC/WebTorrent構建彈性Web

    WebTorrent是第一個在瀏覽器中工作的種子客戶端。它完全由JavaScript編寫,并使用WebRTC進行真正的點對點傳輸。無需瀏覽器插件,擴展或安裝。
    的頭像 發表于 08-29 16:18 ?3306次閱讀

    iOS淘寶客戶端應用名稱發生變化 Android客戶端應用名稱尚未更改

    iOS淘寶客戶端應用名稱發生變化 Android客戶端應用名稱尚未更改
    發表于 04-18 15:37 ?941次閱讀

    Zoom客戶端爆出安全漏洞,泄露Windows的登陸憑據

    Windows 版 Zoom 客戶端爆出了容易受到 NUC 路徑注入攻擊的安全漏洞。作為一款音視頻會議應用,Zoom 還允許用戶在聊天界面通過發送文本消息來互相交流。
    發表于 05-15 10:41 ?1432次閱讀

    HTTP客戶端快速入門指南

    HTTP客戶端快速入門指南
    發表于 01-12 18:45 ?0次下載
    HTTP<b class='flag-5'>客戶端</b>快速入門指南

    MQTT中服務客戶端

    MQTT 是一種基于客戶端-服務架構(C/S)的消息傳輸協議,所以在 MQTT 協議通信中,兩個最為重要的角色,它們便是服務客戶端
    的頭像 發表于 07-30 14:55 ?2705次閱讀

    ROS是如何設計的 ROS客戶端

    為什么需要客戶端。 原因是,節點與主節點master之間的關系是client/server,這時每個節點都是一個客戶端(client),而master自然就是服務器(server)。
    的頭像 發表于 09-14 17:29 ?883次閱讀
    ROS是如何設計的 ROS<b class='flag-5'>客戶端</b>庫

    分享一款別樣的ssh客戶端-PortX

    目前支持ssh的客戶端很多,比如putty、crt、xshell等,今天分享一款別樣的ssh客戶端-PortX,通過簡單但全面的UI,PortX為您提供了純粹的終端模擬體驗。
    的頭像 發表于 01-02 13:37 ?766次閱讀
    分享一款別樣的ssh<b class='flag-5'>客戶端</b>-PortX
    主站蜘蛛池模板: 看日本黄色大片| 日本高清网站| 玖玖爱这里只有精品| 四虎影视免费看| 色婷婷在线观看视频| 亚洲一区三区| 免费观看国产网址你懂的| 天天操天天搞| 九色在线观看视频| 天堂网传媒| 美女天天操| 日韩性xxx| 男女午夜剧场| www.亚洲5555.com| 日本不卡一区在线| 亚洲综合色视频| 综合色天天| 亚洲aaa视频| 影院成人区精品一区二区婷婷丽春院影视| 久久综合免费| 国产一二三区在线观看| 久久夜色精品国产尤物| 九月婷婷综合| 美女被免费视频的网站| 国产情侣出租屋露脸实拍| 国产黄色片在线观看| 国产男女怕怕怕免费视频| 久久99热不卡精品免费观看| 免费大片看黄在观看| 性欧美日本| 四虎国产精品免费入口| 欧美色欧| 麻豆色哟哟网站| 六月激情网| 自拍偷拍福利视频| 亚洲va国产日韩欧美精品色婷婷| 久久网综合| 亚洲网站大全| 午夜视频免费观看黄| 亚洲综合一区二区| 天天拍天天射|