未来的一段时间,人工智能在市场上占有很重的位置,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通过Django实现用户注册和邮箱验证功能代码

python使用pil进行图像处理(等比例压缩、裁剪)实例代码

如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

本文标题: Python语言实现百度语音识别API的使用实例

本文地址: http://www.cppcns.com/jiaoben/python/214407.html

用python语言实现-Python语言实现百度语音识别API的使用实例相关推荐

  1. python语言实例-Python语言实现百度语音识别API的使用实例

    未来的一段时间,人工智能在市场上占有很重的位置,Python语言则是研究人工智能的最佳编程语言,下面,就让我们来感受一下它的魅力吧! 百度给的样例程序,不论C还是Java版,都分为method1和me ...

  2. Python 小工具:调用「百度翻译API」实现英汉互译及多语言翻译

    Python 小工具:调用「百度翻译 API」实现英汉互译及多语言翻译 API 简介 过程详解 完整代码 结果展示 附:官方 Demo - Python 2 版本 Python 小工具:调用「百度翻译 ...

  3. python 语音识别机器人控制系统_python实现百度语音识别api

    本文实例为大家分享了python实现百度语音识别的具体代码,供大家参考,具体内容如下 详细百度语音识别api文档 先下载python用SDK,可以用python setup.py install安装 ...

  4. 如何使用百度语音识别api将自己的电脑设置成听话的小助手(python)

    工程链接:https://download.csdn.net/download/lidashent/11711069 电脑上自带的语音助手功能惨不忍睹,简直不能忍,于是自己写了一个语音助手 这里将使用 ...

  5. Python 技术篇-百度语音识别API接口调用演示

    百度语音识别api官网文档 现在演示的是识别音频文件的内容. 重要:token 参数的获取请看上一篇文章: Python 技术篇-百度语音API鉴权认证获取Access Token 注:下面的 tok ...

  6. python使用百度语音识别API注意事项

    代码如下: # -*- coding:utf-8 -*- #http://blog.csdn.net/happen23/article/details/45821697 #百度语音识别API的使用样例 ...

  7. 基于百度语音识别API的Python语音识别小程序

    一.功能概述 实现语音为文字,可以扩展到多种场景进行工作,这里只实现其基本的语言接收及转换功能. 在语言录入时,根据语言内容的多少与停顿时间,自动截取音频进行转换. 工作示例: 二.软件环境 操作系统 ...

  8. python调用离线百度语音识别_python调用百度语音识别api

    最近在处理语音检索相关的事. 其中用到语音识别,调用的是讯飞与百度的api,前者使用js是实现,后者用python3实现(因为自己使用python) 环境: python3.5 centos 7 流程 ...

  9. 百度地图API应用小实例

    Java知识汇总目录(持续更新)http://blog.csdn.net/ld0807/article/details/61915006 一.需求场景 之前开发中对数据加工的时候,需要知道数据的地市. ...

最新文章

  1. MVC Razor模板引擎
  2. 20165303我期望的师生关系
  3. 编程理论:多态,继承,和开闭原则
  4. UART/I2C/SPI/1-wire四大通信接口的神解释
  5. python 公开课_python公开课视频(11~20)
  6. Magento教程 25:如何修改系统发送的通知信件?
  7. Debug解决问题方法论
  8. 多线程的那点儿事(之C++锁)
  9. MOSS 2007 / WSS 3.0 运行在Windows Server 2008上不能上传大于28M的文件【续】
  10. Divide Two Integers leetcode java
  11. js margin作用到父元素_子元素的 margin-top 传递给了父元素
  12. 检测屏幕颜色显示坏点的一个小方法。
  13. 白山搜索引擎优化收费_白山SEO优化_专业搜索引擎优化、整站优化、快速排名公司...
  14. 一张图秒懂Android事件分发机制
  15. 0成本睡后收入!从0教你搭建外卖红包CPS小程序
  16. 邮箱大师手机版服务器异常,网易邮箱大师-高效强大的全平台邮箱客户端
  17. Linux内核——任务管理
  18. HTML+CSS实现百度网盘首页
  19. [渝粤教育] 西南科技大学 电子测量与仪表 在线考试复习资料
  20. APP 微信支付java后台代码(解决支付失败返回-1)

热门文章

  1. 异步复位同步释放_简谈同步复位和异步复位
  2. C语言简单题-求整数序列中出现次数最多的数
  3. yandex禁止java script_Yandex最新版本浏览器新标签页按钮显示俄文的解决办法
  4. C语言学习之编程实现:输入长方形的两个边长a, b和一个整数k。k=1时,输出长方形的周长 l; k=2时 ,输出长方形的面积s;当k=3时 , 输出长方形的周长1和面积s
  5. java getstringbounds_java-AttributedString的FontMetrics.getStringBounds给出...
  6. Hadoop系统架构
  7. 第一章 代码无错就是优吗?(简单工厂模式)
  8. [网络安全自学篇] 八.Web漏洞及端口扫描之Nmap、ThreatScan和DirBuster原理详解
  9. [网站搭建] 阿里云虚拟主机搭建及FTP文件上传
  10. [Python学习] 专题六.局部变量、全局变量global、导入模块变量