在Mac OS X中使用语音替代Python的'raw_input
我正在制作一个基于Python的个人助手/问答工具,理想情况下,它能和“Mac上的Siri”相媲美。不过现在,它还需要你在一个无限循环的输入框里不停地输入文字,然后每次处理这些文字。但如果想让这个工具对人们有用,它就不能只是在终端窗口里的一个.py文件。目前,我在考虑用Platypus把它做成一个简单的.app应用。不过,由于Platypus的窗口应用样式没有文本输入功能,我打算不做图形界面,而是完全通过语音来输入和输出。输出方面比较简单,我可以把所有的'print'语句换成“macspeech”里的'speakString'。但输入就比较棘手了。我只找到了一些可以在Windows上输入语音的库(pyspeech正是我需要的,但它是基于Windows的)。有没有人知道类似pyspeech的库可以在Mac或通用平台上使用?
1 个回答
2
我建议你看看CMU的Sphinx4.0。
可惜的是,它是用Java写的。我觉得它的识别效果比我电脑里自带的要好。我现在正在学习Java和Python,所以在让这两者沟通时遇到了一些困难。
你可以通过Appkit.NSSpeechRecognizer
来和Mac的语音引擎进行交互:
from Foundation import *
最后一种方法是使用谷歌的语音搜索。不过这需要把语音片段发送到“云端”。
这种方法最准确,但回复可能需要长达10秒钟!