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

Commit a3eda4f0 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Camera: Allow clients to query for extra profile latency" into tm-dev am: 5f902c64

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/16983027

Change-Id: I6f31115604e88a1e19f769decff807d2341f53b0
parents c7da718c 5f902c64
Loading
Loading
Loading
Loading
+20 −19
Original line number Diff line number Diff line
@@ -17398,7 +17398,7 @@ package android.hardware.camera2 {
    field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<java.lang.Integer> REQUEST_MAX_NUM_OUTPUT_RAW;
    field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<java.lang.Integer> REQUEST_PARTIAL_RESULT_COUNT;
    field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<java.lang.Byte> REQUEST_PIPELINE_MAX_DEPTH;
    field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<java.lang.Integer> REQUEST_RECOMMENDED_TEN_BIT_DYNAMIC_RANGE_PROFILE;
    field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<java.lang.Long> REQUEST_RECOMMENDED_TEN_BIT_DYNAMIC_RANGE_PROFILE;
    field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<java.lang.Float> SCALER_AVAILABLE_MAX_DIGITAL_ZOOM;
    field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<int[]> SCALER_AVAILABLE_ROTATE_AND_CROP_MODES;
    field @NonNull public static final android.hardware.camera2.CameraCharacteristics.Key<int[]> SCALER_AVAILABLE_STREAM_USE_CASES;
@@ -18118,22 +18118,23 @@ package android.hardware.camera2.params {
  }
  public final class DynamicRangeProfiles {
    ctor public DynamicRangeProfiles(@NonNull int[]);
    method @NonNull public java.util.Set<java.lang.Integer> getProfileCaptureRequestConstraints(int);
    method @NonNull public java.util.Set<java.lang.Integer> getSupportedProfiles();
    field public static final int DOLBY_VISION_10B_HDR_OEM = 64; // 0x40
    field public static final int DOLBY_VISION_10B_HDR_OEM_PO = 128; // 0x80
    field public static final int DOLBY_VISION_10B_HDR_REF = 16; // 0x10
    field public static final int DOLBY_VISION_10B_HDR_REF_PO = 32; // 0x20
    field public static final int DOLBY_VISION_8B_HDR_OEM = 1024; // 0x400
    field public static final int DOLBY_VISION_8B_HDR_OEM_PO = 2048; // 0x800
    field public static final int DOLBY_VISION_8B_HDR_REF = 256; // 0x100
    field public static final int DOLBY_VISION_8B_HDR_REF_PO = 512; // 0x200
    field public static final int HDR10 = 4; // 0x4
    field public static final int HDR10_PLUS = 8; // 0x8
    field public static final int HLG10 = 2; // 0x2
    field public static final int PUBLIC_MAX = 4096; // 0x1000
    field public static final int STANDARD = 1; // 0x1
    ctor public DynamicRangeProfiles(@NonNull long[]);
    method @NonNull public java.util.Set<java.lang.Long> getProfileCaptureRequestConstraints(long);
    method @NonNull public java.util.Set<java.lang.Long> getSupportedProfiles();
    method public boolean isExtraLatencyPresent(long);
    field public static final long DOLBY_VISION_10B_HDR_OEM = 64L; // 0x40L
    field public static final long DOLBY_VISION_10B_HDR_OEM_PO = 128L; // 0x80L
    field public static final long DOLBY_VISION_10B_HDR_REF = 16L; // 0x10L
    field public static final long DOLBY_VISION_10B_HDR_REF_PO = 32L; // 0x20L
    field public static final long DOLBY_VISION_8B_HDR_OEM = 1024L; // 0x400L
    field public static final long DOLBY_VISION_8B_HDR_OEM_PO = 2048L; // 0x800L
    field public static final long DOLBY_VISION_8B_HDR_REF = 256L; // 0x100L
    field public static final long DOLBY_VISION_8B_HDR_REF_PO = 512L; // 0x200L
    field public static final long HDR10 = 4L; // 0x4L
    field public static final long HDR10_PLUS = 8L; // 0x8L
    field public static final long HLG10 = 2L; // 0x2L
    field public static final long PUBLIC_MAX = 4096L; // 0x1000L
    field public static final long STANDARD = 1L; // 0x1L
  }
  public final class ExtensionSessionConfiguration {
@@ -18240,7 +18241,7 @@ package android.hardware.camera2.params {
    method @NonNull public static java.util.Collection<android.hardware.camera2.params.OutputConfiguration> createInstancesForMultiResolutionOutput(@NonNull android.hardware.camera2.MultiResolutionImageReader);
    method public int describeContents();
    method public void enableSurfaceSharing();
    method public int getDynamicRangeProfile();
    method public long getDynamicRangeProfile();
    method public int getMaxSharedSurfaceCount();
    method public int getMirrorMode();
    method public int getStreamUseCase();
@@ -18250,7 +18251,7 @@ package android.hardware.camera2.params {
    method public int getTimestampBase();
    method public void removeSensorPixelModeUsed(int);
    method public void removeSurface(@NonNull android.view.Surface);
    method public void setDynamicRangeProfile(int);
    method public void setDynamicRangeProfile(long);
    method public void setMirrorMode(int);
    method public void setPhysicalCameraId(@Nullable String);
    method public void setStreamUseCase(int);
+5 −5
Original line number Diff line number Diff line
@@ -47,7 +47,7 @@ public class CameraStreamStats implements Parcelable {
    private int mHistogramType;
    private float[] mHistogramBins;
    private long[] mHistogramCounts;
    private int mDynamicRangeProfile;
    private long mDynamicRangeProfile;
    private int mStreamUseCase;

    private static final String TAG = "CameraStreamStats";
@@ -70,7 +70,7 @@ public class CameraStreamStats implements Parcelable {

    public CameraStreamStats(int width, int height, int format,
            int dataSpace, long usage, long requestCount, long errorCount,
            int startLatencyMs, int maxHalBuffers, int maxAppBuffers, int dynamicRangeProfile,
            int startLatencyMs, int maxHalBuffers, int maxAppBuffers, long dynamicRangeProfile,
            int streamUseCase) {
        mWidth = width;
        mHeight = height;
@@ -130,7 +130,7 @@ public class CameraStreamStats implements Parcelable {
        dest.writeInt(mHistogramType);
        dest.writeFloatArray(mHistogramBins);
        dest.writeLongArray(mHistogramCounts);
        dest.writeInt(mDynamicRangeProfile);
        dest.writeLong(mDynamicRangeProfile);
        dest.writeInt(mStreamUseCase);
    }

@@ -148,7 +148,7 @@ public class CameraStreamStats implements Parcelable {
        mHistogramType = in.readInt();
        mHistogramBins = in.createFloatArray();
        mHistogramCounts = in.createLongArray();
        mDynamicRangeProfile = in.readInt();
        mDynamicRangeProfile = in.readLong();
        mStreamUseCase = in.readInt();
    }

@@ -204,7 +204,7 @@ public class CameraStreamStats implements Parcelable {
        return mHistogramCounts;
    }

    public int getDynamicRangeProfile() {
    public long getDynamicRangeProfile() {
        return mDynamicRangeProfile;
    }

+4 −4
Original line number Diff line number Diff line
@@ -2448,8 +2448,8 @@ public final class CameraCharacteristics extends CameraMetadata<CameraCharacteri
     * @see #REQUEST_AVAILABLE_DYNAMIC_RANGE_PROFILES_MAP_MAX
     * @hide
     */
    public static final Key<int[]> REQUEST_AVAILABLE_DYNAMIC_RANGE_PROFILES_MAP =
            new Key<int[]>("android.request.availableDynamicRangeProfilesMap", int[].class);
    public static final Key<long[]> REQUEST_AVAILABLE_DYNAMIC_RANGE_PROFILES_MAP =
            new Key<long[]>("android.request.availableDynamicRangeProfilesMap", long[].class);

    /**
     * <p>Recommended 10-bit dynamic range profile.</p>
@@ -2464,8 +2464,8 @@ public final class CameraCharacteristics extends CameraMetadata<CameraCharacteri
     */
    @PublicKey
    @NonNull
    public static final Key<Integer> REQUEST_RECOMMENDED_TEN_BIT_DYNAMIC_RANGE_PROFILE =
            new Key<Integer>("android.request.recommendedTenBitDynamicRangeProfile", int.class);
    public static final Key<Long> REQUEST_RECOMMENDED_TEN_BIT_DYNAMIC_RANGE_PROFILE =
            new Key<Long>("android.request.recommendedTenBitDynamicRangeProfile", long.class);

    /**
     * <p>The list of image formats that are supported by this
+2 −2
Original line number Diff line number Diff line
@@ -990,7 +990,7 @@ public abstract class CameraDevice implements AutoCloseable {
     * <p>Reprocessing with 10-bit output targets on 10-bit capable
     * {@link CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES_DYNAMIC_RANGE_TEN_BIT} devices is
     * not supported. Trying to initialize a repreocessable capture session with one ore more
     * output configurations set {@link OutputConfiguration#setDynamicRangeProfile(int)} to use
     * output configurations set {@link OutputConfiguration#setDynamicRangeProfile} to use
     * a 10-bit dynamic range profile {@link android.hardware.camera2.params.DynamicRangeProfiles}
     * will trigger {@link IllegalArgumentException}.</p>
     *
@@ -1179,7 +1179,7 @@ public abstract class CameraDevice implements AutoCloseable {
     * @see #createCaptureSessionByOutputConfigurations
     * @see #createReprocessableCaptureSession
     * @see #createConstrainedHighSpeedCaptureSession
     * @see OutputConfiguration#setDynamicRangeProfile(int)
     * @see OutputConfiguration#setDynamicRangeProfile
     * @see android.hardware.camera2.params.DynamicRangeProfiles
     */
    public void createCaptureSession(
+1 −1
Original line number Diff line number Diff line
@@ -1058,7 +1058,7 @@ public class CameraMetadataNative implements Parcelable {
    }

    private DynamicRangeProfiles getDynamicRangeProfiles() {
        int[] profileArray = getBase(
        long[] profileArray = getBase(
                CameraCharacteristics.REQUEST_AVAILABLE_DYNAMIC_RANGE_PROFILES_MAP);

        if (profileArray == null) {
Loading