开发路线图.md 14 KB

开发路线图

本文引用的文件

  • README.md
  • FEATURE_CHECKLIST.md
  • .plans/audiobook-v2-ux/task_plan.md
  • .plans/audiobook-v2-ux/team-snapshot.md
  • .plans/audiobook-v2-ux/frontend-dev/task_plan.md
  • .plans/audiobook-v2-ux/backend-dev/task_plan.md
  • docs/API.md
  • docs/database-structure.md
  • docs/TTS成本分析报告.md
  • docs/播放页设计方案.md
  • docs/支付集成指南.md
  • docs/订阅系统使用说明.md
  • my-uniapp-vue3/src/pages/player/index.vue
  • my-uniapp-vue3/src/pages/history/index.vue
  • my-uniapp-vue3/src/pages/book-generator/index.vue
  • my-uniapp-vue3/src/pages/book-generator/chapter-detail.vue
  • server/src/modules/tts/tts.controller.ts
  • server/src/modules/player/player.controller.ts
  • server/src/modules/member/member.controller.ts
  • server/src/modules/share/share.controller.ts
  • server/src/modules/book-generator/book-generator.controller.ts
  • server/src/modules/audioedit/audioedit.controller.ts
  • server/src/modules/publish/publish.controller.ts

目录

  1. 引言
  2. 项目结构
  3. 核心组件
  4. 架构总览
  5. 详细组件分析
  6. 依赖关系分析
  7. 性能考虑
  8. 故障排查指南
  9. 结论
  10. 附录

引言

本开发路线图面向AI有声书生成平台,系统性梳理从MVP到V1.0再到V1.5的发展蓝图,明确各阶段里程碑、交付物与优先级策略。当前仓库已实现MVP阶段核心能力(项目初始化、用户登录、TTS核心功能、音频播放器、历史记录、基础会员系统),并进入UX优化阶段。本文在现有基础上扩展规划V1.0与V1.5的关键功能,提供可执行的实施路径与资源分配建议。

项目结构

项目采用前后端分离架构:

  • 前端:基于uniapp + Vue 3 + TypeScript,支持H5与小程序双端
  • 后端:基于Node.js + Koa,模块化组织业务域(TTS、播放器、会员、分享、书籍生成等)
  • 数据层:MongoDB + Mongoose;FFmpeg用于音频处理
  • 关键模块:认证、TTS、播放器、历史、会员、分享、书籍生成、音频编辑、发布等

    graph TB
    FE["前端<br/>uniapp + Vue 3 + TypeScript"] --> BE["后端<br/>Node.js + Koa"]
    BE --> DB["数据库<br/>MongoDB + Mongoose"]
    BE --> TTS["TTS服务<br/>阿里云/Minimax/Mock"]
    BE --> FF["音频处理<br/>FFmpeg"]
    FE --> API["API接口"]
    BE --> API
    

图表来源

  • README.md: 18-30:18-30
  • docs/database-structure.md

章节来源

  • README.md: 18-30:18-30
  • docs/database-structure.md

核心组件

  • 认证模块:手机号登录、用户信息获取、JWT鉴权
  • TTS模块:音色列表、音频生成、实时/离线合成、音频合并
  • 播放器模块:播放控制、播放模式切换、进度控制、倍速播放
  • 历史模块:历史记录查询、收藏、批量管理
  • 会员模块:权益查询、状态查询、订单创建
  • 书籍生成模块:大纲生成、章节内容生成、批量编排
  • 分享模块:分享链接生成与传播
  • 音频编辑模块:剪辑、拼接、降噪等
  • 发布模块:多格式导出、社交平台发布

章节来源

  • README.md: 114-144:114-144
  • docs/API.md

架构总览

整体架构围绕“前端页面 + 后端服务 + 数据存储 + 外部服务”的四层结构展开。前端通过RESTful API与后端交互,后端聚合TTS与FFmpeg能力,统一输出音频资源与播放体验。

