小程序模板網(wǎng)

如何實現(xiàn)微信小程序與Native App多人連麥直播?

發(fā)布時間:2018-05-09 15:04 所屬欄目:小程序開發(fā)教程

微信在去年年底開放了小程序直播接口。小程序從僅適用于閱讀、生活服務(wù)、工具等應(yīng)用的流量入口,成為了許多音視頻應(yīng)用的又一個新平臺。新功能的開放讓更多應(yīng)用可以利用微信的熟人社交鏈為應(yīng)用快速拉新,提供便捷的增值服務(wù),或加速應(yīng)用變現(xiàn)。我們的客戶,荔枝 FM 就在小程序上實現(xiàn)語音社交直播,花椒直播也通過小程序?qū)崿F(xiàn)直播答題一擲千金的場景。

小程序直播目前對在線教育、金融、醫(yī)療、政務(wù)民生、社交行業(yè)開放了接口,而在增加互動連麥后,將能在這些場景下實現(xiàn)更豐富的業(yè)務(wù)功能,拓展出更多的使用場景,例如:

  • 線上課堂:1對1、1對多的在線直播課,適用于職業(yè)教育、小班教育、學(xué)前教育等場景,實現(xiàn)老師、學(xué)生實時互動;

  • 視頻會議:一秒快速建立多人視頻會議,實現(xiàn)高效遠程協(xié)作;

  • 在線醫(yī)療:突破醫(yī)療資源的地域限制,以及系統(tǒng)平臺限制,實現(xiàn)遠程多方視頻會診,降低診斷成本;

  • 在線購物:直播展示商品,同時觀眾連麥互動,進一步促成交易;

  • VIP 客服:專屬視頻客服,1對1實時交流;

  • 銀行**:專用網(wǎng)絡(luò),無需安裝 App,通過小程序快速實現(xiàn)信息認證與視頻**;

  • 遠程報警:從微信小程序?qū)崿F(xiàn)一鍵報警,迅速連接相關(guān)部門,并通過實時視頻通信,使警方能實時掌控現(xiàn)場情況。

通過附加低延時、高質(zhì)量的音視頻互動,可以為微信小程序延伸出更廣闊的應(yīng)用場景。不過在開發(fā)過程中還需要解決三大難點。

小程序互動連麥直播的實現(xiàn)與難點

iOS 的微信內(nèi)核瀏覽器不支持 WebRTC。如果開發(fā)者通過 WebRTC 來實現(xiàn)小程序直播,則只能在 Android 平臺上實現(xiàn)直播連麥。所以要想實現(xiàn)支持 iOS 與 Android 平臺,就需要通過微信和兩個直播接口來實現(xiàn)。

然而通過這兩個接口都是基于 RTMP 協(xié)議進行拉流與推流。這種基于 TCP 的協(xié)議天然存在較高的延時,并不適用于直播連麥場景。

如上圖,延時由兩大部分構(gòu)成:

  • 端上的延時。采集端和播放端會出現(xiàn)不同程度的延時(T1)。這一段的延時受到設(shè)備性能、編解碼算法、直播/通話時選取的分辨率和幀率等因素影響,延時可能是幾十毫秒;

  • 在端與服務(wù)器之間的傳輸延時(T2)。這一段延時受到網(wǎng)絡(luò)質(zhì)量、傳輸線路選擇、跨運營商、跨國等因素影響。上文提到小程序接口限制只能推/拉rtmp流,如果直接通過CDN傳輸,延時可達2-5s。設(shè)備端上的幾十毫秒延時跟這個相比,微不足道。

因此,解決小程序延時問題的本質(zhì)在于縮短T2的延時。

聲網(wǎng)降低延時的做法是將 RTMP 流轉(zhuǎn)換成 RTP 流,不通過 CDN 傳輸,而是通過 Agora 的私有 UDP 協(xié)議后,進行低延時的傳輸。普通的 UDP 建立的是不可靠的傳輸,因此要進行深度開發(fā)來抗丟包,讓傳輸變得可靠。并且,為了保證傳輸質(zhì)量,要搭建整套低延時的 UDP 傳輸網(wǎng)絡(luò),有較高的技術(shù)和資金門檻。若直接上公網(wǎng)傳輸,無異于“裸奔”。

