OpenCV - 如何捕获 rtsp 视频流



例如,我们有工作RTSP流测试,例如:"rtsp://184.72.239.149/vod/mp4:BigBuckBunny_115k.mov"(它在发布这篇文章的那一刻起作用)

现在我想在 openCV 中捕获此视频流 (opencv 2.4.7/2.4.8)我的代码在本地电影文件上运行良好,但是当我尝试捕获 rtsp 时,我收到如下消息:"无法读取电影文件 rtsp://184.72.239.149/vod/mp4:BigBuckBunny_115k.mov"

我尝试了几种不同的方法,例如:

CvCapture *camera = cvCreateFileCapture("rtsp://184.72.239.149/vod/mp4:BigBuckBunny_115k.mov"); 
if (camera == NULL) {
 printf("video is null, aborting...");
 return -1;
}
else{ 
 printf("video ok");
}

或:

cv::VideoCapture vcap;
//open the video stream and make sure it's opened
if(!vcap.open("rtsp://184.72.239.149/vod/mp4:BigBuckBunny_115k.mov")) {
    std::cout << "Error opening video stream or file" << std::endl;
    return -1;
}

知道吗?

--

尼德维德

以下代码对我没有任何问题。如果您有流的用户名和密码,请不要忘记将其包含在 url 地址中。

cv::VideoCapture capture(url);
if (!capture->isOpened()) {
    //Error
}
cv::namedWindow("TEST", CV_WINDOW_AUTOSIZE);
cv::Mat frame;
while(m_enable) {
    if (!capture->read(frame)) {
        //Error
    }
    cv::imshow("TEST", frame);
    cv::waitKey(30);
}

相关内容

  • 没有找到相关文章

最新更新