jum*_*533 15 python text-to-speech python-2.7
我正在尝试创建一个人工智能程序(没什么大不了或特别的)我希望它有一个声音(谁不会?).我已经研究过espeak,festival,gTTS,它们很好用,而且不够现实,让我真的很自豪,如果这样做有意义的话.我一直在寻找更现实的东西.像这样
from gtts import gTTS
tts = gTTS(text='what to say', lang='en')
tts.save('/path/to/file.mp3')
gTTS工作正常.我喜欢它.这是现实的,但它需要互联网..问题是,我希望我的应用程序尽可能独立.我恨这取决于互联网接入.
还有其他选择吗?
PS:我目前正在运行Linux,因此您的操作系统可能有不同的解决方案.
Ism*_*sma 13
根据文档,尝试使用pyttsx3 2.5 :
gTTS在python3中完美运行,但它需要互联网连接才能工作,因为它依靠谷歌来获取音频数据.但是Pyttsx完全脱机并且工作似乎很有并且有多个tts引擎支持.
适用于Python 2和3
要安装它:
pip install pyttsx3
使用它应该很简单:
import pyttsx3;
engine = pyttsx3.init();
engine.say("I will speak this text");
engine.runAndWait() ;
编辑1 - 更改语音
要获得较少的机器人声音,您可以尝试更改声音,如下所示:
engine.setProperty('voice', voice.id)
获得可用的声音
voices = engine.getProperty('voices')
您可以尝试不同的可用声音,如此问题中所述:使用python中的PYTTSX模块更改声音.
编辑2 - 选择语音引擎
该库支持以下引擎:
如果espeak不是很自然,你可以试试sapi5,如果你在Windows或nsss,如果你在Mac OS X上.
您可以在init方法中指定引擎,例如:
pyttsx3.init(driverName='sapi5') 
更多信息:http://pyttsx3.readthedocs.io/en/latest/engine.html
| 归档时间: | 
 | 
| 查看次数: | 19077 次 | 
| 最近记录: |