【问题标题】:python 2.5.4 with pyTTS 3.0 -- ValueError: "SAPI" not supportedpython 2.5.4 和 pyTTS 3.0 -- ValueError: "SAPI" not supported
【发布时间】:2012-09-13 14:07:14
【问题描述】:

我一直在 Windows 7 上使用 python 2.5.4 和 pyTTS 3.0,使用 MS Speech SDK 5.1。一年多来一直运行良好。然而,昨天,两件事几乎同时发生。 MS 做了其中一项更新,导致我的系统在我不注意时重新启动。我几乎同时用完了磁盘空间。清理一些空间后,pyTTS 不再工作。我收到“SAPI”不支持的错误消息。在命令提示符下,我执行以下操作:

>python
Python 2.5.4 (r254:67916, Dec 23 2008, 16:10:54) [MSC v.1310 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import pyTTS
>>> x = pyTTS.Create()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Program Files (x86)\Python25\Lib\site-packages\pyTTS\__init__.py", line 28, in Create
    raise ValueError('"%s" not supported' % api)
ValueError: "SAPI" not supported

我已重新安装: 蟒蛇2.5.4, python windows扩展w32com, pyTTS 3.0, 微软语音 SDK 5.1, 微软英语-TTS-51。 在每个这些之后我都重新启动了。 但它仍然不起作用,我仍然收到相同的错误消息。

非常感谢任何建议!谢谢。

【问题讨论】:

  • 您可能会花费大量时间跟踪并试图找出问题所在。或者你可以卸载并重新安装 SDK 包,如果这不能解决问题,python 本身。
  • 我澄清了重新安装的内容。见发帖。

标签: python sapi


【解决方案1】:

python pyTTS 模块仅使用 Microsoft SAPI COM 对象,如果这些对象不再注册,则模块将以您看到的方式失败。

重新安装Microsoft Speech SDK 应该为你解决这个问题。

【讨论】:

    【解决方案2】:

    感谢贡献者的建议。但这是有效的。 pyTTS 导入 win32com。 win32com 在 Pythonxx/Lib/site-packages/win32com/gen_py/dicts.dat 下的文件中保留一个缓存。不知何故,该文件 dicts.dat 已损坏。不知何故,在重新安装 win32com 时,该文件并没有被吹走。可能是因为在安装过程中,它被运行在后台某处的 python 抓取了。我没有停下来进一步调查。无论如何,当正确删除并重新安装 win32com 时,pyTTS 恢复工作。 --

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-09-30
      • 1970-01-01
      • 2015-12-13
      • 1970-01-01
      • 2018-02-10
      • 1970-01-01
      相关资源
      最近更新 更多