Python - OpenCV:无法从文件 RSTP 读取视频流



我正在测试一个小python脚本,通过RTSP从IP摄像机捕获图像。我可以通过VLC正常打开视频,并通过CLI使用ffmpeg,但使用OpenCV与Python3,我得到错误:OpenCV: Couldn't read video stream from file "rtsp://admin:admin123456@192.168.15.2:8554/profile0 "

另外,我可以用python脚本打开本地。mp4视频。这似乎是一个问题,当使用RTSP与opencv。

代码如下:

import cv2
import os
os.environ['OPENCV_FFMPEG_CAPTURE_OPTIONS'] = 'rtsp_transport;udp' # Use tcp instead of udp if stream is unstable
cap = cv2.VideoCapture("rtsp://admin:admin123456@192.168.15.2:8554/profile0")
if not cap.isOpened():
print('Cannot open RTSP stream')
exit(-1)
while True:
success, img = cap.read()
cv2.imshow('RTSP stream', img)
if cv2.waitKey(1) & 0xFF == ord('q'):  # Keep running until you press `q`
cap.release()
break
cv2.destroyAllWindows()

尝试运行python脚本,我得到错误:OpenCV: Couldn't read video stream from file rtsp://admin:admin123456@192.168.15.2:8554/profile0"

我在MacOS 12.5上也有类似的问题。

我的cv2.getBuildInformation()上有FFMPEG: YES,但仍然得到错误OpenCV: Couldn't read video stream from file

然而,使用相同的conda环境(相同的opencv-python版本),但通过jupyter笔记本而不是脚本不会出现错误,并且文件读取没有问题!

解决:

我的问题是VS Code没有权限访问磁盘。这解决了我的问题,除了我需要给VSCode权限,而不是终端:https://stackoverflow.com/a/59250494/20581881

见截图

相关内容

  • 没有找到相关文章

最新更新