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

Commit cbe7e3e7 authored by Shunkai Yao's avatar Shunkai Yao Committed by Gerrit Code Review
Browse files

Merge "AIDL libAudioHal: Remove unimplemented code in effect AIDL conversion"

parents c4ce4174 3ecc3eb5
Loading
Loading
Loading
Loading
+3 −17
Original line number Diff line number Diff line
@@ -136,29 +136,15 @@ status_t EffectConversionHelperAidl::handleGetParameter(uint32_t cmdSize, const
    return ret;
}

status_t EffectConversionHelperAidl::handleSetConfig(uint32_t cmdSize, const void* pCmdData,
status_t EffectConversionHelperAidl::handleSetConfig(uint32_t cmdSize,
                                                     const void* pCmdData __unused,
                                                     uint32_t* replySize, void* pReplyData) {
    if (!replySize || *replySize != sizeof(int) || !pReplyData ||
        cmdSize != sizeof(effect_config_t)) {
        return BAD_VALUE;
    }

    return *static_cast<int32_t*>(pReplyData) = OK;
    const auto& legacyConfig = static_cast<const effect_config_t*>(pCmdData);
    // already open, apply latest settings
    Parameter::Common common;
    common.input.base =
            VALUE_OR_RETURN_STATUS(::aidl::android::legacy2aidl_buffer_config_t_AudioConfigBase(
                    legacyConfig->inputCfg, true /* isInput */));
    common.output.base =
            VALUE_OR_RETURN_STATUS(::aidl::android::legacy2aidl_buffer_config_t_AudioConfigBase(
                    legacyConfig->outputCfg, false /* isInput */));
    common.session = mSessionId;
    common.ioHandle = mIoId;
    // TODO: add access mode support
    RETURN_STATUS_IF_ERROR(statusTFromBinderStatus(
            mEffect->setParameter(Parameter::make<Parameter::common>(common))));
    mCommon = common;
    // TODO: need to implement setConfig with setParameter(common)
    return *static_cast<int32_t*>(pReplyData) = OK;
}

+1 −19
Original line number Diff line number Diff line
@@ -69,25 +69,7 @@ status_t AidlConversionEq::setParameter(EffectParamReader& param) {
            break;
        }
        case EQ_PARAM_PROPERTIES: {
            if (value >= 0) {
                aidlParam = MAKE_SPECIFIC_PARAMETER(Equalizer, equalizer, preset, (int)value);
            } else {
                std::vector<Equalizer::BandLevel> bandLevels;
                uint16_t numBands;
                if (OK != param.readFromValue(&numBands)) {
                    ALOGE("%s invalid bandLevel param %s", __func__, param.toString().c_str());
                    return BAD_VALUE;
                }
                for (int i = 0; i < numBands; i++) {
                    uint16_t level;
                    if (OK != param.readFromValue(&level)) {
                        ALOGE("%s invalid property param %s", __func__, param.toString().c_str());
                        return BAD_VALUE;
                    }
                    bandLevels.push_back({.index = i, .levelMb = level});
                }
                aidlParam = MAKE_SPECIFIC_PARAMETER(Equalizer, equalizer, bandLevels, bandLevels);
            }
            // TODO: handle properties setting
            break;
        }
        default: {