Python3 ffmpeg视频转换工具使用方法解析


Posted in Python onAugust 10, 2020

windows版本下需要先安装ffmpeg工具:

1:先下载指定(https://ffmpeg.zeranoe.com/builds/) 有Static,Shared,Dev三个版本,

可以下载了static版本(是个zip压缩包),解压到指定目录,去配置环境变量,比如d:\ffmpeg\bin,这样bin下面的ffmpeg.exe就可以在命令行中使用了,可以用ffmpeg -version测试一下:

Python3 ffmpeg视频转换工具使用方法解析

2:安装ffmpeg的python扩展,该扩展可以让你直接在python脚本中直接调用,而不需要单独运行命令: pip install ffmpeg-python

3:需要注意一点的是,有的情况调用该库会报错('ffmpeg' 不是内部或外部命令,也不是可运行的程序 或批处理文件。),这时需要将python安装目录下Lib文件夹的subprocess.py文件中大概656行中的shell参数改为True

Python3 ffmpeg视频转换工具使用方法解析Python3 ffmpeg视频转换工具使用方法解析

4:假如提示ffmpeg为外部命令错误时,将ffmpeg的路径带上:

Python3 ffmpeg视频转换工具使用方法解析

代码如下:

def getImage(video_path):
  base_path = os.path.join(os.path.join(os.getcwd(), "mp4"), video_path)
  img_count = 1
  crop_time = 0.0
  try:
    while crop_time <= 22.0: #转化22s的视频
      os.system('D:\\ffmpeg-20191210-e73688e-win64-static\\bin\\ffmpeg -i %s -y -f image2 -ss %s %s.jpg'% (base_path, str(crop_time), str(img_count)))
      img_count += 1
      crop_time += 0.01 #每0.01秒截取一张照片
    print('视频转化完成!!!')
  except Exception as e:
    print(e)

def save():
  dir_s = os.path.join(os.getcwd(), "image")
  if os.path.exists(dir_s):
    shutil.rmtree(dir_s)
  os.mkdir(dir_s)
  for root, dirs, tmps in os.walk(os.getcwd()):
    for file in tmps:
      if file.endswith("jpg") and os.path.exists(os.path.join(dir_s, file)) is False:
        shutil.move(file, dir_s)

video_path = "of2.mp4"
getImage(video_path)
save()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 中 Meta Classes详解
Feb 13 Python
python使用邻接矩阵构造图代码示例
Nov 10 Python
Python绘制3d螺旋曲线图实例代码
Dec 20 Python
使用Python进行AES加密和解密的示例代码
Feb 02 Python
flask框架实现连接sqlite3数据库的方法分析
Jul 16 Python
Python高级特性切片(Slice)操作详解
Sep 27 Python
Python中正则表达式的用法总结
Feb 22 Python
Python+OpenCv制作证件图片生成器的操作方法
Aug 21 Python
python实现的登录与提交表单数据功能示例
Sep 25 Python
python基于K-means聚类算法的图像分割
Oct 30 Python
Jupyter Notebook远程登录及密码设置操作
Apr 10 Python
tensorflow基于CNN实战mnist手写识别(小白必看)
Jul 20 Python
常用的10个Python实用小技巧
Aug 10 #Python
推荐值得学习的12款python-web开发框架
Aug 10 #Python
python多线程semaphore实现线程数控制的示例
Aug 10 #Python
如何在python中实现线性回归
Aug 10 #Python
Python多线程的退出控制实现
Aug 10 #Python
Python进行统计建模
Aug 10 #Python
Python如何爬取b站热门视频并导入Excel
Aug 10 #Python
You might like
如何使用脚本模仿登陆过程
2006/11/22 PHP
PHP 5.3新特性命名空间规则解析及高级功能
2010/03/11 PHP
php实现把url转换迅雷thunder资源下载地址的方法
2014/11/07 PHP
PHP永久登录、记住我功能实现方法和安全做法
2015/04/27 PHP
PHP 7.0.2 正式版发布
2016/01/08 PHP
php版微信公众平台之微信网页登陆授权示例
2016/09/23 PHP
php批量修改表结构实例
2017/05/24 PHP
Mootools 1.2教程(21)——类(二)
2009/09/15 Javascript
学习ExtJS border布局
2009/10/08 Javascript
初识javascript 文档碎片
2010/07/13 Javascript
javascript数字数组去重复项的实现代码
2010/12/30 Javascript
JS 获取浏览器和屏幕宽高等信息的实现思路及代码
2013/07/31 Javascript
利用jq让你的div居中的好方法分享
2013/11/21 Javascript
jquery实现下拉菜单的二级联动利用json对象从DB取值显示联动
2014/03/27 Javascript
极力推荐一款小巧玲珑的可视化编辑器bootstrap-wysiwyg
2016/05/27 Javascript
Javascript 判断两个IP是否在同一网段实例代码
2016/11/28 Javascript
JS实现课堂随机点名和顺序点名
2017/03/09 Javascript
微信小程序HTTP接口请求封装的实现
2019/02/21 Javascript
使用JavaScript解析URL的方法示例
2019/03/01 Javascript
小程序实现锚点滑动效果
2019/09/23 Javascript
python创建只读属性对象的方法(ReadOnlyObject)
2013/02/10 Python
解决python2.7 查询mysql时出现中文乱码
2016/10/09 Python
Python基于time模块求程序运行时间的方法
2017/09/18 Python
transform python环境快速配置方法
2018/09/27 Python
python自动化UI工具发送QQ消息的实例
2019/08/27 Python
使用Python的Turtle库绘制森林的实例
2019/12/18 Python
利用python绘制数据曲线图的实现
2020/04/09 Python
新版Pycharm中Matplotlib不会弹出独立的显示窗口的问题
2020/06/02 Python
Canvas系列之滤镜效果
2019/02/12 HTML / CSS
墨西哥巴士车票在线购买:ClickBus
2018/03/27 全球购物
德国2018年度最佳在线药房:Bodfeld Apotheke
2019/11/04 全球购物
大学生水果店创业计划书
2014/01/28 职场文书
致跳远运动员加油稿
2014/02/11 职场文书
英语分层教学实施方案
2014/06/15 职场文书
社团活动总结怎么写
2014/06/30 职场文书
乡镇党建工作汇报材料
2014/08/14 职场文书