Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e1f065ed authored by Shuzhen Wang's avatar Shuzhen Wang
Browse files

Camera: Populate LENS_INFO_SHADING_MAP_SIZE for physical camera result

LENS_INFO_SHADING_MAP_SIZE needs to be populated in CaptureResult
in order for get(LENS_SHADING_MAP) to work. It's already done
for CaptureResult, but missing for physical camera result.

Flag: EXEMPT BUG_FIX
Test: Run test_yuv_plus_raw on vendor devices
Bug: 360243600
Change-Id: Iac8a3bd45bd87244e5d10b4454f9be6712ac83f0
parent bf2fcba2
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -2272,6 +2272,19 @@ public class CameraDeviceImpl extends CameraDevice
                // TODO: Handle CameraCharacteristics access from CaptureResult correctly.
                result.set(CameraCharacteristics.LENS_INFO_SHADING_MAP_SIZE,
                        getCharacteristics().get(CameraCharacteristics.LENS_INFO_SHADING_MAP_SIZE));
                Map<String, CameraCharacteristics> physicalIdToChars = getPhysicalIdToChars();
                for (PhysicalCaptureResultInfo oneResultInfo : physicalResults) {
                    String physicalId = oneResultInfo.getCameraId();
                    CameraMetadataNative physicalResult = oneResultInfo.getCameraMetadata();
                    CameraCharacteristics ch = physicalIdToChars.get(physicalId);
                    if (ch != null)  {
                        physicalResult.set(CameraCharacteristics.LENS_INFO_SHADING_MAP_SIZE,
                                ch.get(CameraCharacteristics.LENS_INFO_SHADING_MAP_SIZE));
                    } else {
                        Log.e(TAG, "Unable to find characteristics for physical camera "
                                + physicalId);
                    }
                }

                final CaptureCallbackHolder holder =
                        CameraDeviceImpl.this.mCaptureCallbackMap.get(requestId);