1
如何在应用程序继续运行时释放相机。它仍处于状态。这里是代码。我不知道如何释放它如何释放相机
#include <cv.h>
#include <highgui.h>
main(int argc, char* argv[]) {
int i=1;
CvCapture* capture = NULL;
capture = cvCreateCameraCapture(0);
IplImage *frames = cvQueryFrame(capture);
while(1) {
if (i==20)
cvReleaseCapture (&capture);
char c = cvWaitKey(33);
if(c == 27) break;
i++;
}
return 0;
}
克里斯我没有故意破坏它。我想在流程存活时释放相机。在这种情况下,该过程将在达到第20帧时关闭。 – user2551056
@ user2551056如果您之后做了某些事情,该过程仍可以存活。你能给我一个用例吗?我很难理解你的问题。你必须不断调用'cvQueryFrame'来获取相机的新帧,但如果你释放相机,你不能这样做(你的程序会崩溃)。 – Chris
我很抱歉没有提供完整的信息。我想在另一个过程中使用相机而不会杀死第一个。例如,如果我运行使用相机的第二个进程,则会出现以下错误:VIDIOC_STREAMON:设备不适用的ioctl。第一个过程是不释放相机,我希望它活着。 – user2551056