Mid-Phase-7 fix-forward landed on fork
(marfrit/libva-multiplanar:692eaa0): unconditional
context_object->h264_start_code = true was prepending 0x00 0x00 0x01
to VP9 slice data, shifting the rkvdec bitstream by 24 bits and
producing silent decode failure. Now gated on
config_object->profile (H.264 + HEVC only).
Empirical verification when fresnel was online: post-fix VP9 keyframe
FRAME control bytes 0-23 byte-match Phase 3 anchor:
lf.flags=0x03 (DELTA_ENABLED|DELTA_UPDATE) — was 0x01
base_q_idx=0x2e=46 — was 0x41=65
This is the transitive-proof leg-1 (backend-payload == kernel-direct-payload)
for the iter4 keyframe.
Open verification when fresnel returns:
- Full 168-byte FRAME control diff mine vs Phase 3 anchor
- Full 2040-byte COMPRESSED_HDR control diff
- ffmpeg-v4l2request kernel-direct VP9 decode + hwdownload pixels =
Phase 3 SW reference (transitive-proof leg-2)
If both legs PASS, iter4 closes 5/5 (4 direct from earlier iters
+ 1 transitive iter4) per Option-A choice.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>