MedCam browser camera compatibility: what works, what needs a fallback
MedCam runs as a website and does not require a particular smartphone brand. That does not mean every camera feature is available on every phone, operating system or browser. The browser decides which camera APIs it exposes, the person must grant camera permission, and the hardware determines the actual image quality. This guide explains how to get the best available capture without promising equivalent results on all devices.
Browser compatibility matrix: expected features, not device certifications
This matrix is based on browser API documentation, not direct testing on all these browsers. MedCam checks capabilities again on each visit. A browser supporting an API does not guarantee that a particular phone grants permission, exposes focus/torch, or produces a clinically readable photo.
| Browser family | Live browser camera | Direct file share | Fallback |
|---|---|---|---|
| Chrome / Edge / modern Opera / Brave / Vivaldi (Chromium) | Normally available on HTTPS if permissions and hardware allow | Varies by OS, installed apps and file type | Native camera or file picker; download JPG/PDF |
| Safari on iPhone, iPad, macOS (WebKit) | Normally available on supported current versions; camera controls vary | May be supported for accepted file types | Phone Camera app or image upload; download |
| Firefox on Android / desktop | Normally available on supported versions | Native Web Share not available in desktop Firefox support data | Download JPG/PDF and attach in the desired app |
| Samsung Internet / modern Opera Mobile | Available on supported versions, subject to permissions | Depends on browser/OS version | Use the device camera or choose a file |
| Opera Mini (Extreme/data-compression mode) | Not supported; no live preview or Auto Capture | Not supported | Read guides; open a full browser for MedCam, or capture and share in the phone’s camera/messaging apps |
| UC Browser, QQ, Baidu, other regional browsers and in-app webviews | Version- and vendor-dependent; not validated in this release | May be missing or restricted | File picker if available; otherwise use a full browser |
| Old/feature-phone browsers without JavaScript modules or Canvas export | Not supported by this app | Not available through this app | Static guides only; device camera and operating-system sharing |
Sources: Can I use — Camera Stream, Can I use — Web Share, Opera Mini authoring guidance, and MDN secure camera API. Support lists can change; browser checks are preferable to brand guessing.
How automatic phone/tablet camera adjustment works, with representative brands.
What the new browser check does
When you open the camera workspace, the browser capability panel explains whether live capture appears technically possible, whether native sharing is unavailable, and whether secure cryptography is present for experimental UMF. If the live camera API is not accessible, the Enable Camera button is disabled rather than pretending to work. It does not contact an external service, fingerprint your camera, collect a photo or guarantee medical image quality. The guides remain usable without JavaScript.
Test your own browser: Open MedCam Browser Self-Test. It checks features locally and tests a real camera only after a separate permission click.
Three levels of capture support
| Level | Required feature | What the user gets |
|---|---|---|
| Live camera + optional still-photo API | HTTPS, browser permission and getUserMedia; ImageCapture is optional | Live preview, quality guidance, Auto/Manual capture and higher-resolution stills where supported |
| Basic browser camera | HTTPS, getUserMedia and video-to-canvas support | Manual capture and preview guidance; the photo may have only the video-stream resolution |
| Native camera or file selection | Browser file selection | Choose an existing photo or use the phone's camera application when offered; preview quality guidance is unavailable before capture |
Camera permission is not needed to load an existing image. No app can force permission or unlock camera hardware that the operating system makes unavailable.
Android phones, including older and low-cost devices
- Use an up-to-date browser where possible, and open the Cloudflare HTTPS website in a normal browser tab rather than an in-app web view.
- Tap Enable camera. If the phone reports a blocked camera, check its browser permission settings and close any other app using the camera.
- If the phone cannot handle continuous preview, select Use phone camera or upload a saved photo instead.
- Low-memory phones may need smaller source images. MedCam checks supported file headers before attempting a costly decode and limits derived-canvas size on devices that report low memory.
iPhone, iPad, Mac and Safari
Use HTTPS and allow the browser to access the camera. Safari may expose different camera settings from Chromium browsers. Do not expect torch, zoom, focus control or high-resolution still capture to appear simply because the hardware has those features. If a photo is blurry, try the built-in Camera app first and upload the original image afterwards. HEIC/HEIF files may be readable on some systems but not others; when the file cannot be decoded, convert a separate copy to JPEG or PNG using a trusted local method.
Windows, macOS, Linux and desktop browsers
For a connected USB camera or laptop webcam, grant browser access and choose a camera when the browser provides a device list. Some webcams do not offer manual focus, flash or full-resolution still photography. If the desktop computer has no connected camera, upload a photo from the phone. Browser restrictions, enterprise policies and device drivers may prevent live capture even when the webpage loads correctly.
Other operating systems and regions
MedCam's lightweight HTML/CSS/JavaScript approach has no mandatory Google login, app store installation, remote image API or external font CDN. This reduces dependencies, but site reachability in any country—including networks with restrictions—still depends on local regulations, DNS, HTTPS connectivity and the chosen hosting provider. Compatibility with a specific browser or operating system can be claimed only after that combination is tested.
What the quality score actually measures
The experimental image-quality score detects selected pixel patterns that may indicate blur, unstable preview frames, clipped exposure, reflection or approximate borders. A high score is not proof that medical structures are readable or that a clinical record is complete. Auto Capture may refuse to trigger even when a photo is otherwise usable: switch to Manual, then inspect fine lines, visible labels, all film panels and any reflections before exporting.
How to get the best photo from a weak camera
- For transparent X-ray/CT/MRI films, use even backlighting if available; a printed report should instead be illuminated from the front without harsh glare.
- Clean the lens, remove protective film from the camera and use the main rear lens where accessible.
- Move the camera closer rather than relying on digital zoom, while keeping the entire subject in frame.
- Keep the phone parallel to the film and support it with both hands or a stable stand.
- Check the still image carefully. If small details are missing, retake using the phone's native camera, or request the source DICOM study when clinically necessary.
Privacy, exports and ads
Image processing in the prototype is local to the browser. An exported UMF package includes the untouched original, so patient labels or EXIF metadata may be present. Preview and export should remain free of third-party analytics and advertising scripts that can access patient images. If ads are enabled on educational pages, the website operator must update the privacy policy, consent controls and content security policy to match the actual integration. An automatic footer clock is not a publication or medical-review date.
Need help?
Start with the Auto Capture quality guide, review the Privacy policy, and see the medical-use limitations. Technical references: MDN getUserMedia and MDN HTML capture support.