https://blog.csdn.net/weixin_30336531/article/details/116772714
用的是deepin系统。
1、打开终端,安装文字转语音库,输入pip3 install pyttsx3发现命令无效
那就是没有自带pip这个工具,那就要安装pip工具了,输入以下命令
安装pip工具
sudo apt-get install python3-pip
然后再运行上面语句pip3 install pyttsx3安装文字转语音库。
安装完后就开始写代码了,这里我用vim编辑器。
如果要新目录下写,就新建目录命令是mkdir myfile 。要进入目录就是cd myfile。如果提示权限不够,那就在命令前面加sudo
现在直接在当前目录写代码,
运行 vim saywd.py开始写代码、这个文件名随便起。
进入vim编辑,按i插入代码。如下
import pyttsx3
def saya(words):
engine = pyttsx3.init()
engine.say(words)
engine.runAndWait()
if __name__==’__main__’:
words=input(‘输入要说的中文:’)
saya(words)
写好后按键盘左上的esc然后输入:x保存退出。
运行代码;python3 saywd.py
输入要转语音的中文后发现报错,如下。
看到eng=Engine(driverName,debug)这句是原码要引用语音引擎,里面没有。
看这个库首面介绍:
window 可以依赖sapi5
mac 可以依赖nsss
linux 可以依赖espeak
是因为这个库依赖一些语音引擎。这个报错是缺少linux那个espeak引擎。
安装espeak
sudo apt-get install espeak
安装完再运行一次代码python3 saywd.py,输入要转语音的中文后发现不报错了,但是语音是异常的(好像说的是chinese letter letter…)。
出现这个原因是参数没有指定是中文,再用vim进入代码文件编辑。
代码加入一句,如下
engine.setProperty(‘voice’, ‘zh’)
保存退出,运行,正常说中文。
发表评论