opencv cvCaptureFromFile读取视频总返回NULL

原创 2016年06月23日 16:21:43

转载 请注明t1234xy4 原创:http://blog.csdn.net/t1234xy4/article/details/51744313


之前一直使用台式机win7 x64位系统做图形图形处理,调用opencv库函数一直很正常;然而最近使用笔记本处理时总是读取不到cvCaptureFromFile视频文件。

一、问题原因

1、可以是读取的文件目录存在问题,找不到相应的视频文件,导致返回NULL;

2、读取的视频文件存在问题,不是真正的视频文件;

3、缺失解码


由于我是从台式机上copy过来的项目,前两总情况基本不成立;由于系统的差异,我还是测试了路径中使用‘/’ 或者'\\'、间接路径改为直接路径等,但是任然没有解决。


二、解决方法

通过一系列的测试,我最终锁定问题3,于是检索相关问题解决方案。

1、部分解决方法  下载xvid并安装,https://www.xvid.com/download/ 。

2、另一种说法是下载K-Lite_Codec_Pack 软件安装,里面包含了需要的解码接口。

然而,这两种方法都没有解决我存在的问题,最初我还以为是设置除了问题,是不是环境变量设置不对,安装以上的软件是不需要配置,但总觉得挺麻烦,于是冷静下来,从头在思考。总觉得opencv设计不应该存在这么强依赖性的缺陷,于是我想到是不是缺少组件。因为编译通过,程序可以运行,我就认为配置上不会存在问题,但还是看了看相关dll。

3、缺少opencv_ffmpeg2410.dll,将opencv_ffmpeg2410.dll加入到项目根文件夹下或者debug中。


相关文章推荐

【opencv】cvCaptureFromFile的使用

OpenCV中cvCaptureFromFile()用于从.avi文件中读取视频,并返回CvCapture结构指针。典型用法如下:...

解决opencv中cvCaptureFromFile不能打开一些视频文件

      在opencv编程的过程中会遇到自己编写的程序无法打开*.avi文件的情况。只要在http://www.xvidmovies.com/codec/下载xvid coder安装后一般情况就可...

OpenCV参考手册之CvCapture结构体

CvCapture是一个结构体,用来保存图像捕获的信息,就像一种数据类型
  • sysstc
  • sysstc
  • 2014年05月06日 17:50
  • 21723

cvCaptureFromFile读取视频文件失败

cvCaptureFromFile不能打开一些视频文件这个问题跟video codec相关。 我一般只使用xvid codec,从这儿http://www.xvidmovies.com/code...
  • ydc321
  • ydc321
  • 2017年01月23日 16:14
  • 385

OpenCv中cvCaptureFromFile返回NULL的问题

使用cvCaptureFromFile读取.avi文件时总返回NULL 所用代码: CvCapture* pCapture = cvCaptureFromFile(videoFilename); ...

OpenCV1.0版本中cvCaptureFromFile()函数无法读取.avi文件的解决办法

其实我是被这个问题困扰好久以后,在之前大牛的指点下搞定的。所以,首先要谢谢之前的分享的高手。具体情况如下:  运行一个demo程序,视频跟踪的,使用提供的视频文件没有问题。可以很好的读入,程序运行正常...

opencv 2.4.9 无法读取视频的解决办法

昨天在做opencv读取视频的例子时,程序编译都没有错,但是就是返回值-1,视频读不出来,百度了好久,才发现是都指向ffmpeg视频解码没有安装,实际已经将ffmpeg-64.dll复制到开发环境中,...

OpenCV:使用VideoCapture类进行视频读取和显示-Mat

直接代码  很是详细 原文来自:http://blog.csdn.net/thefutureisour/article/details/7530344 http://blog.163.com/yu...

读视频文件和运动物体检测cvCaptureFromCAM cvQueryFrame

// 读视频文件和运动物体检测.cpp : Defines the entry point for the console application. // #include "stdafx.h" #...

OpenCV-cvCreateFileCapture()或者cvCaptureFromFile()打不开avi视频

用cvCreateFileCapture()和cvCaptureFromFile()打开avi视频,得到的cvCapture却一直为NULL,后来发现是因为Video codec解码器不存在或有误。 ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:opencv cvCaptureFromFile读取视频总返回NULL
举报原因:
原因补充:

(最多只允许输入30个字)