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


Posted in Python onJanuary 18, 2021

一、所需库安装

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

pip install PyAudio
pip install SpeechRecognition
pip install baidu-aip
pip install Wave
pip install Wheel
pip install Pyinstaller

二、百度官网申请服务

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

三、源代码分享

import pyaudio
import wave
from aip import AipSpeech
import time




# 用Pyaudio库录制音频
#  out_file:输出音频文件名
#  rec_time:音频录制时间(秒)
def audio_record(out_file, rec_time):
  CHUNK = 1024
  FORMAT = pyaudio.paInt16 # 16bit编码格式
  CHANNELS = 1 # 单声道
  RATE = 16000 # 16000采样频率

  p = pyaudio.PyAudio()
  # 创建音频流
  stream = p.open(format=FORMAT, # 音频流wav格式
          channels=CHANNELS, # 单声道
          rate=RATE, # 采样率16000
          input=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 result

def write_file(file,text):
  import time
  time = 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

到此这篇关于Python结合百度语音识别实现实时翻译软件的实现的文章就介绍到这了,更多相关Python 实时翻译软件内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
在Python中的Django框架中进行字符串翻译
Jul 27 Python
Python批量查询域名是否被注册过
Jun 21 Python
Python实现基本数据结构中栈的操作示例
Dec 04 Python
python函数式编程学习之yield表达式形式详解
Mar 25 Python
pandas.DataFrame 根据条件新建列并赋值的方法
Apr 08 Python
Python3.5基础之变量、数据结构、条件和循环语句、break与continue语句实例详解
Apr 26 Python
Python中使用双下划线防止类属性被覆盖问题
Jun 27 Python
python开发之anaconda以及win7下安装gensim的方法
Jul 05 Python
python自定义时钟类、定时任务类
Feb 22 Python
基于python cut和qcut的用法及区别详解
Nov 22 Python
使用Python-OpenCV消除图像中孤立的小区域操作
Jul 05 Python
pandas数据分组groupby()和统计函数agg()的使用
Mar 04 Python
用Python自动清理系统垃圾的实现
Jan 18 #Python
详解Python爬虫爬取博客园问题列表所有的问题
Jan 18 #Python
python爬虫爬取图片的简单代码
Jan 18 #Python
python中用Scrapy实现定时爬虫的实例讲解
Jan 18 #Python
java关于string最常出现的面试题整理
Jan 18 #Python
python爬虫实现爬取同一个网站的多页数据的实例讲解
Jan 18 #Python
python中四舍五入的正确打开方式
Jan 18 #Python
You might like
解析PHP提交后跳转
2013/06/23 PHP
解决phpcms更换javascript的幻灯片代码调用图片问题
2014/12/26 PHP
Yii2框架自定义类统一处理url操作示例
2019/05/25 PHP
HTML复选框和单选框 checkbox和radio事件介绍
2012/12/12 Javascript
jQuery滚动加载图片效果的实现
2013/03/06 Javascript
js清理Word格式示例代码
2014/02/13 Javascript
JQuery删除DOM节点的方法
2015/06/11 Javascript
javascript实现选中复选框后相关输入框变灰不可用的方法
2015/08/11 Javascript
基于Javascript实现二级联动菜单效果
2016/03/04 Javascript
Javascript 函数的四种调用模式
2016/11/05 Javascript
AngularJS 中ui-view传参的实例详解
2017/08/25 Javascript
详谈js中标准for循环与foreach(for in)的区别
2017/11/02 Javascript
解决vue打包后vendor.js文件过大问题
2019/07/03 Javascript
vue elementUI 表单校验的实现代码(多层嵌套)
2019/11/06 Javascript
JavaScript实现省市联动效果
2019/11/22 Javascript
[09:22]2014DOTA2西雅图国际邀请赛 主赛事第二日TOPPLAY
2014/07/21 DOTA
[01:10]DOTA2英雄背景故事第四期之混沌法则混沌骑士
2020/07/16 DOTA
python实现的一个p2p文件传输实例
2014/06/04 Python
Python在图片中添加文字的两种方法
2017/04/29 Python
浅谈python中列表、字符串、字典的常用操作
2017/09/19 Python
python numpy 部分排序 寻找最大的前几个数的方法
2018/06/27 Python
Django框架使用富文本编辑器Uedit的方法分析
2018/07/31 Python
pandas去除重复列的实现方法
2019/01/29 Python
基于python进行抽样分布描述及实践详解
2019/09/02 Python
Python实现验证码识别
2020/06/15 Python
Tensorflow--取tensorf指定列的操作方式
2020/06/30 Python
Python中BeautifulSoup通过查找Id获取元素信息
2020/12/07 Python
详解淘宝H5 sign加密算法
2020/08/25 HTML / CSS
美国最大的珠宝商之一:Littman Jewelers
2016/11/13 全球购物
绘画设计学生的个人自我评价
2013/09/20 职场文书
促销活动策划方案
2014/01/12 职场文书
中医学专业自荐信范文
2014/04/01 职场文书
2014年资料员工作总结
2014/11/18 职场文书
2014年车间工作总结
2014/11/21 职场文书
《钓鱼的启示》教学反思
2016/02/18 职场文书
这样写python注释让代码更加的优雅
2021/06/02 Python