搞懂WebRtc,音視頻開發(fā)就入門了!
1 時(shí)代機(jī)遇
2020 年疫情的爆發(fā),直接促使了線上會議、教育等視頻產(chǎn)品的飛速成長,一時(shí)間音視頻開發(fā)也被推到了風(fēng)尖浪口。而隨著4G、5G技術(shù)的普及和發(fā)展,人們更愿意采用更快更方便的音視頻來傳遞信息。D音、快手等短視頻平臺的大火,也證明著音視頻將是未來開發(fā)的大趨勢!
學(xué)習(xí)音視頻開發(fā),就肯定跳不開我們今天要講的主角:WebRTC。
WebRTC(Web Real-Time Communication)是 Google 在 2010 年以 6820 萬美元收購 VoIP 軟件開發(fā)商 Global IP Solutions 的 GIPS 引擎,并改名為“WebRTC”于 2011 年將其開源的旨在建立一個(gè)互聯(lián)網(wǎng)瀏覽器之間的音視頻和數(shù)據(jù)實(shí)時(shí)通信的平臺。
額嗯...簡單來說就是當(dāng)下最普及的音視頻通話技術(shù)。我們每天都在用的微信、QQ等及時(shí)通信軟件都是基于WebRTC開發(fā)的。

白嫖(免費(fèi))
WebRTC打開了人與人之間的通訊,對開發(fā)者免費(fèi),對終端用戶免費(fèi)。它不僅僅提供了視頻聊天,還有其他應(yīng)用,比如健康服務(wù)、低延遲文件傳輸、種子下載、甚至游戲應(yīng)用。
省事兒(便捷)
WebRTC允許Web開發(fā)者在其web應(yīng)用中添加視頻聊天或者點(diǎn)對點(diǎn)數(shù)據(jù)傳輸,不需要復(fù)雜的代碼或者昂貴的配置
在不通過中間媒介的情況下,它允許網(wǎng)絡(luò)應(yīng)用或者站點(diǎn)建立瀏覽器之間p2p(Peer-to-Peer)的連接,實(shí)現(xiàn)視頻流和音頻流或者其他任意數(shù)據(jù)的傳輸。
強(qiáng)大的打洞能力
WebRTC技術(shù)包含了使用STUN、ICE、TURN、RTP-over-TCP的關(guān)鍵NAT和防火墻穿透技術(shù),并支持代理。
舉一個(gè)常見的生活場景:我們要翻越一座山有什么辦法,是不是沿著山路(可能很多條)從一邊的山腳到另一邊的山腳。對,這個(gè)是最常見的方法,就是普通的網(wǎng)絡(luò)通信,通過路由來找路。但是,WebRTC卻不同,它會在山里面找 一個(gè)隧道,通過隧道實(shí)現(xiàn) 兩個(gè)點(diǎn)直接的連接,這就是打洞能力,是不是非常便捷。
下圖是來自WebRTC官網(wǎng)的 WebRTC 整體架構(gòu)圖

解讀
整個(gè) WebRTC 架構(gòu)設(shè)計(jì)大致可以分為以下 3 部分:
1. 紫色提供給 Web 前端開發(fā)使用的 API
2. 藍(lán)色實(shí)線部分提供各大瀏覽器廠商使用的 API
3. 藍(lán)色虛線部分包含 3 部分:音頻引擎、視頻引擎、網(wǎng)絡(luò)傳輸 (Transport)。都可以自定義實(shí)現(xiàn)
為了幫助大家快速上手WebRTC從而入門音視頻開發(fā),我特邀有著16年項(xiàng)目經(jīng)驗(yàn),前東芝,東方集團(tuán)高工Jett老師,為大家?guī)?/span>《WebRTC實(shí)戰(zhàn)騰訊QQ視頻通話技術(shù)》直播分享,兩天時(shí)間,帶您進(jìn)入全球最流行的一線大廠實(shí)時(shí)音視頻解決方案webrtc的核心地帶。
>>>> 服務(wù)
架構(gòu)師三天時(shí)間帶您進(jìn)入全球最流行的一線大廠實(shí)時(shí)音視頻解決方案webrtc的核心地帶。
課前資料預(yù)習(xí)預(yù)熱+課后作業(yè)鞏固+配套源碼及工具,全方位助你消化吸收
永久高質(zhì)量學(xué)習(xí)社群,擁有你的小圈子,架構(gòu)師實(shí)時(shí)答疑
>>>> 學(xué)習(xí)資源
音視頻系列教學(xué)視頻+《Android音視頻開發(fā)入門進(jìn)階核心筆記》


音視頻知識龐雜,通俗易懂的資料非常少,網(wǎng)上的博客文章也都非常零散,可能還充斥著大量的錯(cuò)誤信息,使得很多初學(xué)者掉到坑里就爬不出來了。有了這套系列視頻+學(xué)習(xí)筆記,可以助你在音視頻學(xué)習(xí)中節(jié)省大量時(shí)間。
1.webrtc整體架構(gòu)與運(yùn)行機(jī)制
2.Nodejs服務(wù)器環(huán)境配置
3.房間服務(wù)器配置
4.信令服務(wù)器設(shè)計(jì)方案
5.socket.io實(shí)現(xiàn)移動(dòng)端與瀏覽器端相互通信聊天室
通過本節(jié)學(xué)習(xí),您將了解到webrtc技術(shù)客戶端與服務(wù)端通信基本技能,為實(shí)現(xiàn)實(shí)時(shí)音視頻技術(shù)打下基礎(chǔ)。
WebRTC點(diǎn)對點(diǎn)視頻通話項(xiàng)目實(shí)戰(zhàn)
1.音視頻數(shù)據(jù)采集
2.webrtc網(wǎng)絡(luò)傳輸原理
3.STUN-TURN服務(wù)器配置
4.SDP協(xié)議
5.媒體協(xié)商
6.視頻通話實(shí)現(xiàn)
通過本節(jié)學(xué)習(xí),您將撐握如QQ,微信等流行APP中的點(diǎn)對點(diǎn)視頻通話實(shí)戰(zhàn)技術(shù)。
