近年來,在線教育、狼人殺、在線抓娃娃、線上 KTV 等多人視頻互動模式不斷涌現(xiàn),實(shí)時音視頻通信風(fēng)頭正勁,實(shí)時音視頻技術(shù) WebRTC 也因此受到了廣泛關(guān)注。相關(guān)數(shù)據(jù)顯示,2017-2021 年期間,全球網(wǎng)絡(luò)實(shí)時通信(WebRTC)市場將以 34.37% 的年均復(fù)合增長率增長。(數(shù)據(jù)來源: Technavio 《全球網(wǎng)絡(luò)實(shí)時通訊(WebRTC)市場,2017-2021》報告)
實(shí)時互動新時代:進(jìn)擊的 WebRTC
2017 年 11 月,WebRTC 1.0 標(biāo)準(zhǔn)草案出爐后,越來越多廠商開始對它進(jìn)行廣泛支持。WebRTC 官方數(shù)據(jù)顯示,WebRTC 已經(jīng)有超過 1300 個公司和項(xiàng)目使用,80% 以上的瀏覽器支持 ,WebRTC 被應(yīng)用在各種我們熟知的應(yīng)用上:WhatsApp、Facebook Manager、appear.in 和 TokBox 等。
WebRTC 全名為 Web Real Time Communication(網(wǎng)頁即時通信),是 Google 推進(jìn)的開源項(xiàng)目,最初目標(biāo)是為瀏覽器實(shí)現(xiàn)無插件的實(shí)時音視頻通話。基于 WebRTC 搭建平臺實(shí)現(xiàn)連麥互動,可大大降低音視頻通信的接入門檻和開發(fā)成本:
1、80% 的瀏覽器支持 WebRTC
Google 將 WebRTC 開源之前,實(shí)現(xiàn)瀏覽器之間的實(shí)時通信是一個很困難的任務(wù),F(xiàn)在,開發(fā)者無需關(guān)注音視頻引擎實(shí)現(xiàn)細(xì)節(jié),使用簡單的 HTML 標(biāo)簽和 JavaScript API 就能夠?qū)崿F(xiàn) Web 端的音視頻通信功能。目前,Chrome、Safari、Firefox、Opera 等主流瀏覽器已經(jīng)全部支持 WebRTC,作為 H5 的標(biāo)準(zhǔn)之一,未來必將有更多瀏覽器支持。
2、可實(shí)現(xiàn)全平臺互聯(lián)互通
想象這樣一個場景:當(dāng)你在手機(jī)上分享一個 Web 鏈接給朋友,一定期望對方打開瀏覽器即可和你實(shí)時對話,因此,實(shí)現(xiàn)跨平臺的互聯(lián)互通是一個很重要的體驗(yàn)。Google 開放了底層端 C++ 接口,基于該接口,開發(fā)者可以開發(fā) iOS、Android、Mac、Windows 等各平臺應(yīng)用,實(shí)現(xiàn)全平臺應(yīng)用互聯(lián)互通。
3、WebRTC 具有強(qiáng)大的打洞能力
WebRTC 技術(shù)包含了使用 STUN、ICE、TURN、RTP-over-TCP 的關(guān)鍵 NAT 和防火墻穿透技術(shù),并支持代理,保證 P2P 客戶端可以通過直接通信實(shí)現(xiàn)文件信息、處理器運(yùn)算能力、存儲空間等資源的共享。
4、安全可靠,質(zhì)量穩(wěn)定
WebRTC 提供可靠的視頻音頻數(shù)據(jù)加密功能,保證音視頻數(shù)據(jù)在公網(wǎng)上的傳輸安全,無需擔(dān)心被信息竊取。對于數(shù)據(jù)敏感的企業(yè),只要配合私有化存儲,即可實(shí)現(xiàn)數(shù)據(jù)的安全傳輸和存儲。同時,Google 的強(qiáng)大技術(shù)背書和支持,可以保證技術(shù)的快速更新迭代,例如聲音降噪、音量增益、回聲消除,可以極大的優(yōu)化用戶體驗(yàn),保證穩(wěn)定的質(zhì)量。
WebRTC 與產(chǎn)業(yè)級應(yīng)用之間的距離
這樣看來,基于 WebRTC 實(shí)現(xiàn)實(shí)時音視頻通話似乎并不難,然而實(shí)際上,從 WebRTC 到一個產(chǎn)業(yè)級應(yīng)用,還有相當(dāng)長的距離:
1、全平臺支持開發(fā)量較大
WebRTC 只提供了 Web 端的接入能力,對 Android、iOS、Windows 等客戶端沒有提供簡單易用的 SDK。對于開發(fā)者的能力和經(jīng)驗(yàn)有很大的挑戰(zhàn),而對于缺少音視頻技術(shù)積累的公司來說,這無疑會增大開發(fā)成本、延長上線時間。
2、P2P 連接方式的天然弊病
P2P 的連接方式最大的問題在于連通成功率不高,Google 給出的國外官方數(shù)據(jù)是 86%。在多人互動的場景下,P2P 的模型更加無力。多人互動時需要把自己的流同時發(fā)布給多人,這對上行帶寬的要求很高,當(dāng)前的網(wǎng)絡(luò)環(huán)境很難支持多人會話場景。
3、場景支持單一
P2P 使用的是端到端之間直連,沒有服務(wù)端,因此支持的場景僅限于 1 對 1 的簡單通信,沒有辦法在服務(wù)端對音視頻流做處理服務(wù),比如:合流、旁路直播、水印、轉(zhuǎn)碼等。
因此,對于音視頻技術(shù)能力儲備較少的公司,選擇一家靠譜的一站式解決方案供應(yīng)商可以極大降低開發(fā)成本、縮短產(chǎn)品上線時間。
七牛實(shí)時音視頻云是一套基于標(biāo)準(zhǔn) WebRTC 的實(shí)時音視頻解決方案,同時對 WebRTC 的上述問題作出了優(yōu)化。 七牛實(shí)時音視頻云提供全平臺的實(shí)時音視頻 SDK,通過自研 RTC 加速網(wǎng)絡(luò)及強(qiáng)大云端能力支撐,為客戶提供跨平臺、高品質(zhì)、可定制化的一站式解決方案。
七; WebRTC 提供產(chǎn)業(yè)級解決方案
1、P2S 連接模型,實(shí)現(xiàn) 1 對多互動
七牛 RTN 的連接模型叫 P2S(Peer to Sever),采用 SFU 拓?fù)浞桨,即轉(zhuǎn)發(fā)模型方案。我們在 Client A 和 Client B 之間增加了服務(wù)器,Signal Sever 做端與端的信令傳輸,Media Sever 負(fù)責(zé)建立數(shù)據(jù)通道,基于 Media Sever 我們就可以完成轉(zhuǎn)發(fā)量。相比于 WebRTC 的 P2P 模型,P2S 不僅能規(guī)避上行帶寬較小的問題,還能實(shí)現(xiàn)多人實(shí)時音視頻互動。
P2P 模型 P2S 模型
2、RTC 加速網(wǎng)絡(luò),高可靠低延遲
七牛 RTC 自研加速網(wǎng)絡(luò)作為一個實(shí)時傳輸網(wǎng)絡(luò),相比于一般加速網(wǎng)絡(luò)而言,擁有全球節(jié)點(diǎn)和多類供應(yīng)商線路支持,采用全自研邊緣加速方案,全面支持信令和數(shù)據(jù)傳輸?shù)募铀,智能分配流媒體服務(wù)器和加速線路,從而保證了全網(wǎng)的高連通性和低延時。
RTC 加速網(wǎng)絡(luò)
3、旁路直播云端存儲,支持點(diǎn)播回放
「旁路直播」和「點(diǎn)播回放」是實(shí)時互動的常見衍生場景。例如,幾個人在線上實(shí)時開會,同時有成千上萬的人也想觀看會議直播,這就需要在服務(wù)端將流轉(zhuǎn)推直播,即「旁路直播」,旁路直播能以較低成本實(shí)現(xiàn)互動信息的最大化傳播:
如在金融、政務(wù)、客服等應(yīng)用場景中,互動內(nèi)容還需要落存儲進(jìn)行備案備查,可以在七牛云端實(shí)時切片和落存儲;針對教育、秀場互動等場景,后期可以將落存儲的音視頻內(nèi)容再通過 CDN 進(jìn)行二次傳播。
4、支持服務(wù)端合流,應(yīng)對各類終端機(jī)型
從分發(fā)成本、存儲成本的角度上考慮,在進(jìn)行旁路直播、云端落存儲之前,通常需要將互動的多個畫面合并為一個畫面,這個過程即「合流」。合流可以在客戶端或服務(wù)端完成,客戶端合流雖然是一種比較簡單的合流方式,但是存在手機(jī)發(fā)燙、合流不穩(wěn)定等問題;相比于客戶端合流,服務(wù)端合流對終端要求更低,合流畫面更流暢,畫質(zhì)更清晰,極大降低手機(jī)發(fā)熱和卡頓。七牛采用在服務(wù)端的 GPU 合流方案,可以極大的改善合流的效率、穩(wěn)定性和畫面質(zhì)量。
七牛 RTN 正式上線
支持各種場景無縫接入
七牛云實(shí)時音視頻云(RTN)目前已正式上線,在社交、教育、醫(yī)療、金融、會議、政務(wù)民生表現(xiàn)出了強(qiáng)大的可用性,能應(yīng)對各類場景的需求。
- 社交領(lǐng)域:支持主播之間互相連麥或主播觀眾連麥,提供美顏、濾鏡、大眼、瘦臉等功能,滿足趣味性互動。
- 教育領(lǐng)域:靈活支持一對一教育、互動小班、萬人大班,全平臺互通,支持屏幕共享,滿足多場景下的教育需求。
- 互動會議:支持小團(tuán)隊(duì)線上交流和大型在線會議,可以輕松做出一款類似 WebEx 的應(yīng)用。
- 醫(yī)療領(lǐng)域:支持遠(yuǎn)程多方視頻會診,突破醫(yī)療資源的地域限制和系統(tǒng)平臺限制,提高醫(yī)患時間地域靈活性,降低診斷成本。
- 金融領(lǐng)域:支持向技術(shù)支持人員發(fā)起視頻通話請求,技術(shù)支持人員通過視頻指導(dǎo)用戶操作,快速定位、解決問題,提升服務(wù)品質(zhì)和產(chǎn)品美譽(yù)度。
- 政務(wù)民生:支持在線庭審、遠(yuǎn)程報警、遠(yuǎn)程應(yīng)急指揮等政務(wù)音視頻通話需求,方便市政人員通過多終端瀏覽器和市民進(jìn)行雙向音視頻通話
在以上場景中,七牛 RTN 提供的一站式解決方案,能夠保存視頻,符合需要留痕的合規(guī)需求;能夠?qū)σ粢曨l進(jìn)行二次加工,在對外傳播效率方面有著極大的提升。
如今,互聯(lián)網(wǎng)的快速發(fā)展,WebRTC 技術(shù)日趨成熟,實(shí)時音視頻通信將會有更多的應(yīng)用場景以及更大的發(fā)展空間。七牛 RTN 將繼續(xù)在實(shí)時音視頻領(lǐng)域深耕,直擊實(shí)時音視頻開發(fā)痛點(diǎn),為音視頻產(chǎn)業(yè)客戶提供更有借鑒意義的創(chuàng)新技術(shù)和優(yōu)質(zhì)解決方案。