feat: 转场特效 - 预设库 + 单片段设置 + 批量应用 #398

Merged
xiaoxia merged 2 commits from feat/transition-management into develop 2026-07-17 10:52:12 +08:00
Owner

功能

转场特效完整后端能力:

转场预设库(21个)

  • 基础:无转场/随机(2个)
  • 淡入淡出:交叉淡入/黑场/白场/灰度(4个)
  • 滑动:左滑/右滑/上滑/下滑(4个)
  • 缩放:放大进入/缩小退出(2个)
  • 擦除:溶解/四向擦除/圆形展开(7个)
  • 特效:水平模糊/模糊擦除(2个)

API 接口

  • GET /api/v1/edit-plans/transition-presets — 转场预设列表(分类筛选+关键词搜索)
  • PUT /api/v1/edit-plans/clips/{clip_id}/transition — 设置单个片段转场
  • POST /api/v1/edit-plans/{plan_id}/transitions/batch — 批量设置转场
    • apply_to: all / except_first / except_last / middle

核心实现

  • 每个预设定义默认时长、最小最大时长
  • 超出时长范围自动钳制
  • 硬切(transition_none)特殊处理,时长强制为0
  • 复用现有片段 transition_effect / transition_duration 字段

测试

  • 21个单元测试全覆盖
  • 原有剪辑计划测试零回归
## 功能 转场特效完整后端能力: ### 转场预设库(21个) - **基础**:无转场/随机(2个) - **淡入淡出**:交叉淡入/黑场/白场/灰度(4个) - **滑动**:左滑/右滑/上滑/下滑(4个) - **缩放**:放大进入/缩小退出(2个) - **擦除**:溶解/四向擦除/圆形展开(7个) - **特效**:水平模糊/模糊擦除(2个) ### API 接口 - **GET** `/api/v1/edit-plans/transition-presets` — 转场预设列表(分类筛选+关键词搜索) - **PUT** `/api/v1/edit-plans/clips/{clip_id}/transition` — 设置单个片段转场 - **POST** `/api/v1/edit-plans/{plan_id}/transitions/batch` — 批量设置转场 - apply_to: all / except_first / except_last / middle ### 核心实现 - 每个预设定义默认时长、最小最大时长 - 超出时长范围自动钳制 - 硬切(transition_none)特殊处理,时长强制为0 - 复用现有片段 transition_effect / transition_duration 字段 ### 测试 - 21个单元测试全覆盖 - 原有剪辑计划测试零回归
auto-approve-bot approved these changes 2026-07-16 11:37:52 +08:00
auto-approve-bot left a comment
Collaborator

CI全绿,自动审批通过。

CI全绿,自动审批通过。
xiaoxia force-pushed feat/transition-management from b9a5fed81a to b4d9ea3cf7 2026-07-16 13:49:42 +08:00 Compare
xiaoxia force-pushed feat/transition-management from 6c70f27276 to e79dace2b6 2026-07-17 01:17:01 +08:00 Compare
xiaoxia force-pushed feat/transition-management from e79dace2b6 to c84359f681 2026-07-17 07:33:26 +08:00 Compare
xiaoxia added 2 commits 2026-07-17 10:06:02 +08:00
- 21个转场预设(基础/淡入淡出/滑动/缩放/擦除/特效 6大类)
- GET /transition-presets 转场预设列表(分类筛选+关键词搜索)
- PUT /clips/{clip_id}/transition 设置单个片段转场效果
- POST /{plan_id}/transitions/batch 批量设置转场(all/except_first/except_last/middle)
- 自动时长钳制、硬切特殊处理为 transition_none
- 21个单元测试全覆盖
chore: re-trigger CI
CI Build & Deploy Pipeline / Build Staging API Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Build Staging Worker Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Build Staging Web 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 19s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 53s
AI Code Review / AI Code Review (pull_request) Successful in 2m54s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Successful in 2m50s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 3m51s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 2m5s
863937b216
xiaoxia force-pushed feat/transition-management from c84359f681 to 863937b216 2026-07-17 10:06:02 +08:00 Compare
xiaoxia merged commit 6aec0ec6f4 into develop 2026-07-17 10:52:12 +08:00
xiaoxia deleted branch feat/transition-management 2026-07-17 10:52:12 +08:00
Sign in to join this conversation.