Camera2: Add aberration correction control
Change-Id: I0a3530ee8d5550f0f2a58c4d7af284821d87cb4d
This commit is contained in:
@@ -12354,6 +12354,7 @@ package android.hardware.camera2 {
|
||||
method public T get(android.hardware.camera2.CameraCharacteristics.Key<T>);
|
||||
method public java.util.List<android.hardware.camera2.CaptureRequest.Key<?>> getAvailableCaptureRequestKeys();
|
||||
method public java.util.List<android.hardware.camera2.CaptureResult.Key<?>> getAvailableCaptureResultKeys();
|
||||
field public static final android.hardware.camera2.CameraCharacteristics.Key COLOR_CORRECTION_AVAILABLE_ABERRATION_CORRECTION_MODES;
|
||||
field public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AE_AVAILABLE_ANTIBANDING_MODES;
|
||||
field public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AE_AVAILABLE_MODES;
|
||||
field public static final android.hardware.camera2.CameraCharacteristics.Key CONTROL_AE_AVAILABLE_TARGET_FPS_RANGES;
|
||||
@@ -12467,6 +12468,9 @@ package android.hardware.camera2 {
|
||||
|
||||
public abstract class CameraMetadata {
|
||||
method public java.util.List<TKey> getKeys();
|
||||
field public static final int COLOR_CORRECTION_ABERRATION_CORRECTION_MODE_FAST = 1; // 0x1
|
||||
field public static final int COLOR_CORRECTION_ABERRATION_CORRECTION_MODE_HIGH_QUALITY = 2; // 0x2
|
||||
field public static final int COLOR_CORRECTION_ABERRATION_CORRECTION_MODE_OFF = 0; // 0x0
|
||||
field public static final int COLOR_CORRECTION_MODE_FAST = 1; // 0x1
|
||||
field public static final int COLOR_CORRECTION_MODE_HIGH_QUALITY = 2; // 0x2
|
||||
field public static final int COLOR_CORRECTION_MODE_TRANSFORM_MATRIX = 0; // 0x0
|
||||
@@ -12656,6 +12660,7 @@ package android.hardware.camera2 {
|
||||
method public java.lang.Object getTag();
|
||||
method public void writeToParcel(android.os.Parcel, int);
|
||||
field public static final android.hardware.camera2.CaptureRequest.Key BLACK_LEVEL_LOCK;
|
||||
field public static final android.hardware.camera2.CaptureRequest.Key COLOR_CORRECTION_ABERRATION_CORRECTION_MODE;
|
||||
field public static final android.hardware.camera2.CaptureRequest.Key COLOR_CORRECTION_GAINS;
|
||||
field public static final android.hardware.camera2.CaptureRequest.Key COLOR_CORRECTION_MODE;
|
||||
field public static final android.hardware.camera2.CaptureRequest.Key COLOR_CORRECTION_TRANSFORM;
|
||||
@@ -12727,6 +12732,7 @@ package android.hardware.camera2 {
|
||||
method public android.hardware.camera2.CaptureRequest getRequest();
|
||||
method public int getSequenceId();
|
||||
field public static final android.hardware.camera2.CaptureResult.Key BLACK_LEVEL_LOCK;
|
||||
field public static final android.hardware.camera2.CaptureResult.Key COLOR_CORRECTION_ABERRATION_CORRECTION_MODE;
|
||||
field public static final android.hardware.camera2.CaptureResult.Key COLOR_CORRECTION_GAINS;
|
||||
field public static final android.hardware.camera2.CaptureResult.Key COLOR_CORRECTION_MODE;
|
||||
field public static final android.hardware.camera2.CaptureResult.Key COLOR_CORRECTION_TRANSFORM;
|
||||
|
||||
@@ -288,6 +288,20 @@ public final class CameraCharacteristics extends CameraMetadata<CameraCharacteri
|
||||
*~@~@~@~@~@~@~@~@~@~@~@~@~@~@~@~@~@~@~@~@~@~@~@~@~@~@~@~@~@~@~@~@~@~@~*/
|
||||
|
||||
|
||||
/**
|
||||
* <p>The set of aberration correction modes supported by this camera device.</p>
|
||||
* <p>This metadata lists the valid modes for {@link CaptureRequest#COLOR_CORRECTION_ABERRATION_CORRECTION_MODE android.colorCorrection.aberrationCorrectionMode}.
|
||||
* If no aberration correction modes are available for a device, this list will solely include
|
||||
* OFF mode.</p>
|
||||
* <p>For FULL capability device ({@link CameraCharacteristics#INFO_SUPPORTED_HARDWARE_LEVEL android.info.supportedHardwareLevel} <code>==</code> FULL), OFF must be
|
||||
* included.</p>
|
||||
*
|
||||
* @see CaptureRequest#COLOR_CORRECTION_ABERRATION_CORRECTION_MODE
|
||||
* @see CameraCharacteristics#INFO_SUPPORTED_HARDWARE_LEVEL
|
||||
*/
|
||||
public static final Key<int[]> COLOR_CORRECTION_AVAILABLE_ABERRATION_CORRECTION_MODES =
|
||||
new Key<int[]>("android.colorCorrection.availableAberrationCorrectionModes", int[].class);
|
||||
|
||||
/**
|
||||
* <p>The set of auto-exposure antibanding modes that are
|
||||
* supported by this camera device.</p>
|
||||
|
||||
@@ -317,12 +317,19 @@ public abstract class CameraMetadata<TKey> {
|
||||
* <li>android.lens.info.shadingMapSize</li>
|
||||
* </ul>
|
||||
* </li>
|
||||
* <li>Manual aberration correction control (if aberration correction is supported)<ul>
|
||||
* <li>{@link CaptureRequest#COLOR_CORRECTION_ABERRATION_CORRECTION_MODE android.colorCorrection.aberrationCorrectionMode}</li>
|
||||
* <li>{@link CameraCharacteristics#COLOR_CORRECTION_AVAILABLE_ABERRATION_CORRECTION_MODES android.colorCorrection.availableAberrationCorrectionModes}</li>
|
||||
* </ul>
|
||||
* </li>
|
||||
* </ul>
|
||||
* <p>If auto white balance is enabled, then the camera device
|
||||
* will accurately report the values applied by AWB in the result.</p>
|
||||
* <p>A given camera device may also support additional post-processing
|
||||
* controls, but this capability only covers the above list of controls.</p>
|
||||
*
|
||||
* @see CaptureRequest#COLOR_CORRECTION_ABERRATION_CORRECTION_MODE
|
||||
* @see CameraCharacteristics#COLOR_CORRECTION_AVAILABLE_ABERRATION_CORRECTION_MODES
|
||||
* @see CaptureRequest#COLOR_CORRECTION_GAINS
|
||||
* @see CaptureRequest#COLOR_CORRECTION_TRANSFORM
|
||||
* @see CaptureRequest#SHADING_MODE
|
||||
@@ -663,6 +670,30 @@ public abstract class CameraMetadata<TKey> {
|
||||
*/
|
||||
public static final int COLOR_CORRECTION_MODE_HIGH_QUALITY = 2;
|
||||
|
||||
//
|
||||
// Enumeration values for CaptureRequest#COLOR_CORRECTION_ABERRATION_CORRECTION_MODE
|
||||
//
|
||||
|
||||
/**
|
||||
* <p>No aberration correction is applied.</p>
|
||||
* @see CaptureRequest#COLOR_CORRECTION_ABERRATION_CORRECTION_MODE
|
||||
*/
|
||||
public static final int COLOR_CORRECTION_ABERRATION_CORRECTION_MODE_OFF = 0;
|
||||
|
||||
/**
|
||||
* <p>Aberration correction will not slow down capture rate
|
||||
* relative to sensor raw output.</p>
|
||||
* @see CaptureRequest#COLOR_CORRECTION_ABERRATION_CORRECTION_MODE
|
||||
*/
|
||||
public static final int COLOR_CORRECTION_ABERRATION_CORRECTION_MODE_FAST = 1;
|
||||
|
||||
/**
|
||||
* <p>Aberration correction operates at improved quality but reduced
|
||||
* capture rate (relative to sensor raw output).</p>
|
||||
* @see CaptureRequest#COLOR_CORRECTION_ABERRATION_CORRECTION_MODE
|
||||
*/
|
||||
public static final int COLOR_CORRECTION_ABERRATION_CORRECTION_MODE_HIGH_QUALITY = 2;
|
||||
|
||||
//
|
||||
// Enumeration values for CaptureRequest#CONTROL_AE_ANTIBANDING_MODE
|
||||
//
|
||||
|
||||
@@ -557,6 +557,29 @@ public final class CaptureRequest extends CameraMetadata<CaptureRequest.Key<?>>
|
||||
public static final Key<android.hardware.camera2.params.RggbChannelVector> COLOR_CORRECTION_GAINS =
|
||||
new Key<android.hardware.camera2.params.RggbChannelVector>("android.colorCorrection.gains", android.hardware.camera2.params.RggbChannelVector.class);
|
||||
|
||||
/**
|
||||
* <p>Mode of operation for the chromatic aberration correction algorithm.</p>
|
||||
* <p>This must be set to a valid mode from
|
||||
* {@link CameraCharacteristics#COLOR_CORRECTION_AVAILABLE_ABERRATION_CORRECTION_MODES android.colorCorrection.availableAberrationCorrectionModes}.</p>
|
||||
* <p>Chromatic (color) aberration is caused by the fact that different wavelengths of light
|
||||
* can not focus on the same point after exiting from the lens. This metadata defines
|
||||
* the high level control of chromatic aberration correction algorithm, which aims to
|
||||
* minimize the chromatic artifacts that may occur along the object boundaries in an
|
||||
* image.</p>
|
||||
* <p>FAST/HIGH_QUALITY both mean that camera device determined aberration
|
||||
* correction will be applied. HIGH_QUALITY mode indicates that the camera device will
|
||||
* use the highest-quality aberration correction algorithms, even if it slows down
|
||||
* capture rate. FAST means the camera device will not slow down capture rate when
|
||||
* applying aberration correction.</p>
|
||||
*
|
||||
* @see CameraCharacteristics#COLOR_CORRECTION_AVAILABLE_ABERRATION_CORRECTION_MODES
|
||||
* @see #COLOR_CORRECTION_ABERRATION_CORRECTION_MODE_OFF
|
||||
* @see #COLOR_CORRECTION_ABERRATION_CORRECTION_MODE_FAST
|
||||
* @see #COLOR_CORRECTION_ABERRATION_CORRECTION_MODE_HIGH_QUALITY
|
||||
*/
|
||||
public static final Key<Integer> COLOR_CORRECTION_ABERRATION_CORRECTION_MODE =
|
||||
new Key<Integer>("android.colorCorrection.aberrationCorrectionMode", int.class);
|
||||
|
||||
/**
|
||||
* <p>The desired setting for the camera device's auto-exposure
|
||||
* algorithm's antibanding compensation.</p>
|
||||
|
||||
@@ -402,6 +402,29 @@ public class CaptureResult extends CameraMetadata<CaptureResult.Key<?>> {
|
||||
public static final Key<android.hardware.camera2.params.RggbChannelVector> COLOR_CORRECTION_GAINS =
|
||||
new Key<android.hardware.camera2.params.RggbChannelVector>("android.colorCorrection.gains", android.hardware.camera2.params.RggbChannelVector.class);
|
||||
|
||||
/**
|
||||
* <p>Mode of operation for the chromatic aberration correction algorithm.</p>
|
||||
* <p>This must be set to a valid mode from
|
||||
* {@link CameraCharacteristics#COLOR_CORRECTION_AVAILABLE_ABERRATION_CORRECTION_MODES android.colorCorrection.availableAberrationCorrectionModes}.</p>
|
||||
* <p>Chromatic (color) aberration is caused by the fact that different wavelengths of light
|
||||
* can not focus on the same point after exiting from the lens. This metadata defines
|
||||
* the high level control of chromatic aberration correction algorithm, which aims to
|
||||
* minimize the chromatic artifacts that may occur along the object boundaries in an
|
||||
* image.</p>
|
||||
* <p>FAST/HIGH_QUALITY both mean that camera device determined aberration
|
||||
* correction will be applied. HIGH_QUALITY mode indicates that the camera device will
|
||||
* use the highest-quality aberration correction algorithms, even if it slows down
|
||||
* capture rate. FAST means the camera device will not slow down capture rate when
|
||||
* applying aberration correction.</p>
|
||||
*
|
||||
* @see CameraCharacteristics#COLOR_CORRECTION_AVAILABLE_ABERRATION_CORRECTION_MODES
|
||||
* @see #COLOR_CORRECTION_ABERRATION_CORRECTION_MODE_OFF
|
||||
* @see #COLOR_CORRECTION_ABERRATION_CORRECTION_MODE_FAST
|
||||
* @see #COLOR_CORRECTION_ABERRATION_CORRECTION_MODE_HIGH_QUALITY
|
||||
*/
|
||||
public static final Key<Integer> COLOR_CORRECTION_ABERRATION_CORRECTION_MODE =
|
||||
new Key<Integer>("android.colorCorrection.aberrationCorrectionMode", int.class);
|
||||
|
||||
/**
|
||||
* <p>The desired setting for the camera device's auto-exposure
|
||||
* algorithm's antibanding compensation.</p>
|
||||
|
||||
Reference in New Issue
Block a user