# 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反馈。