aaudio: legacy reports EXCLUSIVE when not
Legacy streams could return EXCLUSIVE from getSharingMode()
if requested by caller. But that is not supported.
To avoid misleading developers, we force it to SHARED mode.
Bug: 63355841
Test: setprop aaudio.mmap_exclusive_policy 2 && write_sine -x -pn
Change-Id: I91c82b63293752c6aa2c4933cd2bfe8c6d41a5d3
diff --git a/media/libaaudio/src/legacy/AudioStreamTrack.cpp b/media/libaaudio/src/legacy/AudioStreamTrack.cpp
index 77f31e2..3c260a5 100644
--- a/media/libaaudio/src/legacy/AudioStreamTrack.cpp
+++ b/media/libaaudio/src/legacy/AudioStreamTrack.cpp
@@ -183,6 +183,9 @@
actualPerformanceMode = AAUDIO_PERFORMANCE_MODE_POWER_SAVING;
}
setPerformanceMode(actualPerformanceMode);
+
+ setSharingMode(AAUDIO_SHARING_MODE_SHARED); // EXCLUSIVE mode not supported in legacy
+
// Log warning if we did not get what we asked for.
ALOGW_IF(actualFlags != flags,
"AudioStreamTrack::open() flags changed from 0x%08X to 0x%08X",