news 2026/6/10 11:46:20

TTS 之 PYTHON库 pyttsx3

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
TTS 之 PYTHON库 pyttsx3

pyttsx3是Python中一款轻量级、跨平台的离线文本转语音(TTS)库,可实现文本朗读、语音参数调控、语音文件保存等功能:

一、基本功能

1. pyttsx3初始化 init

```python import pyttsx3 engine = pyttsx3.init() engine.say("pyttsx3 初始化!") engine.runAndWait() engine.stop() ```

2. 基础功能使用

基本文本朗读:

初始化语音引擎后,通过say()方法添加待朗读文本,再用runAndWait()触发语音播放,该方法会阻塞线程直至播放结束,

importpyttsx3 engine=pyttsx3.init()text="Hello, welcome to the world of Python and pyttsx3!"engine.say(text)engine.runAndWait()engine.stop()

语音速率调整:

通过getProperty('rate')获取当前语速(默认有固定值),再用setProperty('rate', value)设置新语速,取值范围通常为0-500,数值越大语速越快:

importpyttsx3 engine=pyttsx3.init()rate=engine.getProperty('rate')print(f"当前语音速率:{rate}")engine.setProperty('rate',500)engine.say("你好 tts.")engine.runAndWait()engine.stop()

语音音量控制:

借助getProperty('volume')获取当前音量,通过setProperty('volume', value)调节音量,取值范围为0.0(静音)-1.0(最大音量)。

importpyttsx3 engine=pyttsx3.init()volume=engine.getProperty('volume')print(f"当前音量:{volume}")engine.setProperty('volume',0.7)engine.say("你好 tts.")engine.runAndWait()engine.stop()

语音类型选择:

getProperty('voices')获取系统可用语音列表,列表中每个语音对象包含ID、名称、性别等信息,再通过setProperty('voice', voice_id)切换语音类型,示例:

importpyttsx3 engine=pyttsx3.init()voices=engine.getProperty('voices')forvoiceinvoices:print(f"语音ID:{voice.id}, 语音名称:{voice.name}, 语音性别:{voice.gender}")engine.setProperty('voice',voices[0].id)engine.say("This is a test with a different voice.")engine.runAndWait()engine.stop()

保存语音到文件:

使用save_to_file(text, filename)将语音保存为指定格式文件(如MP3、WAV,格式取决于系统引擎),且需调用runAndWait()确保保存完成,示例:

importpyttsx3 engine=pyttsx3.init()text="This is a test. The speech will be saved to a file."engine.save_to_file(text,'output.mp3')engine.runAndWait()engine.stop()
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 16:37:48

【源码解读之 Mybatis】【核心篇】-- 第10篇:动态SQL实现原理详解

第10篇:动态SQL实现原理详解 前言 在前面的章节中,我们学习了 MyBatis 的核心执行流程,特别是第9篇中详细介绍了 MappedStatement 和 SqlSource 的作用。你可能注意到,MyBatis 能够根据不同的条件动态生成 SQL,这正是 …

作者头像 李华
网站建设 2026/6/10 16:42:09

飞书文档批量导出终极指南:25分钟搞定700+文档的完整备份方案

飞书文档批量导出终极指南:25分钟搞定700文档的完整备份方案 【免费下载链接】feishu-doc-export 项目地址: https://gitcode.com/gh_mirrors/fe/feishu-doc-export 作为一名资深团队管理者,我曾经面临过最头疼的文档迁移问题——公司从飞书切换…

作者头像 李华
网站建设 2026/6/9 12:52:17

1小时打造你的DirectX修复工具原型

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 快速开发一个DirectX修复工具原型,核心功能:1.基本组件检测 2.常见dll修复 3.简易GUI界面 4.基础日志功能。使用PythonPyQt实现,要求2小时内可完…

作者头像 李华
网站建设 2026/6/10 17:10:45

用AI快速开发c#教程应用

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个c#教程应用,利用快马平台的AI辅助功能,展示智能代码生成和优化。点击项目生成按钮,等待项目生成完整后预览效果 作为一名刚接触C#的开发…

作者头像 李华
网站建设 2026/6/9 22:12:00

ViGEmBus虚拟手柄驱动终极配置完整指南

ViGEmBus虚拟手柄驱动终极配置完整指南 【免费下载链接】ViGEmBus 项目地址: https://gitcode.com/gh_mirrors/vig/ViGEmBus 想要在Windows系统中实现专业级的游戏控制体验吗?ViGEmBus虚拟手柄驱动为你打开了无限可能!这款强大的内核级驱动程序能…

作者头像 李华