我有一个Python脚本来处理图像,当使用本地视频名称(例如:
cap = cv2.VideoCapture("SomeVideo.mp4")
但是,当使用RTSP源中的视频运行此脚本时,它无法打开它,将image变量作为NoneType对象返回。
cap = cv2.VideoCapture("rtsp://localhost:8554/")
另一方面,当在兔子视频(rtsp://184.72.239.149/vod/mp4:BigBuckBunny_115k.mov
)上运行相同的代码时,它也可以顺利运行,这清楚地表明RTSP流无法正常工作,但是如果我尝试使用VLC的网络媒体和相同的RTSP地址可以毫无问题地播放视频。
我正在从我的电脑中流式传输视频,因此不确定是否会引起任何问题。为了简单起见,我正在运行的代码可以是以下代码:
import cv2
cap = cv2.VideoCapture("rtsp://localhost:8554/")
success,img = cap.read()
while success:
success,img = cap.read()
while success == False:
success,img = cap.read()
cv2.imshow('img', img)
if cv2.waitKey(1) == 27:
break
cap.release()
cv2.destroyAllWindows()
关于为什么流式传输只能在Python中而不在VLC上失败的任何想法? (我使用了自己的IP而不是localhost,但结果没有变化) 谢谢!