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

Commit 0fdc9358 authored by Shuzhen Wang's avatar Shuzhen Wang
Browse files

Camera: Clarify multi-camera RAW and FOV behaviors

- RAW capability can exist for multi-camera even if physical cameras are
of different sizes/capabilities.
- FOV for all processes streams must be the same regardless of logical
or physical streams.

Test: Build and read docs
Bug: 118906351
Bug: 126220135
Change-Id: I14ab4844630a048e66a42ec3a776c87830565e49
parent 3ba6ace8
Loading
Loading
Loading
Loading
+18 −0
Original line number Diff line number Diff line
@@ -906,6 +906,24 @@ public abstract class CameraMetadata<TKey> {
     * <li>{@link CameraCharacteristics#LENS_POSE_REFERENCE android.lens.poseReference}</li>
     * <li>{@link CameraCharacteristics#LENS_DISTORTION android.lens.distortion}</li>
     * </ul>
     * <p>The field of view of all non-RAW physical streams must be the same or as close as
     * possible to that of non-RAW logical streams. If the requested FOV is outside of the
     * range supported by the physical camera, the physical stream for that physical camera
     * will use either the maximum or minimum scaler crop region, depending on which one is
     * closer to the requested FOV. For example, for a logical camera with wide-tele lens
     * configuration where the wide lens is the default, if the logical camera's crop region
     * is set to maximum, the physical stream for the tele lens will be configured to its
     * maximum crop region. On the other hand, if the logical camera has a normal-wide lens
     * configuration where the normal lens is the default, when the logical camera's crop
     * region is set to maximum, the FOV of the logical streams will be that of the normal
     * lens. The FOV of the physical streams for the wide 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>Even if the underlying physical cameras have different RAW characteristics (such as
     * size or CFA pattern), a logical camera can still advertise RAW capability. In this
     * case, when the application configures a RAW stream, the camera device will make sure
     * the active physical camera will remain active to ensure consistent RAW output
     * behavior, and not switch to other physical cameras.</p>
     * <p>To maintain backward compatibility, the capture request and result metadata tags
     * required for basic camera functionalities will be solely based on the
     * logical camera capabiltity. Other request and result metadata tags, on the other