Files
workinf_Blender_Wasm/docs/tasks/WBV2-P1128-000.md
mes123456 f68c6c9678
Some checks failed
M6 deployable RC / quick (push) Has been cancelled
M6 deployable RC / chromium (push) Has been cancelled
M6 deployable RC / release (push) Has been cancelled
Add full source parity validation workflow
2026-09-07 16:45:07 +08:00

1.9 KiB
Raw Blame History

WBV2-P1128-000: ffmpeg.wasm movie codec module

  • task: WBV2-P1128-000
  • parent: WBV2-P1127-000
  • status: done
  • gap: workflow:sequencer_movie_codec
  • ownerFamily: MEDIA
  • targetImplementationClass: LOCAL_BOUNDED

目标

使用本地 ffmpeg.wasm Worker 作为 Chromium HTML media 解码失败时的 MOVIE probe/proxy fallback;核心 JS/WASM 同源懒加载,输入和输出均 hash-bound。

输入与范围

  • Dependencies: web/package.json, web/package-lock.json
  • Protocol: web/protocol/sequencer.ts
  • Runtime: web/app/src/sequencer/SequencerCodecProbe.ts, web/app/src/sequencer/FFmpegMovieProbe.ts, web/app/src/sequencer/ffmpeg-movie-probe.worker.ts, web/app/src/sequencer/SequencerMediaProxyCache.ts
  • Local core: web/app/src/vendor/ffmpeg/ffmpeg-core.js, web/app/src/vendor/ffmpeg/ffmpeg-core.wasm, web/app/public/vendor/ffmpeg/ffmpeg-core.js, web/app/public/vendor/ffmpeg/ffmpeg-core.wasm
  • Upstream source: third_party/ffmpeg.wasm-source-f876f907c7e9b9bf51d4ed0b913a855a63ae63fc.tar.gz
  • Production test: web/tests/e2e/ffmpeg-movie-probe-production.spec.ts

验收

npm --prefix web run typecheck
npm --prefix web run build
WEB_TEST_PORT=5342 npm --prefix web run test:e2e -- --workers=1 tests/e2e/ffmpeg-movie-probe-production.spec.ts

必须记录原生 HTML media 失败后的 ffmpeg.wasm 正例、metadata/frame 输出、损坏/identity/runtime 负例、AbortSignal cancellation、Worker termination、cache manifest identity 和 Chromium。历史 M11 MOVIE golden 不重写;H.264/浏览器解码差异留在新 capability receipt。

交付与回滚

  • Receipt: tests/golden/WBV2-P1128-000/module-receipt.json
  • Manifest: tests/golden/WBV2-P1128-000/manifest.json
  • Status: docs/status/WBV2-P1128-000.md
  • 回滚:恢复 P1127 manifest 为 queue parent,保留 ffmpeg 源码下载和依赖变更供后续复用。