[API]Google的語音識別API,支持各種語言
沒
真的智能機的孩子你傷不起啊有木有!成天都是倒霉Symbian60啊有木有!上次超流量下載了Google Search for
S60,里面神奇的有“語音搜索”……然后就是今天碰到android手機了,自帶一個語音輸入法??!這準確率桿桿地!不過根據(jù)我多秒經驗,S60的廢柴
API庫絕對沒有這么完美的語音識別(玩過諾基亞的應該都知道,待機狀態(tài)長按右軟件那個出來的是自帶的識別功能),所以肯定Google留了一手!
(軟件見http://www.google.com/intl/zh-CN_ALL/mobile/google-mobile-app/)
廢話多了,現(xiàn)在看看Google的猥瑣API之STT?。▽儆趕peech-api v1的recognize)
http://www.google.com/speech-api/v1/recognize?xjerr=1&client=chromium&lang=zh-CN
不過使用不是那么簡單的哦……
如何調用
要使用這個API,你得先有一些心理素質:面對倒霉的FLAC格式,因為這個API只支持FLAC格式的數(shù)據(jù),杯具啊。
不過你找到了我的博客,那么你是幸福的,因為我已經為你準備了不少好東西了。(順便說一句,如果要轉載記得清楚地標注“來自http://blog.”,我信任你。)
現(xiàn)在看看如何請求數(shù)據(jù):
- 【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文件的數(shù)據(jù)
如果你人品大爆發(fā),你成功了,可以得到類似這個的結果
{"status":0,"id":"54e1babccaa58682ffbb02ceb42aa47c-1",
"hypotheses":[{"utterance":"測試程序","confidence":0.8556527}]}
不過不簡單哦
實例:用于Python
#By
-
-
import urllib2
-
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./FLAC.zip (跟你說的,上沒錯的)
具體使用方法是【flac.exe 文件.wav】這樣在命令行調用即可,測試得知:不支持MP3等格式,但是支持基本的wav格式。
好了,你可以去制造你的app了,哈哈。
愛你:來自laobubu實驗室的福音
為了方便,我寫了一個python程序,放在Google App Engine上面,只要提交一個音頻文件的URL(支持MP3、wav等常見格式),且文件不大,就可以得到結果了哦。(再次強調,跟你說的,上沒錯的)
API入口:http://laobubumf./stt/
備用入口:http://glab./stt/
喜歡的話記得 1哦,當然捐贈我最不介意 