随着互联网应用的发展,网络浏览器已经成为头等应用程序。鼠标和键盘设备完全满足信息获取类应用的人机交互需求,但对于人机语音交互的应用需求,浏览器行业尚无标准的语音接入方案来支持。本文对现有的浏览器语音接入方案做了综述,然后介绍了苏州思必驰信息科技有限公司采用的无插件的跨浏览器语音接入方案,并且分析了该方案的应用特点。最后,本文还探讨了基于浏览器的语音接入方案的技术发展方向。谨以本文分享苏州思必驰多年在语音技术应用领域的研发心得,抛砖引玉。
二、现有浏览器语音接入方案综述
鼠标和键盘设备完全满足基于网络浏览器的信息获取类应用的人机交互需求,但由于网络浏览器已经成为头等应用程序,人机语音交互的应用也纷纷在浏览器上做了实现。
典型的语音应用流程包括如下步骤:应用采集用户的语音,将语音数据送给语音分析模块(例如语音识别、发音评估或者声纹识别等),将语音分析模块的输出(例如语音识别得到的文本、发音评估得到的评分或者声纹识别得到的用户标志)反馈给用户。
将人机交互的语音应用在浏览器上实现的关键技术是基于浏览器完成用户音频的采集。出于安全考虑,网页应用不允许通过浏览器直接访问终端的硬件资源,包括声卡设备。所以,基于浏览器的语音交互方案大都围绕着浏览器插件做文章。常见的技术选型包括:
·基于IE浏览器的ActiveX插件;
·基于NP插件架构的插件,支持Firefox等浏览器;
·基于Java Applet开发应用;
·基于Flash Player开发应用;
·基于Silverlight开发应用。
·除了插件系列,Google Chrome浏览器将语音输入功能作为了浏览器内置的功能。但该功能尚仅限于Google Chrome浏览器。
三、无插件的跨浏览器语音接入方案
浏览器之争不见消停而愈演愈烈,让终端用户使用其熟悉的浏览器无缝地来访问网络语音应用,是基于浏览器的语音接入方案设计的关注点之一。
自行开发的浏览器插件,需要用户安装许可。如果用户有安全考虑,或者有类似360这样对浏览器插件管理苛刻的桌面程序,插件能否成功部署到用户的终端都是一个问题。
Java Applet是过时技术,且需要购买安全授权,应用部署成本高。
Silverlight提供了类似Flash Player的音频采集功能。但相比Adobe对Flash Player平台的持续关注和投入,Microsoft对Silverlight抱有非常暧昧的态度。何况,Silverlight在浏览器的占有率远远不如Flash Player。
Flash Player几乎安装在了每个用户的浏览器上,基于Flash Player开发的语音接入方案,无需用户安装,仅需要用户许可访问本地麦克风硬件,流程友好,便于迅速启动语音接入功能。基于Flash Player开发的语音接入方案,得益于Flash Player的普及和标准化,可以称得上是无插件的跨浏览器语音接入方案。AIChinese,midomi,Arivoc(demo),EnglishCentral,以及曾经昙花一现的百度哼唱识别,都是采用Flash Player实现语音接入,并且在云端提供语音分析技术服务。
四、苏州思必驰的无插件的跨浏览器语音接入方案的特点
从面上看,技术方案就是know-how,但各自所下的功夫不同,方案所实现的效果也有所差别。
2009年,思必驰选择了基于Flash Player平台的无插件跨浏览器语音接入方案。当时利用ActionScript的NetStream类和Microphone类的相关函数,配合Adobe Flash Media Server的一个试用版,走通了技术方案。随后,思必驰在如下方面对该方案进行了深入的研发:
前台语音接入功能和使用流程的标准化和组件化
思必驰深度封装了Flash Player的核心录音采集功能、语音应用流程、以及与服务器的交互流程,并且定义了详尽的应用和系统状态。思必驰提供ActionScript SDK和JavaScript SDK、语音面板组件、开发案例和详细的开发文档,将开发语音应用的难度降到最低。
服务器接入层设计
从应用的终端考虑,不仅仅有跨浏览器的语音接入需求,而且有跨平台、跨网络协议、跨编码甚至跨物理网络的多种终端接入需求。思必驰专注于核心语音技术,同样致力于将优秀的语音技术提供给多种类型的应用。因此,思必驰在服务器端设计了接入层。该层作为一个配适器,支持多种方式的语音接入。基于Flash Player平台的语音接入方案,其语音源来自Internet,采用RTMP协议,采用Nelly Moser或者SpeeX编码。思必驰参考了开源项目Red5,开发出轻量级RTMP接入接口,支持流解码,并且在硬盘I/O等资源使用上做了充分的优化。RTMP客户端和服务器在一个RTMP连接上做语音数据和参数的传递,以及结果返回,采用AMF3序列化数据。接入层基于TCP第四层做负载均衡,此策略支持高度的横向扩展。
基于如上的技术演变,历时两年,思必驰将无插件的跨浏览器语音接入方案扩展为“声动之芯”(AISpeech API)——语音技术云计算平台——的一部分。(今后将专门撰文对该平台的架构设计以及应用方向做介绍。)
五、基于浏览器的语音接入方案的技术发展方向
经过AIChinese商用以及为多家行业客户提供技术授权和解决方案,思必驰对基于浏览器的语音接入方案有一些自己的心得和设想。
近年来,基于浏览器的语音技术应用,逐渐丰富起来,但仍属群雄逐鹿,缺乏规范。虽然思必驰是做核心技术的,但其应用仍需要看平台的“脸色”。思必驰尚无领导行业的能力,仍需要关注行业规范的发展。像目前这样闭门造车,不利于平台、技术和应用的普及。
W3C的HTML Speech Incubator Group是基于浏览器的语音接入方案的行业组织,其规范尚在酝酿中,值得关注。传统语音应用领域已经实现的行业规范和标准以及方案值得深入研究和融合,包括VoiceXML、MRCP、VoIP、P2P等。
本地服务方案应该作为云平台的补充深入研究。本地服务方案不同于插件方案,独立于浏览器,仅涉及跨 *** 作系统的兼容性设计。从架构上讲,可以将本地服务视为云平台的一个完整的节点。本地服务方案和云平台的协助工作、负载分流以及部署和升级策略等,是思必驰的研究重点之一。
声动之芯 API简介
“声动之芯”是思必驰倾力打造的基于云计算的智能语音交互技术服务,将复杂的语音技术压缩为简易的接口。语言教学领域的出版社、教育软件公司、外语培训机构等,无需专业语音知识,只需20分钟,就可调用这些接口或应用成熟模板,在互联网、局域网或客户终端上实现教学“声动”化,让教辅产品摇身一变,价值倍增。电脑怎么设置防窥屏取消首页编程手机软件硬件安卓苹果手游教程平面服务器主页 > 电脑基础 > 电脑常识 >为了防老板窥屏 小编总结一些防窥屏套路2017-01-03 11:15:20 脚本之家几乎所有人都在上班时间做过和工作无关的事,当然,没人想被自己的老板看见。编辑本人不仅有过这样的经历,还总结出了一些“防窥屏套路”。1、入门级:快捷键Windows XP 时代,脚本之家编辑那时还在上学,为了装13于是学会了各种各样的快捷键 *** 作,其中有几组快捷键颇为受用,每当父母进来房间,我都能轻松的隐藏掉不愿让他们看到的游戏画面,WinKey D : 所有窗口最小化并回到桌面。ALT TAB : 快速切换窗口界面到“正经状态”不过有时这种做法也会让父母产生一些疑惑:2、基础级:老板键快捷键有一个弊端,即使回到桌面或者是把程序最小化,底部栏或者任务栏依然留有图标,而且还不能自动关闭程序正在播放的声音,于是我找到了一种新的方式:老板键。所谓 "老板键",并非是给老板使用的,而是用来防老板的键,所以更恰当的叫法应该是“员工键",或者“熊孩子键”。当老板或父母出现的时候,只要轻松的按下事先设定好的快捷键,就能瞬间隐藏掉所有不想要老板/父母/妻子看到的窗口 (包括任务栏中指定程序的图标或全部图标,同时还能关闭系统音量,关闭系统音量后音量图标不改变) ,等危险过后再按一次快捷键即可恢复被隐藏的窗口。2、进阶级:虚拟桌面只可惜,并不是每个软件都会有老板键的设置,于是我们需要一种通用的方式:虚拟桌面。通过虚拟桌面程序,我们可以创建若干个同时工作的桌面,只要将其中一个桌面设置成工作状态,就可以通过快捷键快速从娱乐状态的桌面切换到工作状态的桌面。然而无论是虚拟桌面还是老板键,都有一个共同的致命弱点:需要提前察觉对方的到来,然后手动进行 *** 作,如果不能提前发现对方,那么在按下快捷键隐藏桌面之前也许就已被发现。但是这并不会将真正的技术宅难倒。3、暴走级:自动捕捉人脸最近,一位将 Keras 的日本工程师通过人脸识别技术研发了一款“防老板窥屏”软件,一旦老板朝自己走来,只要进入自己几米之外的范围,程序就会自动触发,瞬间最小化桌面或者进入到特定的工作桌面。取消首页编程手机软件硬件安卓苹果手游教程平面服务器主页 > 电脑基础 > 电脑常识 >为了防老板窥屏 小编总结一些防窥屏套路2017-01-03 11:15:20 脚本之家几乎所有人都在上班时间做过和工作无关的事,当然,没人想被自己的老板看见。编辑本人不仅有过这样的经历,还总结出了一些“防窥屏套路”。1、入门级:快捷键Windows XP 时代,脚本之家编辑那时还在上学,为了装13于是学会了各种各样的快捷键 *** 作,其中有几组快捷键颇为受用,每当父母进来房间,我都能轻松的隐藏掉不愿让他们看到的游戏画面,WinKey D : 所有窗口最小化并回到桌面。ALT TAB : 快速切换窗口界面到“正经状态”不过有时这种做法也会让父母产生一些疑惑:2、基础级:老板键快捷键有一个弊端,即使回到桌面或者是把程序最小化,底部栏或者任务栏依然留有图标,而且还不能自动关闭程序正在播放的声音,于是我找到了一种新的方式:老板键。所谓 "老板键",并非是给老板使用的,而是用来防老板的键,所以更恰当的叫法应该是“员工键",或者“熊孩子键”。当老板或父母出现的时候,只要轻松的按下事先设定好的快捷键,就能瞬间隐藏掉所有不想要老板/父母/妻子看到的窗口 (包括任务栏中指定程序的图标或全部图标,同时还能关闭系统音量,关闭系统音量后音量图标不改变) ,等危险过后再按一次快捷键即可恢复被隐藏的窗口。2、进阶级:虚拟桌面只可惜,并不是每个软件都会有老板键的设置,于是我们需要一种通用的方式:虚拟桌面。通过虚拟桌面程序,我们可以创建若干个同时工作的桌面,只要将其中一个桌面设置成工作状态,就可以通过快捷键快速从娱乐状态的桌面切换到工作状态的桌面。然而无论是虚拟桌面还是老板键,都有一个共同的致命弱点:需要提前察觉对方的到来,然后手动进行 *** 作,如果不能提前发现对方,那么在按下快捷键隐藏桌面之前也许就已被发现。但是这并不会将真正的技术宅难倒。3、暴走级:自动捕捉人脸最近,一位将 Keras 的日本工程师通过人脸识别技术研发了一款“防老板窥屏”软件,一旦老板朝自己走来,只要进入自己几米之外的范围,程序就会自动触发,瞬间最小化桌面或者进入到特定的工作桌面。软件的基本原理是这样的:工程师首先对老板的位置和自己的位置进行了分析,从而确定了老板过来“窥屏”的必经路线。然后,在这条路线上布置了一个摄像头,结合人脸识别技术自动识别摄像头捕获的人脸图像,一旦在图像中发现了老板的脸,程序就会自动触发它的工作机制,快速将使用者的电脑屏幕变成“正经状态”。且不说这套系统有没有实际效果,防老板能防到这种境界已算是“难得可贵”,不过 Keras 自己承认,由于这套系统是基于图像识别的工作原理,如果老板戴了口罩或者镜头范围内人数太多,则识别准确率会有所下降。不过在脚本之家编辑看来,如果这位工程师依然能坚持信念来开发这套系统,未来还可以加入声纹识别来捕获老板说话的声音,以及步态识别来识别老板走路的步态……技术并不是问题,真正的问题是,如今 Keras 这项制作已经被自己的老板得知,恐怕很难被允许继续研发下去。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)