Commit Graph

4 Commits

Author SHA1 Message Date
xiaoxia-bot 76d82322fe chore: black + isort 格式化
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 1m10s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 1m17s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Successful in 3m16s
CI/CD Pipeline / Build & Push Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI/CD Pipeline / Build Production Runtime Images (pull_request) Has been skipped
CI/CD Pipeline / Staging E2E Tests (pull_request) Has been skipped
CI/CD Pipeline / Staging API Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
CI/CD Pipeline / Integration Tests (pull_request) Failing after 1m36s
2026-07-14 10:35:46 +08:00
CI Bot 251201c2c8 feat: 绿幕抠像 + 音频降噪引擎
新增两个渲染能力:

【绿幕抠像 ChromaKeyEngine】
- 基于 FFmpeg colorkey 滤镜,支持绿幕/蓝幕/红幕
- 可配置:抠除颜色、相似度、边缘平滑、溢色抑制
- 5种预设:green_screen/blue_screen/red_screen/precise_green/soft_green
- 从 clip.config.chroma_key 读取配置,零侵入数据模型
- 降级策略:参数越界自动钳制,解析失败不阻断渲染

【音频降噪 NoiseReductionEngine】
- 基于 FFmpeg afftdn 滤镜(短时傅里叶变换降噪)
- 3档预设:低/中/高 + 自定义阈值(-60~-5 dB)
- 人声增强模式:highpass + compressor + loudnorm
- 从 plan.config.audio_noise_reduction 读取配置
- 降级策略:参数越界自动钳制,降噪失败用原始音频

【系统集成】
- 绿幕抠像:UnifiedRenderService Step 1 接入(scale之后,fps之前)
  - 支持 filter_complex 路径 + 直通模式 双路径
- 音频降噪:后处理模式,在 mix_audio 最终输出前应用
  - filter_complex 路径通过 RenderContext 传递配置
  - 直通模式通过 -af 参数应用

69个新增单测 + 1435个现有测试 = 1504个全绿,零回归
2026-07-14 10:35:29 +08:00
xiaoxia 881eea9195 fix(api+ci): DELETE 204响应体全修复 + isort/black整理 + CI环境兼容 + 测试修复 (#286)
CI/CD Pipeline / Validate Code Quality And Tests (push) Successful in 36s
CI/CD Pipeline / Frontend Lint (push) Successful in 51s
CI/CD Pipeline / Build Production Runtime Images (push) Has been skipped
CI/CD Pipeline / Deploy Production (push) Has been skipped
CI/CD Pipeline / Production Browser E2E (push) Has been skipped
CI/CD Pipeline / Unit Tests (push) Successful in 56s
CI/CD Pipeline / Build & Push Staging (Watchtower auto-deploy) (push) Failing after 9s
CI/CD Pipeline / Staging E2E Tests (push) Has been skipped
CI/CD Pipeline / Staging API Integration Tests (push) Has been skipped
CI/CD Pipeline / Integration Tests (push) Successful in 1m50s
fix(api+ci): DELETE 204响应体全修复 + isort/black整理 + CI环境兼容 + 测试修复
2026-07-14 07:07:51 +08:00
CI Bot 6fc1abf2f5 Phase 4 Backend P2 cleanup: 异常处理/类型注解/模块拆分/大函数拆分/配置项确认
CI/CD Pipeline / Unit Tests (pull_request) Failing after 7s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Failing after 12s
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 1m44s
CI/CD Pipeline / Build & Push Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI/CD Pipeline / Build Production Runtime Images (pull_request) Has been skipped
CI/CD Pipeline / Staging E2E Tests (pull_request) Has been skipped
CI/CD Pipeline / Staging API Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
CI/CD Pipeline / Integration Tests (pull_request) Failing after 2m36s
- P2-1: 10处 except 审查改进(细化异常类型、添加日志)
- P2-2: 22个路由函数类型注解补全
- P2-3: edit_plans.py 拆分为 4 个模块(CRUD/generation/ai/timeline)
- P2-4: generate_video + generate_plan 大函数拆分
- P2-5: unified_render_service.py 拆分(1517→984行)
  - render_audio.py: 音频混音模块(RenderContext + mix/merge 函数)
  - render_subtitles.py: ASS 字幕生成模块
- P2-6: 6个未使用配置项删除确认

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-13 20:00:54 +08:00