PyAudio IOError: Pas De Périphérique D'Entrée Par Défaut Disponible
Je suis en utilisant PyAudio en vertu de la Enthought Distribution Python (Python 2.6.6) dans Ubuntu 10.10 64 bits.
>>> import pyaudio
>>> pa = pyaudio.PyAudio()
>>> pa.get_default_input_device_info()
Traceback (most recent call last):
File "<pyshell#24>", line 1, in <module>
pa.get_default_input_device_info()
File "/usr/lib/python_epd/lib/python2.6/site-packages/pyaudio.py", line 936, in get_default_input_device_info
device_index = pa.get_default_input_device()
IOError: No Default Input Device Available
C'est la même erreur que j'obtiens si j'essaie d'ouvrir un flux d'entrée. Il est le correspondant d'erreur "IOError: Pas de Sortie par Défaut du Périphérique Disponible"
- Qu'obtenez-vous si vous essayez
pa.get_device_count()
? - pa.get_device_count() renvoie 0
pyaudio
installé viasudo apt-get install python-pyaudio
fonctionne sur Ubuntu 11.10- si il vous dit de ne pas avoir ce que vous demandez, ou il ne peut pas trouver ce que vous demandez, ou vous ne disposez pas des autorisations d'accès à ce que vous demandez. me semble raisonnable. peut-être que vous n'avez pas vraiment les périphériques d'entrée?
- DIY! FIY. Obtenir des sources - compiler - ... - bénéfice!
Vous devez vous connecter pour publier un commentaire.
OK, voici une solution qui n'est pas jolie, mais fonctionne pour moi.
Comme pour mon commentaire à ulidtko réponse, pyaudio n'est pas le problème, mais plutôt le sous-jacent PortAudio que pyaudio est censé lier à.
Sur ubuntu le portaudio les pilotes sont installés avec ce forfait:
Vous en avez déjà un, puisque vous avez dit que votre stock ubuntu exécute votre code d'amende (avec tout de même quelques messages de débogage qui peut être ignoré)
Si vous interrogez l'emplacement de votre portaudio module, vous trouverez les éléments suivants lorsque vous exécutez enthought de python:
et le suivant le stock ubuntu:
J'ai déplacé le enthought _portaudio.donc, hors de la voie et l'a remplacé par un lien vers le système de _portaudio.et donc maintenant tout, y compris la belle analyseur de spectre dans la région du chaco démo/avancé répertoire des œuvres:
python-gnuradio-audio-portaudio
même de mettre à jour apt-getJe recommanderais PYO pour audio I/O et de synthèse, je l'ai trouvé vraiment facile à ramasser.
Voici un peu de code pour illustrer la façon dont je voudrais obtenir PYO pour obtenir de sortie et une entrée audio après le traitement, il pour en modifier le pitch:
PYO permet également de modifier les fréquences et les paramètres de synthèse, des générateurs ou quoi que ce soit à la volée, qui a été le plus gros tirage pour moi car je l'utilise principalement pour la programmation en direct de la synthèse des instruments.
Il a également une grande manuel...
http://people.csail.mit.edu/hubert/pyaudio/
Avez-vous installé le PortAudio logiciel? Il est nécessaire pour la
pyaudio
de travail.Vérifier cette
https://github.com/shichao-an/soundmeter/issues/7
Tout ce que vous avez à faire est de
installer ALSA :
sudo apt-get install libasound-dev
puis construire portaudio (cette version
pa_stable_v190600_20161030.tgz
)http://www.portaudio.com/download.html
puis Obtenir les privilèges de root (
sudo su root
sous Ubuntu où la plainesu root
ne fonctionne pas.)Lieu le portaudio archive dans
/usr/src
et décompressez-le avectar xvfz pa_snapshot.tgz
Cela va générer le répertoire/usr/src/portaudio
.Descendre dans ce répertoire et exécutez ces commandes:
La
linrad
configurer le script doit être exécuté après l'installation réussie de portaudio de faire Linrad conscient du fait que portaudio est disponible.Assurez-vous d'obtenir ALSA et oui dans la
./configure
fichierInstaller la dernière version de
pyaudio
(
PyAudio-0.2.11.tar.gz
)