OpenCV学习:播放avi视频文件
- #if 0
- //播放avi视频文件(IplImage)
- #include <opencv2/opencv.hpp>
- using namespace std;
- #pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")
- int main()
- {
- const char *pstrAviFileName = ".\\Res\\Microsoft_split.avi";
- const char *pstrWindowsTitle = "OpenCV.avi";
- // 从文件中读取图像
- CvCapture* pCapture = cvCaptureFromFile(pstrAviFileName);
- if (!pCapture)
- {
- cout << "Fail to capture avi file!" << endl;
- return -;
- }
- IplImage *pImage = NULL;
- //创建窗口
- cvNamedWindow(pstrWindowsTitle, CV_WINDOW_AUTOSIZE);
- while()
- {
- pImage = cvQueryFrame(pCapture);
- if (!pImage)
- {
- cout << "Fail to query avi frame image!" << endl;
- break;
- }
- //在指定窗口中显示图像
- cvShowImage(pstrWindowsTitle, pImage);
- if (cvWaitKey() >= )
- {
- break;
- }
- }
- cvReleaseCapture(&pCapture);
- cvDestroyWindow(pstrWindowsTitle);
- return ;
- }
- #endif
- #if 1
- //播放avi视频文件(Mat)
- #include <opencv2/opencv.hpp>
- using namespace std;
- using namespace cv;
- #pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")
- int main()
- {
- const char *pstrAviFileName = ".\\Res\\AviDemo.avi";
- const char *pstrWindowsTitle = "OpenCV.avi";
- VideoCapture cap(pstrAviFileName);
- //检查是否成功打开
- if(!cap.isOpened())
- {
- cerr << "Can not open a camera or file." << endl;
- return -;
- }
- Mat im;
- //创建窗口
- cvNamedWindow(pstrWindowsTitle, CV_WINDOW_AUTOSIZE);
- while()
- {
- cap >> im;
- if (im.empty())
- {
- break;
- }
- //在指定窗口中显示图像
- imshow(pstrWindowsTitle, im);
- if(waitKey() >= )
- {
- break;
- }
- }
- //退出时会自动释放cap中占用资源
- return ;
- }
- #endif
运行结果:
OpenCV学习:播放avi视频文件的更多相关文章
- 1.0.1-学习Opencv与MFC混合编程之---播放AVI视频
资源源代码:http://download.csdn.net/detail/nuptboyzhb/3961639 版本1.0.1新增内容 Ø 新建菜单项,Learning OpenCV——> ...
- OpenCV 入门示例之二:播放 AVI 视频
前言 本文展示一个播放 AVI 视频的程序.( 呵呵是 AVI 视频不是 AV 视频噢! ) 代码示例 // 此头文件包含图像IO函数的声明 #include "highgui.h" ...
- ASP.NET MVC应用程序播放AVI视频
前面Insus.NET实现一系列在MVC应用程序播放SWF, FLV, WMV, RM, RMVB视频.每篇使用不同的方法方式,大同小异.这篇中,为了MVC应用程序播放AVI视频,用纯M, V, C来 ...
- avi视频文件提取与合并
最近在做一个avi视频文件的提取与合并,花了几天熟悉avi文件格式.制作了一个提取与合并的动态库,不过仅限于提取视频,视频的合并还没添加一些额外判断,可能导致不同分辨率的视频文件合成后不能播放.欢迎大 ...
- PyQt+moviepy音视频剪辑实战1:多个音视频合成顺序播放或同屏播放的视频文件实现详解
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt+moviepy音视频剪辑实战 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一. ...
- OpenCV学习 2:播放AVI视频
原创文章,欢迎转载,转载请注明出处 第二个程序,播放视频.用opencv做起来是如此的简单..哈哈. 学Opencv,只是为了在它的基础上实现工程应用,而它里面高深的理论我等屌丝只 ...
- [学习OpenCV攻略][004][播放AVI视频]
cvCreateFileCapture(文件路径) 创建一个影音文件录像机,返回值为CvCapture类型,用于读取视频文件 cvQuerFrame(视频) 将下一帧视频文件载入内存,当CvCaptu ...
- OpenCV —— 写入AVI视频文件
打开视频文件,对每一帧进行极坐标变换,然后将转换生成的图像序列写入视频文件中 #include "cv.h" #include "highgui.h" int ...
- 如何在asp.net中如何在线播放各类视频文件
一.后台拼字符串动态加载写法 前台调用代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &q ...
随机推荐
- RAID卡 BBU Learn Cycle周期的影响
背景 最近遇到有些带MegaSAS RAID卡的服务器,在业务高峰时突然IO负载飚升得很高,IO性能急剧下降,查了日志及各种设置最后才发现是RAID卡的Cache写策略由 WriteBack变成Wri ...
- Linux /proc目录详解
Linux系统上的/proc目录是一种文件系统,即proc文件系统.与其它常见的文件系统不同的是,/proc是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,用户可以通过 ...
- git 分支管理 推送本地分支到远程分支等
1.创建本地分支 local_branch git branch local_branch 2.创建本地分支local_branch 并切换到local_branch分支 git checkout - ...
- dp之最长递增、公共子序列总结
1.最长递增子序列模板poj2533(时间复杂度O(n*n)) #include<iostream> #include<stdio.h> #include<string. ...
- RSA 算法-MSDN文档
RSA 算法 若要生成密钥对,可以从创建名为 p 和 q 的两个大的质数开始. 这两个数相乘,结果称为 n. 因为 p 和 q 都是质数,所以 n 的全部因数为 1. p. q 和 n. 如果仅考虑小 ...
- Java Web开发中用Tomcat部署项目的三种方法
第一种方法:在tomcat中的conf目录中,在server.xml中的,<host/>节点中添加: <Context path="/hello" docBase ...
- 教程-在Delphi中怎么查看是否有内存泄漏(Delphi2007)+WIN7
相关资料:1.http://bbs.csdn.net/topics/390630932?page=1 PS:1.本实例D2007及以上版本支持.2.检测内存工具 EurekaLog fastmm 实例 ...
- ios最新调用手机相册选取头像(UIActionSheet过期)
由于 UIActionSheet过期所以可以使用如下调用手机相册 前提不要忘记添加代理如下两个 UIImagePickerControllerDelegate,UINavigationControll ...
- hbase计数器
1 计数器 计数器可以方便.快速地进行计数操作,而且避免了加锁等保证了原子性的操作. 1.1 Java API 操作 HBase 计数器 public Result increment(final ...
- 恶补java基础 位运算符
以前不知道在哪看过别人写博客里的一句话 “越学的深入觉得自己会的东西越少”.最近研究了一下java的基础算法 hash表 被一些位运算符搞的头都大了 决心花一些时间研究一下以前一直觉得没用的东西! ...