前言
在資料分析中,常常會有設計管理駕駛艙,或者指揮中心等綜合性資料視覺化大屏,在這種大屏設定中經常會有對接攝像頭的需求,希望能夠直接展示攝像頭檢視實時監控,或者點選大屏看板可以跳轉彈出實時監控,今天小編就為大家介紹一下如何使用葡萄城公司的嵌入式BI工具——Wyn商業智慧對接海康威視攝像頭,如下圖所示:
實現思路:
1.一種是海康提供攝像頭的實時影片流(M3U8/HLS)的檢視地址,然後就可以使用Wyn上的監控影片元件直接連線使用。
2.第二種是使用者沒有實時影片流的地址,只有海康威視攝像頭檢視站點,輸入賬號密碼才可以線上檢視監控影片;
也就是有海康攝像頭的RTSP的影片流地址,這種影片流不能直接在前端使用,需要進行轉換才可以正常前端檢視;
本文介紹透過海康威視提供的RTSP實時影片流地址,藉助後端Python程式或者透過ffmpeg+nginx將流進行轉碼,然後在Wyn上使用。
實現步驟:
1.對接攝像頭
找到要對接的海康威視攝像頭,登陸對應的站點檢視攝像頭配置。
切換到配置頁面,檢視這個攝像頭的地址,以及RTSP的埠
2.生成攝像頭的RTSP的影片流地址
海康威視的攝像頭RTSP的影片流地址格式如下:
rtsp://使用者名稱:密碼@IP:埠/h264/channel/stream/av_stream
需要根據自己攝像頭的平臺,修改連線上的使用者名稱,密碼,IP,埠。
3.部署Python後端影片流轉碼服務
小編這邊使用的是python實現了一個介面,將第二步的RTSP的影片流轉成一個HTTP介面供前端Wyn使用。
訪問的URL規則如下:
http://localhost:5000/video_feed?rtspurl=rtsp://``使用者名稱:密碼@IP:埠/h264/channel/stream/av_stream
小編這邊後端程式釋出的是5000埠,可以根據自己的需要修改程式碼,使用其它埠;
釋出的HTTP介面接收一個引數,引數值為第二步的RTSP影片流地址。
後端程式原始碼如下,可以根據自己環境部署到伺服器上:
VideoCamera.py
4.Wyn儀表板對接監控影片
在Wyn上建立儀表板使用圖片元件,繫結第3步所釋出的HTTP介面地址,即可線上實時檢視影片監控
5.透過ffmpeg+nginx將RTSP影片流轉換成M3U8格式影片
下載ffmpeg,這個大家可以從網上直接下載就行,然後在控制檯輸入如下命令就可以用ffmpeg將RTSP影片流轉成M3U8格式的影片流
ffmpeg -rtsp_transport tcp -i ``rtsp://``使用者名稱:密碼@IP:埠/h264/channel/stream/av_stream -c copy -f hls -hls_time 1.0 -hls_list_size 2 -hls_flags 2 C:/Program Files/Wyn/video/test.m3u8
這個命令需要根據自己攝像頭的平臺,修改連線上的使用者名稱,密碼,IP,埠,以及轉換後的M3U8影片流存放地址;
M3U8影片流轉換好之後,前端是不能直接訪問的,這時候需要藉助nginx進行代理來實現前端可以訪問的M3U8影片流地址;nginx大家可以網上下載,修改nginx的配置檔案,新增如下代理
location /video {
types{
application/vnd.apple.mpegurl m3u8;
video/mp2t ts;
}
root "C:/Program Files/Wyn";
add_header Cache-Control no-cache;
add_header Access-Control-Allow-Origin *;
}
代理之後就可以透過這臺機器的IP埠來進行訪問了,比如使用80埠的話,最終M3U8影片流訪問地址為:http://ip:80/video/test.m3u8
6.Wyn儀表板對接監控影片
在Wyn上建立儀表板使用監控影片元件,繫結第5步轉換後的M3U8影片流地址,即可線上實時檢視影片監控
總結
以上這兩個方式都可以實現前端載入海康威視的攝像頭影片流,以及如何使用Wyn商業智慧對接海康威視攝像頭的全過程,如果您想了解更多資訊,歡迎點選這裡檢視更多詳細資訊。
擴充套件連結:
創意展示:打造資料大屏的炫酷天氣預報外掛
聊一聊數字孿生與3D視覺化
探秘移動端BI:發展歷程與應用前景解析