graph TB
subgraph "前端层"
UI["页面组件<br/>播放页/历史/书籍生成/会员"]
end
subgraph "后端层"
AUTH["认证模块"]
TTS["TTS模块"]
PLAYER["播放器模块"]
HISTORY["历史模块"]
MEMBER["会员模块"]
SHARE["分享模块"]
GEN["书籍生成模块"]
EDIT["音频编辑模块"]
PUB["发布模块"]
end
subgraph "基础设施"
DB["MongoDB"]
OSS["对象存储"]
WS["WebSocket"]
end
UI --> AUTH
UI --> TTS
UI --> PLAYER
UI --> HISTORY
UI --> MEMBER
UI --> SHARE
UI --> GEN
UI --> EDIT
UI --> PUB
AUTH --> DB
TTS --> DB
PLAYER --> DB
HISTORY --> DB
MEMBER --> DB
SHARE --> DB
GEN --> DB
EDIT --> DB
PUB --> DB
TTS --> OSS
PLAYER --> OSS
GEN --> OSS
EDIT --> OSS
PUB --> OSS
GEN --> WS
PLAYER --> WS

图表来源

  • docs/API.md
  • server/src/modules/tts/tts.controller.ts
  • server/src/modules/player/player.controller.ts
  • server/src/modules/member/member.controller.ts
  • server/src/modules/share/share.controller.ts
  • server/src/modules/book-generator/book-generator.controller.ts
  • server/src/modules/audioedit/audioedit.controller.ts
  • server/src/modules/publish/publish.controller.ts

详细组件分析

MVP阶段(2周)已完成核心功能

  • 项目初始化:前后端工程搭建、开发环境配置、基础依赖安装
  • 用户登录:手机号验证码登录、用户信息获取、JWT鉴权中间件
  • TTS核心功能:音色列表查询、文本转音频、音频合并、播放URL生成
  • 音频播放器:播放/暂停、进度控制、倍速播放、播放模式切换
  • 历史记录:音频生成历史、收藏管理、批量删除/下载
  • 基础会员系统:权益查询、状态查询、订单创建

    flowchart TD
    Start(["MVP阶段开始"]) --> Init["项目初始化"]
    Init --> Login["用户登录"]
    Login --> TTS["TTS核心功能"]
    TTS --> Player["音频播放器"]
    Player --> History["历史记录"]
    History --> Member["基础会员系统"]
    Member --> End(["MVP阶段完成"])
    

图表来源

  • README.md: 147-153:147-153

章节来源

  • README.md: 147-153:147-153
  • FEATURE_CHECKLIST.md: 1-150:1-150

V1.0阶段(1个月)规划功能

  • 智能简介生成:基于LLM生成书籍/章节简介,提升内容可读性
  • 更多音色选择:接入更多TTS音色,支持音色试听与切换
  • 分享功能:生成分享链接,支持社交平台传播
  • 管理后台:内容审核、用户管理、数据看板、运营工具

    sequenceDiagram
    participant U as "用户"
    participant F as "前端页面"
    participant B as "后端服务"
    participant L as "LLM服务"
    participant T as "TTS服务"
    U->>F : "输入书籍主题/章节内容"
    F->>B : "请求智能简介生成"
    B->>L : "调用LLM生成简介"
    L-->>B : "返回简介内容"
    B-->>F : "返回简介"
    F-->>U : "展示并可继续生成音频"
    

图表来源

  • server/src/modules/book-generator/book-generator.controller.ts
  • server/src/services/llm/index.ts

章节来源

  • README.md: 155-159:155-159

V1.5阶段(2-3个月)长期规划

  • 批量生成功能:支持多章节/多书籍并发生成,提供进度可视化与失败重试
  • 音频编辑能力:剪辑、拼接、降噪、淡入淡出等基础编辑功能
  • 多格式导出支持:MP3、M4A、WAV、AAC等格式,满足不同平台需求

    flowchart TD
    BatchStart["批量生成入口"] --> Select["选择书籍/章节"]
    Select --> Queue["加入生成队列"]
    Queue --> Progress["实时进度监控"]
    Progress --> Retry{"是否失败?"}
    Retry -- 是 --> AutoRetry["自动重试/人工干预"]
    Retry -- 否 --> Merge["音频合并"]
    AutoRetry --> Merge
    Merge --> Export["多格式导出"]
    Export --> Done["完成并通知"]
    

图表来源

  • server/src/modules/book-generator/book-generator.controller.ts
  • server/src/modules/audioedit/audioedit.controller.ts
  • server/src/modules/publish/publish.controller.ts

章节来源

  • README.md: 161-164:161-164

概念性总览

以下为概念性流程图,展示从内容创作到音频发布的完整链路,便于理解各模块协作关系。

