diff options
author | Mikhail Naganov <mnaganov@google.com> | 2022-05-04 22:13:12 +0000 |
---|---|---|
committer | Mikhail Naganov <mnaganov@google.com> | 2022-05-05 16:33:12 +0000 |
commit | abc4ffe565f277a3350f8bfe045ec439f00558de (patch) | |
tree | 08dbaacd23723539985967f0b7a2f60dbd0bc297 /audio | |
parent | 1dd0d22f3a0b76a12409853a3d6689f8da813a7a (diff) |
audio VTS: Fix handling of ULTRASOUND sources
When opening a stream on an ultrasound input
(AUDIO_INPUT_FLAG_ULTRASOUND), the source type
AUDIO_SOURCE_ULTRASOUND must be used.
Bug: 231275185
Test: atest VtsHalAudioV7_0TargetTest
Test: atest VtsHalAudioV7_1TargetTest
Change-Id: Ib1fb5b8218eb0c52edf31789fa937c0a8b6c5082
Merged-In: Ib1fb5b8218eb0c52edf31789fa937c0a8b6c5082
(cherry picked from commit 1ce9d5488ab1ebb885d49f9b15eecedf67be5e09)
Diffstat (limited to 'audio')
-rw-r--r-- | audio/core/all-versions/vts/functional/7.0/AudioPrimaryHidlHalTest.cpp | 2 | ||||
-rw-r--r-- | audio/core/all-versions/vts/functional/AudioPrimaryHidlHalTest.h | 13 |
2 files changed, 11 insertions, 4 deletions
diff --git a/audio/core/all-versions/vts/functional/7.0/AudioPrimaryHidlHalTest.cpp b/audio/core/all-versions/vts/functional/7.0/AudioPrimaryHidlHalTest.cpp index f25c391ba9..dfc238623c 100644 --- a/audio/core/all-versions/vts/functional/7.0/AudioPrimaryHidlHalTest.cpp +++ b/audio/core/all-versions/vts/functional/7.0/AudioPrimaryHidlHalTest.cpp @@ -715,7 +715,7 @@ class PcmOnlyConfigInputStreamTest : public InputStreamTest { sink.base.channelMask.value(getConfig().base.channelMask); sink.ext.mix({}); sink.ext.mix().ioHandle = helper.getIoHandle(); - sink.ext.mix().useCase.source(toString(xsd::AudioSource::AUDIO_SOURCE_MIC)); + sink.ext.mix().useCase.source(initMetadata.tracks[0].source); EXPECT_OK(getDevice()->createAudioPatch(hidl_vec<AudioPortConfig>{source}, hidl_vec<AudioPortConfig>{sink}, returnIn(res, mPatchHandle))); diff --git a/audio/core/all-versions/vts/functional/AudioPrimaryHidlHalTest.h b/audio/core/all-versions/vts/functional/AudioPrimaryHidlHalTest.h index 38d6eff7d0..38e9e5f467 100644 --- a/audio/core/all-versions/vts/functional/AudioPrimaryHidlHalTest.h +++ b/audio/core/all-versions/vts/functional/AudioPrimaryHidlHalTest.h @@ -1239,23 +1239,30 @@ class InputStreamTest : public OpenStreamTest<::android::hardware::audio::CORE_TYPES_CPP_VERSION::IStreamIn> { void SetUp() override { ASSERT_NO_FATAL_FAILURE(OpenStreamTest::SetUp()); // setup base + auto flags = getInputFlags(); #if MAJOR_VERSION <= 6 address.device = AudioDevice::IN_DEFAULT; #elif MAJOR_VERSION >= 7 auto maybeSourceAddress = getCachedPolicyConfig().getSourceDeviceForMixPort( getDeviceName(), getMixPortName()); + auto& metadata = initMetadata.tracks[0]; if (maybeSourceAddress.has_value() && !xsd::isTelephonyDevice(maybeSourceAddress.value().deviceType)) { address = maybeSourceAddress.value(); - auto& metadata = initMetadata.tracks[0]; metadata.source = toString(xsd::AudioSource::AUDIO_SOURCE_UNPROCESSED); metadata.channelMask = getConfig().base.channelMask; } else { address.deviceType = toString(xsd::AudioDevice::AUDIO_DEVICE_IN_DEFAULT); } -#endif +#if MAJOR_VERSION == 7 && MINOR_VERSION >= 1 + auto flagsIt = std::find(flags.begin(), flags.end(), + toString(xsd::AudioInOutFlag::AUDIO_INPUT_FLAG_ULTRASOUND)); + if (flagsIt != flags.end()) { + metadata.source = toString(xsd::AudioSource::AUDIO_SOURCE_ULTRASOUND); + } +#endif // 7.1 +#endif // MAJOR_VERSION >= 7 const AudioConfig& config = getConfig(); - auto flags = getInputFlags(); testOpen( [&](AudioIoHandle handle, AudioConfig config, auto cb) { return getDevice()->openInputStream(handle, address, config, flags, |