feat(video-pipeline): 重构多阶段生成管线并集成 CosyVoice TTS

- 重写 `phase-images`:改为并发 3 张并行生成,每个 item 完成立即写入 manifest,支持 MJ task ID 恢复
- 重写 `phase-videos`:先恢复已有 task ID 再提交新任务(并发 3),支持中断恢复
- 迁移 TTS 引擎:从 Qwen-TTS HTTP 接口切换为 CosyVoice WebSocket 接口,支持音色/语气参数透传
- 精简账号系统:移除 `styles/` 目录、`taskId` 过滤和 `--id` 正则校验,`references` 改为顶层字段
- 调整 `slugify`:限制中文字符 5 个、其他 10 个,避免文件名过长
- 更新文档:`manifest-schema.md` 中 `narration` 改为完整原文案,`account-creation.md` 新增 TTS 配置项
- 配置更新:默认 TTS 模型切换为 `cosyvoice-v3.5-plus`,新增 `localAudio` 参数
This commit is contained in:
2026-05-01 00:44:18 +08:00
parent 3326f6cb37
commit 7d526d2b60
19 changed files with 888 additions and 411 deletions

View File

@@ -89,6 +89,8 @@ Phase 4: 技术配置(有默认值,可跳过)
| 12 | 生图模型? | gemini | account.json 的 imageModel |
| 13 | 视频模型? | veo3-fast | account.json 的 videoModel |
| 14 | 参考图文件? | 无 | 用户稍后放入 references/ 目录Agent 上传 OSS 回写 URL |
| 15 | TTS 音色? | config.json 全局 ttsVoice | account.json 的 ttsVoice留空用全局默认 |
| 16 | TTS 语气指令? | 无 | account.json 的 ttsInstruction描述期望的语气风格 |
**运动偏好 → 视频提示词映射**
@@ -128,6 +130,8 @@ Phase 4: 技术配置(有默认值,可跳过)
- 画幅:{Q11}
- 生图模型:{Q12}
- 视频模型:{Q13}
- TTS音色{Q15}
- TTS语气{Q16}
确认 "开始" → 创建账号
修改 → 调整后重新输出

View File

@@ -58,7 +58,7 @@ node pipeline.js validate --manifest <path>
|------|------|
| `status` | 固定写 `"pending"` |
| `shotDesc` | 英文分镜描述含隐性动势40-80词 |
| `narration` | 中文口播旁白≤22字 |
| `narration` | **该段的完整原文案**(不提炼,保留论证、例子、细节)|
| `duration` | 计划视频时长(秒),来自分镜阶段 |
| `imagePrompt` | 英文画面描述(给 Gemini/MJStep 2-A 生成 |
| `directorRef` | 导演构图参考tarantino / kitano / fincher三层透传 |