Pydub 安装和 ffmpeg
Pydub installation and ffmpeg
我试图从 .mp3
文件中获取原始声音数据。因此,我使用了 here 所述的 pydub 模块。我为这个项目创建了一个 venv
并安装了所有必要的模块。但出于某种原因,pydub 决定给我一个 FileNotFoundError
:
(venv) Python-IT:LightsDev pythonit$ which python
/Users/pythonit/Documents/Programmieren/Python/LightsDev/venv/bin/python
(venv) Python-IT:LightsDev pythonit$ which pip3
/Users/pythonit/Documents/Programmieren/Python/LightsDev/venv/bin/pip3
(venv) Python-IT:LightsDev pythonit$ pip3 list
------------- -------
ffmpeg 1.4
pip 18.1
pydub 0.23.0
pyee 5.0.0
python-ffmpeg 1.0.5
setuptools 39.0.1
我的确切代码如下所示:
from pydub import AudioSegment
sound = AudioSegment.from_mp3('test.mp3')
raw_data = sound._data
print(raw_data)
我得到这个错误:
FileNotFoundError: [Errno 2] No such file or directory: 'ffprobe': 'ffprobe'
除了这个运行时警告:
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)
我不知道是不是我,但一些类似的问题说我应该安装 ffmpeg 或 python-ffmpeg 是行不通的。我什至可以导入 ffmpeg 模块,但没有任何反应。我可以使用 ffmpeg 并加载文件,但是将它与 pydub 一起使用将不起作用。
编辑:今天我换了我的 windows 机器并深入研究了错误。但是,即使使用评论中提供的解决方案,我也无法使其正常工作(不过谢谢)。我按照说明安装了 ffmpeg 二进制文件,我能够在 shell 中获得 ffmpeg
运行,但是 pydub
却没有...我不知道发生了什么.我想我的错误非常明显,我就是无法理解。尽管我能够 在 shell 中使用 ffmpeg,但即使是子进程也无法解决这个问题。我什至能够在 shell...
中使用 ffmpeg 转换文件
ffmpeg -i test.mp3 test.wav
> Output #0, wav, to 'test.wav':
我想我已经接近自己解决问题了,但是还是谢谢你。
安装 ffmpeg
到您的系统,而不是 python lib:
在Ubuntu中:
sudo apt install ffmpeg
在Windows中:
只需下载ffmpeg lib,解压,并将***\bin
路径添加到环境路径
并通过 pip
安装 simpleaudio
和 pydub
到 python lib (我不知道为什么,但它对我有用)
这个错误也让我抓狂;路径显然是问题所在。有几种解释,例如下面的解释,告诉您修改为 C:\ffmpeg\bin(示例:https://windowsloop.com/install-ffmpeg-windows-10/),而其他解释同样无效的解释。
我的解决办法是修改路径为anaconda3路径:C:\Users\YOURPATH\anaconda3\Lib\site-packages\ffmpeg\bin
然后我需要重新启动计算机以使注册表更改生效!
不要忘记最后一步...
ffmpeg 无法创建异常,使用未经用户修改注册表路径的路径(脏)?
我试图从 .mp3
文件中获取原始声音数据。因此,我使用了 here 所述的 pydub 模块。我为这个项目创建了一个 venv
并安装了所有必要的模块。但出于某种原因,pydub 决定给我一个 FileNotFoundError
:
(venv) Python-IT:LightsDev pythonit$ which python
/Users/pythonit/Documents/Programmieren/Python/LightsDev/venv/bin/python
(venv) Python-IT:LightsDev pythonit$ which pip3
/Users/pythonit/Documents/Programmieren/Python/LightsDev/venv/bin/pip3
(venv) Python-IT:LightsDev pythonit$ pip3 list
------------- -------
ffmpeg 1.4
pip 18.1
pydub 0.23.0
pyee 5.0.0
python-ffmpeg 1.0.5
setuptools 39.0.1
我的确切代码如下所示:
from pydub import AudioSegment
sound = AudioSegment.from_mp3('test.mp3')
raw_data = sound._data
print(raw_data)
我得到这个错误:
FileNotFoundError: [Errno 2] No such file or directory: 'ffprobe': 'ffprobe'
除了这个运行时警告:
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)
我不知道是不是我,但一些类似的问题说我应该安装 ffmpeg 或 python-ffmpeg 是行不通的。我什至可以导入 ffmpeg 模块,但没有任何反应。我可以使用 ffmpeg 并加载文件,但是将它与 pydub 一起使用将不起作用。
编辑:今天我换了我的 windows 机器并深入研究了错误。但是,即使使用评论中提供的解决方案,我也无法使其正常工作(不过谢谢)。我按照说明安装了 ffmpeg 二进制文件,我能够在 shell 中获得 ffmpeg
运行,但是 pydub
却没有...我不知道发生了什么.我想我的错误非常明显,我就是无法理解。尽管我能够 在 shell 中使用 ffmpeg,但即使是子进程也无法解决这个问题。我什至能够在 shell...
ffmpeg -i test.mp3 test.wav
> Output #0, wav, to 'test.wav':
我想我已经接近自己解决问题了,但是还是谢谢你。
安装 ffmpeg
到您的系统,而不是 python lib:
在Ubuntu中:
sudo apt install ffmpeg
在Windows中:
只需下载ffmpeg lib,解压,并将***\bin
路径添加到环境路径
并通过 pip
安装 simpleaudio
和 pydub
到 python lib (我不知道为什么,但它对我有用)
这个错误也让我抓狂;路径显然是问题所在。有几种解释,例如下面的解释,告诉您修改为 C:\ffmpeg\bin(示例:https://windowsloop.com/install-ffmpeg-windows-10/),而其他解释同样无效的解释。
我的解决办法是修改路径为anaconda3路径:C:\Users\YOURPATH\anaconda3\Lib\site-packages\ffmpeg\bin
然后我需要重新启动计算机以使注册表更改生效!
不要忘记最后一步...
ffmpeg 无法创建异常,使用未经用户修改注册表路径的路径(脏)?