From f725aebc89eeb03a976d7612625efad8b5dd7125 Mon Sep 17 00:00:00 2001 From: Romain Vimont Date: Sat, 4 Nov 2023 19:20:44 +0100 Subject: [PATCH] Log physical cameras --- .../src/main/java/com/genymobile/scrcpy/LogUtils.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/server/src/main/java/com/genymobile/scrcpy/LogUtils.java b/server/src/main/java/com/genymobile/scrcpy/LogUtils.java index 8dc54629..78fa8a5d 100644 --- a/server/src/main/java/com/genymobile/scrcpy/LogUtils.java +++ b/server/src/main/java/com/genymobile/scrcpy/LogUtils.java @@ -3,15 +3,19 @@ package com.genymobile.scrcpy; import com.genymobile.scrcpy.wrappers.DisplayManager; import com.genymobile.scrcpy.wrappers.ServiceManager; +import android.annotation.TargetApi; import android.graphics.Rect; import android.hardware.camera2.CameraAccessException; import android.hardware.camera2.CameraCharacteristics; import android.hardware.camera2.CameraManager; import android.hardware.camera2.params.StreamConfigurationMap; import android.media.MediaCodec; +import android.os.Build; import android.util.Range; +import java.util.Arrays; import java.util.List; +import java.util.Set; import java.util.SortedSet; import java.util.TreeSet; @@ -84,6 +88,7 @@ public final class LogUtils { } } + @TargetApi(Build.VERSION_CODES.P) public static String buildCameraListMessage(boolean includeSizes) { StringBuilder builder = new StringBuilder("List of cameras:"); CameraManager cameraManager = ServiceManager.getCameraManager(); @@ -107,6 +112,12 @@ public final class LogUtils { SortedSet uniqueLowFps = getUniqueSet(lowFpsRanges); builder.append("fps=").append(uniqueLowFps).append(')'); + int[] capabilities = characteristics.get(CameraCharacteristics.REQUEST_AVAILABLE_CAPABILITIES); + if (Arrays.asList(capabilities).contains(CameraCharacteristics.REQUEST_AVAILABLE_CAPABILITIES_LOGICAL_MULTI_CAMERA)) { + Set phy = characteristics.getPhysicalCameraIds(); + builder.append("\n PHYSICAL: ").append(phy); + } + if (includeSizes) { StreamConfigurationMap configs = characteristics.get(CameraCharacteristics.SCALER_STREAM_CONFIGURATION_MAP);