色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

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

WebRTC速成課程

LiveVideoStack ? 來源:Youtube ? 作者:Youtube ? 2022-03-24 10:34 ? 次閱讀

目錄

1. WebRTC 概述

2. WebRTC 揭秘

2.1 Network Address Translation: NAT

2.2 Session Traversal Utilities for NAT:STUN

2.3 Traversal Using Relays around NAT: TURN

2.4 Interactive Connectivity Establishment: ICE

2.5 Session Description Protocol: SDP

2.6 信令交換:Signaling

工作流程總結(jié)

3. Demo

4. WebRTC的優(yōu)缺點(diǎn)

1. 優(yōu)點(diǎn)

2. 缺點(diǎn)

5. 擴(kuò)展內(nèi)容

5.1 Media API

5.2 onIceCandidate 和 addIceCandidate

5.3 自定義 TURN 和 STUN 服務(wù)器

5.4 公共 STUN 服務(wù)器

WebRTC (Web Real-Time Communication)是一個(gè)免費(fèi)、開源的項(xiàng)目,通過簡單的應(yīng)用程序編程接口(API)為 Web 瀏覽器和移動(dòng)應(yīng)用程序提供實(shí)時(shí)通信(RTC)。這也表明了 WebRTC 設(shè)計(jì)的目標(biāo)就是“設(shè)計(jì)一種通過盡量短的、延遲盡量低的路徑進(jìn)行 P2P 通信的協(xié)議,提供一種簡單的、能讓所有人使用的 API”。一旦你把它放入瀏覽器,它就是標(biāo)準(zhǔn);一旦它成為了標(biāo)準(zhǔn),開發(fā)時(shí)會(huì)遇到的“摩擦”就會(huì)消失。

我追蹤 WebRTC 這項(xiàng)技術(shù)大概已經(jīng)兩年了,聽眾們?yōu)槲姨峁┝舜罅績?yōu)質(zhì)的資源,也提出了很多優(yōu)秀的問題。應(yīng)大家的呼聲,我做出了這期視頻,為大家提供一個(gè) WebRTC 的基本教程。我將按以下順序進(jìn)行講解:

WebRTC 概述

WebRTC 揭秘:NAT、STUN、TURN、ICE、SDP、信令

Demo

WebRTC的優(yōu)缺點(diǎn)

擴(kuò)展內(nèi)容

1. WebRTC 概述

首先想到的問題是我們?yōu)楹我?WebRTC?

建立它的理由是人們需要用一種標(biāo)準(zhǔn)的、低延遲的方式來傳遞媒體數(shù)據(jù)(視頻&音頻)。所謂“標(biāo)準(zhǔn)的”意味著我們需要簡單易使用的 API;而所謂“低延遲的”意味著需要一種合適的協(xié)議,UDP 顯然是一個(gè)好的選擇,因?yàn)?UDP 沒有過多的應(yīng)答過程(Acknowledgment)。但我們需要的協(xié)議要比 UDP 更好,要能支持 P2P 的通信。因?yàn)橐坏┮蕾嚪?wù)器來傳遞內(nèi)容就會(huì)因?yàn)榉聪虼砘蛘叽┩敢腩~外的延遲,用戶需要進(jìn)行終止、觀察、處理、轉(zhuǎn)化流等操作,這些都會(huì)造成額外消耗。對(duì)于視頻傳輸、特別是直播、會(huì)話等場(chǎng)景,用戶希望內(nèi)容到達(dá)得越快越好,所以 P2P 是最快的路徑。

此外,WebRTC 也旨在實(shí)現(xiàn)瀏覽器之間豐富的溝通。瀏覽器已經(jīng)發(fā)展了很長時(shí)間,它“擁有”大量的優(yōu)質(zhì)視頻,它可以訪問攝像頭和麥克風(fēng),這些特性都值得被開發(fā)利用。用戶不需要寫自己的應(yīng)用,而是基于 WebRTC 的標(biāo)準(zhǔn) API 便可以輕松使用。不僅是瀏覽器,在移動(dòng)設(shè)備和 IoT 設(shè)備通信時(shí)也同樣。

那么在 WebRTC 中究竟發(fā)生了哪些事呢?

