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内置数据结构与操作符的练习题集锦

第一题: give you two var a and b, print the value of a+b, just do it! 根据提议,给出两个变量 a 和 b 并打印出 a+b...

Python cookbook(数据结构与算法)找到最大或最小的N个元素实现方法示例

本文实例讲述了python找到最大或最小的N个元素实现方法。分享给大家供大家参考,具体如下: 问题:想在某个集合中找出最大或最小的N个元素 解决方案:heapq模块中的nlargest(...

详细介绍Ruby中的正则表达式

详细介绍Ruby中的正则表达式

正则表达式是一种特殊序列的字符,它通过使用有专门语法的模式来匹配或查找其他字符串或字符串集合。 语法 正则表达式从字面上看是一种介于斜杠之间或介于跟在 %r 后的任意分隔符之间的模式,如...

将Python代码打包为jar软件的简单方法

py 写东西快 但是java 生态广 比如大数据 py 虽然好 但是利用不到java的整个的生态的代码 scala 虽然也好但是毕竟 有些库 需要自己写的多 虽然也很简单 ,但是查文档也...

Python如何使用k-means方法将列表中相似的句子归类

Python如何使用k-means方法将列表中相似的句子归类

前言 由于今年暑假在学习一些自然语言处理的东西,发现网上对k-means的讲解不是很清楚,网上大多数代码只是将聚类结果以图片的形式呈现,而不是将聚类的结果表示出来,于是我将老师给的代码和...