fix: musetalk_server 60fps降帧+超时终止+health GFPGAN字段 #2006

Merged
auto-approve-bot merged 1 commits from fix/musetalk-server-bugs into develop 2026-09-21 17:24:14 +08:00

1 Commits

Author SHA1 Message Date
saas-backend 2d0f67ca38 fix: 修复 musetalk_server 三个关键bug
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 2s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 2s
CI/CD Pipeline / Frontend Lint (pull_request) Has been skipped
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 / 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 Worker 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 Web 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 API Image (pull_request) Successful in 2m58s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 3m3s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 3m7s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 3m51s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 5m32s
CI/CD Pipeline / Validate - Style (pull_request) Successful in 5m46s
CI/CD Pipeline / Validate - Python (mypy + alembic) (pull_request) Successful in 6m15s
AI Code Review / AI Code Review (pull_request) Successful in 6m46s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 7m56s
CI/CD Pipeline / Validate - Security (pull_request) Successful in 13m5s
CI/CD Pipeline / Build Production API Image (pull_request) Has been skipped
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 / CI Gate (pull_request) Successful in 1s
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
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 10m46s
ACR Cleanup / ACR Image Cleanup (pull_request_target) Successful in 33s
Preview Cleanup / Cleanup Preview Environment (pull_request) Successful in 47s
Bug1: 60fps降帧逻辑未生效
- 输入视频>30fps时先用ffmpeg降帧至25fps再进行MuseTalk推理
- 推理完成后使用minterpolate MCI运动补偿插帧回原帧率
- 记录input_fps和inference_fps便于排查

Bug2: 推理超时后线程未终止,锁提前释放
- 引入abort_event机制,超时时set event让推理循环检测退出
- 全局追踪活跃ffmpeg子进程,超时时kill所有子进程
- 推理线程改为daemon线程,超时后等待线程退出再释放锁和清理目录
- /cancel接口同步使用abort_event+kill ffmpeg子进程机制

Bug3: /health接口缺少GFPGAN状态字段
- 新增gfpgan_loaded和gfpgan_load_error字段
- 模型加载时同步更新全局状态变量

Bonus:
- 动态超时计算:基础120s + 预估帧数*0.15s,上限1800s
- GFPGAN增强异常时log warning而非静默pass
2026-09-21 17:07:06 +08:00