Browse Source

Record HEVC intra-prediction verification

pull/2633/head
James Jackson-South 2 months ago
parent
commit
86792c07a9
  1. 21
      HEIF_IMPLEMENTATION_PLAN.md

21
HEIF_IMPLEMENTATION_PLAN.md

@ -29,7 +29,7 @@ Checkboxes may be marked complete only when the implementation and the verificat
## Delivery dashboard ## Delivery dashboard
Last reconciled with the source tree on 2026-08-30 against production checkpoint `66d1f3c41b0baeaa98726b57d5feaeba50874f16`. Committed checkpoints include the AV1 transform architecture, OBU framing, tile partitioning, mode information, segmentation, delta quantization, transform-size selection, coefficient decoding, inverse quantization, inverse transforms, complete intra prediction, intra-block copy, official extreme-displacement intra-block-copy conformance, the 12-profile reconstruction matrix, corrected twelve-bit inverse-transform SIMD arithmetic, layered-item properties, layered reference/header/CDF/motion-field state, inter-frame intra blocks, SIMD-first translational prediction, complete single-reference inter reconstruction, compound reference trees and modes, paired reference-MV derivation, reference-dependent bounded sequence decoding, allocation-free SIMD-first equal averaging, selected inter-intra prediction, selectable compound blending, OBMC, scaled-reference reconstruction, local warped prediction, non-translational global prediction, official motion-vector conformance, official spatial- and temporal-layer default-operating-point conformance, official active-film-grain and monochrome sequence conformance, selected spatial-layer presentation, progressive color and auxiliary-alpha conformance, pinned-HM HEVC CABAC verification, and pinned-HM HEVC coding-tree traversal verification. This dashboard is the authoritative delivery order. The detailed phase checklists below provide subsystem evidence; they do not override the current-stage marker or permit work to skip ahead. Last reconciled with the source tree on 2026-08-30 against production checkpoint `9bc5b9842`. Committed checkpoints include the AV1 transform architecture, OBU framing, tile partitioning, mode information, segmentation, delta quantization, transform-size selection, coefficient decoding, inverse quantization, inverse transforms, complete intra prediction, intra-block copy, official extreme-displacement intra-block-copy conformance, the 12-profile reconstruction matrix, corrected twelve-bit inverse-transform SIMD arithmetic, layered-item properties, layered reference/header/CDF/motion-field state, inter-frame intra blocks, SIMD-first translational prediction, complete single-reference inter reconstruction, compound reference trees and modes, paired reference-MV derivation, reference-dependent bounded sequence decoding, allocation-free SIMD-first equal averaging, selected inter-intra prediction, selectable compound blending, OBMC, scaled-reference reconstruction, local warped prediction, non-translational global prediction, official motion-vector conformance, official spatial- and temporal-layer default-operating-point conformance, official active-film-grain and monochrome sequence conformance, selected spatial-layer presentation, progressive color and auxiliary-alpha conformance, pinned-HM HEVC CABAC verification, pinned-HM HEVC coding-tree traversal verification, and official HEVC intra-prediction verification. This dashboard is the authoritative delivery order. The detailed phase checklists below provide subsystem evidence; they do not override the current-stage marker or permit work to skip ahead.
Commit `a0d1b5af56acb3a3a9aebb29c916d1b36cd49367` restores the established JPEG color-converter operator architecture throughout the HEIF implementation. `Av1ForwardTransformer` owns its nested one-dimensional contract and all twelve concrete forward transform operators; `Av1Inverse2dTransformer` owns the corresponding inverse contract and operators; and `Av1InverseTransformer` owns the byte and high-bit-depth reconstruction-output operators. Each contract lives in the owner's `.Operator.cs`, while every semantic transform with a shared traversal has its own `<Owner>.<Semantic>Operator.cs` partial-family file and implements concrete scalar and SIMD overload bodies without a forwarding semantic core. The same owner-and-partial-file rule now covers HEVC inverse transforms and intra prediction, AV1 and HEVC deblocking, AV1 CDEF, and HEVC transform-skip reconstruction. Vector-width and sample-storage adapters that are not semantic dispatch operators are named `Operations`; no operator type is named after a hardware width, no static contract uses CRTP, no source file groups multiple concrete semantic operator structs, and no semantic operator remains top-level. Roslynk reports zero compiler errors, both Release source targets build with zero warnings and errors, and 736 focused `net10.0` transform, loop-filter, prediction, reconstruction, transfer-function, and film-grain cases pass without failures or skips through the existing `FeatureTestRunner` coverage. All 56 new C# paths resolve to the existing `csharp` diff driver without an attributes change, and `git diff --check` is clean. Commit `a0d1b5af56acb3a3a9aebb29c916d1b36cd49367` restores the established JPEG color-converter operator architecture throughout the HEIF implementation. `Av1ForwardTransformer` owns its nested one-dimensional contract and all twelve concrete forward transform operators; `Av1Inverse2dTransformer` owns the corresponding inverse contract and operators; and `Av1InverseTransformer` owns the byte and high-bit-depth reconstruction-output operators. Each contract lives in the owner's `.Operator.cs`, while every semantic transform with a shared traversal has its own `<Owner>.<Semantic>Operator.cs` partial-family file and implements concrete scalar and SIMD overload bodies without a forwarding semantic core. The same owner-and-partial-file rule now covers HEVC inverse transforms and intra prediction, AV1 and HEVC deblocking, AV1 CDEF, and HEVC transform-skip reconstruction. Vector-width and sample-storage adapters that are not semantic dispatch operators are named `Operations`; no operator type is named after a hardware width, no static contract uses CRTP, no source file groups multiple concrete semantic operator structs, and no semantic operator remains top-level. Roslynk reports zero compiler errors, both Release source targets build with zero warnings and errors, and 736 focused `net10.0` transform, loop-filter, prediction, reconstruction, transfer-function, and film-grain cases pass without failures or skips through the existing `FeatureTestRunner` coverage. All 56 new C# paths resolve to the existing `csharp` diff driver without an attributes change, and `git diff --check` is clean.
@ -37,6 +37,8 @@ Commit `35e65e9546dd78847d4de7cae082e26229b3a744` closes the Phase 4 HEVC CABAC
Commit `66d1f3c41b0baeaa98726b57d5feaeba50874f16` closes the Phase 4 HEVC coding-tree traversal checkpoint. Exact comparison with HM commit `9c1f298659ab0cee9dc13d23d0304221575410b9` covers boundary-forced coding-tree splits, split-context derivation, quantization-group QP references, intra partition-size syntax, PCM gating and CABAC restart, minimum and maximum transform-size split inference, chroma coded-block-flag inheritance including 4:2:2 sub-transform units, and first-residual ordering for luma and chroma QP updates. Official ITU RQT_A through RQT_E, STRUCT_A and STRUCT_B, and TUSIZE_A bitstreams match the archive's complete-sequence MD5 values through pinned HM; every RQT decoded-picture hash SEI also reports OK. Pinned-HM analyser output proves minimum-CU intra partition alternatives at 8, 16, and 32 samples, luma prediction sizes 4 through 64, coding-tree split syntax at 16 through 64, transform-subdivision syntax at 8 through 32, and luma transform blocks at 4 through 32, while TUSIZE_A covers 16- and 32-sample luma and 8-, 16-, and 32-sample chroma transforms. Eight production still-item tests compare the first picture's native Y, Cb, and Cr planes exactly with pinned HM. A fresh Release run passes all 150 focused HEVC decoder cases without failures or skips, the `net11.0` source build completes with zero warnings and errors, Roslynk reports zero compiler errors, scoped formatting and StyleCop verification are clean, and `git diff --check` is clean. Commit `66d1f3c41b0baeaa98726b57d5feaeba50874f16` closes the Phase 4 HEVC coding-tree traversal checkpoint. Exact comparison with HM commit `9c1f298659ab0cee9dc13d23d0304221575410b9` covers boundary-forced coding-tree splits, split-context derivation, quantization-group QP references, intra partition-size syntax, PCM gating and CABAC restart, minimum and maximum transform-size split inference, chroma coded-block-flag inheritance including 4:2:2 sub-transform units, and first-residual ordering for luma and chroma QP updates. Official ITU RQT_A through RQT_E, STRUCT_A and STRUCT_B, and TUSIZE_A bitstreams match the archive's complete-sequence MD5 values through pinned HM; every RQT decoded-picture hash SEI also reports OK. Pinned-HM analyser output proves minimum-CU intra partition alternatives at 8, 16, and 32 samples, luma prediction sizes 4 through 64, coding-tree split syntax at 16 through 64, transform-subdivision syntax at 8 through 32, and luma transform blocks at 4 through 32, while TUSIZE_A covers 16- and 32-sample luma and 8-, 16-, and 32-sample chroma transforms. Eight production still-item tests compare the first picture's native Y, Cb, and Cr planes exactly with pinned HM. A fresh Release run passes all 150 focused HEVC decoder cases without failures or skips, the `net11.0` source build completes with zero warnings and errors, Roslynk reports zero compiler errors, scoped formatting and StyleCop verification are clean, and `git diff --check` is clean.
Commit `9bc5b9842` closes the Phase 4 HEVC intra-prediction checkpoint without a production correction. Exact comparison with HM commit `9c1f298659ab0cee9dc13d23d0304221575410b9` confirms reference availability and substitution, normal three-tap and strong bilinear smoothing, filter-selection thresholds, planar, DC, and all angular equations, luma edge filters, negative-angle reference extension, 4:2:2 chroma-angle remapping, luma most-probable-mode syntax, chroma-mode syntax, and combined 4:4:4 NxN chroma traversal. The official one-picture `IPRED_B_Nokia_3` Main Still Picture stream exercises all 35 modes at every published luma and chroma conformance size, for 245 mode-and-size combinations, and its complete native YUV output matches the published reference exactly. The independently coded first picture from official `CIP_A_Panasonic_3` verifies the enabled constrained-intra PPS path and exact pinned-HM decoded-plane hashes; it does not claim coverage of constrained inter-neighbor exclusion in the following B picture, which is outside the bounded still decoder. `FeatureTestRunner` verifies the predictor oracle and both reference-filter paths through normal, AVX-512-disabled, AVX-disabled, and scalar execution. A fresh Release run passes all 149 focused HEVC decoder cases without failures or skips, both Release source targets build with zero warnings and errors, Roslynk reports zero compiler errors, scoped StyleCop and whitespace verification are clean, and `git diff --check` is clean.
Commit `1c58d855f70b024170ced9eb0a7005f0f9c955ad` records the complete official motion-vector conformance checkpoint. The official IVF has SHA-1 `F064290D7FCD3B3DE19020E8AEC6C43C88D3A505`, matching the pinned libaom test-data manifest, and SHA-256 `222A9050059B254DAB17CFB802FF829C778E3F93AF18961A622C8268576C1395`; its pinned-libaom Y4M has SHA-256 `D97AC78C81782CF1507549368047769DC677DBE205706458D1EE9C807DE6EC78`. Both source targets build with zero warnings and errors, the `net10.0` test-project analyzer build completes with zero errors and 1,014 pre-existing repository warnings, Roslynk reports zero compiler errors, 3,985 focused `net10.0` cases pass without failures or skips, and `git diff --check` is clean. Commit `1c58d855f70b024170ced9eb0a7005f0f9c955ad` records the complete official motion-vector conformance checkpoint. The official IVF has SHA-1 `F064290D7FCD3B3DE19020E8AEC6C43C88D3A505`, matching the pinned libaom test-data manifest, and SHA-256 `222A9050059B254DAB17CFB802FF829C778E3F93AF18961A622C8268576C1395`; its pinned-libaom Y4M has SHA-256 `D97AC78C81782CF1507549368047769DC677DBE205706458D1EE9C807DE6EC78`. Both source targets build with zero warnings and errors, the `net10.0` test-project analyzer build completes with zero errors and 1,014 pre-existing repository warnings, Roslynk reports zero compiler errors, 3,985 focused `net10.0` cases pass without failures or skips, and `git diff --check` is clean.
Commit `019ac5648b4380a6ff4865072c96fde29ce09fad` records the complete selected-spatial-layer presentation checkpoint. An essential `lsel` selecting the genuine 40x40 base layer of the committed 40x40-to-80x80 progressive AVIF returns that exact pinned-libaom native reconstruction, then scales its YUV444 planes to the 80x80 `ispe` extent before color conversion and matches pinned libavif's RGBA output exactly. Retained reconstructed planes remain at coded dimensions; presentation planes use group-safe allocator-owned rows and are returned exactly once under a 1,024-byte constrained allocator. Portable `Vector128` and scalar two-times filters match pinned libyuv edge, quarter-sample, and rounding results at 8 and 12 bits through `FeatureTestRunner`. Both source targets build with zero warnings and errors, the `net10.0` test-project analyzer build completes with zero errors and 1,014 pre-existing repository warnings, Roslynk reports zero compiler errors, 156 focused reconstruction and color cases pass without failures or skips, and `git diff --check` is clean. Commit `019ac5648b4380a6ff4865072c96fde29ce09fad` records the complete selected-spatial-layer presentation checkpoint. An essential `lsel` selecting the genuine 40x40 base layer of the committed 40x40-to-80x80 progressive AVIF returns that exact pinned-libaom native reconstruction, then scales its YUV444 planes to the 80x80 `ispe` extent before color conversion and matches pinned libavif's RGBA output exactly. Retained reconstructed planes remain at coded dimensions; presentation planes use group-safe allocator-owned rows and are returned exactly once under a 1,024-byte constrained allocator. Portable `Vector128` and scalar two-times filters match pinned libyuv edge, quarter-sample, and rounding results at 8 and 12 bits through `FeatureTestRunner`. Both source targets build with zero warnings and errors, the `net10.0` test-project analyzer build completes with zero errors and 1,014 pre-existing repository warnings, Roslynk reports zero compiler errors, 156 focused reconstruction and color cases pass without failures or skips, and `git diff --check` is clean.
@ -75,15 +77,15 @@ Status meanings:
- **Not started:** supporting primitives may exist, but the production format path is absent. - **Not started:** supporting primitives may exist, but the production format path is absent.
- **Current:** the only work item that should be advanced before taking the next queued item. - **Current:** the only work item that should be advanced before taking the next queued item.
Current development stage: **Stage 4 — complete HEVC still-image decoding.** The AV1 still-image exit gate is complete across the exact 12-profile matrix, layered reference-dependent items, every connected normative reconstruction tool, official quantizer and size boundaries, constrained allocation, and pinned native and presentation output. The bounded HEVC item-local syntax, allocator-backed decoder lifecycle, CABAC arithmetic and context state, and coding-tree traversal are implemented and verified through pinned-HM tables and analysis, official native-plane output, real HEIC payloads, constrained allocation, constructor failure, and public presentation cases. The next dependency is intra prediction for every luma and chroma mode, including strong intra smoothing and constrained prediction rules. Neither AV1 nor HEVC production encoding is implemented. Current development stage: **Stage 4 — complete HEVC still-image decoding.** The AV1 still-image exit gate is complete across the exact 12-profile matrix, layered reference-dependent items, every connected normative reconstruction tool, official quantizer and size boundaries, constrained allocation, and pinned native and presentation output. The bounded HEVC item-local syntax, allocator-backed decoder lifecycle, CABAC arithmetic and context state, coding-tree traversal, and intra prediction are implemented and verified through pinned-HM tables and analysis, official native-plane output, real HEIC payloads, constrained allocation, constructor failure, public presentation cases, and SIMD/scalar feature isolation. The next dependency is scaling-list selection, effective component quantization, residual-tool selection, inverse transforms, and lossless reconstruction through the complete production transform-unit path. Neither AV1 nor HEVC production encoding is implemented.
Immediate checkpoint: **current — complete Phase 4 HEVC intra prediction.** Reconcile reference availability, sample substitution and filtering, strong intra smoothing, luma and chroma mode derivation, constrained prediction, and every predictor with pinned HM, close any valid still-image gaps, and retain exact native-plane and focused scalar/SIMD evidence before advancing to residual reconstruction. Immediate checkpoint: **current — complete Phase 4 HEVC residual reconstruction.** Reconcile effective luma and chroma QP derivation, chroma-adjustment-list selection, scaling-list selection, inverse quantization, transform skip, coefficient rotation, residual DPCM, transquant bypass, inverse transforms, reusable scratch ownership, and prediction addition with pinned HM, then retain exact native-plane and focused scalar/SIMD evidence before advancing to in-loop filtering.
| Order | Delivery stage | State | Delivered state | Gate that remains open | | Order | Delivery stage | State | Delivered state | Gate that remains open |
| --- | --- | --- | --- | --- | | --- | --- | --- | --- | --- |
| 1 | Baseline, provenance, documentation, and public contract | In progress | Pinned codec references, a bounded image-only scope, encoder options, typed bit depth, decoder-option propagation, and extensive HEIF documentation exist. | Complete the all-file documentation audit, record a fresh Release baseline, finish distinct public HEIC/AVIF save boundaries, and close API review. | | 1 | Baseline, provenance, documentation, and public contract | In progress | Pinned codec references, a bounded image-only scope, encoder options, typed bit depth, decoder-option propagation, and extensive HEIF documentation exist. | Complete the all-file documentation audit, record a fresh Release baseline, finish distinct public HEIC/AVIF save boundaries, and close API review. |
| 2 | Bounded HEIF item and image-sequence container | In progress | Still-item parsing, grids, auxiliary alpha, metadata properties, bounded image-sequence tracks, Identify, and all-sync AV1 sequence presentation are connected. | Complete adversarial boundary coverage, remaining item/property behavior, reference-dependent sequence reconstruction, and the bounded sequence writer. | | 2 | Bounded HEIF item and image-sequence container | In progress | Still-item parsing, grids, auxiliary alpha, metadata properties, bounded image-sequence tracks, Identify, and all-sync AV1 sequence presentation are connected. | Complete adversarial boundary coverage, remaining item/property behavior, reference-dependent sequence reconstruction, and the bounded sequence writer. |
| 3 | Still-image AV1 and HEVC decoding | **Current** | AV1 still-image decoding has passed its complete exact native/presentation profile, layered-item, normative-tool, official-sequence, constrained-allocation, and SIMD-fallback exit gate. HEVC item-local syntax, lifecycle, CABAC, coding-tree traversal, and reconstruction pass exact HM/libheif fixtures across the recorded 8/10/12-bit and chroma cases. | Complete intra prediction, then the remaining normative-tool, profile, and Range Extensions matrix in dependency order. | | 3 | Still-image AV1 and HEVC decoding | **Current** | AV1 still-image decoding has passed its complete exact native/presentation profile, layered-item, normative-tool, official-sequence, constrained-allocation, and SIMD-fallback exit gate. HEVC item-local syntax, lifecycle, CABAC, coding-tree traversal, intra prediction, and reconstruction pass exact HM/libheif fixtures across the recorded 8/10/12-bit and chroma cases. | Complete residual reconstruction, then the remaining normative-tool, profile, and Range Extensions matrix in dependency order. |
| 4 | Complete decoded presentation and animation | In progress | Shared SIMD-first AV1/HEVC color conversion, ICC application, grids, transforms, direct planar alpha composition, frame metadata, repetition, and independently decodable AV1 sequence samples exist. | Close the full color/ICC cross-product, HEVC sequence decoding, AV1/HEVC reference-dependent samples, frame-local metadata/alpha behavior, and independent animated decode vectors. | | 4 | Complete decoded presentation and animation | In progress | Shared SIMD-first AV1/HEVC color conversion, ICC application, grids, transforms, direct planar alpha composition, frame metadata, repetition, and independently decodable AV1 sequence samples exist. | Close the full color/ICC cross-product, HEVC sequence decoding, AV1/HEVC reference-dependent samples, frame-local metadata/alpha behavior, and independent animated decode vectors. |
| 5 | AV1/AVIF encoding | Not started | RGB-to-planar conversion, forward transforms, OBU writer foundations, options, and container-writing infrastructure exist. | `HeifEncoderCore` still rejects AV1. Implement a real independently decodable lossy/lossless AV1 payload and the complete AVIF item/metadata matrix. | | 5 | AV1/AVIF encoding | Not started | RGB-to-planar conversion, forward transforms, OBU writer foundations, options, and container-writing infrastructure exist. | `HeifEncoderCore` still rejects AV1. Implement a real independently decodable lossy/lossless AV1 payload and the complete AVIF item/metadata matrix. |
| 6 | HEVC/HEIC encoding | Not started | Shared input color conversion, options, and HEIF writer infrastructure exist. | `HeifEncoderCore` still rejects HEVC. Implement a real independently decodable lossy/lossless HEVC payload and the complete HEIC item/metadata matrix. | | 6 | HEVC/HEIC encoding | Not started | Shared input color conversion, options, and HEIF writer infrastructure exist. | `HeifEncoderCore` still rejects HEVC. Implement a real independently decodable lossy/lossless HEVC payload and the complete HEIC item/metadata matrix. |
@ -142,7 +144,8 @@ Immediate checkpoint: **current — complete Phase 4 HEVC intra prediction.** Re
- [x] Add exact official frame-size evidence at all four corners of libaom's 196-to-226-pixel matrix. Both frames from each retained stream match the pinned generic-libaom native Y4M samples under normal and scalar `FeatureTestRunner` dispatch, and all four sequences pass through a 1 KiB constrained tracked allocator with balanced exactly-once returns. Both new focused cases and all 25 official-sequence regression cases pass without failures or skips, the scoped Release test-project analyzer build completes with zero errors and 1,011 repository warnings, Roslynk reports zero compiler errors, and `git diff --check` is clean. The existing production decoder required no correction. Commit `ccdcddc92e3f7c45eb0a964569a9c8d2756c0526` records the checkpoint. - [x] Add exact official frame-size evidence at all four corners of libaom's 196-to-226-pixel matrix. Both frames from each retained stream match the pinned generic-libaom native Y4M samples under normal and scalar `FeatureTestRunner` dispatch, and all four sequences pass through a 1 KiB constrained tracked allocator with balanced exactly-once returns. Both new focused cases and all 25 official-sequence regression cases pass without failures or skips, the scoped Release test-project analyzer build completes with zero errors and 1,011 repository warnings, Roslynk reports zero compiler errors, and `git diff --check` is clean. The existing production decoder required no correction. Commit `ccdcddc92e3f7c45eb0a964569a9c8d2756c0526` records the checkpoint.
- [x] Verify HEVC CABAC arithmetic and every required context transition against pinned HM tables and complete production slices. - [x] Verify HEVC CABAC arithmetic and every required context transition against pinned HM tables and complete production slices.
- [x] Complete coding-tree, coding-unit, prediction-unit, and transform-unit traversal across every permitted size and partition mode. Eight official ITU first pictures compare exactly with pinned-HM native planes, pinned HM matches every archive complete-sequence MD5 and every RQT decoded-picture hash SEI, analyser output proves the recorded coding and transform sizes and partition alternatives, and all 150 focused HEVC decoder cases pass in Release. Commit `66d1f3c41b0baeaa98726b57d5feaeba50874f16` records the checkpoint. - [x] Complete coding-tree, coding-unit, prediction-unit, and transform-unit traversal across every permitted size and partition mode. Eight official ITU first pictures compare exactly with pinned-HM native planes, pinned HM matches every archive complete-sequence MD5 and every RQT decoded-picture hash SEI, analyser output proves the recorded coding and transform sizes and partition alternatives, and all 150 focused HEVC decoder cases pass in Release. Commit `66d1f3c41b0baeaa98726b57d5feaeba50874f16` records the checkpoint.
- [ ] **Current:** complete HEVC intra prediction for every luma and chroma mode, including strong intra smoothing and constrained prediction rules, then continue the remaining HEVC still-image dependencies in Phase 4 order. - [x] Complete HEVC intra prediction for every luma and chroma mode, including strong intra smoothing and constrained prediction rules. The official `IPRED_B_Nokia_3` native output and independently coded first `CIP_A_Panasonic_3` picture match pinned HM, all 149 focused HEVC decoder cases pass in Release, and commit `9bc5b9842` records the checkpoint.
- [ ] **Current:** complete scaling-list selection, effective component quantization, residual-tool selection, inverse transforms, and lossless reconstruction through the production transform-unit path.
- [ ] Close shared decoded presentation, ICC, alpha, grid, transform, metadata, and animated AV1/HEVC decode gates. - [ ] Close shared decoded presentation, ICC, alpha, grid, transform, metadata, and animated AV1/HEVC decode gates.
- [ ] Implement and independently verify real AV1/AVIF still encoding. - [ ] Implement and independently verify real AV1/AVIF still encoding.
- [ ] Implement and independently verify real HEVC/HEIC still encoding. - [ ] Implement and independently verify real HEVC/HEIC still encoding.
@ -682,11 +685,11 @@ Implement and verify in dependency order:
- [x] One bounded decoder lifecycle owns only the parameter sets, current-picture state, slice/tile entropy state, and reconstructed planes required by that image item. Every allocator-backed child constructor and the owning picture decoder now unwind unpublished rents in reverse order. Focused tests exercise every constructor allocation-failure position and a complete real HEIC reconstruction through 2 KiB allocator groups with balanced exactly-once returns; all 22 official native-plane, real-item, ownership, constrained-allocation, and public presentation cases pass without failures or skips. Both Release source targets build with zero warnings and errors, the scoped Release test-project analyzer build completes with zero errors and 1,011 repository warnings, Roslynk reports zero compiler errors, and `git diff --check` is clean. Commit `b6ba2dbf2f90c7b0a5d9da4e9f45d045bbce1a65` records the syntax reconciliation and lifecycle correction. - [x] One bounded decoder lifecycle owns only the parameter sets, current-picture state, slice/tile entropy state, and reconstructed planes required by that image item. Every allocator-backed child constructor and the owning picture decoder now unwind unpublished rents in reverse order. Focused tests exercise every constructor allocation-failure position and a complete real HEIC reconstruction through 2 KiB allocator groups with balanced exactly-once returns; all 22 official native-plane, real-item, ownership, constrained-allocation, and public presentation cases pass without failures or skips. Both Release source targets build with zero warnings and errors, the scoped Release test-project analyzer build completes with zero errors and 1,011 repository warnings, Roslynk reports zero compiler errors, and `git diff --check` is clean. Commit `b6ba2dbf2f90c7b0a5d9da4e9f45d045bbce1a65` records the syntax reconciliation and lifecycle correction.
- [x] CABAC arithmetic decoding and every required context transition. Commit `35e65e9546dd78847d4de7cae082e26229b3a744` records exact pinned-HM table and algorithm comparison, 9 focused arithmetic/context cases, 17 complete production-slice and allocator-lifecycle cases, zero Roslynk compiler errors, clean scoped StyleCop and whitespace verification, and clean `git diff --check`. - [x] CABAC arithmetic decoding and every required context transition. Commit `35e65e9546dd78847d4de7cae082e26229b3a744` records exact pinned-HM table and algorithm comparison, 9 focused arithmetic/context cases, 17 complete production-slice and allocator-lifecycle cases, zero Roslynk compiler errors, clean scoped StyleCop and whitespace verification, and clean `git diff --check`.
- [x] Coding-tree, coding-unit, prediction-unit, and transform-unit traversal across all permitted sizes and partition modes. Commit `66d1f3c41b0baeaa98726b57d5feaeba50874f16` records exact first-picture native-plane comparison for official ITU RQT_A through RQT_E, STRUCT_A and STRUCT_B, and TUSIZE_A; exact pinned-HM complete-sequence MD5 and RQT decoded-picture-hash verification; analyser-proven partition, coding, prediction, and transform-size coverage; 150 focused Release cases; a zero-warning, zero-error `net11.0` source build; zero Roslynk compiler errors; clean scoped formatting and StyleCop verification; and clean `git diff --check`. - [x] Coding-tree, coding-unit, prediction-unit, and transform-unit traversal across all permitted sizes and partition modes. Commit `66d1f3c41b0baeaa98726b57d5feaeba50874f16` records exact first-picture native-plane comparison for official ITU RQT_A through RQT_E, STRUCT_A and STRUCT_B, and TUSIZE_A; exact pinned-HM complete-sequence MD5 and RQT decoded-picture-hash verification; analyser-proven partition, coding, prediction, and transform-size coverage; 150 focused Release cases; a zero-warning, zero-error `net11.0` source build; zero Roslynk compiler errors; clean scoped formatting and StyleCop verification; and clean `git diff --check`.
- [ ] **Current:** intra prediction for every luma and chroma mode, including strong intra smoothing and constrained prediction rules. - [x] Intra prediction for every luma and chroma mode, including strong intra smoothing and constrained prediction rules. Commit `9bc5b9842` records exact published native output for the official 245-combination `IPRED_B_Nokia_3` picture, exact pinned-HM plane hashes for the independently coded first `CIP_A_Panasonic_3` picture, all four required `FeatureTestRunner` configurations, 149 focused Release cases, both zero-warning source builds, zero Roslynk compiler errors, clean scoped StyleCop and whitespace verification, and clean `git diff --check`.
- [x] Implement and verify the allocation-free SIMD-first predictor primitive for all 35 modes, 4/8/16/32 blocks, and 8/10/12-bit samples. - [x] Implement and verify the allocation-free SIMD-first predictor primitive for all 35 modes, 4/8/16/32 blocks, and 8/10/12-bit samples.
- [x] Implement reconstructed-plane reference collection, substitution, asymmetric chroma-unit handling, and reference-filter selection from caller-owned availability and scratch spans. - [x] Implement reconstructed-plane reference collection, substitution, asymmetric chroma-unit handling, and reference-filter selection from caller-owned availability and scratch spans.
- [x] Build each availability flag from reconstructed-plane and coding state, and connect the predictor to transform-unit traversal for the independently verified 8-bit 4:2:0 and 4:4:4 item paths. - [x] Build each availability flag from reconstructed-plane and coding state, and connect the predictor to transform-unit traversal for the independently verified 8-bit 4:2:0 and 4:4:4 item paths.
- [ ] Scaling lists, inverse quantization, transform skip, every required inverse transform, range-extension precision, and lossless reconstruction. - [ ] **Current:** scaling lists, inverse quantization, transform skip, every required inverse transform, range-extension precision, and lossless reconstruction.
- [x] Implement allocation-free SIMD-first inverse DCT for every 4/8/16/32 width and height combination, the four-by-four intra-luma inverse DST, normative intermediate and residual clipping, and saturated prediction addition for 8/10/12-bit samples. Verify normal and forced-scalar execution against fixed results and a dense scalar oracle. - [x] Implement allocation-free SIMD-first inverse DCT for every 4/8/16/32 width and height combination, the four-by-four intra-luma inverse DST, normative intermediate and residual clipping, and saturated prediction addition for 8/10/12-bit samples. Verify normal and forced-scalar execution against fixed results and a dense scalar oracle.
- [x] Implement the SIMD-first inverse-quantization primitive for flat and scaling-list paths across every transform size, component matrix, prediction mode, transform-skip scaling rule, signed normalization direction, and range-extension precision path. - [x] Implement the SIMD-first inverse-quantization primitive for flat and scaling-list paths across every transform size, component matrix, prediction mode, transform-skip scaling rule, signed normalization direction, and range-extension precision path.
- [ ] Derive effective luma and chroma quantization parameters, including bit-depth offsets and chroma-format mapping, then connect scaling-list selection and inverse quantization to transform-unit traversal. - [ ] Derive effective luma and chroma quantization parameters, including bit-depth offsets and chroma-format mapping, then connect scaling-list selection and inverse quantization to transform-unit traversal.
@ -887,8 +890,8 @@ The dashboard and immediate execution queue define the remaining critical path.
- [x] Implement and independently verify non-translational global prediction with a genuine traced bounded sequence, exact native and presentation comparisons, constrained allocation, normal/scalar dispatch, and direct 8/10/12-bit compound production coverage. Commit `c5637ea0187df35b385bf43e2fe85cd955f01099` records the checkpoint. - [x] Implement and independently verify non-translational global prediction with a genuine traced bounded sequence, exact native and presentation comparisons, constrained allocation, normal/scalar dispatch, and direct 8/10/12-bit compound production coverage. Commit `c5637ea0187df35b385bf43e2fe85cd955f01099` records the checkpoint.
- [x] Complete progressive color and auxiliary-alpha verification through exact native and presentation comparisons, every required `FeatureTestRunner` fallback, and constrained tracked allocation. - [x] Complete progressive color and auxiliary-alpha verification through exact native and presentation comparisons, every required `FeatureTestRunner` fallback, and constrained tracked allocation.
- [x] Correct the audited 12-bit inverse ADST4, Identity4, and Identity16 arithmetic through exact pinned boundary vectors and SIMD/scalar feature isolation. - [x] Correct the audited 12-bit inverse ADST4, Identity4, and Identity16 arithmetic through exact pinned boundary vectors and SIMD/scalar feature isolation.
- [ ] **Current:** remove every other unsupported valid AV1 still-image syntax path and prove the complete AVIF decode matrix with independent inputs and scalar/SIMD parity. - [x] Remove every other unsupported valid AV1 still-image syntax path and prove the complete AVIF decode matrix with independent inputs and scalar/SIMD parity. Commit `2219edbc91edb6a2d905f1221a45207eb2719abc` closes Phase 3.
- [ ] Close Phase 4 by completing the remaining HEVC profile and Range Extensions matrix with exact native-plane and presented-image evidence. - [ ] **Current:** close Phase 4 by completing residual reconstruction, in-loop filtering, the remaining HEVC profile and Range Extensions matrix, and exact native-plane and presented-image evidence.
- [ ] Close Phase 5 and the decode portion of the bounded sequence ledger: color, ICC, alpha, grids, presentation transforms, reference-dependent samples, and complete animated AVIF/HEIC decode. - [ ] Close Phase 5 and the decode portion of the bounded sequence ledger: color, ICC, alpha, grids, presentation transforms, reference-dependent samples, and complete animated AVIF/HEIC decode.
- [ ] Close the still-image portions of Phases 0, 1, and 2 that remain as release gates: documentation, provenance, public format boundaries, API review, parser hardening, and malformed-input coverage. - [ ] Close the still-image portions of Phases 0, 1, and 2 that remain as release gates: documentation, provenance, public format boundaries, API review, parser hardening, and malformed-input coverage.
- [ ] Complete Phase 6 with a real AV1 encoder and independent AVIF cross-decode across every public option and metadata combination. - [ ] Complete Phase 6 with a real AV1 encoder and independent AVIF cross-decode across every public option and metadata combination.

Loading…
Cancel
Save