基于pyaudio利用Python编程实现播放音频mp3、wav等格式文件
T1、while循环输出数据流的方法
def play(): chunk=1024 #2014kb wf=wave.open(r"16k.wav",'rb') p=PyAudio() stream=p.open(format=p.get_format_from_width(wf.getsampwidth()),channels=wf.getnchannels(),rate=wf.getframerate(),output=True) data = wf.readframes(chunk) # 读取数据 print(data) while data != '': # 播放 stream.write(data) data = wf.readframes(chunk) print('while循环中!') print(data) stream.stop_stream() # 停止数据流 stream.close() p.terminate() # 关闭 PyAudio print('play函数结束!')
T2、while循环输出+if判断数据流的方法
def play(): chunk=1024 #2014kb wf=wave.open(r"16k.wav",'rb') p=PyAudio() stream=p.open(format=p.get_format_from_width(wf.getsampwidth()),channels=wf.getnchannels(),rate=wf.getframerate(),output=True) data = wf.readframes(chunk) # 读取数据 while True: data=wf.readframes(chunk) if data=="": break stream.write(data) stream.stop_stream() # 停止数据流 stream.close() p.terminate() # 关闭 PyAudio print('play函数结束!') if __name__ == '__main__': audio_file='16k.wav' #指定录音文件 play() #播放录音文件