Edge-TTS:微软推出的,免费、开源、支持多种中文语音语色的AI工具

本文介绍了微软的Edge-TTSPython库,一个无需依赖微软Edge或Windows的文本转语音工具,支持多语言和音色,提供了安装、使用和调整参数的教程,以及代码示例,适用于开发者构建语音功能应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

项目地址:rany2/edge-tts: Use Microsoft Edge's online text-to-speech service from Python WITHOUT needing Microsoft Edge or Windows or an API key (github.com)

Edge-TTS是由微软推出的文本转语音Python库,通过微软Azure Cognitive Services转化文本为自然语音。适合需要语音功能的开发者,GitHub上超3000星。作为国内付费TTS服务的替代品,Edge-TTS支持40多种语言和300种声音,提供优质的语音输出,满足不同开发需求。

 

1.安装部署

首先,你需要通过Python包管理工具pip来安装Edge-TTS库。只需在命令行中输入以下命令(没有python环境的自行配置一下):

pip install edge-tts

如果只想使用edge-tts和edge-playback命令,最好使用 pipx:

pipx install edge-tts

安装完成后,你就可以开始使用Edge-TTS来将文本转换为语音了。Edge-TTS支持多种语言和不同的声音选项,你可以根据需要选择合适的声音。

2.文本转语音

我们先来个hello world,只需要一行代码!

edge-tts --text "hello world" --write-media hello.mp3

执行完毕之后,会在你执行的目录下,生成hello.mp3文件

如果你想立即播放带有字幕的内容,可以使用以下edge-playback命令:

edge-playback --text "Hello, world!"

注意以上需要安装mpv命令行播放器。所有命令也都edge-tts可以工作。edge-playback

3.支持的语言和音色

edge-tts支持英语、汉语、日语、韩语、法语等40多种语言,共300多种可选声音,执行以下命令查询:

edge-tts --list-voices

如下图所示:

 

查询结果中的Gender为声音的性别,Name为声音的名字,如zh-CN-YunjianNeural,其中zh表示语言,CN表示国家或地区,可以根据需求选择不同的声音。

使用--voice参数来指定声音名称,下面我使用zh-CN-YunyangNeural声音来合成一个中文音频。

edge-tts --voice zh-CN-YunyangNeural --text "大家好,欢迎关注语音之家,语音之家是一个助理AI语音开发者的社区。" --write-media hello_in_cn.mp3

4.调整语速、音量和音调

可以对生成的语音进行细微修改。

$ edge-tts --rate=-50% --text "Hello, world!" --write-media hello_with_rate_halved.mp3 --write-subtitles hello_with_rate_halved.vtt
$ edge-tts --volume=-50% --text "Hello, world!" --write-media hello_with_volume_halved.mp3 --write-subtitles hello_with_volume_halved.vtt
$ edge-tts --pitch=-50Hz --text "Hello, world!" --write-media hello_with_pitch_halved.mp3 --write-subtitles hello_with_pitch_halved.vtt

此外,必须使用 --rate=-50% 而不是 --rate -50%(注意等号的缺失),否则 -50% 将被解释为另一个参数。

5.使用代码转换

上面都是用命令转换,我们也可以写代码调用,开发http接口来提供语音合成服务。

以下是一个代码示例,将代码保存到一个文件中,如tts.py。

#!/usr/bin/env python3

"""
Basic example of edge_tts usage.
"""

import asyncio

import edge_tts

TEXT = "大家好,欢迎关注语音之家,语音之家是一个助理AI语音开发者的社区。"
VOICE = "zh-CN-YunyangNeural"
OUTPUT_FILE = "d:/test.mp3"


async def amain() -> None:
    """Main function"""
    communicate = edge_tts.Communicate(TEXT, VOICE)
    await communicate.save(OUTPUT_FILE)


if __name__ == "__main__":
    loop = asyncio.get_event_loop_policy().get_event_loop()
    try:
        loop.run_until_complete(amain())
    finally:
        loop.close()

运行python tts.py,稍等即可在d盘生成合成后的音频test.mp3。

关于 edge-playback 命令的说明

edge-playback 实际上是 edge-tts 的一个封装,用于播放生成的语音。它接受与 edge-tts 选项相同的参数。

 

### Navicat Premium 16 下载、安装指南及使用教程 #### 下载 对于希望获取并安装 Navicat Premium 16 的用户而言,访问官方网站是一个可靠的选择。前往 Navicat 官方网站,可以选择适合的操作系统版本(Windows、macOS 或 Linux)。如果遇到官方下载速度过慢的情况,可以考虑寻找其他可信渠道提供的镜像站点或者网盘资源来加速下载过程[^3]。 #### 安装指南 一旦下载完成对应的安装文件之后,双击该文件启动安装向导。遵循屏幕上的指示逐步操作即可顺利完成软件部署工作。通常情况下,在此过程中会询问目标路径以及是否创建桌面快捷方式等问题,请根据个人需求作出相应选择。值得注意的是,虽然这里提到的是针对特定年份版本的具体流程描述,但对于大多数常规版本来说,其基本步骤大同小异[^2]。 #### 使用教程 Navicat Premium 提供了一个直观易用的图形界面用于管理和查询多种类型的数据库。初次打开应用程序后,可以通过新建连接的方式快速接入本地或远程服务器中的 MySQL/MariaDB/Oracle/PostgreSQL 等实例;利用内置的数据同步工具实现结构化数据迁移任务;借助 SQL 编辑窗口编写复杂句执行批量处理作业;运用可视化建模组件辅助设计复杂的表关系图谱等等[^4]。 #### 新特性概述 尽管具体到每一个单独发行版可能都会带来些许差异化的改进措施,但从整体上看,Navicat Premium 不断致力于优化性能表现、增强安全性保障机制、简化日常运维操作等方面的工作。例如引入更高效的索引策略支持大规模数据分析场景下的高效检索能力;强化身份验证环节防止未授权访问行为的发生;提供更加灵活的任务调度选项满足多样化业务逻辑的需求等[^1]。 ```python # Python 示例代码展示如何通过编程接口与 Navicat 进行交互 import pyodbc def connect_to_database(server, database, username, password): connection_string = f'DRIVER={{ODBC Driver}};SERVER={server};DATABASE={database};UID={username};PWD={password}' try: conn = pyodbc.connect(connection_string) cursor = conn.cursor() print("Connection established successfully.") return cursor except Exception as e: print(f"Failed to establish connection: {e}") return None ```
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

伪_装

您的支持,是我持续创作的光

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值