python opencv 读取本地视频文件 修改ffmpeg的方法

yipeiwu_com6年前Python基础

Python + opencv 读取视频的三种情况:

情况一:通过摄像头采集视频

情况二:通过本地视频文件获取视频

情况三:通过摄像头录制视频,再读取录制的视频

摄像头采集、本地视频文件的读取、写视频文件,网上都有代码。

我发现情况一和情况三都没有问题,大家注意读取自己通过摄像头录制的视频文件是没有问题的。但读取其他视频都会发现帧率为0(如果你获取视频的帧率并打印出来的话),并且退出读取。这时候读取是不成功的。

进去正题:如何解决读取视频失败的情况。这个问题很普遍,以至在官方教程的程序下面都提示说请确认ffmpeg或者gstreamer已经正确安装。

解决办法:

解决方法有两种,首先找到opencv安装路径下的 /sources/3rdparty/ffmpeg 文件夹,如D:\Program Files\opencv\sources\3rdparty\ffmpeg。

如果你安装的opencv版本是2.4.9的话,将文件夹中的opencv_ffmpeg.dll文件名修改为opencv_ffmpeg249.dll;如果你安装的是opencv2.4.10,那就修改成opencv_ffmpeg2410.dll;其他版本依次类推。

如果你是64位的系统,那就修改opencv_ffmpeg_64.dll文件名为opencv_ffmpeg249_64.dll。

方法1:将opencv_ffmpeg249.dll复制到python的安装目录下,我的路劲是D:\Python27。

方法2:在windows的环境变量中添加上D:\Program Files\opencv\sources\3rdparty\ffmpeg

以上这篇python opencv 读取本地视频文件 修改ffmpeg的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python中的单继承与多继承实例分析

本文实例讲述了Python中的单继承与多继承。分享给大家供大家参考,具体如下: 单继承 一、介绍 Python 同样支持类的继承,如果一种语言不支持继承,类就没有什么意义。派生类的定义如...

python增加图像对比度的方法

本代码实现的是,在旋转10度的基础上,再进行增加对比度的操作。 1 代码: 代码注释中的代码都是可以运行的.  但是不怎么靠谱,因为文件名被逐个编辑,有可能与原标签不对应,,更...

对python中两种列表元素去重函数性能的比较方法

对python中两种列表元素去重函数性能的比较方法

测试函数: 第一种:list的set函数 第二种:{}.fromkeys().keys() 测试代码: #!/usr/bin/python #-*- coding:utf-8 -*-...

对python 树状嵌套结构的实现思路详解

对python 树状嵌套结构的实现思路详解

原始数据 原始数据大致是这样子的: 每条数据中的四个数据分别是 当前节点名称,节点描述(指代一些需要的节点属性),源节点(即最顶层节点),父节点(当前节点上一层节点)。 datas...

Python内建函数之raw_input()与input()代码解析

这两个均是 python 的内建函数,通过读取控制台的输入与用户实现交互。但他们的功能不尽相同。举两个小例子。 >>> raw_input_A = raw_inp...