如何改变pyttsx3中的声音?

新手上路,请多包涵

此代码有效,但我只能在 Microsoft Windows 中预安装的声音之间切换。这些声音是“Microsoft David Mobile”和“Microsoft Zira Mobile”。

后来我安装了“Microsoft Kalpana Mobile”并将其设置为默认的 Windows 语音。但我仍然无法切换到“Microsoft Kalpana Mobile”。代码是-

 import pyttsx3
engine = pyttsx3.init()
voices = engine.getProperty('voices')
engine.setProperty('voice', voices[0].id) #changing index changes voices but ony 0 and 1 are working here
engine.say('Hello World')
engine.runAndWait()

只有 0 和 1 在 voices[] 中用作索引。

我想让“Microsoft Kalpana Mobile”说话。过去 2 个月我一直在从事这个项目。如果这不起作用,我所有的努力都会付之东流。请帮忙:(

提前致谢。

原文由 its_neetesh 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.7k
1 个回答

你可以试试这段代码:

 import pyttsx3
engine = pyttsx3.init()
voices = engine.getProperty('voices')
for voice in voices:
    print(voice, voice.id)
    engine.setProperty('voice', voice.id)
    engine.say("Hello World!")
    engine.runAndWait()
    engine.stop()

然后代替 for 循环,只需选择您喜欢的 voice.id

原文由 Shlomi Ben-David 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题