fix(worker): GPU直连管线音频bug修复+边缘裁剪入GPU省5s #2089

Merged
auto-approve-bot merged 1 commits from fix/gpu-pipeline-audio-and-edgecrop into develop 2026-09-28 20:17:55 +08:00

1 Commits

Author SHA1 Message Date
saas-backend-agent 42818942f1 fix(worker): GPU直连管线保留原素材音轨+BGM时长截断+GPU内随机边缘裁剪
CI/CD Pipeline / Check push changed paths (pull_request) Has been skipped
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (pull_request) Successful in 1s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 1s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Has been skipped
CI/CD Pipeline / PR Build Web Image (pull_request) Has been skipped
CI/CD Pipeline / Frontend Lint (pull_request) Has been skipped
CI/CD Pipeline / Build Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Retag skipped Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Retag skipped Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Retag skipped Staging Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (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 / ACR Image Cleanup (pull_request) Has been skipped
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 45s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 47s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m38s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 2m56s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 4m31s
CI/CD Pipeline / Validate - Style (pull_request) Successful in 4m56s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 5m0s
AI Code Review / AI Code Review (pull_request) Successful in 6m39s
CI/CD Pipeline / Validate - Python (mypy + alembic) (pull_request) Successful in 8m44s
CI/CD Pipeline / Validate - Security (pull_request) Successful in 10m5s
CI/CD Pipeline / Build Production Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production API Image (pull_request) Has been skipped
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
CI/CD Pipeline / Canary Release to Production (pull_request) Has been skipped
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
CI/CD Pipeline / CI Gate (pull_request) Successful in 1s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 7m47s
Preview Cleanup / Cleanup Preview Environment (pull_request) Successful in 1m2s
ACR Cleanup / ACR Image Cleanup (pull_request_target) Successful in 4m8s
Bug1(原素材音轨丢失):concat 改为 v=1:a=1,为每段[i:a]加 atrim/asetpts/atempo/aresample
预处理,concat 输出[acat]主音轨,再与TTS/BGM一起amix。

Bug2(音画不同步):amix duration 改为 longest(原first在纯BGM时跟随BGM全长),
mix末尾加 atrim=0:total_duration + asetpts=PTS-STARTPTS 精确截断到视频时长,
命令行再加 -shortest 兜底。

P1 边缘裁剪入GPU:将原固定3%中心裁剪改为四边独立随机2~5%(与 ffmpeg_utils.random_edge_crop
口径一致),在GPU filter_complex内一步完成;新增 RenderResult.edge_crop_applied 标志
经 RenderAdapter → generate_video 传递,外层CPU random_edge_crop 在GPU已做时跳过,
省掉约5s CPU libx264二次重编码。
2026-09-28 20:06:32 +08:00