Ошибка, The system cannot find the file specified

from pydub import AudioSegment
sound = AudioSegment.from_mp3('test.mp3')

Результат:

C:\Users\Admin\AppData\Roaming\PythonInterperter\lib\site-packages\pydub\utils.py:170: 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)
C:\Users\Admin\AppData\Roaming\PythonInterperter\lib\site-packages\pydub\utils.py:198: 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)
Traceback (most recent call last):
  File "C:\Users\Admin\AppData\Roaming\Projects\MusicSystem\test1.py", line 3, in <module>
    sound = AudioSegment.from_mp3('test.mp3')
  File "C:\Users\Admin\AppData\Roaming\PythonInterperter\lib\site-packages\pydub\audio_segment.py", line 738, in from_mp3
    return cls.from_file(file, 'mp3', parameters=parameters)
  File "C:\Users\Admin\AppData\Roaming\PythonInterperter\lib\site-packages\pydub\audio_segment.py", line 685, in from_file
    info = mediainfo_json(orig_file, read_ahead_limit=read_ahead_limit)
  File "C:\Users\Admin\AppData\Roaming\PythonInterperter\lib\site-packages\pydub\utils.py", line 274, in mediainfo_json
    res = Popen(command, stdin=stdin_parameter, stdout=PIPE, stderr=PIPE)
  File "C:\Users\Admin\AppData\Roaming\PythonInterperter\lib\subprocess.py", line 947, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "C:\Users\Admin\AppData\Roaming\PythonInterperter\lib\subprocess.py", line 1416, in _execute_child
    hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
FileNotFoundError: [WinError 2] The system cannot find the file specified

Файл лежит рядом со скриптом; ffmpeg в Path.


Ответы (1 шт):

Автор решения: CrazyElf

У вас ошибка

Couldn't find ffmpeg or avconv

То есть в системе не установлен ffmpeg либо avconv, либо они не прописаны в путях, в общем, библиотека, которую вы используете, не может найти одну из этих утилит и запустить её. Есть довольно много билиотек питона, которые не работают без определённых утилит, установленных в системе - потому что они не дублируют их функционал, а просто предоставляют к ним интерфейс в виде библиотеки и без самой утилиты, к которой они обращаются, они работать не могут.

→ Ссылка