用OpenCV写的播放视频的程序,有错,如下?
intmain()//播放视频文件{cvNamedWindow("Exception2",CV_WINDOW_AUTOSIZE);CvCapture*capture=NU...
int main() //播放视频文件
{
cvNamedWindow("Exception2",CV_WINDOW_AUTOSIZE);
CvCapture* capture = NULL;
capture = cvCreateFileCapture("D:\\feiq\\Recv Files\\123.rmvb.AVI");
IplImage* frame;
while(1)
{
frame = cvQueryFrame(capture);
if(!frame)
{
break;
}
cvShowImage("Example2",frame);
char c = cvWaitKey(33);
if(c == 27) //如果用户触发了ESC键(ASCII 27),循环就退出,读入视频停止。
{
break;
}
cvReleaseCapture(&capture);
/*退出循环体后,释放资源。
*/
cvDestroyWindow("Example2");
}
return 0;
}
出错:
线程 'Win64 线程' (0xe68) 已退出,返回值为 0 (0x0)。
线程 'Win64 线程' (0x150c) 已退出,返回值为 0 (0x0)。
程序“[5512] FirstOpenCVDemo.exe: 本机”已退出,返回值为 0 (0x0)。 展开
{
cvNamedWindow("Exception2",CV_WINDOW_AUTOSIZE);
CvCapture* capture = NULL;
capture = cvCreateFileCapture("D:\\feiq\\Recv Files\\123.rmvb.AVI");
IplImage* frame;
while(1)
{
frame = cvQueryFrame(capture);
if(!frame)
{
break;
}
cvShowImage("Example2",frame);
char c = cvWaitKey(33);
if(c == 27) //如果用户触发了ESC键(ASCII 27),循环就退出,读入视频停止。
{
break;
}
cvReleaseCapture(&capture);
/*退出循环体后,释放资源。
*/
cvDestroyWindow("Example2");
}
return 0;
}
出错:
线程 'Win64 线程' (0xe68) 已退出,返回值为 0 (0x0)。
线程 'Win64 线程' (0x150c) 已退出,返回值为 0 (0x0)。
程序“[5512] FirstOpenCVDemo.exe: 本机”已退出,返回值为 0 (0x0)。 展开
展开全部
int main() //播放视频文件
{
CvCapture* capture = cvCreateFileCapture("D:\\Devotion.f4v");
IplImage* frame;
while(1)
{
frame = cvQueryFrame(capture);
if(!frame)
break;
cvShowImage("Example2",frame);
char c = cvWaitKey(33);
if(c == 27) //如果用户触发了ESC键(ASCII 27),循环就退出,读入视频停止。
break;
}
cvReleaseCapture(&capture);
//退出循环体后,释放资源。
cvDestroyWindow("Example2");
return 0;
}
capture = cvCreateFileCapture("D:\\feiq\\Recv Files\\123.rmvb.AVI"); 这里载入的视频文件名不对,rmvb和AVI后缀名混了
下面的while循环不应该包括cvReleaseCapture和cvDestroyWindow,包括进去后窗口会一直建立和销毁所以什么都看不到
{
CvCapture* capture = cvCreateFileCapture("D:\\Devotion.f4v");
IplImage* frame;
while(1)
{
frame = cvQueryFrame(capture);
if(!frame)
break;
cvShowImage("Example2",frame);
char c = cvWaitKey(33);
if(c == 27) //如果用户触发了ESC键(ASCII 27),循环就退出,读入视频停止。
break;
}
cvReleaseCapture(&capture);
//退出循环体后,释放资源。
cvDestroyWindow("Example2");
return 0;
}
capture = cvCreateFileCapture("D:\\feiq\\Recv Files\\123.rmvb.AVI"); 这里载入的视频文件名不对,rmvb和AVI后缀名混了
下面的while循环不应该包括cvReleaseCapture和cvDestroyWindow,包括进去后窗口会一直建立和销毁所以什么都看不到
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询