搜了網(wǎng)上一些關(guān)于如何在python中實(shí)現(xiàn)海康威視相機(jī)的連接與畫面播放的資料,最直接的方式是通過rtsp流來實(shí)現(xiàn)。
海康的rtsp協(xié)議格式如下(參考:海康相機(jī)使用RTSP):
rtsp://[username]:[passwd]@[ip]:[port]/[codec]/[channel]/[subtype]/av_stream
主碼流:
rtsp://admin:12345@192.168.1.64:554/h264/ch1/main/av_stream
rtsp://admin:12345@192.168.1.64:554/MPEG-4/ch1/main/av_stream
子碼流:
rtsp://admin:12345@192.168.1.64/mpeg4/ch1/sub/av_stream
rtsp://admin:12345@192.168.1.64/h264/ch1/sub/av_stream
對于剛買的網(wǎng)絡(luò)相機(jī),需要你更改相機(jī)的IP,將其更改到與自己電腦同一個(gè)網(wǎng)段,即前三個(gè)地址一致。并且設(shè)置好相機(jī)的用戶名和密碼。
方式一:網(wǎng)頁預(yù)覽
打開電腦的IE瀏覽器(或其他瀏覽器),在地址欄輸入你的相機(jī)的IP地址,如果還是全新的相機(jī),請去海康官網(wǎng)下載SADP軟件來更改相機(jī)的IP并激活相機(jī)( 海康威視相機(jī)配置流程)。例如我在瀏覽器輸入:127.0.0.1 然后網(wǎng)頁顯示登錄界面如下:
輸入 相機(jī)的用戶名和密碼登錄,在預(yù)覽選項(xiàng)中可實(shí)時(shí)查看畫面
方式二:VLC視頻播放器預(yù)覽
打開你的VLC media player視頻播放器,選擇 媒體->打開網(wǎng)絡(luò)串流,在打開媒體->網(wǎng)絡(luò)->請輸入網(wǎng)絡(luò)URL中填寫上面提到的rtsp格式的URL;VLC下載地址
然后點(diǎn)擊播放,即可在該播放器中實(shí)時(shí)預(yù)覽相機(jī)視頻畫面;
方式三:python讀取rtsp流
其中將下面的代碼中的相應(yīng)內(nèi)容替換成你的就OK了,如相機(jī)用戶名,密碼,IP地址和端口號(常見為554)
import cv2 cap = cv2.VideoCapture("rtsp://username:passport@ip:port/Streaming/Channels/1") ret, frame = cap.read() while ret: ret, frame = cap.read() cv2.imshow("frame",frame) if cv2.waitKey(1) & 0xFF == ord('q'): break cv2.destroyAllWindows() cap.release()
運(yùn)行上述代碼需要你安裝相應(yīng)的opencv庫,我在anaconda下運(yùn)行的,裝的是opencv-python庫。還需要你去官網(wǎng)下載海康的SDK(針對自己的電腦系統(tǒng)環(huán)境下載對應(yīng)版本)將里面的HCNetSDKCom文件夾放在python代碼同目錄下!
方法三會出現(xiàn)畫面卡頓的現(xiàn)象,具體原因分析可參考:網(wǎng)絡(luò)攝像機(jī)畫面卡頓的主要原因有哪些? 視頻花屏分析
補(bǔ)充資料:
NTPLIB時(shí)間同步問題:
Python通過NTP同步獲取時(shí)間方法
python ntp服務(wù)器同步時(shí)間
使用python同步PC本地時(shí)間
Python中的NTP時(shí)間同步
https://www.cnblogs.com/general-seven/p/5893744.html
本文為張軍原創(chuàng)文章,轉(zhuǎn)載無需和我聯(lián)系,但請注明來自張軍的軍軍小站,個(gè)人博客http://www.dlhighland.cn
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
