How Camera, Microphone & Device Access Works in Your Browser
Camera, microphone, and other device access in the browser depends on several layers. When something fails, the cause is usually at one of these layers. This page explains how they work and why devices sometimes fail even when they work elsewhere.
The 4 Layers of Device Access
Hardware layer. The physical device (camera, microphone, keyboard) must be connected, powered, and recognized by the operating system. If the OS does not list the device, nothing above can use it.
Operating system permissions. Windows and macOS have privacy settings that control which apps can use the camera and microphone. These apply to both desktop apps and browsers. If the OS blocks access, the browser or app will not see the device.
Browser permissions. When a website requests camera or microphone access, the browser asks the user to allow or block it. This is separate from the OS layer. A site can be allowed in the browser but still blocked by the OS, or the other way around.
Application or device selection. The app or site must then choose which device to use when several are available. Wrong or default selection leads to “no picture” or “no sound” even when permissions are correct.
Why Devices Fail Even When They Work
A camera or microphone can work in one app and not in another because each layer can be configured differently per app or per site. Permission conflicts occur when the user has allowed access in one place but blocked it in another, or when the OS and browser disagree.
Device locking is another cause: many systems allow only one process to use the camera or microphone at a time. If another app or browser tab is holding the device, the next app will get “not detected” or a black screen.
Wrong selection is common when multiple devices exist (e.g. built-in mic and USB headset). The app may default to a device that is muted, disconnected, or not the one the user expects. Fixing this usually means opening the app’s or OS’s device settings and choosing the correct input or output.
How Different Apps Use Devices
Zoom, Teams, Discord (desktop). These apps use OS-level device access. They respect Windows and macOS privacy settings and their own in-app device selection. If the OS blocks the app, the app cannot see the device. They do not use browser permissions unless you use the web client.
Browsers (Chrome, Firefox, Safari, Edge). Web pages use the browser’s permission model. The user must allow the site to use the camera or microphone; the browser then uses OS access on the user’s behalf. So both browser and OS permissions must allow access for a web tool to work.
Zoom/Teams/Meet in the browser. When you join a meeting from the browser, the same browser and OS rules apply. The meeting app is just a website; it cannot bypass the browser’s permission prompt or the OS privacy settings.
Common Failure Patterns
Not detected. The app or site reports no camera or microphone. Usually the device is blocked at the OS or browser layer, or another app is holding it. Check OS privacy settings and browser site permissions, and close other apps that might be using the device.
Wrong device. The app uses a different camera or mic than the user expects. Fix by selecting the correct device in the app’s settings or in the system sound/camera settings.
Permission blocked. The user previously denied access or reset permissions. Re-open the browser or OS permission screen and set the site or app to Allow, then reload or restart the app.
Poor quality. The device is detected but video or audio is bad. This is often hardware, driver, or network related rather than permission related. Updating drivers, changing the physical device, or reducing load on the system can help.
How DeviceCheck Tests These Layers
DeviceCheck’s microphone and webcam tools run in the browser. When you run a test, the browser requests access to the device; that request hits the browser permission layer first (allow/block for this site), then the OS layer (allow/block for this browser). If both allow, the tool receives a stream and can show levels or video.
So a successful test here means the hardware is present, the OS allows your browser to use it, and the browser has permission for this site. If the test fails, the failure is at one of those layers. The keyboard and screen tools do not use camera or microphone permissions; they only need input focus and display access.
Using the tools before a call or recording helps confirm that the permission and device stack are correct before you open Zoom, Teams, or another app. If the browser test works, the same device and permissions will usually work in browser-based meeting apps; for desktop apps, you still need to check OS and in-app device selection.