Я пытался получить необработанные звуковые данные из файла .mp3
.Для этого я использовал модуль 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, как указано, и смог запустить ffmpeg
в оболочке, но не с pydub
... Понятия не имею, что происходит.Я думаю, что моя ошибка очень очевидна, и я просто не могу ее понять.Даже не подпроцесс смог решить эту проблему, несмотря на то, что я могу использовать ffmpeg в оболочке .Я даже смог преобразовать файл, используя ffmpeg в оболочке ...
ffmpeg -i test.mp3 test.wav
> Output #0, wav, to 'test.wav':
Я думаю, что я в любом случае близок, чтобы решить проблему самостоятельно, но все равно спасибо.