Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b59f57a0 authored by Shuzhen Wang's avatar Shuzhen Wang
Browse files

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
parent fb0356f7
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -3660,8 +3660,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 preview stabilization 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
+18 −17
Original line number Diff line number Diff line
@@ -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