From 759c9cb28be014ddce8785e9c81bf3610eb273ab Mon Sep 17 00:00:00 2001 From: Shunkai Yao Date: Mon, 26 Feb 2024 18:24:23 +0000 Subject: [PATCH] Spatializer: return supportedChannelLayout as part of parameter Bug: 307368176 Test: atest EffectsFactoryHalInterfaceTest Change-Id: I1a2a445b5c94cbd02acb4160c7f54d6733bff6aa --- audio/aidl/default/spatializer/SpatializerSw.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/audio/aidl/default/spatializer/SpatializerSw.cpp b/audio/aidl/default/spatializer/SpatializerSw.cpp index ef86ddb2a1..ab4a53e13b 100644 --- a/audio/aidl/default/spatializer/SpatializerSw.cpp +++ b/audio/aidl/default/spatializer/SpatializerSw.cpp @@ -65,8 +65,6 @@ namespace aidl::android::hardware::audio::effect { const std::string SpatializerSw::kEffectName = "SpatializerSw"; const std::vector SpatializerSw::kRanges = { - MAKE_RANGE(Spatializer, supportedChannelLayout, std::vector{}, - std::vector{}), MAKE_RANGE(Spatializer, spatializationLevel, Spatialization::Level::NONE, Spatialization::Level::BED_PLUS_OBJECTS), MAKE_RANGE(Spatializer, spatializationMode, Spatialization::Mode::BINAURAL, @@ -175,11 +173,19 @@ std::optional SpatializerSwContext::getParam(TAG tag) { if (mParamsMap.find(tag) != mParamsMap.end()) { return mParamsMap.at(tag); } + if (tag == Spatializer::supportedChannelLayout) { + return Spatializer::make( + {AudioChannelLayout::make( + AudioChannelLayout::LAYOUT_5POINT1)}); + } return std::nullopt; } template ndk::ScopedAStatus SpatializerSwContext::setParam(TAG tag, Spatializer spatializer) { + RETURN_IF(tag == Spatializer::supportedChannelLayout, EX_ILLEGAL_ARGUMENT, + "supportedChannelLayoutGetOnly"); + mParamsMap[tag] = spatializer; return ndk::ScopedAStatus::ok(); }