Taking picture is extremely slow in low-light condition
Camera app for Android.
Brought to you by:
mark-h
LG G4 H815
LineageOS 15.1/Android 8.1
Open Camera 1.46 (from F-Droid)
Open Camera is extremely slow to take pictures, especially in low-light conditions : between the moment I press the button, to the moment the picture is effectively taken, up to 6 seconds can pass, making the app almost unusable except for static subjects.
During that time, the app will try to focus several times, and the flash will light several times as well. It feels as if Open Camera is unable to focus, flash and take the picture at the same time, and does these operations in succession, recognizing the suboptimal result, then trying again, etc.
Anonymous
I have the same issue. I'm using the latest version from f-droid.
The original camera of LineageOS and several others do not have this issue and make resonably fast images in low-light condifions (with bad quality but at the right time, not ~10 seconds later).
It makes the use of app almost impossible! So, please take it seriously and try to fix as soon as you can, it will be very appriciated!
And maybe there are work-arounds for this issue?
How does it behave if flash is off?
And to clarify, is the delay of 6 or 10 seconds before it even starts capturing? (I mean, in low light conditions the capture can take ~5 seconds in itself, since it takes 15 shots each with exposure 1/3s.)
Edit: actually my comment about low light is only for the "Noise Reduction" photo mode, when set to Low Light mode, but rereading I see this is about standard photos in low light conditions.
Last edit: Mark 2020-09-26
All described was when the flash is off.
Well, the main time is spend happens when Open Camera shows border around frame. I thought it's focusing time that gets out of control and rational limits.
About the moment of photo:
1) I have my hand in frame
2) I press Take phone in Open Camera with flash being Off
3) Frame in app has border.
4) I'm waiting 5 seconds, still no photo is done, I remove my hand from frame
5) I get a photo without a hand, so the "moment" (actually long moment) was missed.
Does it make it more clear? Feel free to ask any additional explanations or info if needed.
Last edit: ZaharS 2020-09-18
Just checked. The easy way to reproduce:
1) Reasonably dark place
2) Autofocus is on, flash is off
3) Press take a photo, white border appears around the frame.
4) Move phone ±5 degrees from side to side to prevent focus be perfect.
5) The photo is not taken, even in 20 seconds. White border and nothing happens until you stop moving phone and wait 5 seconds.
Thanks for the info. Just to check, if you do Settings/Settings manager/"Reset settings", does this still occur (in case it's specific to a particular setting)?
Try different focus modes (on the popup menu, second row below flash icons), does that affect the behaviour?
Is it affected by Settings/"Camera API" setting?
Do other third party camera applications work fine? Edit: Ah sorry I see you already said they are fine.
Also edit: what device do you have?
Last edit: Mark 2020-09-26
Mark, I made Reset settings and other test. Here are the results:
I decided to use this "c" focus mode from now on forever, but still got the issue if I clicked somewhere in the image (focus rectangle appears there).
Final test - I reseted the settings again to start clean again, turned flash off:
1. Focus a (Auto) - phone never takes photo while you move it in dark room.
2. Focus c (Cotinues Picture) - phone takes photo OK.
3. Focus c (Cotinues Picture) after I click anywhere to focus there - phone never takes photo while you move it in dark room.
The phone is Pocophone F1 (one of the most popular amoung all LineageOS users acording to their statistics).
Thanks for the info, that helps to narrow things down. It may be worth trying some other third party camera applications with touching to focus; also some like A Better Camera and Snap Camera HDR support auto-focus mode so that can be tested directly.
The issue still presents. And it happens on all 3 phones I have, not even in low-light conditions. Sometimes taking photo takes 1s, sometimes 3s (insane) and sometimes it's impossible to take photo. Other users are also affected in different way.
The video in OpenCamera works fine, other camera applications take photos fine.
Please investigate how is it possible that taking photo can take more than a 2 seconds at all. It's probably connected with specific way OpenCamera is working with autofocus.
It's a real dealbreaker, please fix it.
P.S. I have up-to-date version of OpenCamera from f-droid on these phones.
The issue happens in OpenCamera on PocoF1, One Plus 5 and other phones. Camera API version does not matter. The room does not even have to be dark at all.
I believe the this bug exists for all devices in some minor/major form.
To check on your device:
1) Flash is off
2) STD photo mode
3) Autofocus = a (auto)
4) Press "Take photo" of your table from 10 cm distance and before photo is made - start rotating/shaking phone a bit up and down. The photo is NEVER taken. I'm sure because it's not enough "focused". It's wrong, there should be small time limit - even a blurry photo is way better than none at all.
Thanks for the info. Note I can't reproduce this problem with these settings/situtation on my devices, so it does seem to be either device or LineageOS specific.
Touch-to-focus in continuous mode temporarily switches to doing an autofocus, so I guess that explains why the problem shows up there too.
For other camera applications - to clarify, did you test third party ones that allowed switching to auto-focus?
Yes. E.g. stock Android "Camera". It has auto-focus on touch and it makes photos without problem even under the table in the dark in fast motion.
Yes, the photos are not focused, blurry but at least I have some photos. OpenCamera provides no photos at all in such conditions on 3 my phones with different Android versions as described above. The problem exists least for several years imho. Please help.
"Yes, the photos are not focused, blurry"
I think this still suggests the autofocus isn't working quickly on these devices - possibly the stock camera just goes ahead and takes a photo even if it hasn't focused, whilst Open Camera waits until the autofocus operation has completed.
Even if I changed Open Camera to be like the stock camera, it just makes autofocus mode (or touch to focus) pointless if they don't focus and leave a blurry photo?
Well, no, it's some issue with OpenCamera approach for focus. Because one of the phones is Poco F1 with almost the best auto-focus on the market:
https://www.dxomark.com/xiaomi-pocophone-f1-camera-review/
And Poco F1 is also quite popular, especially among LineageOs users.
Just today I tried to make photos with OpenCamera with Poco F1 and failed - even in a daylight in the room I could not take photo fast (in less than 2 seconds), so I had to close OpenCamera and restart it with video record. Maybe it's because "focused" criteria is somewhat wrong or something - it can wait too long, literally minutes if you move phone from side to side.
It ruins all the experience. And happens on all 3 phones I have with OpenCamera.
P.S. Is it possible to catch the situations when focusing takes more than provided amount of time (e.g. 1 second) and stop it and take picture as it is?
Last edit: ZaharS 2021-05-02
I guess I'm still confused by the earlier "the photos are not focused, blurry" (for stock camera) - a camera taking blurry photos doesn't seem one I'd describe as best auto-focus on the market. So something must be different for them not to have seen this.
I could add an option to say don't wait for autofocus, but it just replaces one issue (slow autofocus) with another (unfocused pictures). Also, if you don't mind photos coming out unfocused, I wasn't sure why you are touching to focus?
It has one of the best auto-focus on the market. And stock camera focus fine in almost all conditions. I just make a special example with moving camera fast continuously so that autofocus on any camera would be impossible. In this case OpenCamera never takes any photo at all. And other camera apps take photo as good as they can. It's just an exaggerating experiment. Can you do it yourself? Will OpenCamera take photo in 30 seconds then or at all? If moving it rapidly.
The real problem is this - in 99% conditions stock camera and takes picture faster and reliably while OpenCamera can fail to take picture at all showing white border of focusing in normal semi-dark conditions! It's a pain. It happens on 4 phones, 3 of them LineageOS and one is stock xiaomi phone. In all cases using OpenCamera is a pain when you often miss the photo.
I"M SURE A LOT OF PEOPLE AFFECTED BY THIS BUG. They just don't report anything, simply switching to stock camera or other app. Please investigate further, it's crucial for your app. I can test version with auto-focus time limit, tell if it's any better or something new can show up.
I tried on my Galaxy S10e with shaking camera fast, in auto-focus mode, and the photo is taken without problems - I tested several times (old API and Camera2 API).
Can I clarify the behaviour when not doing that experiment, both in Open Camera, and using touch to focus in the stock Android camera?
Is it affected by Settings/"Camera API" setting?
"Do you use some ready-to-go auto-focus command of the phone? Does it have any options on call?"
Yes this uses autofocus method in the Android camera API, and I wait for a callback which says success or fail.
I checked the shaking camera test on two phones:
- Poco F1 - photo is never taken. One of the most popular LineageOS phones with a great autofocus and good overall camera. I have LineageOS on Android 10.
- Wileyfox phone with LineageOS on Android 8.1. - photo is always taken after 1-2 seconds of moving.
So the issue is not that simple, because it also happens on the Wileyfox phone, just not always and not now (maybe light conditions matters in that case).
NOTE: Camera app from stoke LineageOS on the same Poco F1 takes the photo always in these conditions.
Please rephrase the question, I did not get it.
No, I checked it on Poco F1, Photo is never taken on moving with both options of Camera API. Only when I stop moving.
Last edit: ZaharS 2021-05-31
"I checked the shaking camera test on two phones:"
What happens when using other camera apps with this test - if you touch-to-focus then try taking a photo? If a photo is taken, does it come out focused?
Sometimes stock camera app does not take photo too if moving is fast. But the moment I stop - the photo is taken.
The problem is that Open Camera does not take photos in pretty good conditions, on grey background for example. It takes ridiculous amount of time to take one - 10+ seconds, the moment is lost and it makes the app unusable and unreliable.
I also have the same issue on Oneplus 5S. So, all my phones have this issue. I'm pretty sure majority of people have it too sometimes.
It's such a deal-breaker and so annoying that I'm going to leave Open Camera on all phones someday. I beg you do somehow address this issue.
Because I'd like to have a photo focused. But even if it's not 100% perfect - it's better to have 99% perfect photo than no photo at all (like happens with OpenCamera). So I touch for focusing and hope it'll work. Sometimes it does not and we have no photo at all in 10 seconds of the moment we wanted to capture.
I'm not familiar with the code. Do you use some ready-to-go auto-focus command of the phone? Does it have any options on call?
I have it on all phones and do not want to give up on OpenCamera. Also other users do suffer but provide no useful feedback, so they do not reach you.
Any ideas how I could help you to investigate and solve this issue? I can run test apk builds for checking on the same phone in the same 100% problematic light environment or something else.
I beg you to fix this issue!
Today I also had problems to take photo. OpenCamera was just "making" photo for 10+ seconds while everybody was waiting. The camera was not moving, the environment was reasonably dark. So, it's the described bug 100%.
For now I have to move to some different camera app because of this bug on all 3 different phones. Really hope, Mark will fix it some day.
Still suffer from this issue with Auto-Focus mode.