我通過 命令行安裝了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的。啊,原來環境變量是沒有生效。
最后發現,修改了系統環境變量之后,新修改的內容,對於之后啟動的程序生效,對於修改前就駐留內存的程序不生效。
所以配置好后,重啟下軟件就好了(不需要重啟系統)。