diff options
Diffstat (limited to 'core/java/android')
4 files changed, 63 insertions, 25 deletions
diff --git a/core/java/android/hardware/camera2/CameraCharacteristics.java b/core/java/android/hardware/camera2/CameraCharacteristics.java index 56bfdf8438ba..cdbf95a31aab 100644 --- a/core/java/android/hardware/camera2/CameraCharacteristics.java +++ b/core/java/android/hardware/camera2/CameraCharacteristics.java @@ -251,9 +251,11 @@ public final class CameraCharacteristics extends CameraMetadata { /** * <p>List of supported aperture - * values</p> - * <p>If variable aperture not available, only setting - * should be for the fixed aperture</p> + * values.</p> + * <p>If the camera device doesn't support variable apertures, + * listed value will be the fixed aperture.</p> + * <p>If the camera device supports variable apertures, the aperture value + * in this list will be sorted in ascending order.</p> */ public static final Key<float[]> LENS_INFO_AVAILABLE_APERTURES = new Key<float[]>("android.lens.info.availableApertures", float[].class); diff --git a/core/java/android/hardware/camera2/CameraMetadata.java b/core/java/android/hardware/camera2/CameraMetadata.java index 58e93235a6be..64d055fbfa62 100644 --- a/core/java/android/hardware/camera2/CameraMetadata.java +++ b/core/java/android/hardware/camera2/CameraMetadata.java @@ -318,8 +318,8 @@ public abstract class CameraMetadata { * device, along with android.flash.* fields, if there's * a flash unit for this camera device.</p> * - * @see CaptureRequest#SENSOR_EXPOSURE_TIME * @see CaptureRequest#SENSOR_FRAME_DURATION + * @see CaptureRequest#SENSOR_EXPOSURE_TIME * @see CaptureRequest#SENSOR_SENSITIVITY * @see CaptureRequest#CONTROL_AE_MODE */ @@ -334,8 +334,8 @@ public abstract class CameraMetadata { * application has control over the various * android.flash.* fields.</p> * - * @see CaptureRequest#SENSOR_EXPOSURE_TIME * @see CaptureRequest#SENSOR_FRAME_DURATION + * @see CaptureRequest#SENSOR_EXPOSURE_TIME * @see CaptureRequest#SENSOR_SENSITIVITY * @see CaptureRequest#CONTROL_AE_MODE */ @@ -351,8 +351,8 @@ public abstract class CameraMetadata { * {@link CaptureRequest#CONTROL_CAPTURE_INTENT android.control.captureIntent} field is set to * STILL_CAPTURE</p> * - * @see CaptureRequest#CONTROL_AE_PRECAPTURE_TRIGGER * @see CaptureRequest#CONTROL_CAPTURE_INTENT + * @see CaptureRequest#CONTROL_AE_PRECAPTURE_TRIGGER * @see CaptureRequest#CONTROL_AE_MODE */ public static final int CONTROL_AE_MODE_ON_AUTO_FLASH = 2; @@ -367,8 +367,8 @@ public abstract class CameraMetadata { * {@link CaptureRequest#CONTROL_CAPTURE_INTENT android.control.captureIntent} field is set to * STILL_CAPTURE</p> * - * @see CaptureRequest#CONTROL_AE_PRECAPTURE_TRIGGER * @see CaptureRequest#CONTROL_CAPTURE_INTENT + * @see CaptureRequest#CONTROL_AE_PRECAPTURE_TRIGGER * @see CaptureRequest#CONTROL_AE_MODE */ public static final int CONTROL_AE_MODE_ON_ALWAYS_FLASH = 3; diff --git a/core/java/android/hardware/camera2/CaptureRequest.java b/core/java/android/hardware/camera2/CaptureRequest.java index 9ba3eea778a3..78c5db96ffa5 100644 --- a/core/java/android/hardware/camera2/CaptureRequest.java +++ b/core/java/android/hardware/camera2/CaptureRequest.java @@ -399,9 +399,9 @@ public final class CaptureRequest extends CameraMetadata implements Parcelable { * issues. The {@link CaptureResult#STATISTICS_SCENE_FLICKER android.statistics.sceneFlicker} key can assist * the application in this.</p> * - * @see CameraCharacteristics#CONTROL_AE_AVAILABLE_ANTIBANDING_MODES * @see CaptureResult#STATISTICS_SCENE_FLICKER * @see CaptureRequest#CONTROL_AE_MODE + * @see CameraCharacteristics#CONTROL_AE_AVAILABLE_ANTIBANDING_MODES * @see CaptureRequest#CONTROL_MODE * @see #CONTROL_AE_ANTIBANDING_MODE_OFF * @see #CONTROL_AE_ANTIBANDING_MODE_50HZ @@ -453,12 +453,12 @@ public final class CaptureRequest extends CameraMetadata implements Parcelable { * fields for a given capture will be available in its * CaptureResult.</p> * - * @see CaptureRequest#SENSOR_EXPOSURE_TIME - * @see CaptureRequest#SENSOR_FRAME_DURATION - * @see CaptureRequest#SENSOR_SENSITIVITY * @see CaptureRequest#FLASH_MODE * @see CameraCharacteristics#FLASH_INFO_AVAILABLE * @see CaptureRequest#CONTROL_MODE + * @see CaptureRequest#SENSOR_EXPOSURE_TIME + * @see CaptureRequest#SENSOR_FRAME_DURATION + * @see CaptureRequest#SENSOR_SENSITIVITY * @see #CONTROL_AE_MODE_OFF * @see #CONTROL_AE_MODE_ON * @see #CONTROL_AE_MODE_ON_AUTO_FLASH @@ -810,9 +810,27 @@ public final class CaptureRequest extends CameraMetadata implements Parcelable { new Key<android.hardware.camera2.Size>("android.jpeg.thumbnailSize", android.hardware.camera2.Size.class); /** - * <p>Size of the lens aperture</p> - * <p>Will not be supported on most devices. Can only - * pick from supported list</p> + * <p>The ratio of lens focal length to the effective + * aperture diameter.</p> + * <p>This will only be supported on the camera devices that + * have variable aperture lens. The aperture value can only be + * one of the values listed in {@link CameraCharacteristics#LENS_INFO_AVAILABLE_APERTURES android.lens.info.availableApertures}.</p> + * <p>When this is supported and {@link CaptureRequest#CONTROL_AE_MODE android.control.aeMode} is OFF, + * this can be set along with {@link CaptureRequest#SENSOR_EXPOSURE_TIME android.sensor.exposureTime}, + * {@link CaptureRequest#SENSOR_SENSITIVITY android.sensor.sensitivity}, and android.sensor.frameDuration + * to achieve manual exposure control.</p> + * <p>The requested aperture value may take several frames to reach the + * requested value; the camera device will report the current (intermediate) + * aperture size in capture result metadata while the aperture is changing.</p> + * <p>When this is supported and {@link CaptureRequest#CONTROL_AE_MODE android.control.aeMode} is one of + * the ON modes, this will be overridden by the camera device + * auto-exposure algorithm, the overridden values are then provided + * back to the user in the corresponding result.</p> + * + * @see CaptureRequest#CONTROL_AE_MODE + * @see CaptureRequest#SENSOR_SENSITIVITY + * @see CameraCharacteristics#LENS_INFO_AVAILABLE_APERTURES + * @see CaptureRequest#SENSOR_EXPOSURE_TIME */ public static final Key<Float> LENS_APERTURE = new Key<Float>("android.lens.aperture", float.class); @@ -979,8 +997,8 @@ public final class CaptureRequest extends CameraMetadata implements Parcelable { * channel, to use when {@link CaptureRequest#TONEMAP_MODE android.tonemap.mode} is CONTRAST_CURVE.</p> * <p>See {@link CaptureRequest#TONEMAP_CURVE_RED android.tonemap.curveRed} for more details.</p> * - * @see CaptureRequest#TONEMAP_MODE * @see CaptureRequest#TONEMAP_CURVE_RED + * @see CaptureRequest#TONEMAP_MODE */ public static final Key<float[]> TONEMAP_CURVE_BLUE = new Key<float[]>("android.tonemap.curveBlue", float[].class); @@ -992,8 +1010,8 @@ public final class CaptureRequest extends CameraMetadata implements Parcelable { * channel, to use when {@link CaptureRequest#TONEMAP_MODE android.tonemap.mode} is CONTRAST_CURVE.</p> * <p>See {@link CaptureRequest#TONEMAP_CURVE_RED android.tonemap.curveRed} for more details.</p> * - * @see CaptureRequest#TONEMAP_MODE * @see CaptureRequest#TONEMAP_CURVE_RED + * @see CaptureRequest#TONEMAP_MODE */ public static final Key<float[]> TONEMAP_CURVE_GREEN = new Key<float[]>("android.tonemap.curveGreen", float[].class); diff --git a/core/java/android/hardware/camera2/CaptureResult.java b/core/java/android/hardware/camera2/CaptureResult.java index 3b5d6b0f97a2..0af7d0fe2321 100644 --- a/core/java/android/hardware/camera2/CaptureResult.java +++ b/core/java/android/hardware/camera2/CaptureResult.java @@ -195,12 +195,12 @@ public final class CaptureResult extends CameraMetadata { * fields for a given capture will be available in its * CaptureResult.</p> * - * @see CaptureRequest#SENSOR_EXPOSURE_TIME - * @see CaptureRequest#SENSOR_FRAME_DURATION - * @see CaptureRequest#SENSOR_SENSITIVITY * @see CaptureRequest#FLASH_MODE * @see CameraCharacteristics#FLASH_INFO_AVAILABLE * @see CaptureRequest#CONTROL_MODE + * @see CaptureRequest#SENSOR_EXPOSURE_TIME + * @see CaptureRequest#SENSOR_FRAME_DURATION + * @see CaptureRequest#SENSOR_SENSITIVITY * @see #CONTROL_AE_MODE_OFF * @see #CONTROL_AE_MODE_ON * @see #CONTROL_AE_MODE_ON_AUTO_FLASH @@ -492,9 +492,27 @@ public final class CaptureResult extends CameraMetadata { new Key<android.hardware.camera2.Size>("android.jpeg.thumbnailSize", android.hardware.camera2.Size.class); /** - * <p>Size of the lens aperture</p> - * <p>Will not be supported on most devices. Can only - * pick from supported list</p> + * <p>The ratio of lens focal length to the effective + * aperture diameter.</p> + * <p>This will only be supported on the camera devices that + * have variable aperture lens. The aperture value can only be + * one of the values listed in {@link CameraCharacteristics#LENS_INFO_AVAILABLE_APERTURES android.lens.info.availableApertures}.</p> + * <p>When this is supported and {@link CaptureRequest#CONTROL_AE_MODE android.control.aeMode} is OFF, + * this can be set along with {@link CaptureRequest#SENSOR_EXPOSURE_TIME android.sensor.exposureTime}, + * {@link CaptureRequest#SENSOR_SENSITIVITY android.sensor.sensitivity}, and android.sensor.frameDuration + * to achieve manual exposure control.</p> + * <p>The requested aperture value may take several frames to reach the + * requested value; the camera device will report the current (intermediate) + * aperture size in capture result metadata while the aperture is changing.</p> + * <p>When this is supported and {@link CaptureRequest#CONTROL_AE_MODE android.control.aeMode} is one of + * the ON modes, this will be overridden by the camera device + * auto-exposure algorithm, the overridden values are then provided + * back to the user in the corresponding result.</p> + * + * @see CaptureRequest#CONTROL_AE_MODE + * @see CameraCharacteristics#LENS_INFO_AVAILABLE_APERTURES + * @see CaptureRequest#SENSOR_SENSITIVITY + * @see CaptureRequest#SENSOR_EXPOSURE_TIME */ public static final Key<Float> LENS_APERTURE = new Key<Float>("android.lens.aperture", float.class); @@ -782,8 +800,8 @@ public final class CaptureResult extends CameraMetadata { * image of a gray wall (using bicubic interpolation for visual quality) as captured by the sensor gives:</p> * <p><img alt="Image of a uniform white wall (inverse shading map)" src="../../../../images/camera2/metadata/android.statistics.lensShadingMap/inv_shading.png" /></p> * - * @see CaptureRequest#COLOR_CORRECTION_MODE * @see CaptureResult#STATISTICS_LENS_SHADING_MAP + * @see CaptureRequest#COLOR_CORRECTION_MODE * @see CameraCharacteristics#LENS_INFO_SHADING_MAP_SIZE */ public static final Key<float[]> STATISTICS_LENS_SHADING_MAP = @@ -845,8 +863,8 @@ public final class CaptureResult extends CameraMetadata { * channel, to use when {@link CaptureRequest#TONEMAP_MODE android.tonemap.mode} is CONTRAST_CURVE.</p> * <p>See {@link CaptureRequest#TONEMAP_CURVE_RED android.tonemap.curveRed} for more details.</p> * - * @see CaptureRequest#TONEMAP_MODE * @see CaptureRequest#TONEMAP_CURVE_RED + * @see CaptureRequest#TONEMAP_MODE */ public static final Key<float[]> TONEMAP_CURVE_BLUE = new Key<float[]>("android.tonemap.curveBlue", float[].class); @@ -858,8 +876,8 @@ public final class CaptureResult extends CameraMetadata { * channel, to use when {@link CaptureRequest#TONEMAP_MODE android.tonemap.mode} is CONTRAST_CURVE.</p> * <p>See {@link CaptureRequest#TONEMAP_CURVE_RED android.tonemap.curveRed} for more details.</p> * - * @see CaptureRequest#TONEMAP_MODE * @see CaptureRequest#TONEMAP_CURVE_RED + * @see CaptureRequest#TONEMAP_MODE */ public static final Key<float[]> TONEMAP_CURVE_GREEN = new Key<float[]>("android.tonemap.curveGreen", float[].class); |
