使用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

文件保存後,再次執行,沒有報任何錯誤了,至此問題得到解決。

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