python语言实例-Python语言实现百度语音识别API的使用实例
未来的一段时间,人工智能在市场上占有很重的位置,Python语言则是研究人工智能的最佳编程语言,下面,就让我们来感受一下它的魅力吧!
百度给的样例程序,不论C还是Java版,都分为method1和method2两种
前者称为隐式(post的是json串,音频数据编码到json里),后者称为显式(post的就是音频数据)
一开始考虑到pythonwave包处理的都是“字符串”,担心跟C语言的数组不一致,所以选择低效但保险的method1,
即先将音频数据base64编码,再加上采样率、通道数等信息汇集成dict,最后总体编码成json串
结果老是报:
3300输入参数不正确
先后试过urllib2和pycurl包,都是上面情况
不得已换用method2,成功(看来wave包对音频的存储并不是“字符串”)
#encoding=utf-8
import wave
import urllib, urllib2, pycurl
import base64
import json
## get access token by api key & secret key
def get_token():
apiKey = "xxxxxxxx"
secretKey = "xxxxxxxxx"
auth_url = "https://openapi.baidu.com/oauth/2.0/token?grant_type=client_credentials&client_id=" + apiKey + "&client_secret=" + secretKey;
res = urllib2.urlopen(auth_url)
json_data = res.read()
return json.loads(json_data)['access_token']
def dump_res(buf):
print buf
## post audio to server
def use_cloud(token):
fp = wave.open('vad_0.wav', 'rb')
nf = fp.getnframes()
f_len = nf * 2
audio_data = fp.readframes(nf)
cuid = "xxxxxxxxxx" #my xiaomi phone MAC
srv_url = 'http://vop.baidu.com/server_api' + '?cuid=' + cuid + '&token=' + token
http_header = [
'Content-Type: audio/pcm; rate=8000',
'Content-Length: %d' % f_len
]
c = pycurl.Curl()
c.setopt(pycurl.URL, str(srv_url)) #curl doesn't support unicode
#c.setopt(c.RETURNTRANSFER, 1)
c.setopt(c.HTTPHEADER, http_header) #must be list, not dict
c.setopt(c.POST, 1)
c.setopt(c.CONNECTTIMEOUT, 30)
c.setopt(c.TIMEOUT, 30)
c.setopt(c.WRITEFUNCTION, dump_res)
c.setopt(c.POSTFIELDS, audio_data)
c.setopt(c.POSTFIELDSIZE, f_len)
c.perform() #pycurl.perform() has no return val
if __name__ == "__main__":
token = get_token()
use_cloud(token)
运行结果
{"corpus_no":"6150045491002357923","err_msg":"success.","err_no":0,"result":["播放小苹果,"],"sn":"243903724071431919050"}
总结
以上就是本文关于Python语言实现百度语音识别API的使用实例的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站:
如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!
python语言实例-Python语言实现百度语音识别API的使用实例相关推荐
- 用python语言实现-Python语言实现百度语音识别API的使用实例
未来的一段时间,人工智能在市场上占有很重的位置,Python语言则是研究人工智能的最佳编程语言,下面,就让我们来感受一下它的魅力吧! 百度给的样例程序,不论C还是Java版,都分为method1和me ...
- Python 小工具:调用「百度翻译API」实现英汉互译及多语言翻译
Python 小工具:调用「百度翻译 API」实现英汉互译及多语言翻译 API 简介 过程详解 完整代码 结果展示 附:官方 Demo - Python 2 版本 Python 小工具:调用「百度翻译 ...
- python 语音识别机器人控制系统_python实现百度语音识别api
本文实例为大家分享了python实现百度语音识别的具体代码,供大家参考,具体内容如下 详细百度语音识别api文档 先下载python用SDK,可以用python setup.py install安装 ...
- 如何使用百度语音识别api将自己的电脑设置成听话的小助手(python)
工程链接:https://download.csdn.net/download/lidashent/11711069 电脑上自带的语音助手功能惨不忍睹,简直不能忍,于是自己写了一个语音助手 这里将使用 ...
- Python 技术篇-百度语音识别API接口调用演示
百度语音识别api官网文档 现在演示的是识别音频文件的内容. 重要:token 参数的获取请看上一篇文章: Python 技术篇-百度语音API鉴权认证获取Access Token 注:下面的 tok ...
- python使用百度语音识别API注意事项
代码如下: # -*- coding:utf-8 -*- #http://blog.csdn.net/happen23/article/details/45821697 #百度语音识别API的使用样例 ...
- php有道,PHP实例:php有道翻译api调用方法实例
<PHP实例:php有道翻译api调用方法实例>要点: 本文介绍了PHP实例:php有道翻译api调用方法实例,希望对您有用.如果有疑问,可以联系我们. PHP学习调用之前我们需申请一个有 ...
- 基于百度语音识别API的Python语音识别小程序
一.功能概述 实现语音为文字,可以扩展到多种场景进行工作,这里只实现其基本的语言接收及转换功能. 在语言录入时,根据语言内容的多少与停顿时间,自动截取音频进行转换. 工作示例: 二.软件环境 操作系统 ...
- python调用离线百度语音识别_python调用百度语音识别api
最近在处理语音检索相关的事. 其中用到语音识别,调用的是讯飞与百度的api,前者使用js是实现,后者用python3实现(因为自己使用python) 环境: python3.5 centos 7 流程 ...
最新文章
- 4模型导出_项目模型规范总结 游戏模型制作的注意事项
- 机器学习算法库scikit-learn的安装
- Java agent初探
- 树莓派python开发工具哪个好_Thonny——树莓派上Python的最新IDE
- BI 界震动 - Power BI Premium 个人版只要每月 120 元
- html img src
- linux 物理内存用完了_调整linux内核尽量用内存,而不用swap
- 微信小程序学习笔记-1-环境及基础结构
- 郁闷好久的电脑问题终于搞定---电脑经常死机
- 计算机怎么格式化硬盘,如何格式化硬盘
- 未来教育计算机19二级视频百度云,未来教育 MS office二级视频讲解
- mac 提示缺失Myriad字体
- ctfmon是什么启动项_win10系统启动项中没有ctfmon进程的图文方法
- AD9 设置网络标号作用域
- 计算机机房需求调查表,弱电工程设计流程及客户需求调研表
- 阅读目标检测综述论文
- Office2016专业版打开超链接时提示“您的组织策略阻止我们为您完成此操作。...”问题解决
- 百度BAE部署微信开发环境
- linux文件编程 --- fflush函数
- Codeforces Round #116 C.Letter
热门文章
- Dynamics 365-关于Solution的那些事(一)
- Git高速入门——Git安装、创建版本号库以及经常使用命令
- WebRTC音频预处理单元APM的整体编译及使用
- ueditor图片上传,网络连接错误的解决方案
- Eclipse调试Java的10个技巧【转】
- python程序设计 清华大学出版社 pdf下载-清华大学出版社-图书详情-《Python程序设计》...
- python从零基础到项目实战怎么样-2018完整Python零基础到项目精通的学习书籍
- python网课什么平台好-python网课什么平台好
- python知乎-知乎看了很多推荐,最终选了这本Python入门
- 在哪里能收到python实例代码-用python做一个搜索引擎(Pylucene)的实例代码