Camera Tests camera resolution 720p

Camera Resolution Test

See the actual capture resolution your browser and camera negotiate.

Interactive tool

Run the test

Runs in your browser

Negotiated resolution

The values below are what the browser and camera actually agreed on after getUserMedia — not always the ideal you requested. The stream never leaves your device.

Permission status

Checked in your browser. DeviceHub does not store permission grants.

  • Camera Checking…

Live results

Metrics update as you run the test. Nothing is uploaded.

Loading

Waiting for interactive tool output…

Device information

Labels and capability details reported by your browser.

No device details yet.

Description

About Camera Resolution Test

Introduction

The DeviceHub Camera Resolution Test reveals the actual capture dimensions your browser and camera negotiate, not the resolution printed on retail packaging or listed in a spec sheet. Marketing stickers often claim 1080p, 2K, or 4K, yet conferencing stacks, USB bandwidth limits, driver defaults, thermal throttling, and browser constraint policies can settle on a smaller frame than buyers expect. This free browser tool starts a video track with getUserMedia, then reads width and height from MediaStreamTrack.getSettings() so you see precisely what web applications are likely to receive during a call or recording session. Remote workers preparing for HD client meetings, students verifying proctoring requirements, streamers validating a new USB webcam, and support teams diagnosing blurry-video tickets get a concrete pixel readout without installing Logitech G Hub, OBS, or vendor-specific utilities. The readout reflects negotiated capture size rather than how large the preview appears on screen, which prevents CSS scaling from misleading you. Pair this page with the full Webcam Test when you need both objective numbers and a subjective look at sharpness, focus, and compression artifacts in real time. Support engineers often ask for getSettings() screenshots during tickets, this page produces that evidence without third-party screen recorders.

What this tool does

The tool requests camera access through getUserMedia, opens an active video MediaStream, and displays the selected track's reported width and height pulled directly from getSettings(). It focuses on negotiated capture resolution rather than the CSS display size of the preview element, which can be scaled, letterboxed, or cropped independently by layout rules. When the browser exposes them, related settings such as frameRate and aspectRatio may appear alongside dimensions so you can see whether the engine traded pixels for smoother motion during negotiation. Device selection lets you compare a laptop's integrated sensor against an external webcam on the same machine under identical lighting. Stopping the test ends all tracks cleanly so the camera indicator extinguishes. The goal is an unambiguous answer to the question every support thread asks: what resolution is my browser actually capturing right now, in pixels, for this specific device and tab? Reading getCapabilities() max width and height when exposed helps you understand headroom above the active getSettings() pair without guessing from marketing materials alone.

When to use it

Run this test when a meeting platform looks soft despite owning a so-called 1080p camera, when you just bought a new webcam and want proof the browser can open a high mode, or when corporate policies or browser flags might cap capture size below hardware maximum. Use it after docking through a USB hub that may reduce available bandwidth, after switching between front and rear phone cameras, and when comparing Chrome versus Firefox versus Safari on the same hardware to document engine differences. Exam platforms, hiring tools, and telehealth portals sometimes require a minimum resolution threshold, this page provides an independent check before you enter a high-stakes session where device lock-in prevents switching mid-call. Content creators comparing 720p versus 1080p for streaming bitrate planning benefit from knowing the true upstream dimensions. IT staff validating corporate laptop imaging also use pixel readouts to confirm driver bundles expose expected modes to the web platform rather than only to native apps.

How it works

After getUserMedia resolves with a video constraint, the page inspects the first video MediaStreamTrack attached to the returned stream. MediaStreamTrack.getSettings() returns the currently applied configuration object, including width and height integers when the browser exposes them for that track. Those values reflect the negotiated capture resolution for this session, not necessarily the maximum listed in getCapabilities(), which describes supported ranges the device claims it can honor via applyConstraints(). Ideal width and height values in the getUserMedia constraint object can influence negotiation, but browsers may clamp requests based on hardware limits, other open tracks, power policies, and privacy guardrails. The HTMLVideoElement preview may letterbox or scale via CSS object-fit rules; the resolution readout still comes from track settings so display styling cannot fake a higher capture size. On mobile, orientation changes may cause getSettings() to report swapped dimensions until the track renegotiates. Some engines expose resizeMode or aspectRatio hints alongside pixel counts. Comparing getSettings() after a cold start versus after another app released the camera often explains sudden resolution jumps. Secure HTTPS context is mandatory for camera access in all major engines, and permission must be granted before labels and some settings populate reliably through enumerateDevices. When applyConstraints requests ideal width values, watch getSettings() after renegotiation completes because some drivers apply new modes only after a brief pause in frame delivery.

