如何工作:
说“内罗毕天气”
释放键
软件立即打开Google语音搜索的网络浏览器标签,搜索我说的内容。要求:
Linux
开始快速收听。我应该能够按下键并立即开始讲话,而不必等待任何加载。
没有用户界面(可能用于设置)
不要尝试进行语音识别,只需发送音频,就像在移动设备上一样。
#1 楼
好的,这不是一个完整的答案,但是您对Google API的引用引起了我的兴趣(以前从未听说过-就像您说的那样,Linux在语音识别方面并不擅长,因此我从不打扰),而且就像可能很酷的东西。以下脚本应(我说“应该”,我的电脑上没有麦克风!)记录一段代码,进行转换,将其发送给Google,返回将其作为文本,从文本中删除空格以将其设置为URL格式(毫无疑问,我的工作只是逃脱了空格),然后通过Firefox在Google上搜索。我还没有看过快捷键,或者没有更好的停止记录的方法。
#!/bin/bash
echo "Recording. Use Ctrl+C when finished your query."
arecord -q -f cd -t wav | ffmpeg -loglevel panic -y -i - -ar 16000 -acodec flac file.flac > /dev/null 2>&1
echo "Sending to Google"
wget -q -U "Mozilla/5.0" --post-file file.flac --header "Content-Type: audio/x-flac; rate=16000" -O - "http://www.google.com/speech-api/v1/recognize?lang=en-us&client=chromium" | cut -d\" -f12 >search_query.txt
sed -i "s# #+#g" search_query.txt
SEARCH=$(cat "search_query.txt")
firefox -new-tab https://www.google.co.uk/search?q=$SEARCH
rm -f file.flac
关于下一步去哪里的任何建议都将受到欢迎!我会继续修补。
评论
您是否有指向API描述的链接?我只找到stackoverflow.com/a/8838585/2015768,该链接链接到mikepultz.com/2011/03/accessing-google-speech-api-chrome-11
–弗雷德里克·诺德(Frederick Nord)
14年8月16日在19:12
我用sox -r 16000 -t alsa默认文件.flac录制了,但没有得到任何结果,即空响应:-/
–弗雷德里克·诺德(Frederick Nord)
14年8月16日在19:27
#2 楼
EasyVoiceSearch,是Chromium / Chrome浏览器的扩展程序
优点:您必须等待1-2秒才能开始讲话。
没有用户界面。设置在chrome:// extensions中。有时,虽然Chromium的多功能框右侧有一个红色的圆形麦克风图标。
可能使用Google语音识别。描述中没有说明是否这样做。
缺点:
您必须保持Chromium处于打开状态。组合键,而不是按键。您不能将其绑定到“ menu”或“ super”之类的特殊键,也不能将其绑定至没有“ ctrl + A”之类的“ control”键。 。就像在移动应用中一样,当您停止讲话时,Google也会停止监听。
搜索结果位于后台。通话结束后,Chromium仍处于背景中,因此您必须手动切换到它。例如,搜索结果不会出现在Firefox中。
不会大声回答。如果您说“内罗毕天气”,则不会得到听觉上的回应。
设置:
从Chrome网上应用店安装。
要为其获取按键绑定(将其添加到Chromium之后):
转到chrome:// extensions(在Chromium中)
向下滚动并选择键盘快捷键
在EasyVoiceSearch中,设置键盘快捷键
将“在Chrome中”更改为“全局”
评论
不会大声说出答案<-没问题,无论如何这不是必需的:-)
–尼古拉斯·拉乌尔(Nicolas Raoul)♦
2014年9月29日,下午1:58
评论
如果有兴趣,我知道如何仅在Windows中通过语音启动Google搜索。 Linux通常会糟透了语音识别(最好的方法是通常使用Google API进行语音识别的某些程序,不确定是否已被禁止)。该程序不会尝试进行任何识别,它只会将音频发送到Google,就像在移动设备上一样。
我猜... CAPSLOCK是未使用的密钥吗?