# AI 有声书生成工具

> 将文字转换为高质量音频，让阅读变成聆听

## 🎯 项目简介

AI 有声书生成工具是一款面向内容创作者的音频制作工具，帮助自媒体作者、小说爱好者、学习者低成本制作音频内容。

### 核心功能

- 📝 **文本转音频**：支持长文本输入，智能分段处理
- 🎵 **多种音色**：10+ 种优质音色可选
- 🎛️ **参数调节**：语速、音调、音量自由控制
- 🎧 **在线播放**：支持倍速播放、进度控制
- 📚 **历史管理**：音频记录、收藏功能
- 👑 **会员体系**：分级权益，灵活选择

## 🛠️ 技术栈

### 前端
- **uniapp** + **Vue 3** + **TypeScript**
- **Pinia** 状态管理
- 支持 H5 和微信小程序

### 后端
- **Node.js 18** + **Koa 2.x**
- **MongoDB** + **Mongoose**
- **FFmpeg** 音频处理
- 阿里云 TTS 语音合成

## 📁 项目结构

```
audio/
├── client/          # uniapp 前端项目
│   ├── src/
│   │   ├── pages/   # 页面
│   │   ├── store/   # 状态管理
│   │   ├── utils/   # 工具函数
│   │   └── types/   # 类型定义
│   └── package.json
│
├── server/          # Node.js 后端项目
│   ├── src/
│   │   ├── modules/ # 业务模块
│   │   ├── models/  # 数据模型
│   │   ├── middleware/ # 中间件
│   │   └── config/  # 配置
│   └── package.json
│
└── README.md
```

## 🚀 快速开始

### 环境要求

- Node.js >= 18
- MongoDB >= 6.0
- FFmpeg（用于音频处理）

### 后端启动

```bash
cd server

# 安装依赖
npm install

# 复制环境配置
cp .env.example .env

# 启动开发服务
npm run dev
```

### 前端启动

```bash
cd client

# 安装依赖
npm install

# 启动 H5 开发服务
npm run dev:h5

# 编译微信小程序
npm run build:mp-weixin
```

## ⚙️ 配置说明

### 后端环境变量

```env
# 服务配置
PORT=3000
NODE_ENV=development

# MySQL 数据库
DATABASE_URL="mysql://root:password@localhost:3306/audio-book"

# JWT
JWT_SECRET=your-jwt-secret
JWT_EXPIRES_IN=7d

# 阿里云 TTS
ALIYUN_ACCESS_KEY=your-access-key
ALIYUN_ACCESS_SECRET=your-access-secret
ALIYUN_APP_KEY=your-app-key
```

## 📡 API 接口

### 认证模块
- `POST /api/auth/send-code` - 发送验证码
- `POST /api/auth/login` - 手机号登录
- `GET /api/auth/user-info` - 获取用户信息

### TTS 模块
- `GET /api/tts/voices` - 获取音色列表
- `POST /api/tts/generate` - 生成音频

### 音频模块
- `GET /api/audio/list` - 获取音频列表
- `GET /api/audio/:id` - 获取音频详情
- `DELETE /api/audio/:id` - 删除音频
- `PUT /api/audio/:id/favorite` - 切换收藏

### 会员模块
- `GET /api/member/benefits` - 获取会员权益
- `GET /api/member/status` - 获取会员状态
- `POST /api/member/order` - 创建订单

## 👑 会员权益

| 权益 | 免费版 | 月度会员 | 年度会员 |
|------|--------|----------|----------|
| 价格 | ¥0 | ¥19.9/月 | ¥199/年 |
| 每日次数 | 3次 | 20次 | 无限 |
| 字数限制 | 5000字 | 50000字 | 无限 |
| 音色选择 | 基础 | 全部 | 全部 |

## 📝 开发计划

### MVP 阶段（2周）
- [x] 项目初始化
- [x] 用户登录（手机号）
- [x] TTS 核心功能
- [x] 音频播放器
- [x] 历史记录
- [x] 会员系统基础版

### V1.0 阶段（1个月）
- [ ] 智能简介生成
- [ ] 更多音色选择
- [ ] 分享功能
- [ ] 管理后台

### V1.5 阶段（2-3个月）
- [ ] 批量生成
- [ ] 音频编辑功能
- [ ] 导出多种格式

## 📄 License

MIT License