它必须发生,我被困在项目的最后阶段,当我想在我的网络摄像头和 IP 摄像头上使用我的代码时,它就像一个魅力。该 URL 在我的浏览器中完美运行,但 OpenCV 没有任何结果...这是我的代码:
#include <opencv/highgui.h>
using namespace cv;
int main(int argc, char *argv[])
{
Mat frame;
namedWindow("video", 1);
VideoCapture cap("http://192.168.1.99:99/videostream.cgi?resolution=32&rate=0&user=admin&pwd=password&.mjpg");
while ( cap.isOpened() )
{
cap >> frame;
if(frame.empty()) break;
imshow("video", frame);
if(waitKey(30) >= 0) break;
}
return 0;
}
和编译器设置:
//Added to the .pro file of QtCreator
INCLUDEPATH += C:\\OpenCV243\\release\\include
LIBS += -LC:\\OpenCV243\\release\\lib \
-lopencv_core243.dll \
-lopencv_highgui243.dll
我已经测试过使用相同的代码打开一个 .avi 文件并且它可以工作......但是像这样的公共 IP 摄像头 URLhttp://66.184.211.231/mjpg/video.mjpg
却没有!那是怎么回事?
被编辑删除:我认为 FFMPEG 是一个问题,但 v2.4.3。尽管我没有安装任何 FFMPEG 库,但有内置的 FFMPEG 支持和 .avi 文件工作(需要解释一下吗?)
提前致谢,
问候,Mystère 先生