VtsHalLoudnessEnhancerTargetTest: Reset signal history during gain test
The Loudness Enhancer carries signal state that should
be preserved during gain changes to prevent clicking.
Flag: EXEMPT bugfix
Test: atest VtsHalLoudnessEnhancerTargetTest
Bug: 399924660
Bug: 400512386
Change-Id: I3aa763cfe15386a05279fa0ee5b9f253e8917d1e
diff --git a/audio/aidl/vts/VtsHalLoudnessEnhancerTargetTest.cpp b/audio/aidl/vts/VtsHalLoudnessEnhancerTargetTest.cpp
index ace0597..255d2f0 100644
--- a/audio/aidl/vts/VtsHalLoudnessEnhancerTargetTest.cpp
+++ b/audio/aidl/vts/VtsHalLoudnessEnhancerTargetTest.cpp
@@ -95,6 +95,8 @@
EXPECT_STATUS(expected, mEffect->setParameter(param)) << param.toString();
}
+ void reset() { EXPECT_STATUS(EX_NONE, mEffect->command(CommandId::RESET)); }
+
void validateParameters(int gain) {
// get parameter
LoudnessEnhancer::Id leId;
@@ -218,6 +220,8 @@
binder_exception_t expected;
expected = isGainValid(kZeroGain);
ASSERT_EQ(expected, EX_NONE);
+ // reset state to prevent prior signal history from affecting trial run.
+ ASSERT_NO_FATAL_FAILURE(reset());
setParameters(kZeroGain, expected);
ASSERT_NO_FATAL_FAILURE(processAndWriteToOutput());
baseOutput = mOutputBuffer;
@@ -229,6 +233,8 @@
if (expected != EX_NONE) {
GTEST_SKIP() << "Gains not supported.";
}
+ // reset state to prevent prior signal history from affecting trial run.
+ ASSERT_NO_FATAL_FAILURE(reset());
setParameters(gain, expected);
ASSERT_NO_FATAL_FAILURE(processAndWriteToOutput());