Files
TTSpeiyin/README.md
T
sun bd405e40fe feat: 初始化OpenAITTS配音台项目
创建了完整的文本转语音工具,包括:

- 后端:Go语言实现的HTTP服务(main.go)
  - 支持自定义API地址配置
  - 提供/api/tts端点
  - 兼容OpenAI TTS API格式

- 前端:
  - index.html:简洁大方的用户界面
  - styles.css:现代渐变设计和响应式布局
  - app.js:完整的交互逻辑和状态管理

- 配置:
  - config.example.json:API地址和端口配置示例
  - 支持配置文件、环境变量和前端直接配置三种方式

- 文档:
  - README.md:详细的使用说明和API文档

功能特点:
- ✅ 自定义API地址支持
- ✅ 多种声音模型(tts-1/tts-1-hd)
- ✅ 6种语音类型选择
- ✅ 实时字符计数
- ✅ 音频播放和下载
- ✅ 本地存储API配置
- ✅ 友好的错误提示
2026-01-03 00:10:07 +08:00

157 lines
3.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# OpenAITTS配音台
一个简洁高效的文本转语音工具,支持自定义OpenAI API地址,基于Go后端和浏览器前端实现。
## 功能特点
- ✨ 简洁大方的用户界面
- 🔧 支持自定义API地址
- 🎤 多种声音模型选择
- 📱 响应式设计,适配各种设备
- 💾 本地存储API配置
- ⚡ 快速生成和播放语音
- 📥 支持音频下载
## 技术栈
- **后端**: Go 1.18+
- **前端**: HTML5 + CSS3 + JavaScript (ES6+)
- **API**: OpenAI TTS API
## 配置说明
### 1. 配置文件方式
复制 `config.example.json` 为 `config.json`,然后修改其中的配置:
```json
{
"api_base_url": "https://your-api-address.com",
"port": "8080"
}
```
### 2. 环境变量方式
你也可以通过环境变量来配置:
```bash
export OPENAI_API_BASE_URL="https://your-api-address.com"
export PORT="8080"
```
### 3. 前端直接配置
在浏览器界面中,你可以直接输入API Key和API Base URL,这些配置会自动保存到浏览器本地存储中。
## 快速开始
### 前提条件
- 已安装Go 1.18或更高版本
- 有可用的OpenAI API Key
- 自定义API地址(如果需要)
### 启动服务
在项目根目录下执行:
```bash
go run main.go
```
或者使用配置文件:
```bash
go run main.go -config=config.json
```
服务启动后,会在控制台输出:
```
2024/01/01 12:00:00 Server starting on port 8080...
2024/01/01 12:00:00 Using API base URL: https://api.openai.com
2024/01/01 12:00:00 Open http://localhost:8080 in your browser
```
### 使用方法
1. 在浏览器中打开 `http://localhost:8080`
2. 在API配置区域输入你的API Key和自定义API地址
3. 在文本输入区域输入要转换为语音的文本
4. 选择模型和声音参数
5. 点击"生成语音"按钮
6. 生成完成后,可以播放或下载音频
## 支持的声音模型
- **tts-1**: 标准模型,速度快
- **tts-1-hd**: 高清模型,质量更高
## 支持的声音类型
- **alloy**: 清晰自然的声音
- **echo**: 沉稳有力的声音
- **fable**: 温暖亲切的声音
- **onyx**: 成熟稳重的声音
- **nova**: 活泼开朗的声音
- **shimmer**: 柔美动听的声音
## 项目结构
```
.
├── main.go # Go后端主程序
├── index.html # 前端HTML页面
├── styles.css # 前端CSS样式
├── app.js # 前端JavaScript
├── config.example.json # 配置文件示例
└── README.md # 项目说明文档
```
## API端点
### POST /api/tts
生成语音的API端点,请求体格式:
```json
{
"api_key": "sk-...",
"text": "要转换的文本",
"voice": "alloy",
"model": "tts-1-hd",
"api_base": "https://your-api-address.com"
}
```
响应:
- 成功:返回MP3音频文件(Content-Type: audio/mpeg)
- 失败:返回JSON格式的错误信息
## 注意事项
1. 请确保你的API Key有效且有足够的配额
2. 自定义API地址需要兼容OpenAI TTS API的接口格式
3. 文本长度建议不超过4096个字符
4. 生成的音频文件会自动下载到你的默认下载目录
## 浏览器支持
- Chrome 60+
- Firefox 55+
- Safari 12+
- Edge 79+
## 许可证
MIT License
## 贡献
欢迎提交Issue和Pull Request!
## 联系方式
如有问题或建议,请通过GitHub Issues反馈。