Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f9de59ae authored by Eric Laurent's avatar Eric Laurent
Browse files

SpatializerHelper: Fix device compatibility with spatial audio

Do not consider BT SCO devices as compatible with spatial audio.
This is justified because SCO is mono by nature. It also fixes the
problem of having two devices with the same mac address but conflicting
spatial audio settings.

Bug: 242777739
Test: verify head tracking still works after a phone call
Change-Id: I1918f8ec82e1d79416804a6ec47df7181b0d79eb
parent d8ebffe4
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -727,8 +727,11 @@ public class SpatializerHelper {
    }

    private boolean isDeviceCompatibleWithSpatializationModes(@NonNull AudioDeviceAttributes ada) {
        // modeForDevice will be neither transaural or binaural for devices that do not support
        // spatial audio. For instance mono devices like earpiece, speaker safe or sco must
        // not be included.
        final byte modeForDevice = (byte) SPAT_MODE_FOR_DEVICE_TYPE.get(ada.getType(),
                /*default when type not found*/ SpatializationMode.SPATIALIZER_BINAURAL);
                /*default when type not found*/ -1);
        if ((modeForDevice == SpatializationMode.SPATIALIZER_BINAURAL && mBinauralSupported)
                || (modeForDevice == SpatializationMode.SPATIALIZER_TRANSAURAL
                        && mTransauralSupported)) {