微信在去年年底開放了小程序直播接口。小程序從僅適用于閱讀、生活服務(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ù)功能,拓展出更多的使用場景,例如:
通過附加低延時、高質(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)成:
因此,解決小程序延時問題的本質(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)鍵點:
聲網(wǎng)小程序直播互動連麥方案基于聲網(wǎng)Agora SD-RTN™ 實時云實現(xiàn)低延時、高質(zhì)量的實時音視頻傳輸。聲網(wǎng)小程序直播互動連麥方案可幫助開發(fā)者解決開發(fā)中的多個難點:
聲網(wǎng)小程序直播互動連麥方案利用微信小程序自身的推拉流接口,與聲網(wǎng)Agora SD-RTN™ 全球虛擬通訊網(wǎng)絡(luò)配合,通過聲網(wǎng)私有的 UDP 協(xié)議實現(xiàn)了讓用戶可通過 iOS 端小程序與 Android 小程序的低延時連麥通話。聲網(wǎng)可以幫助開發(fā)者解決小程序連麥直播中的協(xié)議轉(zhuǎn)換與低延時傳輸。
聲網(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ā)者提供有力支持。
社交直播、在線教育場景需要實現(xiàn)多人的直播連麥。在保證畫面分辨率、音頻質(zhì)量的同時,聲網(wǎng)的小程序方案目前可支持 7 人同時在線連麥互動。
小程序與客戶端均通就“近”接入策略,讓用戶接入質(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ù)詳情 |