如何在 python 的 pyttsx3 模块中更改声音
How to change voices in pyttsx3 modlue of python
我在我的一个 python 项目中使用 pyttsx3 模块进行文本到语音转换,但我无法为语音选择 male/female 选项。我阅读了 https://pypi.org/project/pyttsx3/ 上给出的文档,其中说使用 voices[0].id/voices[1].id 分别表示男声和女声。但是,这似乎不起作用,因为 2 种声音之间没有显着差异。
我的代码:
import pyttsx3
engine = pyttsx3.init()
voices = engine.getProperty('voices')
engine.setProperty('voice', voices[0].id)
engine.say("Hello World!")
engine.runAndWait()
知道如何改变声音吗?还有没有办法改变文本到语音的语言...类似于自动翻译的东西?
要将声音更改为女性或男性,请使用
import pyttsx3 as p
engine = p.init()
voice = engine.getProperty('voice')
#for female
engine.setProperty(voice, "!v/f1")
#for male
engine.setProperty(voice, "!v/m1")
engine.runAndWait()
voices = engine.getProperty('voices') #getting details of current voice
#engine.setProperty('voice', voices[0].id) #changing index, changes voices. o for male
engine.setProperty('voice', voices[1].id) #changing index, changes voices. 1 for female
这对我有用。
我在我的一个 python 项目中使用 pyttsx3 模块进行文本到语音转换,但我无法为语音选择 male/female 选项。我阅读了 https://pypi.org/project/pyttsx3/ 上给出的文档,其中说使用 voices[0].id/voices[1].id 分别表示男声和女声。但是,这似乎不起作用,因为 2 种声音之间没有显着差异。
我的代码:
import pyttsx3
engine = pyttsx3.init()
voices = engine.getProperty('voices')
engine.setProperty('voice', voices[0].id)
engine.say("Hello World!")
engine.runAndWait()
知道如何改变声音吗?还有没有办法改变文本到语音的语言...类似于自动翻译的东西?
要将声音更改为女性或男性,请使用
import pyttsx3 as p
engine = p.init()
voice = engine.getProperty('voice')
#for female
engine.setProperty(voice, "!v/f1")
#for male
engine.setProperty(voice, "!v/m1")
engine.runAndWait()
voices = engine.getProperty('voices') #getting details of current voice
#engine.setProperty('voice', voices[0].id) #changing index, changes voices. o for male
engine.setProperty('voice', voices[1].id) #changing index, changes voices. 1 for female
这对我有用。