gpt4 book ai didi

C++突然阻止使用VideoCapture从IP摄像机读取帧

转载 作者:太空宇宙 更新时间:2023-11-03 22:26:39 26 4
gpt4 key购买 nike

我正在使用 OpenCV 3。如果摄像机与网络断开连接或帧出现问题,则使用带有 IP 摄像机的 VideoCapture 抓取帧会被阻止。我首先检查 videoCapture.isOpened()。如果是,我尝试了这些方法,但似乎没有任何效果:

1)抓取器>>框架

if(grabber.isOpened()) {
grabber >> frame;
// DO SOMETHING WITH FRAME
}

2) 阅读

if(grabber.isOpened()) {
if(!grabber.grab()){
cout << "failed to grab from camera" << endl;
} else {
if (grabber.retrieve(frame,0) ){
// DO SOMETHING WITH FRAME
} else {
// SHOW ERROR
}
}
}

3) 抓取/检索

if(grabber.isOpened()) {
if ( !grabber.read(frame) ) {
cout << "Unable to retrieve frame from video stream." << endl;
}
else {
// DO SOMETHING WITH FRAME
}
}

视频流在某个点卡住,使用所有先前的选项抓取一个帧,每个选项都阻塞但不退出或返回任何错误。

你知道有没有办法处理或解决这个问题?也许一些验证、try/catch 或计时器?

最佳答案

此问题由 this merge 解决但不幸的是 opencv_ffmpeg.dll 还没有发布。

你可以找到here更新了 opencv_ffmpeg.dll 和测试。

关于C++突然阻止使用VideoCapture从IP摄像机读取帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36750685/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com