舉個(gè)例子,A 想要與 B 進(jìn)行通信,但 A 與 B 之間“互不相識(shí)”。所以 A 首先需要找到所有 Public(不是 B)能連接到它的途徑,檢查 A 是否有一個(gè)公共 IP 能被 Public 識(shí)別或使用,如果沒有檢查 A 的路由器是否允許公開端口轉(zhuǎn)發(fā)規(guī)則、是否在路由上有公共代表等等。B 也做了以上同樣的事。

此外,A 和 B 還會(huì)收集自身所支持的加密方式、安全參數(shù)、視頻編解碼器等等大量的信息,注意這些信息還沒有被送到對(duì)端,在這個(gè)階段只是廣泛地收集。所有這些信息,構(gòu)成了“SDP”。

接下來,A 和 B 會(huì)通過其他方式(可以是 WhatsApp、QR、Tweet、WebSockets、HTTP Fetch…)發(fā)出會(huì)話信息,這種方式具體是什么 WebRTC 并不關(guān)心,只要能從 A 到 B(B 到 A)就可以。

這種工作方式表面上是有些“愚蠢的”,部分人可能會(huì)認(rèn)為“既然我已經(jīng)有了 A 和 B 之間通信的線路,那還要 WebRTC 做什么呢?”但認(rèn)真思考一下就可以發(fā)現(xiàn),WebRTC 只要首次通信雙方交換了 SDP,后面就會(huì)實(shí)現(xiàn)真正的 P2P 通信,不再需要 WhatsApp、QR 等等中間途徑,不會(huì)有比這更快的通信路徑。因此最終 A 通過最優(yōu)路徑連接到了 B,這就是 WebRTC 的工作流程。

更詳細(xì)的闡釋這個(gè)例子如下:

050f9694-a4d8-11ec-952b-dac502259ad0.png

如上圖所示,假設(shè) A 找到了 A1、A2、A3 三種方式可以訪問它,同時(shí)還找到了安全參數(shù)、媒體選項(xiàng)等信息。同時(shí),B 也做了一樣的工作。接下來,他們通過一些方式(例如 WhatsApp)交換了以上信息。然后 A 找到 B2 是可用的最佳路徑,而 B 也發(fā)現(xiàn) A1 是可用的最佳路徑,那么二者將通過這條路徑直接連接彼此。本質(zhì)上 WebRTC 就是這樣工作的。

05357ca6-a4d8-11ec-952b-dac502259ad0.png

2. WebRTC 揭秘

接下來我們對(duì) WebRTC 進(jìn)行深入理解,對(duì)細(xì)節(jié)內(nèi)容進(jìn)行講述。首先了解 NAT 的細(xì)節(jié),學(xué)習(xí) WebRTC 是如何進(jìn)行正確的網(wǎng)絡(luò)地址轉(zhuǎn)換;其次了解為什么我們需要 STUN 和 TURN;此外還會(huì)介紹 ICE、SDP 以及信令交換的相關(guān)內(nèi)容。

2.1 Network Address Translation: NAT

如果你有一個(gè)公開的 Public IP 地址,連接過程將不會(huì)有什么問題。因?yàn)槟銜?huì)像 Web 服務(wù)器一樣一直監(jiān)聽端口,把端口和 IP 都提供給對(duì)方后,你和它就可以直接進(jìn)行連接了。但在大多數(shù)情況下,用戶都是隱藏在公共網(wǎng)絡(luò)之后的,無法直接連接。如下圖所示的示例中,路由器有一個(gè) Public IP 5.5.5.5,也有一個(gè) Private IP 10.0.0.1(也被稱為 gateway),你的機(jī)器只有一個(gè) Private IP 10.0.0.2,但你想要訪問 IP 為 4.4.4.4:80 的機(jī)器,要如何實(shí)現(xiàn)呢?

0550c538-a4d8-11ec-952b-dac502259ad0.png

