Merge "Camera: Fix typos and bad format in docs" into tm-dev
This commit is contained in:
@@ -1058,7 +1058,7 @@ public final class CameraCharacteristics extends CameraMetadata<CameraCharacteri
|
||||
* must select one unique size from this metadata to use (e.g., preview and recording streams
|
||||
* must have the same size). Otherwise, the high speed capture session creation will fail.</p>
|
||||
* <p>The min and max fps will be multiple times of 30fps.</p>
|
||||
* <p>High speed video streaming extends significant performance pressue to camera hardware,
|
||||
* <p>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 CameraMetadata<CameraCharacteri
|
||||
* <p>Range of boosts for {@link CaptureRequest#CONTROL_POST_RAW_SENSITIVITY_BOOST android.control.postRawSensitivityBoost} supported
|
||||
* by this camera device.</p>
|
||||
* <p>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.</p>
|
||||
* <p>This key will be <code>null</code> 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 CameraMetadata<CameraCharacteri
|
||||
* <p>Maximum flashlight brightness level.</p>
|
||||
* <p>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.</p>
|
||||
* <p><b>Optional</b> - The value for this key may be {@code null} on some devices.</p>
|
||||
@@ -1335,7 +1335,7 @@ public final class CameraCharacteristics extends CameraMetadata<CameraCharacteri
|
||||
|
||||
/**
|
||||
* <p>Default flashlight brightness level to be set via
|
||||
* {android.hardware.camera2.CameraManager#turnOnTorchWithStrengthLevel}.</p>
|
||||
* {@link android.hardware.camera2.CameraManager#turnOnTorchWithStrengthLevel }.</p>
|
||||
* <p>If flash unit is available this will be greater than or equal to 1 and less
|
||||
* or equal to <code>{@link CameraCharacteristics#FLASH_INFO_STRENGTH_MAXIMUM_LEVEL android.flash.info.strengthMaximumLevel}</code>.</p>
|
||||
* <p>Setting flashlight brightness above the default level
|
||||
@@ -1376,7 +1376,7 @@ public final class CameraCharacteristics extends CameraMetadata<CameraCharacteri
|
||||
* camera device.</p>
|
||||
* <p>This list will include at least one non-zero resolution, plus <code>(0,0)</code> for indicating no
|
||||
* thumbnail should be generated.</p>
|
||||
* <p>Below condiditions will be satisfied for this size list:</p>
|
||||
* <p>Below conditions will be satisfied for this size list:</p>
|
||||
* <ul>
|
||||
* <li>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.</li>
|
||||
@@ -1982,7 +1982,7 @@ public final class CameraCharacteristics extends CameraMetadata<CameraCharacteri
|
||||
* the camera device. Using more streams simultaneously may require more hardware and
|
||||
* CPU resources that will consume more power. The image format for an output stream can
|
||||
* be any supported format provided by android.scaler.availableStreamConfigurations.
|
||||
* The formats defined in android.scaler.availableStreamConfigurations can be catergorized
|
||||
* The formats defined in android.scaler.availableStreamConfigurations can be categorized
|
||||
* into the 3 stream types as below:</p>
|
||||
* <ul>
|
||||
* <li>Processed (but stalling): any non-RAW format with a stallDurations > 0.
|
||||
@@ -2324,7 +2324,7 @@ public final class CameraCharacteristics extends CameraMetadata<CameraCharacteri
|
||||
* but clients should be aware and expect delays during their application.
|
||||
* An example usage scenario could look like this:</p>
|
||||
* <ul>
|
||||
* <li>The camera client starts by quering the session parameter key list via
|
||||
* <li>The camera client starts by querying the session parameter key list via
|
||||
* {@link android.hardware.camera2.CameraCharacteristics#getAvailableSessionKeys }.</li>
|
||||
* <li>Before triggering the capture session create sequence, a capture request
|
||||
* must be built via
|
||||
@@ -2379,7 +2379,7 @@ public final class CameraCharacteristics extends CameraMetadata<CameraCharacteri
|
||||
* {@link android.hardware.camera2.CameraCharacteristics#getKeys } that require camera clients
|
||||
* to acquire the {@link android.Manifest.permission#CAMERA } permission before calling
|
||||
* {@link android.hardware.camera2.CameraManager#getCameraCharacteristics }. If the
|
||||
* permission is not held by the camera client, then the values of the repsective properties
|
||||
* permission is not held by the camera client, then the values of the respective properties
|
||||
* will not be present in {@link android.hardware.camera2.CameraCharacteristics }.</p>
|
||||
* <p>This key is available on all devices.</p>
|
||||
* @hide
|
||||
@@ -2759,7 +2759,7 @@ public final class CameraCharacteristics extends CameraMetadata<CameraCharacteri
|
||||
* </table>
|
||||
* <p>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<CameraCharacteri
|
||||
* </table>
|
||||
* <p>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.</p>
|
||||
@@ -3485,14 +3485,16 @@ public final class CameraCharacteristics extends CameraMetadata<CameraCharacteri
|
||||
* to output different resolution images depending on the current active physical camera or
|
||||
* pixel mode. With multi-resolution input streams, the camera device can reprocess images
|
||||
* of different resolutions from different physical cameras or sensor pixel modes.</p>
|
||||
* <p>When set to TRUE:
|
||||
* * For a logical multi-camera, the camera framework derives
|
||||
* <p>When set to TRUE:</p>
|
||||
* <ul>
|
||||
* <li>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.</li>
|
||||
* <li>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}.</p>
|
||||
* {@link CameraCharacteristics#SCALER_MULTI_RESOLUTION_STREAM_CONFIGURATION_MAP android.scaler.multiResolutionStreamConfigurationMap}.</li>
|
||||
* </ul>
|
||||
* <p><b>Optional</b> - The value for this key may be {@code null} on some devices.</p>
|
||||
* <p><b>Limited capability</b> -
|
||||
* 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<CameraCharacteri
|
||||
* capture, video record for encoding the camera output for the purpose of future playback,
|
||||
* and video call for live realtime video conferencing.</p>
|
||||
* <p>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<CameraCharacteri
|
||||
* {@link android.hardware.camera2.CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES_STREAM_USE_CASE }
|
||||
* capability is documented in the camera device
|
||||
* {@link android.hardware.camera2.CameraDevice#createCaptureSession guideline}. The
|
||||
* application is strongly recommended to use one of the guaranteed stream combintations.
|
||||
* application is strongly recommended to use one of the guaranteed stream combinations.
|
||||
* If the application creates a session with a stream combination not in the guaranteed
|
||||
* list, or with mixed DEFAULT and non-DEFAULT use cases within the same session,
|
||||
* the camera device may ignore some stream use cases due to hardware constraints
|
||||
@@ -5209,7 +5211,7 @@ public final class CameraCharacteristics extends CameraMetadata<CameraCharacteri
|
||||
* EXTERIOR_* value.</p>
|
||||
* <p>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:</p>
|
||||
* <ul>
|
||||
* <li>{@link CameraCharacteristics#LENS_POSE_REFERENCE android.lens.poseReference}</li>
|
||||
|
||||
@@ -409,7 +409,7 @@ public abstract class CameraMetadata<TKey> {
|
||||
|
||||
/**
|
||||
* <p>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.</p>
|
||||
* automotive sensor coordinate system, which is at the center of the rear axle.</p>
|
||||
*
|
||||
* @see CameraCharacteristics#LENS_POSE_TRANSLATION
|
||||
* @see CameraCharacteristics#LENS_POSE_REFERENCE
|
||||
@@ -683,7 +683,7 @@ public abstract class CameraMetadata<TKey> {
|
||||
* captured at the same rate as the maximum-size YUV_420_888 resolution is.</p>
|
||||
* <p>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.</p>
|
||||
* <p>In addition, the {@link CameraCharacteristics#SYNC_MAX_LATENCY android.sync.maxLatency} field is guaranted to have a value between 0
|
||||
* <p>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 <code>true</code> so burst capture with these two locks ON yields
|
||||
* consistent image output.</p>
|
||||
@@ -843,7 +843,7 @@ public abstract class CameraMetadata<TKey> {
|
||||
* {@link android.hardware.camera2.params.StreamConfigurationMap#getHighSpeedVideoSizes }.</li>
|
||||
* <li>The FPS ranges are selected from {@link android.hardware.camera2.params.StreamConfigurationMap#getHighSpeedVideoFpsRanges }.</li>
|
||||
* </ul>
|
||||
* <p>When above conditions are NOT satistied,
|
||||
* <p>When above conditions are NOT satisfied,
|
||||
* {@link android.hardware.camera2.CameraDevice#createConstrainedHighSpeedCaptureSession }
|
||||
* will fail.</p>
|
||||
* <p>Switching to a FPS range that has different maximum FPS may trigger some camera device
|
||||
@@ -986,7 +986,7 @@ public abstract class CameraMetadata<TKey> {
|
||||
* 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<TKey> {
|
||||
* when {@link CaptureRequest#SENSOR_PIXEL_MODE android.sensor.pixelMode} is set to
|
||||
* {@link android.hardware.camera2.CameraMetadata#SENSOR_PIXEL_MODE_MAXIMUM_RESOLUTION }),
|
||||
* the <code>RAW_SENSOR</code> stream will have a regular bayer pattern.</p>
|
||||
* <p>This capability requires the camera device to support the following :
|
||||
* * The {@link android.hardware.camera2.params.StreamConfigurationMap } mentioned below
|
||||
* <p>This capability requires the camera device to support the following :</p>
|
||||
* <ul>
|
||||
* <li>The {@link android.hardware.camera2.params.StreamConfigurationMap } mentioned below
|
||||
* refers to the one, described by
|
||||
* <code>{@link CameraCharacteristics#SCALER_STREAM_CONFIGURATION_MAP_MAXIMUM_RESOLUTION android.scaler.streamConfigurationMapMaximumResolution}</code>.
|
||||
* * One input stream is supported, that is, <code>{@link CameraCharacteristics#REQUEST_MAX_NUM_INPUT_STREAMS android.request.maxNumInputStreams} == 1</code>.
|
||||
* * {@link android.graphics.ImageFormat#RAW_SENSOR } is supported as an output/input
|
||||
* <code>{@link CameraCharacteristics#SCALER_STREAM_CONFIGURATION_MAP_MAXIMUM_RESOLUTION android.scaler.streamConfigurationMapMaximumResolution}</code>.</li>
|
||||
* <li>One input stream is supported, that is, <code>{@link CameraCharacteristics#REQUEST_MAX_NUM_INPUT_STREAMS android.request.maxNumInputStreams} == 1</code>.</li>
|
||||
* <li>{@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.</p>
|
||||
* lists of formats returned by {@link android.hardware.camera2.params.StreamConfigurationMap#getInputFormats } and {@link android.hardware.camera2.params.StreamConfigurationMap#getOutputFormats }.</li>
|
||||
* <li>{@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 }.</li>
|
||||
* <li>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)}</li>
|
||||
* <li>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).</li>
|
||||
* <li>No CaptureRequest controls will be applicable when a request has an input target
|
||||
* with {@link android.graphics.ImageFormat#RAW_SENSOR } format.</li>
|
||||
* </ul>
|
||||
*
|
||||
* @see CameraCharacteristics#REQUEST_MAX_NUM_INPUT_STREAMS
|
||||
* @see CameraCharacteristics#SCALER_STREAM_CONFIGURATION_MAP_MAXIMUM_RESOLUTION
|
||||
@@ -1205,16 +1207,18 @@ public abstract class CameraMetadata<TKey> {
|
||||
* {@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:</p>
|
||||
* <ul>
|
||||
* <li>Profile {@link android.hardware.camera2.params.DynamicRangeProfiles#HLG10 }</li>
|
||||
* <li>All mandatory stream combinations for this specific capability as per
|
||||
* documentation {@link android.hardware.camera2.CameraDevice#createCaptureSession }</li>
|
||||
* <li>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 }.</p>
|
||||
* {@link android.hardware.camera2.params.DynamicRangeProfiles#getProfileCaptureRequestConstraints }</li>
|
||||
* <li>Recommended dynamic range profile listed in
|
||||
* {@link android.hardware.camera2.CameraCharacteristics#REQUEST_RECOMMENDED_TEN_BIT_DYNAMIC_RANGE_PROFILE }.</li>
|
||||
* </ul>
|
||||
* @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<TKey> {
|
||||
* {@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:</p>
|
||||
* <ul>
|
||||
* <li>Distinguish high quality YUV captures from a regular YUV stream where
|
||||
* the image quality may not be as good as the JPEG stream, or</li>
|
||||
* <li>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.</p>
|
||||
* to preview, saved images, and saved videos.</li>
|
||||
* </ul>
|
||||
* <p>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</p>
|
||||
* stream use cases:</p>
|
||||
* <ul>
|
||||
* <li>DEFAULT for backward compatibility where the application doesn't set
|
||||
* a stream use case</li>
|
||||
* <li>PREVIEW for live viewfinder and in-app image analysis</li>
|
||||
* <li>STILL_CAPTURE for still photo capture</li>
|
||||
* <li>VIDEO_RECORD for recording video clips</li>
|
||||
* <li>PREVIEW_VIDEO_STILL for one single stream used for viewfinder, video
|
||||
* recording, and still capture.</li>
|
||||
* <li>VIDEO_CALL for long running video calls</li>
|
||||
* </ul>
|
||||
* <p>{@link android.hardware.camera2.CameraCharacteristics#SCALER_AVAILABLE_STREAM_USE_CASES }
|
||||
* lists all of the supported stream use cases.</p>
|
||||
* <p>Refer to {@link android.hardware.camera2.CameraDevice#createCaptureSession } for the
|
||||
@@ -1391,10 +1399,10 @@ public abstract class CameraMetadata<TKey> {
|
||||
* <p>Live stream shown to the user.</p>
|
||||
* <p>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.</p>
|
||||
* <p>No stall if android.control.<em> are set to FAST; may have stall if android.control.</em>
|
||||
* 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.</p>
|
||||
* <p>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.</p>
|
||||
* @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<TKey> {
|
||||
public static final int SCALER_AVAILABLE_STREAM_USE_CASES_PREVIEW_VIDEO_STILL = 0x4;
|
||||
|
||||
/**
|
||||
* <p>Long-running video call optimized for both power efficienty and video quality.</p>
|
||||
* <p>Long-running video call optimized for both power efficiency and video quality.</p>
|
||||
* <p>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<TKey> {
|
||||
* android.control.availableHighSpeedVideoConfigurations.</li>
|
||||
* <li>No processed non-stalling or raw streams are configured.</li>
|
||||
* </ul>
|
||||
* <p>When above conditions are NOT satistied, the controls of this mode and
|
||||
* <p>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} <code>==</code> 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.</p>
|
||||
* <p>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<TKey> {
|
||||
* 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<TKey> {
|
||||
public static final int TONEMAP_MODE_HIGH_QUALITY = 2;
|
||||
|
||||
/**
|
||||
* <p>Use the gamma value specified in {@link CaptureRequest#TONEMAP_GAMMA android.tonemap.gamma} to peform
|
||||
* <p>Use the gamma value specified in {@link CaptureRequest#TONEMAP_GAMMA android.tonemap.gamma} to perform
|
||||
* tonemapping.</p>
|
||||
* <p>All color enhancement and tonemapping must be disabled, except
|
||||
* for applying the tonemapping curve specified by {@link CaptureRequest#TONEMAP_GAMMA android.tonemap.gamma}.</p>
|
||||
@@ -3644,7 +3652,7 @@ public abstract class CameraMetadata<TKey> {
|
||||
|
||||
/**
|
||||
* <p>Use the preset tonemapping curve specified in
|
||||
* {@link CaptureRequest#TONEMAP_PRESET_CURVE android.tonemap.presetCurve} to peform tonemapping.</p>
|
||||
* {@link CaptureRequest#TONEMAP_PRESET_CURVE android.tonemap.presetCurve} to perform tonemapping.</p>
|
||||
* <p>All color enhancement and tonemapping must be disabled, except
|
||||
* for applying the tonemapping curve specified by
|
||||
* {@link CaptureRequest#TONEMAP_PRESET_CURVE android.tonemap.presetCurve}.</p>
|
||||
|
||||
@@ -1767,7 +1767,7 @@ public final class CaptureRequest extends CameraMetadata<CaptureRequest.Key<?>>
|
||||
* 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.</p>
|
||||
* <p>When set to the OFF mode, the camera device's auto-white balance
|
||||
@@ -1917,13 +1917,15 @@ public final class CaptureRequest extends CameraMetadata<CaptureRequest.Key<?>>
|
||||
* strategy.</p>
|
||||
* <p>This control (except for MANUAL) is only effective if
|
||||
* <code>{@link CaptureRequest#CONTROL_MODE android.control.mode} != OFF</code> and any 3A routine is active.</p>
|
||||
* <p>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.</p>
|
||||
* <p>All intents are supported by all devices, except that:</p>
|
||||
* <ul>
|
||||
* <li>ZERO_SHUTTER_LAG will be supported if {@link CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES android.request.availableCapabilities} contains
|
||||
* PRIVATE_REPROCESSING or YUV_REPROCESSING.</li>
|
||||
* <li>MANUAL will be supported if {@link CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES android.request.availableCapabilities} contains
|
||||
* MANUAL_SENSOR.</li>
|
||||
* <li>MOTION_TRACKING will be supported if {@link CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES android.request.availableCapabilities} contains
|
||||
* MOTION_TRACKING.</li>
|
||||
* </ul>
|
||||
* <p><b>Possible values:</b></p>
|
||||
* <ul>
|
||||
* <li>{@link #CONTROL_CAPTURE_INTENT_CUSTOM CUSTOM}</li>
|
||||
@@ -2680,7 +2682,7 @@ public final class CaptureRequest extends CameraMetadata<CaptureRequest.Key<?>>
|
||||
* and keep jpeg and thumbnail image data unrotated.</li>
|
||||
* <li>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.</li>
|
||||
@@ -3806,9 +3808,11 @@ public final class CaptureRequest extends CameraMetadata<CaptureRequest.Key<?>>
|
||||
/**
|
||||
* <p>Tonemapping curve to use when {@link CaptureRequest#TONEMAP_MODE android.tonemap.mode} is
|
||||
* GAMMA_VALUE</p>
|
||||
* <p>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],
|
||||
* <p>The tonemap curve will be defined the following formula:</p>
|
||||
* <ul>
|
||||
* <li>OUT = pow(IN, 1.0 / gamma)</li>
|
||||
* </ul>
|
||||
* <p>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.</p>
|
||||
* <p>The same curve will be applied to all color channels. The camera device
|
||||
|
||||
@@ -1173,7 +1173,7 @@ public class CaptureResult extends CameraMetadata<CaptureResult.Key<?>> {
|
||||
* <td align="center">Any state (excluding LOCKED)</td>
|
||||
* <td align="center">{@link CaptureRequest#CONTROL_AE_PRECAPTURE_TRIGGER android.control.aePrecaptureTrigger} is CANCEL, converged</td>
|
||||
* <td align="center">CONVERGED</td>
|
||||
* <td align="center">Converged after a precapture sequenceis canceled, transient states are skipped by camera device.</td>
|
||||
* <td align="center">Converged after a precapture sequences canceled, transient states are skipped by camera device.</td>
|
||||
* </tr>
|
||||
* <tr>
|
||||
* <td align="center">CONVERGED</td>
|
||||
@@ -1847,7 +1847,7 @@ public class CaptureResult extends CameraMetadata<CaptureResult.Key<?>> {
|
||||
* 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.</p>
|
||||
* <p>When set to the OFF mode, the camera device's auto-white balance
|
||||
@@ -1997,13 +1997,15 @@ public class CaptureResult extends CameraMetadata<CaptureResult.Key<?>> {
|
||||
* strategy.</p>
|
||||
* <p>This control (except for MANUAL) is only effective if
|
||||
* <code>{@link CaptureRequest#CONTROL_MODE android.control.mode} != OFF</code> and any 3A routine is active.</p>
|
||||
* <p>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.</p>
|
||||
* <p>All intents are supported by all devices, except that:</p>
|
||||
* <ul>
|
||||
* <li>ZERO_SHUTTER_LAG will be supported if {@link CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES android.request.availableCapabilities} contains
|
||||
* PRIVATE_REPROCESSING or YUV_REPROCESSING.</li>
|
||||
* <li>MANUAL will be supported if {@link CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES android.request.availableCapabilities} contains
|
||||
* MANUAL_SENSOR.</li>
|
||||
* <li>MOTION_TRACKING will be supported if {@link CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES android.request.availableCapabilities} contains
|
||||
* MOTION_TRACKING.</li>
|
||||
* </ul>
|
||||
* <p><b>Possible values:</b></p>
|
||||
* <ul>
|
||||
* <li>{@link #CONTROL_CAPTURE_INTENT_CUSTOM CUSTOM}</li>
|
||||
@@ -2929,7 +2931,7 @@ public class CaptureResult extends CameraMetadata<CaptureResult.Key<?>> {
|
||||
* and keep jpeg and thumbnail image data unrotated.</li>
|
||||
* <li>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.</li>
|
||||
@@ -3149,7 +3151,7 @@ public class CaptureResult extends CameraMetadata<CaptureResult.Key<?>> {
|
||||
* <p>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:</p>
|
||||
* If all these lens parameters are not changeable for a camera device, as listed below:</p>
|
||||
* <ul>
|
||||
* <li>Fixed focus (<code>{@link CameraCharacteristics#LENS_INFO_MINIMUM_FOCUS_DISTANCE android.lens.info.minimumFocusDistance} == 0</code>), which means
|
||||
* {@link CaptureRequest#LENS_FOCUS_DISTANCE android.lens.focusDistance} parameter will always be 0.</li>
|
||||
@@ -4009,7 +4011,7 @@ public class CaptureResult extends CameraMetadata<CaptureResult.Key<?>> {
|
||||
* noise model used here is:</p>
|
||||
* <p>N(x) = sqrt(Sx + O)</p>
|
||||
* <p>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.</p>
|
||||
* <p>A more detailed description of the noise model can be found in the
|
||||
* Adobe DNG specification for the NoiseProfile tag.</p>
|
||||
@@ -4054,7 +4056,7 @@ public class CaptureResult extends CameraMetadata<CaptureResult.Key<?>> {
|
||||
* <li>1.20 <= R >= 1.03 will require some software
|
||||
* correction to avoid demosaic errors (3-20% divergence).</li>
|
||||
* <li>R > 1.20 will require strong software correction to produce
|
||||
* a usuable image (>20% divergence).</li>
|
||||
* a usable image (>20% divergence).</li>
|
||||
* </ul>
|
||||
* <p>Starting from Android Q, this key will not be present for a MONOCHROME camera, even if
|
||||
* the camera device has RAW capability.</p>
|
||||
@@ -4274,7 +4276,7 @@ public class CaptureResult extends CameraMetadata<CaptureResult.Key<?>> {
|
||||
/**
|
||||
* <p>Whether <code>RAW</code> images requested have their bayer pattern as described by
|
||||
* {@link CameraCharacteristics#SENSOR_INFO_BINNING_FACTOR android.sensor.info.binningFactor}.</p>
|
||||
* <p>This key will only be present in devices advertisting the
|
||||
* <p>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 <code>REMOSAIC_REPROCESSING</code> capability. On all other devices
|
||||
* RAW targets will have a regular bayer pattern.</p>
|
||||
@@ -5128,9 +5130,11 @@ public class CaptureResult extends CameraMetadata<CaptureResult.Key<?>> {
|
||||
/**
|
||||
* <p>Tonemapping curve to use when {@link CaptureRequest#TONEMAP_MODE android.tonemap.mode} is
|
||||
* GAMMA_VALUE</p>
|
||||
* <p>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],
|
||||
* <p>The tonemap curve will be defined the following formula:</p>
|
||||
* <ul>
|
||||
* <li>OUT = pow(IN, 1.0 / gamma)</li>
|
||||
* </ul>
|
||||
* <p>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.</p>
|
||||
* <p>The same curve will be applied to all color channels. The camera device
|
||||
|
||||
@@ -277,7 +277,7 @@ public final class DynamicRangeProfiles {
|
||||
* profile.</p>
|
||||
*
|
||||
* @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()
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user