问题描述
我在我的一个python项目中使用pyttsx3模块进行文本到语音转换,但是我无法为声音选择男性/女性选项。我阅读了https://pypi.org/project/pyttsx3/上提供的文档,其中说分别对男性和女性语音使用voices [0] .id / voices [1] .id。但是,这似乎不起作用,因为两种声音之间没有显着差异。
我的代码:
import pyttsx3
engine = pyttsx3.init()
voices = engine.getProperty('voices')
engine.setProperty('voice',voices[0].id)
engine.say("Hello World!")
engine.runAndWait()
有什么想法可以改变声音,还有没有办法改变文本到语音的语言……类似于自动翻译?
解决方法
要将声音更改为女性或男性,请使用
//df1
C1 C2 C8 C3
1 a t w
2 b u x
3 c v y
//df2
C3 C4
4 d
5 e
6 f
12 s
//df3
C5 C6 C7
7 i n
8 j o
9 k p
10 l q
11 m r
// merge df1 df2 df3 horizontally
C1 C2 C8 C3 C3 C4 C5 C6 C7
1 a t w 4 d 7 i n
2 b u x 5 e 8 j o
3 c v y 6 f 9 k p
NaN NaN NaN NaN 12 s 10 l q
NaN NaN NaN NaN NaN NaN 11 m r
// merge df1 df2 df3 vertically
C1 C2 C8 C3 C4 C5 C6
1 a t w NaN NaN NaN
2 b u x NaN NaN NaN
3 c v y NaN NaN NaN
NaN NaN NaN 4 d NaN NaN
NaN NaN NaN 5 e NaN NaN
NaN NaN NaN 6 f NaN NaN
NaN NaN NaN 12 s NaN NaN
NaN NaN NaN NaN NaN 7 i
NaN NaN NaN NaN NaN 8 j
NaN NaN NaN NaN NaN 9 k
NaN NaN NaN NaN NaN 10 l
NaN NaN NaN NaN NaN 11 m
,
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
这对我有用。