flowchart LR
Content["内容输入"] --> Outline["大纲生成"]
Outline --> Chapters["章节生成"]
Chapters --> TTSGen["TTS生成"]
TTSGen --> Merge["音频合并"]
Merge --> Edit["音频编辑"]
Edit --> Export["多格式导出"]
Export --> Publish["发布/分享"]

[此图为概念性示意,无需图表来源]

依赖关系分析

  • 前端依赖后端API:播放页、历史页、书籍生成页均依赖对应控制器接口
  • 后端模块耦合:TTS模块与音频处理强耦合,播放器模块依赖历史与收藏数据
  • 外部依赖:阿里云TTS、WebSocket推送、对象存储、FFmpeg

    graph TB
    FE_Player["播放页"] --> API_Player["播放器API"]
    FE_History["历史页"] --> API_History["历史API"]
    FE_Book["书籍生成页"] --> API_Book["书籍生成API"]
    API_Player --> Svc_Player["播放器服务"]
    API_History --> Svc_History["历史服务"]
    API_Book --> Svc_Book["书籍生成服务"]
    Svc_Book --> Svc_TTS["TTS服务"]
    Svc_TTS --> Ext_TTS["外部TTS"]
    

图表来源

  • docs/API.md
  • my-uniapp-vue3/src/pages/player/index.vue
  • my-uniapp-vue3/src/pages/history/index.vue
  • my-uniapp-vue3/src/pages/book-generator/index.vue

章节来源

  • docs/API.md

性能考虑

  • TTS成本控制:结合字数限制与音色选择,优化生成策略与缓存
  • 音频处理:合理设置FFmpeg参数,避免重复编码;批量生成时采用队列与并发控制
  • 播放体验:播放器预加载与断点续播,减少首帧延迟
  • 数据库优化:历史记录分页查询、索引优化、定期归档

章节来源

  • docs/TTS成本分析报告.md
  • docs/播放页设计方案.md

故障排查指南

  • 登录/鉴权问题:检查JWT密钥配置与过期时间,确认中间件拦截逻辑
  • TTS生成失败:核对阿里云凭证、网络连通性与限流策略
  • 播放异常:确认音频URL有效性、跨域配置与CDN缓存
  • 历史记录缺失:检查数据库连接、索引与权限
  • 会员状态异常:核对订单状态与回调处理

章节来源

  • docs/app-troubleshooting.md
  • docs/支付集成指南.md
  • docs/订阅系统使用说明.md

结论

本路线图以MVP为基础,逐步扩展至V1.0与V1.5,形成从“可用”到“好用”再到“专业”的演进路径。建议优先保障核心稳定性(播放、历史、TTS),再推进UX优化与高级功能。通过模块化设计与清晰的API契约,确保各阶段交付质量与可维护性。

附录

阶段里程碑与交付物

  • MVP(2周)
    • 交付:登录、TTS、播放器、历史、基础会员
    • 验收:功能清单核对、UI一致性检查
  • V1.0(1个月)
    • 交付:智能简介、更多音色、分享、管理后台
    • 验收:API契约更新、文档同步、回归测试
  • V1.5(2-3个月)
    • 交付:批量生成、音频编辑、多格式导出
    • 验收:性能基准测试、兼容性验证、运维监控完善

章节来源

  • README.md: 145-164:145-164

优先级排序与资源分配策略

  • P0:紧急修复与关键缺陷(如轮询超时、WebSocket推送)
  • P1:重要但非紧急功能(如一键完整生成、全局骨架屏)
  • P2:体验提升(封面升级、手势切换、动态卡片)
  • P3:锦上添花(热词缓存、返回按钮、确认弹窗)

资源分配建议:

  • 前端:交互优化为主,保持与后端API契约一致
  • 后端:重点补齐WebSocket推送、批量编排、LRC歌词时间轴等支撑能力
  • 测试:自动化回归与性能压测并行
  • 文档:API与架构文档同步更新

章节来源

  • .plans/audiobook-v2-ux/task_plan.md: 44-65:44-65
  • .plans/audiobook-v2-ux/team-snapshot.md: 73-80:73-80
  • .plans/audiobook-v2-ux/backend-dev/task_plan.md: 14-22:14-22
  • .plans/audiobook-v2-ux/frontend-dev/task_plan.md: 24-28:24-28