fix: 渲染失败三重修复 - legacy帧率统一 + HEVC编码过滤 + 横屏过滤 #494

Merged
auto-approve-bot merged 1 commits from fix/hevc-encoding-filter-and-auto-select into develop 2026-07-18 11:27:16 +08:00

1 Commits

Author SHA1 Message Date
CI Bot 8c2ddb7bb1 fix: 自动选素材过滤HEVC等不支持编码 + ingest编码格式校验
CI Build & Deploy Pipeline / Build Staging API Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Build Staging Web Image (pull_request) Has been skipped
CI Build & Deploy Pipeline / Build Staging Worker 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 / 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 15s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 38s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 24s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Successful in 2m0s
AI Code Review / AI Code Review (pull_request) Successful in 2m19s
Auto Approve CI PRs / Auto Approve on CI Green (pull_request) Successful in 2m25s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 1m23s
Auto Merge CI PRs / Auto Merge on CI Green + Approved (pull_request) Successful in 3m48s
问题:一键生成选到HEVC编码素材导致渲染失败(exit=234)

修复内容:
1. 自动选素材增加编码格式过滤(黑名单:HEVC/H.265/VP9/AV1等)
   - 优先读asset.codec字段,fallback到metadata.codec(兼容存量数据)
   - 编码为空的存量素材暂时放过,不影响可用性

2. ingest增加编码格式校验
   - _is_valid_media白名单:仅H.264/avc1编码视频标记为有效
   - HEVC/VP9/AV1等不支持的编码直接标记为ERROR,不进入可用素材池

3. ingest写入codec字段
   - 两处Asset.create均补充codec参数,之前只写在metadata里

4. 单元测试:新增12个自动选素材测试 + 9个编码校验测试,共36个全过
2026-07-18 11:22:56 +08:00