一种将海康大华宇视等安防摄像机发布到H5网页微信进行直播的全终端无插件播放技术方案
在淘寶/螢石/樂橙/微吼/趣看等類型商業(yè)直播應(yīng)用大規(guī)模開展的今天,高大上的直播形態(tài)似乎占據(jù)了主流,然而這些直播對(duì)于普通型的公司似乎成本有點(diǎn)高,而且不能夠長線、無顧慮地進(jìn)行,所謂無顧慮地進(jìn)行直播,指的不是直播系統(tǒng)的穩(wěn)定性,而是其成本的穩(wěn)定性,試著對(duì)比一種一直在被流量消耗扣錢的心態(tài)和每天樂此不疲地用花生殼動(dòng)態(tài)域名解析進(jìn)行直播的心態(tài),是完全不一樣的體驗(yàn);
通過EasyDarwin開源項(xiàng)目、開源社區(qū)、開源用戶,我們接觸了大大小小各行各業(yè)的直播需求形態(tài),大多數(shù)用戶選擇了最省錢的一種方式:用自有的IPC安防攝像機(jī)做為視頻源(攝像機(jī)+拾音器),用企業(yè)自己的固定線路進(jìn)行長時(shí)間不間斷的常態(tài)化直播,省錢啊!
上面說到的這種需求形態(tài),在toB類的企業(yè)級(jí)應(yīng)用中,尤其是在較大型的企業(yè)需要,如:石油、航天、安監(jiān)、農(nóng)業(yè),他們有一個(gè)共同點(diǎn),前期已經(jīng)投入了大量的經(jīng)費(fèi)構(gòu)建自己的專用網(wǎng)絡(luò),有固定IP,帶寬上下行足夠大,流量不用也是浪費(fèi),基于自身安全保密考慮,需要在自建的網(wǎng)絡(luò)中建設(shè)直播方案;
場(chǎng)景要義:有帶寬,有服務(wù)器,有固定IP,有攝像頭,就想做自己的直播,不想用CDN,采用一切可以采用的資源,自建流媒體服務(wù)!
二、技術(shù)實(shí)現(xiàn)方法
基于以上的場(chǎng)景需求,技術(shù)層面上,流媒體系統(tǒng)的業(yè)務(wù)需求基本就是:
1、RTSP安防流轉(zhuǎn)RTMP互聯(lián)網(wǎng)流,進(jìn)行互聯(lián)網(wǎng)RTMP/HLS(m3u8)直播
- 此部分是功能的核心,如何能夠穩(wěn)定、支持重連、低延時(shí)、時(shí)間戳均勻地進(jìn)行RTMP、HLS直播,大部分情況下,ffmpeg技術(shù)是開發(fā)者的首選,能夠兼容絕大部分的RTSP流和高效的RTMP推流,而且能夠保持低延時(shí),如果僅僅是用來做一個(gè)演示Demo,那么用ffmpeg的命令就能搞定,通過:ffmpeg -re -i rtsp://xxx -f flv rtmp://xxx,這種命令形式,就能達(dá)到基本的效果。但是這樣會(huì)有一個(gè)缺點(diǎn),就是ffmpeg.exe目前不帶自動(dòng)斷線重連的功能,所以,ffmpeg.exe只能做為臨時(shí)演示的Demo來用;
- 另一種方式就是基于ffmpeg或者 EasyRTSPClient + EasyRTMP 技術(shù)的二次開發(fā)功能,自己開發(fā)出支持重連的RTSP拉流轉(zhuǎn)RTMP推流的功能,這個(gè)方案我們?cè)诓┛汀禘asyRTMP實(shí)現(xiàn)將RTSP流轉(zhuǎn)換成RTMP流實(shí)現(xiàn)RTSP直播轉(zhuǎn)RTMP直播的功能》和《EasyRTMP+EasyRTSPClient實(shí)現(xiàn)的多路(支持?jǐn)嗑€重連)RTSP轉(zhuǎn)RTMP直播推流工具》中已經(jīng)詳細(xì)描述。ffmpeg來做的話,也將會(huì)是同樣的方法,對(duì)每一路直播的“RTSP轉(zhuǎn)RTMP”維護(hù)一個(gè)Session,每一個(gè)Session有一個(gè)ffmpeg拉流的RTSPSource和一個(gè)RTMP推流的RTMPSink,ffmpeg再維護(hù)RTSPSource的重連和RTMPSink的重連,以達(dá)到對(duì)IPC攝像機(jī)源和RTMP流媒體服務(wù)器/CDN的穩(wěn)定連接和流轉(zhuǎn)發(fā);
2、外圍對(duì)這些RTSP輸入源與RTMP輸出源進(jìn)行通道化的管理;
按照1中的描述,我們不但要做“RTSP流轉(zhuǎn)RTMP流”的功能,還要做一個(gè)外圍的、有效的Source和Sink,從配置、修改、啟用/禁用、列表查詢、到平臺(tái)對(duì)接等一系列功能的管理系統(tǒng),這個(gè)功能其實(shí)就是類似NVR的通道管理的概念,而且通道管理還需要增加一些增值化的服務(wù)就更好了,比如:在線狀態(tài)、通道快照、是否啟用音頻、是否長時(shí)間拉流推流/還是有人看的時(shí)候再拉轉(zhuǎn)推(也就是按需直播的概念),等等一系列的管理功能;
3、互聯(lián)網(wǎng)化的多現(xiàn)場(chǎng)云端集中化管控
有時(shí)候,隨著我們的系統(tǒng)應(yīng)用場(chǎng)景中,現(xiàn)場(chǎng)數(shù)量超過一個(gè),而且經(jīng)常有需要對(duì)現(xiàn)場(chǎng)接入攝像機(jī)進(jìn)行不受限制的云端管控的需求的時(shí)候,我們就會(huì)遇到這樣的一些問題:
-
流媒體轉(zhuǎn)換服務(wù)(RTSP轉(zhuǎn)RTMP)置于內(nèi)網(wǎng)現(xiàn)場(chǎng),多個(gè)內(nèi)網(wǎng)現(xiàn)場(chǎng)的
需要在云端進(jìn)行集中化的管控; -
我們需要一套能夠在解決以上所有問題的同時(shí),能夠?qū)λ薪尤氲臄z像機(jī)、NVR、視頻設(shè)備進(jìn)行可視化運(yùn)維管理的系統(tǒng);
-
如果我們能夠在云端就能夠在云端就能夠進(jìn)行現(xiàn)場(chǎng)視頻設(shè)備的問題排查、數(shù)據(jù)運(yùn)維,那將會(huì)節(jié)省多少成本?
三、方案推薦
上面描述了這種業(yè)務(wù)需求的要義和解決方案方法,實(shí)際對(duì)于大部分的企業(yè),如果從底層開發(fā)做起,需要非常多年限的技術(shù)積累,而且對(duì)于大部分的企業(yè)來說,專注于上層應(yīng)用可能會(huì)比在這種技術(shù)底層上消耗大量的精力時(shí)間,要獲得到更大的收益,所以,我們更傾向于推薦成熟、可靠、知識(shí)產(chǎn)權(quán)完備的產(chǎn)品:EasyNVR,
這個(gè)在之前的博客中也已經(jīng)詳細(xì)描述過一些應(yīng)用的場(chǎng)景了《基于EasyNVR實(shí)現(xiàn)RTSP/Onvif監(jiān)控?cái)z像頭Web無插件化直播監(jiān)控》,EasyNVR在這一塊已經(jīng)經(jīng)過了很多用戶和應(yīng)用場(chǎng)景的論證,對(duì)一般的企業(yè)級(jí)直播需求是完全能夠滿足的,而且還能對(duì)接到CDN,可以說是一款足夠“小而美”的應(yīng)用產(chǎn)品!
1、EasyNVR適用于各種網(wǎng)絡(luò)場(chǎng)景中
2、EasyNVR適用的案例
基于EasyNVR實(shí)現(xiàn)了很多行業(yè)場(chǎng)景的直播需求,目前已經(jīng)廣泛應(yīng)用于石油油田、水利大壩、園區(qū)監(jiān)控、幼兒園直播、景區(qū)直播:
上為一水利監(jiān)控項(xiàng)目應(yīng)用,EasyNVR服務(wù)器一邊擁有內(nèi)網(wǎng)訪問權(quán)限,一邊擁有公網(wǎng)固定IP,采用的是方案1x
上為一施工工地網(wǎng)頁監(jiān)控項(xiàng)目,采用的EasyNVR方案一
上為一幼兒園直播監(jiān)控項(xiàng)目,面向家長進(jìn)行幼兒園微信直播,采用的EasyNVR方案一
上為一園區(qū)監(jiān)控網(wǎng)頁監(jiān)控項(xiàng)目,采用的EasyNVR方案一
上為一施工工地網(wǎng)頁監(jiān)控項(xiàng)目,采用的EasyNVR方案一
上為中石油地點(diǎn)網(wǎng)頁監(jiān)控項(xiàng)目,采用的EasyNVR方案二
上為黃山某景區(qū)微信直播項(xiàng)目,采用的EasyNVR方案二
EasyNVR能夠通過簡(jiǎn)單的網(wǎng)絡(luò)攝像機(jī)通道配置,將傳統(tǒng)監(jiān)控行業(yè)里面的高清網(wǎng)絡(luò)攝像機(jī)IP Camera、NVR等具有RTSP協(xié)議輸出的設(shè)備接入到EasyNVR,EasyNVR能夠?qū)⑦@些視頻源的音視頻數(shù)據(jù)進(jìn)行拉取,轉(zhuǎn)換為RTMP/HLS,進(jìn)行全平臺(tái)終端H5直播(Web、Android、iOS),并且EasyNVR能夠?qū)⒁曨l源的直播數(shù)據(jù)對(duì)接到第三方CDN網(wǎng)絡(luò),實(shí)現(xiàn)互聯(lián)網(wǎng)級(jí)別的直播分發(fā);
EasyNVR官方網(wǎng)站:www.easynvr.com
總結(jié)
以上是生活随笔為你收集整理的一种将海康大华宇视等安防摄像机发布到H5网页微信进行直播的全终端无插件播放技术方案的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Lua和C/C++交互的注意点_艾孜尔江
- 下一篇: [Pytorch系列-42]:工具集 -