Python文字转语音TTS库示例(edge-tts)

1. 安装

pip install edge-tts

在这里插入图片描述

2. 命令行使用

# 生成语音文件
#	-f:要转换语音的文本文件,例如一个txt文件
#	--text:指明要保存的mp3的文本
#	--write-media:指明保存的mp3文件路径
#	--write-subtitles:指定输出字幕/歌词路径
#	--rate:调整语速,+50%加快了50%
#	--volume:调整音量 +50%音量提高了50%
#	--pitch:调整频率 -50Hz频率降低了50Hz
#	--voice:指明了使用哪种语音和风格的发音人
edge-tts --text "Hello, world!" --write-media hello.mp3
# 修改语音速度、音量、频率的效果(使用+-表示默认基础上增减)
edge-tts --rate=+50% --text "Hello, world!" --write-media hello_rate.mp3
edge-tts --volume=+50% --text "Hello, world!" --write-media hello_volume.mp3
edge-tts --pitch=-50Hz --text "Hello, world!" --write-media hello_pitch.mp3
# 直接播放(相当于文件生成到临时目录)
edge-playback --text "Hello, world!"

在这里插入图片描述
在这里插入图片描述

3. 编码使用

import asyncio
import edge_ttsTEXT = "Hello World!"
VOICE = "en-GB-SoniaNeural"
OUTPUT_FILE = "test.mp3"async def amain() -> None:"""Main function"""communicate = edge_tts.Communicate(TEXT, VOICE)submaker = edge_tts.SubMaker()with open(OUTPUT_FILE, "wb") as file:async for chunk in communicate.stream():if chunk["type"] == "audio":file.write(chunk["data"])

4. 修改语音模型

有300多种模型可以选择,(edge-tts --list-voices)相关配置如下:

模型名称性别风格声音特点
af-ZA-AdriNeural普通友好、积极
af-ZA-WillemNeural普通友好、积极
am-ET-AmehaNeural普通友好、积极
am-ET-MekdesNeural普通友好、积极
ar-AE-FatimaNeural普通友好、积极
ar-AE-HamdanNeural普通友好、积极
ar-BH-AliNeural普通友好、积极
ar-BH-LailaNeural普通友好、积极
ar-DZ-AminaNeural普通友好、积极
ar-DZ-IsmaelNeural普通友好、积极
ar-EG-SalmaNeural普通友好、积极
ar-EG-ShakirNeural普通友好、积极

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/80072.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Elasticsearch性能调优全攻略:从日志分析到集群优化

#作者:猎人 文章目录 前言搜索慢查询日志索引慢写入日志性能调优之基本优化建议性能调优之索引写入性能优化提升es集群写入性能方法:性能调优之集群读性能优化性能调优之搜索性能优化性能调优之GC优化性能调优之路由优化性能调优之分片优化 前言 es里面…

MongoDB从入门到实战之Windows快速安装MongoDB

前言 本章节的主要内容是在 Windows 系统下快速安装 MongoDB 并使用 Navicat 工具快速连接。 MongoDB从入门到实战之MongoDB简介 MongoDB从入门到实战之MongoDB快速入门 MongoDB从入门到实战之Docker快速安装MongoDB 下载 MongoDB 安装包 打开 MongoDB 官网下载页面&…

Serverless,云计算3.0阶段

