PureJsImage · JPEG XL
JPEG XL animation player and creator
Play, step through and export frames, or create a bounded animation from local sRGB images. Timing retains its encoded rational tick rate.
These tools use the current repository build. Repository functionality may be newer than the npm release. Static lossy encoding is qualified; lossy animation remains Experimental.
Try a sample or open a local file.
Actual stages and source reads
Teal: first source read. Orange: repeated read. This map shows library source requests, not HTTP packets. HTTP transfer, cache and managed working bytes are reported separately. Unavailable measurements remain null.
Timing, metadata and numeric evidence
No file opened.
Browser API
import { openJpegXlSequence } from 'purejsimage/jpegxl'
const sequence = await openJpegXlSequence(file)
try {
const frame = await sequence.frame(0)
console.log(frame.durationTicks, frame.header.animation)
} finally { await sequence.close() }Run codec work in a worker. The example uses the same public APIs as this tool. Playback retains rational timing and replays dependencies when selecting frames. The sRGB display retains only the selected frame; loop timing includes the cost of replay. Lossy creation is Experimental.