我通过 命令行安装了pydub库,运行报了如下错误

RuntimeWarning: Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work  warn("Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work", RuntimeWarning)
RuntimeWarning: Couldn't find ffprobe or avprobe - defaulting to ffprobe, but may not work warn("Couldn't find ffprobe or avprobe - defaulting to ffprobe, but may not work", RuntimeWarning)

明明先通过 pip3 install ffmpeg 命令安装了ffmpeg了为啥还会报这个错?

我搜索了下,网上说是要下载ffmpeg包,然后配置系统环境变量。

于是下载并配置了如下的包:

https://github.com/BtbN/FFmpeg-Builds/releases

结果报 “找不到程序输入点”,看的我一脸懵逼。

然后换了一个:

https://github.com/GyanD/codexffmpeg/releases/tag/2021-01-01-git-63505fc60a

测试命令 ffmpeg -version,配置成功了。

但 pydub 还是报错。

又继续搜索,发现有一个说要手动指定目录:

from pydub import AudioSegment

AudioSegment.converter = r'my-install-dir\\ffmpeg_full_gyanbin\\ffmpeg.exe'

还是没啥用。

看了下源码,debug跟踪了下,其实就是将环境变量读取出来,然后逐个拼接上"ffmpeg.exe“ 然后判断是不是可执行的文件:

在读取的环境变量,envdir_list中,独没有刚增加的ffmpeg的。啊,原来环境变量是没有生效。

最后发现,修改了系统环境变量之后,新修改的内容,对于之后启动的程序生效,对于修改前就驻留内存的程序不生效。

所以配置好后,重启下软件就好了(不需要重启系统)。

最新文章

  1. 《编写可维护的JavaScript》——JavaScript编码规范(七)
  2. Html 开发工具 之Hbulider
  3. PHP实现队列及队列原理
  4. Python:no encoding declared 错误
  5. Code(poj 1850)
  6. 一、JPEG文件格式-----压缩框架
  7. MySQL增加列,移动列
  8. Android Activity管理类
  9. SQL server 变量、运算符
  10. jQuery插件实现的方法和原理简单说明
  11. 使用HTML5地理位置定位到城市的方法及注意事项
  12. android studio 模拟器不能使用的解决方案
  13. python_flask 基础巩固 (URL传输传递方式)
  14. Python:Day17 生成器、time和random模块
  15. 理解OpenShift(1):网络之 Router 和 Route
  16. span与a元素的键盘聚焦性以及键盘点击性研究——张鑫旭
  17. css3中自定义 placeholder 文本颜色
  18. 【转载】在Jersey JAX-RS 处理泛型List等Collection
  19. jqGrid -treeGrid 按需加载
  20. SharePoint 2013 - Breadcrumb

热门文章

  1. 第15.23节 PyQt(Python+Qt)入门学习:Model/View架构中QListView视图配套Model的开发使用
  2. PyQt学习随笔:使用QPropertyAnimation开发简单动画
  3. 基于CefSharp开发(六)浏览器网页缩放
  4. CODING DevOps 线下沙龙回顾一:DevOps 代码质量实战
  5. python安装Scrapy框架
  6. LeetCode初级算法之数组:66 加一
  7. MySQL(14)---Docker搭建MySQL主从复制(一主一从)
  8. justify-content属性详解
  9. (window)Docker的镜像使用
  10. Tensorflow学习笔记No.11