baidu_gui.py 文件源码

python
阅读 20 收藏 0 点赞 0 评论 0

项目:speech_rec_py 作者: YichiHuang 项目源码 文件源码
def record_wave(self,temp):
        while self.start_flag==1:
            pa=PyAudio()
            stream=pa.open(format=paInt16,channels=1,
                       rate=framerate,input=True,
                       frames_per_buffer=self.NUM_SAMPLES)
            my_buf=[]
            count=0
            print "* start recoding *"
            while count<self.TIME*20:
                string_audio_data=stream.read(self.NUM_SAMPLES)
                audio_data=np.fromstring(string_audio_data,dtype=np.short)
                large_sample_count=np.sum(audio_data>self.LEVEL)
                print large_sample_count
                if large_sample_count<self.mute_count_limit:
                    self.mute_begin=1
                else:
                    my_buf.append(string_audio_data)
                    self.mute_begin=0
                    self.mute_end=1
                count+=1
                if(self.mute_end-self.mute_begin)>9:
                    self.mute_begin=0
                    self.mute_end=1
                    break
                if self.mute_begin:
                    self.mute_end+=1
                print '.'

            my_buf=my_buf[:]
            if my_buf:
                if self.file_name_index<11:
                    pass
                else:
                    self.file_name_index=1
                filename=str(self.file_name_index)+'.wav'
                self.save_wave_file(filename=filename,data=my_buf)
                self.writeQ(queue=self.wav_queue,data=filename)
                self.file_name_index+=1
                print filename,"saved"
            else:
                print '* Error: file not saved! *'
            #self.save_wave_file(filename, my_buf)
            my_buf=[]
            stream.close()
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号