Hi,
has anybody been able to access the front-facing camera properly?
After "breaking" the camera by fuzzing it with different camera parameters I got at least a (complete?) list with available parameters so that I could access the ffc and get a camera preview. However, the problem is, that the preview size is different from the actual picture size which ends in having only one half of the preview size captured on a picture.
Here are the parameters I got from the device through the Log:
Code:
sharpness-max=4;
anti-shake=0;
sharpness-min=0;
digi-zoom=0;
metering=center;
sharpness=2;
contrast=2;
whitebalance=auto;
scene-mode=auto;
jpeg-quality=100;
preview-format-values=yuv420sp;
rotation=0;
jpeg-thumbnail-quality=100;
beauty-shot=0;
preview-format=yuv420sp;
preview-size=800x600;
focal-length=2.78;
iso=auto;
slow_ae=off;
camera-id=2;
flash-mode-values=off,on,auto,torch;
preview-frame-rate-values=30;
chk_dataline=0;
preview-frame-rate=30;
focus-mode-values=auto,macro;
jpeg-thumbnail-width=320;
scene-mode-values=auto,portrait,landscape,night,beach,snow,sunset,fireworks,sports,party,candlelight;
vtmode=0;
jpeg-thumbnail-size-values=400x240,320x240,0x0;
video_recording_gamma=off;
preview-size-values=800x600,1024x600;
picture-size-values=2048x1536,1600x1200,800x600,2048x1232,1600x960,1024x600;
contrast-min=0;
AppShutterSound=0;
min-exposure-compensation=-2;
antibanding=auto;
saturation-min=0;
contrast-max=4;
vertical-view-angle=42.1;
blur=0;
horizontal-view-angle=54.4;
mode=0;
brightness=4;
jpeg-thumbnail-height=240;
focus-mode=auto;
I tried accessing the ffc with this code snippet:
Code:
Camera camera = Camera.open();
Camera.Parameters params = camera.getParameters();
params.setPictureSize(800, 600);
params.setPreviewSize(800, 600);
params.set("camera-id", 2); // using front-cam (2) instead of back-cam (1)
params.set("exifOrientation", 90);
Thanks in advance for some hints.
Hi, I have cpMiui, and since I want Google Cam I've installed from Magisk "Pixel2Experience" containing camera2api. Everything works but front camera is inverted. How can I fix it?
Solved
Found a fix for the front camera being flipped: You need to edit "/system/etc/camera/msm8996_camera.xml".
There are 4 entries: 2 for the back camera (CameraId 0) and 2 for the front camera (CameraId 2).
We'll edit only the 2 for the front camera: We'll change the "MountAngle" from 360 (which means "Defined by kernel") to 270.
Is this a Mistake from DevCheck softwere or My phone is not an orginal phone?
I have Mi 9t pro with 48MP primary Cam and 20Mp selfie but I check that with DevCheck application and I confused!!
See This Exported INFO:
Code:
DevCheck Report
Xiaomi
Mi 9T Pro
Nov 25, 2019 12:26
Uptime: 1d 17h 45m 27s
Deep sleep: 14h 53m 54s (35%)
HARDWARE
Qualcomm Technologies, Inc SM8150
Cores: 8
null
null
Frequencies:
300 MHz - 1785 MHz
710 MHz - 2419 MHz
Governor: schedutil
GRAPHICS
Vendor: Qualcomm
GPU: Adreno (TM) 640
OpenGL: OpenGL ES 3.2 [email protected] ([email protected], I3763001aef) (Date:03/07/19)
Resolution: 2340 x 1080
Screen density: 403.95105 ppi
Screen size: 6.38 in / 162 mm
RAM
RAM size: 6.0 GB
OTHER HARDWARE
Bluetooth support: yes
Bluetooth LE support: yes
USB host support: yes
Infrared transmitter: no
NFC support: yes
DEVICE
Model: Mi 9T Pro
Codename: raphael
Manufacturer: Xiaomi
Serial Number: b333c815
SYSTEM
Android Version: 9 (Android P)
Build: PKQ1.181121.001
MIUI: V10.3.1.0.PFKMIXM
Security patch: July 1, 2019
Architecture: aarch64 (64-bit)
Instruction sets: arm64-v8a armeabi-v7a armeabi
Kernel: 4.14.83-perf-g86c91b91
BATTERY
Technology: Li-poly
Health: Good
Capacity (reported by system): 4000 mAh
NETWORK
MAC address: E0:DC:FF:EC:B3:9B
5GHz band support: no
Operator: IR-MCI
Phone type: GSM
Dual SIM: yes
CAMERA
Resolution: 12.0 MP (4000x3000)
Focal length: 4.77 mm
35mm equivalent focal length: 25.8 mm
Sensor size: 6.40x4.80 mm
Crop factor: 5.4x
Field of view: 67.7°
Pixel size: 1.60 μm
Aperture: 1.75
Focus modes: infinity, auto, macro, continuous-video, continuous-picture
Flash modes: off, auto, on, torch, red-eye
ISO sensitivity range: 100-12800
RAW capable: yes
Image format: JPEG
Front Camera: 5.0 MP (2592x1940)
Don't worry, you are probably fine.
The Mi 9T's main and selfie camera are so called Quad Bayer sensors. That means they can shoot either in max resolution (48/20MP) when you want maximum detail, or when the lighting isn't good they can combine four neighbouring pixels into one "big pixel", effectively creating a lower resolution but more sensitive sensor.
For some reason, Xiaomi only supports the lower resolution, more sensitive camera modes in the standard android Camera2 API, which is the system that other apps (like your DevCheck) can use to access the camera. The higher-res modes are implemented in some proprietary way so that only the stock camera app can use them.
For those with fully functioning Pixel 4XL, how many camera devices does adb shell dumpsys media.camera indicate it has?
I'm working with one with known bad front camera, but camera devices show only 1. I would have expected 2 for the two back facing cameras, and 3 total for functioning front camera. Thanks for sharing any adb info from your phone.
== Service global info: ==
Number of camera devices: 3
Number of normal camera devices: 2
Number of public camera devices visible to API1: 2
Device 0 maps to "0"
Device 1 maps to "1"
Active Camera Clients:
[]
Allowed user IDs: 0
I've looked into this before, but curious if anybody's found any decent open source, or free, camera alternatives with support for the Note 10 Pro lenses. Not the decompiled ports of gcam, anxcamera, or leica camera.
There's Open Camera, but it doesn't support the lenses. The only one I've found so far that supports the lenses is FreeDCam, though the lenses are just numbered Front 1, and Back 0 - Back 6. And if you choose Back 6, it hangs.
david003 said:
I've looked into this before, but curious if anybody's found any decent open source, or free, camera alternatives with support for the Note 10 Pro lenses. Not the decompiled ports of gcam, anxcamera, or leica camera.
There's Open Camera, but it doesn't support the lenses. The only one I've found so far that supports the lenses is FreeDCam, though the lenses are just numbered Front 1, and Back 0 - Back 6. And if you choose Back 6, it hangs.
Click to expand...
Click to collapse
I have been using open camera and it does support all cameras in my device. They are indeed just numbered, and there are a few glitches, but it does work and takes great shots.
Make sure you have enabled camera2 api in settings.
I've installed OpenCamera again and selected camera2 api (I've tried that before, too). But I still don't see the lenses. Where do you select them?
A while ago i've used Snap Camera. Found it quite useful und extremely customizable.
Snap Camera HDR - Apps on Google Play
A Fast, Full Featured HDR Camera App, Gallery and Photo Editor.
play.google.com
I dont know if there is a free version available, since I thought this after testing it.
Does it support the extra lenses on the Note 10 pro?
I'm testing LineageOS now, and Open Camera does show the extra lenses with it, which I couldn't see with xiaomi.eu. It has a button to cycle through the lenses, though it still hangs on the last lens. I'll try using it for now, since I've used Open Camera before on my Note 4x, so I'm familiar with it.
From what I can see, these are the cameras/lenses available on the Redmi Note 10 pro that are exposed to Open Camera.
0 Main Back Camera
1 Front Camera
2 Depth Sensor (B&W) - not useful
3 Macro
4 Ultra Wide
5 Main Back Camera Better Quality Photos
6 unusable
7 unusable
8 unusable
Both 0 & 5 are the main back camera, but ID 5 produces significantly better photos. I'm not sure, but I suspect when accessed through ID 5 there's some internal pixel binning happening. ID 5 won't work for videos, though.
I was able to modify the source code to ignore ID's 2, 6, 7, 8 and change the order the cameras are cycled. So it cycles in this order when the multi-camera button is pressed:
0 Main Back Camera
5 Main Back Camera Better Quality Photos
3 Macro
4 Ultra Wide
The front/back camera toggle button still works as usual (and resets the back camera to 0, as usual).
This was the change I made to MainActivity.java. It requires Android Studio to change, build, and generate a new apk.
$ diff MainActivity.java MainActivity.java.new
402c402,415
< for(int i=0;i<n_cameras;i++) {
---
> int i=0;
> switch( preview.getCameraControllerManager().getFacing(i) ) {
> case FACING_BACK:
> back_camera_ids.add(i);
> break;
> }
> i=5;
> switch( preview.getCameraControllerManager().getFacing(i) ) {
> case FACING_BACK:
> back_camera_ids.add(i);
> break;
> }
> for(i=0;i<n_cameras;i++) {
> if(i != 0 && i != 2 && i < 5) {
413a427
> }
I did some more testing with Open Camera and cameras 0 & 5. I'm still not sure what the difference is, but camera 5 has a longer exposure in auto mode, and results in a brighter picture that seems to have less noise. But the lighting/exposure is not always accurate. It can be much brighter than the actual scene. It does work well for night shots, though (better than HDR).
I also found "Photon Camera" that is open source and does nice HDR shots.
[APP][CAMERA][ANDROID 8.0+][ARM64] PhotonCamera - Enhanced algorithms camera
PhotonCamera is ongoing alpha project what developed by our team including Urnyx05, Savitar and others developers. It is aimed at making advanced algorithms for photos available and able to be modified. Description: Shooting opportunities: -This...
forum.xda-developers.com
It was crashing at times, but setting the battery to unrestricted seems to be helping, so far. It has some sort of "Unlimited" mode that crashes, and I'm not sure what that's supposed to be. There is a video mode, but it's fixed on 4k resolution in portrait with no way to change it that I can find. Also, there's no way to set the storage to the SD card.
It does have access to the different lenses on the Redmi Note 10 pro.
I'll attach some comparisons: Open Camera ID 0, ID 5, and Photon Camera. The Photon Camera lighting is most realistic compared to the actual lighting in the room.
Here's a few shots at night with Open Camera. You can see the dramatic difference between camera id 0 and id 5. Camera id 5 is better at night; even better than using hdr. Maybe id 5 is an internal night mode?
Just wanted to add: I tried adjusting the exposure compensation in Open Camera, currently to -1.00 EV, and it makes a big improvement. By default photos seem over exposed. Maybe it's just a sensor configuration with the Note 10 pro, and it needs to be adjusted with this setting.
With exposure compensation, comparison to Photon Camera HDR usually favors the Open Camera shot.
Using a camera2 api app, I found some more information about the cameras in the Note 10 pro.
Camera ID 5 reports as a "LOGICAL_MULTI_CAMERA" for physical camera ID's 0 and 2. So it's the main back camera that is also using the Depth Sensor (id 2). If I manually focus on a certain spot, it does produce a nice bokeh effect. The depth sensor also seems to help with night shots.
Interestingly, Camera ID 6 also reports as a "LOGICAL_MULTI_CAMERA" for physical camera ID's 0 and 4, which would combine the main camera with the Ultra Wide camera. I haven't been able to get that one to work with Open Camera, though, and not sure of it's purpose. There are also others, not sure of their purpose, but they also don't work with Open Camera.
I'll attach the text report with the camera2 api info.