HTML video pool
Prewarmed elements and controlled seeks.
BROWSER VIDEO / MUSICAL WORKLOADS
Four strategies. Up to eight decks. Compare musical cuts, seeks and speed ramps on your hardware.
Prewarmed elements and controlled seeks.
Mediabunny with bounded frame reuse.
Decode first, play from resident textures.
Experimental capability probe.
THE EVIDENCE
Gray marks the best value per column; the highlighted strategy card and row hold the best result at the highest deck count. Workloads, deck counts and memory budgets can differ, so check conditions before concluding. Select two rows to compare, or Reload a run to repeat it.
Loading saved runs…
p95 is the worst per-deck cut p95, not a pooled percentile. Missing values stay blank. Ramps use source error and cadence; cut latency is not a ramp score.
YOUR MACHINE / YOUR RUN
Demo media selected. Local files stay in browser memory.
Run the complete suite, or export this session for later comparison.
The full suite takes about 72 minutes plus preload. Keep this browser tab visible. Switching away from the lab stops and invalidates an active run.
READ BEFORE COMPARING
This is an interactive browser benchmark, not a unit-test runner. It uses identical media and seeded schedules to exercise clip switching, position jumps, repeated stutters and speed remapping. Unit tests separately validate the scheduler and resource lifecycle.
Every adapter presents through WebGPU. The HTML pool baseline is adapted from Beatmaxxer's actual prewarm/commit/seek strategy. Mediabunny uses WebCodecs with a bounded image cache. The fully resident bank decodes once and stores GPU textures. libmedia is withheld from scoring until seeking, decoder identity and frame timestamps can be verified together.
Match media hashes, audio/grid hashes, deck count, resolution, seed, workload, duration, revision, memory budget and cache conditions. A large resident GPU bank trades preload time and memory for runtime responsiveness. It is not a language benchmark.
The reference workstation previews showed responsive resident-texture playback, including eight switching decks and independent ramps. They do not constitute three repeated two-minute trials per configuration or the planned ten-minute soak. Older revisions use different observation boundaries and are labeled legacy. libmedia's failed probes remain visible.
AudioContext drives the transport. Frame timestamps and WebGPU submission estimate presentation; they do not measure screen scanout or acoustic delay. Native media cadence and 24fps remapping output are distinct from display refresh rate. Hidden-tab and paused runs are invalid for comparison.
Clone the repository, install dependencies with Bun, and run the benchmark command described in the README. Included Redline media and analyzed events work without another repository or an analysis service. You can import exported runs here and export the filtered table as CSV or print it.
Detailed methodology & provenance ↗ · Earlier serial-seek diagnostic ↗