ohm_gl_fix:start
This is an old revision of the document!
Table of Contents
ohm_gl_fix — Mali-G52 EGL/dmabuf import efficiency
A scope-narrow campaign to reduce per-frame GL/EGL import cost on Mali-G52 (RK3566) when consuming V4L2-decoded NV12 dmabuf frames. Spun off from fourier on 2026-04-30 after Phase 3 measurements confirmed the import cost is the binding constraint on browser-side video playback.
- Local dossier:
~/src/ohm_gl_fix/README.md(canonical scope
+ reference list)
- Reference target: ohm — PineTab2, RK3566, Mali-G52 MP2,
hantro G1/G2 VPU, kernel 6.19.10-danctnix1-1-pinetab2
Status — Phase 1 locked 2026-04-30
— goal locked, constraints separated. Phase 2 (situation
analysis) is next. * [[ohm_gl_fix:phase2_2026-04-30|Phase 2 situation analysis, 2026-04-30]] — substrate enumerated (Mesa/panfrost, EGL/GLES extensions, V4L2 buffer-pool, mpv+libplacebo, KWin, known failure modes). Phase 3 (baseline measurements) is next. * [[ohm_gl_fix:phase3_revised_2026-05-01|Phase 3 (revised), 2026-05-01]] — empirical bucket-attribution + boundary characterisation across six playback paths; supersedes the original Phase 3 narrative. * [[ohm_gl_fix:phase1_revised_2026-05-01|Phase 1 (revised), 2026-05-01]] — measurable success criteria (C1-C4) across in-scope use cases (Brave / Chromium + VS Code); supersedes the original Phase 1 lock. * [[ohm_gl_fix:phase4_2026-05-01|Phase 4 (from scratch), 2026-05-01]] — libva-v4l2-request multiplanar port plan; Brave/Chromium VA-API chain, Step 0 research → Step 1 implementation → conditional Step 2; supersedes the original Phase 4 enumeration. * [[ohm_gl_fix:phase5_review_2026-05-01|Phase 5 second-model review, 2026-05-01]] — Sonnet 4.6 challenges the four Phase 4 §7 hand-over questions; surfaces four pre-Phase-6 actions, including a 10-second test that could obviate the libva multiplanar rewrite if Brave already has the direct V4L2 decoder path compiled in. * [[ohm_gl_fix:phase4_step1_test_corpus_2026-05-01|Phase 4 Step 1 test corpus, 2026-05-01]] — extended H.264 test corpus (5 YouTube clips R1-R5 + JVT conformance subset including MBAFF / long-GOP / scaling-list) addressing Phase 5 review Q4; Step 1 completion gate.
Origin freeze (sibling): fourier Phase 5 review handover.
Scope (canonical: README)
- In: panfrost (Mesa) EGLImage-from-dmabuf import path for
NV12 with Rockchip-relevant DRM modifiers; application-level
EGLImage caching across V4L2 buffer-pool reuse; Mali-G52 on RK3566 specifics. * **Out:** V4L2 stateless decoder work (fourier territory); browser-side carrier patches that opt into dmabuf-overlay compositing (fourier territory; the *workaround*, not the *fix*); compositor-side overlay-plane promotion for video surfaces (overlap with KWin / Mutter); hardware Vulkan video decode (panvk does not implement ''VK_KHR_video_decode_*'' yet).
Sibling
- fourier — V4L2 stateless decode unlock for
mainline ARM Wayland. Currently paused; re-entry condition is
that this campaign surfaces something useful that changes the GL-consumer baseline.
Namespace landing created 2026-04-30 alongside the Phase 1 entry lock.
ohm_gl_fix/start.1777657128.txt.gz · Last modified: by markus_fritsche
