feat: 片段调整 - 调速 + 音量 + 裁剪 + 批量调速 #400

Merged
xiaoxia merged 1 commits from feat/clip-adjustments into develop 2026-07-17 10:01:35 +08:00
Owner

功能

片段调整完整后端能力:

API 接口

  • PUT /api/v1/edit-plans/clips/{clip_id}/speed — 调速(0.25~4.0倍)
  • PUT /api/v1/edit-plans/clips/{clip_id}/volume — 音量调节(0~2.0倍)
  • PUT /api/v1/edit-plans/clips/{clip_id}/trim — 裁剪(trim_start + trim_end)
  • PUT /api/v1/edit-plans/clips/{clip_id}/adjustments — 统一调整(speed+volume+trim 同时改)
  • POST /api/v1/edit-plans/{plan_id}/clips/batch-speed — 批量调速

核心实现

  • 速度复用现有 playback_speed 字段,范围钳制 0.25~4.0
  • 音量/裁剪存储在 clip.config,零侵入数据模型
  • 裁剪时长校验:trim_start + trim_end < 片段总时长
  • 统一调整接口支持部分更新,只传需要改的字段

测试

  • 25个单元测试全覆盖
  • 原有剪辑计划测试零回归
## 功能 片段调整完整后端能力: ### API 接口 - **PUT** `/api/v1/edit-plans/clips/{clip_id}/speed` — 调速(0.25~4.0倍) - **PUT** `/api/v1/edit-plans/clips/{clip_id}/volume` — 音量调节(0~2.0倍) - **PUT** `/api/v1/edit-plans/clips/{clip_id}/trim` — 裁剪(trim_start + trim_end) - **PUT** `/api/v1/edit-plans/clips/{clip_id}/adjustments` — 统一调整(speed+volume+trim 同时改) - **POST** `/api/v1/edit-plans/{plan_id}/clips/batch-speed` — 批量调速 ### 核心实现 - 速度复用现有 playback_speed 字段,范围钳制 0.25~4.0 - 音量/裁剪存储在 clip.config,零侵入数据模型 - 裁剪时长校验:trim_start + trim_end < 片段总时长 - 统一调整接口支持部分更新,只传需要改的字段 ### 测试 - 25个单元测试全覆盖 - 原有剪辑计划测试零回归
xiaoxia force-pushed feat/clip-adjustments from 8b15283a67 to e3e5b1ad9c 2026-07-16 13:50:12 +08:00 Compare
auto-approve-bot approved these changes 2026-07-16 21:52:57 +08:00
auto-approve-bot left a comment
Collaborator

CI全绿,自动审批通过。

CI全绿,自动审批通过。
xiaoxia force-pushed feat/clip-adjustments from e96ea13f0c to 48290dad70 2026-07-17 01:20:12 +08:00 Compare
xiaoxia force-pushed feat/clip-adjustments from 48290dad70 to 9ac04a6077 2026-07-17 07:39:20 +08:00 Compare
xiaoxia added 1 commit 2026-07-17 09:39:37 +08:00
feat: 片段调整 - 调速 + 音量 + 裁剪 + 批量调速
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 / 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
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 17s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 51s
AI Code Review / AI Code Review (pull_request) Successful in 1m58s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Successful in 2m52s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 2m55s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 2m8s
e7bdc48c49
- PUT /clips/{id}/speed 调速(0.25~4.0倍)
- PUT /clips/{id}/volume 音量调节(0~2.0倍)
- PUT /clips/{id}/trim 裁剪(trim_start + trim_end)
- PUT /clips/{id}/adjustments 统一调整(speed+volume+trim)
- POST /{plan_id}/clips/batch-speed 批量调速
- 裁剪时长校验,不能超过片段总时长
- 音量/裁剪存储在 clip.config,零侵入数据模型
- 25个单元测试全覆盖
xiaoxia force-pushed feat/clip-adjustments from 9ac04a6077 to e7bdc48c49 2026-07-17 09:39:37 +08:00 Compare
xiaoxia merged commit 61c41e8755 into develop 2026-07-17 10:01:35 +08:00
xiaoxia deleted branch feat/clip-adjustments 2026-07-17 10:01:35 +08:00
Sign in to join this conversation.