Antar grid-bench

Single-page loopback harness for the command-grid input path. Both ends of the WebRTC connection live in this page. The encoder canvas is the real renderCommandGrid, the sample loop runs the real CommandFrameDecoder, transport is real WebRTC. Constrain the sender's bitrate / scale to reproduce bad-link conditions deterministically — no DevTools throttling, no netem, no extension.

Test parameters
 repeat ×
chars/sec into the transient queue
set via RTCRtpSender.setParameters
×
wait after PC connect before typing — lets WebRTC reach steady bitrate
skip warmup entirely; types immediately after PC connect (production-realistic)
when scaleResolutionDownBy is applied. polled-1s = 1 s after addTrack via setInterval, matching the extension's patch
per-char redundancy across packets; prod default 3
extra time after last keystroke before reporting
idle

Report

(no run yet)
encoder canvas (sender)
received video (post-WebRTC)
decoder sample