ohm step 5: scaffold ffmpeg-v4l2-request-git PKGBUILD in marfrit-packages

marfrit-packages commit 9994c4e adds arch/ffmpeg-v4l2-request-git/ plus
the CI job (chained after claude-his-any, continue-on-error). Tracks
Kwiboo's v4l2-request-n8.1 branch, pinned to commit b57fbbe, strips
the AUR package's X11/AMF/CUDA/FireWire/etc deps, keeps encoders.

Fleshes out the packaging table with Status column and the "why not the
AUR package" rationale so a cold-start session doesn't re-discover the
downgrade trap.

Status: scaffolded, not yet pushed — next step is to push marfrit-packages
main, let fermi CI build, install on ohm, then run the v4l2-request hwaccel
validation.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-24 20:04:55 +00:00
parent 1266c9da8e
commit 1be49951a7
+17 -8
View File
@@ -159,8 +159,9 @@ picks up rkvdec2 patches.
7. **Document** — freeze the final recipe in this README
**Status 2026-04-24**: ohm reachable; steps 1 + 2 + 3 done for H.264 on
ohm. SW baseline numbers below; step 5 (ffmpeg-v4l2-request build +
install via marfrit-packages) is next.
ohm; step 5 scaffold landed (`marfrit-packages/arch/ffmpeg-v4l2-request-git/`
on `main`, commit `9994c4e`, not yet pushed — first fermi CI build + ohm
install still to run). Immediate next: push, build, install, validate.
### SW baseline numbers (2026-04-24, ohm, `bbb_1080p30_h264.mp4`)
@@ -300,12 +301,20 @@ New fleet hosts should get Fourier userspace via `pacman -S` / `apt install`,
not per-device AUR rebuilds. Mirror plan in `marfrit-packages` (layout:
`arch/<pkg>/PKGBUILD`, `debian/<pkg>/build-deb.sh + debian/`):
| Package | Source | CI runner | Target |
|------------------------------|-----------------------------------------|-----------|---------|
| `ffmpeg-v4l2-request-git` | fork of AUR (Jernej's patchset on ffmpeg tip) | **fermi** (Arch ARM aarch64) | Path A: ohm, fresnel, ampere |
| `ffmpeg-v4l2-request` | same patches against Debian ffmpeg src | **feynman** (Debian aarch64) | Path A Debian hosts |
| `gst-plugins-bad-fourier` | only if stock distro package is <1.28 | fermi / feynman | 1.28 HEVC UAPI uplift |
| `libva-v4l2-request` | upstream tag | fermi / feynman | VA-API bridge |
| Package | Source | CI runner | Target | Status |
|------------------------------|-----------------------------------------|-----------|---------|--------|
| `ffmpeg-v4l2-request-git` | Kwiboo `v4l2-request-n8.1` (rebase of Jernej's series onto ffmpeg 8.1), pinned to `_commit` | **fermi** (Arch ARM aarch64) | Path A: ohm, fresnel, ampere | scaffolded 2026-04-24 |
| `ffmpeg-v4l2-request` | same patches against Debian ffmpeg src | **feynman** (Debian aarch64) | Path A Debian hosts | pending |
| `gst-plugins-bad-fourier` | only if stock distro package is <1.28 | fermi / feynman | 1.28 HEVC UAPI uplift | not needed yet (stock ALARM ships 1.28.2) |
| `libva-v4l2-request` | upstream tag | fermi / feynman | VA-API bridge | pending |
Why not the AUR `ffmpeg-v4l2-request-git`: it tracks a 6.1.1 branch with
`epoch=2`, which makes it older than stock Arch `2:8.1-3` — install would
**downgrade** system ffmpeg. It also pulls X11/AMF/CUDA/FireWire/AviSynth/
OpenMPT/Bluray/etc, none relevant on a Wayland ARM video-decode fleet, and
has no commit pin. The marfrit fork tracks Kwiboo's `v4l2-request-n8.1`
(ffmpeg 8.1 base, sideways swap with stock), pins a commit for
reproducibility, and strips the unused deps.
The Arch package is the priority (ohm + fresnel are Arch-based). Debian
package comes second (relevant if a fleet host ever runs Debian — kepler or