demo · v131
multi-monitor mosaic dashboard
The motivating UI for contact centers and trading desks: every monitor on the device rendered as a tile in one frame. Click capture, pick a grid layout, and the page paints one <video> per MediaStreamTrack. The labels match the track.label the OS reports.
policy
Needs the
MultiScreenCaptureAllowedForUrls enterprise policy + an Isolated Web App context. Without those getAllScreensMedia() rejects with NotAllowedError.
click capture to populate
snapshot
capture a screen before taking a snapshot
the api
const streams = await navigator.mediaDevices.getAllScreensMedia();
for (const stream of streams) {
const [t] = stream.getVideoTracks();
const v = document.createElement("video");
v.srcObject = stream;
v.autoplay = true; v.muted = true;
grid.appendChild(v);
}