首先你的機(jī)器會(huì)構(gòu)建一個(gè)數(shù)據(jù)包,聲明想向 4.4.4.4:80 發(fā)出 GET 請(qǐng)求,10.0.0.2 是源 IP 地址。接下來,你的機(jī)器會(huì)通過子網(wǎng)掩碼判斷是否可以直接與 4.4.4.4:80 進(jìn)行連接,運(yùn)算結(jié)果會(huì)顯示 4.4.4.4:80 并不在你所在的子網(wǎng)中,因此無法直接進(jìn)行通信。所以下一步就需要將請(qǐng)求發(fā)送給路由器,借助 gateway 進(jìn)行通信。路由器會(huì)替換源 IP 地址和端口為 Public IP 和一個(gè)隨機(jī)端口,但在此之前會(huì)創(chuàng)建 NAT 表,來記錄三者之間的對(duì)應(yīng)關(guān)系。這樣對(duì)端就能收到你的GET請(qǐng)求,并進(jìn)行后續(xù)處理了。

056bd4d6-a4d8-11ec-952b-dac502259ad0.png

在這之后,服務(wù)器 4.4.4.4:80 將向你的機(jī)器發(fā)送回復(fù),工作原理和上述相同,根據(jù) NAT 表查詢對(duì)應(yīng)地址完成通信。

058933f0-a4d8-11ec-952b-dac502259ad0.png

NAT 的轉(zhuǎn)換方式主要有以下幾種,在默認(rèn)情況下,WebRTC 可以支持前三種 NAT 方式,對(duì)最后一種并不友好。實(shí)際上 90% 以上的通信就是通過前三種方式完成的,最后一種作者個(gè)人認(rèn)為沒有使用的價(jià)值。

一對(duì)一 NAT(完全圓錐型 NAT):One to One NAT(Full-cone NAT)路由器上要發(fā)送到外部 IP:port 的數(shù)據(jù)包總是可以映射到內(nèi)部 IP:port ,無一例外。舉例說明,所有發(fā)送到 5.5.5.5:3333 的數(shù)據(jù)包總是會(huì)被自動(dòng)轉(zhuǎn)發(fā)到 10.0.0.2:8992,無論這個(gè)包是來自 4.4.4.4:80 或者其他任何地址。

IP 受限型 NAT:Address restricted NAT出于安全考慮,部分路由器會(huì)地址限制,考慮之前是否與該地址進(jìn)行過通信。即路由器上要發(fā)送到外部 IP:port 的數(shù)據(jù)包可以映射到內(nèi)部 IP:port,前提是數(shù)據(jù)包的源地址與 NAT 表相符,無所謂端口是什么。舉例說明,發(fā)送到 5.5.5.5:3333 的數(shù)據(jù)包中,只有源 IP 是 4.4.4.4 或其他表中有過記錄的 IP 才會(huì)被自動(dòng)轉(zhuǎn)發(fā)到 10.0.0.2:8992,即使這個(gè) IP 之前并不是和 3333 端口進(jìn)行的通信。

端口受限型 NAT:Port restricted NAT與前者相比,增加了端口限制,即路由器上要發(fā)送到外部 IP:port 的數(shù)據(jù)包可以映射到內(nèi)部 IP:port,前提是數(shù)據(jù)包的源 IP 和 Port 都要與 NAT 表相符。舉例說明,發(fā)送到 5.5.5.5:3333 的數(shù)據(jù)包中,只有來自 4.4.4.4:80 或其他表中有過記錄的 IP:Port 才會(huì)被自動(dòng)轉(zhuǎn)發(fā)到 10.0.0.2:8992,即使這個(gè) IP:Port 之前并不是和 3333 端口進(jìn)行的通信。

對(duì)稱 NAT:Symmetric NAT該方式是限制最多的一種,即必須匹配完整的 IP:port,區(qū)別在于發(fā)送到 5.5.5.5:3333 的數(shù)據(jù)包中,只有來自 4.4.4.4:80 的才會(huì)被自動(dòng)轉(zhuǎn)發(fā)到 10.0.0.2:8992,其他的包均無法通過。這種方式無法在 WebRTC 中使用,因?yàn)?WebRTC 需要 STUN 服務(wù)器。一旦 STUN 服務(wù)器建立了一個(gè) Public 代表,Symmetric NAT 要求只能與一個(gè)特定的對(duì)端通信,這種限制不適合 WebRTC。

2.2 Session Traversal Utilities for NAT:STUN

