首页 > 编程语言 >Python中的pyttsx3库:文本到语音转换的利器

Python中的pyttsx3库:文本到语音转换的利器

时间:2024-05-29 15:59:12浏览次数:43  
标签:engine pyttsx3 Python voices volume 利器 rate 语音

pyttsx3是一个跨平台的文本到语音转换库,它可以在没有安装其他依赖项的情况下在Windows、Linux和macOS上运行。pyttsx3使用系统自带的TTS(文本到语音)引擎,因此可以确保在各种操作系统上都具有较高的稳定性和可用性。

官方文档:https://pyttsx3.readthedocs.io/en/latest/icon-default.png?t=N7T8https://pyttsx3.readthedocs.io/en/latest/

安装

命令行中输入以下命令:

pip install pyttsx3

pyttsx3库的基本用法

import pyttsx3

pyttsx3.speak("How are you?")# 不需要初始化引擎

engine = pyttsx3.init()  # 初始化语音引擎

engine.say("你好,世界!hello,world!")  
engine.runAndWait()
# engine.say()方法接受一个字符串参数,即要朗读的文本。engine.runAndWait()方法则启动朗读过程,并等待朗读完成后才继续执行后续代码。

pyttsx3库的高级用法

rate = engine.getProperty('rate') # 获取语速属性的当前值
print(f'语速:{rate}')
volume = engine.getProperty('volume') # 获取音量属性的当前值
print(f'音量:{volume}')

engine.setProperty('rate', 100)  # 设置语速
engine.setProperty('volume', 0.6)  # 设置音量

# 在某些操作系统上,你可能拥有多个可用的TTS引擎或语音。你可以使用engine.getProperty('voices')方法来获取所有可用的语音列表,并通过设置voice属性来选择其中一个语音
voices = engine.getProperty('voices')  
for voice in voices:  
    print("Voice: %s" % voice.name)  
# 选择一个语音(例如第一个语音)  
engine.setProperty('voice', voices[0].id)

engine.stop()  # 停止当前话语并清除事件队列

以上就是常用的几个函数方法,剩下几个不常用的我就不补充了,想了解的可以去官网看一下。

标签:engine,pyttsx3,Python,voices,volume,利器,rate,语音
From: https://blog.csdn.net/qq_64192931/article/details/139280264

相关文章

  • python 基础习题4--分支结构
    1. 判断闰年,输入一个年份,判断该年份是否是闰年,闰年的判断规则如下:(1)能被4整除但不能被100整除的年份是闰年。(2)能被400整除的年份也是闰年。举例来说,2000年是闰年,因为它能被400整除,而1900年不是闰年,因为它能被4整除但却能被100整除。是闰年打印输出“yes”,否则......
  • Java语言,MySQL数据库;SSM 心理咨询预约管理系统19086(免费领源码)计算机毕业设计项目推荐
    目 录摘要1绪论1.1背景及意义1.2研究现状1.3ssm框架介绍1.4论文结构与章节安排2 心理咨询预约管理系统系统分析2.1可行性分析2.1.1技术可行性分析2.1.2经济可行性分析2.1.3法律可行性分析2.2系统功能分析2.2.1功能性分析2.2.2非功能......
  • 【SCAU操作系统】实验三单处理器系统的进程调度python源代码及实验报告参考
    一、课程设计目的        1.加深对进程概念的理解,明确进程和程序的区别。        2.深入了解系统如何组织进程、创建进程。        3.进一步认识如何实现处理器调度。二、课程设计内容        编写程序完成单处理器系......
  • python3.x中ORM框架SQLObject使用SQLite数据库随笔
    1、如果未安装SQLObject首先要安装,在管理员CMD下,输入如下命令:pipinstallsqlobject2、创建数据库文件,并建立数据库连接,通过修改SQLObject内置的sqlhub的processConnection属性,具体代码如下sqlobject.sqlhub.processConnection=sqlobject.connectionForURI('sqlite:.......
  • Python 列表
    工厂函数list创建列表。更新列表:>>>list=['physics','chemistry',1997,2000]>>>list[2]=2001>>>list['physics','chemistry',2001,2000]删除列表元素:>>>list1=['physics','c......
  • 量化交易:如何在QMT中运行Python策略并在VSCode中高效调试?
    哈喽,大家好,我是木头左!为何选择QMT和VSCode进行量化策略开发?在量化交易的世界里,选择正确的工具与拥有优秀的策略同等重要。调用用VisualStudioCode(简称VSCode)或pycharm,方式都差不多。结合QMT的数据处理能力和VSCode的便捷调试功能,可以极大地提高量化策略的开发效率和质......
  • Python轻量级的插件框架库之pluginbase使用详解
    概要在软件开发中,插件系统是一个常见的需求。插件系统允许开发者动态加载和卸载功能模块,从而提高应用程序的灵活性和可扩展性。Python的pluginbase库是一个轻量级的插件框架,旨在简化插件系统的构建过程。pluginbase库提供了一套简单易用的API,使开发者能够快速集成插件功能。......
  • [oeasy]python019_ 如何在github仓库中进入目录_找到程序代码_找到代码
    继续运行......
  • python社区宠物登记养宠交流系统vue+flask_django包调试pycharm
    有何创新之处(1)系统资源闭环整合,实现了综合功能高度集成。(2)采用DJANGO框架,开发软件更加方便、快捷、高效用户具体功能如下:1、社区管理员:注册、登录、个人信息管理、发帖管理、评论管理、宠物规范管理、社区用户管理、宠物类别管理、宠物信息管理(查询宠物信息,修改宠物信息,删......
  • python提取日志中访问IP信息+去重+汇总
    实现功能:1、提取日志文件中所有源IP2、对提取到的IP进行去重3、统计每个IP的访问次数4、输出到csv文件代码如下:importrefilter=r'"\s"(\d{1,3}(?:\.\d{1,3}){3})"\s'#使用正则表达式来匹配IP地址log_path="D:/你的日志文件位置.txt"withopen(l......