Step-by-step instructions

  1. Navigate to the Camera Resolution Test page on DeviceHub and click the Start button to begin the measurement session, ensuring you are on HTTPS or localhost so navigator.mediaDevices.getUserMedia is available in your browser without insecure-context blocks.
  2. Allow camera permission when the browser dialog appears, because without grant the page cannot open a live MediaStreamTrack whose getSettings() object contains meaningful width and height integers for your selected sensor.
  3. Select the specific camera you intend to use for meetings or recording from the device list if more than one videoinput is enumerated after permission is granted through mediaDevices.enumerateDevices().
  4. Wait until the preview shows a live moving image with stable exposure, then read the reported width and height values displayed from MediaStreamTrack.getSettings() rather than inferring resolution from CSS-scaled preview dimensions.
  5. Optionally switch to a second camera or reconnect through a different USB port on a powered hub and compare negotiated sizes side by side across separate runs to spot bandwidth limits or driver default differences.
  6. Click Stop when you finish measuring so track.stop() releases the sensor, the OS camera indicator turns off, and other applications such as Zoom or OBS can open the device without NotReadableError conflicts. If numbers still look low, close conferencing apps, unplug USB hubs, and rerun Start for a clean negotiation.

Common problems

Lower-than-expected resolution often means another process is sharing the camera, a USB hub is bandwidth-limited for dual high-mode streams, or the browser defaulted to a power-saving profile on battery power. Some integrated cameras advertise high modes in marketing materials but only expose modest sizes to the web platform through conservative drivers that reserve full modes for native apps. Mobile browsers may report different dimensions for front versus rear lenses or after rotation because facingMode and screen orientation change negotiation mid-session. If readings stay blank or show zero dimensions, the track may not be live yet, wait for an active stream before calling getSettings(). Virtual cameras, OBS virtual cams, and beauty-filter utilities can advertise unusual or fixed dimensions; disable them temporarily for a hardware baseline. Remember that getCapabilities() maximums are aspirational until you successfully applyConstraints and confirm the new settings stick in a follow-up getSettings() read. Corporate VDI sessions may report capped dimensions unrelated to physical webcam capability, compare on bare metal when possible.

Privacy explanation

Resolution values are derived locally from your live MediaStreamTrack settings object and never leave your browser session as uploaded video or telemetry beacons. Frames displayed in the preview are rendered on-device only; DeviceHub servers do not receive pixel buffers or store dimension logs tied to your identity or hardware serial numbers. The tool needs camera permission solely to open a short-lived stream for measurement, and you can stop capture immediately when finished through the Stop control. Revoke site camera access anytime through browser settings if you prefer not to retain grant for this origin after troubleshooting completes. No historical resolution chart is persisted remotely when you close the tab.

Runtime principles

Built for the browser

What happens when you run this test — without downloads or accounts.

  1. 01

    Runs in your browser

    Camera Resolution Test uses standard web APIs — no install, extension, or desktop app required.

  2. 02

    You control permissions

    Your browser asks before camera or microphone access. You can revoke access anytime in site settings.

  3. 03

    Media stays local

    Preview and level checks are processed in this tab. DeviceHub does not upload your live media streams.

Compatibility

Supported browsers

Expected support for modern engines. Individual APIs may still vary by device.

  • Chrome

    supported

    Latest stable

  • Firefox

    supported

    Latest stable

  • Safari

    supported

    Latest stable

  • Edge

    supported

    Latest stable

Devices

Supported devices

Hardware and form factors this browser test is designed to exercise.

  • Built-in webcams

    Laptop and all-in-one front cameras via getUserMedia.

  • USB webcams

    External cameras enumerated after permission is granted.

  • Mobile cameras

    Phone and tablet browsers with camera permission.

  • Permission note

    Requires camera permission in the browser site settings.

Privacy

Your data stays with you

Camera Resolution Test is built privacy-first. Diagnostics run in your browser session whenever web APIs allow.

Read our privacy policy

Troubleshooting

Common problems

Quick fixes before you dig into FAQs.

Reported size is lower than the camera marketing specs
Browsers often negotiate a conservative default. Close other apps using the camera, then retry. Some devices only expose higher modes to native apps, not to getUserMedia.
Width and height look swapped
Check device orientation and whether the track reports landscape settings while the phone is rotated. Re-run after locking orientation if needed.
Settings show 0×0 or blank
Wait until the stream is live, then refresh readings. Ensure permission is granted and a video track is active before reading getSettings().

FAQ

Frequently asked questions

Structured answers for users and FAQ rich results.

Browse FAQs
Is the resolution shown the camera’s maximum?
Not necessarily. The tool reports the width and height negotiated for the active MediaStreamTrack, what the browser is capturing now, not always the marketing maximum.
Why is my 1080p webcam showing 640×480?
Browsers often start with conservative defaults, or another app may be sharing the device. Close other camera users, retry, and compare with a second browser if needed.
Does CSS preview size change the reported resolution?
No. The on-page video element can scale for layout. Reported resolution comes from MediaStreamTrack.getSettings(), not the CSS box.
Can I force 4K capture in this test?
Only if your browser and camera successfully negotiate that mode for getUserMedia. Many devices expose 4K to native apps but not to the web.
Is resolution data uploaded?
No. Dimensions are read locally from your live track and shown in the page. Frames are not stored on DeviceHub servers.
Should I use this or the Webcam Test?
Use Webcam Test for a full live preview smoke check. Use Camera Resolution Test when you specifically need negotiated pixel dimensions.

Newsletter

Updates coming soon

A lightweight email digest for new tools and release notes is planned. No signup form is live yet — check Release Notes for product updates.

Release notes

Need another diagnostic after Camera Resolution Test?

Explore related DeviceHub tools that pair well with this test.