使用OpenCV播放视频,就是将视频中的每一帧顺序的读取出来。
例1:一个简单的OpenCV程序,用于播放事先存储在特定位置的视频文件
#include "highgui.h"
#pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"") //用于屏蔽控制台应用程序的窗口
int main()
{
const char*AviName="MV.mp4";
const char*WindowsTitle="MV";
cvNamedWindow(WindowsTitle,0);
CvCapture*capture=cvCreateFileCapture(AviName);
IplImage*frame;
while (1)
{
frame=cvQueryFrame(capture);
if(!frame)
break;
cvShowImage(WindowsTitle,frame);
char c=cvWaitKey(33); //当前帧被显示后,等待33ms,如果其间触发了一个按键,则返回该键的ASCII码值;否则,返回-1
if(c==27) //如果用户触发了ESC键(ASCII 27),跳出循环
break;
}
cvReleaseCapture(&capture);
cvDestroyWindow("WindowsTitle");
}