Edge TTS 语音合成服务 v2.0

免费开源的中文 TTS 服务,基于微软 Edge 浏览器语音合成技术,支持背景音乐混音。

特点

  • ✅ 完全免费,无调用限制
  • ✅ 中文效果优秀,5种语音可选
  • ✅ 实时响应,支持流式播放
  • ✅ 背景音乐混音(v2.0 新增),睡前故事等场景适用

快速开始

1. 安装依赖

cd tts-server
pip install -r requirements.txt

注意:背景音乐混音功能需要额外安装 FFmpeg

  • Windows: winget install Gyan.FFmpeg
  • macOS: brew install ffmpeg
  • Ubuntu: sudo apt-get install ffmpeg

2. 启动服务

python tts_server.py

服务启动在 http://localhost:8000

3. 背景音乐文件

将音乐文件(.mp3 / .wav / .ogg)放入 bgm/ 目录,内置提供 lullaby.wav(摇篮曲)。

tts-server/
├── bgm/
│   └── lullaby.wav    # 内置摇篮曲
├── tts_server.py
└── requirements.txt

API 接口

POST /tts - 文字转语音(返回 MP3 文件)

{
  "text": "要合成的文字",
  "voice": "xiaoxiao",
  "rate": "+0%",
  "volume": "+0%",
  "bgm": "lullaby.wav",
  "bgm_volume": 0.3
}
参数 类型 默认值 说明
text string 必填 合成文字(最多5000字)
voice string xiaoxiao 语音名称
rate string +0% 语速(如 -10%、+20%)
volume string +0% 音量
bgm string 空 背景音乐文件名(bgm/目录下),留空则不混音
bgm_volume float 0.3 背景音乐音量(0.0~1.0)

GET /bgm - 列出可用背景音乐

GET /bgm

GET /voices - 列出可用语音

GET /tts/get - 测试用 GET 接口

GET /tts/get?text=你好&voice=xiaoxiao

可用语音

名称 ID 特点
xiaoxiao 晓晓 女声,温柔自然
xiaoyi 小艺 女声,活泼轻快
yunjian 云健 男声,新闻播报
yunxi 云希 男声,年轻活力
xiaochen 晓晨 女声,成熟稳重

使用示例

睡前故事(含摇篮曲背景)

import requests

resp = requests.post("http://localhost:8000/tts", json={
    "text": "从前,在一片美丽的大森林里...",
    "voice": "xiaoxiao",
    "rate": "-5%",
    "bgm": "lullaby.wav",
    "bgm_volume": 0.25
}, timeout=180)

with open("story.mp3", "wb") as f:
    f.write(resp.content)

纯语音(不混音)

resp = requests.post("http://localhost:8000/tts", json={
    "text": "你好,世界",
    "voice": "xiaoxiao"
})

注意事项

  • 依赖微软 Edge 在线服务,需要网络连接
  • 单条文本建议不超过 5000 字
  • 长文本(600字以上)生成耗时约 60-120 秒,调用方请设置足够长的 timeout(建议 180s+)
  • 混音功能依赖 pydub + FFmpeg,FFmpeg 需单独安装
  • 商业使用请遵守微软服务条款
S
Description
文本转语音
Readme
12 MiB
0 Stars 1 Watchers 0 Forks
Languages
Python 100%