openCV 视频播放

cvCaptureFromAVI函数(初始化一个视频文件捕捉器)

原型:

#define cvCaptureFromAVI cvCaptureFromFile

#define cvCaptureFromFile cvCreateFileCapture

说明:

       函数cvCaptureFromAVI()和cvCaptureFromFile()和cvCreateFileCapture()作用一样,

       文件的类型不一定必须是AVI格式,只要文件符合OpenCV播放支持的格式就能播放。

 

cvGrabFrame函数(从视频或capture 结构体中获取下一帧图像)

原型:

      int cvGrabFrame(CvCapture* capture);

参数:  

      capture   视频获取结构
返回值:
      返回值为NULL,说明到了视频的最后一帧或失败
      返回值为true,说明帧图像获取成功
 
cvRetrieveFrame函数(解码并返回抓取的帧图像)
原型:
      IplImage* cvRetrieveFrame( CvCapture* capture );
参数:
      capture   视频获取结构
返回值:
     IplImage  帧图像
说明:
     返回的图像不可以被用户释放或者修改
 
源代码:
#include <cv.h> 
#include <highgui.h>
#include <stdio.h>


int main()
{ 
	CvCapture *capture;
	IplImage *frame; 
	capture = cvCaptureFromAVI("Coil.avi");//初始化一个视频文件捕捉器
	cvNamedWindow("AVI player",0);
	while(true)
	{ 
		if(cvGrabFrame(capture))//从视频获取下一帧
		{ 
			frame=cvRetrieveFrame(capture);//解码并返回由函数cvGrabFrame抓取的图像
			cvShowImage("AVI player",frame); //在指定窗口中显示图像
			if(cvWaitKey(10)>=0)//等待10ms
			break;
		}
		else
		{ 
			break;
		}
	} 
	cvReleaseCapture(&capture);//释放CvCapture结构
	cvDestroyWindow("AVI player");//销毁一个窗口
}

效果图:
 
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值