您的位置:首页 > 编程语言 > Python开发

百度语音识别 python

2020-02-02 20:55 453 查看

python实现语音识别

我们用到是百度语音识别,因为不掏钱哈哈!首先去百度官网去创建你的 APPID AK SK 这个网上很多大家没创建的自己看下

目前本SDK的功能同REST API,需要联网调用http接口, 具体功能见REST API 文档, REST API 仅支持整段语音识别的模式,即需要上传完整语音文件进行识别,时长不超过60s,支持、自定义词库设置, 没有其他额外功能。
原始 PCM 的录音参数必须符合 16k 采样率、16bit 位深、单声道,支持的格式有:pcm(不压缩)、wav(不压缩,pcm编码)、amr(压缩格式)

首先安装使用Python SDK有如下方式

如果已安装pip,执行pip install baidu-aip即可。
如果已安装setuptools,执行python setup.py install即可

AipSpeech是语音识别的Python SDK客户端,为使用语音识别的开发人员提供了一系列的交互方法。

参考如下代码新建一个AipSpeech:

from aip import AipSpeech

""" 你的 APPID AK SK """
APP_ID = '你的 App ID'
API_KEY = '你的 Api Key'
SECRET_KEY = '你的 Secret Key'

client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)

注意:如果导报aip有问题可能是下载版本问题可以

pip uninstall baidu-aip
pip install baidu-aip

API的具体代码

# 读取文件
def get_file_content(filePath):
with open(filePath, 'rb') as fp:
return fp.read()

# 识别本地文件
client.asr(get_file_content('audio.pcm'), 'pcm', 16000, {
'dev_pid': 1536,
})

结果

// 成功返回
{
"err_no": 0,
"err_msg": "success.",
"corpus_no": "15984125203285346378",
"sn": "481D633F-73BA-726F-49EF-8659ACCC2F3D",
"result": ["北京天气"]
}

// 失败返回
{
"err_no": 2000,
"err_msg": "data empty.",
"sn": null
}

自己写的一段测试小代码喜欢的可以看看

from aip import AipSpeech

class BaiduVoiceToTxt(object):
def __init__(self, client, file_path):
self.client = client
self.file_path = file_path

# 读取文件
@staticmethod
def get_file_content(file_path):
with open(file_path, 'rb') as fp:
return fp.read()

# 识别本地文件
def run(self):
print('正在识别.....')
result = client.asr(self.get_file_content(self.file_path), 'pcm', 16000, {
'dev_pid': 1536,
})

if not isinstance(result, dict):
with open('testAudio.mp3', 'wb') as f:
f.write(result)
else:
print('语音内容:{}'.format(result['result'][0]))

if __name__ == '__main__':

APP_ID = '17973848'  # 你的 App ID'
API_KEY = 'D7dskLcxcIqit6GjNxfLg3u0'  # 你的 Api Key'
SECRET_KEY = 'NbTGUrNfKWgUwGP3TFd0MCFwGi4EkRda'  # 你的 Secret Key'
client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)
file_path = 'D:\code\zuj_jian/test.pcm'

baidu_voice_to_srt_obj = BaiduVoiceToTxt(client,file_path)
baidu_voice_to_srt_obj.run()
  • 点赞
  • 收藏
  • 分享
  • 文章举报
jianghao_boke 发布了6 篇原创文章 · 获赞 0 · 访问量 224 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: