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()

原文链接:https://blog.csdn.net/jianghao_boke/article/details/103461855

百度语音 python的更多相关文章

  1. [python]百度语音rest api

    百度语音识别提供的api范例只有java, c, php. 如果使用Python, 需要注意: 语音文件长度是指bytes大小 可以通过len(file.read())获得 使用requests.po ...

  2. python调用百度语音(语音识别-斗地主语音记牌器)

    一.概述 本篇简要介绍百度语音语音识别的基本使用(其实是斗地主时想弄个记牌器又没money,抓包什么的又不会,只好搞语音识别的了) 二.创建应用 打开百度语音官网,产品与使用->语音识别-> ...

  3. ros下基于百度语音的,语音识别和语音合成

    代码地址如下:http://www.demodashi.com/demo/13153.html 概述: 本demo是ros下基于百度语音的,语音识别和语音合成,能够实现文字转语音,语音转文字的功能. ...

  4. ros实例_百度语音+图灵

    1 百度语音模块 参考http://blog.csdn.net/u011118482/article/details/55001444 1.1 百度语音识别包 git clonehttps://git ...

  5. 利用百度语音API进行语音识别。

    由于项目需要,这几天都在试图利用百度语音API进行语音识别.但是识别到的都是“啊,哦”什么的,我就哭了. 这里我只是分享一下这个过程,错误感觉出现在Post语音数据那一块,可能是转换问题吧. API请 ...

  6. Android 通过调用系统,如接口 谷歌语音、百度语音、科大讯飞语音等语音识别方法对话框

    现在app在发展过程中会集成一些语音识别功能,不具有其自己的显影剂一般正在开发的语音识别引擎,所以在大多数情况下,它是选择一个成熟的语音识别引擎SDK集成到他们的app在. 平时,这种整合被分成两个, ...

  7. QT调用百度语音REST API实现语音合成

    QT调用百度语音REST API实现语音合成 1.首先点击点击链接http://yuyin.baidu.com/docs/tts 点击access_token,获取access_token,里面有详细 ...

  8. BaiduSpeechDemo【百度语音SDK集成】(基于v3.0.7.3)

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 本Demo将百度语音SDK(其中一部分功能)和自定义的UI对话框封装到一个module中,便于后续的SDK版本更新以及调用. 本De ...

  9. BaiduSpeechDemo【百度语音SDK集成】(基于v3.0.8.1)

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 上一篇集成的是V3.0.7.3版本的SDK<BaiduSpeechDemo[百度语音SDK集成](基于v3.0.7.3)> ...

随机推荐

  1. react-jsx和数组

    JSX: 1.全称:JavaScriptXML, 2.react定义的一种类似于XML的JS扩展语法:XML+JS 3.作用:用来创建react虚拟DOM(元素)对象 var ele=<h1&g ...

  2. POJ 2396 Budget (上下界网络流有源可行流)

    转载: http://blog.csdn.net/axuan_k/article/details/47297395 题目描述: 现在要针对多赛区竞赛制定一个预算,该预算是一个行代表不同种类支出.列代表 ...

  3. HDU 6038 Function —— 2017 Multi-University Training 1

    Function Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) Total ...

  4. 【BZOJ3522&BZOJ4543】Hotel加强版(长链剖分,树形DP)

    题意:求一颗树上三点距离两两相等的三元组对数 n<=1e5 思路:From https://blog.bill.moe/bzoj4543-hotel/ f[i][j]表示以i为根的子树中距离i为 ...

  5. Vue响应式原理的实现-面试必问

    Vue2的数据响应式原理 1.什么是defineProperty? defineProperty是设置对象属性,利用属性里的set和get实现了响应式双向绑定: 语法:Object.definePro ...

  6. DPTR是什么寄存器 它的作用是什么 它由哪几个寄存器组成

    数据指针(DPTR)是80C51中一个功能比较特殊的寄存器.从结构DPTR是一个16位的特殊功能寄存器, 其高位字节寄存器用DPH表示,低位字节寄存器用DPL表示,DPTR既可以作为一个16位的寄存器 ...

  7. Understanding identities in IIS

    Understanding identities in IIS https://support.microsoft.com/en-my/help/4466942/understanding-ident ...

  8. soj#551 loj#2833 帐篷

    传送门 分析 dp[i][j]表示考虑了i行j列的方案数 我们每次考虑三种情况: 一个点自己放 两个点在同一行 两个点在同一列 代码 #include<bits/stdc++.h> usi ...

  9. 同时连接gitlab和github

    ---恢复内容开始--- 原文地址:https://juejin.im/post/5ac0cf356fb9a028df22c246 1. 分别生成gitlab和github的ssh key 生成第一个 ...

  10. Gson字符串转换对象数组

    public class Input { private String title; private int formId; private String content; public String ...