使用 GB28181.Solution + ZLMediaKit + MediaServerUI 進行攝像頭推流和播放

使用 GB28181.Solution + ZLMediaKit + MediaServerUI 進行攝像頭推流和播放

獨立觀察員 2020 年 8 月 25 日git

1、攝像機 GB28181 配置

打開 國標 28181 配置頁面,勾上 「接入使能」:github

 

打鉤的是重要的配置信息,主要就是 SIP 服務器的信息和攝像頭本身的編號、端口等信息。 npm

 

2、SIP 服務器 GB28181.Solution

項目地址:https://gitee.com/DLGCY_GB28181/GB28181.Solution緩存

(注:本文給出的項目地址若是是克隆的,頁面上會有 Fork 信息或者原地址,再也不單獨列出)服務器

 

使用的是 GB28181.WinTool 這個測試程序:微信

 

配置特寫:測試

 

使用流程:使用 VS 打開解決方案,修改好配置信息後,直接運行 GB28181.WinTool 項目,先點擊啓動,等待攝像頭髮來註冊信息和心跳信息,而後點擊目錄查詢,點擊出現的設備,最後點擊 「直播視頻」 便可。網站

 

程序向攝像頭髮送直播指令(INVITE)後,就是攝像頭直接向流媒體服務器以 RTP 協議發送 PS 數據流了: 編碼

 

3、流媒體服務器 ZLMediaKit

項目地址:https://gitee.com/DLGCY_GB28181/ZLMediaKiturl

 

注意:如要克隆本倉庫,還需克隆做爲子模塊的另外兩個倉庫 ———— ZLToolKit 和 media-server :

 

一、編譯項目

因爲這個是 C++ 項目,因此咱們要給 VS 安上 C++ 開發的工做負載:

 

因爲這個是 CMake 形式的項目,因此沒有解決方案文件(.sln), 咱們須要使用打開文件夾的方式:

 

打開後,咱們在 CMakeLists.txt 上右鍵,先生成緩存,成功以後再生成:

 

這樣在相關目錄就生成了配置文件 config.ini 和可執行程序 MediaServer.exe:

 

二、配置和運行

實際上也不須要怎麼配置,就是若是運行起來發現端口被佔用的話,改一下就好了。

說說後面會用到的兩個端口吧,一個是 RTP 的端口,在 rtp_proxy 節點下:

 

還有一個是 http 端口,後面播放視頻要用到:

 

配置完以後雙擊 MediaServer.exe 就能啓動了:

(感受這些提示信息不夠明確)

 

4、觀看視頻

咱們點擊 GB28181.WinTool 的 「直播視頻」 後,攝像頭就開始推流到 MediaServer 了:

 

來個特寫:

 

咱們看到出現了攝像頭的地址,同時還不斷看到一串編碼 ID,咱們拿這個 ID 就能播放視頻了。

那麼具體的視頻地址是什麼呢?做者卻是給出瞭解析方法:https://github.com/xia-chu/ZLMediaKit/wiki/ 播放 url 規則 

 

協議支持 rtsp、rtsps、rtmp、rtmps、http、https、ws、wss,咱們這裏用 http 協議測試。

虛擬主機咱們選用 IP,我這裏是 192.168.16.120

端口號因爲咱們選用 http 協議,而以前配置的是 801

應用名我暫時還不知道怎麼來的,這裏應該是 rtp

流 ID 是 24A4FFCC

因此最終直播視頻地址爲:http://192.168.16.120:801/rtp/24A4FFCC.flv 或 http://192.168.16.120:801/rtp/24A4FFCC/hls.m3u8 。

 

地址有了,咱們還須要播放器,須要支持播放流媒體的播放器,推薦使用 PotPlayer。

運行後依次點擊 「打開」–「打開連接」:

 

而後填入地址(我從新打開過了,流 ID 變了),點擊肯定便可播放。

 

播放效果:

 

flv 地址的也是同樣:

 

5、ZLMediaKit 的管理網站  MediaServerUI

項目地址:https://gitee.com/DLGCY_GB28181/MediaServerUI

(使用普通分支便可,無需使用 GB28181 分支)

 

這是一個 Vue 項目,可參考《搭建一個 VUE 項目》進行環境搭建。

 

運行(一、cnpm install  二、cnpm run serve):

 

界面:

 

視頻播放:

 

(感受這個網站比較卡)

 

本文分享自微信公衆號 - dotNET跨平臺(opendotnet)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。

相關文章
相關標籤/搜索