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

Commit 79d1410c authored by Eric Laurent's avatar Eric Laurent Committed by Automerger Merge Worker
Browse files

Merge "Audio Policy Engine: remove recurrent warning in...

Merge "Audio Policy Engine: remove recurrent warning in getDevicesForStrategyInt()" into main am: e77867fc

Original change: https://android-review.googlesource.com/c/platform/frameworks/av/+/3304397



Change-Id: I8b65c2f3416fee5e2752b2bba8a87e1e493edead
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 59d9e705 e77867fc
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -92,6 +92,10 @@ public:

    bool isDefault() const;

    bool isPatchStrategy() const {
        return getVolumeGroupForStreamType(AUDIO_STREAM_PATCH) != VOLUME_GROUP_NONE;
    }

    void dump(String8 *dst, int spaces = 0) const;

private:
+9 −0
Original line number Diff line number Diff line
@@ -311,6 +311,9 @@ StrategyVector EngineBase::getOrderedProductStrategies() const
    }
    StrategyVector orderedStrategies;
    for (const auto &iter : strategies) {
        if (iter.second->isPatchStrategy()) {
            continue;
        }
        orderedStrategies.push_back(iter.second->getId());
    }
    return orderedStrategies;
@@ -742,6 +745,9 @@ void EngineBase::initializeDeviceSelectionCache() {
    auto defaultDevices = DeviceVector(getApmObserver()->getDefaultOutputDevice());
    for (const auto &iter : getProductStrategies()) {
        const auto &strategy = iter.second;
        if (strategy->isPatchStrategy()) {
            continue;
        }
        mDevicesForStrategies[strategy->getId()] = defaultDevices;
        setStrategyDevices(strategy, defaultDevices);
    }
@@ -750,6 +756,9 @@ void EngineBase::initializeDeviceSelectionCache() {
void EngineBase::updateDeviceSelectionCache() {
    for (const auto &iter : getProductStrategies()) {
        const auto& strategy = iter.second;
        if (strategy->isPatchStrategy()) {
            continue;
        }
        auto devices = getDevicesForProductStrategy(strategy->getId());
        mDevicesForStrategies[strategy->getId()] = devices;
        setStrategyDevices(strategy, devices);
+5 −0
Original line number Diff line number Diff line
@@ -3496,6 +3496,11 @@ status_t AudioPolicyManager::setVolumeIndexForAttributes(const audio_attributes_
    }
    ALOGV("%s: group %d matching with %s index %d",
            __FUNCTION__, group, toString(attributes).c_str(), index);
    if (mEngine->getStreamTypeForAttributes(attributes) == AUDIO_STREAM_PATCH) {
        ALOGV("%s: cannot change volume for PATCH stream, attrs: %s",
                __FUNCTION__, toString(attributes).c_str());
        return NO_ERROR;
    }
    status_t status = NO_ERROR;
    IVolumeCurves &curves = getVolumeCurves(attributes);
    VolumeSource vs = toVolumeSource(group);