Skip to main content
This page is the demo

Video you can put in a receipt.
Every frame, the same bytes everywhere.

wai.video.int_motion wai.video.int_hyper frame-state-equivalence In the standard

Why the whole decode is integer: each frame is rebuilt by integer block motion compensation from the previous frame plus an integer-quantized residual, so every frame is byte-identical on every conforming sink. This page runs the reference implementation's decoder, compiled to WebAssembly, with no ML runtime, and re-checks each decoded frame against the checksum the native reference recorded. That is frame-state-equivalence.

decoding…
clip — frame — decode — frame hash (FNV-1a) — clip hash (FNV-1a) —

Frame-state-equivalence

As the clip plays, the page checks each decoded frame against the checksums recorded for that clip (the native reference's, for the two integer clips); — frames are checked. Motion compensation is array indexing and the residual is integer-quantized, so nothing in the decode depends on the machine. The real-footage clip moves by fractions of a pixel, so its motion compensation predicts on a half-pixel grid by integer bilinear interpolation ((a+b+1)>>1), still without a float.

A learned keyframe, integer frames after it

The neural keyframe clip is the registered capability wai.video.int_hyper: a learned integer int_hyper keyframe followed by integer motion-compensated frames, all decoded in integer arithmetic. Its frame checksums are the ones the encoder recorded for this demo clip, which is generated demo data rather than a conformance vector. Envelopes choose a capability per piece across separate objects; this clip keeps its pieces in one envelope. wai-pack, the packager, reads a declared policy and cuts pieces at scene changes, and writes a package with a stage index and a signed receipt; refinement layers in packages and choosing the capability per piece come next.

Which hash is which

The frame hash and clip hash in the readout are 64-bit FNV-1a checksums of the decoded RGB bytes, compared with the values the native reference implementation recorded for the same clip. A signed video receipt hashes each decoded frame with BLAKE3 and binds those hashes, the codestream hash and the reconstruction work under one Ed25519 signature. The reference engine is Apache-2.0 in the open-standards repository.