`

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

 
阅读更多

要使用这个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文件的数据
  • 【URL里可选参数】&maxresults=返回结果数

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

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

或者你的请求URL里设置了maxresults(比如 http://www.google.com/speech-api/v1/recognize?xjerr=1&client=chromium&lang=zh-CN&maxresults=10 )你就会得到:

{"status":0,"id":"fbf23a887b9ac2bfb630aa40dd1a776c-1","hypotheses":
[
{"utterance":"欢迎访问过的网址","confidence":0.7275984},
{"utterance":"欢迎访问我的网站"},
{"utterance":"欢迎访问我的网址"},
{"utterance":"欢迎访问过的网站"},
{"utterance":"白云访问过的网址"},
{"utterance":"怀孕访问过的网址"},
{"utterance":"欢迎访问有的网址"},
{"utterance":"欢迎访问过的网址哦"},
{"utterance":"白云访问我的网站"},
{"utterance":"怀孕访问我的网站"}
]
}

不过不简单哦

实例

Python代码

  1. #By laobubu.net
  2. import urllib2
  3. FILE='1.flac' #这里假设在当前文件夹下有一个叫1.flac的文件被识别
  4. url = 'http://www.google.com/speech-api/v1/recognize?xjerr=1&client=chromium&lang=zh-CN'
  5. audio=open(FILE,'rb').read()
  6. headers = {'Content-Type' : 'audio/x-flac; rate=16000'}
  7. req = urllib2.Request(url, audio, headers)
  8. response = urllib2.urlopen(req)
  9. print response.read().decode('UTF-8')

PHP代码

  1.  
  2. <?php
  3. $ch = curl_init();
  4. curl_setopt($ch, CURLOPT_URL, "http://www.google.com/speech-api/v1/recognize?xjerr=1&client=chromium&lang=zh-CN&maxresults=10");
  5. curl_setopt($ch, CURLOPT_VERBOSE, 0);
  6. curl_setopt($ch, CURLOPT_HEADER, 0);
  7. curl_setopt($ch, CURLOPT_POST, 1);
  8. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  9. curl_setopt($ch, CURLOPT_POSTFIELDS, file_get_contents('1.flac'));
  10. curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: audio/x-flac; rate=16000"));
  11. $data = curl_exec($ch);
  12. curl_close($ch);
  13. if ($data=json_decode($data,true)) {
  14.  echo "<ul>";
  15.  foreach($data['hypotheses'] as $i) echo "<li>".$i['utterance']."</li>";
  16.  echo "</ul>";
  17. } else {
  18.  echo "<i>识别出错</i>";
  19. }
  20. ?>

头疼:FLAC文件格式

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

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

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

http://datastorage.laobubu.net/FLAC.zip 

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

至于其他环境下(如linux里)也有对应的flac下载。我没有怎么用过linux就不说啥了。

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

来自laobubu实验室自动转换API

为了方便,我写了一个python程序,放在Google App Engine上面,只要提交一个音频文件的URL(支持MP3、wav等常见格式),且文件不大,就可以得到结果了哦。

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

 

分享到:
评论

相关推荐

    android上实现语音识别,基于google的语音识别

    语音识别技术是在Android SDK1.5中才加入的(RecognizerIntent),这里我们简单的分析一下自带的api例子,其实它就是通过一个Intent的Action动作来完成的。主要有以下两种模式: ACTION_RECOGNIZE_SPEECH:一般语音...

    谷歌语音识别-百度语音识别-android

    谷歌语音识别-百度语音识别-android

    gspeech-rec, 在一个 shell script 中使用Google语音识别 API v2,一个.zip

    gspeech-rec, 在一个 shell script 中使用Google语音识别 API v2,一个 gspeech-rec从中识别谷歌语音speech-rec.sh 是一个bash脚本,它将一个flac音频文件发送到Google进行语音识别,并打印出最佳返回的假设。...

    UE4/UE5 GooGleTTS文本转语音插件

    这是谷歌云文本到语音和同步云语音到文本语音识别API的虚幻引擎包装。 有了这个插件,你将能够合成31种语言的自然男性和女性语音,并识别119种语言和方言的语音。 无缝TTS缓存将保护您的钱包!如果tts节点满足已经...

    Qt上基于谷歌语音引擎的语音识别

    使用第三方语音识别API或者SDK进行分析识别语音 目前做的比较简单就是使用flac文件对wav音频文件进行编码 基于Mac OSX和Win 7平台的 win 7下使用flac.exe,具体exe帮助,读者可以使用flac.exe --help &gt; help.txt ...

    在线APP语音识别,可以直接使

    它支持多种语言,包括中文、英文、粤语等,并且能够在较差网络环境下实现高效率的语音识别。 讯飞语音识别:讯飞语音识别是国内领先的智能语音技术提供商之一,其提供的在线语音识别服务也是非常出色的。它不仅支持...

    freeswitch对接google的语音识别和语音合成例子

    freeswitch对接google的语音识别和语音合成例子

    babbler:Google Chrome语音合成和网络语音识别API的包装器

    胡言乱语Google Chrome语音合成和网络语音识别API的包装器。为什么? 更好的API。 只是。 如果愿意,您可以非常使用香草语音合成和语音识别API,这只是一种更好的交互方式。 最终决定权由您决定。 ## 用它它完全与...

    vosk-api:离线语音识别API,适用于Android,iOS,Raspberry Pi和具有Python,Java,C#和Node的服务器

    它支持17种语言和方言的语音识别模型-英语,印度英语,德语,法语,西班牙语,葡萄牙语,中文,俄语,土耳其语,越南语,意大利语,荷兰语,加泰罗尼亚语,阿拉伯语,希腊语,波斯语,菲律宾语。 Vosk模型很小(50...

    语音识别ios

    今分享一个语音识别的demo,在官方SpeakHere基础上修改的,通过调用的谷歌的语音识别api进行语音识别。友情提示需要真机,需要在线,仅供参考。

    谷歌语音识别

    调用Google voice语音,自动识别,本机有Google语音情况下

    Android 实现语音识别 DEMO

    语音识别,借助于云端技术可以识别用户的语音输入,包括语音控制等技术,下面我们将利用Google 提供的Api 实现这一功能。 功能点为:通过用户语音将用户输入的语音识别出来,并打印在列表上。 blog地址:...

    使用GoogleSpeech API实现声音识别

    通过调用Google speech的API接口来实现语音识别,并带声波。 修改GoogleSpeech.mxml中的"http://www.google.com/speech-api/v1/recognize?xjerr=1&client=chromium&lang=zh-CN"可以修改语言的类型,默认为zh-CN,...

    Go-流stdin语音识别工具通过GoogleCloudSpeechAPI实现

    speechtotext streaming stdin to speech recognition tool via Google Cloud Speech gRPC API

    python项目基于语音识别的智能垃圾分类系统.zip

    - 语音识别API:如Google Speech API或CMU Sphinx,用于实现语音到文本的转换。 - NLP库:如NLTK或spaCy,用于处理自然语言数据和提取关键词。 - 机器学习框架:如TensorFlow或PyTorch,用于构建和训练分类模型。 - ...

    Android语音识别示例

    由于最近在做智能家居方向的产品,需要在App上对机器人实现一个简单的语音控制,于是开始寻找相应的解决方案,由于某种原因,google自己的语音识别API并不能在国内发挥作用,所以我们选择国内的科大讯飞语音识别服务...

    iOS 语音识别1

    不是siri,但能够识别语音,用了google的api。

    GoogleCloudSpeechAPI 的调用注意事项

    该文档内容是具体描述在...的API管理器中如何添加项目,为项目创建凭据,选择凭据类型及凭据保存到本地的注意事项,环境变量的配置,如何启用Cloud Speech API,以及如何为启用了该API的项目付费。

    vue-speech-streaming:使用Google Cloud Speech将Vue2流式语音识别语音转换为文本

    Vue语音流 Vue2在渐进式Web App上使用Google Cloud Speech执行流语音识别认证方式访问 创建一个新项目或单击一个现有项目。 转到“ API和身份验证&gt; API”部分,然后打开以下API(您可能需要启用计费才能使用这些服务...

Global site tag (gtag.js) - Google Analytics