PyAudio alsa Fehlermeldungen

Ich erhalte jedes Mal eine Fehlermeldung, wenn ich mit PyAudio einen Sound wiedergebe und Probleme beim Unterdrücken habe.

ALSA lib pcm_dmix.c:1018:(snd_pcm_dmix_open) unable to open slave                                                                                     
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
bt_audio_service_open: connect() failed: Connection refused (111)
bt_audio_service_open: connect() failed: Connection refused (111)
bt_audio_service_open: connect() failed: Connection refused (111)
bt_audio_service_open: connect() failed: Connection refused (111)
ALSA lib pcm_dmix.c:957:(snd_pcm_dmix_open) The dmix plugin supports only playback stream
ALSA lib pcm_dmix.c:1018:(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

Ich habe die Lösung ausprobiertPyAudio funktioniert, gibt aber jedes Mal Fehlermeldungen aus Aber ich bekomme immer wieder eine Fehlermeldung

OSError: libasound.so: Shared Object-Datei kann nicht geöffnet werden: Keine solche Datei oder kein solches Verzeichnis

Ich habe versucht, es zu ändernlibasound.so.2 aber dann friert es das Programm ein, wenn versucht wird, einen Sound abzuspielen, anstatt etwas zu tun.

Ich füge meinen Quellcode für die Verwendung von PyAudio hinzu. DasalsaMessageSuppress Funktion wird bei der Initialisierung der Klasse aufgerufen.

def alsaMessageSuppress(self):
    ERROR_HANDLER_FUNC = CFUNCTYPE(None, c_char_p, c_int, c_char_p, c_int, c_char_p)
    def py_error_handler(filename, line, function, err, fmt):
        print 'Debug Message Suppressed'
    c_error_handler = ERROR_HANDLER_FUNC(py_error_handler)
    asound = cdll.LoadLibrary('libasound.so.2')
    # Set error handler
    asound.snd_lib_error_set_handler(c_error_handler)

def soundThread(self, sound):

    p = pyaudio.PyAudio()

    duplicated_sound = wave.open(StringIO.StringIO(self.loaded_sounds[sound]), 'rb')

    def callback(in_data, frame_count, time_info, status):
        data = duplicated_sound.readframes(frame_count)
        return (data, pyaudio.paContinue)

    stream = p.open(format=p.get_format_from_width(duplicated_sound.getsampwidth()),
                    channels=duplicated_sound.getnchannels(),
                    rate=duplicated_sound.getframerate(),
                    output=True,
                    stream_callback=callback)

    while stream.is_active():
        sleep(.1)

    stream.stop_stream()
    stream.close()

    #print "%s Finished" % sound

    p.terminate()

    duplicated_sound = None

Antworten auf die Frage(0)

Ihre Antwort auf die Frage