300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > Python结合百度语音识别实现实时翻译软件

Python结合百度语音识别实现实时翻译软件

时间:2018-11-10 01:14:24

相关推荐

Python结合百度语音识别实现实时翻译软件

一、所需库安装

pip install PyAudiopip install SpeechRecognitionpip install baidu-aippip install Wavepip install Wheelpip install Pyinstaller

二、百度官网申请服务

三、源代码分享

import pyaudioimport wavefrom aip import AipSpeechimport time# 用Pyaudio库录制音频# out_file:输出音频文件名# rec_time:音频录制时间(秒)def audio_record(out_file, rec_time):CHUNK = 1024FORMAT = pyaudio.paInt16 # 16bit编码格式CHANNELS = 1 # 单声道RATE = 16000 # 16000采样频率p = pyaudio.PyAudio()# 创建音频流stream = p.open(format=FORMAT, # 音频流wav格式channels=CHANNELS, # 单声道rate=RATE, # 采样率16000input=True,frames_per_buffer=CHUNK)print("开始记录语音{0}秒后开始识别...".format(rec_time))frames = [] # 录制的音频流# 录制音频数据for i in range(0, int(RATE / CHUNK * rec_time)):data = stream.read(CHUNK)frames.append(data)# 录制完成stream.stop_stream()stream.close()p.terminate()print("结束识别")# 保存音频文件wf = wave.open(out_file, 'wb')wf.setnchannels(CHANNELS)wf.setsampwidth(p.get_sample_size(FORMAT))wf.setframerate(RATE)wf.writeframes(b''.join(frames))wf.close()def audio_recog(recogFile):# 读取文件def get_file_content(filePath):with open(filePath, 'rb') as fp:return fp.read()# 识别本地文件result = client.asr(get_file_content(recogFile), 'wav', 16000, {'dev_pid': 1537,})return resultdef write_file(file,text):import timetime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())f = open(file, 'a')f.write(time+':'+text+'\n')f.close()audioFile="audio.wav"textFile="识别结果.txt"""" 你的 APPID AK SK """APP_ID = '你的APP_ID'API_KEY = '你的API_KEY'SECRET_KEY = '你的SECRET_KEY'client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)if __name__ == '__main__':while True:audio_record(audioFile, 5)textResult = audio_recog("audio.wav")if textResult['err_msg'] =="success.":print(textResult['result'])write_file(textFile,str(textResult['result']))

四、打包成软件

进入到目录执行下面命令:

pyinstaller -F main.py

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。