基于EasyDarwin实现幼儿园监控类项目
移動互聯網越來越普及,幼兒園監控類的項目也越來越多,如何能夠以最低的成本、最快的速度搭建一套幼兒園監控類的平臺成了許多開發者的需求,那么我們今天就來簡單探討一下如何基于EasyDarwin實現一套幼兒園監控、寶貝在線視頻類的流媒體系統平臺。
1、流媒體分發:幼兒園監控不同于我們傳統意義上的家居監控,家居監控因為同時觀看的終端數量有限,多采用p2p的形式,但幼兒園監控里面,同一個攝像機可能會被很多家長同時觀看,所以多采用流媒體服務器轉發的形式來做,那么就需要用到我們的EasyDarwin流媒體服務器進行轉發和分發;
2、前端架構:這需要做兩方面的區分,老設備接入和新設備集成,我們現在大部分幼兒園在接入移動互聯網監控之前已經有了比較完善的傳統監控系統,也就是說設備(DVR、IPC、NVR)已經固定了,如果硬件換代,勢必會增加很大成本,或者說是新設備,但沒有沒有設備改造的權限,只能以標準Onvif/RTSP/SDK的形式控制設備,所以在這些模式下,我們多是采用加中間適配層來實現的,也就是說在內網攝像機與公網平臺之間需要加一臺設備來做攝像機接入,可以用簡單PC的形式來做,也可以用自己開發的嵌入式盒子來實現(這個接入的形式我們在《關于Darwin接入私有協議、私有SDK碼流的討論》有過討論):
那么具體的平臺接入方法實現,我們可以參考EasyDarwin開源項目中的EasyCamera實現:
設備與公網平臺的信令接入可以用開源的libEasyCMS實現,設備與流媒體服務器之間的流媒體推送可以用libEasyPusher實現,至于EasyCamera內部與設備怎么對接,用戶可以根據自己的需求去選擇,無論是上圖中描述的SDK接設備,還是Onvif接設備,還是簡單的RTSP接設備(RTSP接入設備我們還有libEasyNVSource庫幫忙),都可以;
3、平臺部分:平臺部分就更容易了,EasyDarwin開源項目(https://github.com/EasyDarwin/EasyDarwin)都可以用到(包括CMS中心管理服務器、EasyDarwin流媒體服務器),只要稍稍熟悉一下代碼,就能很輕松將自己定義的協議流程加入進去,也可以直接就用EasyDarwin提供的協議版本,省去了大量的開發成本;
EasyDarwin流媒體服務器還能支持多種流媒體協議輸出:RTSP、HLS、RTMP,這樣對多平臺需要的安卓、ios、web、微信直播,都能全部支持了;
4、客戶端部分:如果采用傳統C/S架構,我們可以選擇EasyPlayer開源流媒體播放器(RTSP播放器)進行直播播放;如果你用的是WEB客戶端,那么你可以采用EasyDarwin輸出RTMP直播協議的,或者如果你的延時要求不高,就可以采用EasyDarwin輸出的HLS協議;如果你是做手機直播,你可以采用HLS、RTSP、RTMP中的任何一種,如果是做手機WEB App,可以選擇EasyDarwin HLS輸出;如果你想用微信平臺做這個項目,那可以選擇HLS,完全支持微信直播;
就是這樣,功能組件都可以用上,主要是需要熟悉架構和使用的方法!
本文轉自www.easydarwin.org,更多開源流媒體解決方案,請關注我們的微信:EasyDarwin
轉載于:https://www.cnblogs.com/babosa/p/5904684.html
總結
以上是生活随笔為你收集整理的基于EasyDarwin实现幼儿园监控类项目的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: js 调用后台代码(比较实用,好记)
- 下一篇: MySQL性能调优与架构设计——第5章