有没有想过给您的网站增添语音识别的功能?好比您的用户不用点鼠标,仅仅经过电脑或者手机的麦克风发布命令,好比"下拉到页面底部”,或者“跳转到下一页”,您的网站就会执行对应命令。听起来很酷对么?然而为了实现这个功能,必须得让您网站的JavaScript脚本可以识别到这些语音输入。javascript
这里介绍一个开源的JavaScript语言输入库,名叫annyang。html
Github地址:https://github.com/TalAter/annyangjava
截至到2018年7月12日,这个github仓库已经有4833个Star了。node
annyang实际上就是一个只有2KB大小的JavaScript脚本文件,使用起来很是方便。git
下面就跟着我一块儿作一个Hello World应用吧,看看您经过麦克风说话的声音是如何被这个JavaScript库文件识别到的。github
新建一个html文件,将下面的代码复制进去。将它部署到您本地的Tomcat或者nodejs服务器上。浏览器
<html> <script src="annyang.min.js"></script> <script> if (annyang) { var commands = { "Hello": function() { alert(" I have heard your voice!"); } }; var commands2 = { "Bye": function(){ alert("再见!"); } } annyang.addCommands(commands); annyang.addCommands(commands2); annyang.start(); } </script> </html>
我测试用的是Chrome。服务器
当您第一次在浏览器里访问这个网页时,会弹出下面的Chrome对话框,提示您这个应用要使用您电脑上的麦克风。点Allow按钮便可。函数
这个应用有两个地方向您提示它能够接受语音输入。第一处是下图1的红色小圆圈。测试
第二处是一个小的麦克风图标,点击以后,能够设置容许或者禁止麦克风。咱们固然是要选择容许啦,不然如何接受语音输入呢?
若是您的笔记本电脑自己也有麦克风,能够从这个下拉菜单里选择用笔记本自带的麦克风,仍是用外接的麦克风。我用的是后者。
如今能够测试了。
由于代码里我给Hello这个语音绑定的执行函数是一个alert弹出对话框,因此当我对着麦克风说了一句“Hello"以后,个人浏览器当即弹出了这个对话框。
一样,说了"Bye"后,会弹出“再见”。我在响应“Bye”这个语音的函数设置了一个断点,你们经过调用栈也能够观察到annyang的处理逻辑。
从annyang的github上能看出,中文也在支持的语音之列,因此你们放心大胆地使用吧!
https://github.com/TalAter/annyang/blob/master/docs/FAQ.md
连粤语都支持,厉害了!
更多细节,请查阅annyang的官网。
https://www.talater.com/annyang/
要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码: