feat(pkgs): add public ffmpeg module package 0.0.1 (Form A) + house compat.ffmpeg pipeline#75
Merged
Merged
Conversation
…g-m)
tools/compat-ffmpeg/{fetch_upstream.sh,gen_config.sh,gen_descriptor.py} move
in from ffmpeg-m so the generator lives next to the descriptor it generates
(ffmpeg-m keeps only the module layer + export-surface generator).
Migration regression: pipeline re-run here reproduces pkgs/c/compat.ffmpeg.lua
byte-identically except the two regenerate-pointer comment lines (included).
C++23 module layer over FFmpeg (import ffmpeg.av; C API names unchanged), sources arriving via its compat.ffmpeg dependency (full source build). GitHub tag tarball + byte-identical gitcode mcpp-res/ffmpeg CN mirror. Validated like imgui-module (default-namespace exception): new tests/smoke_ffmpeg_module.sh + ffmpeg-module job, linux-only. Local: smoke passes with mcpp 0.0.96 against the published tarball.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
概要
登记公开
ffmpeg模块包 0.0.1(Form A,linux-only),并把 compat.ffmpeg 描述符生成流水线收编进本仓。内容
pkgs/f/ffmpeg.lua(Form A,同imgui形态):指向 mcpplibs/ffmpeg-m v0.0.1 tag tarball;FFmpeg 源码经其compat.ffmpeg = "8.1.2"依赖到达消费者(feat(pkg): compat.ffmpeg 8.1.2 — 全源码直编形态(config 快照 + 源列表) #74 的全源码直编形态)。linux-only(compat.ffmpeg 目前仅 linux-x86_64 快照;macOS 阻塞于 [bug] 依赖包的 [target.'cfg(...)'.build].sources 在被消费时不展开(root 构建正常) mcpp-community/mcpp#229)。mcpp-res/ffmpegreleasev0.0.1,资产与 GLOBAL tarball 逐字节一致(sha256e47dc968…49fb双端核验)。tests/smoke_ffmpeg_module.sh+ffmpeg-modulejob:沿用 imgui-module 例外通道(默认命名空间包暂不能做 workspace 成员),重播默认 index 后以真实消费者姿态 build+run;smoke 内先mcpp index update(nasm 自举,mcpp#232 规避,置于重播之前防覆盖)。非 Linux 直接 SKIP。tools/compat-ffmpeg/:fetch_upstream.sh / gen_config.sh / gen_descriptor.py 自 ffmpeg-m 迁入,生成器与其生成的描述符同仓。迁移回归:重跑流水线,pkgs/c/compat.ffmpeg.lua除 2 行 regenerate 指向注释外逐字节复现(本次一并更新该注释)。.agents/docs/2026-07-18-add-ffmpeg-module-plan.md(含 FFmpeg 版本升级 SOP)。本地验证
mcpp xpkg parse✓tests/smoke_ffmpeg_module.sh(mcpp 0.0.96,真实已发布 tarball):下载 → Form A 查找 → compat.ffmpeg 直编 →import ffmpeg.av;运行 ✓(libavutil 60.26,4 解码器,358 demuxers)备注
tools/*路径变更会按 selector 规则触发全量 workspace run——对描述符再生成正合适。