spatializer: integrate pose controller
Implement head tracking functions in Spatializer
class based on the SpatializerPoseController class.
Add new APIs to ISpatializer interface to:
- set head pose sensor
- set screen pose sensor
- set screen orientation
Add new APIs to INativeSpatializerCallback to:
- notify new head to stage pose
- notify new actual headtracking mode
Bug: 188502620
Test: manual test with mock spatializer
Change-Id: I4584df055cd91bc124d081861baa2fe83df69fa5
diff --git a/services/audiopolicy/service/AudioPolicyInterfaceImpl.cpp b/services/audiopolicy/service/AudioPolicyInterfaceImpl.cpp
index dd91792..4bd1260 100644
--- a/services/audiopolicy/service/AudioPolicyInterfaceImpl.cpp
+++ b/services/audiopolicy/service/AudioPolicyInterfaceImpl.cpp
@@ -2223,7 +2223,9 @@
const sp<media::INativeSpatializerCallback>& callback,
media::GetSpatializerResponse* _aidl_return) {
_aidl_return->spatializer = nullptr;
- LOG_ALWAYS_FATAL_IF(callback == nullptr);
+ if (callback == nullptr) {
+ return binderStatusFromStatusT(BAD_VALUE);
+ }
if (mSpatializer != nullptr) {
RETURN_IF_BINDER_ERROR(
binderStatusFromStatusT(mSpatializer->registerCallback(callback)));