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使用Socket(Https)Post登录百度的实现代码
May 18 Python
在Python中操作列表之list.extend()方法的使用
May 20 Python
Python实现控制台进度条功能
Jan 04 Python
在Python程序和Flask框架中使用SQLAlchemy的教程
Jun 06 Python
python利用拉链法实现字典方法示例
Mar 25 Python
关于Python的一些学习总结
May 25 Python
对python dataframe逻辑取值的方法详解
Jan 30 Python
Django使用AJAX调用自己写的API接口的方法
Mar 06 Python
使用Python在Windows下获取USB PID&VID的方法
Jul 02 Python
python解析yaml文件过程详解
Aug 30 Python
python元组的概念知识点
Nov 19 Python
python GUI库图形界面开发之PyQt5表格控件QTableView详细使用方法与实例
Mar 01 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中使用GD库绘制折线图 折线统计图的绘制方法
2015/11/09 PHP
详解WordPress中调用评论模板和循环输出评论的PHP函数
2016/01/05 PHP
PHP实践教程之过滤、验证、转义与密码详解
2017/07/24 PHP
IE与FireFox的兼容性问题分析
2007/04/22 Javascript
Javascript 兼容firefox的一些问题
2009/05/21 Javascript
浅说js变量
2011/05/25 Javascript
Node.js编码规范
2014/07/14 Javascript
JS面向对象基础讲解(工厂模式、构造函数模式、原型模式、混合模式、动态原型模式)
2014/08/16 Javascript
让IE8浏览器支持function.bind()方法
2014/10/16 Javascript
jQuery中:nth-child选择器用法实例
2014/12/31 Javascript
详解AngularJS中的依赖注入机制
2015/06/17 Javascript
jQuery插件EasyUI校验规则 validatebox验证框
2015/11/29 Javascript
纯js代码生成可搜索选择下拉列表的实例
2018/01/11 Javascript
nodejs中Express与Koa2对比分析
2018/02/06 NodeJs
JS中call和apply函数用法实例分析
2018/06/20 Javascript
vue.js绑定事件监听器示例【基于v-on事件绑定】
2018/07/07 Javascript
vue改变对象或数组时的刷新机制的方法总结
2019/04/24 Javascript
SSM+layUI 根据登录信息显示不同的页面方法
2019/09/20 Javascript
vue通过v-html指令渲染的富文本无法修改样式的解决方案
2020/05/20 Javascript
Vue中登录验证成功后保存token,并每次请求携带并验证token操作
2020/09/08 Javascript
[31:55]完美世界DOTA2联赛循环赛 IO vs GXR BO2第一场 11.04
2020/11/05 DOTA
[49:31]DOTA2-DPC中国联赛 正赛 Elephant vs LBZS BO3 第二场 1月29日
2021/03/11 DOTA
Python Django 封装分页成通用的模块详解
2019/08/21 Python
Python循环实现n的全排列功能
2019/09/16 Python
python标准库sys和OS的函数使用方法与实例详解
2020/02/12 Python
解决json中ensure_ascii=False的问题
2020/04/03 Python
如何在Python对Excel进行读取
2020/06/04 Python
国外的一些J2EE面试题一
2012/10/13 面试题
宝宝满月酒主持词和仪式流程
2014/03/27 职场文书
公司财务会计主管应聘求职信
2014/09/26 职场文书
拾金不昧感谢信
2015/01/21 职场文书
学校清洁工岗位职责
2015/04/15 职场文书
被委托人身份证明
2015/08/07 职场文书
三八红旗手主要事迹材料
2015/11/04 职场文书
Go语言应该什么情况使用指针
2021/07/25 Golang
分享五个Node.js开发的优秀实践 
2022/04/07 NodeJs