我在 python 中使用 TTS。 (pyttsx 库)。 我在文档中读到我可以获得属性速率、语音、语音、音量。在文档中仅涉及我只能设置速率、语音、音量的属性。这意味着我无法设置“声音”属性?我对声音感兴趣,因为它包含年龄、性别、语言等。 此处的文档:http://pyttsx.readthedocs.io/en/latest/engine.html#pyttsx.voice.Voice
我可以轻松使用速率、语音、音量,例如:
engine = pyttsx.init()
engine.getProperty('rate')
engine.getProperty('volume')
engine.setProperty('rate', 50)
engine.setProperty('volume', 0.25)
engine.say("something")
engine.runAndWait()
问题是。有机会改变说话声音的“性别”、“年龄”或“语言”吗?如果有的话,请给我一个如何做的例子,因为我完全没有想法。
有一个使用voices.id的例子,它实际上是在voices内部,但它并没有帮助我:
engine = pyttsx.init()
voices = engine.getProperty('voices')
for voice in voices:
engine.setProperty('voice', voice.id)
engine.say('The quick brown fox jumped over the lazy dog.')
engine.runAndWait()
抱歉打扰您,谢谢:-)
最佳答案
我在尝试解决完全相同的问题时发现了这个问题。 经过一番尝试,对文档进行了更仔细的检查,我清楚地知道这些属性与系统中已安装的语音相关(在文档中称为"The Voice metadata"),因此您无法修改它们,只能阅读它们是为了提供信息,或出于其他“只读”原因。
关于python - 如何在 PYTTS (Python) 中设置属性 : age, 性别或语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38992819/