当我只希望接受特定的Dragonfly命令时,是否可以禁用Windows语音识别(WSR)的某些方面?我正在使用内置WSR和Dragonfly用Python编写一个(简单的)语音控制的交互系统。 WSR会在不理解命令时尝试插入随机文本:



如果可能的话,我想以编程方式在Python / Dragonfly中禁用此文本插入和其他不需要的内置功能(即具有默认WSR活动的关键字)。我的语音控制系统的一个最小功能示例如下:

from dragonfly.all import Grammar, CompoundRule
import dragonfly, time, pythoncom

hablador = dragonfly.get_engine()

class TimeRule(CompoundRule):
    spec = "what time is it"
    def _process_recognition(self, node, extras):
        hablador.speak(time.ctime()[11:16])

grammar = Grammar("example grammar")
grammar.add_rule(TimeRule())
grammar.load()

while True:
    pythoncom.PumpWaitingMessages()
    time.sleep(.1)

最佳答案

您可以禁用听写暂存器,但不能从Python内部禁用。从Microsoft help article


  说“显示语音选项”,说“选项”,然后说“启用”
  听写便笺簿。”


为了禁用它,命令是相同的。至于覆盖或禁用内置函数,我认为这是不可能的。

关于python - 使用Dragonfly禁用Windows语音识别,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26444704/

10-17 01:03