我的BOSH cammera的RTSP流有问题。我正在使用此代码流入我的程序:
VideoCapture cap("rtsp://name:password@IPaddress:554");
我得到一些流,但在几张图片后我得到了这个错误:
然后,我的流看起来像这样: 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;
}