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

 更新时间:2021年01月18日 16:23:40   作者:小灰灰搞电子  
这篇文章主要介绍了Python结合百度语音识别实现实时翻译软件的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

一、所需库安装

在这里插入图片描述

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

二、百度官网申请服务

在这里插入图片描述

三、源代码分享

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 turtle绘制多边形和跳跃和改变速度特效

    python turtle绘制多边形和跳跃和改变速度特效

    这篇文章主要介绍了python turtle绘制多边形和跳跃和改变速度特效,文章实现过程详细,需要的小伙伴可以参考一下,希望对你的学习有所帮助
    2022-03-03
  • python的函数参数你了解吗

    python的函数参数你了解吗

    这篇文章主要为大家详细介绍了python的函数参数,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-01-01
  • 详解Python中的__new__()方法的使用

    详解Python中的__new__()方法的使用

    本文主要介绍了Python中的__new__()方法的使用的基本知识,本文中给出了基于Python2.x的代码实例,需要的朋友可以参考一下
    2015-04-04
  • Python获取图像中像素点坐标实例代码

    Python获取图像中像素点坐标实例代码

    当我们处理图像的时候避免不了要对访问,或是读取某一个像素点的值,下面这篇文章主要给大家介绍了关于利用Python如何获取图像中像素点坐标的相关资料,需要的朋友可以参考下
    2022-06-06
  • Python numpy 常用函数总结

    Python numpy 常用函数总结

    Numpy是Python的一个科学计算的库,提供了矩阵运算的功能,其一般与Scipy、matplotlib一起使用。这篇文章主要介绍了Python numpy 常用函数总结,需要的朋友可以参考下
    2017-12-12
  • numpy按列连接两个维数不同的数组方式

    numpy按列连接两个维数不同的数组方式

    今天小编就为大家分享一篇numpy按列连接两个维数不同的数组方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • Python连接和操作PostgreSQL数据库的流程步骤

    Python连接和操作PostgreSQL数据库的流程步骤

    PostgreSQL 是一种开源的对象关系型数据库管理系统(ORDBMS),以其强大的功能和稳定性而广受欢迎,本文将详细介绍如何使用 Python 连接和操作 PostgreSQL 数据库,需要的朋友可以参考下
    2024-10-10
  • Python3 微信支付(小程序支付)V3接口的实现

    Python3 微信支付(小程序支付)V3接口的实现

    本文主要介绍了Python3 微信支付(小程序支付)V3接口的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01
  • pytorch关于Tensor的数据类型说明

    pytorch关于Tensor的数据类型说明

    这篇文章主要介绍了pytorch关于Tensor的数据类型说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-07-07
  • 使用Python实现调整Excel中的行列顺序

    使用Python实现调整Excel中的行列顺序

    调整Excel 行列顺序指的是改变工作表中行或列的位置,以便更好地展示和分析数据,本文将介绍如何通过Python高效地调整Excel 行列顺序,感兴趣的可以了解下
    2025-01-01

最新评论