Ошибка OSE: библиотека PortAudio не найдена - PullRequest
1 голос
/ 30 января 2020

Я написал свой код в Streamlit, и я использовал «звуковое устройство» для своего приложения. Я поместил sounddevice в мой файл require.txt в репозитории github, а также импортировал его в свой потоковый код. Это хорошо работает в моем местном Streamlit. Тем не менее, я продолжаю получать эту ошибку при каждом развертывании своего приложения в Heroku:

OSError: PortAudio library not found
Traceback:
  File "/app/.heroku/python/lib/python3.6/site-packages/streamlit/ScriptRunner.py", line 314, in _run_script
    exec(code, module.__dict__)
  File "/app/helloworld.py", line 11, in <module>
    import sounddevice as sd
  File "/app/.heroku/python/lib/python3.6/site-packages/sounddevice.py", line 71, in <module>
    raise OSError('PortAudio library not found')

Кто-нибудь знает, как go об этом? Спасибо!

1 Ответ

0 голосов
/ 03 февраля 2020

PortAudio - это звуковой драйвер, который необходимо установить на уровне операционной системы, чтобы библиотеки Python могли подключиться к нему. Эта ошибка возникнет для любого кода, использующего portaudio, поэтому на самом деле это не ошибка Streamlit.

Документация Heroku указывает на установку apt buildpack в качестве bootstrap для возможности собирайте пакеты так же, как в Ubuntu Linux.

После того, как вы сможете установить пакеты, я ожидаю, что этот поток StackOverflow об установке portaudio в Ubuntu поможет вам в этом.

...