使用pydub报错RuntimeWarning

使用pydub报错RuntimeWarning: Couldn't find ffmpeg or avconv

1.问题描述

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)

截图如下所示:
在这里插入图片描述

2.解决方案


  • 1.完成软件的安装
  • 2.将ffmpeg配置到Path环境变量

在这里插入图片描述
配置成功后使用如下命令测试一下是否成功:

ffmpeg -version

返回如下结果显示已经成功:
在这里插入图片描述
然后再运行我们的程序,发现还是报错了,同样的错误,貌似问题没有得到解决,于是我又参考上篇博客的内容将utils.py文件中的which函数做了如下修改,加入了我的ffmpeg.exe文件所在的目录。

def which(program):
    """
    Mimics behavior of UNIX which command.
    """
    # Add .exe program extension for windows support
    if os.name == "nt" and not program.endswith(".exe"):
        program += ".exe"

    envdir_list = [os.curdir] + os.environ["PATH"].split(os.pathsep)
    envdir_list.append(r'D:\softwares\ffmpeg\bin')#添加这一行,注意里面的路径是ffmpeg.exe所在的路径


    for envdir in envdir_list:
        program_path = os.path.join(envdir, program)
        if os.path.isfile(program_path) and os.access(program_path, os.X_OK):
            return program_path

文件保存后,再次执行,没有报任何错误了,至此问题得到解决。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章