STUN 是可以賦予一個(gè)應(yīng)用程序所需要的 Public IP 和 Port,適用于 Full-cone、Address restricted 和 Port restricted NAT,無法用于 Symmetric NAT。STUN 服務(wù)器通常在 3478 端口上運(yùn)行,TLS 端口為 5349。STUN 是非常輕量級(jí)的,用戶可以使用 docker 建立一個(gè) STUN 服務(wù)器。STUN 服務(wù)器的目的就是讓用戶找到自己的 Public 表示,并通過這個(gè) Public 表示與其他用戶進(jìn)行通信。如果我們使用的是像大約 1996 年或 2000 年早期時(shí)那樣的 Public IP 地址,通信也將非常簡單。但就現(xiàn)在而言,我們必須使用 STUN 服務(wù)器。STUN 服務(wù)器的工作流程如下圖所示:

05a09112-a4d8-11ec-952b-dac502259ad0.png

首先創(chuàng)建一個(gè)數(shù)據(jù)包進(jìn)行 STUN 請(qǐng)求,STUN 服務(wù)器的地址為 9.9.9.9:3478,同樣在路由器創(chuàng)建了 NAT 表并進(jìn)行了地址轉(zhuǎn)換,然后數(shù)據(jù)包被送到了 STUN 服務(wù)器。

服務(wù)器收到請(qǐng)求后,為 10.0.0.2 的機(jī)器構(gòu)建了一個(gè) Public 表示 5.5.5.5:3333,并把這個(gè)信息打包進(jìn)一個(gè)數(shù)據(jù)包進(jìn)行反饋。

05b89b18-a4d8-11ec-952b-dac502259ad0.png

上述是一個(gè) STUN 請(qǐng)求的詳細(xì)過程,以下圖為例 STUN 在整個(gè)通信過程中進(jìn)行了以下工作:首先給予 10.0.0.2 的機(jī)器一個(gè) Public 表示 5.5.5.5:3333,同時(shí)給予 192.168.1.2 的機(jī)器一個(gè) Public 表示 7.7.7.7:4444。隨后二者都使用獲得的 Public 表示進(jìn)行連接。

05d0ccce-a4d8-11ec-952b-dac502259ad0.png

值得注意的是,這二者之前并沒有進(jìn)行過通信。如果是 Full-cone NAT,那么沒有問題可以連接;如果是 Address restricted NAT,第一個(gè)請(qǐng)求連接的請(qǐng)求將會(huì)失敗。在這種情況下,用戶需要通過服務(wù)器建立至少一個(gè)通信請(qǐng)求,先讓兩個(gè)地址都能保存在兩端的路由器中,這樣再次通過 Public 表示進(jìn)行連接請(qǐng)求時(shí)就能找到匹配的地址,繼而可以完成連接。Port restricted NAT 工作原理與之類似。

2.3 Traversal Using Relays around NAT: TURN

在應(yīng)用 Symmetric NAT 的情況下,必須使用 TURN。所有的通信內(nèi)容都要經(jīng)過 TURN 服務(wù)器的轉(zhuǎn)發(fā),所以 TURN 服務(wù)器的維護(hù)成本比較高,這也是為什么幾乎沒有人免費(fèi)提供這種服務(wù)器供用戶使用。下圖是一個(gè) TURN 服務(wù)器工作流程的示例,二者之間并不是直接的 P2P 通信,所有的信息都經(jīng)過了 TURN 服務(wù)器進(jìn)行轉(zhuǎn)發(fā)。

05e9ab68-a4d8-11ec-952b-dac502259ad0.png

2.4 Interactive Connectivity Establishment: ICE

在建立了很多 STUN 和 TURN 服務(wù)器后,從 A 到 B 之間的路徑有了非常多的選擇,為了更好的處理這些路徑,人們提出了 ICE。ICE 會(huì)收集所有可用的通信路徑作為“候選人”(ICE Candidates),有可能是本地 IP 地址、STUN 和 TURN 服務(wù)器提供的地址等等。收集到的所有地址都將放入 SDP 中,再送到對(duì)端,對(duì)端通過解析 SDP 來了解我方提供的重要信息。因此,ICE 是 WebRTC 中非常關(guān)鍵的組成部分。

2.5 Session Description Protocol: SDP

