PyAudio не может найти устройства вывода

Когда я бегу:

import pyaudio
pa = pyaudio.PyAudio()
pa.get_default_output_device_info()

Я получил:

IOError: No Default Output Device Available

Когда я сказал:

p.get_device_count()

Возвращается 0L,

И конечно, если я перечислю устройства

for i in range(0, device_count):
        print("Name: " + p.get_device_info_by_index(i)["name"])
        print("Index: " + p.get_device_info_by_index(i)["index"])
        print("\n")

Он не будет ничего печатать.

Я использую Ubuntu 16.04 и установил мой приемник по умолчанию, выполнив:

pacmd list-sinks
pacmd set-default-sink 0

У меня есть последние версии pulseaudio, alsa и portaudio. Какие-либо предложения?

Обновление: я также не могу просматривать никакие звуковые устройства на Audacity, несмотря на то, что они появляются в Системных настройках> Звук. В Audacity я получаю ошибку:

Ошибка при открытии звукового устройства. Пожалуйста, проверьте настройки записывающего устройства и частоту дискретизации проекта.

Я думаю, что это почти наверняка проблема portaudio, так как страница настроек выглядит следующим образом:

1 ответ

Решение

Вероятно, это сломанный файл, который нуждается в замене.

  1. Найдите "/usr/./libstdc++.so.6" там, где его установил pip.

  2. Найдите "/usr/lib/x86_64-linux-gnu/libstdc++.so.6" и скопируйте в папку (1). Это должно это исправить.

  3. Если у вас установлена ​​Anaconda версии 3 - 4.3.0 или 4.4.0 или более ранняя версия, проверьте по адресу "anaconda3/lib/libstdC++. So.6" и выполните команду "(2)".

В качестве альтернативы A) переименуйте файл и поместите файл из (2), где вы переименовали старый файл libstdC++. So.6 или B) обновите Anaconda до версии 5.0.1 и запустите conda update --all, И если вы нажмете "B", не забудьте сначала удалить яйца или белки вручную, чтобы быть уверенным, что у вас не будет возможности снова установить старое программное обеспечение.

Это должно исправить это для вас.

Наслаждаться;-)

Похоже, вам не хватает пакета portaudio19-dev. Используйте следующую команду для установки этого пакета с помощью терминала:

sudo apt-get install portaudio19-dev

Установить с помощью apt-get; и запустить с python2. Или установите с conda и запустите с python3.

Другие вопросы по тегам