Details
-
Bug
-
Resolution: Unresolved
-
P2: Important
-
None
-
6.8.0
-
Using FFmpeg backend
Motorola Razr 40 Ultra
OnePlus 12 (CPH2581)
Both running Android 14
-
-
Multimedia wk 43-44, Multimedia wk 47-48, Multimedia wk 51-2, Multimedia wk 5-6, Multimedia wk 7-8
Description
When using QCamera::FlashOn, flash mode is unreliable and causes problematic side-effects.
This issue is a bit flaky to reproduce but generally, when taking multiple image-captures, with a few seconds in between, with flash forced on, the camera-capture will become unresponsive and QImageCapture::onImageSaved is never called. In this case, it does not help to call QImageCapture::captureToFile multiple times.
I have observed multiple strange side-effects in this scenario, all happening seemingly undeterministically. In some cases, the auto-focus will stop working and be hard-locked to the focus distance where the image-capture began, even if I'm using QCamera::FocusModeAuto. In some cases, the flash can be left on permanently. In some cases, you can force the image-capture to finish without any flash if you set QCamera::setFlashMode(QCamera::FlashOff), but this is not consistent.
I have included the test-project that I use internally to test functionality, but this should apply to all apps.
Steps to reproduce:
- Have an Android device with a physical flash
- Set QCamera::setFlashMode(QCamera::FlashOn) (Default in the provided project)
- Point camera at the distance
- Call QImageCapture::captureToFile / Press "Capture" in the provided project (Even this step will sometimes lock up)
- When capture is finished, point camera at a close object
- Call QImageCapture::captureToFile / Press "Capture" in the provided project
Please perform the steps multiple times to confirm.
What do you expect to happen:
I expect each to call to QImageCapture::captureToFile() to result in an individual image with flash forcefully applied. I expect the camera to return to using auto-focus if I'm using QCamera::FocusModeAuto. If the camera is unable to adjust any properties correctly, I expect to get an out-of-focus image but with flash applied.
Attachments
Gerrit Reviews
For Gerrit Dashboard: QTBUG-130636 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
605182,3 | Android, Camera: Handle FLASH_REQUIRED state during photo capture | dev | qt/qtmultimedia | Status: ABANDONED | -1 | 0 |