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

Commit 91ece572 authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Revert "APM: apply volumes when abs volume stream changes"" into main

parents a68d408f 7af15130
Loading
Loading
Loading
Loading
+8 −15
Original line number Diff line number Diff line
@@ -3573,8 +3573,12 @@ status_t AudioPolicyManager::setDeviceAbsoluteVolumeEnabled(audio_devices_t devi
    ALOGI("%s: deviceType 0x%X, enabled %d, streamToDriveAbs %d", __func__, deviceType, enabled,
          streamToDriveAbs);

    if (!enabled) {
        mAbsoluteVolumeDrivingStreams.erase(deviceType);
        return NO_ERROR;
    }

    audio_attributes_t attributesToDriveAbs = mEngine->getAttributesForStreamType(streamToDriveAbs);
    if (enabled) {
    if (attributesToDriveAbs == AUDIO_ATTRIBUTES_INITIALIZER) {
        ALOGW("%s: no attributes for stream %s, bailing out", __func__,
              toString(streamToDriveAbs).c_str());
@@ -3582,17 +3586,6 @@ status_t AudioPolicyManager::setDeviceAbsoluteVolumeEnabled(audio_devices_t devi
    }

    mAbsoluteVolumeDrivingStreams[deviceType] = attributesToDriveAbs;
    } else {
        mAbsoluteVolumeDrivingStreams.erase(deviceType);
    }

    // apply the stream volumes regarding the new absolute mode to all the outputs
    for (size_t i = 0; i < mOutputs.size(); i++) {
        sp<SwAudioOutputDescriptor> desc = mOutputs.valueAt(i);
        ALOGV("%s: apply stream volumes for portId %d", __func__, desc->getId());
        applyStreamVolumes(desc, {deviceType}, static_cast<int>(desc->latency()) * 2);
    }

    return NO_ERROR;
}