pyaudio:基于pyaudio利用Python编程实现播放音频mp3、wav等格式文件

基于pyaudio利用Python编程实现播放音频mp3、wav等格式文件

 

目录

输出结果

实现代码


 

 

 

 

输出结果

pyaudio:基于pyaudio利用Python编程实现播放音频mp3、wav等格式文件_第1张图片

 

实现代码

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()                #播放录音文件


 

 

 

 

你可能感兴趣的:(Python编程(初级+进阶))