pyaudio воспроизвести аудио

У меня есть такой простенький класс. Метод play должен воспроизводить запись. Он вроде работает, запись(точнее filename) воспроизводится, но сообщение 'Stop' некогда не выводится. Как это исправить?

class utils:
    def play(self, filename):
        wf = wave.open(filename, 'rb')
        p = pyaudio.PyAudio()
        stream = p.open(format=
                        p.get_format_from_width(wf.getsampwidth()),
                        channels=wf.getnchannels(),
                        rate=wf.getframerate(),
                        output=True)
        data = wf.readframes(1024)
        while data != '':
            stream.write(data)
            data = wf.readframes(1024)
        stream.close()
        p.terminate()
        print('Stop')

Ответы (1 шт):

Автор решения: gil9red

Поменяйте while data != '' на while data. Это более общая булевая проверка, сгодится для пустых строк, байтов, массивов и т.п.

Вообще, судя по флагу rb у вас из файла считываются байты, а проверка на пустую строку.

→ Ссылка