From 2e3e00ee63d5914ea92f6e5831eafc3db0697329 Mon Sep 17 00:00:00 2001 From: Shuzhen Wang Date: Tue, 3 May 2022 12:32:22 -0700 Subject: Camera: Fix typos and bad format in docs Test: Build Bug: 231252657 Change-Id: I3006f124baab76aa011c5b91d346b871ed6eea22 --- .../hardware/camera2/CameraCharacteristics.java | 38 ++++---- .../android/hardware/camera2/CameraMetadata.java | 106 +++++++++++---------- .../android/hardware/camera2/CaptureRequest.java | 28 +++--- .../android/hardware/camera2/CaptureResult.java | 38 ++++---- .../camera2/params/DynamicRangeProfiles.java | 4 +- 5 files changed, 116 insertions(+), 98 deletions(-) diff --git a/core/java/android/hardware/camera2/CameraCharacteristics.java b/core/java/android/hardware/camera2/CameraCharacteristics.java index b05e6d131957..a90eb88bc109 100644 --- a/core/java/android/hardware/camera2/CameraCharacteristics.java +++ b/core/java/android/hardware/camera2/CameraCharacteristics.java @@ -1058,7 +1058,7 @@ public final class CameraCharacteristics extends CameraMetadata *

The min and max fps will be multiple times of 30fps.

- *

High speed video streaming extends significant performance pressue to camera hardware, + *

