Files
2026-06-22 13:19:45 +08:00

155 lines
4.4 KiB
Markdown
Raw Permalink 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.
# Phase 9: 智能自动剪辑与内容增强设计
> 状态:规划中
> 前置:Phase 8 模板编排引擎上线并通过公网 smoke
> 原则:能力逐项真实接入,未接入能力不得在 UI 中假装可用
## 一、目标
Phase 9 的目标是把 Phase 8 的规则模板自动剪辑,升级为带字幕、配音、BGM、转场和内容理解的智能自动剪辑 2.0。
一句话:用户输入剪辑目标或脚本,系统自动理解素材、生成剪辑计划、补字幕/配音/BGM,并输出可下载成片。
## 二、不做范围
- 不做无门禁的外部 AI 大模型调用。
- 不做真实支付前的计费扣费闭环。
- 不做未经审核的公网模板市场。
- 不把“实验能力”包装为稳定生产功能。
## 三、核心能力
1. 字幕能力
- ASR 转写音频。
- 生成 SRT/VTT。
- FFmpeg 烧录字幕或输出外挂字幕。
2. 配音能力
- TTS 生成配音音频。
- 音频与视频时长对齐。
- SMTP 仍保持独立,不与 TTS 混用配置。
3. BGM 与音频混合
- BGM 资源库。
- 自动音量 ducking。
- 视频原声、配音、BGM 三轨混合。
4. 转场与包装
- 基础转场:淡入淡出、交叉溶解、硬切。
- 片头/片尾占位。
- Logo/水印可配置。
5. 智能脚本到剪辑计划
- 用户输入脚本/主题。
- 系统提取段落、关键词、时长目标。
- 匹配素材分类与标签。
- 生成 `EditPlan`
## 四、架构设计
### Domain
- `Transcript`
- `SubtitleTrack`
- `VoiceoverTrack`
- `MusicTrack`
- `AudioMixPlan`
- `ScriptBrief`
- `ContentIntent`
### Ports
- `SpeechToTextService`
- `TextToSpeechService`
- `MusicRepository`
- `ContentUnderstandingService`
- `SubtitleRenderer`
- `AudioMixer`
### Application Use Cases
- `CreateTranscriptUseCase`
- `GenerateSubtitleUseCase`
- `CreateVoiceoverUseCase`
- `CreateAudioMixPlanUseCase`
- `CreateEditPlanFromScriptUseCase`
- `RenderEnhancedVideoUseCase`
### Adapters
- ASR/TTS 适配器必须配置驱动。
- 缺少凭证时只能返回明确未配置错误,不 fallback 假数据。
- FFmpeg audio/video renderer 负责真实合成。
### API
- `POST /api/v1/transcripts`
- `GET /api/v1/transcripts/{id}`
- `POST /api/v1/subtitles`
- `POST /api/v1/voiceovers`
- `POST /api/v1/audio-mix-plans`
- `POST /api/v1/edit-plans/from-script`
## 五、配置与环境
- 新增外部服务配置必须进入 `.env.example``docs/CONFIGURATION.md`、release env validation。
- CI 不依赖真实外部 ASR/TTS 凭证。
- 真实外部 smoke 仅在配置完整的 staging/production 上运行。
- 生产仍使用独立 production DB/Redis/Generated 路径。
## 六、数据与任务
- 长任务全部走 Celery Worker。
- 每个增强步骤必须有可查询状态和错误信息。
- 任务状态禁止只靠前端轮询猜测。
- 生成文件必须持久化到 OSS 或 production generated 路径。
## 七、前端页面
- 生成页增加“智能生成”模式。
- 新增脚本输入区域。
- 新增字幕/配音/BGM 开关。
- 未配置能力显示“服务未配置/暂未开放”。
- 结果页显示字幕、配音、BGM、转场使用情况。
## 八、安全与权限
- 所有 workspace/project/media/generation/enhancement API 必须校验 workspace 权限。
- 上传和生成需限制文件大小、类型和任务频率。
- 外部 AI 请求不得记录用户原文到公开日志。
- 不打印密钥,只显示 configured/missing 状态。
## 九、测试与验收
### 单元测试
- ASR/TTS adapter 配置缺失行为。
- 字幕时间轴生成。
- 音频混合计划。
- 脚本到 edit plan 的确定性规则。
### 集成测试
- 上传视频 → 生成 transcript → 字幕 → edit plan → enhanced generation。
### 公网 smoke
- 使用一段小视频和短脚本。
- 输出 MP4。
- 验证 `video/mp4`、文件头、生成任务 completed、字幕/音轨 metadata。
## 十、发布门禁
- 所有新增能力必须有 feature flag 或配置门禁。
- 没配置外部服务时 UI 显示未配置,不显示假成功。
- Alembic、pytest、前端 type-check/build、公网 smoke 全部通过。
- 生产部署继续禁止生产机前端构建。
## 十一、里程碑
1. Week 1:字幕/ASR 数据模型、任务状态、配置门禁。
2. Week 2:TTS 配音与音频混合计划。
3. Week 3BGM/转场/水印真实 FFmpeg 合成。
4. Week 4:脚本到剪辑计划、前端智能生成入口。
5. Week 5:公网 smoke、监控、发布。