python:更改pyttsx缩写

问题描述 投票:0回答:2

我一直在尝试设置我的pyttsx。到目前为止,我已经达到阅读句子的目的。我想知道如何更改缩写,例如

import pyttsx
engine = pyttsx.init()
rate = engine.getProperty('rate')
engine.setProperty('rate', rate -12)
engine.say('INC0055 16/11/13 13:59 RESPOND GRASS FIRE, ALARM LEVEL: 3)
engine.runAndWait()

如您所见,INC代表事件编号,但是python将其读取为包含。我该如何更改?

欢呼声

Shane

P.s更改INC表示事件是不可选项

python text-to-speech
2个回答
0
投票

eSpeak在Linux中默认使用。在Windows上-Microsoft SAPI5。对不起,SAPI并不幸运,但是对于eSpeak来说,您可以很容易地添加单词的显式发音(虽然缩写不大,但是应该有用)。

您所需要的只是语言词典文件的来源(英语为en_list)。您可以从here的eSpeak来源获得它。我拿了espeak-1.47.11-source.zip

然后我去了espeak-1.47.11-source/dictsource目录,打开en_list并输入了一行(就在之前:]

inc Insi:dEnt

然后我用编译字典(它将en_dict放在/usr/lib/x86_64-linux-gnu/espeak-data/en_dict中]

$ sudo espeak --compile English

请注意,单词prolanciation后面是here for the detail。就这样。现在我的笔记本讲的是incident而不是inc。此外,它从未告诉我include代替了[[inc。

© www.soinside.com 2019 - 2024. All rights reserved.