需求描述
我們經常在做攝像機直播的時候,需要將傳統的安防攝像機的音視頻直播到公網或者內網的流媒體服務器上,那么,通常情況下我們通過一個外置的對接程序(在同一內網外掛一套程序)將攝像機的視頻數據先取到對接的服務程序,再由服務程序將音視頻直播流推送到流媒體服務器,這樣就能實現簡單的攝像機接入平台了,我們可以認為這是一種NVR程序(EasyDarwin開發了一套EasyNVR服務就是這個功能),這種方式非常適合於存量市場的攝像機接入新平台,在老設備無法升級的情況下,采用這種方案。
但是我們經常會遇到因為成本問題、網絡問題(假如是4G網絡)的情況下,我們無法外置服務對接程序,那么,我們就需要在攝像機內部對接平台了,其實在攝像機的內部,也是跑了一堆攝像機的服務進程,在flash空間、CPU、內存還有富余的情況下,我們可以將我們的對接服務,內置到攝像機里面,與平台進行 對接,內部再通過攝像機的SDK與攝像機對接,這樣就能實現攝像機直接對接平台了;
解決方案
我們以海康的攝像機對接EasyDarwin的平台為例:
外部流程:
1、我們通過主動注冊的方式,將攝像機與平台進行連接保活,等待平台的雲台轉動、視頻推送、參數查詢等指令;
2、當平台通過保活連接控制攝像機推送視頻時,攝像機內的EasyDarwin對接程序通過調用海康攝像機SDK獲取到音視頻數據,推送到流媒體平台進行直播;
內部流程:
1、我們將海康攝像機的平台對接服務內置在海康攝像機系統中與系統內的其他服務一起啟動與運行;
2、海康攝像機內的平台對接服務與海康攝像機之間的控制交互,還是通過海康的NetSDK進行,對接服務通過控制127.0.0.1的攝像機SDK對接服務,達到控制攝像機轉動、獲取音視頻數據、獲取狀態信息等動作;
3、EasyDarwin平台對接服務不需要用到系統內部其他特殊的資源,只需要足夠的flash、cpu、內存空間即可;
需要攝像機廠家配合:
1、將海康攝像機與EasyDarwin流媒體平台相對接的對接服務程序,我們已經在Windows中通過海康的攝像機SDK開發對接完成:https://github.com/EasyDarwin/EasyDarwin/tree/master/EasyCamera-HK;
2、只需要海康能夠提供關於相關對接攝像機的交叉編譯工具鏈及相應的攝像機sdk,我們即可編譯得到可在攝像機系統中運行的EasyDarwin平台對接服務程序;
3、再通過海康賦予的權限,將EasyDarwin平台對接服務程序燒到攝像機固件中,隨系統啟動運行即可;
獲取更多信息
Copyright © EasyDarwin.org 2012-2017