marfrit
|
eefc378d93
|
iter2 phase1: HEVC backend extension goal + vendoring spec
Architecture locked: implement H.265 SPS parser in backend by
vendoring GStreamer's gst-plugins-bad/codecparsers/gsth265parser.c
directly (B1 per operator decision 2026-05-16). Drop GLib deps,
preserve LGPL header + upstream function names (gst_h265_parser_*),
add README note pinning vendored revision.
Header strategy: runtime-optional V4L2 control probe (no #ifndef
shim, per GStreamer pattern). Compile-time CID + struct defs in a
new internal header src/hevc-ctrls/v4l2-hevc-ext-controls.h
mirroring fresnel iter25 precedent.
8 success criteria for iter2:
C1 — decode completes, 1440 frames
C2 — HW path engaged (ioctl trace shows new CID writes)
C3 — frame 0 byte-identical vs SW reference
C4 — frame 720 SSIM Y in H.264-drift territory, no fixed threshold
C5 — FPS N=3 with sigma, no fixed threshold
C6 — dmesg clean, no rkvdec_hevc_prepare_hw_st_rps OOPS
C7 — firefox-fourier vendor-default HEVC engagement (now possible
with SDDM auto-login configured; not iter2-blocking)
C8 — regression check: ampere-fourier iter1's 3-codec baseline
still passes C1-C6 per iter1 per-codec floors
4 falsifier branches with explicit loopback edges (F1: HEVC still
OOPSes -> re-open ka#11; F2: garbage output -> parser bisect;
F3: regression -> per-driver-kind gate; F4: license issue -> revisit).
Ready for iter2 Phase 2 situation analysis.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-16 08:41:22 +00:00 |
|