[Python3] pyaudio Fragen

OP Persönliche Seite #4404590
Hallo

Ich habe mir ein kleines Testskript "pyaudiotest-3.py" geschrieben, mit 
dem ich das Abspielen eines WAV-Files erreiche. Dazu gehört auch die 
Datei "siren.wav" . Der Dateiname ist im Skript der Einfachheit halber 
direkt hineingeschrieben worden, daher sollte sich "siren.wav" im 
gleichen Ordner wie "pyaudiotest-3.py" befinden.

Betriebsssem ist Linux Debian "Jessie". "python3-pyaudio" 0.2.8-1+b2 ist 
installiert.

Starte ich "pyaudiotest-3.py" aus idle3 heraus, wird das File ohne 
nennenswrte Vorkommnisse abgedudelt, und das Skript beendet.

Starte ich es aber über eine Shell mit "python3 pyaudiotest-3.py", so 
erhalte ich ersteinmal einen Schwung Fehlermeldungen, dann wird das File 
abgespielt, und anschliessend das Skript beendet.

Die Fehlermeldungen sind:

<code>

wiebus@wiebus-IIb:~/python3/pyaudiotest$ python3 pyaudiotest-3.py
ALSA lib pcm_dsnoop.c:614:(snd_pcm_dsnoop_open) unable to open slave
ALSA lib pcm_dmix.c:1024:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm.c:2267:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2267:(snd_pcm_open_noupdate) Unknown PCM 
cards.pcm.center_lfe
ALSA lib pcm.c:2267:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm_dmix.c:1024:(snd_pcm_dmix_open) unable to open slave
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
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, 
skipping unlock
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for -1, 
skipping unlock
wiebus@wiebus-IIb:~/python3/pyaudiotest$

</code>

Warum werden diese bei idle3 nicht durchgereicht?
Wass muss ich anstellen, um diese Fehlermeldungen überhaupt los zu 
werden? Offensichtlich geht es um "Luxus", weil abgespielt wird das File 
ja doch.

Die angesprochenen Files "pyaudiotest-3.py" und "siren.wav" finden sich 
im Anhang "pyaudiotest.zip"

Mit feundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.l02.de

P.S. : Ich sehe gerade, zu Python 2 und pyaudio gibt es eine 
Dokumentation im Repository. Die werde ich heute Abend ziehen und lesen, 
in der hoffnung, das ich von Python2 genau genug auf Python3 raten kann.
Angehängte Dateien:
Gast
Die Ausgabe kommt nicht aus Python, sondern aus einer tieferen Schicht 
und läuft auch nicht über stderr von Python. Andere Programme wie 
Audacity geben den gleichen Mist aus, wenn man sie aus der Konsole 
startet.

Man kann furchtbar aufwändig herumfummeln und Errorhandler 
unterschieben, das hat bei mir nur halb funktioniert:

http://blog.yjl.im/2012/11/pyaudio-portaudio-and-alsa-messages.html
OP Persönliche Seite
Hallo Clemens und Tom.

Danke für Eure Antworten.

Clemens L. schrieb:

>> Wass muss ich anstellen, um diese Fehlermeldungen überhaupt los zu
>> werden?
> Diese Meldungen werden von PortAudio erzeugt, während es versucht, alle
> möglichen PCM-Geräte zu finden.
> Von Python aus kann man das nicht ändern.


Tom schrieb:
> Die Ausgabe kommt nicht aus Python, sondern aus einer tieferen Schicht
> und läuft auch nicht über stderr von Python. Andere Programme wie
> Audacity geben den gleichen Mist aus, wenn man sie aus der Konsole
> startet.
> Man kann furchtbar aufwändig herumfummeln und Errorhandler
> unterschieben, das hat bei mir nur halb funktioniert:
>
> http://blog.yjl.im/2012/11/pyaudio-portaudio-and-alsa-messages.html

Ah, ok. Ich sollte das ganze also weniger als Fehlermeldung sondern als 
Statusmeldung sehen. Gut zu wissen. Da sie nur bei Start aus der Konsole 
heraus auffällig sind, kann ich sie wohl meistens guten Gewissens 
ignorieren.


Vielen Dank für die Info. Guten Rutsch!

Mit freundlichem Gruß: Bernd Wiebus alias dl1eic
http://www.l02.de

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.