OpenCV - RTSP 流未打开

问题描述 投票:0回答:5

我有一个 RTPS 流媒体摄像头。当我用 VLC 测试时,该流工作正常:

vlc -vvv rtsp://192.168.0.23:554/stream

但是使用 openCV 它无法打开:


cv::VideoCapture capture;
bool ok = capture.open("rtsp://192.168.0.23:554/stream");

返回错误。

可能是什么原因?

opencv udp rtsp ip-camera
5个回答
2
投票

我也有类似的问题。就我而言,运行路径中缺少以“opencv_ffmpeg”开头的 dll。


1
投票

如果您使用

OpenCV 4+
,您需要复制
ffmpeg
相关的
dll
并将其粘贴到可执行文件旁边。例如,我使用
OpenCV
选项构建了
BUILD_opencv_world
,并且我的
opencv_videoio_ffmpeg430_64.dll
目录中的
bin
文件夹中有一个名为
build
的文件。如果没有该文件,它将无法打开流并且不显示任何内容。


0
投票

在 MacOS 上,这个解决方案适合我。

os.environ['OPENCV_FFMPEG_CAPTURE_OPTIONS'] = 'rtsp_transport;http'

传输不是TCP,而是HTTP


-1
投票

在 OpenCV 4 中使用 VideoCaptuer 类时,在 C++ 中,它不适用于 RTSP 流。


-3
投票

你可以通过 OpenCV 和 python 来完成,如下所示:

import cv2
str1=cv2.VideoCapture("RTSP Address")
while True:
    _,frame=str1.read()
    cv2.imshow('SOMENAME',frame)
    s=cv2.waitkey(0)
© www.soinside.com 2019 - 2024. All rights reserved.