Loading core/java/android/hardware/camera2/CameraManager.java +5 −4 Original line number Diff line number Diff line Loading @@ -708,7 +708,10 @@ public final class CameraManager { return new CameraExtensionCharacteristics(mContext, cameraId, characteristicsMap); } private Map<String, CameraCharacteristics> getPhysicalIdToCharsMap( /** * @hide */ public Map<String, CameraCharacteristics> getPhysicalIdToCharsMap( CameraCharacteristics chars) throws CameraAccessException { HashMap<String, CameraCharacteristics> physicalIdsToChars = new HashMap<String, CameraCharacteristics>(); Loading Loading @@ -844,8 +847,6 @@ public final class CameraManager { final int oomScoreOffset, boolean overrideToPortrait) throws CameraAccessException { CameraCharacteristics characteristics = getCameraCharacteristics(cameraId); CameraDevice device = null; Map<String, CameraCharacteristics> physicalIdsToChars = getPhysicalIdToCharsMap(characteristics); synchronized (mLock) { ICameraDeviceUser cameraUser = null; Loading @@ -861,7 +862,7 @@ public final class CameraManager { callback, executor, characteristics, physicalIdsToChars, this, mContext.getApplicationInfo().targetSdkVersion, mContext, cameraDeviceSetup); ICameraDeviceCallbacks callbacks = deviceImpl.getCallbacks(); Loading core/java/android/hardware/camera2/impl/CameraDeviceImpl.java +21 −6 Original line number Diff line number Diff line Loading @@ -31,6 +31,7 @@ import android.hardware.camera2.CameraCaptureSession; import android.hardware.camera2.CameraCharacteristics; import android.hardware.camera2.CameraDevice; import android.hardware.camera2.CameraExtensionCharacteristics; import android.hardware.camera2.CameraManager; import android.hardware.camera2.CameraMetadata; import android.hardware.camera2.CameraOfflineSession; import android.hardware.camera2.CaptureFailure; Loading Loading @@ -146,7 +147,8 @@ public class CameraDeviceImpl extends CameraDevice private final String mCameraId; private final CameraCharacteristics mCharacteristics; private final Map<String, CameraCharacteristics> mPhysicalIdsToChars; private Map<String, CameraCharacteristics> mPhysicalIdsToChars; private final CameraManager mCameraManager; private final int mTotalPartialCount; private final Context mContext; Loading Loading @@ -292,18 +294,19 @@ public class CameraDeviceImpl extends CameraDevice public CameraDeviceImpl(String cameraId, StateCallback callback, Executor executor, CameraCharacteristics characteristics, Map<String, CameraCharacteristics> physicalIdsToChars, @NonNull CameraManager manager, int appTargetSdkVersion, Context ctx, @Nullable CameraDevice.CameraDeviceSetup cameraDeviceSetup) { if (cameraId == null || callback == null || executor == null || characteristics == null) { if (cameraId == null || callback == null || executor == null || characteristics == null || manager == null) { throw new IllegalArgumentException("Null argument given"); } mCameraId = cameraId; mDeviceCallback = callback; mDeviceExecutor = executor; mCharacteristics = characteristics; mPhysicalIdsToChars = physicalIdsToChars; mCameraManager = manager; mAppTargetSdkVersion = appTargetSdkVersion; mContext = ctx; mCameraDeviceSetup = cameraDeviceSetup; Loading @@ -325,6 +328,18 @@ public class CameraDeviceImpl extends CameraDevice } } private Map<String, CameraCharacteristics> getPhysicalIdToChars() { if (mPhysicalIdsToChars == null) { try { mPhysicalIdsToChars = mCameraManager.getPhysicalIdToCharsMap(mCharacteristics); } catch (CameraAccessException e) { Log.e(TAG, "Unable to query the physical characteristics map!"); } } return mPhysicalIdsToChars; } public CameraDeviceCallbacks getCallbacks() { return mCallbacks; } Loading Loading @@ -1544,7 +1559,7 @@ public class CameraDeviceImpl extends CameraDevice return true; } for (Map.Entry<String, CameraCharacteristics> entry : mPhysicalIdsToChars.entrySet()) { for (Map.Entry<String, CameraCharacteristics> entry : getPhysicalIdToChars().entrySet()) { configMap = entry.getValue().get(ck); if (configMap != null && Loading Loading @@ -2567,7 +2582,7 @@ public class CameraDeviceImpl extends CameraDevice public void createExtensionSession(ExtensionSessionConfiguration extensionConfiguration) throws CameraAccessException { HashMap<String, CameraCharacteristics> characteristicsMap = new HashMap<>( mPhysicalIdsToChars); getPhysicalIdToChars()); characteristicsMap.put(mCameraId, mCharacteristics); boolean initializationFailed = true; IBinder token = new Binder(TAG + " : " + mNextSessionId++); Loading Loading
core/java/android/hardware/camera2/CameraManager.java +5 −4 Original line number Diff line number Diff line Loading @@ -708,7 +708,10 @@ public final class CameraManager { return new CameraExtensionCharacteristics(mContext, cameraId, characteristicsMap); } private Map<String, CameraCharacteristics> getPhysicalIdToCharsMap( /** * @hide */ public Map<String, CameraCharacteristics> getPhysicalIdToCharsMap( CameraCharacteristics chars) throws CameraAccessException { HashMap<String, CameraCharacteristics> physicalIdsToChars = new HashMap<String, CameraCharacteristics>(); Loading Loading @@ -844,8 +847,6 @@ public final class CameraManager { final int oomScoreOffset, boolean overrideToPortrait) throws CameraAccessException { CameraCharacteristics characteristics = getCameraCharacteristics(cameraId); CameraDevice device = null; Map<String, CameraCharacteristics> physicalIdsToChars = getPhysicalIdToCharsMap(characteristics); synchronized (mLock) { ICameraDeviceUser cameraUser = null; Loading @@ -861,7 +862,7 @@ public final class CameraManager { callback, executor, characteristics, physicalIdsToChars, this, mContext.getApplicationInfo().targetSdkVersion, mContext, cameraDeviceSetup); ICameraDeviceCallbacks callbacks = deviceImpl.getCallbacks(); Loading
core/java/android/hardware/camera2/impl/CameraDeviceImpl.java +21 −6 Original line number Diff line number Diff line Loading @@ -31,6 +31,7 @@ import android.hardware.camera2.CameraCaptureSession; import android.hardware.camera2.CameraCharacteristics; import android.hardware.camera2.CameraDevice; import android.hardware.camera2.CameraExtensionCharacteristics; import android.hardware.camera2.CameraManager; import android.hardware.camera2.CameraMetadata; import android.hardware.camera2.CameraOfflineSession; import android.hardware.camera2.CaptureFailure; Loading Loading @@ -146,7 +147,8 @@ public class CameraDeviceImpl extends CameraDevice private final String mCameraId; private final CameraCharacteristics mCharacteristics; private final Map<String, CameraCharacteristics> mPhysicalIdsToChars; private Map<String, CameraCharacteristics> mPhysicalIdsToChars; private final CameraManager mCameraManager; private final int mTotalPartialCount; private final Context mContext; Loading Loading @@ -292,18 +294,19 @@ public class CameraDeviceImpl extends CameraDevice public CameraDeviceImpl(String cameraId, StateCallback callback, Executor executor, CameraCharacteristics characteristics, Map<String, CameraCharacteristics> physicalIdsToChars, @NonNull CameraManager manager, int appTargetSdkVersion, Context ctx, @Nullable CameraDevice.CameraDeviceSetup cameraDeviceSetup) { if (cameraId == null || callback == null || executor == null || characteristics == null) { if (cameraId == null || callback == null || executor == null || characteristics == null || manager == null) { throw new IllegalArgumentException("Null argument given"); } mCameraId = cameraId; mDeviceCallback = callback; mDeviceExecutor = executor; mCharacteristics = characteristics; mPhysicalIdsToChars = physicalIdsToChars; mCameraManager = manager; mAppTargetSdkVersion = appTargetSdkVersion; mContext = ctx; mCameraDeviceSetup = cameraDeviceSetup; Loading @@ -325,6 +328,18 @@ public class CameraDeviceImpl extends CameraDevice } } private Map<String, CameraCharacteristics> getPhysicalIdToChars() { if (mPhysicalIdsToChars == null) { try { mPhysicalIdsToChars = mCameraManager.getPhysicalIdToCharsMap(mCharacteristics); } catch (CameraAccessException e) { Log.e(TAG, "Unable to query the physical characteristics map!"); } } return mPhysicalIdsToChars; } public CameraDeviceCallbacks getCallbacks() { return mCallbacks; } Loading Loading @@ -1544,7 +1559,7 @@ public class CameraDeviceImpl extends CameraDevice return true; } for (Map.Entry<String, CameraCharacteristics> entry : mPhysicalIdsToChars.entrySet()) { for (Map.Entry<String, CameraCharacteristics> entry : getPhysicalIdToChars().entrySet()) { configMap = entry.getValue().get(ck); if (configMap != null && Loading Loading @@ -2567,7 +2582,7 @@ public class CameraDeviceImpl extends CameraDevice public void createExtensionSession(ExtensionSessionConfiguration extensionConfiguration) throws CameraAccessException { HashMap<String, CameraCharacteristics> characteristicsMap = new HashMap<>( mPhysicalIdsToChars); getPhysicalIdToChars()); characteristicsMap.put(mCameraId, mCharacteristics); boolean initializationFailed = true; IBinder token = new Binder(TAG + " : " + mNextSessionId++); Loading