P1-2: 剪辑计划统一渲染链路打通 - 收敛RenderAdapter + 补齐BGM和ASR自动字幕 #442
Merged
xiaoxia
merged 2 commits from 2026-07-17 12:31:05 +08:00
feature/p1-2-edit-plan-render-link into develop
2 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
d1627d5aaf |
fix: black format code quality issues
CI Build & Deploy Pipeline / Build Staging API Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Build Staging Web Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Build Staging Worker Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI Build & Deploy Pipeline / Build Production API Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Build Production Web Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Build Production Worker Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Staging E2E Tests (pull_request) Has been skipped
CI Build & Deploy Pipeline / Staging API Integration Tests (pull_request) Has been skipped
CI Build & Deploy Pipeline / Deploy Production (pull_request) Has been skipped
CI Build & Deploy Pipeline / Production Browser E2E (pull_request) Has been skipped
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 10s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 36s
AI Code Review / AI Code Review (pull_request) Successful in 1m5s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Successful in 2m3s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 2m44s
Auto Approve CI PRs / Auto Approve on CI Green (pull_request) Successful in 2m58s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 1m18s
|
||
|
|
6bdab42224 |
P1-2: 剪辑计划统一渲染链路打通 - 收敛RenderAdapter + 补齐BGM和ASR自动字幕
CI Build & Deploy Pipeline / Build Staging API Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Build Staging Web Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Build Staging Worker Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Build Production API Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Build Production Web Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Build Production Worker Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI Build & Deploy Pipeline / Deploy Production (pull_request) Has been skipped
CI Build & Deploy Pipeline / Staging E2E Tests (pull_request) Has been skipped
CI Build & Deploy Pipeline / Staging API Integration Tests (pull_request) Has been skipped
CI Build & Deploy Pipeline / Production Browser E2E (pull_request) Has been skipped
AI Code Review / AI Code Review (pull_request) Failing after 31s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 6s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 38s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Failing after 39s
Auto Approve CI PRs / Auto Approve on CI Green (pull_request) Successful in 2m55s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 1m35s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 2m44s
## 改动内容 ### 1. RenderAdapter 增强(render_adapter.py) - 新增 BGM 准备逻辑:支持 URL/素材库/预设库三种来源,失败降级不阻断 - 新增 ASR 服务初始化:自动字幕支持,初始化失败降级 - _download_assets 返回值扩展为 (asset_map, rendered_ids, failed_ids) - RenderAdapterResult 增加 rendered_clip_ids / failed_clip_ids 字段 - render_plan 调用 UnifiedRenderService 时传入 bgm_path 和 asr_service ### 2. 剪辑计划渲染收敛(edit_plan_generation.py) - _render_with_unified 从直接调 UnifiedRenderService 改为通过 RenderAdapter - 消除与 compose_video 的重复代码(素材下载+渲染+上传) - 主流程按引擎分支:unified 走 RenderAdapter,legacy 保留原逻辑 - 移除顶部不再使用的 UnifiedRenderService 直接导入 ### 3. 单元测试(test_render_adapter.py) - 修复 _download_assets 返回值变化的测试 - 新增 TestPrepareBgm:7 个用例覆盖三种来源+优先级+失败降级 - 新增 TestGetAsrService:3 个用例覆盖可用/导入失败/初始化失败 - 新增 TestRenderPlanWithBgmAsr:3 个集成用例 - 共 31 个测试全部通过 ## 三个 P0 断点修复 ✅ BGM 未接入 → RenderAdapter._prepare_bgm 自动从 plan.config.bgm 读取 ✅ ASR 自动字幕未接入 → RenderAdapter._get_asr_service 自动初始化 ✅ 代码重复 → edit_plan_generation 与 compose_video 统一走 RenderAdapter |