demo · v131
policy + capability probe
getAllScreensMedia is gated by the all-screens-capture enterprise policy and Isolated Web App context. This page probes each precondition and reports the failing one so you can debug a deployment. Each tile turns green if your environment satisfies the gate.
policy
Needs
MultiScreenCaptureAllowedForUrls in enterprise policy AND an Isolated Web App context AND user gesture. On a regular browser the probe will report most preconditions as missing — that's expected.
preconditions probed
navigator.mediaDevices.getAllScreensMediaexistsnavigator.mediaDevices.setCaptureHandleConfigexists (related capability)- document is in a secure context
- document is an Isolated Web App
- Permissions Policy interface reports whether
all-screens-captureis allowed, when that interface is exposed - Enterprise allowlist status is called out as an out-of-band
chrome://policycheck - Screen Details API also available for monitor naming
the api
// One call returns one MediaStream per connected screen.
const streams = await navigator.mediaDevices.getAllScreensMedia();
for (const stream of streams) {
const [track] = stream.getVideoTracks();
console.log(track.label, track.getSettings().displaySurface);
}