RuntimeError: двоичный файл 'sox' не найден - PullRequest
0 голосов
/ 29 апреля 2019

Я играю с речевой библиотекой Google следующим образом:

from google_speech import Speech

# say "Hello World"
text = "Hello World"
lang = "en"
speech = Speech(text, lang)
speech.play()

получаю эту ошибку:

RuntimeError                          

    Traceback (most recent call last)
<ipython-input-2-4daa3294f636> in <module>()
----> 1 from google_speech import Speech
      2 
      3 # say "Hello World"
      4 text = "Hello World"
      5 lang = "en"

D:\soft\Ins\anac\lib\site-packages\google_speech\__init__.py in <module>()
    321 
    322 # check deps
--> 323 bin_dep.check_bin_dependency(("sox",))
    324 
    325 

D:\soft\Ins\anac\lib\site-packages\google_speech\bin_dep.py in check_bin_dependency(bins)
      5   for bin in bins:
      6     if shutil.which(bin) is None:
----> 7       raise RuntimeError("Binary '%s' could not be found" % (bin))

RuntimeError: Binary 'sox' could not be found

Я работаю в Windows, и я выполнил все инструкции:

Если у вас его еще нет, установите pip для Python 3. Установите Google Speech: pip3 install google_speech Установите SoX с поддержкой MP3.На Ubuntu и других производных Debian: sudo apt-get install sox libsox-fmt-mp3.Пользователи Windows могут загрузить двоичные файлы на веб-сайте SoX, после установки вам также необходимо скопировать libmad DLL в каталог, в который вы установили SoX, и добавить этот каталог в переменную среды PATH.

1 Ответ

1 голос
/ 30 апреля 2019

Вы можете найти двоичные файлы и установщики для SoX на странице загрузок sourceforge: Получите это отсюда

Добавление SoX на ваш путь

Сначала найдите каталог, в котором установлен SoX. По умолчанию это, вероятно, C: \ Program Files (x86) \ sox-14-4-1 или C: \ Program Files \ sox-14-4-1

Этот каталог необходимо добавить в переменную среды PATH. Откройте командную строку, нажав клавишу Windows и введя cmd.exe (в Vista или более поздней версии) или выбрав «Выполнить» в меню «Пуск» и введите cmd (в более ранних версиях).

Введите path в командной строке, и она должна вернуть вашу переменную PATH (PATH =, за которой следует список каталогов). Чтобы временно добавить SoX в переменную PATH, введите следующую команду (замените C: \ Program Files (x86) \ sox-14-4-1 на каталог SoX, если необходимо):

set PATH=%PATH%;C:\Program Files (x86)\sox-14-4-1

Введите путь еще раз, и он должен вернуть тот же список каталогов, что и раньше, но со строкой; C: \ Program Files (x86) \ sox-14-4-1 добавлен в самый конец. Если он возвращает что-либо еще (например, если он возвращает только каталог SoX), не переходите к следующему шагу (закройте окно командной строки и начните сначала). Если он возвращает тот же список плюс SoX, вы можете добавить SoX навсегда, используя команду setx вместо set:

setx PATH %PATH%;C:\Program Files (x86)\sox-14-4-1

В Windows XP вам потребуется установить средства поддержки Windows XP SP2, прежде чем вы сможете это сделать. Проверка на успех

Чтобы убедиться, что это работает, откройте новую командную строку и введите sox. Если это успешно, он вернет информацию об использовании SoX, но в противном случае он должен вернуть «sox не распознан».

...