截止到2018年年底,網(wǎng)絡(luò)直播用戶(hù)已經(jīng)達(dá)到了3億多人,即是說(shuō)相當(dāng)于一半的網(wǎng)民都已經(jīng)接觸過(guò)視頻直播平臺(tái),在線(xiàn)視頻直播市場(chǎng)蘊(yùn)含著巨大的盈利商機(jī),從各大互聯(lián)網(wǎng)企業(yè)的業(yè)務(wù)拓展可以看出來(lái),直播+電商、小視頻+直播、社交+直播等模式應(yīng)運(yùn)而生,那么對(duì)于沒(méi)有接觸過(guò)直播系統(tǒng)行業(yè)的創(chuàng)業(yè)者,如果想要開(kāi)發(fā)定制一個(gè)在線(xiàn)直播軟件,需要了解哪些方面的信息?網(wǎng)絡(luò)直播軟件搭建流程又是怎么樣的?國(guó)內(nèi)知名的視頻直播系統(tǒng)搭建公司【數(shù)商云】將問(wèn)您做出詳細(xì)的解答直播系統(tǒng)搭建的技術(shù)要點(diǎn)。
一、API原生視頻直播系統(tǒng)開(kāi)發(fā)功能特點(diǎn)
1、直播系統(tǒng)WebRTC原生API
WebRTC用的不是插件,是Chrome自帶的功能,是在線(xiàn)直播系統(tǒng)原生js的API,也沒(méi)有什么瀏覽器自帶的插件。獲取圖像信源之后不應(yīng)該用websocket發(fā)送圖像數(shù)據(jù),而是直接用WebRTC的通信相關(guān)API發(fā)送圖像和聲音(這套API是同時(shí)支持圖像和聲音的)數(shù)據(jù)。
2、WebRTC不適于高流量的在線(xiàn)直播系統(tǒng)開(kāi)發(fā)
1人廣播,39人收看,在一臺(tái)i3 + 4G + Centos6.4 mini的機(jī)器上跑MCU,網(wǎng)絡(luò)電視直播軟件連續(xù)運(yùn)行48小時(shí)沒(méi)有出現(xiàn)問(wèn)題,CPU的使用率大概在60%左右,跟現(xiàn)在動(dòng)輒上十萬(wàn)的直播系統(tǒng)相比,網(wǎng)絡(luò)直播平臺(tái)功能方面簡(jiǎn)直無(wú)法媲美。所以,別迷信WebRTC,WebRTC只適合小范圍(8人以?xún)?nèi))音視頻會(huì)議,不適合做網(wǎng)絡(luò)直播。
二、做一個(gè)視頻直播平臺(tái)需要運(yùn)用哪些技術(shù)
外行人員會(huì)以為:“熟悉開(kāi)發(fā)語(yǔ)言,幾個(gè)人大約7個(gè)工作日內(nèi)就可以開(kāi)發(fā)出在線(xiàn)直播系統(tǒng)了吧”。面對(duì)這樣的想法,只能說(shuō)太天真了,把開(kāi)發(fā)搭建一個(gè)手機(jī)直播軟件想得太簡(jiǎn)單了。
定制一個(gè)在線(xiàn)直播軟件除了需要解決了上面說(shuō)的技術(shù)問(wèn)題,還需要解決傳輸問(wèn)題。網(wǎng)絡(luò)視頻直播平臺(tái)傳輸好壞,也就是視頻是否延遲、卡頓,取決于網(wǎng)絡(luò)條件好壞,公共互利網(wǎng)復(fù)雜的網(wǎng)絡(luò)環(huán)境就不用說(shuō)了,這怎么辦?
解決網(wǎng)絡(luò)直播系統(tǒng)平臺(tái)的傳輸問(wèn)題
1、用CDN加速
用CDN加速,可以盡量減少延遲。目前網(wǎng)絡(luò)視頻直播平臺(tái)業(yè)內(nèi)水準(zhǔn)來(lái)看,視頻延遲都在3-6秒之間,也就是在視頻直播時(shí),你看到的是幾秒以前的畫(huà)面。
2、花錢(qián)自己架服務(wù)器
自己架服務(wù)器,如果直播系統(tǒng)開(kāi)發(fā)部署的數(shù)據(jù)中心不夠多,那么遇上跨網(wǎng)、跨省的傳輸,還是得用CDN加速。那么為了盡可能降低延遲,就需要在全國(guó)各省市都部署數(shù)據(jù)中心,來(lái)解決跨網(wǎng)、跨省的傳輸,相較CDN,非常昂貴。
3、用別人的云服務(wù);
手機(jī)直播系統(tǒng)用云服務(wù)的話(huà),就是別人把服務(wù)器給你架好了,你只要傻瓜式的用就行了。
三、開(kāi)發(fā)網(wǎng)絡(luò)視頻直播平臺(tái)具體流程解析
1、視頻直播平臺(tái)前期處理:
現(xiàn)在網(wǎng)絡(luò)視頻直播軟件使用美顏已經(jīng)是標(biāo)配了,80%的主播沒(méi)有美顏根本沒(méi)法看。美顏算法需要懂圖像處理算法的人,沒(méi)有好的開(kāi)源實(shí)現(xiàn),要自己參考論文去研究。算法設(shè)計(jì)好了還要優(yōu)化,無(wú)論你打算用CPU還是GPU優(yōu)化,算法優(yōu)化本身也需要專(zhuān)業(yè)知識(shí)支持。
GPU雖然性能好,但是也是有功耗的。GPU占用太高會(huì)導(dǎo)致手機(jī)發(fā)燙,而手機(jī)發(fā)燙會(huì)導(dǎo)致攝像頭采集掉幀,iPhone6尤其明顯。因?yàn)閕Phone6的CPU和前置攝像頭很近,在網(wǎng)絡(luò)視頻直播軟件算法開(kāi)發(fā)、算法優(yōu)化、效果平衡上需要大量的開(kāi)發(fā)調(diào)試工作。而這一切都是需要經(jīng)驗(yàn)支撐。
2、視頻直播系統(tǒng)編碼:
如果你要上720p,肯定要采用硬編碼。軟編碼720p完全沒(méi)希望,硬件編碼不靈活。兼容性也有問(wèn)題。如何適應(yīng)紛繁復(fù)雜的網(wǎng)絡(luò)和紛繁復(fù)雜的上下行設(shè)備?安卓和芯片的坑,開(kāi)發(fā)過(guò)網(wǎng)絡(luò)直播軟件的人都知道。
那有人問(wèn),要求不高,上軟編碼低分辨率360p行不行?就算上低分辨率,軟編碼還是會(huì)讓CPU發(fā)燙,CPU過(guò)熱燙到攝像頭,長(zhǎng)期發(fā)燙不僅直接反應(yīng)是費(fèi)電。既然是手機(jī)直播,插著電源和充電器實(shí)在說(shuō)不過(guò)去吧。
還有,CPU發(fā)燙會(huì)降頻,怎么辦?這還是只說(shuō)性能方面。和前處理只影響圖像質(zhì)量和功耗不同,視頻編解碼技術(shù)還關(guān)聯(lián)成本計(jì)算和網(wǎng)絡(luò)對(duì)抗。考慮性能、功耗、成本、網(wǎng)絡(luò)這四個(gè)之后你編碼的碼率、幀率、分辨率。
網(wǎng)絡(luò)電視直播軟件傳輸:
自己做在線(xiàn)直播軟件傳輸不現(xiàn)實(shí),交給第三方服務(wù)商吧。
3、在線(xiàn)直播系統(tǒng)解碼:
如果在線(xiàn)直播軟件用硬解碼,一定要做容錯(cuò)處理,一定要做適配。突然一個(gè)crash導(dǎo)致手機(jī)重啟不好吧。安卓的硬解碼,不說(shuō)了。如果加了網(wǎng)絡(luò)目前手機(jī)的硬解碼還不一定支撐用軟解碼,功耗發(fā)熱的問(wèn)題又來(lái)了。
以上是網(wǎng)絡(luò)視頻直播系統(tǒng)開(kāi)發(fā)功能的媒體模塊,還有信令控制,登錄、鑒權(quán)、權(quán)限管理、狀態(tài)管理等等,各種應(yīng)用服務(wù),消息推送,聊天,禮物系統(tǒng),支付系統(tǒng),運(yùn)營(yíng)支持系統(tǒng),統(tǒng)計(jì)系統(tǒng)等。后臺(tái)還有數(shù)據(jù)庫(kù),緩存,分布式文件存儲(chǔ),消息隊(duì)列,運(yùn)維系統(tǒng)等。要做好視頻直播系統(tǒng)平臺(tái)的每一步都牽涉到相當(dāng)復(fù)雜的流程,需要專(zhuān)業(yè)和經(jīng)驗(yàn)豐富的開(kāi)發(fā)人員參與制作,所以說(shuō)開(kāi)發(fā)一個(gè)能用于生產(chǎn)環(huán)境的實(shí)時(shí)視頻直播平臺(tái)確非易事,跟IM里傳統(tǒng)的實(shí)時(shí)音視頻一樣,這樣的技術(shù)都是音視頻編解碼+網(wǎng)絡(luò)傳輸技術(shù)的綜合應(yīng)用體,沒(méi)有一定的技術(shù)積累,確實(shí)有很多坎需要邁過(guò)去。
數(shù)商云成功服務(wù)直播電商平臺(tái)客戶(hù)案例:
游樂(lè)快報(bào)直播平臺(tái)開(kāi)發(fā)案例
美發(fā)師分享直播平臺(tái)開(kāi)發(fā)案例
獲取更多的直播電商行業(yè)案例以及開(kāi)發(fā)報(bào)價(jià),線(xiàn)上提交留言,數(shù)商云一對(duì)一專(zhuān)業(yè)商務(wù)經(jīng)理為您服務(wù)!
<本文由數(shù)商云•云朵匠原創(chuàng),商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)標(biāo)明:數(shù)商云原創(chuàng)>
作者:云朵匠 | 數(shù)商云(微信ID:shushangyun_com)
【數(shù)商云m.zhimaihui.cn】專(zhuān)注為企業(yè)提供直播電商網(wǎng)站建設(shè)服務(wù),長(zhǎng)期為大中型企業(yè)打造數(shù)據(jù)化、商業(yè)化、智能化的在線(xiàn)直播商城系統(tǒng)解決方案,為傳統(tǒng)企業(yè)搭建一站式在線(xiàn)直播系統(tǒng)閉環(huán)體系,實(shí)現(xiàn)直播網(wǎng)站平臺(tái)數(shù)據(jù)互通、全鏈融合,綜合提升平臺(tái)運(yùn)營(yíng)效率與平臺(tái)收益。
評(píng)論