基于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"}'

快速上手指南

部署步骤

  1. 克隆项目仓库
git clone https://github.com/travisvn/openai-edge-tts.git
cd openai-edge-tts
  1. 配置环境变量
# 复制示例配置
cp .env.example .env

# 主要配置项说明:
# API_KEY=your_api_key_here  # 推荐设置安全密钥
# DEFAULT_VOICE=en-US-AvaNeural  # 默认音色
# DEFAULT_RESPONSE_FORMAT=mp3    # 默认输出格式
  1. 启动服务
# 前台运行
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

使用注意事项

  1. 网络依赖:Edge-TTS需要访问微软在线服务,确保网络通畅
  2. 音色选择:通过Edge-TTS官方文档查看完整音色列表
  3. 性能优化:高并发场景建议使用Docker部署以获得更好的资源管理

GitHub项目地址https://github.com/travisvn/openai-edge-tts

猜你喜欢

转载自blog.csdn.net/engchina/article/details/146841036
今日推荐