Project: /_project.yaml Book: /_book.yaml
{% include “_versions.html” %}
In Android {{ androidPVersionNumber }}, camera devices can advertise motion tracking capability{: .external}. Cameras that support this feature do not produce motion tracking data itself, but instead are used by ARCore or an image-stabilization algorithm along with other sensors for scene analysis. To support this feature, devices must support CONTROL_CAPTURE_INTENT_MOTION_TRACKING
{: .external}. If this intent is part of the capture request, the camera must limit the exposure time to a maximum of 20 milliseconds to reduce motion blur.
A reference motion tracking implementation on the HAL side is available as part of the Camera HAL{: .external}.
To enable motion tracking on a camera device, make sure:
The ANDROID_REQUEST_AVAILABLE_CAPABILITIES_MOTION_TRACKING
{: .external} capability is enabled.
The ANDROID_CONTROL_CAPTURE_INTENT_MOTION_TRACKING
{: .external} intent is supported and when included in a capture request limits the camera exposure time to a maximum of 20 milliseconds.
Lens calibration data from the following list is accurately reported in the static information and dynamic metadata fields:
ANDROID_LENS_POSE_ROTATION
{: .external}ANDROID_LENS_POSE_TRANSLATION
{: .external}ANDROID_LENS_INTRINSIC_CALIBRATION
{: .external}ANDROID_LENS_RADIAL_DISTORTION
{: .external}ANDROID_LENS_POSE_REFERENCE
{: .external}Camera devices supporting the motion tracking feature must pass the camera CTS tests.