基于Edge-TTS的OpenAI兼容文本转语音API实战指南
基于Edge-TTS的OpenAI兼容文本转语音API实战指南
项目简介
在文本转语音(TTS)技术领域,OpenAI、Azure等平台提供了强大的API服务,但它们通常需要付费或面临使用限制。
今天,我们将介绍一个开源项目 openai-edge-tts,它通过微软Edge浏览器的在线TTS服务,提供了一个完全免费且兼容OpenAI接口的本地化解决方案。
该项目的核心目标是:
- 完全兼容OpenAI API:直接替换原有调用逻辑,使用
/v1/audio/speech端点 - 零成本部署:基于微软Edge的免费TTS服务
 - 灵活配置:支持多语言、多音色和播放速度调节
 
核心功能特性
1. 开箱即用的OpenAI兼容接口
- 无缝迁移:直接使用OpenAI原有的API调用方式
 - 请求结构一致:参数设置与OpenAI API完全兼容
 - 响应格式统一:返回与OpenAI相同的音频二进制流
 
2. 丰富的多语言语音库
支持的多语言语音库:
- en-US-AvaMultilingualNeural
 - en-US-AndrewMultilingualNeural
 - en-US-EmmaMultilingualNeural
 - en-US-BrianMultilingualNeural
 - fr-FR-VivienneMultilingualNeural
 - de-DE-SeraphinaMultilingualNeural
 
3. 多格式音频支持
支持主流音频格式的直接输出:
mp3 | opus | aac | flac | wav | pcm
 
4. 播放速度调节
通过speed参数实现:
{
  "speed": 1.0  # 范围:0.25x ~ 4.0x
}
 
5. 自定义音色扩展
支持直接指定Edge-TTS的完整音色名称:
# 示例:使用特定音色
curl -X POST "http://localhost:5050/v1/audio/speech" \
  -H "Authorization: Bearer $API_KEY" \
  -d '{"text":"Hello World","voice":"en-GB-SoniaNeural"}'
 
快速上手指南
部署步骤
- 克隆项目仓库
 
git clone https://github.com/travisvn/openai-edge-tts.git
cd openai-edge-tts
 
- 配置环境变量
 
# 复制示例配置
cp .env.example .env
# 主要配置项说明:
# API_KEY=your_api_key_here  # 推荐设置安全密钥
# DEFAULT_VOICE=en-US-AvaNeural  # 默认音色
# DEFAULT_RESPONSE_FORMAT=mp3    # 默认输出格式
 
- 启动服务
 
# 前台运行
docker compose up --build
# 后台运行(推荐)
docker compose up -d
 
API调用示例
curl -X POST http://localhost:5050/v1/audio/speech \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer sk-123456" \
  -d '{
    "model": "tts-1",
    "input": "你好,这是基于Edge-TTS的文本转语音演示",
    "voice": "zh-CN-XiaoxiaoNeural"
  }' \
  --output speech.mp3
 
使用注意事项
- 网络依赖:Edge-TTS需要访问微软在线服务,确保网络通畅
 - 音色选择:通过Edge-TTS官方文档查看完整音色列表
 - 性能优化:高并发场景建议使用Docker部署以获得更好的资源管理
 
GitHub项目地址:https://github.com/travisvn/openai-edge-tts
