EdgeTTS 是由微软开发的一款开源、免费且功能强大的文本转语音(TTS)工具,基于微软 Azure Cognitive Services 的语音合成技术。它支持多语言、多音色,并以自然流畅的语音输出为核心优势,适用于个人开发者和企业级应用。
一、核心功能与技术亮点
-
多语言与音色支持
EdgeTTS 支持 40+ 种语言 和 300+ 种音色,涵盖中文普通话、方言(如陕西话、台湾腔、粤语)、英语、日语等。例如:- 中文音色:
zh-CN-YunyangNeural
(标准普通话)、zh-CN-shaanxi-XiaoniNeural
(陕西方言); - 其他语言:日语
ja-JP-KeitaNeural
、韩语ko-KR-InJoonNeural
等。
- 中文音色:
-
高自然度语音合成
采用深度学习技术模拟人类语音韵律,生成接近真人发音的语音,适用于有声读物、视频旁白等场景。例如,中文语音合成的标点停顿和情感表达优于多数开源工具。 -
灵活的参数调节
支持通过命令行或代码调整 语速(--rate
)、音量(--volume
)、音调(--pitch
),例如:edge-tts --rate=+30% --volume=-20% --text "欢迎使用EdgeTTS" --write-media output.mp3
语速范围为 ±50%,音调调节单位为 Hz(如
--pitch=+50Hz
)。 -
跨平台与部署便捷性
- 命令行工具:支持 Windows/Linux/macOS,无需编程基础即可快速生成语音;
- Python API:集成异步编程接口,适合开发者嵌入应用程序;
- 浏览器端支持:通过 WebAssembly 和 Web Audio API 实现低延迟的网页端语音合成。
二、快速使用指南
-
安装方法
通过 Python 包管理器安装:pip install edge-tts
或使用
pipx
隔离环境安装(推荐):pipx install edge-tts
-
基础命令示例
- 文本转语音:
edge-tts --voice zh-CN-YunyangNeural --text "2023年OpenAI发布GPT-4" --write-media speech.mp3
- 查看支持音色:
edge-tts --list-voices
- 实时试听:
edge-playback --text "Hello, world!" --voice en-US-AndrewNeural
- 文本转语音:
-
编程接口调用
import edge_tts import asyncio async def generate_speech(): text = "大家好,欢迎使用EdgeTTS!" voice = "zh-CN-YunyangNeural" communicate = edge_tts.Communicate(text, voice, rate="+10%") await communicate.save("output.mp3") asyncio.run(generate_speech())
三、典型应用场景
-
语音助手与客服系统
集成到聊天机器人中,提供自然语音交互,例如电商客服自动回复。 -
无障碍阅读与教育工具
为视障用户转换网页文本为语音,或为语言学习软件生成发音示例。 -
多媒体内容创作
快速生成视频旁白、播客内容,支持多音色切换以匹配不同场景(如儿童读物、新闻播报)。 -
企业级自动化流程
结合 Flask 等框架搭建语音服务 API,支持批量处理文档转语音。
四、开源生态与资源
- 项目地址:
GitHub 仓库(3.2k+ Star):https://github.com/rany2/edge-tts - 扩展方案:
开发者可通过openai-edge-tts
项目构建兼容 OpenAI API 的语音服务,支持 Docker 一键部署。
五、注意事项
- 网络依赖:需联网调用微软云端服务,部分高级功能(如离线合成)需特定权限;
- 性能优化:长文本处理建议分段落合成以避免内存溢出;
- 错误处理:若出现
WSServerHandshakeError: 403
,检查网络权限或更换音色参数。
总结:EdgeTTS 凭借其开源免费、高质量语音输出和易用性,成为替代付费 TTS 服务(如科大讯飞)的理想选择。无论是个人开发者还是企业用户,均可通过其丰富的接口和灵活的配置快速实现语音功能集成。