您的位置:首页 > 编程语言 > Go语言

[API]Google的语音识别API,支持各种语言

2012-07-16 17:21 288 查看
没真的智能机的孩子你伤不 起啊有木有!成天都是倒霉Symbian60啊有木有!上次超流量下载了Google Search forS60,里面神奇的有“语音搜索”……然后就是今天碰到android手机了,自带一个语音输入法啊!这准确率杆杆地!不过根据我多秒经验,S60 的废柴API库绝对没有这么完美的语音识别(玩过诺基亚的应该都知道,待机状态长按右软件那个出来的是自带的识别功能),所以肯定Google留了一手!
(软件见http://www.google.com/intl/zh-CN_ALL/mobile/google-mobile-app/

废话多了,现在看看Google的猥琐API之STT!(属于speech-api v1的recognize)

http://www.google.com/speech-api/v1/recognize?xjerr=1&client=chromium&lang=zh-CN

不过使用不是那么简单的哦……

如何调用要使用这个API,你得先有一些心理素质:面对倒霉的FLAC格式,因为这个API只支持FLAC格式的数据,杯具啊。

不过你找到了我的博客,那么你是幸福的,因为我已经为你准备了不少好东西了。(顺便说一句,如果要转载记得清楚地标注“来自http://blog.laobubu.net”,我信任你。)

现在看看如何请求数据:

【URL】http://www.google.com/speech-api/v1/recognize?xjerr=1&client=chromium&lang=zh-CN

【方式】POST

【请求头】Content-Type:audio/x-flac; rate=16000

【POST】flac文件的数据

如果你人品大爆发,你成功了,可以得到类似这个的结果

{"status":0,"id":"54e1babccaa58682ffbb02ceb42aa47c-1",
"hypotheses":[{"utterance":"测试程序","confidence":0.8556527}]}不过不简单哦

实例:用于Python#By laobubu.net

importurllib2

FILE='1.flac'#这里假设在当前文件夹下有一个叫1.flac的文件被识别

url = 'http://www.google.com/speech-api/v1/recognize?xjerr=1&client=chromium&lang=zh-CN'

audio=open(FILE,'rb').read()

headers = {'Content-Type' : 'audio/x-flac; rate=16000'}

req = urllib2.Request(url, audio, headers)

response = urllib2.urlopen(req)

print response.read().decode('UTF-8')

头疼:FLAC文件格式这里我长话短说,google的flac也有限制,22050 Hz+201kbps还正常,如果比这个大多了就不对了。

不过还有最要命的问题,怎么生成FLAC文件?

没关系,这里有救星:flac.exe包下载

http://datastorage.laobubu.net/FLAC.zip (跟你说的,上laobubu.net没错的)

具体使用方法是【flac.exe 文件.wav】这样在命令行调用即可,测试得知:不支持MP3等格式,但是支持基本的wav格式。

好了,你可以去制造你的app了,哈哈。

爱你:来自laobubu实验室的福音为了方便,我写了一个python程序,放在Google App Engine上面,只要提交一个音频文件的URL(支持MP3、wav等常见格式),且文件不大,就可以得到结果了哦。(再次强调,跟你说的,上laobubu.net没错的)

API入口:http://laobubumf.appspot.com/stt/
备用入口:http://glab.laobubu.net/stt/

喜欢的话记得+1哦,当然捐赠我最不介意
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: