Hi,
I am since long observing a bug affecting nearly exclusively the Samsung Galaxy A24, when transforming the imageProxy returned from onCaptureSuccess, into a Bitmap. I initially thought it was due to my own code, since I previously coded the transformation myself, however recently I have implemented CameraX's own .toBitmap() function, and the issue still persists. Below you can find the stack trace (I redacted some information with Xs for privacy reasons):
Fatal Exception: java.lang.UnsupportedOperationException
Decode jpeg byte array failed
Fatal Exception: java.lang.UnsupportedOperationException: Decode jpeg byte array failed
at androidx.camera.core.internal.utils.ImageUtil.createBitmapFromJpegImage(ImageUtil.java:453)
at androidx.camera.core.internal.utils.ImageUtil.createBitmapFromImageProxy(ImageUtil.java:82)
at androidx.camera.core.ImageProxy.toBitmap(ImageProxy.java:154)
at com.xxx.xxx.xxx.utils.Utilities.imageProxyToBitmap(Utilities.java:842)
at com.xxx.xxx.xxx.ui.fragment.xxxFragment$captureImage$1.onCaptureSuccess(xxxFragment.java:2867)
at androidx.camera.core.imagecapture.TakePictureRequest.lambda$onResult$2(TakePictureRequest.java:200)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
at java.lang.Thread.run(Thread.java:1012)
Is this a bug, or am I implementing something incorrectly here?
Kind regards,
Michael