我下载了pyttsx,它似乎工作得很好,只是声音列表只有一个声音(微软安娜)。我希望能够将其改为男性声音,但我没有尝试或研究工作!这是我目前的测试代码:
import pyttsx
engine = pyttsx.init()
engine.setProperty('rate', 100)
voices = engine.getProperty('voices')
for voice in voices:
print "Using voice:", repr(voice.name)
engine.setProperty('voice', voice.id)
engine.setProperty('gender', 'male') #this doesn't raise an error, but also won't do anything
engine.say("Hi there, how's you ?")
engine.say("A B C D E F G H I J K L M")
engine.say("N O P Q R S T U V W X Y Z")
engine.say("0 1 2 3 4 5 6 7 8 9")
engine.say("Sunday Monday Tuesday Wednesday Thursday Friday Saturday")
engine.say("Violet Indigo Blue Green Yellow Orange Red")
engine.say("Apple Banana Cherry Date Guava")
engine.runAndWait()
这只运行一个循环。如果我说print(声音),它会打印一个只包含一个项目的列表。有什么建议吗?
答案 0 :(得分:0)
既然你说你正在使用MS Anna,我假设你在Windows 7上。MS Speech Platform是唯一一个我知道你可以为你提供额外“声音”的人。
那里有许多商业广告,但当然,大多数你需要付费,有些还免费试用。
PYTTSX没有额外的声音它只提供了访问你所拥有的工具。
答案 1 :(得分:0)
声音存储在可以打印的列表中。打印声音以获取系统上的所有声音。
engine = pyttsx3.init()
voices = engine.getProperty("voices")
engine.setProperty("voice", voices[1].id)