网站首页 > 文章精选 正文
文本转语音(TTS)技术已经成为现代应用程序中的重要组成部分,从语音助手到有声读物,TTS的应用无处不在。
然而,许多高质量的TTS服务(如OpenAI、Azure、ElevenLabs)都需要付费,这对于个人开发者和中小企业来说可能是一个负担。
那么,有没有一种既高质量又免费的替代方案呢?答案是肯定有的。
就是我们今天的主角:openai-edge-tts。
它利用微软Edge的在线语音服务,提供与这些付费服务相媲美的功能和语音质量,让用户无需为TTS服务花费一分钱。
项目简介
OpenAI-Edge-TTS 是一个开源的免费文本转语音API接口,托管在GitHub上。
它通过调用微软 Edge 的在线语音服务,为用户提供免费且高质量的语音生成功能。
不仅支持多种语音和语言选择,还允许用户自由调整播放速度和音频格式,真正实现了个性化的语音体验,使其成为一个灵活且功能强大的TTS解决方案。
主要特点
- 高质量免费语音服务:借助微软 Edge 在线语音服务,OpenAI-Edge-TTS提供了高质量的语音输出,而不需要用户支付任何费用。
- 多种语音和语言选项:用户可以选择多种语音和语言,为不同的应用场景提供合适的语音输出。
- 灵活的播放速度:支持调节播放速度,用户可以根据需要自由设置语音的快慢,增强听觉体验。
- 多种音频格式支持:OpenAI-Edge-TTS支持包括mp3、aac、flac、wav等多种音频格式,方便用户在不同设备和平台上使用。
- 兼容OpenAI结构:/v1/audio/speech,具有类似请求结构和行为。
- 易于部署:提供Docker一键部署方式,让用户可以快速上手体验,无需繁琐的安装和配置。
安装使用方法
使用 openai-edge-tts 非常简单,即使是初学者也能快速部署和使用。
Docker 部署
① 克隆项目到本地
git clone https://github.com/travisvn/openai-edge-tts.git
cd openai-edge-tts
② 配置环境变量,在根目录中创建一个.env文件,包含以下变量:
API_KEY=your_api_key_here
PORT=5050
DEFAULT_VOICE=en-US-AndrewNeural
DEFAULT_RESPONSE_FORMAT=mp3
DEFAULT_SPEED=1.2
DEFAULT_LANGUAGE=en-US
REQUIRE_API_KEY=True
REMOVE_FILTER=False
EXPAND_API=True
或者,复制默认的.env.example。
cp .env.example .env
③ 使用Docker Compose运行
docker compose up --build
当然也可以直接使用Docker运行:
docker build -t openai-edge-tts .
docker run -p 5050:5050 --env-file .env openai-edge-tts
要在后台运行容器,请在docker run命令后添加-d:
docker run -d -p 5050:5050 --env-file .env openai-edge-tts
④ 访问 API
服务将在 http://localhost:5050 上可用,直接访问即可使用。
Python环境部署
前两步,跟Docker部署一样,需要额外做的是创建Python虚拟环境:
# For macOS/Linux
python3 -m venv venv
source venv/bin/activate
# For Windows
python -m venv venv
venv\Scripts\activate
安装Python依赖三方库
pip install -r requirements.txt
最后,执行Python服务,开启 http://localhost:5050 服务。
python app/server.py
然后就可以测试API了,比如:在
http://localhost:5050/v1/audio/speech 和其他可用的端点上与 API 交互。
WebUI 界面:
用法:
端点: /v1/audio/speech,从输入文本生成音频。
必选参数:
输入 (字符串): 要转换为音频的文本(最多4096个字符)。
可选参数:
- model (string): 设置为 "tts-1" 或 "tts-1-hd"(默认:"tts-1")。
- voice (string): 一个与OpenAI兼容的语音(alloy, echo, fable, onyx, nova, shimmer)或任何有效的edge-tts语音(默认:"en-US-AndrewNeural")。
- response_format (string): 音频格式,选项:mp3、opus、aac、flac、wav、pcm(默认:mp3)。
- speed (number): 播放速度(0.25 到 4.0),默认值为 1.2。
API 示例:
curl -X POST http://localhost:5050/v1/audio/speech \
-H "Content-Type: application/json" \
-H "Authorization: Bearer your_api_key_here" \
-d '{
"model": "tts-1",
"input": "じゃあ、行く。電車の時間、調べておくよ。",
"voice": "ja-JP-KeitaNeural"
}' \
--output speech.mp3
写在最后
OpenAI-Edge-TTS 的出现,真正降低了高质量文本转语音服务的门槛,为用户提供了一种免费的替代方案。
它不仅拥有强大的功能,还非常易于使用和部署,是那些寻求高质量但又希望节省成本的用户的理想选择。
GitHub 项目地址:
https://github.com/travisvn/ope
猜你喜欢
- 2025-06-12 AI系统提示词:V0(aide提示)
- 2025-06-12 这AI浏览器代理太强!AI帮你自动完成复杂网页操作,微软开源新神器
- 2025-06-12 史蒂芬·金、扎迪·史密斯等人作品被用于训练人工智能
- 2025-06-12 DeepSeek开源周收官,颠覆存储架构!OpenAI继续“大力出奇迹”,GPT-4.5价格达R1的270倍
- 2025-06-12 刚刚,ChatGPT的深度研究可以连接GitHub了,网友:这是真·RAG
- 2025-06-12 OpenAI全新 Agent 套件来了,可以手搓Manus,5大要点一网打尽
- 2025-06-12 刚刚,OpenAI最强图像生成API上线,一张图1毛5!自定义解锁神P图
- 2025-06-12 LangChain使用mcp-openai和通义千问
- 2025-06-12 编程革命爆发!刚刚,OpenAI最强智能体上线ChatGPT
- 2025-06-12 OpenAI Assistants API实战指南【AI Agent】
- 最近发表
- 标签列表
-
- newcoder (56)
- 字符串的长度是指 (45)
- drawcontours()参数说明 (60)
- unsignedshortint (59)
- postman并发请求 (47)
- python列表删除 (50)
- 左程云什么水平 (56)
- 计算机网络的拓扑结构是指() (45)
- 编程题 (64)
- postgresql默认端口 (66)
- 数据库的概念模型独立于 (48)
- 产生系统死锁的原因可能是由于 (51)
- 数据库中只存放视图的 (62)
- 在vi中退出不保存的命令是 (53)
- 哪个命令可以将普通用户转换成超级用户 (49)
- noscript标签的作用 (48)
- 联合利华网申 (49)
- swagger和postman (46)
- 结构化程序设计主要强调 (53)
- 172.1 (57)
- apipostwebsocket (47)
- 唯品会后台 (61)
- 简历助手 (56)
- offshow (61)
- mysql数据库面试题 (57)