SDP 是一種用于表述 ICE Candidates 的格式,它描述了網(wǎng)絡(luò)選項(xiàng)、媒體選項(xiàng)、安全選項(xiàng)和其他很多信息,開發(fā)者甚至可以自定義 SDP 內(nèi)容。實(shí)際上 SDP 并不是一種協(xié)議,只是一種數(shù)據(jù)格式,但 SDP 是 WebRTC 中最重要的幾個(gè)概念之一。它的設(shè)計(jì)目的是將用戶產(chǎn)生的 SDP 送至其他端,送的方式并不關(guān)心。

2.6 信令交換:Signaling

Signaling 過程是將用戶產(chǎn)生的 SDP 通過某種方式傳遞給想要通信的那方,如上所述,以何種方式傳遞并不重要。很多人通過 Websockets 或者 socket io 來傳遞 SDP 信息,這個(gè)過程就是 Signal SDP。盡管要找到所有的 ICE candidate 是耗費(fèi)時(shí)間的,但一旦完成了這個(gè)過程,下一步就是創(chuàng)建一個(gè) SDP,進(jìn)而生成一個(gè) QR code 并把 QR code 公布到 twitter 上,其他人掃描了這個(gè)二維碼就可以獲取相應(yīng)的 SDP。這個(gè)過程是通過 twitter、QR code、Whatsapp、WebSockets、還是 HTTP 請(qǐng)求都不重要,因?yàn)閷?shí)際上就是將一個(gè)長字符串傳遞給其他人罷了。簡而言之,Signaling 就是將 SDP 信息傳遞給另外一方。

工作流程總結(jié)

A 想要和B建立連接;

A 創(chuàng)建了一個(gè) offer,它尋找所有的 ICE candidate、安全選項(xiàng)、音視頻選項(xiàng)等并創(chuàng)建 SDP,簡單來說這個(gè) offer 就是 SDP;

A 將 SDP 信令傳遞給 B(Signaling);

B 根據(jù) A 的 offer 進(jìn)行設(shè)置,并創(chuàng)建應(yīng)答(answer);

B 將 Answer 信令傳遞給 A(Signaling);

連接建立。

3. Demo

作者詳細(xì)講述了一個(gè) Demo 程序的編寫,該程序可以:

在兩個(gè)瀏覽器間進(jìn)行通信(瀏覽器 A 和瀏覽器 B);

A 創(chuàng)建一個(gè) offer(SDP),并設(shè)置它為本地描述;

B 接收一個(gè) offer 并設(shè)置它為遠(yuǎn)端描述;

B 創(chuàng)建一個(gè) answer 并設(shè)置它為本地描述,并將其傳遞給 A;

A 接收 answer 并設(shè)置它為遠(yuǎn)端描述;

建立連接、建立數(shù)據(jù)通道、交換數(shù)據(jù)。

源碼:https://github.com/hnasr/javascript_playground/tree/master/webrtc

4. WebRTC的優(yōu)缺點(diǎn)

1. 優(yōu)點(diǎn)

P2P 通信是非常棒的,對(duì)于高帶寬內(nèi)容可以有降低的延遲。P2P 是最快的路徑,不需要經(jīng)過其他的第三方進(jìn)行通信。即使通互聯(lián)網(wǎng)傳輸要經(jīng)過大量的路由器,但如果內(nèi)容已經(jīng)被加密了所有的路由器都不會(huì)查看內(nèi)容,它們會(huì)直接傳遞數(shù)據(jù)包,所以 P2P 是非常好的通信方式。對(duì)于高帶寬內(nèi)容,它們通過 UDP 直接被“送入”和“推出”,通過 P2P UDP 傳遞這些內(nèi)容(特別是視頻內(nèi)容),用戶將收獲最好的性能。

標(biāo)準(zhǔn)可用的 APIWebRTC 有一套非常標(biāo)準(zhǔn)、非常優(yōu)雅的 API,可以直接在瀏覽器中應(yīng)用,不需要安裝其他的包、也不需要用多余的開發(fā)工具。

2. 缺點(diǎn)

需要維護(hù) STUN 和 TURN 服務(wù)器在某些情況下 P2P 不能工作,你仍需要一個(gè) TURN 服務(wù)器。但維護(hù) STUN 和 TURN 服務(wù)器需要耗費(fèi)大量的人力物力,特別是 TURN 服務(wù)器。因?yàn)槟闶紫纫ㄥX維護(hù)一個(gè) Public IP,并且必須維護(hù)這個(gè)服務(wù)器使其可以正常啟動(dòng)和運(yùn)行。作者個(gè)人認(rèn)為與其花費(fèi)這種代價(jià),不如自己建立一個(gè)擁有全部控制權(quán)的服務(wù)器,進(jìn)行反向代理。

