这个问题来自OS X Yosemite (10.10) API for continuous speech recognition
OSX现在具有出色的连续语音识别功能。但它似乎没有公开任何API。我正在构建自定义HCI工具包,我需要捕获这个语音输入才能处理它。
如何拦截?
我的第一个想法是,它可能会创建一些虚拟键盘设备,通过它发送按键/按键事件。如果是这种情况我可以使用IOKit拦截,但枚举我的键盘设备它不会出现。所以它必须是更高层次的东西。
请注意我正在添加'黑客'标签,因为它似乎没有现成的路径 - 这显然是苹果公司无意提供的。
编辑:
How to use DictationServices.framework
Can I use OS X 10.8's speech recognition/dictation without a GUI?
答案 0 :(得分:2)
可悲的是,NSSpeechRecognizer
只侦听一系列命令(我提到这一点,因为你在链接的问题中提到了它)。我已经看了几种不同的方式来捕捉输入,但他们都是非常贫穷的。
拦截"拦截"最受欢迎的方式语音是触发听写命令( fn + fn ,除非用户已经改变它)并在文本字段中输入口述文本。不完全优雅,特别是对于HCI套件。
如果您感觉活泼,可以查看私有框架DictationServices
,但所有标准警告都适用:App Store拒绝,"这里是龙,&#34 ;等