Does your phone support Camera2 API? Will a GCam port work on it? This app answers both on the first screen — then proves the answer by opening a real camera session.
Most probes and checkers only read what a device claims. Manufacturers declare capabilities the hardware does not honour, and a Camera2 level forced on through build.prop looks identical to a genuine one. This app measures the difference.
A CLEAR ANSWER FIRST
The home screen puts the hardware level — LEGACY, LIMITED, FULL or LEVEL_3 — on a ladder, so you see where your device sits, not just a constant name. Under it: a plain-language GCam verdict — supported, degraded, or not supported.
GCAM AND GOOGLE CAMERA PORT COMPATIBILITY
Nine requirements the HDR+ pipeline depends on, checked one by one on your rear main camera:
• Camera2 hardware level, FULL or better
• RAW capture and DNG output
• RAW_SENSOR present in the stream configuration map
• BURST_CAPTURE
• MANUAL_SENSOR — manual ISO, shutter speed and focus
• Per-frame control, read from SYNC_MAX_LATENCY
• YUV and private reprocessing
• Logical multi-camera and hidden physical sub-sensors
Each gap is explained in words: whether a port merely loses a feature, or cannot take a photo at all. No specific port or version is recommended — those lists go stale, measurements do not.
LIVE VERIFICATION: DECLARED VS MEASURED
Eight tests open a real capture session and measure what happens:
• Session opens, and how long the first frame takes
• Per-frame control: does a request apply on frame N+1?
• Manual ISO: ask for 100, is 100 read back?
• Manual exposure: does 1/500 s hold steady across frames?
• RAW and YUV as concurrent streams
• Target frame rate in FPS, with dropped frames counted
• High-speed video, CONSTRAINED_HIGH_SPEED_VIDEO
• 10-bit HLG output
Declared, then measured, then verdict. When a device declares a capability the live test cannot confirm — the classic fingerprint of Camera2 switched on by force — the app says so plainly.
No preview is shown and no frame is ever saved; only metadata and timing are measured. The camera permission is needed only for this test.
FULL CAMERA HARDWARE INFO
For every camera the system exposes, front, rear and external:
• Sensor: active array, pixel array, physical size, pixel pitch, colour filter arrangement, orientation, timestamp source
• Lens: focal length, 35 mm equivalent, aperture, minimum focus distance, optical stabilisation, flash, zoom range
• Capabilities: all 21 values in REQUEST_AVAILABLE_CAPABILITIES, marked supported, absent or unmeasurable
• Streams: the complete configuration map — YUV_420_888, PRIVATE, JPEG, RAW_SENSOR — with every resolution, aspect ratio, minimum frame duration and the frame rate that follows
• Optics: ISO range with the analogue gain limit marked, exposure time in shutter speed and nanoseconds, exposure compensation in EV, noise reduction, edge enhancement and white balance modes
• Roles — main, ultra-wide, telephoto, macro, depth — inferred by comparing 35 mm equivalents, since Camera2 never states them
• Every raw CameraCharacteristics key, searchable, including undocumented vendor keys, with each value's Java type
SNAPSHOT AND COMPARE
Save the current state before you change anything: a build.prop edit, a Magisk module, a custom ROM, an OTA. Come back and compare — the app tells you exactly which line changed, and whether it improved or regressed.
EXPORT
JSON, Markdown and CSV. Reports are always in English so they paste straight into a bug tracker or an XDA thread, and carry no device identity — no serial, IMEI or advertising ID.
WHO IT IS FOR
Camera app developers, GCam users weighing up a port, anyone probing a new phone before buying, ROM and Magisk users verifying a Camera2 enabler worked.
Not affiliated with or endorsed by Google. GCam is referenced only to describe compatibility.
Probe Camera2 API level, GCam compatibility and RAW — tested, not guessed.