v134 · media / devices

Video Quality Advisor

When the OS or camera applies background blur, your app should skip adding its own software blur — double-blurring degrades quality and wastes CPU. Read MediaStreamTrack.getSettings().backgroundBlur to adapt. Simulate different device states and see what the advisor recommends.

checking MediaDevices… checking backgroundBlur field…
Chrome 134 exposes backgroundBlur in MediaTrackSettings. Your app reads this after calling getUserMedia() to detect whether the platform is already blurring. If yes, skip your own WebGL/CSS blur pass — the user gets a cleaner image and your app saves significant GPU cycles.

Simulate device state

Detected track settings

Advisor recommendations

    Quality score estimate

    Integration pattern

    async function startVideoWithAdaptiveBlur(videoEl) { const stream = await navigator.mediaDevices.getUserMedia({ video: true }); const track = stream.getVideoTracks()[0]; // Chrome 134: read hardware/OS blur state const settings = track.getSettings(); const platformBlur = settings.backgroundBlur ?? false; videoEl.srcObject = stream; if (platformBlur) { // OS/camera already blurring — skip software pass console.log('Platform blur active — skipping app blur'); applyAppBlur(false); } else { // No platform blur — apply software blur if user wants it applyAppBlur(userPreference.blur); } // Re-check if track settings change (e.g. user toggles OS blur) track.addEventListener('configurationchange', () => { const updated = track.getSettings(); if (updated.backgroundBlur) applyAppBlur(false); }); }

    Real getUserMedia probe

    Press the button to request getUserMedia and read actual track settings.