python opencv 读取本地视频文件 修改ffmpeg的方法
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整合ffmpeg实现视频文件的批量转换
转换工具层出不穷,ffmpeg才是全能的转换工具,只是不支持图形操作. 没有关系,命令行方式,在freebsd/linux下直接来 我们的思路是,设定一个文件夹存放源视频文件,python读取该文件夹下的全部文件,并对文件通过ffmpeg进行分析,根据需要,修改目标文件的编码.分辨率等等,调用ffmpeg转换. 我这次的需求是,我家液晶电视只支持分辨来,长宽均小于720,编码只支持divx/xvid的avi文件,且fps只能小于25--多次实践,才总结出来的,电视说明书也没说!! 下面的程序将
-
python+ffmpeg视频并发直播压力测试
通过python与ffmpeg结合使用,可生成进行视频点播.直播的压力测试脚本.可支持不同类型的视频流,比如rtmp或者hls形式. 通过如下方式执行脚本:python multiRealPlay.py [rtmp|http] [thread counts] [interval Time] [rtmp | http]:视频播放的不同形式 [thread counts]:并发线程数 [interval Time]:启动每个线程的间隔时间 代码: #!/usr/bin/python # -*- co
-
python调用系统ffmpeg实现视频截图、http发送
python 调用系统ffmpeg进行视频截图,并进行图片http发送ffmpeg ,视频.图片的各种处理. 最近在做视频.图片的版权等深度学习识别,用到了ffmpeg部分功能,功能如下: 调用ffmpeg 对不同目录视频进行截图,通过http发送到后台进行算法识别. 每5分钟扫描最近的视频,生成图片,发送完毕图片删除. 代码如下: #!/usr/bin/env python # -*- coding: utf-8 -*- """'定时任务每五分钟发送上一个5分钟视频 目
-
python+ffmpeg批量去视频开头的方法
用来批量切割视频的开头部分,比如去掉一部电视剧的序幕,看着难受不说数量还很多,很菜鸟的一篇,毕竟我也是一个菜鸟,首先要有ffmpeg这个软件,安装什么的就不说了,网上一搜就出来了,直接给代码,以后丢了也不怕.自用的,没写那么多 #/usr/bin/python #coding:u8 import os pp=os.getcwd() path=''#视频所在目录 time=''#格式为hh:mm:ss[.xxx]的形式 for i in os.listdir(path): os.system("&
-
python opencv 读取本地视频文件 修改ffmpeg的方法
Python + opencv 读取视频的三种情况: 情况一:通过摄像头采集视频 情况二:通过本地视频文件获取视频 情况三:通过摄像头录制视频,再读取录制的视频 摄像头采集.本地视频文件的读取.写视频文件,网上都有代码. 我发现情况一和情况三都没有问题,大家注意读取自己通过摄像头录制的视频文件是没有问题的.但读取其他视频都会发现帧率为0(如果你获取视频的帧率并打印出来的话),并且退出读取.这时候读取是不成功的. 进去正题:如何解决读取视频失败的情况.这个问题很普遍,以至在官方教程的程序下面都提示
-
Python OpenCV对本地视频文件进行分帧保存的实例
如下所示: # coding=utf-8 import os import cv2 videos_src_path = "/home/wgp/视频/" video_formats = [".MP4", ".MOV"] frames_save_path = "/home/wgp/视频/" width = 320 height = 240 time_interval = 50 def video2frame(video_src_p
-
Python OpenCV读取显示视频的方法示例
目标 学习读取视频,显示视频和保存视频. 学习从相机捕捉并显示它. 你将学习以下功能:cv.VideoCapture(),cv.VideoWriter() 从相机中读取视频 通常情况下,我们必须用摄像机捕捉实时画面.提供了一个非常简单的界面.让我们从摄像头捕捉一段视频(我使用的是我笔记本电脑内置的网络摄像头) ,将其转换成灰度视频并显示出来.只是一个简单的任务开始. 要捕获视频,你需要创建一个 VideoCapture 对象.它的参数可以是设备索引或视频文件的名称.设备索引就是指定哪个摄像头的数
-
Java读取本地json文件及相应处理方法
如下所示: //读取json文件地址 /* String path = getClass().getClassLoader().getResource("menu.json").toString(); path = path.replace("\\", "/"); if (path.contains(":")) { path = path.replace("file:/", ""); }
-
Python OpenCV读取视频报错的问题解决
最近由于项目的需要,经常需要使用opencv读视频操作,会经常遇到一个问题,就是视频读完之后会出现报错的情况,虽然不影响代码结果,但是对于吹毛求疵的我实在忍受不了. 会报错的程序: # -*-coding:utf-8-*- """ File Name: read_video.py Program IDE: PyCharm Create File By Author: Hong """ import cv2 def read_video(video
-
python+opencv 读取文件夹下的所有图像并批量保存ROI的方法
如下所示: import cv2 import os import numpy as np root_path = "I:/Images/2017_08_03/" dir = root_path+"images"+"/" count = 0 for root,dir,files in os.walk(dir): for file in files: srcImg = cv2.imread(root_path+"images"+
-
python3将视频流保存为本地视频文件
使用python3+opencv3.3.1环境将视频流保存为本地视频文件,具体内容如下 1.利用opencv中的VideoCapture类获取视频流的链接,通过cv2的方法得到该视频流的帧数和每帧大小. 2.使用VideoWriter类进行视频编码 3.通过VideoCapture的read()方法进行视频流解码成每一帧 4.获取到每一帧frame,我们就可以对该帧做图像算法(例如识别.图像加强.灰度变换等) import cv2 from matplotlib import pyplot as
-
php读取本地json文件的实例
1.data.json文件 { "goods":[ { "type":1, "name":"wow精选", "product":[ { "id":98, "name":"真皮大衣", "title":"单桶原酿酒 威士忌 新春礼盒 限量独家", "titleDesc":"苏格兰麦
-
解决JavaWeb读取本地json文件以及乱码的问题
最近在开发项目的时候遇到一个问题,在myecilpes上使用googlede gson读取项目中的json文件成功,然后把项目发布到tomcat上再使用同样的方法,会提示"系统找不到指定的路径" 文件放在src/config/下 JsonParser parser = new JsonParser(); JsonObject object = (JsonObject) parser.parse(new FileReader("config/Test.json"));
-
读取本地json文件,解析json(实例讲解)
模拟用户登录 # data.json 文件同目录下 [ { "id": 1, "username": "zhangshan", "password": "123qwe", "lock": false }, { "id": 2, "username": "lisi", "password": "123
随机推荐
- 正则表达式创建方式的区别及编写简单的正则方式(js学习总结)
- ASP.NET页面之间传值的方式之Application实例详解
- 基于vue实现分页/翻页组件paginator示例
- javascript框架设计之框架分类及主要功能
- JavaScript字符集编码与解码详谈
- 木马下载器前仆后继,AOTU病毒群卷土重来(专杀4月15日升级到1.4版)
- BAT批处理判断目录在%Path%中实现方法
- Oracle捕获问题SQL解决CPU过渡消耗
- 解析PHP中一些可能会被忽略的问题
- c语言获取直播吧最近一周nba比赛信息
- PHP中如何实现常用邮箱的基本判断
- Python获取单个程序CPU使用情况趋势图
- Struts和servlet不能共存问题解决方法
- 使用scp获取远程linux服务器上的文件 linux远程拷贝文件
- jQuery插件Zclip实现完美兼容个浏览器点击复制内容到剪贴板
- 关于JS中的方法是否加括号的问题
- Android透明化和沉浸式状态栏实践及源码分析
- C#开发微信公众号接口开发
- ICP备技巧
- 实例解析观察者模式及其在Java设计模式开发中的运用