Loading core/java/android/hardware/CameraStreamStats.java +25 −1 Original line number Diff line number Diff line Loading @@ -19,7 +19,6 @@ import android.os.Parcel; import android.os.Parcelable; import android.util.Log; import java.util.ArrayList; /** * The camera stream statistics used for passing camera stream information from * camera service to camera service proxy. Loading @@ -30,6 +29,8 @@ import java.util.ArrayList; * @hide */ public class CameraStreamStats implements Parcelable { public static final int HISTOGRAM_TYPE_UNKNOWN = 0; public static final int HISTOGRAM_TYPE_CAPTURE_LATENCY = 1; private int mWidth; private int mHeight; Loading @@ -41,6 +42,9 @@ public class CameraStreamStats implements Parcelable { private int mStartLatencyMs; private int mMaxHalBuffers; private int mMaxAppBuffers; private int mHistogramType; private float[] mHistogramBins; private long[] mHistogramCounts; private static final String TAG = "CameraStreamStats"; Loading @@ -55,6 +59,7 @@ public class CameraStreamStats implements Parcelable { mStartLatencyMs = 0; mMaxHalBuffers = 0; mMaxAppBuffers = 0; mHistogramType = HISTOGRAM_TYPE_UNKNOWN; } public CameraStreamStats(int width, int height, int format, Loading @@ -70,6 +75,7 @@ public class CameraStreamStats implements Parcelable { mStartLatencyMs = startLatencyMs; mMaxHalBuffers = maxHalBuffers; mMaxAppBuffers = maxAppBuffers; mHistogramType = HISTOGRAM_TYPE_UNKNOWN; } public static final @android.annotation.NonNull Parcelable.Creator<CameraStreamStats> CREATOR = Loading Loading @@ -112,6 +118,9 @@ public class CameraStreamStats implements Parcelable { dest.writeInt(mStartLatencyMs); dest.writeInt(mMaxHalBuffers); dest.writeInt(mMaxAppBuffers); dest.writeInt(mHistogramType); dest.writeFloatArray(mHistogramBins); dest.writeLongArray(mHistogramCounts); } public void readFromParcel(Parcel in) { Loading @@ -125,6 +134,9 @@ public class CameraStreamStats implements Parcelable { mStartLatencyMs = in.readInt(); mMaxHalBuffers = in.readInt(); mMaxAppBuffers = in.readInt(); mHistogramType = in.readInt(); mHistogramBins = in.createFloatArray(); mHistogramCounts = in.createLongArray(); } public int getWidth() { Loading Loading @@ -166,4 +178,16 @@ public class CameraStreamStats implements Parcelable { public int getMaxAppBuffers() { return mMaxAppBuffers; } public int getHistogramType() { return mHistogramType; } public float[] getHistogramBins() { return mHistogramBins; } public long[] getHistogramCounts() { return mHistogramCounts; } } services/core/java/com/android/server/camera/CameraServiceProxy.java +22 −1 Original line number Diff line number Diff line Loading @@ -57,6 +57,7 @@ import com.android.server.wm.WindowManagerInternal; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; import java.util.Collections; import java.util.List; Loading Loading @@ -466,8 +467,13 @@ public class CameraServiceProxy extends SystemService streamProtos[i].firstCaptureLatencyMillis = streamStats.getStartLatencyMs(); streamProtos[i].maxHalBuffers = streamStats.getMaxHalBuffers(); streamProtos[i].maxAppBuffers = streamStats.getMaxAppBuffers(); streamProtos[i].histogramType = streamStats.getHistogramType(); streamProtos[i].histogramBins = streamStats.getHistogramBins(); streamProtos[i].histogramCounts = streamStats.getHistogramCounts(); if (CameraServiceProxy.DEBUG) { String histogramTypeName = cameraHistogramTypeToString(streamProtos[i].histogramType); Slog.v(TAG, "Stream " + i + ": width " + streamProtos[i].width + ", height " + streamProtos[i].height + ", format " + streamProtos[i].format Loading @@ -478,7 +484,12 @@ public class CameraServiceProxy extends SystemService + ", firstCaptureLatencyMillis " + streamProtos[i].firstCaptureLatencyMillis + ", maxHalBuffers " + streamProtos[i].maxHalBuffers + ", maxAppBuffers " + streamProtos[i].maxAppBuffers); + ", maxAppBuffers " + streamProtos[i].maxAppBuffers + ", histogramType " + histogramTypeName + ", histogramBins " + Arrays.toString(streamProtos[i].histogramBins) + ", histogramCounts " + Arrays.toString(streamProtos[i].histogramCounts)); } } } Loading Loading @@ -797,4 +808,14 @@ public class CameraServiceProxy extends SystemService return "CAMERA_FACING_UNKNOWN"; } private static String cameraHistogramTypeToString(int cameraHistogramType) { switch (cameraHistogramType) { case CameraStreamStats.HISTOGRAM_TYPE_CAPTURE_LATENCY: return "HISTOGRAM_TYPE_CAPTURE_LATENCY"; default: break; } return "HISTOGRAM_TYPE_UNKNOWN"; } } Loading
core/java/android/hardware/CameraStreamStats.java +25 −1 Original line number Diff line number Diff line Loading @@ -19,7 +19,6 @@ import android.os.Parcel; import android.os.Parcelable; import android.util.Log; import java.util.ArrayList; /** * The camera stream statistics used for passing camera stream information from * camera service to camera service proxy. Loading @@ -30,6 +29,8 @@ import java.util.ArrayList; * @hide */ public class CameraStreamStats implements Parcelable { public static final int HISTOGRAM_TYPE_UNKNOWN = 0; public static final int HISTOGRAM_TYPE_CAPTURE_LATENCY = 1; private int mWidth; private int mHeight; Loading @@ -41,6 +42,9 @@ public class CameraStreamStats implements Parcelable { private int mStartLatencyMs; private int mMaxHalBuffers; private int mMaxAppBuffers; private int mHistogramType; private float[] mHistogramBins; private long[] mHistogramCounts; private static final String TAG = "CameraStreamStats"; Loading @@ -55,6 +59,7 @@ public class CameraStreamStats implements Parcelable { mStartLatencyMs = 0; mMaxHalBuffers = 0; mMaxAppBuffers = 0; mHistogramType = HISTOGRAM_TYPE_UNKNOWN; } public CameraStreamStats(int width, int height, int format, Loading @@ -70,6 +75,7 @@ public class CameraStreamStats implements Parcelable { mStartLatencyMs = startLatencyMs; mMaxHalBuffers = maxHalBuffers; mMaxAppBuffers = maxAppBuffers; mHistogramType = HISTOGRAM_TYPE_UNKNOWN; } public static final @android.annotation.NonNull Parcelable.Creator<CameraStreamStats> CREATOR = Loading Loading @@ -112,6 +118,9 @@ public class CameraStreamStats implements Parcelable { dest.writeInt(mStartLatencyMs); dest.writeInt(mMaxHalBuffers); dest.writeInt(mMaxAppBuffers); dest.writeInt(mHistogramType); dest.writeFloatArray(mHistogramBins); dest.writeLongArray(mHistogramCounts); } public void readFromParcel(Parcel in) { Loading @@ -125,6 +134,9 @@ public class CameraStreamStats implements Parcelable { mStartLatencyMs = in.readInt(); mMaxHalBuffers = in.readInt(); mMaxAppBuffers = in.readInt(); mHistogramType = in.readInt(); mHistogramBins = in.createFloatArray(); mHistogramCounts = in.createLongArray(); } public int getWidth() { Loading Loading @@ -166,4 +178,16 @@ public class CameraStreamStats implements Parcelable { public int getMaxAppBuffers() { return mMaxAppBuffers; } public int getHistogramType() { return mHistogramType; } public float[] getHistogramBins() { return mHistogramBins; } public long[] getHistogramCounts() { return mHistogramCounts; } }
services/core/java/com/android/server/camera/CameraServiceProxy.java +22 −1 Original line number Diff line number Diff line Loading @@ -57,6 +57,7 @@ import com.android.server.wm.WindowManagerInternal; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; import java.util.Collections; import java.util.List; Loading Loading @@ -466,8 +467,13 @@ public class CameraServiceProxy extends SystemService streamProtos[i].firstCaptureLatencyMillis = streamStats.getStartLatencyMs(); streamProtos[i].maxHalBuffers = streamStats.getMaxHalBuffers(); streamProtos[i].maxAppBuffers = streamStats.getMaxAppBuffers(); streamProtos[i].histogramType = streamStats.getHistogramType(); streamProtos[i].histogramBins = streamStats.getHistogramBins(); streamProtos[i].histogramCounts = streamStats.getHistogramCounts(); if (CameraServiceProxy.DEBUG) { String histogramTypeName = cameraHistogramTypeToString(streamProtos[i].histogramType); Slog.v(TAG, "Stream " + i + ": width " + streamProtos[i].width + ", height " + streamProtos[i].height + ", format " + streamProtos[i].format Loading @@ -478,7 +484,12 @@ public class CameraServiceProxy extends SystemService + ", firstCaptureLatencyMillis " + streamProtos[i].firstCaptureLatencyMillis + ", maxHalBuffers " + streamProtos[i].maxHalBuffers + ", maxAppBuffers " + streamProtos[i].maxAppBuffers); + ", maxAppBuffers " + streamProtos[i].maxAppBuffers + ", histogramType " + histogramTypeName + ", histogramBins " + Arrays.toString(streamProtos[i].histogramBins) + ", histogramCounts " + Arrays.toString(streamProtos[i].histogramCounts)); } } } Loading Loading @@ -797,4 +808,14 @@ public class CameraServiceProxy extends SystemService return "CAMERA_FACING_UNKNOWN"; } private static String cameraHistogramTypeToString(int cameraHistogramType) { switch (cameraHistogramType) { case CameraStreamStats.HISTOGRAM_TYPE_CAPTURE_LATENCY: return "HISTOGRAM_TYPE_CAPTURE_LATENCY"; default: break; } return "HISTOGRAM_TYPE_UNKNOWN"; } }