Status Update
Comments
sc...@google.com <sc...@google.com>
mi...@google.com <mi...@google.com> #2
Hi,
Thank you for your feedback. Could you help provide logs when the issue occurs and if possible a code snippet of the part that uses CameraX, it will help us find the root cause.
A quick question: does this issue occur on other devices, or only on Samsung Galaxy M55.
an...@revolut.com <an...@revolut.com> #3
attaching the logs.
The issue is only reproducible of M55. We have not met this on any other.
mi...@google.com <mi...@google.com> #4
Thank you,
CameraX uses OpenGL for sharing stream between Preview
and VideoCapture
to provide use case combinations beyond device's native capabilities. When using Preview + ImageAnalysis or Preview + VideoCapture, the device capabilities are usually not exceeded, so stream sharing is not used. So this could be a device specified issue related to OpenGL.
We will attempt to acquire the reported device model for testing.
an...@revolut.com <an...@revolut.com> #5
Yes I'm aware that stream sharing is not a hardware supported feature.
Please let me know if we could assist in any way to solve the issue.
an...@revolut.com <an...@revolut.com> #6
Is there any update on this? Were you able to find the phone? Could we assist here somehow?
mi...@google.com <mi...@google.com> #7
Thank you for your kind reply! I think we will receive the phone in a while and we will update if we find anything.
mi...@google.com <mi...@google.com> #8
Hi,
We got the device and did some investigating. The root cause seems to be that Samsung M55 has issues when using ImageAnalysis
with another stream that uses VideoCapture
or by a stream shared between VideoCapture
and Preview
.
The issue also occurs when only ImageAnalysis
and VideoCapture
are bound. The video can only obtain the first few frames in this case.
We will fix this issues in a future release. One workaround you can try is to bind an additional ImageCaputre
usecase (binds all 4 usecases), it seems the stream is normal in this situation.
Thanks for finding this bug!
an...@revolut.com <an...@revolut.com> #9
thank you for the information provided.
Is it possible that the bug will be fixed in 1.3.* release? It seems quite severe as it blocks main functionality.
mi...@google.com <mi...@google.com> #10
Hi
Since in
We will fix on both the 1.4 stable release, and the current 1.5 release. For 1.3, it is recommended to migrate to the 1.4 stable version. Or use one of the following workarounds:
- bind an addiotional
ImageCapture
use case - use
to changeCamera2Interop VideoCapture
builder'sCONTROL_CAPTURE_INTENT
to . As in the following code snippet:CONTROL_CAPTURE_INTENT_PREVIEW
VideoCapture.Builder<Recorder> videoCaptureBuilder = new VideoCapture.Builder<>(recorder);
new Camera2Interop.Extender<>(videoCaptureBuilder).setCaptureRequestOption(CaptureRequest.CONTROL_CAPTURE_INTENT, CaptureRequest.CONTROL_CAPTURE_INTENT_PREVIEW);
an...@revolut.com <an...@revolut.com> #11
you're correct I meant 1.4.*.
Thanks for the clarification!
mi...@google.com <mi...@google.com>
ap...@google.com <ap...@google.com> #12
Project: platform/frameworks/support
Branch: androidx-main
Author: mingdatsai <
Link:
Fix preview freeze when using ImageAnalysis with a TEMPLATE_RECORD stream
Expand for full commit details
Fix preview freeze when using ImageAnalysis with a TEMPLATE_RECORD stream
Fixed preview freeze issue when using ImageAnalysis with another stream
using TEMPLATE_RECORD.
Relnote: "Fixed preview freeze issue when using ImageAnalysis with another stream that uses TEMPLATE_RECORD on Samsung SM-M556B device."
Bug: 395822788
Test: manual test and ./gradlew bOS
Change-Id: Ic1a6a019c1525f30d7b863f732d421e36e5c978c
Files:
- A
camera/camera-camera2-pipe-integration/src/main/java/androidx/camera/camera2/pipe/integration/compat/quirk/AbnormalStreamWhenImageAnalysisBindWithTemplateRecordQuirk.kt
- M
camera/camera-camera2-pipe-integration/src/main/java/androidx/camera/camera2/pipe/integration/compat/quirk/CameraQuirks.kt
- M
camera/camera-camera2-pipe-integration/src/main/java/androidx/camera/camera2/pipe/integration/compat/workaround/TemplateParamsOverride.kt
- A
camera/camera-camera2/src/main/java/androidx/camera/camera2/internal/compat/quirk/AbnormalStreamWhenImageAnalysisBindWithTemplateRecordQuirk.java
- M
camera/camera-camera2/src/main/java/androidx/camera/camera2/internal/compat/quirk/CameraQuirks.java
- M
camera/camera-camera2/src/main/java/androidx/camera/camera2/internal/compat/workaround/TemplateParamsOverride.java
Hash: 5b6e8ca646e994efd623332cfe36445ef09d3c23
Date: Mon Mar 10 13:00:18 2025
an...@revolut.com <an...@revolut.com> #13
I took a look at the fix and I guess it might be a slight problem with it. It only fixes "SM-M556B" but we are positive that the problem also exists for "SM-M556E".
mi...@google.com <mi...@google.com> #14
Thank you for catching this, I will make a change for this.
ap...@google.com <ap...@google.com> #15
Project: platform/frameworks/support
Branch: androidx-main
Author: mingdatsai <
Link:
Apply AbnormalStreamWhenImageAnalysisBindWithTemplateRecordQuirk for other M55 models
Expand for full commit details
Apply AbnormalStreamWhenImageAnalysisBindWithTemplateRecordQuirk for other M55 models
Bug: 395822788
Test: manual test and ./gradlew bOS
Change-Id: I1768c199f0a4a62e82c7d75f89af574c3eda8604
Files:
- M
camera/camera-camera2-pipe-integration/src/main/java/androidx/camera/camera2/pipe/integration/compat/quirk/AbnormalStreamWhenImageAnalysisBindWithTemplateRecordQuirk.kt
- M
camera/camera-camera2/src/main/java/androidx/camera/camera2/internal/compat/quirk/AbnormalStreamWhenImageAnalysisBindWithTemplateRecordQuirk.java
Hash: 0425e0aeba7e562f6d6f99a8d976355f6d563dae
Date: Wed Mar 12 11:55:49 2025
mi...@google.com <mi...@google.com> #16
Hi,
The fix has been merged. It will be released in the subsequest CameraX version, probably 1.4.2 (also on the current 1.5 branch).
I will close the bug, please feel free to reopen it if there are any issues.
Description
Please describe your issue and include details such as the version of CameraX you are using and any relevant logs related to your issue.
// If at all possible, capture an Android logcat (
CAMERAX VERSION 1.4.1
ANDROID OS BUILD NUMBER: UP1A.231005.007.M556EXXS4AYA1
DEVICE NAME: Samsung Galaxy M55
DESCRIPTION:
Hey,
We've encountered a problem with Samsung Galaxy M55 5G device.
In our app preview freezes after rendering a few frames. We use image analysis, video recording and preview use cases. If I disable image analysis or video recording use case preview works as intended. Stream sharing is active and log cat has messages like hat in the output:
"62479362 updateSurface: has no frame
EglImage dataspace changed, need recreate"
Implementation mode is set to COMPATIBLE(tested PERFORMANCE as well - same result).
EXPECTED RESULTS: Preview doesn't freeze
REPRODUCIBILITY: 100%