如何實現(xiàn)小程序視頻連麥?

如上圖所示,實現(xiàn)邏輯中有三個關(guān)鍵點:

  • 協(xié)議轉(zhuǎn)換:在邊緣節(jié)點通過協(xié)議轉(zhuǎn)換器對小程序端發(fā)出的音視頻流進行轉(zhuǎn)換,由 RTMP 轉(zhuǎn)換成 RTP;

  • 低延時傳輸:將轉(zhuǎn)化后的 RTP 流經(jīng)過聲網(wǎng)私有 UDP 協(xié)議傳輸?shù)?Agora SD-RTN™ 全球虛擬通訊網(wǎng)絡(luò);

  • 全平臺兼容:由 Agora SD-RTN™ 通過聲網(wǎng)私有 UDP 協(xié)議可傳輸?shù)郊闪寺暰W(wǎng) SDK 的各個平臺 App 上。

聲網(wǎng)小程序直播互動連麥方案基于聲網(wǎng)Agora SD-RTN™ 實時云實現(xiàn)低延時、高質(zhì)量的實時音視頻傳輸。聲網(wǎng)小程序直播互動連麥方案可幫助開發(fā)者解決開發(fā)中的多個難點:

  1. 完美解決 iOS 端小程序連麥直播

聲網(wǎng)小程序直播互動連麥方案利用微信小程序自身的推拉流接口,與聲網(wǎng)Agora SD-RTN™ 全球虛擬通訊網(wǎng)絡(luò)配合,通過聲網(wǎng)私有的 UDP 協(xié)議實現(xiàn)了讓用戶可通過 iOS 端小程序與 Android 小程序的低延時連麥通話。聲網(wǎng)可以幫助開發(fā)者解決小程序連麥直播中的協(xié)議轉(zhuǎn)換與低延時傳輸。

  1. 全平臺無縫互通

聲網(wǎng)Agora Native SDK 支持 iOS、Android、Windows、macOS、Web 主流系統(tǒng)平臺?;诼暰W(wǎng)的小程序直播互動連麥方案開發(fā)的小程序,在 Agora SD-RTN™ 的低延時實時網(wǎng)絡(luò)環(huán)境下可實現(xiàn)與其它平臺 Native App 的無縫互通。

同時,Agora SD-RTN™ 在全球部署了近 200 個節(jié)點,采用分布式架構(gòu)、動態(tài)路由算法,可以避免網(wǎng)絡(luò)擁塞、骨干網(wǎng)絡(luò)故障。由于是全球部署,因此跨國、跨洲傳輸也能保證高可用、低延時,可為具有全球視野的開發(fā)者提供有力支持。

  1. 支持 7 人同時視頻連麥

社交直播、在線教育場景需要實現(xiàn)多人的直播連麥。在保證畫面分辨率、音頻質(zhì)量的同時,聲網(wǎng)的小程序方案目前可支持 7 人同時在線連麥互動。

  1. 高質(zhì)量,低延時

小程序與客戶端均通就“近”接入策略,讓用戶接入質(zhì)量最好的數(shù)據(jù)節(jié)點,通過 SD-RTN™ 的軟件定義優(yōu)化路由選擇最優(yōu)路徑,自動避免網(wǎng)絡(luò)擁塞,并規(guī)避骨干網(wǎng)絡(luò)故障的影響,并保證音視頻數(shù)據(jù)以最佳質(zhì)量傳輸。

聲網(wǎng)小程序體驗 Demo 已經(jīng)上線,歡迎大家掃描下方二維碼體驗!點擊了解更多技術(shù)詳情



易優(yōu)小程序(企業(yè)版)+靈活api+前后代碼開源 碼云倉庫:starfork
本文地址:http://m.u-renovate.com/wxmini/doc/course/24383.html 復(fù)制鏈接 如需定制請聯(lián)系易優(yōu)客服咨詢:800182392 點擊咨詢
QQ在線咨詢
AI智能客服 ×