RTSP:解码MB时出错

时间:2016-04-27 20:35:09

标签: c++ opencv stream rtsp

我的BOSH cammera的RTSP流有问题。我正在使用此代码流入我的程序:

VideoCapture cap("rtsp://name:password@IPaddress:554");

我得到一些流,但在几张图片后我得到了这个错误:

enter image description here

然后,我的流看起来像这样: enter image description here

我看到我的问题有更多解决方案,比如使用VLC库解决我的问题,或者GStreamer。但这不是我的问题的解决方案,因为我需要使用OPenCV库,将每个图像保存到MATRIX,然后使用我的特殊图像处理。 有人有解决方案吗? 是否可以创建一些缓冲区?如果回答是,任何人都可以写怎么样? 这是我的代码:

#include <opencv\cv.h>
#include <opencv2\highgui\highgui.hpp>
#include <opencv2\imgproc\imgproc.hpp>
#include <iostream>
#include <stdio.h>

using namespace std;
using namespace cv;

int main()
{
    Mat frame;
    namedWindow("video", 1);
    VideoCapture cap("rtsp://name:password@IPaddress:554");

    if(!cap.isOpened())
    {
        cout<<"Camera not found"<<endl;
        return -1;
    }

    while(1)
    {
        cap >> frame;
        if(frame.empty()) break;
        resize(frame, frame, Size(1200, 800), 0, 0, INTER_CUBIC);
        imshow("video", frame);
        if(waitKey(1000) >= 0) break;
    }   
    return 0;
}

0 个答案:

没有答案