使用python实现录音功能并可随时停止录音

  介绍

这期内容当中小编将会给大家带来有关使用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实现录音功能并可随时停止录音了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。

使用python实现录音功能并可随时停止录音