求助。。获取视频的全部帧图像

brucezhang120912 2014-12-03 09:32:15
在Qt中,我用QMediaPlayer 读入了一个视频,并用QVideoFrame在播放过程中对每帧的图像进了处理,但我有以下问题:1,能否读入视频后,快速获取视频的全部帧图像?2,能否把处理后的视频进行保存输出?
求好心人帮忙!谢谢!
...全文
369 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
brucezhang120912 2014-12-06
  • 打赏
  • 举报
回复
引用 1 楼 foruok 的回复:
你需要ffmpeg,它可以实现你的需求,一个循环就搞定了。
我用结合opencv了,但是合成的视频就是播放不了,这是为什么呀? CvCapture* capture = cvCaptureFromAVI(CanshuChuandi::globalVideoPath.toLatin1().data()); int frameH = (int) cvGetCaptureProperty(capture, CV_CAP_PROP_FRAME_HEIGHT); int frameW = (int) cvGetCaptureProperty(capture, CV_CAP_PROP_FRAME_WIDTH); int fps = (int) cvGetCaptureProperty(capture, CV_CAP_PROP_FPS); int nFrames = (int) cvGetCaptureProperty(capture, CV_CAP_PROP_FRAME_COUNT); CvVideoWriter *writer = 0; writer =cvCreateVideoWriter(outputVideoPath.toLatin1().data() , CV_FOURCC('X','V','I','D'), fps , cvSize(frameW , frameH) , 1); IplImage *img = cvCreateImage( cvSize(frameW, frameH), 8, 3 );; for(int i =0 ; i<nFrames ; i++) { img = cvQueryFrame(capture); img = Chuli(img); cvWriteFrame(writer , img); }
foruok 2014-12-04
  • 打赏
  • 举报
回复
你需要ffmpeg,它可以实现你的需求,一个循环就搞定了。

16,216

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