介绍
这期内容当中小编将会给大家带来有关使用python实现录音功能并可随时停止录音,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
# - * -编码:utf - 8 - * 进口pyaudio 导入的时间 进口线程 进口波 类记录器(): def __init__(自我,块=1024、通道=1,率=64000): 自我。块=块 自我。格式=pyaudio.paInt16 自我。频道=频道 自我。率=自我。_running=True 自我。_frames=[] def开始(自我): threading._start_new_thread(自我。__recording, ()) def __recording(自我): 自我。_running=True 自我。_frames=[] p=pyaudio.PyAudio ()=self.FORMAT流=p.open(格式, 渠道=self.CHANNELS, 率=self.RATE, 输入=True, frames_per_buffer=self.CHUNK) 而(self._running): data=https://www.yisu.com/zixun/stream.read (self.CHUNK) self._frames.append(数据) stream.stop_stream () stream.close () p.terminate () def停止(自我): 自我。_running=False def拯救自我,文件名: p=pyaudio.PyAudio () 如果不是filename.endswith (“wav”): 文件名=文件名+“wav” wf=波。open (filename,“世界银行”) wf.setnchannels (self.CHANNELS) wf.setsampwidth (p.get_sample_size (self.FORMAT)) wf.setframerate (self.RATE) wf.writeframes (b . join (self._frames)) wf.close () print(“保存”) if __name__==癬_main__”: 我的范围(1、4): a=int(输入(“请输入相应数字开始:')) 如果一个==1: rec=记录器() 开始=time.time () print(“开始记录”) rec.start () b=int(输入(“请输入相应数字停止:')) 如果b==2: print(“停止记录”) rec.stop () 国际泳联=time.time () t=国际泳联——开始 打印(“录音时间为% d ' % t) rec.save (“1 _ % d.wav”% i)
上述就是小编为大家分享的使用python实现录音功能并可随时停止录音了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。