当前位置: 首页 > news >正文

基于pyttsx3的文字转语音实现

1、概述

        pyttsx3   是一个文本到语音(TTS)库,它允许你在Python中将文本转换为语音。  pyttsx3   支持多种语音引擎,包括一些可以设置不同性别声音的引擎。

2、实现

        安装库: pip install pyttsx3

        实现过程:1、初始化了一个 pyttsx3   引擎

                  2、通过getProperty('voices')   获取所有可用的语音属性。通过遍历这些属性,找到不同性别的声音。在找到合适的女性声音后,使用   setProperty('voice', voice.id)   设置为该声音。

       注意:可用的声音和它们的属性(如性别)取决于你的操作系统和已安装的语音引擎。在某些系统上,可能没有明确标识性别的语音,或者语音引擎可能不支持设置性别。

        此外,  pyttsx3   支持的语音引擎可能在不同的操作系统上有所不同。例如,在Windows上,它可能支持SAPI5和SAPI4引擎,而在macOS上,它可能支持NSSpeechSynthesizer引擎。每种引擎支持的属性和功能可能有所不同。

import pyttsx3# 初始化 pyttsx3 引擎
engine = pyttsx3.init()# 设置语音属性
# 这里以使用 SAPI5 语音引擎为例,它支持设置性别
voices = engine.getProperty("voices")
for voice in voices:# 打印所有可用的语音属性,以找到合适的男女声音print("Voice:")print(f" - ID: {voice.id}")print(f" - Name: {voice.name}")print(f" - Languages: {voice.languages}")print(f" - Gender: {voice.gender}")print(f" - Age: {voice.age}")# 选择一个男性或女性声音
# 例如,选择第一个女性声音
for voice in voices:if voice.gender == "Female":engine.setProperty("voice", voice.id)break
else:# 如果没有找到女性声音,使用默认声音engine.setProperty("voice", voices[0].id)# 设置语速
engine.setProperty("rate", 120)  # 语速范围一般为100-200# 将文本转换为语音
text = "赵佳琪给爸爸讲个故事吧"
engine.save_to_file(text, "outputv2.mp3")
engine.say(text)# 播放语音
engine.runAndWait()

http://www.xdnf.cn/news/558595.html

相关文章:

  • 输出字母在字符串中位置索引
  • 超强吸水宠物垫行业2025数据分析报告
  • 从计算机组成原理寻址方式参悟指针的本质
  • cpu的x86架构跟ARM架构的区别介绍
  • SpringBoot整合LangChain4J
  • 深入探讨 Java 中的函数式编程
  • 9-社区动态(Stack布局)
  • 探秘大数据架构:解锁高效数据处理的密码
  • SpringBoot3+Vue3(1)-后端 请求头校验,jwt退出登录,mybaits实现数据库用户校验
  • 拦截指定注解(FeignClient),补偿重试
  • java异常处理
  • 7-Zip软件下载与使用攻略:如何使用7z格式解压缩更高效?
  • MySQL 8.0 OCP 1Z0-908 题目解析(9)
  • Redis--Redis命令详解
  • linux安装JDK8
  • Python Day27 学习
  • leetcode 33. Search in Rotated Sorted Array
  • vue图片懒加载指令实现
  • 指针深入理解(二)
  • 在表格中使用AI解析通信协议
  • Vue3 父子组件传值, 跨组件传值,传函数
  • 进程——概念及状态
  • 算法训练之分治(快速排序)
  • 浏览器播放 WebRTC 视频流
  • 从客厅到驾驶舱:FSHD 如何成为全场景显示「破局者」
  • 第四十一节:人脸检测与识别-Haar 级联分类器
  • 城市共治的伦理平台愿景
  • 第6天-Python操控摄像头:从入门到实战
  • 四元数中 w xyz 的含义及应用
  • 通义灵码助力JavaScript开发:快速获取API与智能编码技巧