Camera: document multiResolution raw behavior

Document that mutiResolution RAW can be supported for a logical camera
without RAW capability.

Test: Build
Bug: 269221911
Change-Id: I24269dd63c6f354a53c39de513a140907a0e41d2
Merged-In: I24269dd63c6f354a53c39de513a140907a0e41d2
This commit is contained in:
Shuzhen Wang
2023-02-15 17:01:24 -08:00
parent a62ebeca21
commit d376e7f88e
2 changed files with 21 additions and 20 deletions

View File

@@ -3513,7 +3513,7 @@ public final class CameraCharacteristics extends CameraMetadata<CameraCharacteri
* <p>An array of mandatory stream combinations which are applicable when device support the
* 10-bit output capability
* {@link android.hardware.camera2.CameraCharacteristics#REQUEST_AVAILABLE_CAPABILITIES_DYNAMIC_RANGE_TEN_BIT }
* This is an app-readable conversion of the maximum resolution mandatory stream combination
* This is an app-readable conversion of the 10 bit output mandatory stream combination
* {@link android.hardware.camera2.CameraDevice#createCaptureSession tables}.</p>
* <p>The array of
* {@link android.hardware.camera2.params.MandatoryStreamCombination combinations} is
@@ -3538,8 +3538,8 @@ public final class CameraCharacteristics extends CameraMetadata<CameraCharacteri
/**
* <p>An array of mandatory stream combinations which are applicable when device lists
* {@code PREVIEW_STABILIZATION} in {@link CameraCharacteristics#CONTROL_AVAILABLE_VIDEO_STABILIZATION_MODES android.control.availableVideoStabilizationModes}.
* This is an app-readable conversion of the maximum resolution mandatory stream combination
* {@link android.hardware.camera2.CameraDevice#createCaptureSession tables}.</p>
* This is an app-readable conversion of the preview stabilization mandatory stream
* combination {@link android.hardware.camera2.CameraDevice#createCaptureSession tables}.</p>
* <p>The array of
* {@link android.hardware.camera2.params.MandatoryStreamCombination combinations} is
* generated according to the documented

View File

@@ -1000,24 +1000,25 @@ public abstract class CameraMetadata<TKey> {
* camera's crop region is set to maximum size, the FOV of the physical streams for the
* ultrawide lens will be the same as the logical stream, by making the crop region
* smaller than its active array size to compensate for the smaller focal length.</p>
* <p>There are two ways for the application to capture RAW images from a logical camera
* with RAW capability:</p>
* <p>For a logical camera, typically the underlying physical cameras have different RAW
* capabilities (such as resolution or CFA pattern). There are two ways for the
* application to capture RAW images from the logical camera:</p>
* <ul>
* <li>Because the underlying physical cameras may have different RAW capabilities (such
* as resolution or CFA pattern), to maintain backward compatibility, when a RAW stream
* is configured, the camera device makes sure the default active physical camera remains
* active and does not switch to other physical cameras. (One exception is that, if the
* logical camera consists of identical image sensors and advertises multiple focalLength
* due to different lenses, the camera device may generate RAW images from different
* physical cameras based on the focalLength being set by the application.) This
* backward-compatible approach usually results in loss of optical zoom, to telephoto
* lens or to ultrawide lens.</li>
* <li>Alternatively, to take advantage of the full zoomRatio range of the logical camera,
* the application should use {@link android.hardware.camera2.MultiResolutionImageReader }
* to capture RAW images from the currently active physical camera. Because different
* physical camera may have different RAW characteristics, the application needs to use
* the characteristics and result metadata of the active physical camera for the
* relevant RAW metadata.</li>
* <li>If the logical camera has RAW capability, the application can create and use RAW
* streams in the same way as before. In case a RAW stream is configured, to maintain
* backward compatibility, the camera device makes sure the default active physical
* camera remains active and does not switch to other physical cameras. (One exception
* is that, if the logical camera consists of identical image sensors and advertises
* multiple focalLength due to different lenses, the camera device may generate RAW
* images from different physical cameras based on the focalLength being set by the
* application.) This backward-compatible approach usually results in loss of optical
* zoom, to telephoto lens or to ultrawide lens.</li>
* <li>Alternatively, if supported by the device,
* {@link android.hardware.camera2.MultiResolutionImageReader }
* can be used to capture RAW images from one of the underlying physical cameras (
* depending on current zoom level). Because different physical cameras may have
* different RAW characteristics, the application needs to use the characteristics
* and result metadata of the active physical camera for the relevant RAW metadata.</li>
* </ul>
* <p>The capture request and result metadata tags required for backward compatible camera
* functionalities will be solely based on the logical camera capability. On the other