2011-01-12 15 views
3

Ich starte PyAudio unter Python 2.6.6 und möchte, dass es ALSA und nicht JACK verwendet.PyAudio versucht JACK zu verwenden

In [1]: import pyaudio 

In [2]: pa = pyaudio.pa 

In [3]: pa.initialize() 
Cannot connect to server socket err = No such file or directory 
Cannot connect to server socket 
jack server is not running or cannot be started 
+0

Was passiert, wenn Sie JACK manuell über 'jackstart' von einem Terminal aus starten? Sie können auch http://qjackctl.sourceforge.net/ verwenden, um den JACK-Daemon zu steuern, wenn Sie eine grafische Benutzeroberfläche besser möchten. Wie auch immer, poste die Startup-Ausgabe des Daemons. –

+0

Aus der Dokumentation bei [http://people.csail.mit.edu/hubert/pyaudio/docs/](http://people.csail.mit.edu/hubert/pyaudio/docs/) Ich denke, du wirst müssen "pyaudio.paALSA" an "pa.open()" übergeben, anstatt sich auf das System zu verlassen. – ldrumm

+0

Nun, ich hatte ein ähnliches Problem, aber die Ursache war unzureichende Berechtigungen. Unter Ubuntu musste ich mich der 'audio' Gruppe hinzufügen. Und die Fehlermeldungen waren ungefähr gleich. –

Antwort

5

Für diejenigen, die sich über Google an dieser alten Frage passieren zu finden:

Die Nachricht von pyaudio angezeigt ...

jack server is not running or cannot be started 

... ist informativ, kein Fehler. Es bedeutet, dass Portaudio versuchte und es versäumte, sich mit Jack zu verbinden, aber das bedeutet nicht, dass es alles aufgegeben hat.

An diesem Punkt sollten Sie ein voll funktionsfähiges PyAudio-Objekt mit ALSA haben. Sie können dies überprüfen, indem Sie beispielsweise eine Liste der verfügbaren Geräte ansehen:

>>> import pyaudio 
>>> pa = pyaudio.PyAudio() 
[...lots of crap from ALSA...] 
Cannot connect to server socket err = No such file or directory 
Cannot connect to server request channel 
jack server is not running or cannot be started 
>>> print '\n'.join([y['name'] 
... for y in [pa.get_device_info_by_index(x) 
... for x in range(pa.get_device_count())]]) 
bcm2835 ALSA: - (hw:0,0) 
bcm2835 ALSA: IEC958/HDMI (hw:0,1) 
USB Audio Device: - (hw:2,0) 
sysdefault 
dmix 
default 
+0

In der Tat! Und wenn Sie die lästigen Nachrichten loswerden wollen, werfen Sie einen Blick auf http://stackoverflow.com/q/36956083. – Matthias

Verwandte Themen