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

Commit efa56009 authored by Phil Burk's avatar Phil Burk
Browse files

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
parent eb1c0658
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -159,6 +159,9 @@ aaudio_result_t AudioStreamRecord::open(const AudioStreamBuilder& builder)
        actualPerformanceMode = AAUDIO_PERFORMANCE_MODE_LOW_LATENCY;
    }
    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,
             "AudioStreamRecord::open() flags changed from 0x%08X to 0x%08X",
+3 −0
Original line number Diff line number Diff line
@@ -183,6 +183,9 @@ aaudio_result_t AudioStreamTrack::open(const AudioStreamBuilder& builder)
        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",