【详细】用Python的pyttsx3、pygame和PySimpleGUI库实现文字转语音工具(无需网络接口)

目录

前言

一、pyttsx3是什么

二、安装pyttsx3

三、查看语音包

四、添加语音包

1, 下载语音包

2, 安装语音包

五、功能实现和资源下载

1、下载所需要的库

2、运行时界面

3、资源下载


前言

欣望江山千里秀,欢颂祖国万年春。临近国庆节,首先祝福你,国庆节快乐!每次小编在网上找资料的时候,都少不了看“长篇大论”的文章,而且字体一般不是很大,既费眼睛又费时间,所有想找一些文字转语音的软件,好的软件有数不胜数,但直到看见了pyttsx3(下面有解释)这个库,发自内心觉得Python真的非常强大,不调用其他的网络接口,就可以实现文字转语音功能,作为一个Python的学习者,怎能失去这个好机会呢? 


一、pyttsx3是什么

pyttsx3是Python中的文本到语音的转换库,该软件包适用于 Windows、Mac 和 Linux。它在可用时使用本机语音驱动程序,并且完全脱机工作。

官方文档:Using pyttsx3 — pyttsx3 2.6 documentation或者pyttsx3 · PyPI

基本使用方法(先安装库):

import pyttsx3

"""语言播放Hello World"""
engine = pyttsx3.init()
engine.say("Hello World!")
engine.runAndWait()


二、安装pyttsx3

安装命令如下:

pip install pyttsx3==2.90

如果下载过慢或超时报错可以用pip install pyttsx3==2.90 -i https://pypi.douban.com/simple/至于为什么会超时报错或下载过慢,感兴趣的小伙伴们可以参考以下文章:解决pip下载速度过慢及超时报错的方法适于多种操作系统(详细)_import _this的博客-CSDN博客作为一个优秀的Python程序员来说,一定少不了跟pip打交道,用过pip下载库的小伙伴一定知道它的下载速度已经不能用慢来形容了,主要因为是pip默认使用的是国外的源,所以下载速度会慢,当然这个也和部分地区网络还有pip官方镜像源服务器的心情有关,最直接的解决方法就是替换成国内的下载源。https://blog.csdn.net/python_sy/article/details/126710868


三、查看语音包

pyttsx3可以查看电脑中的所有语音包,输入以下代码查看语音包。

import pyttsx3

count = 0
engine = pyttsx3.init()
voices = engine.getProperty('voices')

for voice in voices:
    count += 1
    print("语音包%s:" % count)
    print(" - ID: %s" % voice.id)
    print(" - 姓名: %s" % voice.name)
    print(" - 语言: %s" % voice.languages)
    print(" - 性别: %s" % voice.gender)
    print(" - 年龄: %s\n" % voice.age)

print("共有%s种语音包" % count)


四、添加语音包

一般Windows操作系统自带两种语音包,如果觉得不够用,可以下载语音包。

1, 下载语音包

微软语音包下载地址:

https://www.microsoft.com/en-us/download/details.aspx?id=27224

可以选择中文相关语音包的下载

MSSpeech_SR_zh-CN_TELE.msi
MSSpeech_SR_zh-TW_TELE.msi
MSSpeech_SR_zh-HK_TELE.msi
MSSpeech_TTS_zh-CN_HuiHui.msi
MSSpeech_TTS_zh-TW_HanHan.msi
MSSpeech_TTS_zh-HK_HunYee.msi

根据提示,需要先安装运行环境。
如果是软件开放,还需要安装SDK

涉及的术语:
TTS(Text To Sound)是文本转语音
SR(Speech Recognition)是语音识别

注意:这里我们主要下载的是TTS:

MSSpeech_TTS_zh-CN_HuiHui.msi(普通话)
MSSpeech_TTS_zh-TW_HanHan.msi(台湾)
MSSpeech_TTS_zh-HK_HunYee.msi(香港)

如果觉得微软语音包下载过程有些麻烦的小伙伴,可以直接使用我下载好的MSSpeech_TTS_zh-TW_HanHan.msi语音包和运行环境(注:这个是台湾语音包,因为小编电脑中默认是HuiHui语音包,但MSSpeech_TTS_zh-CN_HuiHui.msi语音包也在链接里

链接:https://wwp.lanzoub.com/b02vkiefg
提取码:90u1

2, 安装语音包

注:以我链接里发的HanHan语音包作为示范,其他的可以以此类推。

1、先安装SpeechPlatformRuntime.msi(双击安装即可),安装完成之后重启电脑

2、重启电脑后再安装MSSpeech_TTS_zh-TW_HanHan.msi(双击安装即可)

3、Win键+R键,在弹出的窗口中输入regedit,在弹出的注册表编辑器中依次打开路径HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech Server\v11.0\Voices\Tokens路径下可看到新安装的语音包(HanHan):

4、右键HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech Server\v11.0\Voices,将其导出成.reg文件,使用文本编辑器或其他文本编辑软件打开刚刚保存的.reg文件,将里面的\Speech Server\v11.0全部替换成\Speech并保存。

5、双击修改后的.reg文件。(如果弹出警告窗口,不用担心,点击即可)

6、再次打开注册表编辑器在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech\Voices\Tokens路径下就可看到新安装的语音包以及电脑默认的语音包了:


五、功能实现和资源下载

1、下载所需要的库

pip install pyttsx3==2.90

pip install pygame==2.1.2
pip install PySimpleGUI==4.60.3

如果下载过慢或超时报错可以用pip install pyttsx3==2.90 -i https://pypi.douban.com/simple/至于为什么会超时报错或下载过慢,感兴趣的小伙伴们可以参考以下文章(下载过pyttsx3可以不用下载):

解决pip下载速度过慢及超时报错的方法适于多种操作系统(详细)_import _this的博客-CSDN博客作为一个优秀的Python程序员来说,一定少不了跟pip打交道,用过pip下载库的小伙伴一定知道它的下载速度已经不能用慢来形容了,主要因为是pip默认使用的是国外的源,所以下载速度会慢,当然这个也和部分地区网络还有pip官方镜像源服务器的心情有关,最直接的解决方法就是替换成国内的下载源。https://blog.csdn.net/python_sy/article/details/126710868

2、运行时界面

可以中英文切换(这个功能纯属装b可以让界面更完美)

  

3、资源下载

源码和exe可执行文件我都打包好了,喜欢的点个关注吧或者点一个小小的赞也可以。

下载链接:https://wwp.lanzoub.com/b02vko1yd
密码:92lg

猜你喜欢

转载自blog.csdn.net/python_sy/article/details/126809608