Summary
After granting android.permission.FACE_TRACKING, the XR_ANDROID_face_tracking subsystem reports as available but returns all-zero blendshape values. Over a 1.5-second sampling window, 0 out of 87 frames contained any blendshape value above 0.001.
What We Observe
XRFaceTrackingFeature reports the subsystem as available
- All 10 blendshape weights we read (brow raiser L/R, lip corner puller L/R, cheek puff L/R, eyes closed L/R, lip pucker L/R) return 0.0 every frame
- The user has previously calibrated face tracking via Settings > Avatars > Calibrate on the headset
- The permission
android.permission.FACE_TRACKING is granted (confirmed via dumpsys package)
Questions
- Does face calibration (Settings > Avatars > Calibrate) persist across app launches and headset reboots? We calibrated once and expected it to persist, but subsequent sessions return zeros.
- Is there a way to trigger face calibration from within the app, similar to how eye calibration can be launched via intent (
com.samsung.fitting.eyetracking.calibration)?
- Is there a warm-up period or initialization sequence required before blendshape data starts flowing? Our 1.5-second warm-up window may not be long enough.
- Does the face tracking subsystem require the headset to be in a specific mode (e.g., passthrough enabled) to return data?
Use Case
We are building a clinical neurologic exam (SDNE) that measures facial asymmetry — comparing left vs. right blendshape peaks during prompted expressions (raise eyebrows, smile, puff cheeks). This is a standard component of neurologic assessment (facial nerve CN VII evaluation).
Environment
- Device: Samsung Galaxy XR (SM_I610)
- OS: Android XR
- Unity: 6000.3.6f1
- OpenXR runtime with
XR_ANDROID_face_tracking
- Permission granted:
android.permission.FACE_TRACKING
- Blendshapes accessed via
XRFaceTrackingFeature / OpenXR face tracking extension
Summary
After granting
android.permission.FACE_TRACKING, theXR_ANDROID_face_trackingsubsystem reports as available but returns all-zero blendshape values. Over a 1.5-second sampling window, 0 out of 87 frames contained any blendshape value above 0.001.What We Observe
XRFaceTrackingFeaturereports the subsystem as availableandroid.permission.FACE_TRACKINGis granted (confirmed viadumpsys package)Questions
com.samsung.fitting.eyetracking.calibration)?Use Case
We are building a clinical neurologic exam (SDNE) that measures facial asymmetry — comparing left vs. right blendshape peaks during prompted expressions (raise eyebrows, smile, puff cheeks). This is a standard component of neurologic assessment (facial nerve CN VII evaluation).
Environment
XR_ANDROID_face_trackingandroid.permission.FACE_TRACKINGXRFaceTrackingFeature/ OpenXR face tracking extension