opencv-python调用海康威视网络摄像头没反应

浏览器输入摄像头地址可以访问摄像头,但用python无法调用,电脑自带摄像头可以调用,代码运行显示正常结束,cap.isOpened()返回false,求解决

浏览器可以访问摄像头:

img

代码:

# coding=utf-8
import cv2

cv2.namedWindow('HCVideo')
url = "rtsp://admin:acy2309386@192.168.0.12/Streaming/Channels/2"
cap = cv2.VideoCapture(url)
print(cap.isOpened())
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()

这是代码运行结果:

img

打开的代码加上下面的这个呢?一般高清点的都得要这个参数,不然无法打开。另外还有几个参数和CAP_DSHOW作用差不多,也可以试一试看下那个适用

cap = cv2.VideoCapture(url, cv2.CAP_DSHOW)