我正在尝试使用opencv 4.0 python 3.7从IP摄像机获取实时供稿。我知道cam的IP地址,管理员和密码。我有一家“ Wifi智能相机”公司的相机,相机的网址很可能是这样的格式;
rtsp://admin:password@192.168.1.20/live/ch00_0
这是我看到此信息的链接
https://www.ispyconnect.com/man.aspx?n=Wifi+Smart+Net+Camera#
这是我的python代码
import numpy as np
import cv2
cap = cv2.VideoCapture()
cap.open("rtsp://admin:admin123@192.168.4.18/live/ch00_0")
while(True):
# Capture frame-by-frame
ret, frame = cap.read()
# Our operations on the frame come here
# Display the resulting frame
if ret:
cv2.imshow('frame',frame)
else:
print("no frame occur")
break
if cv2.waitKey(1) & 0xFF == ord('q'):
break
# When everything done, release the capture
cap.release()
cv2.destroyAllWindows()
我收到此错误
no frame occur
[tcp @ 0x558625a859c0] Connection to tcp://192.168.4.18:554?timeout=0 failed: Connection refused
有趣的是,当我像下面那样在URL中添加端口时,不会发生错误,但是流也不会被提取
cap.open("rtsp://admin:admin123@192.168.4.18:8800/live/ch00_0")
另一件事使我感到困惑。当我使用V380 Android App访问IP cam时 我也输入了admin,密码和设备ID 。看到这张图片。 Android App Activity 我看到很多堆栈问题,没有人建议将设备ID放入URL。
如何使用以下信息访问IP Cam流;
管理员, 密码, 凸轮IP添加, 设备ID。