5步搞定Edge TTS:Python实现跨平台文本转语音的完整指南
**Edge TTS** 是一款强大的Python模块,让你无需安装Microsoft Edge浏览器、无需Windows系统,也不需要API密钥,就能直接调用微软Edge的在线文本转语音服务。本文将通过5个简单步骤,带你快速掌握这个免费工具的使用方法,轻松实现文本到语音的转换。## 📋 准备工作:安装Edge TTS首先,确保你的Python环境已就绪(推荐Python 3.7及以上版
5步搞定Edge TTS:Python实现跨平台文本转语音的完整指南
Edge TTS 是一款强大的Python模块,让你无需安装Microsoft Edge浏览器、无需Windows系统,也不需要API密钥,就能直接调用微软Edge的在线文本转语音服务。本文将通过5个简单步骤,带你快速掌握这个免费工具的使用方法,轻松实现文本到语音的转换。
📋 准备工作:安装Edge TTS
首先,确保你的Python环境已就绪(推荐Python 3.7及以上版本)。打开终端,输入以下命令即可完成安装:
pip install edge-tts
如果你习惯使用pipx进行隔离安装,也可以运行:
pipx install edge-tts
注意:如果需要使用
edge-playback功能(实时播放语音),除Windows系统外,还需额外安装mpv播放器。
🔍 第1步:了解核心功能与优势
Edge TTS的核心优势在于跨平台性和零配置门槛。它直接对接微软的在线TTS服务,支持多种语音和语言,主要功能包括:
- 生成MP3音频文件
- 实时流式播放语音
- 生成字幕文件(SRT格式)
- 支持自定义语音、语速和音量
项目结构清晰,核心代码位于src/edge_tts/目录,包含通信模块(communicate.py)、语音管理(voices.py)和字幕生成(srt_composer.py)等关键组件。
🚀 第2步:快速上手基础命令
安装完成后,你可以直接通过命令行使用Edge TTS。最基础的用法是将文本转换为音频文件:
edge-tts --text "Hello, this is Edge TTS" --voice en-US-AriaNeural --write-media output.mp3
这条命令会使用en-US-AriaNeural语音生成output.mp3文件。如果你想实时听到语音(非Windows系统需安装mpv),可以使用:
edge-playback --text "欢迎使用Edge TTS" --voice zh-CN-XiaoxiaoNeural
📝 第3步:查看可用语音列表
Edge TTS支持全球多种语言和语音风格。通过以下命令可以列出所有可用语音:
edge-tts --list-voices
输出结果会显示语音名称、语言代码和性别,例如:
zh-CN-XiaoxiaoNeural(中文-晓晓,女)en-GB-SoniaNeural(英语-索尼娅,女)ja-JP-MayuNeural(日语-真由,女)
你可以根据需要选择合适的语音,例如指定中文语音:
edge-tts --text "今天天气真好" --voice zh-CN-XiaoxiaoNeural --write-media chinese_voice.mp3
💻 第4步:Python代码集成示例
除了命令行,你还可以在Python代码中集成Edge TTS。以下是一个同步生成音频文件的简单示例(来自examples/sync_audio_gen_with_predefined_voice.py):
import edge_tts
TEXT = "Hello World!"
VOICE = "en-GB-SoniaNeural"
OUTPUT_FILE = "test.mp3"
def main() -> None:
communicate = edge_tts.Communicate(TEXT, VOICE)
communicate.save_sync(OUTPUT_FILE)
if __name__ == "__main__":
main()
运行这段代码后,当前目录会生成test.mp3文件。如果你需要异步处理或流式输出,可以参考examples/目录下的其他示例,如:
async_audio_gen_with_predefined_voice.py(异步生成音频)async_audio_streaming_with_predefined_voice_and_subtitles.py(带字幕的流式播放)
⚙️ 第5步:高级功能与自定义
Edge TTS还支持调整语速、音量和生成字幕。例如,生成带字幕的音频:
edge-tts --text "Python文本转语音从未如此简单" --voice zh-CN-YunxiNeural --write-media output.mp3 --write-subtitles output.srt
这条命令会同时生成output.mp3和output.srt字幕文件。你也可以在Python代码中通过Communicate类的参数自定义这些选项:
communicate = edge_tts.Communicate(
text="自定义语速和音量",
voice="zh-CN-YunyangNeural",
rate="+10%", # 语速加快10%
volume="-50%" # 音量降低50%
)
🎯 总结
通过以上5个步骤,你已经掌握了Edge TTS的核心用法。无论是命令行快速转换,还是集成到Python项目中,这款工具都能满足你对文本转语音的需求。其跨平台特性和丰富的语音选择,让它成为开发语音应用的理想选择。
如果你想深入探索更多功能,可以查看项目中的示例代码(examples/目录)或阅读源码(src/edge_tts/),进一步扩展你的语音应用能力。
更多推荐

所有评论(0)