open-standards/wai/wai-rs/tests
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Transaction Science 954307816d wai-rs: derive the entropy-decode inputs — skip_mask + rvs_additive (fixture-free)
Ports the last two inputs the mANS sgm decoder needed but that were still being read
from an e2e fixture. With these, every input of the decode path is computable from the
codestream plus normative assets.

  skip_mask     scale_hat = i_s + gain_per_ch ; mask = scale_hat > 382
                NOTE the skip decision uses the scale WITHOUT the RVS additive, while
                sigma_index uses it WITH — the two differ by exactly the rvs values and
                are easy to conflate.

  rvs_additive  likely = clamp((sum_8x8 |i_s| + 32) >> 6, 0, 4351)
                band   = #{ e in [1003,1352,1937] : likely >= e }
                rvs    = A[grfs_flag ? 0 : 1][band]

Band edges are precomputed as idx2log(thr * 2^4) against the reference
Log2LinConvertion table, so the 4352-entry table is not needed at decode time; the
per-band additives come from the normative scale list scaled by the GRFS branch factor.
Band membership is INCLUSIVE at the lower edge — only the luma plane exercises this
(one block lands exactly on 1352 and the reference places it in the band above), which
is why both planes are tested.

Validated against the ISO reference on real test256.bin, both planes, including the
composition (derived rvs fed through sigma_index must reproduce the indices the
reference entropy coder consumed):
  luma   rvs 40960/40960, mask 40960/40960 (703 coded), sigma 40960/40960
  chroma rvs 24576/24576, mask 24576/24576 (537 coded), sigma 24576/24576

