python实现录音小程序
本文为大家分享了python实现录音小程序的具体代码,供大家参考,具体内容如下
学习目标:掌握python的pyaudio扩展包和Wave模块录制语音的方法
- Wav音频:声道数,采样频率,量化位数
pythonWav包是自带的,pyaudio需要下载
pip3installpyaudio
python读Wav文件:
fp=wave.open('','rb') nf=fp.getnframes()#获取文件的采样点数量 print('sampwidth:',fp.getsampwidth()) print('framerate:',fp.getframerate()) print('channels:',fp.getnchannels()) f_len=nf*2#文件长度计算,每个采样2个字节 audio_data=fp.readframes(nf)
python写Wav文件:
defsave_wave_file(filename,data): '''savethedatetothewavfile''' wf=wave.open(filename,'wb') wf.setnchannels(channels)#声道 wf.setsampwidth(sampwidth)#采样字节1or2 wf.setframerate(framerate)#采样频率8000or16000 wf.writeframes(b"".join(data))#https://stackoverflow.com/questions/32071536/typeerror-sequence-item-0-expected-str-instance-bytes-found wf.close()
利用PyAudio录音:
defmy_record(): pa=PyAudio() stream=pa.open(format=paInt16,channels=1, rate=framerate,input=True, frames_per_buffer=NUM_SAMPLES) my_buf=[] count=0 whilecount