State
starting
Source
–
Timecode
–
Rendering
–
Playback
–
Buffer
–
Frame check
–
Display check
–
Sound
–
Main thread
–
Last error
none

Frame check compares the frame number carried in each video frame with the timecode drawn on it. Display check reads both back from the finished picture, as it was shown.

The band along the bottom is the sync test. A white block in the video jumps one place on every frame, and the player blacks out the place it believes the block is in (orange outline). In sync you see no white at all. If the player is a frame late the block shows red with the word LATE; a frame early, blue with EARLY; two or more frames off, plain white. On this page video and marks are painted together, so they cannot come apart: use the Demo control to see what a lagging player looks like, and the "Overlay on video" page for the real test.

Blocking the main thread simulates a busy viewing device: it keeps this browser tab's main thread busy 95% of the time. Nothing is sent to the server, so the stream and other viewers are not affected.

To play another stream, add ?src= and the address of its playlist to this page's address.