在參與者過多的情況下,P2P 會(huì)崩潰假設(shè)有 100 個(gè)人想要相互交流,你會(huì)創(chuàng)建 P2P 連接嗎?那會(huì)是幾百乘幾百的連接量,因?yàn)槊總€(gè)人都需要連接到其他任何一個(gè)用戶,這將是非常大規(guī)模的。但如果你有一個(gè)集中式服務(wù)器,每個(gè)用戶只需要和這個(gè)服務(wù)器建立一個(gè)連接,你可以通過這個(gè)服務(wù)器控制所有的流量,這明顯是一種更好的方式。所以 WebRTC 有時(shí)候無法用在游戲上,你沒辦法利用 WebRTC 來創(chuàng)建一個(gè)多用戶游戲,當(dāng)然 3 個(gè)用戶是可以的,但幾百個(gè)用戶作者認(rèn)為是無法實(shí)現(xiàn)的。

5. 擴(kuò)展內(nèi)容

5.1 Media API

getUserMedia 函數(shù)可以用于獲取麥克風(fēng)和攝像頭,進(jìn)而獲得一個(gè)流(stream),這個(gè)流的內(nèi)容會(huì)通過RTCPConnection.addTrack(stream)送入 RTC 連接中。理論上你可以用數(shù)據(jù)通道傳遞任何類型的數(shù)據(jù),但如果你想要傳遞媒體信息就要用到 stream,這些數(shù)據(jù)的傳遞將使用不同的協(xié)議。

更多內(nèi)容可參考:https://www.html5rocks.com/en/tutorials/webrtc/basics/

5.2 onIceCandidate 和 addIceCandidate

這兩個(gè)函數(shù)可用于在新的 Candidate 加入或離開時(shí)維護(hù)連接。用戶每次從系統(tǒng)獲取一個(gè) ICE Candidate 時(shí),onIceCandidate 函數(shù)就會(huì)被調(diào)用。onIceCandidate 函數(shù)將告知用戶“在 SDP 已經(jīng)被創(chuàng)建后,又有了新的 Candidate”。新的 Candidate 將被告知對(duì)端,告知的方式可以是 Signaling,也可以直接通過同一個(gè) SDP 連接。對(duì)端通過 addIceCandidate 函數(shù)將新的 Candidate 加入 SDP。

5.3 自定義 TURN 和 STUN 服務(wù)器

在創(chuàng)建 RTCP 連接時(shí),可以選擇傳遞配置信息,下圖為一個(gè)配置信息示例。基本上用戶可以自定義 ICE 服務(wù)器,其中有很多可選項(xiàng)。

060072da-a4d8-11ec-952b-dac502259ad0.png

此外,有一個(gè)開源庫也可以幫助大家創(chuàng)建屬于自己的 TURN 服務(wù)器,地址:https://github.com/coturn/coturn

5.4 公共 STUN 服務(wù)器

作者給出了部分 Google 提供的公共服務(wù)器,可供開發(fā)人員參考:

stun1.l.google.com:19302

stun2.l.google.com:19302

stun3.l.google.com:19302

stun4.l.google.com:19302

stun.stunprotocol.org:3478

審核編輯 :李倩

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

    關(guān)注

    12

    文章

    9233

    瀏覽量

    85627
  • WebRTC
    +關(guān)注

    關(guān)注

    0

    文章

    57

    瀏覽量

    11264

