在 Python 中使用 win32com.client 文本到语音/语音识别

Posted

技术标签:

【中文标题】在 Python 中使用 win32com.client 文本到语音/语音识别【英文标题】:Usage of win32com.client text to speech/speech recognition in Python 【发布时间】:2012-08-20 01:05:38 【问题描述】:

所以我将文本转为语音部分,例如:

from win32com.client import constants
import win32com.client
import pythoncom
speaker = win32com.client.Dispatch("SAPI.SpVoice")
speaker.Speak("message")

但我不知道该怎么做是使用上述系统进行语音识别(如果这甚至有语音识别)。更具体地说,文本系统的口头替代

variable = string(input("Question")).

我需要使用它来构建一个系统,该系统将解析我的语音,然后使用当前关键字来调用不同的函数。确实,我需要这样的语音识别功能:

WORD_LIST_ONE = ('term', 'term'...)
variable = string(input("Question?"))
if variable in WORD_LIST_ONE:
    function()

所以基本上,我用什么来解析用户语音? 另外,如果这个系统不包括语音识别,请指点我。

谢谢

【问题讨论】:

【参考方案1】:

看看https://***.com/a/6351055/90236。你没有说你运行的是什么操作系统,但 Windows 7 和 Vista 都带有完整的语音识别引擎。对于 Microsoft 的 Windows 服务器,您可以下载免费的服务器语音引擎,请参阅http://www.microsoft.com/en-us/download/details.aspx?id=27226。

还有一个 Python 模块,我看到人们提到它可能会对您有所帮助。见http://code.google.com/p/pyspeech/

如果您使用的是 SAPI API,您正在访问 Microsoft 语音的 C++/COM 接口。见http://msdn.microsoft.com/en-us/library/ms723627(v=vs.85).aspx。

如果您可以访问 .NET 接口 (System.Speech),您会发现会更容易。见http://msdn.microsoft.com/en-us/library/hh361625和http://msdn.microsoft.com/en-us/magazine/cc163663.aspx

【讨论】:

我会问如何让 pyspeech 工作,但我不会有两个原因: 1. 我认为我们不应该在 cmets 中提出新问题。 2. 我有一个关于该主题的现有问题。此外,你会得到正确的答案。

以上是关于在 Python 中使用 win32com.client 文本到语音/语音识别的主要内容,如果未能解决你的问题,请参考以下文章

使用 Python 的 Autodesk Inventor API

python win32gui模块下载

在 Python 中通过 win32com 使用 COM 对象

带有win32con的Python滚轮鼠标

python可以直接调用win32的api吗

如果某个任务正在任务管理器中运行,我如何在 python 中使用 pywin 或 win32com.client 检查?