๐ŸŽฌ Open a video โ†’ see its frames - pure C#

The fourth domain, closing the loop. The suite renders frames into an animation; here those bytes are decoded back by real 1.6 container decoders (Gif.Decode + Apng.Decode) and the recovered frames are tiled into the filmstrip below. A video is just frames + timing - and the frame strip is assembled with an Image-onto-Image Blit (ledger-300 item H, demonstrated). No System.Drawing.

media self-test: 34 KATs passed โœ“  ยท  GIF โ†’ 16 frames decoded  ยท  APNG round-trip: BYTE-EXACT โœ“ (8 frames)

โ–ถ the video (GIF)

CubeFrames โ†’ Gif.Encode โ†’ bytes
animated cube

๐ŸŽž the frames it decodes to

Gif.Decode โ†’ GifFrame[] โ†’ Blit each into one strip
filmstrip of decoded frames
encode โ†’ decode โ†’ recompose: the same frames come back out