Knowledge Base
Browser Permissions & WebRTC
Everything about how Chrome, Firefox, Safari, Edge, and Brave individually manage camera access, saved site permissions, and the specific WebRTC errors — NotAllowedError, NotFoundError, NotReadableError — each one throws.
Once a camera clears the operating system's own permission gate, it hits a second, completely independent one: your browser's own saved decision for that specific site. This is why a camera can work perfectly in a plain browser test and still fail on a specific website — Chrome, Firefox, Safari, and Edge each remember a separate allow-or-block decision per domain, indefinitely, until it's manually reset, and that saved decision has nothing to do with whatever the operating system already permitted.
When access does fail at this layer, the browser reports one of a small, standardized set of WebRTC errors — NotAllowedError, NotFoundError, NotReadableError, OverconstrainedError — and each one means something specific and different: a permission actively denied, a device that couldn't be located at all, a device found but already locked by another process, or a request for capabilities the camera simply doesn't support. Reading the exact error name in your browser's console, rather than guessing from a vague on-screen message, is usually the fastest way to know which of these you're actually dealing with. This category also covers the genuine architectural differences between browsers — Brave's fingerprinting protection can restrict camera enumeration in ways Chrome's doesn't, Firefox's Enhanced Tracking Protection interacts with camera-requesting scripts differently, and Safari's permission model resets more aggressively across macOS updates than the others.
If you're troubleshooting across more than one browser on the same machine, testing each one independently rather than assuming a fix in Chrome carries over to Firefox is worth the extra few minutes, since these permission systems genuinely don't share any saved state with each other.
Browser choice itself can also matter for reasons beyond permissions specifically — Brave's privacy-first defaults, Firefox's independent WebRTC implementation, and Safari's tighter integration with macOS's own privacy daemon each introduce genuinely different failure modes that a Chrome-focused troubleshooting guide simply won't anticipate at all, regardless of how thorough or well-intentioned that other guide otherwise is.
30 articles in this category:
- How to reset site permissions when Chrome blocks webcam by default?
- Why does Chrome say "Camera in use by another application" when no app is open?
- How to select correct default webcam in Google Chrome multi-camera setups?
- Why is my browser webcam test showing 0 FPS or frozen screen?
- How to enable WebRTC camera hardware acceleration in Chrome flags?
- How to fix "MediaDevice.getUserMedia" error in Google Chrome?
- How to force Firefox to prompt for camera permission again?
- Why does Firefox webcam test show gray box instead of video feed?
- How to check WebRTC camera permissions in Firefox `about:config`?
- How to test if Firefox enhanced tracking protection is blocking webcam stream?
- Why does my webcam lag in Firefox but work smoothly in Chrome?
- How to allow webcam access in Safari for specific website permanently?
- Why is webcam permission prompt greyed out in Safari settings?
- How to test camera on Safari iOS when WebRTC fails to request permission?
- Why does Safari show black video preview when testing camera online?
- How to enable camera access in Edge browser privacy shield?
- Why does Brave Shields block webcam test media streams?
- How to test webcam on Brave browser without disabling fingerprint protection?
- How to clear saved camera choices in Microsoft Edge?
- What does `NotReadableError: Could not start video source` mean in webcam tests?
- How to fix `NotFoundError: Requested device not found` webcam test error?
- What causes `NotAllowedError: Permission denied` in browser camera tests?
- How to test if your browser supports 60FPS webcam streaming?
- Why does online webcam test say "Camera disconnected" mid-test?
- How to test webcam aspect ratio (16:9 vs 4:3) in modern browsers?
- How to test webcam resolution capability online without downloading software?
- Why does webcam output look mirrored on browser test page?
- How to un-mirror or flip webcam feed online during diagnostic testing?
- How to measure webcam video latency and input lag online?
- What does PNG file size vs JPEG file size mean in webcam diagnostic test?