Commit Graph

4 Commits

Author SHA1 Message Date
test0r dbae9832b6 libva-v4l2-request-fourier: 1.0.0.r348.7ac934e -> 1.0.0.r376.de27e95
Bump pin to de27e95 — "v4l2: log error_idx + failing ctrl id on
S_EXT_CTRLS failure" (Phase 8.13 diagnostic).

Includes:
- b5b3acf: daedalus_v4l2 entry in known_decoder_drivers[]
- 2146341: meson option gate (default true) for the daedalus
  probe slot
- de27e95: diagnostic logging on S_EXT_CTRLS failure (logs
  error_idx + failing control id, ioctl-level vs per-control)

Backward-compatible on rkvdec / hantro / cedrus / rpi-hevc-dec
hosts — daedalus probe is off-path unless daedalus_v4l2.ko
is loaded and /dev/video0 advertises driver "daedalus_v4l2".

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-18 18:25:06 +00:00
claude-noether b648276122 libva-v4l2-request-fourier: -Db_lto=false (closes #17)
CI binary segfaulted on HEVC vaEndPicture even though
/etc/makepkg.conf has OPTIONS=(... !lto ...). Root cause: arch-meson's
wrapper hard-codes `-D b_lto=true` regardless of makepkg.conf, so
the binary still gets cross-function ICF (Identical Code Folding)
under -O2 + LTO.

HEVC is the only codec in the campaign that submits a per-frame chain
of 4 control structs (SPS + PPS + DECODE_PARAMS + SLICE_PARAMS); ICF
finds a near-duplicate per-codec helper across the codec dispatch and
merges them, then the wrong instance's local stack layout is invoked
on the HEVC path → SEGV. The other 4 codecs (H.264, VP8, VP9, MPEG-2)
submit fewer/simpler control structs and tolerate the folding by
accident.

Empirical confirmation from the issue body's binary bisection:

  meson build (default debugoptimized)     485 KB   HEVC ✓
  arch-meson + --buildtype=release          145 KB   HEVC ✓
  arch-meson + release + -flto              76 KB   HEVC SEGV
  CI build (this package, 7ac934e-1)        133 KB   HEVC SEGV

Fix: append `-Db_lto=false` to the arch-meson invocation.
pkgrel 1 -> 2.
2026-05-15 19:03:46 +00:00
claude-noether 81cc050bf3 libva-v4l2-request-fourier: bump pin iter8 -> iter38b (7ac934e)
Carries the fork from libva-multiplanar iter8 close (2026-05-06) to
fresnel-fourier iter38b (2026-05-14): multi-device probe so a single
libva session serves rkvdec (H.264 + HEVC + VP9) + hantro (MPEG-2 +
VP8) without LIBVA_V4L2_REQUEST_VIDEO_PATH overrides, plus the
MAX_PROFILES bounds-check fix from iter38b.

Required by the fresnel-fourier README's HW-decode stack (vainfo
exposes all 10 profiles in one session, byte-exact bench verified
across 5 codecs).

68 commits between the old pin (65969da3) and the new (7ac934e0).
pkgver() recomputes the rev count at build time; the static placeholder
is bumped from r280 to r348 to reflect the new pin.
2026-05-15 06:08:21 +00:00
test0r 65cf701b75 add libva-v4l2-request-fourier package + Gitea Actions job
Production-tip successor to the experimental libva-v4l2-request-ohm-gl-fix
(tarball + 18-patch stack, never published). Tracks the libva-multiplanar
campaign fork's git history directly via git+commit pin, so iteration
sweeps land in a clean linear log instead of a growing patch stack.

Pinned commit 65969da3 = libva-multiplanar iter8 close (last commit on
master before fresnel-fourier work began layering MPEG-2 rewrites on top
2026-05-08). Promote to a later pin only after a future iteration closes
cleanly.

Workflow job mirrors ffmpeg-v4l2-request-aarch64 (same fermi LXC runner,
same makepkg → sign → repo-add → rsync-to-nc.reauktion.de pattern), and
chains via needs: ffmpeg-v4l2-request-aarch64 to serialize marfrit.db
updates. nasm dropped from bootstrap (libva has no x264-style asm).

replaces=(libva-v4l2-request libva-v4l2-request-ohm-gl-fix) covers both
stock Arch and locally-installed predecessor copies; predecessor was
never published so no marfrit.db collision.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-08 12:33:24 +00:00