High speed video streaming extends significant performance pressure to camera hardware, * to achieve efficient high speed streaming, the camera device may have to aggregate * multiple frames together and send to camera device for processing where the request * controls are same for all the frames in this batch. Max batch size indicates @@ -1143,7 +1143,7 @@ public final class CameraCharacteristics extends CameraMetadataRange of boosts for {@link CaptureRequest#CONTROL_POST_RAW_SENSITIVITY_BOOST android.control.postRawSensitivityBoost} supported * by this camera device.

*

Devices support post RAW sensitivity boost will advertise - * {@link CaptureRequest#CONTROL_POST_RAW_SENSITIVITY_BOOST android.control.postRawSensitivityBoost} key for controling + * {@link CaptureRequest#CONTROL_POST_RAW_SENSITIVITY_BOOST android.control.postRawSensitivityBoost} key for controlling * post RAW sensitivity boost.

*

This key will be null for devices that do not support any RAW format * outputs. For devices that do support RAW format outputs, this key will always @@ -1323,7 +1323,7 @@ public final class CameraCharacteristics extends CameraMetadataMaximum flashlight brightness level.

*

If this value is greater than 1, then the device supports controlling the * flashlight brightness level via - * {android.hardware.camera2.CameraManager#turnOnTorchWithStrengthLevel}. + * {@link android.hardware.camera2.CameraManager#turnOnTorchWithStrengthLevel }. * If this value is equal to 1, flashlight brightness control is not supported. * The value for this key will be null for devices with no flash unit.

*

Optional - The value for this key may be {@code null} on some devices.

@@ -1335,7 +1335,7 @@ public final class CameraCharacteristics extends CameraMetadataDefault flashlight brightness level to be set via - * {android.hardware.camera2.CameraManager#turnOnTorchWithStrengthLevel}.

+ * {@link android.hardware.camera2.CameraManager#turnOnTorchWithStrengthLevel }.

*

If flash unit is available this will be greater than or equal to 1 and less * or equal to {@link CameraCharacteristics#FLASH_INFO_STRENGTH_MAXIMUM_LEVEL android.flash.info.strengthMaximumLevel}.

*

Setting flashlight brightness above the default level @@ -1376,7 +1376,7 @@ public final class CameraCharacteristics extends CameraMetadata *

This list will include at least one non-zero resolution, plus (0,0) for indicating no * thumbnail should be generated.

- *

Below condiditions will be satisfied for this size list:

+ *

Below conditions will be satisfied for this size list:

*
    *
  • The sizes will be sorted by increasing pixel area (width x height). * If several resolutions have the same area, they will be sorted by increasing width.
  • @@ -1982,7 +1982,7 @@ public final class CameraCharacteristics extends CameraMetadata *
      *
    • Processed (but stalling): any non-RAW format with a stallDurations > 0. @@ -2324,7 +2324,7 @@ public final class CameraCharacteristics extends CameraMetadata *
        - *
      • The camera client starts by quering the session parameter key list via + *
      • The camera client starts by querying the session parameter key list via * {@link android.hardware.camera2.CameraCharacteristics#getAvailableSessionKeys }.
      • *
      • Before triggering the capture session create sequence, a capture request * must be built via @@ -2379,7 +2379,7 @@ public final class CameraCharacteristics extends CameraMetadata *

        This key is available on all devices.

        * @hide @@ -2759,7 +2759,7 @@ public final class CameraCharacteristics extends CameraMetadata *

        For applications targeting SDK version 31 or newer, if the mobile device declares to be * media performance class 12 or higher by setting - * {@link android.os.Build.VERSION_CDOES.MEDIA_PERFORMANCE_CLASS } to be 31 or larger, + * {@link android.os.Build.VERSION_CODES.MEDIA_PERFORMANCE_CLASS } to be 31 or larger, * the primary camera devices (first rear/front camera in the camera ID list) will not * support JPEG sizes smaller than 1080p. If the application configures a JPEG stream * smaller than 1080p, the camera device will round up the JPEG image size to at least @@ -2833,7 +2833,7 @@ public final class CameraCharacteristics extends CameraMetadata *

        For applications targeting SDK version 31 or newer, if the mobile device doesn't declare * to be media performance class 12 or better by setting - * {@link android.os.Build.VERSION_CDOES.MEDIA_PERFORMANCE_CLASS } to be 31 or larger, + * {@link android.os.Build.VERSION_CODES.MEDIA_PERFORMANCE_CLASS } to be 31 or larger, * or if the camera device isn't a primary rear/front camera, the minimum required output * stream configurations are the same as for applications targeting SDK version older than * 31.

        @@ -3485,14 +3485,16 @@ public final class CameraCharacteristics extends CameraMetadata - *

        When set to TRUE: - * * For a logical multi-camera, the camera framework derives + *

        When set to TRUE:

        + *
          + *
        • For a logical multi-camera, the camera framework derives * {@link CameraCharacteristics#SCALER_MULTI_RESOLUTION_STREAM_CONFIGURATION_MAP android.scaler.multiResolutionStreamConfigurationMap} by combining the * android.scaler.physicalCameraMultiResolutionStreamConfigurations from its physical - * cameras. - * * For an ultra-high resolution sensor camera, the camera framework directly copies + * cameras.
        • + *
        • For an ultra-high resolution sensor camera, the camera framework directly copies * the value of android.scaler.physicalCameraMultiResolutionStreamConfigurations to - * {@link CameraCharacteristics#SCALER_MULTI_RESOLUTION_STREAM_CONFIGURATION_MAP android.scaler.multiResolutionStreamConfigurationMap}.

          + * {@link CameraCharacteristics#SCALER_MULTI_RESOLUTION_STREAM_CONFIGURATION_MAP android.scaler.multiResolutionStreamConfigurationMap}.
        • + *
        *

        Optional - The value for this key may be {@code null} on some devices.

        *

        Limited capability - * Present on all camera devices that report being at least {@link CameraCharacteristics#INFO_SUPPORTED_HARDWARE_LEVEL_LIMITED HARDWARE_LEVEL_LIMITED} devices in the @@ -3513,7 +3515,7 @@ public final class CameraCharacteristics extends CameraMetadata *

        With this flag, the camera device can optimize the image processing pipeline - * parameters, such as tuning, sensor mode, and ISP settings, indepedent of + * parameters, such as tuning, sensor mode, and ISP settings, independent of * the properties of the immediate camera output surface. For example, if the output * surface is a SurfaceTexture, the stream use case flag can be used to indicate whether * the camera frames eventually go to display, video encoder, @@ -3535,7 +3537,7 @@ public final class CameraCharacteristics extends CameraMetadata *

        If a camera has INTERIOR_OTHER or EXTERIOR_OTHER, or more than one camera is at the * same location and facing the same direction, their static metadata will list the - * following entries, so that applications can determain their lenses' exact facing + * following entries, so that applications can determine their lenses' exact facing * directions:

        *
          *
        • {@link CameraCharacteristics#LENS_POSE_REFERENCE android.lens.poseReference}
        • diff --git a/core/java/android/hardware/camera2/CameraMetadata.java b/core/java/android/hardware/camera2/CameraMetadata.java index 40565b06a8f2..eb8c73aced39 100644 --- a/core/java/android/hardware/camera2/CameraMetadata.java +++ b/core/java/android/hardware/camera2/CameraMetadata.java @@ -409,7 +409,7 @@ public abstract class CameraMetadata { /** *

          The value of {@link CameraCharacteristics#LENS_POSE_TRANSLATION android.lens.poseTranslation} is relative to the origin of the - * automotive sensor coodinate system, which is at the center of the rear axle.

          + * automotive sensor coordinate system, which is at the center of the rear axle.

          * * @see CameraCharacteristics#LENS_POSE_TRANSLATION * @see CameraCharacteristics#LENS_POSE_REFERENCE @@ -683,7 +683,7 @@ public abstract class CameraMetadata { * captured at the same rate as the maximum-size YUV_420_888 resolution is.

          *

          If the device supports the PRIVATE_REPROCESSING capability, then the same guarantees * as for the YUV_420_888 format also apply to the {@link android.graphics.ImageFormat#PRIVATE } format.

          - *

          In addition, the {@link CameraCharacteristics#SYNC_MAX_LATENCY android.sync.maxLatency} field is guaranted to have a value between 0 + *

          In addition, the {@link CameraCharacteristics#SYNC_MAX_LATENCY android.sync.maxLatency} field is guaranteed to have a value between 0 * and 4, inclusive. {@link CameraCharacteristics#CONTROL_AE_LOCK_AVAILABLE android.control.aeLockAvailable} and {@link CameraCharacteristics#CONTROL_AWB_LOCK_AVAILABLE android.control.awbLockAvailable} * are also guaranteed to be true so burst capture with these two locks ON yields * consistent image output.

          @@ -843,7 +843,7 @@ public abstract class CameraMetadata { * {@link android.hardware.camera2.params.StreamConfigurationMap#getHighSpeedVideoSizes }. *
        • The FPS ranges are selected from {@link android.hardware.camera2.params.StreamConfigurationMap#getHighSpeedVideoFpsRanges }.
        • *
        - *

        When above conditions are NOT satistied, + *

        When above conditions are NOT satisfied, * {@link android.hardware.camera2.CameraDevice#createConstrainedHighSpeedCaptureSession } * will fail.

        *

        Switching to a FPS range that has different maximum FPS may trigger some camera device @@ -986,7 +986,7 @@ public abstract class CameraMetadata { * non-active physical cameras. For example, if the logical camera has a wide-ultrawide * configuration where the wide lens is the default, when the crop region is set to the * logical camera's active array size, (and the zoom ratio set to 1.0 starting from - * Android 11), a physical stream for the ultrawide camera may prefer outputing images + * Android 11), a physical stream for the ultrawide camera may prefer outputting images * with larger field-of-view than that of the wide camera for better stereo matching * margin or more robust motion tracking. At the same time, the physical non-RAW streams' * field of view must not be smaller than the requested crop region and zoom ratio, as @@ -1175,21 +1175,23 @@ public abstract class CameraMetadata { * when {@link CaptureRequest#SENSOR_PIXEL_MODE android.sensor.pixelMode} is set to * {@link android.hardware.camera2.CameraMetadata#SENSOR_PIXEL_MODE_MAXIMUM_RESOLUTION }), * the RAW_SENSOR stream will have a regular bayer pattern.

        - *

        This capability requires the camera device to support the following : - * * The {@link android.hardware.camera2.params.StreamConfigurationMap } mentioned below + *

        This capability requires the camera device to support the following :

        + *
          + *
        • The {@link android.hardware.camera2.params.StreamConfigurationMap } mentioned below * refers to the one, described by - * {@link CameraCharacteristics#SCALER_STREAM_CONFIGURATION_MAP_MAXIMUM_RESOLUTION android.scaler.streamConfigurationMapMaximumResolution}. - * * One input stream is supported, that is, {@link CameraCharacteristics#REQUEST_MAX_NUM_INPUT_STREAMS android.request.maxNumInputStreams} == 1. - * * {@link android.graphics.ImageFormat#RAW_SENSOR } is supported as an output/input + * {@link CameraCharacteristics#SCALER_STREAM_CONFIGURATION_MAP_MAXIMUM_RESOLUTION android.scaler.streamConfigurationMapMaximumResolution}.
        • + *
        • One input stream is supported, that is, {@link CameraCharacteristics#REQUEST_MAX_NUM_INPUT_STREAMS android.request.maxNumInputStreams} == 1.
        • + *
        • {@link android.graphics.ImageFormat#RAW_SENSOR } is supported as an output/input * format, that is, {@link android.graphics.ImageFormat#RAW_SENSOR } is included in the - * lists of formats returned by {@link android.hardware.camera2.params.StreamConfigurationMap#getInputFormats } and {@link android.hardware.camera2.params.StreamConfigurationMap#getOutputFormats }. - * * {@link android.hardware.camera2.params.StreamConfigurationMap#getValidOutputFormatsForInput } - * returns non-empty int[] for each supported input format returned by {@link android.hardware.camera2.params.StreamConfigurationMap#getInputFormats }. - * * Each size returned by {@link android.hardware.camera2.params.StreamConfigurationMap#getInputSizes getInputSizes(ImageFormat.RAW_SENSOR)} is also included in {@link android.hardware.camera2.params.StreamConfigurationMap#getOutputSizes getOutputSizes(ImageFormat.RAW_SENSOR)} - * * Using {@link android.graphics.ImageFormat#RAW_SENSOR } does not cause a frame rate - * drop relative to the sensor's maximum capture rate (at that resolution). - * * No CaptureRequest controls will be applicable when a request has an input target - * with {@link android.graphics.ImageFormat#RAW_SENSOR } format.

          + * lists of formats returned by {@link android.hardware.camera2.params.StreamConfigurationMap#getInputFormats } and {@link android.hardware.camera2.params.StreamConfigurationMap#getOutputFormats }.
        • + *
        • {@link android.hardware.camera2.params.StreamConfigurationMap#getValidOutputFormatsForInput } + * returns non-empty int[] for each supported input format returned by {@link android.hardware.camera2.params.StreamConfigurationMap#getInputFormats }.
        • + *
        • Each size returned by {@link android.hardware.camera2.params.StreamConfigurationMap#getInputSizes getInputSizes(ImageFormat.RAW_SENSOR)} is also included in {@link android.hardware.camera2.params.StreamConfigurationMap#getOutputSizes getOutputSizes(ImageFormat.RAW_SENSOR)}
        • + *
        • Using {@link android.graphics.ImageFormat#RAW_SENSOR } does not cause a frame rate + * drop relative to the sensor's maximum capture rate (at that resolution).
        • + *
        • No CaptureRequest controls will be applicable when a request has an input target + * with {@link android.graphics.ImageFormat#RAW_SENSOR } format.
        • + *
        * * @see CameraCharacteristics#REQUEST_MAX_NUM_INPUT_STREAMS * @see CameraCharacteristics#SCALER_STREAM_CONFIGURATION_MAP_MAXIMUM_RESOLUTION @@ -1205,16 +1207,18 @@ public abstract class CameraMetadata { * {@link android.hardware.camera2.params.DynamicRangeProfiles#getSupportedProfiles }. * They can be configured as part of the capture session initialization via * {@link android.hardware.camera2.params.OutputConfiguration#setDynamicRangeProfile }. - * Cameras that enable this capability must also support the following: - * * Profile {@link android.hardware.camera2.params.DynamicRangeProfiles#HLG10 } - * * All mandatory stream combinations for this specific capability as per - * documentation {@link android.hardware.camera2.CameraDevice#createCaptureSession } - * * In case the device is not able to capture some combination of supported + * Cameras that enable this capability must also support the following:

        + *
          + *
        • Profile {@link android.hardware.camera2.params.DynamicRangeProfiles#HLG10 }
        • + *
        • All mandatory stream combinations for this specific capability as per + * documentation {@link android.hardware.camera2.CameraDevice#createCaptureSession }
        • + *
        • In case the device is not able to capture some combination of supported * standard 8-bit and/or 10-bit dynamic range profiles within the same capture request, * then those constraints must be listed in - * {@link android.hardware.camera2.params.DynamicRangeProfiles#getProfileCaptureRequestConstraints } - * * Recommended dynamic range profile listed in - * {@link android.hardware.camera2.CameraCharacteristics#REQUEST_RECOMMENDED_TEN_BIT_DYNAMIC_RANGE_PROFILE }.

          + * {@link android.hardware.camera2.params.DynamicRangeProfiles#getProfileCaptureRequestConstraints }
        • + *
        • Recommended dynamic range profile listed in + * {@link android.hardware.camera2.CameraCharacteristics#REQUEST_RECOMMENDED_TEN_BIT_DYNAMIC_RANGE_PROFILE }.
        • + *
        * @see CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES */ public static final int REQUEST_AVAILABLE_CAPABILITIES_DYNAMIC_RANGE_TEN_BIT = 18; @@ -1224,22 +1228,26 @@ public abstract class CameraMetadata { * {@link android.hardware.camera2.params.OutputConfiguration#setStreamUseCase } * so that the device can optimize camera pipeline parameters such as tuning, sensor * mode, or ISP settings for a specific user scenario. - * Some sample usages of this capability are: - * * Distinguish high quality YUV captures from a regular YUV stream where - * the image quality may not be as good as the JPEG stream, or - * * Use one stream to serve multiple purposes: viewfinder, video recording and + * Some sample usages of this capability are:

        + *
          + *
        • Distinguish high quality YUV captures from a regular YUV stream where + * the image quality may not be as good as the JPEG stream, or
        • + *
        • Use one stream to serve multiple purposes: viewfinder, video recording and * still capture. This is common with applications that wish to apply edits equally - * to preview, saved images, and saved videos.

          + * to preview, saved images, and saved videos.
        • + *
        *

        This capability requires the camera device to support the following - * stream use cases: - * * DEFAULT for backward compatibility where the application doesn't set - * a stream use case - * * PREVIEW for live viewfinder and in-app image analysis - * * STILL_CAPTURE for still photo capture - * * VIDEO_RECORD for recording video clips - * * PREVIEW_VIDEO_STILL for one single stream used for viewfinder, video - * recording, and still capture. - * * VIDEO_CALL for long running video calls

        + * stream use cases:

        + *
          + *
        • DEFAULT for backward compatibility where the application doesn't set + * a stream use case
        • + *
        • PREVIEW for live viewfinder and in-app image analysis
        • + *
        • STILL_CAPTURE for still photo capture
        • + *
        • VIDEO_RECORD for recording video clips
        • + *
        • PREVIEW_VIDEO_STILL for one single stream used for viewfinder, video + * recording, and still capture.
        • + *
        • VIDEO_CALL for long running video calls
        • + *
        *

        {@link android.hardware.camera2.CameraCharacteristics#SCALER_AVAILABLE_STREAM_USE_CASES } * lists all of the supported stream use cases.

        *

        Refer to {@link android.hardware.camera2.CameraDevice#createCaptureSession } for the @@ -1391,10 +1399,10 @@ public abstract class CameraMetadata { *

        Live stream shown to the user.

        *

        Optimized for performance and usability as a viewfinder, but not necessarily for * image quality. The output is not meant to be persisted as saved images or video.

        - *

        No stall if android.control. are set to FAST; may have stall if android.control. - * are set to HIGH_QUALITY. This use case has the same behavior as the default - * SurfaceView and SurfaceTexture targets. Additionally, this use case can be used for - * in-app image analysis.

        + *

        No stall if android.control.* are set to FAST. There may be stall if + * they are set to HIGH_QUALITY. This use case has the same behavior as the + * default SurfaceView and SurfaceTexture targets. Additionally, this use case can be + * used for in-app image analysis.

        * @see CameraCharacteristics#SCALER_AVAILABLE_STREAM_USE_CASES */ public static final int SCALER_AVAILABLE_STREAM_USE_CASES_PREVIEW = 0x1; @@ -1441,7 +1449,7 @@ public abstract class CameraMetadata { public static final int SCALER_AVAILABLE_STREAM_USE_CASES_PREVIEW_VIDEO_STILL = 0x4; /** - *

        Long-running video call optimized for both power efficienty and video quality.

        + *

        Long-running video call optimized for both power efficiency and video quality.

        *

        The camera sensor may run in a lower-resolution mode to reduce power consumption * at the cost of some image and digital zoom quality. Unlike VIDEO_RECORD, VIDEO_CALL * outputs are expected to work in dark conditions, so are usually accompanied with @@ -2946,10 +2954,10 @@ public abstract class CameraMetadata { * android.control.availableHighSpeedVideoConfigurations.

      • *
      • No processed non-stalling or raw streams are configured.
      • *
      - *

      When above conditions are NOT satistied, the controls of this mode and + *

      When above conditions are NOT satisfied, the controls of this mode and * {@link CaptureRequest#CONTROL_AE_TARGET_FPS_RANGE android.control.aeTargetFpsRange} will be ignored by the camera device, * the camera device will fall back to {@link CaptureRequest#CONTROL_MODE android.control.mode} == AUTO, - * and the returned capture result metadata will give the fps range choosen + * and the returned capture result metadata will give the fps range chosen * by the camera device.

      *

      Switching into or out of this mode may trigger some camera ISP/sensor * reconfigurations, which may introduce extra latency. It is recommended that @@ -3034,7 +3042,7 @@ public abstract class CameraMetadata { * if the {@link CameraCharacteristics#SENSOR_INFO_SENSITIVITY_RANGE android.sensor.info.sensitivityRange} gives range of [100, 1600], * the camera device auto-exposure routine tuning process may limit the actual * exposure sensitivity range to [100, 1200] to ensure that the noise level isn't - * exessive in order to preserve the image quality. Under this situation, the image under + * excessive in order to preserve the image quality. Under this situation, the image under * low light may be under-exposed when the sensor max exposure time (bounded by the * {@link CaptureRequest#CONTROL_AE_TARGET_FPS_RANGE android.control.aeTargetFpsRange} when {@link CaptureRequest#CONTROL_AE_MODE android.control.aeMode} is one of the * ON_* modes) and effective max sensitivity are reached. This scene mode allows the @@ -3631,7 +3639,7 @@ public abstract class CameraMetadata { public static final int TONEMAP_MODE_HIGH_QUALITY = 2; /** - *

      Use the gamma value specified in {@link CaptureRequest#TONEMAP_GAMMA android.tonemap.gamma} to peform + *

      Use the gamma value specified in {@link CaptureRequest#TONEMAP_GAMMA android.tonemap.gamma} to perform * tonemapping.

      *

      All color enhancement and tonemapping must be disabled, except * for applying the tonemapping curve specified by {@link CaptureRequest#TONEMAP_GAMMA android.tonemap.gamma}.

      @@ -3644,7 +3652,7 @@ public abstract class CameraMetadata { /** *

      Use the preset tonemapping curve specified in - * {@link CaptureRequest#TONEMAP_PRESET_CURVE android.tonemap.presetCurve} to peform tonemapping.

      + * {@link CaptureRequest#TONEMAP_PRESET_CURVE android.tonemap.presetCurve} to perform tonemapping.

      *

      All color enhancement and tonemapping must be disabled, except * for applying the tonemapping curve specified by * {@link CaptureRequest#TONEMAP_PRESET_CURVE android.tonemap.presetCurve}.

      diff --git a/core/java/android/hardware/camera2/CaptureRequest.java b/core/java/android/hardware/camera2/CaptureRequest.java index 15e59e03ee70..c5cf0f695040 100644 --- a/core/java/android/hardware/camera2/CaptureRequest.java +++ b/core/java/android/hardware/camera2/CaptureRequest.java @@ -1767,7 +1767,7 @@ public final class CaptureRequest extends CameraMetadata> * routine is enabled, overriding the application's selected * {@link CaptureRequest#COLOR_CORRECTION_TRANSFORM android.colorCorrection.transform}, {@link CaptureRequest#COLOR_CORRECTION_GAINS android.colorCorrection.gains} and * {@link CaptureRequest#COLOR_CORRECTION_MODE android.colorCorrection.mode}. Note that when {@link CaptureRequest#CONTROL_AE_MODE android.control.aeMode} - * is OFF, the behavior of AWB is device dependent. It is recommened to + * is OFF, the behavior of AWB is device dependent. It is recommended to * also set AWB mode to OFF or lock AWB by using {@link CaptureRequest#CONTROL_AWB_LOCK android.control.awbLock} before * setting AE mode to OFF.

      *

      When set to the OFF mode, the camera device's auto-white balance @@ -1917,13 +1917,15 @@ public final class CaptureRequest extends CameraMetadata> * strategy.

      *

      This control (except for MANUAL) is only effective if * {@link CaptureRequest#CONTROL_MODE android.control.mode} != OFF and any 3A routine is active.

      - *

      All intents are supported by all devices, except that: - * * ZERO_SHUTTER_LAG will be supported if {@link CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES android.request.availableCapabilities} contains - * PRIVATE_REPROCESSING or YUV_REPROCESSING. - * * MANUAL will be supported if {@link CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES android.request.availableCapabilities} contains - * MANUAL_SENSOR. - * * MOTION_TRACKING will be supported if {@link CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES android.request.availableCapabilities} contains - * MOTION_TRACKING.

      + *

      All intents are supported by all devices, except that:

      + *
        + *
      • ZERO_SHUTTER_LAG will be supported if {@link CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES android.request.availableCapabilities} contains + * PRIVATE_REPROCESSING or YUV_REPROCESSING.
      • + *
      • MANUAL will be supported if {@link CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES android.request.availableCapabilities} contains + * MANUAL_SENSOR.
      • + *
      • MOTION_TRACKING will be supported if {@link CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES android.request.availableCapabilities} contains + * MOTION_TRACKING.
      • + *
      *

      Possible values:

      *
        *
      • {@link #CONTROL_CAPTURE_INTENT_CUSTOM CUSTOM}
      • @@ -2680,7 +2682,7 @@ public final class CaptureRequest extends CameraMetadata> * and keep jpeg and thumbnail image data unrotated. *
      • Rotate the jpeg and thumbnail image data and not set * {@link android.media.ExifInterface#TAG_ORIENTATION EXIF orientation flag}. In this - * case, LIMITED or FULL hardware level devices will report rotated thumnail size in + * case, LIMITED or FULL hardware level devices will report rotated thumbnail size in * capture result, so the width and height will be interchanged if 90 or 270 degree * orientation is requested. LEGACY device will always report unrotated thumbnail * size.
      • @@ -3806,9 +3808,11 @@ public final class CaptureRequest extends CameraMetadata> /** *

        Tonemapping curve to use when {@link CaptureRequest#TONEMAP_MODE android.tonemap.mode} is * GAMMA_VALUE

        - *

        The tonemap curve will be defined the following formula: - * * OUT = pow(IN, 1.0 / gamma) - * where IN and OUT is the input pixel value scaled to range [0.0, 1.0], + *

        The tonemap curve will be defined the following formula:

        + *
          + *
        • OUT = pow(IN, 1.0 / gamma)
        • + *
        + *

        where IN and OUT is the input pixel value scaled to range [0.0, 1.0], * pow is the power function and gamma is the gamma value specified by this * key.

        *

        The same curve will be applied to all color channels. The camera device diff --git a/core/java/android/hardware/camera2/CaptureResult.java b/core/java/android/hardware/camera2/CaptureResult.java index 1faec5b76524..3e1deb27584e 100644 --- a/core/java/android/hardware/camera2/CaptureResult.java +++ b/core/java/android/hardware/camera2/CaptureResult.java @@ -1173,7 +1173,7 @@ public class CaptureResult extends CameraMetadata> { * Any state (excluding LOCKED) * {@link CaptureRequest#CONTROL_AE_PRECAPTURE_TRIGGER android.control.aePrecaptureTrigger} is CANCEL, converged * CONVERGED - * Converged after a precapture sequenceis canceled, transient states are skipped by camera device. + * Converged after a precapture sequences canceled, transient states are skipped by camera device. * * * CONVERGED @@ -1847,7 +1847,7 @@ public class CaptureResult extends CameraMetadata> { * routine is enabled, overriding the application's selected * {@link CaptureRequest#COLOR_CORRECTION_TRANSFORM android.colorCorrection.transform}, {@link CaptureRequest#COLOR_CORRECTION_GAINS android.colorCorrection.gains} and * {@link CaptureRequest#COLOR_CORRECTION_MODE android.colorCorrection.mode}. Note that when {@link CaptureRequest#CONTROL_AE_MODE android.control.aeMode} - * is OFF, the behavior of AWB is device dependent. It is recommened to + * is OFF, the behavior of AWB is device dependent. It is recommended to * also set AWB mode to OFF or lock AWB by using {@link CaptureRequest#CONTROL_AWB_LOCK android.control.awbLock} before * setting AE mode to OFF.

        *

        When set to the OFF mode, the camera device's auto-white balance @@ -1997,13 +1997,15 @@ public class CaptureResult extends CameraMetadata> { * strategy.

        *

        This control (except for MANUAL) is only effective if * {@link CaptureRequest#CONTROL_MODE android.control.mode} != OFF and any 3A routine is active.

        - *

        All intents are supported by all devices, except that: - * * ZERO_SHUTTER_LAG will be supported if {@link CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES android.request.availableCapabilities} contains - * PRIVATE_REPROCESSING or YUV_REPROCESSING. - * * MANUAL will be supported if {@link CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES android.request.availableCapabilities} contains - * MANUAL_SENSOR. - * * MOTION_TRACKING will be supported if {@link CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES android.request.availableCapabilities} contains - * MOTION_TRACKING.

        + *

        All intents are supported by all devices, except that:

        + *
          + *
        • ZERO_SHUTTER_LAG will be supported if {@link CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES android.request.availableCapabilities} contains + * PRIVATE_REPROCESSING or YUV_REPROCESSING.
        • + *
        • MANUAL will be supported if {@link CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES android.request.availableCapabilities} contains + * MANUAL_SENSOR.
        • + *
        • MOTION_TRACKING will be supported if {@link CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES android.request.availableCapabilities} contains + * MOTION_TRACKING.
        • + *
        *

        Possible values:

        *
          *
        • {@link #CONTROL_CAPTURE_INTENT_CUSTOM CUSTOM}
        • @@ -2929,7 +2931,7 @@ public class CaptureResult extends CameraMetadata> { * and keep jpeg and thumbnail image data unrotated. *
        • Rotate the jpeg and thumbnail image data and not set * {@link android.media.ExifInterface#TAG_ORIENTATION EXIF orientation flag}. In this - * case, LIMITED or FULL hardware level devices will report rotated thumnail size in + * case, LIMITED or FULL hardware level devices will report rotated thumbnail size in * capture result, so the width and height will be interchanged if 90 or 270 degree * orientation is requested. LEGACY device will always report unrotated thumbnail * size.
        • @@ -3149,7 +3151,7 @@ public class CaptureResult extends CameraMetadata> { *

          When the state is STATIONARY, the lens parameters are not changing. This could be * either because the parameters are all fixed, or because the lens has had enough * time to reach the most recently-requested values. - * If all these lens parameters are not changable for a camera device, as listed below:

          + * If all these lens parameters are not changeable for a camera device, as listed below:

          *
            *
          • Fixed focus ({@link CameraCharacteristics#LENS_INFO_MINIMUM_FOCUS_DISTANCE android.lens.info.minimumFocusDistance} == 0), which means * {@link CaptureRequest#LENS_FOCUS_DISTANCE android.lens.focusDistance} parameter will always be 0.
          • @@ -4009,7 +4011,7 @@ public class CaptureResult extends CameraMetadata> { * noise model used here is:

            *

            N(x) = sqrt(Sx + O)

            *

            Where x represents the recorded signal of a CFA channel normalized to - * the range [0, 1], and S and O are the noise model coeffiecients for + * the range [0, 1], and S and O are the noise model coefficients for * that channel.

            *

            A more detailed description of the noise model can be found in the * Adobe DNG specification for the NoiseProfile tag.

            @@ -4054,7 +4056,7 @@ public class CaptureResult extends CameraMetadata> { *
          • 1.20 <= R >= 1.03 will require some software * correction to avoid demosaic errors (3-20% divergence).
          • *
          • R > 1.20 will require strong software correction to produce - * a usuable image (>20% divergence).
          • + * a usable image (>20% divergence). *
          *

          Starting from Android Q, this key will not be present for a MONOCHROME camera, even if * the camera device has RAW capability.

          @@ -4274,7 +4276,7 @@ public class CaptureResult extends CameraMetadata> { /** *

          Whether RAW images requested have their bayer pattern as described by * {@link CameraCharacteristics#SENSOR_INFO_BINNING_FACTOR android.sensor.info.binningFactor}.

          - *

          This key will only be present in devices advertisting the + *

          This key will only be present in devices advertising the * {@link android.hardware.camera2.CameraMetadata#REQUEST_AVAILABLE_CAPABILITIES_ULTRA_HIGH_RESOLUTION_SENSOR } * capability which also advertise REMOSAIC_REPROCESSING capability. On all other devices * RAW targets will have a regular bayer pattern.

          @@ -5128,9 +5130,11 @@ public class CaptureResult extends CameraMetadata> { /** *

          Tonemapping curve to use when {@link CaptureRequest#TONEMAP_MODE android.tonemap.mode} is * GAMMA_VALUE

          - *

          The tonemap curve will be defined the following formula: - * * OUT = pow(IN, 1.0 / gamma) - * where IN and OUT is the input pixel value scaled to range [0.0, 1.0], + *

          The tonemap curve will be defined the following formula:

          + *
            + *
          • OUT = pow(IN, 1.0 / gamma)
          • + *
          + *

          where IN and OUT is the input pixel value scaled to range [0.0, 1.0], * pow is the power function and gamma is the gamma value specified by this * key.

          *

          The same curve will be applied to all color channels. The camera device diff --git a/core/java/android/hardware/camera2/params/DynamicRangeProfiles.java b/core/java/android/hardware/camera2/params/DynamicRangeProfiles.java index 14ed689af26f..34c83366e42c 100644 --- a/core/java/android/hardware/camera2/params/DynamicRangeProfiles.java +++ b/core/java/android/hardware/camera2/params/DynamicRangeProfiles.java @@ -277,7 +277,7 @@ public final class DynamicRangeProfiles { * profile.

          * * @return non-modifiable set of dynamic range profiles - * @throws IllegalArgumentException - If the profile argument is not + * @throws IllegalArgumentException If the profile argument is not * within the list returned by * getSupportedProfiles() * @@ -303,7 +303,7 @@ public final class DynamicRangeProfiles { * * @return true if the given profile is not suitable for latency sensitive use cases, false * otherwise - * @throws IllegalArgumentException - If the profile argument is not + * @throws IllegalArgumentException If the profile argument is not * within the list returned by * getSupportedProfiles() * -- cgit v1.2.3-59-g8ed1b