Co-Authored-By: Claude Opus 4.8 <[email protected]>
2026-07-18 23:30:54 -04:00
..
vectors wai-web: decodeIntSplat binding + per-attr ranges for the in-browser 3D demo 2026-06-28 09:49:40 -04:00
carriage.rs wai: prove carriage of every registered class + decode the two open flagships 2026-06-18 07:36:43 -04:00
ffi_robustness.rs wai: gate codec-dependent test/example targets on codecs 2026-06-17 17:36:39 -04:00
fuzz_smoke.rs wai: gate codec-dependent test/example targets on codecs 2026-06-17 17:36:39 -04:00
generate.rs wai: generative-replicate — deterministic byte-exact GENERATION (wai.generate.spectral) 2026-06-25 18:48:21 -04:00
int_audio.rs wai: learned integer-exact audio codec (wai.audio.int_codec) + conformance 2026-06-27 17:01:31 -04:00
int_hyper_synth.rs wai: committed tiny conformance vector for int_hyper (CI-verifiable, no 23MB model) 2026-06-25 13:58:02 -04:00
int_splat.rs wai: learned integer-exact Gaussian-splat attribute codec (wai.splat.int_codec) 2026-06-28 09:14:46 -04:00
int_video.rs wai.video.int_motion: deterministic integer inter-frame video (byte-exact) 2026-06-27 07:22:53 -04:00
int_video_halfpel.rs wai: half-pel motion compensation for int_motion video + real-footage conformance 2026-06-27 11:10:48 -04:00
int_video_keyframe.rs wai.video.int_hyper: neural-keyframe video — learned int_hyper I-frame + integer P-frames 2026-06-27 07:34:20 -04:00
int_video_sota_keyframe.rs wai.video.int_hyper at SOTA scale: real 256x256 neural-keyframe video 2026-06-27 08:08:21 -04:00
int_world.rs wai: integer-exact interactive world model — the byte-exact renderer for wai.world.model 2026-06-27 18:34:30 -04:00
int_world2.rs wai: two-agent co-control world.model — both agents drive one byte-exact frame 2026-06-28 03:14:57 -04:00
int_world_shared.rs wai: shared / multi-agent world.model — convergence on a GENERATED world 2026-06-27 19:21:42 -04:00
jpegai_bitstream_calibration.rs wai-rs: fix picture-header per-component flag order (grfs_channel_flags were corrupt) 2026-07-18 02:04:41 -04:00
jpegai_color_calibration.rs wai-rs: jpegai_pipeline::yuv_to_rgb / rgb_to_yuv — BT.709 colour combine (float-exact) 2026-07-14 10:38:43 -04:00
jpegai_derive_calibration.rs wai-rs: derive the entropy-decode inputs — skip_mask + rvs_additive (fixture-free) 2026-07-18 23:30:54 -04:00
jpegai_e2e.rs wai: derive JPEG-AI residual coding mask from the bitstream (not a fixture) 2026-06-21 08:06:19 -04:00
jpegai_e2e_chain.rs wai-rs: jpegai_bitstream — tools-header (TON) parser + codestream→z→i_s chain 2026-07-17 12:35:06 -04:00
jpegai_e2e_dequant.rs wai-rs: jpegai_pipeline::dequant + e2e integration (entropy→dequant byte-exact, synthesis Y/UV on real latent) 2026-07-08 07:14:26 -04:00
jpegai_e2e_hyperlatent.rs wai-rs: e2e — recover the hyper-latent z from the real codestream (byte-exact) 2026-07-17 03:14:04 -04:00
jpegai_e2e_synthesis.rs wai-rs: jpegai_pipeline::dequant + e2e integration (entropy→dequant byte-exact, synthesis Y/UV on real latent) 2026-07-08 07:14:26 -04:00
jpegai_efl_calibration.rs wai-rs: jpegai_pipeline::efl_chroma — EFE linear cross-component post-filter (float-exact) 2026-07-14 09:38:06 -04:00
jpegai_efn_calibration.rs wai-rs: jpegai_pipeline::efn_filter — EFE luma-aided nonlinear chroma post-filter (float-exact) 2026-07-13 13:17:53 -04:00
jpegai_hyper_calibration.rs wai-rs: jpegai_synthesis — restore chroma + hyper decoders, add hyper_scale (all byte-exact) (#53) 2026-07-07 15:08:25 -04:00
jpegai_hyperscale_calibration.rs wai-rs: hyper_scale_decoder — floor (>>) not truncation; byte-exact vs the REFERENCE decoder 2026-07-09 07:01:28 -04:00
jpegai_icci_calibration.rs wai-rs: validate jpegai_icci against the reference decoder (ground truth, 2.4e-07) 2026-07-18 09:51:44 -04:00
jpegai_lef_calibration.rs wai-rs: jpegai_pipeline::lef_filter — LEF adaptive-sharpness post-filter (float-exact) 2026-07-14 05:13:39 -04:00
jpegai_live.rs wai: JPEG-AI is a live, self-sufficient capability (no schedule fixtures) 2026-06-22 03:11:37 -04:00
jpegai_lsbs_calibration.rs wai-rs: jpegai_pipeline::lsbs_refine — LSBS scale refinement (yhat → y_lsbs), exact on real data 2026-07-13 12:43:34 -04:00
jpegai_mans_calibration.rs wai-rs: byte-exact mANS entropy decoder (jpegai_mans) — sgm + fac paths (#55) 2026-07-07 22:38:36 -04:00
jpegai_mans_golden.rs wai: interactive + temporal cargo classes, provenance, telepresence 2026-06-13 23:16:42 -04:00
jpegai_mcm_calibration.rs wai-rs: jpegai_synthesis — add MCM context-model decoders (mcm_stage0/mcm_stage_n) (#54) 2026-07-07 17:26:51 -04:00
jpegai_reconstruct_calibration.rs wai-rs: jpegai_pipeline::reconstruct_yhat — the SGMM autoregressive spine (real data 76.8 dB) 2026-07-12 22:14:14 -04:00
jpegai_sigma_index_calibration.rs wai-rs: jpegai_pipeline::sigma_index — close the scale path (byte-exact, both planes) 2026-07-12 12:22:40 -04:00
jpegai_synthesis_calibration.rs wai-rs: jpegai_synthesis — whole-net integer JPEG-AI synthesis decoder (58 dB PSNR) (#49) 2026-07-07 07:42:11 -04:00
jpegai_uv_calibration.rs wai-rs: jpegai_synthesis — restore chroma + hyper decoders, add hyper_scale (all byte-exact) (#53) 2026-07-07 15:08:25 -04:00
neural_native_decode.rs wai: reconcile the neural + semantic subsystem onto main 2026-06-14 03:55:29 -04:00
semantic_path.rs wai: reconcile the neural + semantic subsystem onto main 2026-06-14 03:55:29 -04:00
world_model.rs wai: wai.world.model — generative-world transport (replay-equivalent action trace + provenance) 2026-06-27 17:25:02 -04:00
world_replay.rs wai: reconcile the neural + semantic subsystem onto main 2026-06-14 03:55:29 -04:00