原文標(biāo)題:WebRTC 速成課程

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

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    誰有鄭振宇10天速成Altium designer PCB畫板實(shí)戰(zhàn)課程套餐的視頻教程

    誰有鄭振宇10天速成Altium designer PCB畫板實(shí)戰(zhàn)課程套餐的視頻教程。。。
    發(fā)表于 03-27 23:13

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

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

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

    我們這里常說的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)用

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

    大佬都在看的基于WebRTC的MCU方案

    最近幾年,各種設(shè)備和瀏覽器已經(jīng)支持了WebRTC,但是傳統(tǒng)的視頻會(huì)議大都還是基于SIP和H.323, 硬件MCU也還是主流,我們推出了基于WebRTC 的MCU方案,該方案支持SIP 和WebRTC
    發(fā)表于 11-03 09:23

    WebRTC有哪些功能

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

    什么是WebRTC

    什么是WebRTCWebRTC,即Web Real-Time Communication(網(wǎng)頁即時(shí)通信)。它是一個(gè)開源項(xiàng)目,旨在創(chuàng)建簡單、標(biāo)準(zhǔn)化的流程通過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ù)器開發(fā)——SRS 4.0
    發(fā)表于 12-24 06:40

    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的開發(fā)者而言,2018年將是忙碌的一年。主流瀏覽器和蘋果官方支持,標(biāo)準(zhǔn)和API定型,WebRTC生態(tài)具備了快速發(fā)展的條件。WebRTC技術(shù)服務(wù)商“WebRTC
    的頭像 發(fā)表于 01-16 12:51 ?5944次閱讀

    谷歌免費(fèi)開放基于TensorFlow 的機(jī)器學(xué)習(xí)速成課程 適合于國內(nèi)初學(xué)者

    隨著人工智能發(fā)展越來越快,機(jī)器學(xué)習(xí)成為了如今的熱門行業(yè),機(jī)器學(xué)習(xí)似乎是一個(gè)很重要的,具有很多未知特性的技術(shù)。今日?qǐng)?bào)道,谷歌上線基于TensorFlow的機(jī)器學(xué)習(xí)速成課程,包含一系列視頻講座課程、實(shí)際案例分析和實(shí)踐練習(xí)。被稱之為機(jī)
    發(fā)表于 03-01 14:30 ?1965次閱讀

    谷歌官方機(jī)器學(xué)習(xí)速成課程上線

    谷歌官方剛剛發(fā)布了 機(jī)器學(xué)習(xí) 速成課程!內(nèi)容涵蓋了機(jī)器學(xué)習(xí)相關(guān)概念以及機(jī)器學(xué)習(xí)工程知識(shí),3月第一天!一起走進(jìn)機(jī)器學(xué)習(xí)的世界!下面就隨網(wǎng)絡(luò)通信小編一起來了解一下相關(guān)內(nèi)容吧。 重磅! Google 發(fā)布
    發(fā)表于 03-24 20:00 ?1136次閱讀

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

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

    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 ?2181次閱讀

    Wowza:WebRTC加密和安全(上)

    在我們深入研究WebRTC安全漏洞以及它如何解決這些漏洞之前,讓我們探討一下WebRTC如何創(chuàng)建和維護(hù)媒體傳輸?shù)倪B接。人們會(huì)經(jīng)常提到“WebRTC協(xié)議”,但正如我們上面提到的,WebRTC
    的頭像 發(fā)表于 03-16 10:03 ?1222次閱讀
    主站蜘蛛池模板: 一边捏奶头一边啪高潮会怎么样 | gratis videos欧美最新| 在线播放国产视频| 优优色影院| 99久久国产综合精品国| 啊轻点啊再深点视频免费| 成年人免费在线视频观看| 国产成人mv 在线播放| 国产色无码精品视频国产| 九九这里有精品| 免费精品国偷自产在线在线| 青青青青青青草| 哇嘎在线精品视频在线观看| 亚洲精品久久YY5099| 最近中文字幕2019免费版日本| 99久久久无码国产精品免费人妻| 粗大分开挺进内射| 国产人成无码视频在线观看 | 51国产午夜精品免费视频 | 无码国产成人777爽死在线观看| 亚洲国产成人久久精品影视 | 青青青久久| 小便japanesewctv| 早乙女由依在线观看| 白丝美女被狂躁免费漫画| 国产精品人妻无码久久久2022| 久久精品国产99欧美精品亚洲| 欧美成人亚洲高清在线观看 | 榴莲推广APP网站入口下载安装| 琪琪电影午夜理论片77网| 校花爽好大快深点h| 最近中文字幕在线看免费完整版| 成人免费视频在线| 精品国产自在自线官方| 欧美另类jizzhd| 亚洲成人一区二区| 2021全国精品卡一卡二| 国产福利视频第一导航| 久久综合色视频| 甜性涩爱免费下载| 2021自产拍在线观看视频|