Hi~各位读者朋友们,感谢您阅读本文,我是笠泱,本期简单分享下Serverless。Serverless是一种云计算服务模式,为业务代码提供运行环境及调度服务。开发者只需专注于编写业务逻辑代码,无需管理底层基础设施(如服…

eSearch:一款集截图、OCR与录屏于一体的多功能软件

eSearch:一款集截图、OCR与录屏于一体的多功能软件 软件介绍 eSearch是一款专为Windows 10和11用户设计的多功能软件,集截图、OCR文字识别、录屏等功能于一体,且完全免费。其便捷版无需安装,运行后最小化至托盘图标,…

React学习———useContext和useReducer

useContext useContext是React的一个Hook,用于在函数组件中访问上下文(context)的值。它可以帮助我们在组件树中共享状态,而不需要通过props一层层传递 特点 用于跨组件共享状态需要配合React.createContext和Context.Provider…

安卓刷机模式详解:Fastboot、Fastbootd、9008与MTK深刷

安卓刷机模式详解:Fastboot、Fastbootd、9008与MTK深刷 一、刷机模式对比 1. Fastboot模式 简介:传统安卓底层刷机模式,通过USB连接电脑操作优点:支持大多数安卓设备,操作相对简单缺点:需要设备进入特定…

HDFS的概述

HDFS组成构架: 注: NameNode(nn):就是 Master,它是一个主管、管理者。 (1) 管理 HDFS 的名称空间; (2) 配置副本策略。记录某些文件应该保持几个副本; (3) 管理数据块&#xff0…

配置Spark环境

1.上传spark安装包到某一台机器(自己在finaShell上的机器)。 2.解压。 把第一步上传的安装包解压到/opt/module下(也可以自己决定解压到哪里)。对应的命令是:tar -zxvf 安装包 -C /opt/module 3.重命名。进入/opt/mo…

Java笔记五

1 Math类 1.1 概述 tips:了解内容 查看API文档,我们可以看到API文档中关于Math类的定义如下: Math类所在包为java.lang包,因此在使用的时候不需要进行导包。并且Math类被final修饰了,因此该类是不能被继承的。 Math…

QT 插槽实现

方法 1:使用 default property 实现标签插入 通过定义 default property,可以使组件直接嵌套在目标组件中,类似于插槽机制。 CustomSlotExample.qml import QtQuick 2.15 import QtQuick.Controls 2.15// 定义一个支持插槽的自定义组件 Re…

spark在shell中运行RDD程序

在hdfs中/wcinput中创建一个文件:word2.txt在里面写几个单词 启动hdfs集群 [roothadoop100 ~]# myhadoop start [roothadoop100 ~]# cd /opt/module/spark-yarn/bin [roothadoop100 ~]# ./spark-shell 写个11测试一下 按住ctrlD退出 进入环境:spark-shel…

Redis 主从复制的实现原理是什么?

Redis主从复制的实现原理可通过以下核心机制与流程解析: 一、核心目标与角色分工 Redis主从复制通过**单一主节点(Master)**处理写操作,**多个从节点(Slave)**同步数据并提供读服务,实现&…

量化交易 - 网格交易策略实现与原理解析

📈 网格交易策略实现与原理解析 🧠 什么是网格交易策略? 网格交易(Grid Trading)是一种经典的量化交易策略,其核心思想是在价格的不同区间(“网格”)中设置买入和卖出操作&#xf…

前端npm的核心作用与使用详解

一、npm是什么? npm(Node Package Manager) 是 Node.js 的默认包管理工具,也是全球最大的开源代码库生态系统。虽然它最初是为 Node.js 后端服务设计的,但如今在前端开发中已成为不可或缺的基础设施。通过npm,开发者可以轻松安装、管理和共享代码模块。 特性: 依赖管理…

Vue3学习(组合式API——生命周期函数基础)

目录 一、Vue3组合式API中的生命周期函数。 &#xff08;1&#xff09;各阶段生命周期涉及函数简单介绍。 <1>创建挂载阶段的生命周期函数。 <2>更新阶段的生命周期函数。 <3>卸载阶段的生命周期函数。 <4>错误处理的生命周期函数。 &#xff08;2&…

道通EVO MAX系列无人机-支持二次开发

道通EVO MAX系列无人机-支持二次开发 EVO Max 系列采用Autel Autonomy自主飞行技术&#xff0c;实现复杂环境下的全局路径规划、3D场景重建、自主绕障和返航&#xff1b;高精度视觉导航能力&#xff0c;使其在信号干扰强、信号遮挡、信号弱等复杂环境下&#xff0c;依然获得高精…

网张实验操作-防火墙+NAT

实验目的 了解防火墙&#xff08;ENSP中的USG5500&#xff09;域间转发策略配置、NAT&#xff08;与路由器NAT配置命令不同&#xff09;配置。 网络拓扑 两个防火墙连接分别连接一个内网&#xff0c;中间通过路由器连接。配置NAT之后&#xff0c;内网PC可以ping公网&#xf…

FPGA: UltraScale+ bitslip实现(方案+代码)

收获 一晃五年~ 五年前那个夏夜&#xff0c;我对着泛蓝的屏幕敲下《给十年后的自己》&#xff0c;在2020年的疫情迷雾中编织着对未来的想象。此刻回望&#xff0c;第四届集创赛的参赛编号仍清晰如昨&#xff0c;而那个在家熬夜焊电路板的"不眠者"&#xff0c;现在…

机器学习笔记2

5 TfidfVectorizer TF-IDF文本特征词的重要程度特征提取 (1) 算法 词频(Term Frequency, TF), 表示一个词在当前篇文章中的重要性 逆文档频率(Inverse Document Frequency, IDF), 反映了词在整个文档集合中的稀有程度 (2) API sklearn.feature_extraction.text.TfidfVector…

UV 快速入门和使用案例

UV 快速入门和使用案例 作者&#xff1a;王珂 邮箱&#xff1a;49186456qq.com 文章目录 UV 快速入门和使用案例简介一、安装1.1 安装包安装1.2 从 PyPI 安装二、使用2.1 创建项目2.2 包管理2.3 工具2.4 Python 版本 简介 官网&#xff1a; 项目&#xff1a; https://githu…