python实现朗读内容

项目描述

pyttsx3 是 Python 中的文本到语音转换库。与替代库不同,它可以脱机工作,并且与Python 2和3兼容。

pyttsx3 的官网pyttsx3 ·皮皮 (pypi.org)https://pypi.org/project/pyttsx3/#files

安装

pip install pyttsx3

推荐使用国内源下载:

pip install pyttsx3 -i https://pypi.tuna.tsinghua.edu.cn/simple

如果收到诸如“无名为 win32com.client 的模块”、“无名为 win32 的模块”或“无名为 win32api 的模块”等错误,则需要另外安装 pypiwin32。

如何在安装出现错误请参考:

 Python的pyttsx3安装失败的解决方案_阿龙的代码在报错的博客-CSDN博客https://blog.csdn.net/yujinlong2002/article/details/126249398?spm=1001.2014.3001.5502用法:

#引入模块
import pyttsx3
# 初始化语音引擎
teacher = pyttsx3.init()
#设定朗读内容
msg = 'hello Word'
#合成并播放语音
teacher.say(msg)
# 等待语音播放完
teacher.runAndWait()

更改语音、速率和音量:

import pyttsx3
engine = pyttsx3.init() #对象创建

""" RATE"""
rate = engine.getProperty('rate')   # # 获取当前语速的详细信息
print (rate)                        #打印当前语音速率
engine.setProperty('rate', 125)     # 设置新的语音速率


"""VOLUME"""
volume = engine.getProperty('volume')   #了解当前音量水平(最小值 = 0 和最大值 = 1)
print (volume)                          #打印当前卷级别
engine.setProperty('volume',1.0)    # 将音量级别设置为 0 和 1 之间

"""VOICE"""
voices = engine.getProperty('voices')       #获取当前语音的详细信息
#engine.setProperty('voice', voices[0].id)  #改变索引,改变声音。o 为男性
engine.setProperty('voice', voices[1].id)   #改变索引,改变声音。1 为女性

engine.say("Hello World!")
engine.say('My current speaking rate is ' + str(rate))
engine.runAndWait()
engine.stop()

"""将语音保存到文件"""
# 在 linux 上,确保安装了 “espeak” 和 'ffmpeg'
engine.save_to_file('Hello World', 'test.mp3')
engine.runAndWait()

本人笔记希望对你有帮助

 
  

你可能感兴趣的:(python,开发语言)