linux文字声音转换程序,linux下文字转语音库pyttsx3用法

2022-02-17 13:33:19  阅读 2622 次 评论 0 条

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’)

保存退出,运行,正常说中文。


本文地址:http://jinesc.cn/?id=285
免责声明:本文为原创文章,版权归 jinesc 所有,欢迎分享本文,转载请保留出处!

发表评论


表情

还没有留言,还不快点抢沙发?