Repository navigation
media: apple: avd: stage H.264 frame ops and layout projections - #702
Closed
RyanTheTide wants to merge 2 commits into
Closed
RyanTheTide wants to merge 2 commits into
RyanTheTide wants to merge 2 commits into
Conversation
Add CPU frame operations, bounded instruction emission and independent slot scratch. Address coded data directly from OUTPUT DMA mappings and retain the licensed builder for host regression comparisons. Keep Apple transport fields and HOLD source-lifetime gaps explicit; this integration draft does not enable Apple decoding or multi-buffer HOLD pictures. Assisted-by: LLM Signed-off-by: Ryan Murray <ryan@aurorasilicon.org>
Route collocated MV lookup through the existing reference helper, add program and parameter overflow cases, and provide an open-only weak backend predicate for the standalone codec branch. The queue core overrides that predicate when integrated. Assisted-by: LLM Signed-off-by: Ryan Murray <ryan@aurorasilicon.org>
This was referenced Oct 31, 2026
Contributor
Author
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The H.264 builder currently copies coded slices into coherent allocations and uses one context's scratch buffers. This integration draft registers CPU
prepare/pack_cmd/retireoperations, writes a bounded per-frame instruction program, uses OUTPUT DMA addresses with data offsets, declaresDEP_NONE, and caches independent scratch for 16 frame indices. It carries the shared queue header verbatim and keeps reference motion vectors in CAPTURE-owned tails.The Apple work is a partial projection, not working Apple decoding: V3 fields have licensed public layout provenance, Borage has only the known command fields, and unresolved packed addresses/work-count validation return
-EOPNOTSUPP. T8112/T8140 have explicit ledger TODO rows. The legacy callbacks remain until queue-core integration. Multi-bufferHOLD_CAPTURE_BUFpictures now return-EOPNOTSUPP, because immediately returning intermediate OUTPUT buffers permits userspace to overwrite zero-copy data before picture completion. Core must retain those sources before this can replace the existing multi-slice path.Validation: exact contract-header comparison, no coded-slice allocation/copy, and
git diff --checkpass. The host harness covers 96 synthetic I/P/B, 1/4-slice, CABAC/CAVLC, scaling/weight and address-format cases, plus V3/Borage field checks; execution is still pending. Controller build slots are currently unavailable, so host tests and arm64 W=1/WERROR are not verified. No target hardware was requested. The ffmpeg/GStreamer-to-eiln decoder comparison also remains outstanding.This draft does not meet the full task's acceptance criteria and is not ready to merge.