camera2: Update hotpixel tags.
Change-Id: I6e2931d54a92f3852e8abe8c480f1762c92655ad
diff --git a/api/current.txt b/api/current.txt
index 439f172..ffdd983 100644
--- a/api/current.txt
+++ b/api/current.txt
@@ -11293,6 +11293,7 @@
field public static final android.hardware.camera2.CameraMetadata.Key SENSOR_INFO_EXPOSURE_TIME_RANGE;
field public static final android.hardware.camera2.CameraMetadata.Key SENSOR_INFO_MAX_FRAME_DURATION;
field public static final android.hardware.camera2.CameraMetadata.Key SENSOR_INFO_PHYSICAL_SIZE;
+ field public static final android.hardware.camera2.CameraMetadata.Key SENSOR_INFO_PIXEL_ARRAY_SIZE;
field public static final android.hardware.camera2.CameraMetadata.Key SENSOR_INFO_SENSITIVITY_RANGE;
field public static final android.hardware.camera2.CameraMetadata.Key SENSOR_MAX_ANALOG_SENSITIVITY;
field public static final android.hardware.camera2.CameraMetadata.Key SENSOR_ORIENTATION;
@@ -11457,6 +11458,9 @@
field public static final int FLASH_STATE_FIRED = 3; // 0x3
field public static final int FLASH_STATE_READY = 2; // 0x2
field public static final int FLASH_STATE_UNAVAILABLE = 0; // 0x0
+ field public static final int HOT_PIXEL_MODE_FAST = 1; // 0x1
+ field public static final int HOT_PIXEL_MODE_HIGH_QUALITY = 2; // 0x2
+ field public static final int HOT_PIXEL_MODE_OFF = 0; // 0x0
field public static final int INFO_SUPPORTED_HARDWARE_LEVEL_FULL = 1; // 0x1
field public static final int INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED = 0; // 0x0
field public static final int LENS_FACING_BACK = 1; // 0x1
@@ -11538,6 +11542,7 @@
field public static final android.os.Parcelable.Creator CREATOR;
field public static final android.hardware.camera2.CameraMetadata.Key EDGE_MODE;
field public static final android.hardware.camera2.CameraMetadata.Key FLASH_MODE;
+ field public static final android.hardware.camera2.CameraMetadata.Key HOT_PIXEL_MODE;
field public static final android.hardware.camera2.CameraMetadata.Key JPEG_GPS_COORDINATES;
field public static final android.hardware.camera2.CameraMetadata.Key JPEG_GPS_PROCESSING_METHOD;
field public static final android.hardware.camera2.CameraMetadata.Key JPEG_GPS_TIMESTAMP;
@@ -11595,6 +11600,8 @@
field public static final android.hardware.camera2.CameraMetadata.Key EDGE_MODE;
field public static final android.hardware.camera2.CameraMetadata.Key FLASH_MODE;
field public static final android.hardware.camera2.CameraMetadata.Key FLASH_STATE;
+ field public static final android.hardware.camera2.CameraMetadata.Key HOT_PIXEL_MAP;
+ field public static final android.hardware.camera2.CameraMetadata.Key HOT_PIXEL_MODE;
field public static final android.hardware.camera2.CameraMetadata.Key JPEG_GPS_COORDINATES;
field public static final android.hardware.camera2.CameraMetadata.Key JPEG_GPS_PROCESSING_METHOD;
field public static final android.hardware.camera2.CameraMetadata.Key JPEG_GPS_TIMESTAMP;
diff --git a/core/java/android/hardware/camera2/CameraCharacteristics.java b/core/java/android/hardware/camera2/CameraCharacteristics.java
index fb098b0..3577ade 100644
--- a/core/java/android/hardware/camera2/CameraCharacteristics.java
+++ b/core/java/android/hardware/camera2/CameraCharacteristics.java
@@ -622,6 +622,16 @@
new Key<float[]>("android.sensor.info.physicalSize", float[].class);
/**
+ * <p>Dimensions of full pixel array, possibly
+ * including black calibration pixels.</p>
+ * <p>Maximum output resolution for raw format must
+ * match this in
+ * android.scaler.info.availableSizesPerFormat.</p>
+ */
+ public static final Key<android.hardware.camera2.Size> SENSOR_INFO_PIXEL_ARRAY_SIZE =
+ new Key<android.hardware.camera2.Size>("android.sensor.info.pixelArraySize", android.hardware.camera2.Size.class);
+
+ /**
* <p>Gain factor from electrons to raw units when
* ISO=100</p>
* <p><b>Optional</b> - This value may be {@code null} on some devices.</p>
diff --git a/core/java/android/hardware/camera2/CameraMetadata.java b/core/java/android/hardware/camera2/CameraMetadata.java
index 03ee508..e0807e9 100644
--- a/core/java/android/hardware/camera2/CameraMetadata.java
+++ b/core/java/android/hardware/camera2/CameraMetadata.java
@@ -1025,6 +1025,34 @@
public static final int FLASH_MODE_TORCH = 2;
//
+ // Enumeration values for CaptureRequest#HOT_PIXEL_MODE
+ //
+
+ /**
+ * <p>The frame rate must not be reduced relative to sensor raw output
+ * for this option.</p>
+ * <p>No hot pixel correction is applied.</p>
+ * @see CaptureRequest#HOT_PIXEL_MODE
+ */
+ public static final int HOT_PIXEL_MODE_OFF = 0;
+
+ /**
+ * <p>The frame rate must not be reduced relative to sensor raw output
+ * for this option.</p>
+ * <p>Hot pixel correction is applied.</p>
+ * @see CaptureRequest#HOT_PIXEL_MODE
+ */
+ public static final int HOT_PIXEL_MODE_FAST = 1;
+
+ /**
+ * <p>The frame rate may be reduced relative to sensor raw output
+ * for this option.</p>
+ * <p>A high-quality hot pixel correction is applied.</p>
+ * @see CaptureRequest#HOT_PIXEL_MODE
+ */
+ public static final int HOT_PIXEL_MODE_HIGH_QUALITY = 2;
+
+ //
// Enumeration values for CaptureRequest#LENS_OPTICAL_STABILIZATION_MODE
//
diff --git a/core/java/android/hardware/camera2/CaptureRequest.java b/core/java/android/hardware/camera2/CaptureRequest.java
index 8f91e07..9904db7 100644
--- a/core/java/android/hardware/camera2/CaptureRequest.java
+++ b/core/java/android/hardware/camera2/CaptureRequest.java
@@ -872,6 +872,18 @@
new Key<Integer>("android.flash.mode", int.class);
/**
+ * <p>Set operational mode for hot pixel correction.</p>
+ * <p>Hotpixel correction interpolates out, or otherwise removes, pixels
+ * that do not accurately encode the incoming light (i.e. pixels that
+ * are stuck at an arbitrary value).</p>
+ * @see #HOT_PIXEL_MODE_OFF
+ * @see #HOT_PIXEL_MODE_FAST
+ * @see #HOT_PIXEL_MODE_HIGH_QUALITY
+ */
+ public static final Key<Integer> HOT_PIXEL_MODE =
+ new Key<Integer>("android.hotPixel.mode", int.class);
+
+ /**
* <p>GPS coordinates to include in output JPEG
* EXIF</p>
*/
diff --git a/core/java/android/hardware/camera2/CaptureResult.java b/core/java/android/hardware/camera2/CaptureResult.java
index 48a1870..7b2f628 100644
--- a/core/java/android/hardware/camera2/CaptureResult.java
+++ b/core/java/android/hardware/camera2/CaptureResult.java
@@ -1014,6 +1014,31 @@
new Key<Integer>("android.flash.state", int.class);
/**
+ * <p>List of <code>(x, y)</code> coordinates of hot/defective pixels on the
+ * sensor, where <code>(x, y)</code> lies between <code>(0, 0)</code>, which is the top-left
+ * of the pixel array, and the width,height of the pixel array given in
+ * {@link CameraCharacteristics#SENSOR_INFO_PIXEL_ARRAY_SIZE android.sensor.info.pixelArraySize}. This may include hot pixels
+ * that lie outside of the active array bounds given by
+ * android.sensor.activeArraySize.</p>
+ *
+ * @see CameraCharacteristics#SENSOR_INFO_PIXEL_ARRAY_SIZE
+ */
+ public static final Key<int[]> HOT_PIXEL_MAP =
+ new Key<int[]>("android.hotPixel.map", int[].class);
+
+ /**
+ * <p>Set operational mode for hot pixel correction.</p>
+ * <p>Hotpixel correction interpolates out, or otherwise removes, pixels
+ * that do not accurately encode the incoming light (i.e. pixels that
+ * are stuck at an arbitrary value).</p>
+ * @see #HOT_PIXEL_MODE_OFF
+ * @see #HOT_PIXEL_MODE_FAST
+ * @see #HOT_PIXEL_MODE_HIGH_QUALITY
+ */
+ public static final Key<Integer> HOT_PIXEL_MODE =
+ new Key<Integer>("android.hotPixel.mode", int.class);
+
+ /**
* <p>GPS coordinates to include in output JPEG
* EXIF</p>
*/