-
Notifications
You must be signed in to change notification settings - Fork 1
/
VoiceSynthesis.py
30 lines (21 loc) · 936 Bytes
/
VoiceSynthesis.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import pyttsx3
def TextToVoice(answer, speed):
engine = pyttsx3.init()
# 获取发音人
# voices = engine.getProperty('voices')
# for voice in voices:
# print('id = {} \nname = {} \n'.format(voice.id, voice.name))
# id = HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Voices\Tokens\TTS_MS_ZH-CN_HUIHUI_11.0
# name = Microsoft Huihui Desktop - Chinese (Simplified)
# id = HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Voices\Tokens\TTS_MS_EN-US_ZIRA_11.0
# name = Microsoft Zira Desktop - English (United States)
# 设置发音人(注意中英文)
engine.setProperty('voice', 'com.apple.voice.enhanced.en-AU.Lee')
# 改变语速 范围为0-200 默认值为200
engine.setProperty('rate', speed)
# 设置音量 范围为0.0-1.0 默认值为1.0
engine.setProperty('volume', 0.7)
# 预设语音文本
engine.say(answer)
# 朗读
engine.runAndWait()