Initial lip-sync service with command backend
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
# 开发任务清单
|
||||
|
||||
## Phase 0:联调基线
|
||||
|
||||
- [x] 创建独立 Gradio 服务项目。
|
||||
- [x] 提供 `/process_single` 接口。
|
||||
- [x] 提供 `ffmpeg_mux` 链路验证后端。
|
||||
- [x] 提供 PowerShell 启动脚本。
|
||||
- [x] 提供 Gradio client 测试脚本。
|
||||
- [ ] 在本机安装依赖并启动服务。
|
||||
- [ ] 使用一段真实音频和视频跑通 `scripts/test-client.ps1`。
|
||||
- [ ] 用 `aIzhinengti/scripts/digital_human_process.py` 跑通主项目调用链路。
|
||||
|
||||
## Phase 1:真实模型接入
|
||||
|
||||
- [ ] 选择第一版真实后端:建议先做 Wav2Lip 或 MuseTalk。
|
||||
- [ ] 准备模型目录,但不提交权重。
|
||||
- [x] 写好 `LIPSYNC_COMMAND_TEMPLATE` 示例。
|
||||
- [ ] 确认模型推理脚本可以消费 `{audio}`、`{video}`、`{output}`。
|
||||
- [ ] 将输出统一为 mp4。
|
||||
- [x] 在失败时把 stderr 末尾写进错误信息。
|
||||
- [ ] 记录一次成功推理的命令、耗时、显存占用。
|
||||
|
||||
## Phase 2:专用后端封装
|
||||
|
||||
- [ ] 将 `backends.py` 拆分为后端包,例如 `backends/command.py`、`backends/ffmpeg.py`。
|
||||
- [ ] 新增后端注册表,避免 `if/else` 持续膨胀。
|
||||
- [ ] 为 Wav2Lip/MuseTalk/LstmSync 添加专用配置项。
|
||||
- [ ] 支持模型预热或健康检查。
|
||||
- [ ] 支持并发限制和队列状态说明。
|
||||
|
||||
## Phase 3:工程化
|
||||
|
||||
- [ ] 增加结构化日志。
|
||||
- [ ] 增加输出目录清理策略。
|
||||
- [ ] 增加临时工作目录清理策略。
|
||||
- [ ] 增加 `GET /health` 或 Gradio 旁路健康检查服务。
|
||||
- [ ] 增加端口占用提示。
|
||||
- [ ] 增加 Windows 防火墙/局域网部署说明。
|
||||
|
||||
## Phase 4:测试与验收
|
||||
|
||||
- [ ] 增加单元测试:输入 payload 规范化。
|
||||
- [ ] 增加单元测试:后端命令模板渲染。
|
||||
- [ ] 增加集成测试:`copy_video` 或 `ffmpeg_mux`。
|
||||
- [ ] 增加主项目兼容性测试说明。
|
||||
- [ ] 建立一套测试素材路径约定,但不提交大视频。
|
||||
|
||||
## Phase 5:可选增强
|
||||
|
||||
- [ ] 增加字幕输出。
|
||||
- [ ] 增加脸部检测失败诊断。
|
||||
- [ ] 增加音画同步偏移参数。
|
||||
- [ ] 增加分辨率/码率/批大小参数。
|
||||
- [ ] 增加 Web UI 中的高级参数面板。
|
||||
Reference in New Issue
Block a user