【opencv的学习】播放avi视频和视频播放控制

news/2024/10/24 4:32:24/

播放硬盘中的视频文件

#include <cv.h>
#include <highgui.h>
#include<iostream>
using namespace std;int main()
{cvNamedWindow("Example2", CV_WINDOW_AUTOSIZE);				//创建窗口CvCapture* capture = cvCreateFileCapture("Example2.avi");	IplImage* frame;while (1){frame = cvQueryFrame(capture);							//将下一帧视频文件载入内存(实际是填充和更新CvCapture结构中)//返回一个对应当前帧的指针if (!frame) break;cvShowImage("Example2", frame);char c = cvWaitKey(33);if (c == 27) break;										//当用户按esc后,视频将被结束}cvReleaseCapture(&capture);									//释放CvCapture结构开辟的内容cvDestroyWindow("Example2");								//销毁窗口
}
添加滚动条以控制视频播放

#include <cv.h>
#include <highgui.h>
#include<iostream>
using namespace std;int g_slider_position = 10;
CvCapture* g_capture = NULL;
void onTrackbarSlide(int pos)									//回调函数(在滚动条被拖动时被调用)//作用:滚动条的位置将会被作为一个32位整数以参数形式传入
{//cvSetCaptureProperty与cvGetCaptureProperty配套cvSetCaptureProperty(										//设置或查看CvCapture对象的各种属性g_capture,CV_CAP_PROP_POS_FRAMES,									//该参数表示以帧数来设置读入位置,如果想通过视频长度比例来//设置读入位置,可以通过用AVI_RATIO代替FRAMES来实现pos);
}
int main()
{cvNamedWindow("Example3", CV_WINDOW_AUTOSIZE);g_capture = cvCreateFileCapture("Example2.avi");int frames = (int)cvGetCaptureProperty(					//在此处作用为获取总帧数以对滚动条进行设置g_capture,CV_CAP_PROP_FRAME_COUNT);if (frames != 0){cvCreateTrackbar(									//创建滚动条"Position",										//滚动条的名字"Example3",										//在哪个窗口创建滚动条&g_slider_position,								//滚动条的初始位置frames,											//总帧数onTrackbarSlide);}IplImage* frame;while (1){frame = cvQueryFrame(g_capture);if (!frame) break;cvShowImage("Example3", frame);char c = cvWaitKey(33);if (c == 27) break;}cvReleaseCapture(&g_capture);cvDestroyWindow("Example3");}




http://www.ppmy.cn/news/904236.html

相关文章

前端网页/html播放mp4、avi、flv等视频,兼容ie7/7+ 调用flash/windows media player播放视频

废话不多说&#xff0c;先总结下亲测的几种方法&#xff1a; video标签法&#xff08;最常用&#xff0c;兼容现代浏览器、ie9/9&#xff1b;支持格式&#xff1a;MP4、ogg、webm&#xff09;flash&#xff08;兼容大多数浏览器、ie7/7&#xff0c;逐渐被淘汰&#xff0c;chro…

用VC++5.0播放AVI文件的两种方法

用Visual C开发的面向对象的多媒体应用软件可编译成 真正的EXE可执行文件,无需附加动态库和控件,如VBX和OCX 等。有两种方法可以实现这个功能,一种方法是使用底层AVI 文件函数,从AVI视频文件中读取视频流;另一种是使用现有的 Video forin dows SDK的窗口类MCIWnd(媒体控制界面窗…

网页嵌入WMP播放器播放avi视频

WMP是Windows Media Player的缩写。Windows Media Player 是 Windows 系统自带的播放器&#xff0c;可以播放MP3&#xff0c;WMA&#xff0c;WAV等音频文件&#xff0c;RM文件由于竞争关系微软默认并不支持&#xff0c;不过在V8以后的版本&#xff0c;如果安装了解码器&#xf…

Opencv入门(播放AVI视频)

Opencv入门(播放AVI视频) 需要注意如何循环地顺序读取视频中的每一帧&#xff0c;以及退出该循环操作&#xff0c;下面是一个简单的Opencv程序&#xff0c;用于播放硬盘中的视频文件 1. #include<highgui.h> 2. int main(int argc, char** argv) 3. { 4. cvNameWindow…

Python OpenCV第六课:播放AVI文件

OpenCV既可以读取连接电脑的摄像头视频&#xff0c;也可以读取本地视频文件。读取视频文件的第一步是要创建一个 VideoCapture 对象。它的参数可以是设备索引&#xff0c;也可以是要读取的视频文件名。在大多数情况下&#xff0c;只有一个摄像头连接到系统&#xff0c;所以传&q…

用VC++制作播放AVI视频流的动画按钮

Visual C++ 开发环境为控件提供的自绘制功能使程序员能够充分发挥自己的创造性来设计比较漂亮的程序界面。所谓AVI按钮是指每当鼠标从按钮上经过时就播放一段按钮提示的AVI,在许多的游戏程序以及三维动画软件中(如摩托英豪、Cool 3D等)都广泛的采用了这种AVI按钮。它使得程序…

OpenCV—播放AVI视频

使用OpenCV来播放视频&#xff0c;主要解决的问题是如何循环的读取视频中的每一帧。代码如下 代码的分析如下&#xff1a;

如何使用JiaoZiVideoPlayer(饺子视频播放器)播放avi格式的视频

如何使用JiaoZiVideoPlayer(饺子视频播放器)播放avi等原生不支持的格式的视频 1.为什么使用JiaoZiVideoPlayer播放AVI格式的视频 有的同学可能会发现&#xff0c;部分.avi文件使用Android原生MediaPlayer也可以正常播放&#xff0c;但是这种avi文件属于非压缩格式&#xff0c;…