Revert "audio: Populate MicrophoneInfo with vendor data"
Revert submission 2770886-AidlAudioHalModuleConfig
Reason for revert: Breaks BluetoothInstrumentationTests on main downstream
Reverted changes: /q/submissionid:2770886-AidlAudioHalModuleConfig
Bug: 305291602
Change-Id: I01a4d22056507f9047c4fead21c9a75bfa153a46
diff --git a/audio/aidl/default/Configuration.cpp b/audio/aidl/default/Configuration.cpp
index cf5f066..a20bb54 100644
--- a/audio/aidl/default/Configuration.cpp
+++ b/audio/aidl/default/Configuration.cpp
@@ -41,6 +41,7 @@
using aidl::android::media::audio::common::AudioPortMixExt;
using aidl::android::media::audio::common::AudioProfile;
using aidl::android::media::audio::common::Int;
+using aidl::android::media::audio::common::MicrophoneInfo;
using aidl::android::media::audio::common::PcmType;
using Configuration = aidl::android::hardware::audio::core::Module::Configuration;
@@ -273,6 +274,13 @@
c.portConfigs.insert(c.portConfigs.end(), c.initialConfigs.begin(), c.initialConfigs.end());
+ MicrophoneInfo mic;
+ mic.id = "mic";
+ mic.device = micInDevice.ext.get<AudioPortExt::Tag::device>().device;
+ mic.group = 0;
+ mic.indexInTheGroup = 0;
+ c.microphones = std::vector<MicrophoneInfo>{mic};
+
return c;
}();
return std::make_unique<Configuration>(configuration);
diff --git a/audio/aidl/default/Module.cpp b/audio/aidl/default/Module.cpp
index cad239f..0cda3bd 100644
--- a/audio/aidl/default/Module.cpp
+++ b/audio/aidl/default/Module.cpp
@@ -43,7 +43,6 @@
using aidl::android::hardware::audio::core::sounddose::ISoundDose;
using aidl::android::media::audio::common::AudioChannelLayout;
using aidl::android::media::audio::common::AudioDevice;
-using aidl::android::media::audio::common::AudioDeviceType;
using aidl::android::media::audio::common::AudioFormatDescription;
using aidl::android::media::audio::common::AudioFormatType;
using aidl::android::media::audio::common::AudioInputFlags;
@@ -796,7 +795,7 @@
context.fillDescriptor(&_aidl_return->desc);
std::shared_ptr<StreamIn> stream;
RETURN_STATUS_IF_ERROR(createInputStream(std::move(context), in_args.sinkMetadata,
- getMicrophoneInfos(), &stream));
+ getConfig().microphones, &stream));
StreamWrapper streamWrapper(stream);
if (auto patchIt = mPatches.find(in_args.portConfigId); patchIt != mPatches.end()) {
RETURN_STATUS_IF_ERROR(
@@ -1230,7 +1229,7 @@
}
ndk::ScopedAStatus Module::getMicrophones(std::vector<MicrophoneInfo>* _aidl_return) {
- *_aidl_return = getMicrophoneInfos();
+ *_aidl_return = getConfig().microphones;
LOG(DEBUG) << __func__ << ": returning " << ::android::internal::ToString(*_aidl_return);
return ndk::ScopedAStatus::ok();
}
@@ -1509,29 +1508,6 @@
return ndk::ScopedAStatus::ok();
}
-std::vector<MicrophoneInfo> Module::getMicrophoneInfos() {
- std::vector<MicrophoneInfo> result;
- Configuration& config = getConfig();
- for (const AudioPort& port : config.ports) {
- if (port.ext.getTag() == AudioPortExt::Tag::device) {
- const AudioDeviceType deviceType =
- port.ext.get<AudioPortExt::Tag::device>().device.type.type;
- if (deviceType == AudioDeviceType::IN_MICROPHONE ||
- deviceType == AudioDeviceType::IN_MICROPHONE_BACK) {
- // Placeholder values. Vendor implementations must populate MicrophoneInfo
- // accordingly based on their physical microphone parameters.
- result.push_back(MicrophoneInfo{
- .id = port.name,
- .device = port.ext.get<AudioPortExt::Tag::device>().device,
- .group = 0,
- .indexInTheGroup = 0,
- });
- }
- }
- }
- return result;
-}
-
Module::BtProfileHandles Module::getBtProfileManagerHandles() {
return std::make_tuple(std::weak_ptr<IBluetooth>(), std::weak_ptr<IBluetoothA2dp>(),
std::weak_ptr<IBluetoothLe>());
diff --git a/audio/aidl/default/include/core-impl/Module.h b/audio/aidl/default/include/core-impl/Module.h
index bc5c578..c39aa36 100644
--- a/audio/aidl/default/include/core-impl/Module.h
+++ b/audio/aidl/default/include/core-impl/Module.h
@@ -32,6 +32,7 @@
class Module : public BnModule {
public:
struct Configuration {
+ std::vector<::aidl::android::media::audio::common::MicrophoneInfo> microphones;
std::vector<::aidl::android::media::audio::common::AudioPort> ports;
std::vector<::aidl::android::media::audio::common::AudioPortConfig> portConfigs;
std::vector<::aidl::android::media::audio::common::AudioPortConfig> initialConfigs;
@@ -206,7 +207,6 @@
const ::aidl::android::media::audio::common::AudioPort& audioPort, bool connected);
virtual ndk::ScopedAStatus onMasterMuteChanged(bool mute);
virtual ndk::ScopedAStatus onMasterVolumeChanged(float volume);
- virtual std::vector<::aidl::android::media::audio::common::MicrophoneInfo> getMicrophoneInfos();
virtual std::unique_ptr<Configuration> initializeConfig();
// Utility and helper functions accessible to subclasses.