Merge "SpatializerHelper: report head tracking disabled" into tm-dev
diff --git a/services/core/java/com/android/server/audio/SpatializerHelper.java b/services/core/java/com/android/server/audio/SpatializerHelper.java
index 8b8577c..c61bad4 100644
--- a/services/core/java/com/android/server/audio/SpatializerHelper.java
+++ b/services/core/java/com/android/server/audio/SpatializerHelper.java
@@ -243,6 +243,9 @@
}
mActualHeadTrackingMode =
headTrackingModeTypeToSpatializerInt(spat.getActualHeadTrackingMode());
+ } else {
+ mDesiredHeadTrackingModeWhenEnabled = Spatializer.HEAD_TRACKING_MODE_UNSUPPORTED;
+ mDesiredHeadTrackingMode = Spatializer.HEAD_TRACKING_MODE_UNSUPPORTED;
}
byte[] spatModes = spat.getSupportedModes();
@@ -1048,6 +1051,10 @@
}
synchronized void setHeadTrackerEnabled(boolean enabled, @NonNull AudioDeviceAttributes ada) {
+ if (!mIsHeadTrackingSupported) {
+ Log.v(TAG, "no headtracking support, ignoring setHeadTrackerEnabled to " + enabled
+ + " for " + ada);
+ }
final int deviceType = ada.getType();
final boolean wireless = isWireless(deviceType);
@@ -1075,6 +1082,10 @@
}
synchronized boolean hasHeadTracker(@NonNull AudioDeviceAttributes ada) {
+ if (!mIsHeadTrackingSupported) {
+ Log.v(TAG, "no headtracking support, hasHeadTracker always false for " + ada);
+ return false;
+ }
final int deviceType = ada.getType();
final boolean wireless = isWireless(deviceType);
@@ -1094,6 +1105,10 @@
* @return true if the head tracker is enabled, false otherwise or if device not found
*/
synchronized boolean setHasHeadTracker(@NonNull AudioDeviceAttributes ada) {
+ if (!mIsHeadTrackingSupported) {
+ Log.v(TAG, "no headtracking support, setHasHeadTracker always false for " + ada);
+ return false;
+ }
final int deviceType = ada.getType();
final boolean wireless = isWireless(deviceType);
@@ -1113,6 +1128,10 @@
}
synchronized boolean isHeadTrackerEnabled(@NonNull AudioDeviceAttributes ada) {
+ if (!mIsHeadTrackingSupported) {
+ Log.v(TAG, "no headtracking support, isHeadTrackerEnabled always false for " + ada);
+ return false;
+ }
final int deviceType = ada.getType();
final boolean wireless = isWireless(deviceType);